def information(self, print_level=1):
        """Print overview information about the options settings, problem
        statistics, and the solution of the computation.

        Parameters
        ----------
        print_level : int (default=1)
            Level of details.
        """
        self._check_is_solved()

        if not isinstance(print_level, numbers.Integral) or print_level < 0:
            raise ValueError("print_level must be an integer >= 0; got {}."
                             .format(print_level))

        binning_type = self.__class__.__name__.lower()

        # Optimizer
        if self._optimizer is not None:
            solver = self._optimizer
            time_solver = self._time_solver
        else:
            solver = None
            time_solver = 0

        # Sketch memory usage
        memory_usage = asizeof.asizeof(self._bsketch) * 1e-6

        dict_user_options = self.get_params()

        print_binning_information(binning_type, print_level, self.name,
                                  self._status, self.solver, solver,
                                  self._time_total, self._time_prebinning,
                                  time_solver, self._time_optimizer,
                                  self._time_postprocessing, self._n_prebins,
                                  self._n_refinements, self._bsketch.n,
                                  self._n_add, self._time_streaming_add,
                                  self._n_solve, self._time_streaming_solve,
                                  memory_usage, dict_user_options)
Print overview information about the options settings, problem
        statistics, and the solution of the computation.

        Parameters
        ----------
        print_level : int (default=1)
            Level of details.
        
optbinning/binning/distributed/binning_sketch.py