code: def test_transparent_lift_with_state(self):
      @transform.transform_with_state
      def inner():
          w = base.get_state("w", [], init=jnp.zeros)
          w += 1
          base.set_state("w", w)
          return w
  
      @transform.transform_with_state
      def outer():
          lifted, updater = lift.transparent_lift_with_state(inner.init)
          params, state = lifted(None)
          out, state = inner.apply(params, state, None)
          updater.update(state)
          return out, state
  
      params, state = outer.init(None)
      self.assertEmpty(params)
      self.assertEqual(
          jax.tree_util.tree_map(int, state), {"~": {"w": 0}}
      )
  
      for expected in (1, 2, 3):
          (w, inner_state), state = outer.apply(params, state, None)
          self.assertEqual(
              jax.tree_util.tree_map(int, inner_state),
              {"~": {"w": expected}},
          )
          self.assertEqual(w, expected)
          self.assertEmpty(params)
          self.assertEqual(state, inner_state)
  
imports: from absl.testing import absltest
  from absl.testing import parameterized
  from haiku._src import base
  from haiku._src import config
  from haiku._src import lift
  from haiku._src import module
  from haiku._src import multi_transform
  from haiku._src import stateful
  from haiku._src import test_utils
  from haiku._src import transform
  import jax
  import jax.numpy
  import numpy
label_desc: Use image node_id 14 for calling the LiftTest obj's underlying member method code with example usage: obj.test_transparent_lift_with_state() and returns: w, out,  state