class_docstr: !
  @brief Class represents MBSAS (Modified Basic Sequential Algorithmic Scheme).
  @details Interface of MBSAS algorithm is the same as for BSAS. This algorithm performs clustering in two steps.
            The first - is determination of amount of clusters. The second - is assignment of points that were not
            marked as a cluster representatives to clusters.
  
  Code example of MBSAS usage:
  @code
      from pyclustering.cluster.bsas import bsas_visualizer
      from pyclustering.cluster.mbsas import mbsas
      from pyclustering.utils import read_sample
      from pyclustering.samples.definitions import SIMPLE_SAMPLES
  
      # Read data sample from 'Simple02.data'.
      sample = read_sample(SIMPLE_SAMPLES.SAMPLE_SIMPLE2)
  
      # Prepare algorithm's parameters.
      max_clusters = 3
      threshold = 1.0
  
      # Create instance of MBSAS algorithm.
      mbsas_instance = mbsas(sample, max_clusters, threshold)
      mbsas_instance.process()
  
      # Get clustering results.
      clusters = mbsas_instance.get_clusters()
      representatives = mbsas_instance.get_representatives()
  
      # Display results.
      bsas_visualizer.show_clusters(sample, clusters, representatives)
  @endcode
  
  @see pyclustering.cluster.bsas, pyclustering.cluster.ttsas
docstr: !
  @brief Creates MBSAS algorithm.
  
  @param[in] data (list): Input data that is presented as list of points (objects), each point should be represented by list or tuple.
  @param[in] maximum_clusters: Maximum allowable number of clusters that can be allocated during processing.
  @param[in] threshold: Threshold of dissimilarity (maximum distance) between points.
  @param[in] ccore (bool): If True than DLL CCORE (C++ solution) will be used for solving.
  @param[in] **kwargs: Arbitrary keyword arguments (available arguments: 'metric').
  
  <b>Keyword Args:</b><br>
      - metric (distance_metric): Metric that is used for distance calculation between two points.
code: def __init__(
      self, data, maximum_clusters, threshold, ccore=True, **kwargs
  ):
      """!
      @brief Creates MBSAS algorithm.
  
      @param[in] data (list): Input data that is presented as list of points (objects), each point should be represented by list or tuple.
      @param[in] maximum_clusters: Maximum allowable number of clusters that can be allocated during processing.
      @param[in] threshold: Threshold of dissimilarity (maximum distance) between points.
      @param[in] ccore (bool): If True than DLL CCORE (C++ solution) will be used for solving.
      @param[in] **kwargs: Arbitrary keyword arguments (available arguments: 'metric').
  
      <b>Keyword Args:</b><br>
          - metric (distance_metric): Metric that is used for distance calculation between two points.
  
      """
      super().__init__(
          data, maximum_clusters, threshold, ccore, **kwargs
      )
  
file_path: pyclustering/pyclustering/cluster/mbsas.py
imports: from pyclustering.core.mbsas_wrapper import mbsas
  from pyclustering.core.metric_wrapper import metric_wrapper
  from pyclustering.cluster.bsas import bsas
label_desc: Use image node_id 1 to create a new mbsas object from inherited base classes: bsas with example: obj = mbsas(data, maximum_clusters, threshold, ccore)