<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def vjp(func, wrt=(0,), optimized=True, check_dims=True, preserve_result=False, verbose=0):
 """Convenience function to produce vector-Jacobian products. See `autodiff` for function arguments. Uses reverse-mode joint-motion autodiff to produce the VJP. """

  return autodiff(
      func,
      wrt=wrt,
      motion='joint',
      mode='reverse',
      optimized=optimized,
      preserve_result=preserve_result,
      input_derivative=INPUT_DERIVATIVE.Required,
      check_dims=check_dims,
      verbose=verbose)