class_docstr: A duelling recurrent network for use with Atari observations as seen in R2D2.
  
  See https://openreview.net/forum?id=r1lyTjAqYX for more information.
code: def __call__(
      self,
      inputs: observation_action_reward.OAR,  # [B, ...]
      state: hk.LSTMState,  # [B, ...]
  ) -> Tuple[base.QValues, hk.LSTMState]:
      embeddings = self._embed(inputs)  # [B, D+A+1]
      core_outputs, new_state = self._core(embeddings, state)
      q_values = self._duelling_head(core_outputs)
      return q_values, new_state
  
imports: from typing import Any, Optional, Sequence, Tuple
  from acme.jax.networks import base
  from acme.jax.networks import duelling
  from acme.jax.networks import embedding
  from acme.jax.networks import policy_value
  from acme.jax.networks import resnet
  from acme.wrappers import observation_action_reward
  import haiku
  import jax
  import jax.numpy
label_desc: Use image node_id 2 for calling the R2D2AtariNetwork obj's underlying member method code with example usage: obj.__call__(inputs, state) and returns: q_values,  new_state