TSTP Solution File: SCT058-1 by Drodi---3.5.1

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Drodi---3.5.1
% Problem  : SCT058-1 : TPTP v8.1.2. Released v4.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : drodi -learnfrom(drodi.lrn) -timeout(%d) %s

% Computer : n013.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Wed May 31 12:33:08 EDT 2023

% Result   : Unsatisfiable 0.14s 0.41s
% Output   : CNFRefutation 0.20s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :    7
%            Number of leaves      :   11
% Syntax   : Number of formulae    :   39 (   3 unt;   0 def)
%            Number of atoms       :   76 (   2 equ)
%            Maximal formula atoms :    3 (   1 avg)
%            Number of connectives :   71 (  34   ~;  35   |;   0   &)
%                                         (   2 <=>;   0  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    8 (   4 avg)
%            Maximal term depth    :    6 (   2 avg)
%            Number of predicates  :    5 (   3 usr;   3 prp; 0-2 aty)
%            Number of functors    :   16 (  16 usr;   9 con; 0-5 aty)
%            Number of variables   :   59 (;  59   !;   0   ?)

% Comments : 
%------------------------------------------------------------------------------
fof(f597,axiom,
    ! [V_a,V_b,T_a,T_b,V_r] :
      ( hBOOL(c_in(c_Pair(V_a,V_b,T_a,T_b),hAPP(c_Relation_Oconverse(T_b,T_a),V_r),tc_prod(T_a,T_b)))
      | ~ hBOOL(c_in(c_Pair(V_b,V_a,T_b,T_a),V_r,tc_prod(T_b,T_a))) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p') ).

fof(f599,axiom,
    ! [V_b,V_a,T_b,T_a,V_r] :
      ( hBOOL(c_in(c_Pair(V_b,V_a,T_b,T_a),V_r,tc_prod(T_b,T_a)))
      | ~ hBOOL(c_in(c_Pair(V_a,V_b,T_a,T_b),hAPP(c_Relation_Oconverse(T_b,T_a),V_r),tc_prod(T_a,T_b))) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p') ).

fof(f602,axiom,
    ! [V_i] :
      ( hBOOL(c_in(c_Pair(v_a____,v_b____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,V_i),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
      | ~ hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,V_i),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p') ).

fof(f603,axiom,
    ! [V_i] :
      ( hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,V_i),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
      | ~ hBOOL(c_in(c_Pair(v_a____,v_b____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,V_i),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p') ).

fof(f606,axiom,
    ! [V_a,V_b,V_v,T_c,T_b,T_a] : hAPP(V_a,hAPP(V_b,V_v)) = hAPP(c_Fun_Ocomp(V_a,V_b,T_c,T_b,T_a),V_v),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p') ).

fof(f608,axiom,
    ! [V_x,V_S,T_a] :
      ( hBOOL(c_in(V_x,V_S,T_a))
      | ~ hBOOL(hAPP(V_S,V_x)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p') ).

fof(f609,axiom,
    ! [V_S,V_x,T_a] :
      ( hBOOL(hAPP(V_S,V_x))
      | ~ hBOOL(c_in(V_x,V_S,T_a)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p') ).

fof(f618,negated_conjecture,
    ( hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | hBOOL(c_in(c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(c_Fun_Ocomp(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),v_P____,tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_Arrow__Order__Mirabelle_Oindi),v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p') ).

fof(f619,negated_conjecture,
    ( ~ hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | ~ hBOOL(c_in(c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(c_Fun_Ocomp(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),v_P____,tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_Arrow__Order__Mirabelle_Oindi),v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p') ).

fof(f1533,plain,
    ! [X0,X1,X2,X3,X4] :
      ( hBOOL(c_in(c_Pair(X0,X1,X2,X3),hAPP(c_Relation_Oconverse(X3,X2),X4),tc_prod(X2,X3)))
      | ~ hBOOL(c_in(c_Pair(X1,X0,X3,X2),X4,tc_prod(X3,X2))) ),
    inference(cnf_transformation,[status(esa)],[f597]) ).

fof(f1535,plain,
    ! [X0,X1,X2,X3,X4] :
      ( hBOOL(c_in(c_Pair(X0,X1,X2,X3),X4,tc_prod(X2,X3)))
      | ~ hBOOL(c_in(c_Pair(X1,X0,X3,X2),hAPP(c_Relation_Oconverse(X2,X3),X4),tc_prod(X3,X2))) ),
    inference(cnf_transformation,[status(esa)],[f599]) ).

fof(f1538,plain,
    ! [X0] :
      ( hBOOL(c_in(c_Pair(v_a____,v_b____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,X0),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
      | ~ hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,X0),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    inference(cnf_transformation,[status(esa)],[f602]) ).

fof(f1539,plain,
    ! [X0] :
      ( hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,X0),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
      | ~ hBOOL(c_in(c_Pair(v_a____,v_b____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,X0),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    inference(cnf_transformation,[status(esa)],[f603]) ).

fof(f1542,plain,
    ! [X0,X1,X2,X3,X4,X5] : hAPP(X0,hAPP(X1,X2)) = hAPP(c_Fun_Ocomp(X0,X1,X3,X4,X5),X2),
    inference(cnf_transformation,[status(esa)],[f606]) ).

fof(f1544,plain,
    ! [V_x,V_S] :
      ( ! [T_a] : hBOOL(c_in(V_x,V_S,T_a))
      | ~ hBOOL(hAPP(V_S,V_x)) ),
    inference(miniscoping,[status(esa)],[f608]) ).

fof(f1545,plain,
    ! [X0,X1,X2] :
      ( hBOOL(c_in(X0,X1,X2))
      | ~ hBOOL(hAPP(X1,X0)) ),
    inference(cnf_transformation,[status(esa)],[f1544]) ).

fof(f1546,plain,
    ! [V_S,V_x] :
      ( hBOOL(hAPP(V_S,V_x))
      | ! [T_a] : ~ hBOOL(c_in(V_x,V_S,T_a)) ),
    inference(miniscoping,[status(esa)],[f609]) ).

fof(f1547,plain,
    ! [X0,X1,X2] :
      ( hBOOL(hAPP(X0,X1))
      | ~ hBOOL(c_in(X1,X0,X2)) ),
    inference(cnf_transformation,[status(esa)],[f1546]) ).

fof(f1556,plain,
    ( hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | hBOOL(c_in(c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(c_Fun_Ocomp(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),v_P____,tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_Arrow__Order__Mirabelle_Oindi),v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    inference(cnf_transformation,[status(esa)],[f618]) ).

fof(f1557,plain,
    ( ~ hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | ~ hBOOL(c_in(c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(c_Fun_Ocomp(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),v_P____,tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_Arrow__Order__Mirabelle_Oindi),v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    inference(cnf_transformation,[status(esa)],[f619]) ).

fof(f1591,plain,
    ( spl0_0
  <=> hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    introduced(split_symbol_definition) ).

fof(f1592,plain,
    ( hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | ~ spl0_0 ),
    inference(component_clause,[status(thm)],[f1591]) ).

fof(f1594,plain,
    ( spl0_1
  <=> hBOOL(c_in(c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(c_Fun_Ocomp(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),v_P____,tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_Arrow__Order__Mirabelle_Oindi),v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt))) ),
    introduced(split_symbol_definition) ).

fof(f1595,plain,
    ( hBOOL(c_in(c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(c_Fun_Ocomp(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),v_P____,tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_Arrow__Order__Mirabelle_Oindi),v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | ~ spl0_1 ),
    inference(component_clause,[status(thm)],[f1594]) ).

fof(f1596,plain,
    ( ~ hBOOL(c_in(c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(c_Fun_Ocomp(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),v_P____,tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_bool),tc_Arrow__Order__Mirabelle_Oindi),v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | spl0_1 ),
    inference(component_clause,[status(thm)],[f1594]) ).

fof(f1597,plain,
    ( spl0_0
    | spl0_1 ),
    inference(split_clause,[status(thm)],[f1556,f1591,f1594]) ).

fof(f1598,plain,
    ( ~ spl0_0
    | ~ spl0_1 ),
    inference(split_clause,[status(thm)],[f1557,f1591,f1594]) ).

fof(f1615,plain,
    ( hBOOL(c_in(c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,v_x)),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | ~ spl0_1 ),
    inference(forward_demodulation,[status(thm)],[f1542,f1595]) ).

fof(f1616,plain,
    ( hBOOL(hAPP(hAPP(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,v_x)),c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | ~ spl0_1 ),
    inference(resolution,[status(thm)],[f1615,f1547]) ).

fof(f1624,plain,
    ( ~ hBOOL(c_in(c_Pair(v_b____,v_a____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(c_Relation_Oconverse(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,v_x)),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | spl0_1 ),
    inference(forward_demodulation,[status(thm)],[f1542,f1596]) ).

fof(f2034,plain,
    ( ~ hBOOL(c_in(c_Pair(v_a____,v_b____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | spl0_1 ),
    inference(resolution,[status(thm)],[f1533,f1624]) ).

fof(f2046,plain,
    ! [X0,X1,X2,X3,X4] :
      ( hBOOL(c_in(c_Pair(X0,X1,X2,X3),X4,tc_prod(X2,X3)))
      | ~ hBOOL(hAPP(hAPP(c_Relation_Oconverse(X2,X3),X4),c_Pair(X1,X0,X3,X2))) ),
    inference(resolution,[status(thm)],[f1535,f1545]) ).

fof(f2142,plain,
    ( hBOOL(c_in(c_Pair(v_a____,v_b____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | ~ spl0_0 ),
    inference(resolution,[status(thm)],[f1538,f1592]) ).

fof(f2151,plain,
    ( $false
    | spl0_1
    | ~ spl0_0 ),
    inference(forward_subsumption_resolution,[status(thm)],[f2142,f2034]) ).

fof(f2152,plain,
    ( spl0_1
    | ~ spl0_0 ),
    inference(contradiction_clause,[status(thm)],[f2151]) ).

fof(f2154,plain,
    ( hBOOL(c_in(c_Pair(v_a____,v_b____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | ~ spl0_1 ),
    inference(resolution,[status(thm)],[f1616,f2046]) ).

fof(f2156,plain,
    ( hBOOL(c_in(c_Pair(v_b____,v_c____,tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),hAPP(v_P_H____,v_x),tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt)))
    | ~ spl0_1 ),
    inference(resolution,[status(thm)],[f2154,f1539]) ).

fof(f2157,plain,
    ( spl0_0
    | ~ spl0_1 ),
    inference(split_clause,[status(thm)],[f2156,f1591,f1594]) ).

fof(f2159,plain,
    $false,
    inference(sat_refutation,[status(thm)],[f1597,f1598,f2152,f2157]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.10/0.12  % Problem  : SCT058-1 : TPTP v8.1.2. Released v4.1.0.
% 0.10/0.13  % Command  : drodi -learnfrom(drodi.lrn) -timeout(%d) %s
% 0.14/0.34  % Computer : n013.cluster.edu
% 0.14/0.34  % Model    : x86_64 x86_64
% 0.14/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.34  % Memory   : 8042.1875MB
% 0.14/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.34  % CPULimit : 300
% 0.14/0.34  % WCLimit  : 300
% 0.14/0.34  % DateTime : Tue May 30 09:30:35 EDT 2023
% 0.14/0.34  % CPUTime  : 
% 0.14/0.38  % Drodi V3.5.1
% 0.14/0.41  % Refutation found
% 0.14/0.41  % SZS status Unsatisfiable for theBenchmark: Theory is unsatisfiable
% 0.14/0.41  % SZS output start CNFRefutation for theBenchmark
% See solution above
% 0.20/0.43  % Elapsed time: 0.083345 seconds
% 0.20/0.43  % CPU time: 0.265443 seconds
% 0.20/0.43  % Memory used: 32.700 MB
%------------------------------------------------------------------------------