code: def inverse_keypoints(
      self,
      input: Keypoints,
      params: List[ParamItem],
      extra_args: Dict[str, Any] = {},
  ) -> Keypoints:
      for (name, module), param in zip_longest(
          list(self.get_forward_sequence(params))[::-1], params[::-1]
      ):
          input = KeypointSequentialOps.inverse(
              input, module=module, param=param, extra_args=extra_args
          )
      return input
  
imports: from collections import OrderedDict
  from itertools import zip_longest
  from typing import Any, Dict, Iterator, List, Optional, Tuple
  import torch
  from torch import nn
  import kornia.augmentation
  from kornia.augmentation.base import _AugmentationBase
  from kornia.core import Module, Tensor
  from kornia.geometry.boxes import Boxes
  from kornia.geometry.keypoints import Keypoints
  from .ops import BoxSequentialOps, InputSequentialOps, KeypointSequentialOps, MaskSequentialOps
  from .params import ParamItem
label_desc: Use image node_id 12 for calling the ImageSequentialBase obj's underlying member method code with example usage: obj.inverse_keypoints(input, params, extra_args) and returns: input