def METHOD_NAME(self, *args):
    if self.last_odom is None or self.position_offset is None:
        return
    msg = self.last_odom
    if self.target in msg.name:
        header = mil_ros_tools.make_header(frame="map")
        target_index = msg.name.index(self.target)
        twist = msg.twist[target_index]
        # Add position offset to make the start position (0, 0, -depth)
        position_np, orientation_np = mil_ros_tools.pose_to_numpy(
            msg.pose[target_index]
        )
        pose = mil_ros_tools.numpy_quat_pair_to_pose(
            position_np - self.position_offset, orientation_np
        )
        self.state_pub.publish(
            header=header,
            child_frame_id="/base_link",
            pose=PoseWithCovariance(pose=pose),
            twist=TwistWithCovariance(twist=twist),
        )
        header = mil_ros_tools.make_header(frame="/world")
        twist = msg.twist[target_index]
        pose = msg.pose[target_index]
        self.world_state_pub.publish(
            header=header,
            child_frame_id="/base_link",
            pose=PoseWithCovariance(pose=pose),
            twist=TwistWithCovariance(twist=twist),
        )
    else:
        # fail
        return