code: def _postprocess(
      x,
      c,
      A_ub=None,
      b_ub=None,
      A_eq=None,
      b_eq=None,
      bounds=None,
      complete=False,
      undo=[],
      status=0,
      message="",
      tol=1e-8,
      iteration=None,
      disp=False,
  ):
      """
      Given solution x to presolved, standard form linear program x, add
      fixed variables back into the problem and undo the variable substitutions
      to get solution to original linear program. Also, calculate the objective
      function value, slack in original upper bound constraints, and residuals
      in original equality constraints.
  
      Parameters
      ----------
      x : 1D array
          Solution vector to the standard-form problem.
      c : 1D array
          Original coefficients of the linear objective function to be minimized.
      A_ub : 2D array, optional
          2D array such that ``A_ub @ x`` gives the values of the upper-bound
          inequality constraints at ``x``.
      b_ub : 1D array, optional
          1D array of values representing the upper-bound of each inequality
          constraint (row) in ``A_ub``.
      A_eq : 2D array, optional
          2D array such that ``A_eq @ x`` gives the values of the equality
          constraints at ``x``.
      b_eq : 1D array, optional
          1D array of values representing the RHS of each equality constraint
          (row) in ``A_eq``.
      bounds : sequence of tuples
          Bounds, as modified in presolve
      complete : bool
          Whether the solution is was determined in presolve (``True`` if so)
      undo: list of tuples
          (`index`, `value`) pairs that record the original index and fixed value
          for each variable removed from the problem
      status : int
          An integer representing the exit status of the optimization::
  
               0 : Optimization terminated successfully
               1 : Iteration limit reached
               2 : Problem appears to be infeasible
               3 : Problem appears to be unbounded
               4 : Serious numerical difficulties encountered
  
      message : str
          A string descriptor of the exit status of the optimization.
      tol : float
          Termination tolerance; see [1]_ Section 4.5.
  
      Returns
      -------
      x : 1D array
          Solution vector to original linear programming problem
      fun: float
          optimal objective value for original problem
      slack : 1D array
          The (non-negative) slack in the upper bound constraints, that is,
          ``b_ub - A_ub @ x``
      con : 1D array
          The (nominally zero) residuals of the equality constraints, that is,
          ``b - A_eq @ x``
      status : int
          An integer representing the exit status of the optimization::
  
               0 : Optimization terminated successfully
               1 : Iteration limit reached
               2 : Problem appears to be infeasible
               3 : Problem appears to be unbounded
               4 : Serious numerical difficulties encountered
  
      message : str
          A string descriptor of the exit status of the optimization.
  
      """
  
      x, fun, slack, con, lb, ub = _postsolve(
          x, c, A_ub, b_ub, A_eq, b_eq, bounds, complete, undo, tol
      )
  
      status, message = _check_result(
          x, fun, status, slack, con, lb, ub, tol, message
      )
  
      if disp:
          _display_summary(message, status, fun, iteration)
  
      return x, fun, slack, con, status, message
  
file_path: catboost/contrib/python/scipy/py2/scipy/optimize/_linprog_util.py
imports: import numpy
  import scipy.sparse
  from warnings import warn
  from .optimize import OptimizeWarning
  from scipy.optimize._remove_redundancy import _remove_redundancy, _remove_redundancy_sparse, _remove_redundancy_dense
label_desc: Use image node_id 9 for calling a global function with example usage: _postprocess(x, c, A_ub, b_ub, A_eq, b_eq, bounds, complete, undo, status, message, tol, iteration, disp) and returns: x,  fun,  slack,  con,  status,  message