code: def bind(
      self,
      data_shapes,
      label_shapes=None,
      for_training=True,
      inputs_need_grad=False,
      force_rebind=False,
      shared_module=None,
  ):
      print(
          "in_bind", self.params_initialized, data_shapes, label_shapes
      )
      if self.params_initialized:
          arg_params, aux_params = self.get_params()
  
      # force rebinding is typically used when one want to switch from
      # training to prediction phase.
      if force_rebind:
          self._reset_bind()
  
      if self.binded:
          self.logger.warning("Already binded, ignoring bind()")
          return
  
      assert (
          shared_module is None
      ), "shared_module for MutableModule is not supported"
      self.for_training = for_training
      self.inputs_need_grad = inputs_need_grad
      self.binded = True
      self._curr_module.bind(
          data_shapes,
          label_shapes,
          for_training,
          inputs_need_grad,
          force_rebind=False,
          shared_module=None,
      )
      _data_shape = data_shapes[0][1]
      print("_data_shape", _data_shape, label_shapes)
      for _module in self._arcface_modules:
          _module.bind(
              [
                  (
                      "data",
                      (
                          _data_shape[0] * self._num_workers,
                          self._emb_size,
                      ),
                  )
              ],
              [
                  (
                      "softmax_label",
                      (_data_shape[0] * self._num_workers,),
                  )
              ],
              for_training,
              True,
              force_rebind=False,
              shared_module=None,
          )
      if self.params_initialized:
          self.set_params(arg_params, aux_params)
  
imports: import logging
  import copy
  import time
  import os
  import mxnet
  import numpy
  from mxnet import context
  from mxnet.initializer import Uniform
  from mxnet.module.base_module import BaseModule
  from mxnet.module.module import Module
  from mxnet import metric
  from mxnet.model import BatchEndParam
  from mxnet import io
  import mxnet.ndarray
  from config import config
label_desc: Use image node_id 12 for calling the ParallModule obj's underlying member method code with example usage: obj.bind(data_shapes, label_shapes, for_training, inputs_need_grad, force_rebind, shared_module) without return types