docs: def clone(self, name=None):
      """Creates a new MLP with the same structure.
  
      Args:
        name: Optional string specifying the name of the new module. The default
          name is constructed by appending "_clone" to the original name.
  
      Returns:
        A cloned `MLP` module.
      """
  
      if name is None:
        name = self.module_name + "_clone"
      return MLP(
          name=name,
          output_sizes=self.output_sizes,
          activation=self.activation,
          activate_final=self.activate_final,
          initializers=self.initializers,
          partitioners=self.partitioners,
          regularizers=self.regularizers,
          use_bias=self.use_bias,
          use_dropout=self.use_dropout)