code: def __init__(
      self, num_bins: int, bin_centers: mx.nd.NDArray, **kwargs
  ) -> None:
      super().__init__(**kwargs)
      self.num_bins = num_bins
      with self.name_scope():
          self.bin_centers = self.params.get_constant(
              "bin_centers", bin_centers
          )
  
          # needs to be named self.proj for consistency with the
          # ArgProj class and the inference tests
          self.proj = gluon.nn.HybridSequential()
          self.proj.add(
              gluon.nn.Dense(
                  self.num_bins,
                  prefix="binproj",
                  flatten=False,
                  weight_initializer=mx.init.Xavier(),
              )
          )
          self.proj.add(gluon.nn.HybridLambda("log_softmax"))
  
imports: from typing import List, Optional, Tuple
  import mxnet
  import numpy
  from mxnet import gluon
  from gluonts.core.component import validated
  from gluonts.mx import Tensor
  from .distribution import MAX_SUPPORT_VAL, Distribution, _sample_multiple, getF
  from .distribution_output import DistributionOutput
label_desc: Use image node_id 1 to create a new BinnedArgs object from inherited base classes: gluon with example: obj = BinnedArgs(num_bins, bin_centers)