docs: public double[][] solve(double[][] B) {
      if(B.length != m) {
        throw new IllegalArgumentException(ERR_MATRIX_DIMENSIONS);
      }
      double[][] sol = solveInplace(getMatrix(B, piv, 0, B[0].length));
      return n < sol.length ? Arrays.copyOf(sol, n) : sol;
    }