refactor body part handling