code: def check_rnn_cell(
      cell, in_shape=(10, 50), out_shape=(10, 100), begin_state=None
  ):
      inputs = [mx.np.ones(shape=in_shape) for i in range(3)]
      cell.infer_shape(0, inputs[0], False)
      cell.initialize()
      outputs, _ = cell.unroll(3, inputs, begin_state=begin_state)
      assert sorted(cell.collect_params().keys()) == [
          "h2h_bias",
          "h2h_weight",
          "i2h_bias",
          "i2h_weight",
      ]
  
      outs = [o.shape for o in outputs]
      assert outs == [out_shape] * 3
  
imports: import mxnet
  from mxnet import gluon, np
  import numpy
  import copy
  from functools import partial
  from numpy.testing import assert_allclose
  from mxnet.gluon.utils import split_rnn_params
  import pytest
  from mxnet.test_utils import almost_equal, assert_almost_equal, default_device
  from common import assert_raises_cudnn_not_satisfied, retry
label_desc: Use image node_id 34 for calling a global function with example usage: check_rnn_cell(cell, in_shape, out_shape, begin_state) without return types