class_docstr: An Elman RNN cell with tanh or ReLU non-linearity.
code: def forward(self, input, hx=None):
      self.check_forward_input(input)
      if hx is None:
          hx = input.new_zeros(
              input.size(0), self.hidden_size, requires_grad=False
          )
      self.check_forward_hidden(input, hx)
      if self.nonlinearity == "tanh":
          func = quant_rnn.RNNTanhCell
      elif self.nonlinearity == "relu":
          func = quant_rnn.RNNReLUCell
      else:
          raise RuntimeError(
              "Unknown nonlinearity: {}".format(self.nonlinearity)
          )
  
      return func(
          input,
          hx,
          self.weight_ih,
          self.weight_hh,
          self.bias_ih,
          self.bias_hh,
      )
  
imports: import math
  import torch
  import warnings
  import itertools
  import numbers
  from torch import nn
  from torch.nn import Parameter
  from torch.nn.utils.rnn import PackedSequence
  from csrc.pytorch.pytorch_quantization import tensor_quant
  from csrc.pytorch.pytorch_quantization.nn._functions import quant_rnn
  from .None import _utils
label_desc: Use image node_id 3 for calling the QuantRNNCell obj's underlying member method code with example usage: obj.forward(input, hx) and returns: func