TSTP Solution File: REL010+2 by Drodi---3.6.0
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Drodi---3.6.0
% Problem : REL010+2 : TPTP v8.1.2. Released v4.0.0.
% Transfm : none
% Format : tptp:raw
% Command : drodi -learnfrom(drodi.lrn) -timeout(%d) %s
% Computer : n002.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 : Tue Apr 30 20:37:23 EDT 2024
% Result : Theorem 6.87s 1.32s
% Output : CNFRefutation 7.65s
% Verified :
% SZS Type : Refutation
% Derivation depth : 36
% Number of leaves : 15
% Syntax : Number of formulae : 114 ( 110 unt; 0 def)
% Number of atoms : 118 ( 117 equ)
% Maximal formula atoms : 2 ( 1 avg)
% Number of connectives : 8 ( 4 ~; 0 |; 2 &)
% ( 0 <=>; 2 =>; 0 <=; 0 <~>)
% Maximal formula depth : 6 ( 2 avg)
% Maximal term depth : 7 ( 2 avg)
% Number of predicates : 2 ( 0 usr; 1 prp; 0-2 aty)
% Number of functors : 11 ( 11 usr; 6 con; 0-2 aty)
% Number of variables : 143 ( 140 !; 3 ?)
% Comments :
%------------------------------------------------------------------------------
fof(f1,axiom,
! [X0,X1] : join(X0,X1) = join(X1,X0),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f2,axiom,
! [X0,X1,X2] : join(X0,join(X1,X2)) = join(join(X0,X1),X2),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f3,axiom,
! [X0,X1] : X0 = join(complement(join(complement(X0),complement(X1))),complement(join(complement(X0),X1))),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f4,axiom,
! [X0,X1] : meet(X0,X1) = complement(join(complement(X0),complement(X1))),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f5,axiom,
! [X0,X1,X2] : composition(X0,composition(X1,X2)) = composition(composition(X0,X1),X2),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f6,axiom,
! [X0] : composition(X0,one) = X0,
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f7,axiom,
! [X0,X1,X2] : composition(join(X0,X1),X2) = join(composition(X0,X2),composition(X1,X2)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f8,axiom,
! [X0] : converse(converse(X0)) = X0,
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f9,axiom,
! [X0,X1] : converse(join(X0,X1)) = join(converse(X0),converse(X1)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f10,axiom,
! [X0,X1] : converse(composition(X0,X1)) = composition(converse(X1),converse(X0)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f11,axiom,
! [X0,X1] : join(composition(converse(X0),complement(composition(X0,X1))),complement(X1)) = complement(X1),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f12,axiom,
! [X0] : top = join(X0,complement(X0)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f13,axiom,
! [X0] : zero = meet(X0,complement(X0)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f15,axiom,
! [X0,X1,X2] : join(meet(composition(X0,X1),X2),meet(composition(X0,meet(X1,composition(converse(X0),X2))),X2)) = meet(composition(X0,meet(X1,composition(converse(X0),X2))),X2),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f17,conjecture,
! [X0,X1,X2] :
( meet(composition(X0,X1),X2) = zero
=> meet(X1,composition(converse(X0),X2)) = zero ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f18,negated_conjecture,
~ ! [X0,X1,X2] :
( meet(composition(X0,X1),X2) = zero
=> meet(X1,composition(converse(X0),X2)) = zero ),
inference(negated_conjecture,[status(cth)],[f17]) ).
fof(f19,plain,
! [X0,X1] : join(X0,X1) = join(X1,X0),
inference(cnf_transformation,[status(esa)],[f1]) ).
fof(f20,plain,
! [X0,X1,X2] : join(X0,join(X1,X2)) = join(join(X0,X1),X2),
inference(cnf_transformation,[status(esa)],[f2]) ).
fof(f21,plain,
! [X0,X1] : X0 = join(complement(join(complement(X0),complement(X1))),complement(join(complement(X0),X1))),
inference(cnf_transformation,[status(esa)],[f3]) ).
fof(f22,plain,
! [X0,X1] : meet(X0,X1) = complement(join(complement(X0),complement(X1))),
inference(cnf_transformation,[status(esa)],[f4]) ).
fof(f23,plain,
! [X0,X1,X2] : composition(X0,composition(X1,X2)) = composition(composition(X0,X1),X2),
inference(cnf_transformation,[status(esa)],[f5]) ).
fof(f24,plain,
! [X0] : composition(X0,one) = X0,
inference(cnf_transformation,[status(esa)],[f6]) ).
fof(f25,plain,
! [X0,X1,X2] : composition(join(X0,X1),X2) = join(composition(X0,X2),composition(X1,X2)),
inference(cnf_transformation,[status(esa)],[f7]) ).
fof(f26,plain,
! [X0] : converse(converse(X0)) = X0,
inference(cnf_transformation,[status(esa)],[f8]) ).
fof(f27,plain,
! [X0,X1] : converse(join(X0,X1)) = join(converse(X0),converse(X1)),
inference(cnf_transformation,[status(esa)],[f9]) ).
fof(f28,plain,
! [X0,X1] : converse(composition(X0,X1)) = composition(converse(X1),converse(X0)),
inference(cnf_transformation,[status(esa)],[f10]) ).
fof(f29,plain,
! [X0,X1] : join(composition(converse(X0),complement(composition(X0,X1))),complement(X1)) = complement(X1),
inference(cnf_transformation,[status(esa)],[f11]) ).
fof(f30,plain,
! [X0] : top = join(X0,complement(X0)),
inference(cnf_transformation,[status(esa)],[f12]) ).
fof(f31,plain,
! [X0] : zero = meet(X0,complement(X0)),
inference(cnf_transformation,[status(esa)],[f13]) ).
fof(f33,plain,
! [X0,X1,X2] : join(meet(composition(X0,X1),X2),meet(composition(X0,meet(X1,composition(converse(X0),X2))),X2)) = meet(composition(X0,meet(X1,composition(converse(X0),X2))),X2),
inference(cnf_transformation,[status(esa)],[f15]) ).
fof(f35,plain,
? [X0,X1,X2] :
( meet(composition(X0,X1),X2) = zero
& meet(X1,composition(converse(X0),X2)) != zero ),
inference(pre_NNF_transformation,[status(esa)],[f18]) ).
fof(f36,plain,
( meet(composition(sk0_0,sk0_1),sk0_2) = zero
& meet(sk0_1,composition(converse(sk0_0),sk0_2)) != zero ),
inference(skolemization,[status(esa)],[f35]) ).
fof(f37,plain,
meet(composition(sk0_0,sk0_1),sk0_2) = zero,
inference(cnf_transformation,[status(esa)],[f36]) ).
fof(f38,plain,
meet(sk0_1,composition(converse(sk0_0),sk0_2)) != zero,
inference(cnf_transformation,[status(esa)],[f36]) ).
fof(f39,plain,
! [X0,X1] : X0 = join(complement(join(complement(X0),X1)),complement(join(complement(X0),complement(X1)))),
inference(forward_demodulation,[status(thm)],[f19,f21]) ).
fof(f40,plain,
! [X0,X1] : join(complement(X0),composition(converse(X1),complement(composition(X1,X0)))) = complement(X0),
inference(forward_demodulation,[status(thm)],[f19,f29]) ).
fof(f41,plain,
! [X0,X1] : X0 = join(complement(join(complement(X0),X1)),meet(X0,X1)),
inference(backward_demodulation,[status(thm)],[f22,f39]) ).
fof(f42,plain,
! [X0,X1] : X0 = join(meet(X0,X1),complement(join(complement(X0),X1))),
inference(forward_demodulation,[status(thm)],[f19,f41]) ).
fof(f46,plain,
! [X0,X1] : converse(join(converse(X0),X1)) = join(X0,converse(X1)),
inference(paramodulation,[status(thm)],[f26,f27]) ).
fof(f49,plain,
! [X0,X1] : converse(composition(converse(X0),X1)) = composition(converse(X1),X0),
inference(paramodulation,[status(thm)],[f26,f28]) ).
fof(f525,plain,
! [X0,X1,X2] : join(meet(composition(converse(X0),X1),X2),meet(composition(converse(X0),meet(X1,composition(X0,X2))),X2)) = meet(composition(converse(X0),meet(X1,composition(converse(converse(X0)),X2))),X2),
inference(paramodulation,[status(thm)],[f26,f33]) ).
fof(f526,plain,
! [X0,X1,X2] : join(meet(composition(converse(X0),X1),X2),meet(composition(converse(X0),meet(X1,composition(X0,X2))),X2)) = meet(composition(converse(X0),meet(X1,composition(X0,X2))),X2),
inference(forward_demodulation,[status(thm)],[f26,f525]) ).
fof(f539,plain,
! [X0] : converse(converse(X0)) = composition(converse(one),X0),
inference(paramodulation,[status(thm)],[f24,f49]) ).
fof(f540,plain,
! [X0] : X0 = composition(converse(one),X0),
inference(forward_demodulation,[status(thm)],[f26,f539]) ).
fof(f546,plain,
! [X0] : converse(top) = join(X0,converse(complement(converse(X0)))),
inference(paramodulation,[status(thm)],[f30,f46]) ).
fof(f551,plain,
one = converse(one),
inference(paramodulation,[status(thm)],[f24,f540]) ).
fof(f591,plain,
! [X0] : X0 = composition(one,X0),
inference(backward_demodulation,[status(thm)],[f551,f540]) ).
fof(f714,plain,
! [X0] : meet(X0,complement(X0)) = complement(top),
inference(paramodulation,[status(thm)],[f30,f22]) ).
fof(f715,plain,
zero = complement(top),
inference(forward_demodulation,[status(thm)],[f31,f714]) ).
fof(f716,plain,
! [X0,X1] : meet(X0,X1) = complement(join(complement(X1),complement(X0))),
inference(paramodulation,[status(thm)],[f19,f22]) ).
fof(f717,plain,
! [X0,X1] : meet(X0,X1) = meet(X1,X0),
inference(forward_demodulation,[status(thm)],[f22,f716]) ).
fof(f727,plain,
! [X0] : meet(X0,top) = complement(join(complement(X0),zero)),
inference(paramodulation,[status(thm)],[f715,f22]) ).
fof(f728,plain,
! [X0] : meet(X0,top) = complement(join(zero,complement(X0))),
inference(forward_demodulation,[status(thm)],[f19,f727]) ).
fof(f733,plain,
zero = meet(sk0_2,composition(sk0_0,sk0_1)),
inference(paramodulation,[status(thm)],[f37,f717]) ).
fof(f785,plain,
! [X0,X1] : join(X0,join(complement(X0),X1)) = join(top,X1),
inference(paramodulation,[status(thm)],[f30,f20]) ).
fof(f803,plain,
! [X0] : join(X0,top) = join(top,complement(complement(X0))),
inference(paramodulation,[status(thm)],[f30,f785]) ).
fof(f863,plain,
! [X0] : join(zero,composition(converse(X0),complement(composition(X0,top)))) = complement(top),
inference(paramodulation,[status(thm)],[f715,f40]) ).
fof(f864,plain,
! [X0] : join(zero,composition(converse(X0),complement(composition(X0,top)))) = zero,
inference(forward_demodulation,[status(thm)],[f715,f863]) ).
fof(f869,plain,
! [X0] : join(complement(X0),composition(one,complement(composition(one,X0)))) = complement(X0),
inference(paramodulation,[status(thm)],[f551,f40]) ).
fof(f870,plain,
! [X0] : join(complement(X0),complement(composition(one,X0))) = complement(X0),
inference(forward_demodulation,[status(thm)],[f591,f869]) ).
fof(f871,plain,
! [X0] : join(complement(X0),complement(X0)) = complement(X0),
inference(forward_demodulation,[status(thm)],[f591,f870]) ).
fof(f1058,plain,
join(zero,complement(top)) = complement(top),
inference(paramodulation,[status(thm)],[f715,f871]) ).
fof(f1059,plain,
join(zero,zero) = complement(top),
inference(forward_demodulation,[status(thm)],[f715,f1058]) ).
fof(f1060,plain,
join(zero,zero) = zero,
inference(forward_demodulation,[status(thm)],[f715,f1059]) ).
fof(f1080,plain,
! [X0] : join(X0,complement(X0)) = join(top,complement(X0)),
inference(paramodulation,[status(thm)],[f871,f785]) ).
fof(f1081,plain,
! [X0] : top = join(top,complement(X0)),
inference(forward_demodulation,[status(thm)],[f30,f1080]) ).
fof(f1086,plain,
! [X0] : join(X0,top) = top,
inference(backward_demodulation,[status(thm)],[f1081,f803]) ).
fof(f1089,plain,
! [X0] : join(top,X0) = top,
inference(paramodulation,[status(thm)],[f19,f1086]) ).
fof(f1143,plain,
! [X0] : join(zero,join(zero,X0)) = join(zero,X0),
inference(paramodulation,[status(thm)],[f1060,f20]) ).
fof(f1149,plain,
! [X0] : join(zero,join(X0,zero)) = join(zero,X0),
inference(paramodulation,[status(thm)],[f19,f1143]) ).
fof(f1169,plain,
converse(top) = top,
inference(paramodulation,[status(thm)],[f1089,f546]) ).
fof(f1714,plain,
! [X0,X1] : X0 = join(meet(X0,complement(X1)),meet(X0,X1)),
inference(paramodulation,[status(thm)],[f22,f42]) ).
fof(f1715,plain,
! [X0,X1] : X0 = join(meet(X0,X1),meet(X0,complement(X1))),
inference(forward_demodulation,[status(thm)],[f19,f1714]) ).
fof(f1722,plain,
! [X0] : X0 = join(meet(X0,top),complement(top)),
inference(paramodulation,[status(thm)],[f1086,f42]) ).
fof(f1723,plain,
! [X0] : X0 = join(complement(top),meet(X0,top)),
inference(forward_demodulation,[status(thm)],[f19,f1722]) ).
fof(f1724,plain,
! [X0] : X0 = join(zero,meet(X0,top)),
inference(forward_demodulation,[status(thm)],[f715,f1723]) ).
fof(f1744,plain,
! [X0] : join(zero,X0) = join(zero,meet(X0,top)),
inference(paramodulation,[status(thm)],[f1724,f1143]) ).
fof(f1745,plain,
! [X0] : join(zero,X0) = X0,
inference(forward_demodulation,[status(thm)],[f1724,f1744]) ).
fof(f1748,plain,
! [X0] : join(X0,zero) = join(zero,X0),
inference(backward_demodulation,[status(thm)],[f1745,f1149]) ).
fof(f1749,plain,
! [X0] : join(X0,zero) = X0,
inference(forward_demodulation,[status(thm)],[f1745,f1748]) ).
fof(f1751,plain,
! [X0] : X0 = meet(X0,top),
inference(backward_demodulation,[status(thm)],[f1745,f1724]) ).
fof(f1760,plain,
! [X0] : meet(X0,top) = complement(complement(X0)),
inference(backward_demodulation,[status(thm)],[f1745,f728]) ).
fof(f1761,plain,
! [X0] : X0 = complement(complement(X0)),
inference(forward_demodulation,[status(thm)],[f1751,f1760]) ).
fof(f1799,plain,
! [X0] : composition(converse(X0),complement(composition(X0,top))) = zero,
inference(backward_demodulation,[status(thm)],[f1745,f864]) ).
fof(f1821,plain,
! [X0] : join(complement(complement(X0)),X0) = complement(complement(X0)),
inference(paramodulation,[status(thm)],[f1761,f871]) ).
fof(f1822,plain,
! [X0] : join(X0,complement(complement(X0))) = complement(complement(X0)),
inference(forward_demodulation,[status(thm)],[f19,f1821]) ).
fof(f1823,plain,
! [X0] : join(X0,X0) = complement(complement(X0)),
inference(forward_demodulation,[status(thm)],[f1761,f1822]) ).
fof(f1824,plain,
! [X0] : join(X0,X0) = X0,
inference(forward_demodulation,[status(thm)],[f1761,f1823]) ).
fof(f1898,plain,
! [X0,X1] : join(X0,join(X0,X1)) = join(X0,X1),
inference(paramodulation,[status(thm)],[f1824,f20]) ).
fof(f2208,plain,
! [X0,X1] : join(meet(X0,X1),X0) = join(meet(X0,X1),meet(X0,complement(X1))),
inference(paramodulation,[status(thm)],[f1715,f1898]) ).
fof(f2209,plain,
! [X0,X1] : join(X0,meet(X0,X1)) = join(meet(X0,X1),meet(X0,complement(X1))),
inference(forward_demodulation,[status(thm)],[f19,f2208]) ).
fof(f2210,plain,
! [X0,X1] : join(X0,meet(X0,X1)) = X0,
inference(forward_demodulation,[status(thm)],[f1715,f2209]) ).
fof(f3047,plain,
! [X0] : meet(zero,X0) = zero,
inference(paramodulation,[status(thm)],[f1745,f2210]) ).
fof(f4410,plain,
composition(top,complement(composition(top,top))) = zero,
inference(paramodulation,[status(thm)],[f1169,f1799]) ).
fof(f6981,plain,
! [X0] : composition(join(X0,top),complement(composition(top,top))) = join(composition(X0,complement(composition(top,top))),zero),
inference(paramodulation,[status(thm)],[f4410,f25]) ).
fof(f6982,plain,
! [X0] : composition(top,complement(composition(top,top))) = join(composition(X0,complement(composition(top,top))),zero),
inference(forward_demodulation,[status(thm)],[f1086,f6981]) ).
fof(f6983,plain,
! [X0] : zero = join(composition(X0,complement(composition(top,top))),zero),
inference(forward_demodulation,[status(thm)],[f4410,f6982]) ).
fof(f6984,plain,
! [X0] : zero = composition(X0,complement(composition(top,top))),
inference(forward_demodulation,[status(thm)],[f1749,f6983]) ).
fof(f6998,plain,
! [X0,X1] : zero = composition(X0,composition(X1,complement(composition(top,top)))),
inference(paramodulation,[status(thm)],[f23,f6984]) ).
fof(f6999,plain,
! [X0] : zero = composition(X0,zero),
inference(forward_demodulation,[status(thm)],[f6984,f6998]) ).
fof(f9148,plain,
join(meet(composition(converse(sk0_0),sk0_2),sk0_1),meet(composition(converse(sk0_0),zero),sk0_1)) = meet(composition(converse(sk0_0),meet(sk0_2,composition(sk0_0,sk0_1))),sk0_1),
inference(paramodulation,[status(thm)],[f733,f526]) ).
fof(f9149,plain,
join(meet(composition(converse(sk0_0),zero),sk0_1),meet(composition(converse(sk0_0),sk0_2),sk0_1)) = meet(composition(converse(sk0_0),meet(sk0_2,composition(sk0_0,sk0_1))),sk0_1),
inference(forward_demodulation,[status(thm)],[f19,f9148]) ).
fof(f9150,plain,
join(meet(sk0_1,composition(converse(sk0_0),zero)),meet(composition(converse(sk0_0),sk0_2),sk0_1)) = meet(composition(converse(sk0_0),meet(sk0_2,composition(sk0_0,sk0_1))),sk0_1),
inference(forward_demodulation,[status(thm)],[f717,f9149]) ).
fof(f9151,plain,
join(meet(sk0_1,zero),meet(composition(converse(sk0_0),sk0_2),sk0_1)) = meet(composition(converse(sk0_0),meet(sk0_2,composition(sk0_0,sk0_1))),sk0_1),
inference(forward_demodulation,[status(thm)],[f6999,f9150]) ).
fof(f9152,plain,
join(meet(zero,sk0_1),meet(composition(converse(sk0_0),sk0_2),sk0_1)) = meet(composition(converse(sk0_0),meet(sk0_2,composition(sk0_0,sk0_1))),sk0_1),
inference(forward_demodulation,[status(thm)],[f717,f9151]) ).
fof(f9153,plain,
join(zero,meet(composition(converse(sk0_0),sk0_2),sk0_1)) = meet(composition(converse(sk0_0),meet(sk0_2,composition(sk0_0,sk0_1))),sk0_1),
inference(forward_demodulation,[status(thm)],[f3047,f9152]) ).
fof(f9154,plain,
meet(composition(converse(sk0_0),sk0_2),sk0_1) = meet(composition(converse(sk0_0),meet(sk0_2,composition(sk0_0,sk0_1))),sk0_1),
inference(forward_demodulation,[status(thm)],[f1745,f9153]) ).
fof(f9155,plain,
meet(sk0_1,composition(converse(sk0_0),sk0_2)) = meet(composition(converse(sk0_0),meet(sk0_2,composition(sk0_0,sk0_1))),sk0_1),
inference(forward_demodulation,[status(thm)],[f717,f9154]) ).
fof(f9156,plain,
meet(sk0_1,composition(converse(sk0_0),sk0_2)) = meet(sk0_1,composition(converse(sk0_0),meet(sk0_2,composition(sk0_0,sk0_1)))),
inference(forward_demodulation,[status(thm)],[f717,f9155]) ).
fof(f9157,plain,
meet(sk0_1,composition(converse(sk0_0),sk0_2)) = meet(sk0_1,composition(converse(sk0_0),zero)),
inference(forward_demodulation,[status(thm)],[f733,f9156]) ).
fof(f9158,plain,
meet(sk0_1,composition(converse(sk0_0),sk0_2)) = meet(sk0_1,zero),
inference(forward_demodulation,[status(thm)],[f6999,f9157]) ).
fof(f9159,plain,
meet(sk0_1,composition(converse(sk0_0),sk0_2)) = meet(zero,sk0_1),
inference(forward_demodulation,[status(thm)],[f717,f9158]) ).
fof(f9160,plain,
meet(sk0_1,composition(converse(sk0_0),sk0_2)) = zero,
inference(forward_demodulation,[status(thm)],[f3047,f9159]) ).
fof(f9161,plain,
$false,
inference(forward_subsumption_resolution,[status(thm)],[f9160,f38]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.13 % Problem : REL010+2 : TPTP v8.1.2. Released v4.0.0.
% 0.07/0.13 % Command : drodi -learnfrom(drodi.lrn) -timeout(%d) %s
% 0.14/0.34 % Computer : n002.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.35 % CPULimit : 300
% 0.14/0.35 % WCLimit : 300
% 0.14/0.35 % DateTime : Mon Apr 29 21:54:39 EDT 2024
% 0.14/0.35 % CPUTime :
% 0.14/0.35 % Drodi V3.6.0
% 6.87/1.32 % Refutation found
% 6.87/1.32 % SZS status Theorem for theBenchmark: Theorem is valid
% 6.87/1.32 % SZS output start CNFRefutation for theBenchmark
% See solution above
% 7.65/1.38 % Elapsed time: 1.013933 seconds
% 7.65/1.38 % CPU time: 7.857412 seconds
% 7.65/1.38 % Total memory used: 215.039 MB
% 7.65/1.38 % Net memory used: 212.181 MB
%------------------------------------------------------------------------------