TSTP Solution File: SET159+3 by SRASS---0.1

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : SRASS---0.1
% Problem  : SET159+3 : TPTP v5.0.0. Released v2.2.0.
% Transfm  : none
% Format   : tptp
% Command  : SRASS -q2 -a 0 10 10 10 -i3 -n60 %s

% Computer : art07.cs.miami.edu
% Model    : i686 i686
% CPU      : Intel(R) Pentium(R) 4 CPU 2.80GHz @ 2793MHz
% Memory   : 2018MB
% OS       : Linux 2.6.26.8-57.fc8
% CPULimit : 300s
% DateTime : Wed Dec 29 23:04:43 EST 2010

% Result   : Theorem 15.80s
% Output   : Solution 15.80s
% Verified : 
% SZS Type : None (Parsing solution fails)
% Syntax   : Number of formulae    : 0

% Comments : 
%------------------------------------------------------------------------------
%----ERROR: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% Reading problem from /tmp/SystemOnTPTP24223/SET159+3.tptp
% Adding relevance values
% Extracting the conjecture
% Sorting axioms by relevance
% Looking for THM       ... 
% found
% SZS status THM for /tmp/SystemOnTPTP24223/SET159+3.tptp
% SZS output start Solution for /tmp/SystemOnTPTP24223/SET159+3.tptp
% TreeLimitedRun: ----------------------------------------------------------
% TreeLimitedRun: /home/graph/tptp/Systems/EP---1.2/eproof --print-statistics -xAuto -tAuto --cpu-limit=60 --proof-time-unlimited --memory-limit=Auto --tstp-in --tstp-out /tmp/SRASS.s.p 
% TreeLimitedRun: CPU time limit is 60s
% TreeLimitedRun: WC  time limit is 120s
% TreeLimitedRun: PID is 24319
% TreeLimitedRun: ----------------------------------------------------------
% PrfWatch: 0.00 CPU 0.00 WC
% PrfWatch: 1.91 CPU 2.01 WC
% PrfWatch: 3.90 CPU 4.01 WC
% PrfWatch: 5.90 CPU 6.02 WC
% PrfWatch: 7.89 CPU 8.02 WC
% PrfWatch: 9.47 CPU 10.03 WC
% # Preprocessing time     : 0.012 s
% # Problem is unsatisfiable (or provable), constructing proof object
% # SZS status Theorem
% PrfWatch: 11.14 CPU 12.03 WC
% PrfWatch: 13.14 CPU 14.04 WC
% # SZS output start CNFRefutation.
% fof(1, axiom,![X1]:![X2]:union(X1,X2)=union(X2,X1),file('/tmp/SRASS.s.p', commutativity_of_union)).
% fof(2, axiom,![X1]:![X2]:![X3]:(member(X3,union(X1,X2))<=>(member(X3,X1)|member(X3,X2))),file('/tmp/SRASS.s.p', union_defn)).
% fof(3, axiom,![X1]:![X2]:(X1=X2<=>(subset(X1,X2)&subset(X2,X1))),file('/tmp/SRASS.s.p', equal_defn)).
% fof(6, axiom,![X1]:![X2]:(subset(X1,X2)<=>![X3]:(member(X3,X1)=>member(X3,X2))),file('/tmp/SRASS.s.p', subset_defn)).
% fof(7, conjecture,![X1]:![X2]:![X3]:union(union(X1,X2),X3)=union(X1,union(X2,X3)),file('/tmp/SRASS.s.p', prove_associativity_of_union)).
% fof(8, negated_conjecture,~(![X1]:![X2]:![X3]:union(union(X1,X2),X3)=union(X1,union(X2,X3))),inference(assume_negation,[status(cth)],[7])).
% fof(9, plain,![X3]:![X4]:union(X3,X4)=union(X4,X3),inference(variable_rename,[status(thm)],[1])).
% cnf(10,plain,(union(X1,X2)=union(X2,X1)),inference(split_conjunct,[status(thm)],[9])).
% fof(11, plain,![X1]:![X2]:![X3]:((~(member(X3,union(X1,X2)))|(member(X3,X1)|member(X3,X2)))&((~(member(X3,X1))&~(member(X3,X2)))|member(X3,union(X1,X2)))),inference(fof_nnf,[status(thm)],[2])).
% fof(12, plain,![X4]:![X5]:![X6]:((~(member(X6,union(X4,X5)))|(member(X6,X4)|member(X6,X5)))&((~(member(X6,X4))&~(member(X6,X5)))|member(X6,union(X4,X5)))),inference(variable_rename,[status(thm)],[11])).
% fof(13, plain,![X4]:![X5]:![X6]:((~(member(X6,union(X4,X5)))|(member(X6,X4)|member(X6,X5)))&((~(member(X6,X4))|member(X6,union(X4,X5)))&(~(member(X6,X5))|member(X6,union(X4,X5))))),inference(distribute,[status(thm)],[12])).
% cnf(14,plain,(member(X1,union(X2,X3))|~member(X1,X3)),inference(split_conjunct,[status(thm)],[13])).
% cnf(15,plain,(member(X1,union(X2,X3))|~member(X1,X2)),inference(split_conjunct,[status(thm)],[13])).
% cnf(16,plain,(member(X1,X2)|member(X1,X3)|~member(X1,union(X3,X2))),inference(split_conjunct,[status(thm)],[13])).
% fof(17, plain,![X1]:![X2]:((~(X1=X2)|(subset(X1,X2)&subset(X2,X1)))&((~(subset(X1,X2))|~(subset(X2,X1)))|X1=X2)),inference(fof_nnf,[status(thm)],[3])).
% fof(18, plain,![X3]:![X4]:((~(X3=X4)|(subset(X3,X4)&subset(X4,X3)))&((~(subset(X3,X4))|~(subset(X4,X3)))|X3=X4)),inference(variable_rename,[status(thm)],[17])).
% fof(19, plain,![X3]:![X4]:(((subset(X3,X4)|~(X3=X4))&(subset(X4,X3)|~(X3=X4)))&((~(subset(X3,X4))|~(subset(X4,X3)))|X3=X4)),inference(distribute,[status(thm)],[18])).
% cnf(20,plain,(X1=X2|~subset(X2,X1)|~subset(X1,X2)),inference(split_conjunct,[status(thm)],[19])).
% fof(34, plain,![X1]:![X2]:((~(subset(X1,X2))|![X3]:(~(member(X3,X1))|member(X3,X2)))&(?[X3]:(member(X3,X1)&~(member(X3,X2)))|subset(X1,X2))),inference(fof_nnf,[status(thm)],[6])).
% fof(35, plain,![X4]:![X5]:((~(subset(X4,X5))|![X6]:(~(member(X6,X4))|member(X6,X5)))&(?[X7]:(member(X7,X4)&~(member(X7,X5)))|subset(X4,X5))),inference(variable_rename,[status(thm)],[34])).
% fof(36, plain,![X4]:![X5]:((~(subset(X4,X5))|![X6]:(~(member(X6,X4))|member(X6,X5)))&((member(esk2_2(X4,X5),X4)&~(member(esk2_2(X4,X5),X5)))|subset(X4,X5))),inference(skolemize,[status(esa)],[35])).
% fof(37, plain,![X4]:![X5]:![X6]:(((~(member(X6,X4))|member(X6,X5))|~(subset(X4,X5)))&((member(esk2_2(X4,X5),X4)&~(member(esk2_2(X4,X5),X5)))|subset(X4,X5))),inference(shift_quantors,[status(thm)],[36])).
% fof(38, plain,![X4]:![X5]:![X6]:(((~(member(X6,X4))|member(X6,X5))|~(subset(X4,X5)))&((member(esk2_2(X4,X5),X4)|subset(X4,X5))&(~(member(esk2_2(X4,X5),X5))|subset(X4,X5)))),inference(distribute,[status(thm)],[37])).
% cnf(39,plain,(subset(X1,X2)|~member(esk2_2(X1,X2),X2)),inference(split_conjunct,[status(thm)],[38])).
% cnf(40,plain,(subset(X1,X2)|member(esk2_2(X1,X2),X1)),inference(split_conjunct,[status(thm)],[38])).
% cnf(41,plain,(member(X3,X2)|~subset(X1,X2)|~member(X3,X1)),inference(split_conjunct,[status(thm)],[38])).
% fof(42, negated_conjecture,?[X1]:?[X2]:?[X3]:~(union(union(X1,X2),X3)=union(X1,union(X2,X3))),inference(fof_nnf,[status(thm)],[8])).
% fof(43, negated_conjecture,?[X4]:?[X5]:?[X6]:~(union(union(X4,X5),X6)=union(X4,union(X5,X6))),inference(variable_rename,[status(thm)],[42])).
% fof(44, negated_conjecture,~(union(union(esk3_0,esk4_0),esk5_0)=union(esk3_0,union(esk4_0,esk5_0))),inference(skolemize,[status(esa)],[43])).
% cnf(45,negated_conjecture,(union(union(esk3_0,esk4_0),esk5_0)!=union(esk3_0,union(esk4_0,esk5_0))),inference(split_conjunct,[status(thm)],[44])).
% cnf(46,negated_conjecture,(union(esk5_0,union(esk3_0,esk4_0))!=union(esk3_0,union(esk4_0,esk5_0))),inference(rw,[status(thm)],[45,10,theory(equality)])).
% cnf(55,plain,(subset(X1,union(X2,X3))|~member(esk2_2(X1,union(X2,X3)),X3)),inference(spm,[status(thm)],[39,14,theory(equality)])).
% cnf(56,plain,(subset(X1,union(X2,X3))|~member(esk2_2(X1,union(X2,X3)),X2)),inference(spm,[status(thm)],[39,15,theory(equality)])).
% cnf(62,plain,(member(esk2_2(union(X1,X2),X3),X2)|member(esk2_2(union(X1,X2),X3),X1)|subset(union(X1,X2),X3)),inference(spm,[status(thm)],[16,40,theory(equality)])).
% cnf(74,plain,(subset(X1,union(X2,union(X3,X4)))|~member(esk2_2(X1,union(X2,union(X3,X4))),X4)),inference(spm,[status(thm)],[55,14,theory(equality)])).
% cnf(75,plain,(subset(X1,union(X2,union(X3,X4)))|~member(esk2_2(X1,union(X2,union(X3,X4))),X3)),inference(spm,[status(thm)],[55,15,theory(equality)])).
% cnf(76,plain,(subset(X1,union(X2,X1))),inference(spm,[status(thm)],[55,40,theory(equality)])).
% cnf(92,plain,(subset(X1,union(union(X2,X3),X4))|~member(esk2_2(X1,union(union(X2,X3),X4)),X3)),inference(spm,[status(thm)],[56,14,theory(equality)])).
% cnf(93,plain,(subset(X1,union(union(X2,X3),X4))|~member(esk2_2(X1,union(union(X2,X3),X4)),X2)),inference(spm,[status(thm)],[56,15,theory(equality)])).
% cnf(101,plain,(subset(union(X1,X2),union(X3,X2))|member(esk2_2(union(X1,X2),union(X3,X2)),X1)),inference(spm,[status(thm)],[55,62,theory(equality)])).
% cnf(102,plain,(subset(union(X1,X2),union(X2,X3))|member(esk2_2(union(X1,X2),union(X2,X3)),X1)),inference(spm,[status(thm)],[56,62,theory(equality)])).
% cnf(103,plain,(subset(union(X1,X2),X2)|member(esk2_2(union(X1,X2),X2),X1)),inference(spm,[status(thm)],[39,62,theory(equality)])).
% cnf(105,plain,(subset(union(X1,X2),union(X3,X1))|member(esk2_2(union(X1,X2),union(X3,X1)),X2)),inference(spm,[status(thm)],[55,62,theory(equality)])).
% cnf(106,plain,(subset(union(X1,X2),union(X1,X3))|member(esk2_2(union(X1,X2),union(X1,X3)),X2)),inference(spm,[status(thm)],[56,62,theory(equality)])).
% cnf(168,plain,(member(esk2_2(union(union(X1,X2),X3),X3),X2)|member(esk2_2(union(union(X1,X2),X3),X3),X1)|subset(union(union(X1,X2),X3),X3)),inference(spm,[status(thm)],[16,103,theory(equality)])).
% cnf(436,plain,(subset(union(X1,union(X2,union(X1,X3))),union(X2,union(X1,X3)))),inference(spm,[status(thm)],[75,103,theory(equality)])).
% cnf(540,plain,(union(X1,union(X2,X3))=union(X2,union(X1,union(X2,X3)))|~subset(union(X1,union(X2,X3)),union(X2,union(X1,union(X2,X3))))),inference(spm,[status(thm)],[20,436,theory(equality)])).
% cnf(569,plain,(union(X1,union(X2,X3))=union(X2,union(X1,union(X2,X3)))|$false),inference(rw,[status(thm)],[540,76,theory(equality)])).
% cnf(570,plain,(union(X1,union(X2,X3))=union(X2,union(X1,union(X2,X3)))),inference(cn,[status(thm)],[569,theory(equality)])).
% cnf(712,plain,(subset(union(X1,union(union(X2,X1),X3)),union(union(X2,X1),X3))),inference(spm,[status(thm)],[92,103,theory(equality)])).
% cnf(716,plain,(union(union(X1,X2),X3)=union(X2,union(union(X1,X2),X3))|~subset(union(union(X1,X2),X3),union(X2,union(union(X1,X2),X3)))),inference(spm,[status(thm)],[20,712,theory(equality)])).
% cnf(750,plain,(union(union(X1,X2),X3)=union(X2,union(union(X1,X2),X3))|$false),inference(rw,[status(thm)],[716,76,theory(equality)])).
% cnf(751,plain,(union(union(X1,X2),X3)=union(X2,union(union(X1,X2),X3))),inference(cn,[status(thm)],[750,theory(equality)])).
% cnf(1375,plain,(subset(union(X1,X2),union(union(X3,X1),X2))),inference(spm,[status(thm)],[92,101,theory(equality)])).
% cnf(1550,plain,(subset(union(X1,X2),union(X2,X1))),inference(spm,[status(thm)],[55,102,theory(equality)])).
% cnf(1553,plain,(subset(union(X1,X2),union(X2,union(X1,X3)))),inference(spm,[status(thm)],[75,102,theory(equality)])).
% cnf(1586,plain,(member(X1,union(X2,X3))|~member(X1,union(X3,X2))),inference(spm,[status(thm)],[41,1550,theory(equality)])).
% cnf(1675,plain,(union(X1,union(X2,X3))=union(X2,X1)|~subset(union(X1,union(X2,X3)),union(X2,X1))),inference(spm,[status(thm)],[20,1553,theory(equality)])).
% cnf(1680,plain,(subset(union(X1,X2),union(X2,union(X3,union(X1,X4))))),inference(spm,[status(thm)],[1553,570,theory(equality)])).
% cnf(1809,plain,(subset(union(X1,X2),union(union(X3,X2),X1))),inference(spm,[status(thm)],[92,105,theory(equality)])).
% cnf(1810,plain,(subset(union(X1,X2),union(union(X2,X3),X1))),inference(spm,[status(thm)],[93,105,theory(equality)])).
% cnf(1982,plain,(subset(union(X1,X2),union(X1,union(X3,X2)))),inference(spm,[status(thm)],[74,106,theory(equality)])).
% cnf(1983,plain,(subset(union(X1,X2),union(X1,union(X2,X3)))),inference(spm,[status(thm)],[75,106,theory(equality)])).
% cnf(2064,plain,(union(X1,union(X2,X3))=union(X1,X2)|~subset(union(X1,union(X2,X3)),union(X1,X2))),inference(spm,[status(thm)],[20,1983,theory(equality)])).
% cnf(2318,plain,(member(esk2_2(union(union(X1,X2),X3),X3),union(X2,X1))|subset(union(union(X1,X2),X3),X3)),inference(spm,[status(thm)],[1586,103,theory(equality)])).
% cnf(2323,plain,(member(esk2_2(union(X1,X2),X3),union(X2,X1))|subset(union(X1,X2),X3)),inference(spm,[status(thm)],[1586,40,theory(equality)])).
% cnf(2624,plain,(subset(union(X1,X2),union(union(X2,X1),X3))),inference(spm,[status(thm)],[56,2323,theory(equality)])).
% cnf(4295,plain,(subset(union(union(X1,X2),union(X3,X2)),union(X3,X2))|member(esk2_2(union(union(X1,X2),union(X3,X2)),union(X3,X2)),X1)),inference(spm,[status(thm)],[55,168,theory(equality)])).
% cnf(4296,plain,(subset(union(union(X1,X2),union(X2,X3)),union(X2,X3))|member(esk2_2(union(union(X1,X2),union(X2,X3)),union(X2,X3)),X1)),inference(spm,[status(thm)],[56,168,theory(equality)])).
% cnf(4511,plain,(subset(union(X1,X2),union(union(X3,X2),union(X1,X4)))),inference(spm,[status(thm)],[1680,751,theory(equality)])).
% cnf(188584,plain,(subset(union(union(X1,X2),union(X2,X1)),union(X2,X1))),inference(spm,[status(thm)],[39,2318,theory(equality)])).
% cnf(188877,plain,(union(X1,X2)=union(union(X2,X1),union(X1,X2))|~subset(union(X1,X2),union(union(X2,X1),union(X1,X2)))),inference(spm,[status(thm)],[20,188584,theory(equality)])).
% cnf(189079,plain,(union(X1,X2)=union(union(X2,X1),union(X1,X2))|$false),inference(rw,[status(thm)],[188877,2624,theory(equality)])).
% cnf(189080,plain,(union(X1,X2)=union(union(X2,X1),union(X1,X2))),inference(cn,[status(thm)],[189079,theory(equality)])).
% cnf(189512,plain,(subset(union(X1,union(X2,X3)),union(union(X3,X2),X1))),inference(spm,[status(thm)],[1810,189080,theory(equality)])).
% cnf(189688,plain,(subset(union(union(X1,X2),X3),union(X3,union(X2,X1)))),inference(spm,[status(thm)],[1553,189080,theory(equality)])).
% cnf(202567,plain,(union(X1,union(X2,X3))=union(union(X3,X2),X1)|~subset(union(X1,union(X2,X3)),union(union(X3,X2),X1))),inference(spm,[status(thm)],[20,189688,theory(equality)])).
% cnf(202841,plain,(union(X1,union(X2,X3))=union(union(X3,X2),X1)|$false),inference(rw,[status(thm)],[202567,189512,theory(equality)])).
% cnf(202842,plain,(union(X1,union(X2,X3))=union(union(X3,X2),X1)),inference(cn,[status(thm)],[202841,theory(equality)])).
% cnf(436753,plain,(subset(union(union(X1,X2),union(union(X3,X1),X2)),union(union(X3,X1),X2))),inference(spm,[status(thm)],[92,4295,theory(equality)])).
% cnf(437300,plain,(union(union(X1,X2),X3)=union(union(X2,X3),union(union(X1,X2),X3))|~subset(union(union(X1,X2),X3),union(union(X2,X3),union(union(X1,X2),X3)))),inference(spm,[status(thm)],[20,436753,theory(equality)])).
% cnf(437713,plain,(union(union(X1,X2),X3)=union(union(X2,X3),union(union(X1,X2),X3))|$false),inference(rw,[status(thm)],[437300,4511,theory(equality)])).
% cnf(437714,plain,(union(union(X1,X2),X3)=union(union(X2,X3),union(union(X1,X2),X3))),inference(cn,[status(thm)],[437713,theory(equality)])).
% cnf(439831,plain,(union(union(X3,X1),X2)=union(union(X3,X1),union(X1,X2))|~subset(union(union(X3,X1),X2),union(union(X3,X1),union(X1,X2)))),inference(spm,[status(thm)],[1675,437714,theory(equality)])).
% cnf(439840,plain,(union(union(X3,X1),X2)=union(union(X1,X2),union(X3,X1))|~subset(union(union(X3,X1),X2),union(union(X1,X2),union(X3,X1)))),inference(spm,[status(thm)],[2064,437714,theory(equality)])).
% cnf(442516,plain,(union(union(X3,X1),X2)=union(union(X3,X1),union(X1,X2))|$false),inference(rw,[status(thm)],[439831,1982,theory(equality)])).
% cnf(442517,plain,(union(union(X3,X1),X2)=union(union(X3,X1),union(X1,X2))),inference(cn,[status(thm)],[442516,theory(equality)])).
% cnf(442520,plain,(union(union(X3,X1),X2)=union(union(X1,X2),union(X3,X1))|$false),inference(rw,[status(thm)],[439840,1809,theory(equality)])).
% cnf(442521,plain,(union(union(X3,X1),X2)=union(union(X1,X2),union(X3,X1))),inference(cn,[status(thm)],[442520,theory(equality)])).
% cnf(449299,plain,(subset(union(union(X1,X2),X3),union(X2,X3))|member(esk2_2(union(union(X1,X2),union(X2,X3)),union(X2,X3)),X1)),inference(rw,[status(thm)],[4296,442517,theory(equality)])).
% cnf(449300,plain,(subset(union(union(X1,X2),X3),union(X2,X3))|member(esk2_2(union(union(X1,X2),X3),union(X2,X3)),X1)),inference(rw,[status(thm)],[449299,442517,theory(equality)])).
% cnf(449311,plain,(subset(union(union(X1,X2),union(X1,X3)),union(X2,union(X1,X3)))),inference(spm,[status(thm)],[75,449300,theory(equality)])).
% cnf(456331,plain,(union(X1,union(X2,X3))=union(union(X2,X1),union(X2,X3))|~subset(union(X1,union(X2,X3)),union(union(X2,X1),union(X2,X3)))),inference(spm,[status(thm)],[20,449311,theory(equality)])).
% cnf(456696,plain,(union(X1,union(X2,X3))=union(union(X2,X1),union(X2,X3))|$false),inference(rw,[status(thm)],[456331,1375,theory(equality)])).
% cnf(456697,plain,(union(X1,union(X2,X3))=union(union(X2,X1),union(X2,X3))),inference(cn,[status(thm)],[456696,theory(equality)])).
% cnf(460091,plain,(union(union(X1,X2),union(X3,X1))=union(X3,union(X1,X2))),inference(spm,[status(thm)],[202842,456697,theory(equality)])).
% cnf(462433,plain,(union(union(X3,X1),X2)=union(X3,union(X1,X2))),inference(rw,[status(thm)],[460091,442521,theory(equality)])).
% cnf(464296,plain,(union(X1,union(X2,X3))=union(X3,union(X2,X1))),inference(rw,[status(thm)],[202842,462433,theory(equality)])).
% cnf(466557,negated_conjecture,(union(esk4_0,union(esk3_0,esk5_0))!=union(esk3_0,union(esk4_0,esk5_0))),inference(rw,[status(thm)],[46,464296,theory(equality)])).
% cnf(466558,negated_conjecture,($false),inference(ar,[status(thm)],[466557,10,462433,theory(equality)])).
% cnf(466559,negated_conjecture,($false),466558,['proof']).
% # SZS output end CNFRefutation
% # Processed clauses                  : 6914
% # ...of these trivial                : 2497
% # ...subsumed                        : 3541
% # ...remaining for further processing: 876
% # Other redundant clauses eliminated : 2
% # Clauses deleted for lack of memory : 0
% # Backward-subsumed                  : 3
% # Backward-rewritten                 : 671
% # Generated clauses                  : 328046
% # ...of the previous two non-trivial : 205434
% # Contextual simplify-reflections    : 242
% # Paramodulations                    : 327322
% # Factorizations                     : 722
% # Equation resolutions               : 2
% # Current number of processed clauses: 200
% #    Positive orientable unit clauses: 57
% #    Positive unorientable unit clauses: 2
% #    Negative unit clauses           : 0
% #    Non-unit-clauses                : 141
% # Current number of unprocessed clauses: 8450
% # ...number of literals in the above : 27848
% # Clause-clause subsumption calls (NU) : 169550
% # Rec. Clause-clause subsumption calls : 76278
% # Unit Clause-clause subsumption calls : 14621
% # Rewrite failures with RHS unbound  : 0
% # Indexed BW rewrite attempts        : 30467
% # Indexed BW rewrite successes       : 1083
% # Backwards rewriting index:    47 leaves,   9.26+/-12.124 terms/leaf
% # Paramod-from index:           24 leaves,   8.33+/-9.551 terms/leaf
% # Paramod-into index:           45 leaves,   8.78+/-12.265 terms/leaf
% # -------------------------------------------------
% # User time              : 9.256 s
% # System time            : 0.294 s
% # Total time             : 9.550 s
% # Maximum resident set size: 0 pages
% PrfWatch: 14.97 CPU 15.88 WC
% FINAL PrfWatch: 14.97 CPU 15.88 WC
% SZS output end Solution for /tmp/SystemOnTPTP24223/SET159+3.tptp
% 
%------------------------------------------------------------------------------