End-Effector design iterations