class_docstr: See :func:`lift` or :func:`lift_with_state`.
class_docstr_tok: ["See",":","func",":","`","lift","`","or",":","func",":","`","lift_with_state","`","."]
code: def __call__(self, *args, **kwargs):
      frame = base.current_frame()
      outer_params = frame.params
      outer_state = frame.state
      if hk.running_init():
          inner_params, inner_state = self._init_fn(*args, **kwargs)
          # Lift parameters into this transform's params_dict.
          check_param_reuse = not self._allow_reuse
          pack_into_dict(
              inner_params,
              outer_params,
              self.prefix_name,
              check_param_reuse=check_param_reuse,
          )
          pack_into_dict(
              inner_state,
              outer_state,
              self.prefix_name,
              state=True,
              check_param_reuse=check_param_reuse,
          )
          return inner_params, inner_state
      else:
          if self.prefix_name:
              prefix = f"{self.prefix_name}/"
          else:
              prefix = ""
          inner_params = unpack_from_dict(outer_params, prefix)
          inner_state = unpack_from_dict(outer_state, prefix)
          inner_state = base.extract_state(inner_state, initial=False)
          inner_params = hk.data_structures.to_haiku_dict(inner_params)
          return inner_params, inner_state
  
imports: from collections.abc import Mapping, MutableMapping
  import functools
  from typing import Any, Callable, Optional, TypeVar
  from haiku._src import base
  from haiku._src import data_structures
  from haiku._src import module
  from haiku._src import transform
  from haiku._src.typing import LiftingModuleType
label_desc: Use image node_id 2 for calling the LiftingModule obj's underlying member method code with example usage: obj.__call__() and returns: inner_params,  inner_state, inner_params,  inner_state