def METHOD_NAME(cls, msg):
    """Construct a shadow grasp object from moveit grasp object."""
    grasp = Grasp()
    grasp.id = msg.id  # pylint: disable=C0103,W0201
    grasp.pre_grasp_posture = deepcopy(msg.pre_grasp_posture)  # pylint: disable=W0201
    grasp.grasp_posture = deepcopy(msg.grasp_posture)  # pylint: disable=W0201
    grasp.grasp_pose = deepcopy(msg.grasp_pose)  # pylint: disable=W0201
    grasp.grasp_quality = msg.grasp_quality  # pylint: disable=W0201
    grasp.pre_grasp_approach = deepcopy(msg.pre_grasp_approach)  # pylint: disable=W0201
    grasp.post_grasp_retreat = deepcopy(msg.post_grasp_retreat)  # pylint: disable=W0201
    grasp.post_place_retreat = deepcopy(msg.post_place_retreat)  # pylint: disable=W0201
    grasp.max_contact_force = msg.max_contact_force  # pylint: disable=W0201
    grasp.allowed_touch_objects = deepcopy(msg.allowed_touch_objects)  # pylint: disable=W0201
    return grasp