code: def forward(ctx, input, grid, interpolation, bound, extrapolate):
      opt = (bound, interpolation, extrapolate)
      output = _C.grid_grad(input, grid, *opt)
      if input.requires_grad or grid.requires_grad:
          ctx.opt = opt
          ctx.save_for_backward(input, grid)
  
      return output
  
imports: from __future__ import annotations
  from collections.abc import Sequence
  import torch
  import torch.nn
  import monai
  from monai.networks import to_norm_affine
  from monai.utils import GridSampleMode, GridSamplePadMode, convert_to_dst_type, ensure_tuple, look_up_option, optional_import
label_desc: Use image node_id 1 for calling the _GridGrad obj's underlying member method code with example usage: obj.forward(ctx, input, grid, interpolation, bound, extrapolate) and returns: output