code: def move(self, pose_tree, x=None, y=None, z=None, home_flagged_axes=True):
          
          def defaults(_x, _y, _z):
              _x = _x if x is not None else 0
              _y = _y if y is not None else 0
              _z = _z if z is not None else 0
              return _x, _y, _z
  
          dst_x, dst_y, dst_z = change_base(
              pose_tree,
              src=self._src,
              dst=self._dst,
              point=Point(*defaults(x, y, z)))
          driver_target = {}
  
          if 'x' in self._axis_mapping:
              assert x is not None, "Value must be set for each axis mapped"
              driver_target[self._axis_mapping['x']] = dst_x
  
          if 'y' in self._axis_mapping:
              assert y is not None, "Value must be set for each axis mapped"
              driver_target[self._axis_mapping['y']] = dst_y
  
          if 'z' in self._axis_mapping:
              assert z is not None, "Value must be set for each axis mapped"
              driver_target[self._axis_mapping['z']] = dst_z
          self._driver.move(driver_target, home_flagged_axes=home_flagged_axes)
  
          # Update pose with the new value. Since stepper motors are open loop
          # there is no need to to query diver for position
          return update(pose_tree, self, Point(*defaults(dst_x, dst_y, dst_z)))
docs: Dispatch move command to the driver changing base of
          x, y and z from source coordinate system to destination.
  
          Value must be set for each axis that is mapped.
  
          home_flagged_axes: (default=True)
              This kwarg is passed to the driver. This ensures that any axes
              within this Mover's axis_mapping is homed before moving, if it has
              not yet done so. See driver docstring for details