TSTP Solution File: PUZ008-2 by SnakeForV---1.0
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : SnakeForV---1.0
% Problem : PUZ008-2 : TPTP v8.1.0. Released v1.0.0.
% Transfm : none
% Format : tptp:raw
% Command : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule snake_tptp_uns --cores 0 -t %d %s
% Computer : n020.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 Aug 31 18:10:38 EDT 2022
% Result : Unsatisfiable 0.19s 0.51s
% Output : Refutation 0.19s
% Verified :
% SZS Type : Refutation
% Derivation depth : 12
% Number of leaves : 32
% Syntax : Number of formulae : 99 ( 21 unt; 0 def)
% Number of atoms : 178 ( 6 equ)
% Maximal formula atoms : 3 ( 1 avg)
% Number of connectives : 146 ( 67 ~; 66 |; 0 &)
% ( 13 <=>; 0 =>; 0 <=; 0 <~>)
% Maximal formula depth : 4 ( 2 avg)
% Maximal term depth : 3 ( 2 avg)
% Number of predicates : 16 ( 14 usr; 14 prp; 0-3 aty)
% Number of functors : 16 ( 16 usr; 12 con; 0-2 aty)
% Number of variables : 0 ( 0 !; 0 ?)
% Comments :
%------------------------------------------------------------------------------
fof(f273,plain,
$false,
inference(avatar_sat_refutation,[],[f68,f77,f78,f84,f91,f112,f134,f212,f214,f224,f229,f244,f258,f262]) ).
fof(f262,plain,
~ spl6_14,
inference(avatar_contradiction_clause,[],[f261]) ).
fof(f261,plain,
( $false
| ~ spl6_14 ),
inference(subsumption_resolution,[],[f260,f39]) ).
fof(f39,plain,
~ banks(sF2,sF5,boatoneast),
inference(definition_folding,[],[f32,f38,f37,f36,f35,f34,f33]) ).
fof(f33,plain,
m(n0) = sF0,
introduced(function_definition,[]) ).
fof(f34,plain,
c(n0) = sF1,
introduced(function_definition,[]) ).
fof(f35,plain,
sF2 = west(sF0,sF1),
introduced(function_definition,[]) ).
fof(f36,plain,
m(n3) = sF3,
introduced(function_definition,[]) ).
fof(f37,plain,
c(n3) = sF4,
introduced(function_definition,[]) ).
fof(f38,plain,
sF5 = east(sF3,sF4),
introduced(function_definition,[]) ).
fof(f32,axiom,
~ banks(west(m(n0),c(n0)),east(m(n3),c(n3)),boatoneast),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',prove_can_get_across) ).
fof(f260,plain,
( banks(sF2,sF5,boatoneast)
| ~ spl6_14 ),
inference(forward_demodulation,[],[f259,f35]) ).
fof(f259,plain,
( banks(west(sF0,sF1),sF5,boatoneast)
| ~ spl6_14 ),
inference(forward_demodulation,[],[f133,f33]) ).
fof(f133,plain,
( banks(west(m(n0),sF1),sF5,boatoneast)
| ~ spl6_14 ),
inference(avatar_component_clause,[],[f131]) ).
fof(f131,plain,
( spl6_14
<=> banks(west(m(n0),sF1),sF5,boatoneast) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_14])]) ).
fof(f258,plain,
( ~ spl6_12
| spl6_17 ),
inference(avatar_contradiction_clause,[],[f257]) ).
fof(f257,plain,
( $false
| ~ spl6_12
| spl6_17 ),
inference(subsumption_resolution,[],[f256,f196]) ).
fof(f196,plain,
( ~ banks(west(sF0,c(n2)),east(sF3,c(n1)),boatonwest)
| spl6_17 ),
inference(avatar_component_clause,[],[f194]) ).
fof(f194,plain,
( spl6_17
<=> banks(west(sF0,c(n2)),east(sF3,c(n1)),boatonwest) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_17])]) ).
fof(f256,plain,
( banks(west(sF0,c(n2)),east(sF3,c(n1)),boatonwest)
| ~ spl6_12 ),
inference(forward_demodulation,[],[f255,f33]) ).
fof(f255,plain,
( banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatonwest)
| ~ spl6_12 ),
inference(forward_demodulation,[],[f111,f36]) ).
fof(f111,plain,
( banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatonwest)
| ~ spl6_12 ),
inference(avatar_component_clause,[],[f109]) ).
fof(f109,plain,
( spl6_12
<=> banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatonwest) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_12])]) ).
fof(f244,plain,
( spl6_19
| ~ spl6_9 ),
inference(avatar_split_clause,[],[f241,f81,f209]) ).
fof(f209,plain,
( spl6_19
<=> banks(west(sF0,c(n2)),east(sF3,c(n1)),boatoneast) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_19])]) ).
fof(f81,plain,
( spl6_9
<=> banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatoneast) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_9])]) ).
fof(f241,plain,
( banks(west(sF0,c(n2)),east(sF3,c(n1)),boatoneast)
| ~ spl6_9 ),
inference(forward_demodulation,[],[f240,f33]) ).
fof(f240,plain,
( banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatoneast)
| ~ spl6_9 ),
inference(forward_demodulation,[],[f83,f36]) ).
fof(f83,plain,
( banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatoneast)
| ~ spl6_9 ),
inference(avatar_component_clause,[],[f81]) ).
fof(f229,plain,
( ~ spl6_18
| spl6_5 ),
inference(avatar_split_clause,[],[f228,f61,f205]) ).
fof(f205,plain,
( spl6_18
<=> banks(west(sF0,sF4),east(sF3,sF1),boatonwest) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_18])]) ).
fof(f61,plain,
( spl6_5
<=> banks(west(m(n0),c(n3)),east(m(n3),sF1),boatonwest) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_5])]) ).
fof(f228,plain,
( ~ banks(west(sF0,sF4),east(sF3,sF1),boatonwest)
| spl6_5 ),
inference(forward_demodulation,[],[f227,f33]) ).
fof(f227,plain,
( ~ banks(west(m(n0),sF4),east(sF3,sF1),boatonwest)
| spl6_5 ),
inference(forward_demodulation,[],[f226,f37]) ).
fof(f226,plain,
( ~ banks(west(m(n0),c(n3)),east(sF3,sF1),boatonwest)
| spl6_5 ),
inference(forward_demodulation,[],[f63,f36]) ).
fof(f63,plain,
( ~ banks(west(m(n0),c(n3)),east(m(n3),sF1),boatonwest)
| spl6_5 ),
inference(avatar_component_clause,[],[f61]) ).
fof(f224,plain,
spl6_10,
inference(avatar_contradiction_clause,[],[f223]) ).
fof(f223,plain,
( $false
| spl6_10 ),
inference(subsumption_resolution,[],[f222,f178]) ).
fof(f178,plain,
banks(west(sF3,sF1),east(sF0,sF4),boatoneast),
inference(forward_demodulation,[],[f177,f36]) ).
fof(f177,plain,
banks(west(m(n3),sF1),east(sF0,sF4),boatoneast),
inference(forward_demodulation,[],[f176,f34]) ).
fof(f176,plain,
banks(west(m(n3),c(n0)),east(sF0,sF4),boatoneast),
inference(subsumption_resolution,[],[f175,f150]) ).
fof(f150,plain,
banks(west(sF3,c(n2)),east(sF0,c(n1)),boatonwest),
inference(forward_demodulation,[],[f149,f36]) ).
fof(f149,plain,
banks(west(m(n3),c(n2)),east(sF0,c(n1)),boatonwest),
inference(forward_demodulation,[],[f148,f33]) ).
fof(f148,plain,
banks(west(m(n3),c(n2)),east(m(n0),c(n1)),boatonwest),
inference(subsumption_resolution,[],[f23,f118]) ).
fof(f118,plain,
banks(west(m(n2),c(n2)),east(m(n1),c(n1)),boatoneast),
inference(subsumption_resolution,[],[f117,f79]) ).
fof(f79,plain,
banks(west(m(n3),sF4),east(m(n0),sF1),boatonwest),
inference(backward_demodulation,[],[f58,f37]) ).
fof(f58,plain,
banks(west(m(n3),c(n3)),east(m(n0),sF1),boatonwest),
inference(forward_demodulation,[],[f31,f34]) ).
fof(f31,axiom,
banks(west(m(n3),c(n3)),east(m(n0),c(n0)),boatonwest),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',starting_configuration) ).
fof(f117,plain,
( ~ banks(west(m(n3),sF4),east(m(n0),sF1),boatonwest)
| banks(west(m(n2),c(n2)),east(m(n1),c(n1)),boatoneast) ),
inference(forward_demodulation,[],[f116,f37]) ).
fof(f116,plain,
( ~ banks(west(m(n3),c(n3)),east(m(n0),sF1),boatonwest)
| banks(west(m(n2),c(n2)),east(m(n1),c(n1)),boatoneast) ),
inference(forward_demodulation,[],[f26,f34]) ).
fof(f26,axiom,
( banks(west(m(n2),c(n2)),east(m(n1),c(n1)),boatoneast)
| ~ banks(west(m(n3),c(n3)),east(m(n0),c(n0)),boatonwest) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',bmmmccc_x_to_mmcc_bmc) ).
fof(f23,axiom,
( ~ banks(west(m(n2),c(n2)),east(m(n1),c(n1)),boatoneast)
| banks(west(m(n3),c(n2)),east(m(n0),c(n1)),boatonwest) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',mmcc_bmc_to_bmmmcc_c) ).
fof(f175,plain,
( ~ banks(west(sF3,c(n2)),east(sF0,c(n1)),boatonwest)
| banks(west(m(n3),c(n0)),east(sF0,sF4),boatoneast) ),
inference(forward_demodulation,[],[f174,f36]) ).
fof(f174,plain,
( ~ banks(west(m(n3),c(n2)),east(sF0,c(n1)),boatonwest)
| banks(west(m(n3),c(n0)),east(sF0,sF4),boatoneast) ),
inference(forward_demodulation,[],[f173,f33]) ).
fof(f173,plain,
( banks(west(m(n3),c(n0)),east(m(n0),sF4),boatoneast)
| ~ banks(west(m(n3),c(n2)),east(sF0,c(n1)),boatonwest) ),
inference(forward_demodulation,[],[f172,f33]) ).
fof(f172,plain,
( ~ banks(west(m(n3),c(n2)),east(m(n0),c(n1)),boatonwest)
| banks(west(m(n3),c(n0)),east(m(n0),sF4),boatoneast) ),
inference(forward_demodulation,[],[f8,f37]) ).
fof(f8,axiom,
( banks(west(m(n3),c(n0)),east(m(n0),c(n3)),boatoneast)
| ~ banks(west(m(n3),c(n2)),east(m(n0),c(n1)),boatonwest) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',bmmmcc_c_to_mmm_bccc) ).
fof(f222,plain,
( ~ banks(west(sF3,sF1),east(sF0,sF4),boatoneast)
| spl6_10 ),
inference(forward_demodulation,[],[f221,f36]) ).
fof(f221,plain,
( ~ banks(west(m(n3),sF1),east(sF0,sF4),boatoneast)
| spl6_10 ),
inference(forward_demodulation,[],[f90,f33]) ).
fof(f90,plain,
( ~ banks(west(m(n3),sF1),east(m(n0),sF4),boatoneast)
| spl6_10 ),
inference(avatar_component_clause,[],[f88]) ).
fof(f88,plain,
( spl6_10
<=> banks(west(m(n3),sF1),east(m(n0),sF4),boatoneast) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_10])]) ).
fof(f214,plain,
( ~ spl6_17
| spl6_13 ),
inference(avatar_split_clause,[],[f213,f127,f194]) ).
fof(f127,plain,
( spl6_13
<=> banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatonwest) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_13])]) ).
fof(f213,plain,
( ~ banks(west(sF0,c(n2)),east(sF3,c(n1)),boatonwest)
| spl6_13 ),
inference(forward_demodulation,[],[f129,f33]) ).
fof(f129,plain,
( ~ banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatonwest)
| spl6_13 ),
inference(avatar_component_clause,[],[f127]) ).
fof(f212,plain,
( spl6_18
| ~ spl6_19 ),
inference(avatar_split_clause,[],[f203,f209,f205]) ).
fof(f203,plain,
( ~ banks(west(sF0,c(n2)),east(sF3,c(n1)),boatoneast)
| banks(west(sF0,sF4),east(sF3,sF1),boatonwest) ),
inference(forward_demodulation,[],[f202,f33]) ).
fof(f202,plain,
( banks(west(m(n0),sF4),east(sF3,sF1),boatonwest)
| ~ banks(west(sF0,c(n2)),east(sF3,c(n1)),boatoneast) ),
inference(forward_demodulation,[],[f201,f37]) ).
fof(f201,plain,
( banks(west(m(n0),c(n3)),east(sF3,sF1),boatonwest)
| ~ banks(west(sF0,c(n2)),east(sF3,c(n1)),boatoneast) ),
inference(forward_demodulation,[],[f200,f33]) ).
fof(f200,plain,
( ~ banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatoneast)
| banks(west(m(n0),c(n3)),east(sF3,sF1),boatonwest) ),
inference(forward_demodulation,[],[f199,f36]) ).
fof(f199,plain,
( ~ banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatoneast)
| banks(west(m(n0),c(n3)),east(sF3,sF1),boatonwest) ),
inference(forward_demodulation,[],[f198,f36]) ).
fof(f198,plain,
( banks(west(m(n0),c(n3)),east(m(n3),sF1),boatonwest)
| ~ banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatoneast) ),
inference(forward_demodulation,[],[f10,f34]) ).
fof(f10,axiom,
( banks(west(m(n0),c(n3)),east(m(n3),c(n0)),boatonwest)
| ~ banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatoneast) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',cc_bmmmc_to_bccc_mmm) ).
fof(f134,plain,
( ~ spl6_13
| spl6_14 ),
inference(avatar_split_clause,[],[f125,f131,f127]) ).
fof(f125,plain,
( banks(west(m(n0),sF1),sF5,boatoneast)
| ~ banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatonwest) ),
inference(forward_demodulation,[],[f124,f34]) ).
fof(f124,plain,
( banks(west(m(n0),c(n0)),sF5,boatoneast)
| ~ banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatonwest) ),
inference(forward_demodulation,[],[f123,f38]) ).
fof(f123,plain,
( banks(west(m(n0),c(n0)),east(sF3,sF4),boatoneast)
| ~ banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatonwest) ),
inference(forward_demodulation,[],[f122,f36]) ).
fof(f122,plain,
( banks(west(m(n0),c(n0)),east(m(n3),sF4),boatoneast)
| ~ banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatonwest) ),
inference(forward_demodulation,[],[f121,f37]) ).
fof(f121,plain,
( ~ banks(west(m(n0),c(n2)),east(sF3,c(n1)),boatonwest)
| banks(west(m(n0),c(n0)),east(m(n3),c(n3)),boatoneast) ),
inference(forward_demodulation,[],[f9,f36]) ).
fof(f9,axiom,
( ~ banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatonwest)
| banks(west(m(n0),c(n0)),east(m(n3),c(n3)),boatoneast) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',bcc_mmmc_to_x_bmmmccc) ).
fof(f112,plain,
( spl6_12
| ~ spl6_6 ),
inference(avatar_split_clause,[],[f11,f65,f109]) ).
fof(f65,plain,
( spl6_6
<=> banks(west(m(n0),c(n1)),east(m(n3),c(n2)),boatoneast) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_6])]) ).
fof(f11,axiom,
( ~ banks(west(m(n0),c(n1)),east(m(n3),c(n2)),boatoneast)
| banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatonwest) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',c_bmmmcc_to_bcc_mmmc) ).
fof(f91,plain,
( spl6_1
| ~ spl6_10 ),
inference(avatar_split_clause,[],[f86,f88,f41]) ).
fof(f41,plain,
( spl6_1
<=> banks(west(m(n3),c(n1)),east(m(n0),c(n2)),boatonwest) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_1])]) ).
fof(f86,plain,
( ~ banks(west(m(n3),sF1),east(m(n0),sF4),boatoneast)
| banks(west(m(n3),c(n1)),east(m(n0),c(n2)),boatonwest) ),
inference(forward_demodulation,[],[f85,f34]) ).
fof(f85,plain,
( ~ banks(west(m(n3),c(n0)),east(m(n0),sF4),boatoneast)
| banks(west(m(n3),c(n1)),east(m(n0),c(n2)),boatonwest) ),
inference(forward_demodulation,[],[f12,f37]) ).
fof(f12,axiom,
( banks(west(m(n3),c(n1)),east(m(n0),c(n2)),boatonwest)
| ~ banks(west(m(n3),c(n0)),east(m(n0),c(n3)),boatoneast) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',mmm_bccc_to_bmmmc_cc) ).
fof(f84,plain,
( spl6_9
| ~ spl6_8 ),
inference(avatar_split_clause,[],[f21,f74,f81]) ).
fof(f74,plain,
( spl6_8
<=> banks(west(m(n2),c(n2)),east(m(n1),c(n1)),boatonwest) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_8])]) ).
fof(f21,axiom,
( ~ banks(west(m(n2),c(n2)),east(m(n1),c(n1)),boatonwest)
| banks(west(m(n0),c(n2)),east(m(n3),c(n1)),boatoneast) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',bmmcc_mc_to_cc_bmmmc) ).
fof(f78,plain,
( ~ spl6_1
| spl6_7 ),
inference(avatar_split_clause,[],[f20,f70,f41]) ).
fof(f70,plain,
( spl6_7
<=> banks(west(m(n1),c(n1)),east(m(n2),c(n2)),boatoneast) ),
introduced(avatar_definition,[new_symbols(naming,[spl6_7])]) ).
fof(f20,axiom,
( banks(west(m(n1),c(n1)),east(m(n2),c(n2)),boatoneast)
| ~ banks(west(m(n3),c(n1)),east(m(n0),c(n2)),boatonwest) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',bmmmc_cc_to_mc_bmmcc) ).
fof(f77,plain,
( ~ spl6_7
| spl6_8 ),
inference(avatar_split_clause,[],[f29,f74,f70]) ).
fof(f29,axiom,
( banks(west(m(n2),c(n2)),east(m(n1),c(n1)),boatonwest)
| ~ banks(west(m(n1),c(n1)),east(m(n2),c(n2)),boatoneast) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',mc_bmmcc_to_bmmcc_mc) ).
fof(f68,plain,
( ~ spl6_5
| spl6_6 ),
inference(avatar_split_clause,[],[f59,f65,f61]) ).
fof(f59,plain,
( banks(west(m(n0),c(n1)),east(m(n3),c(n2)),boatoneast)
| ~ banks(west(m(n0),c(n3)),east(m(n3),sF1),boatonwest) ),
inference(forward_demodulation,[],[f7,f34]) ).
fof(f7,axiom,
( ~ banks(west(m(n0),c(n3)),east(m(n3),c(n0)),boatonwest)
| banks(west(m(n0),c(n1)),east(m(n3),c(n2)),boatoneast) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',bccc_mmm_to_c_bmmmcc) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12 % Problem : PUZ008-2 : TPTP v8.1.0. Released v1.0.0.
% 0.12/0.13 % Command : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule snake_tptp_uns --cores 0 -t %d %s
% 0.13/0.34 % Computer : n020.cluster.edu
% 0.13/0.34 % Model : x86_64 x86_64
% 0.13/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.34 % Memory : 8042.1875MB
% 0.13/0.34 % OS : Linux 3.10.0-693.el7.x86_64
% 0.13/0.34 % CPULimit : 300
% 0.13/0.34 % WCLimit : 300
% 0.13/0.34 % DateTime : Tue Aug 30 10:37:15 EDT 2022
% 0.13/0.34 % CPUTime :
% 0.19/0.50 % (1004)lrs+10_1:1_kws=precedence:lwlo=on:tgt=ground:i=99966:si=on:rawr=on:rtra=on_0 on theBenchmark for (2999ds/99966Mi)
% 0.19/0.50 % (1004)First to succeed.
% 0.19/0.51 % (1025)fmb+10_1:1_fmbes=contour:fmbsr=2.0:fmbsso=input_usage:i=6:si=on:rawr=on:rtra=on_0 on theBenchmark for (2999ds/6Mi)
% 0.19/0.51 % (1004)Refutation found. Thanks to Tanya!
% 0.19/0.51 % SZS status Unsatisfiable for theBenchmark
% 0.19/0.51 % SZS output start Proof for theBenchmark
% See solution above
% 0.19/0.51 % (1004)------------------------------
% 0.19/0.51 % (1004)Version: Vampire 4.7 (commit 807e37dd9 on 2022-08-23 09:55:27 +0200)
% 0.19/0.51 % (1004)Linked with Z3 4.8.13.0 f03d756e086f81f2596157241e0decfb1c982299 z3-4.8.4-5390-gf03d756e0
% 0.19/0.51 % (1004)Termination reason: Refutation
% 0.19/0.51
% 0.19/0.51 % (1004)Memory used [KB]: 5884
% 0.19/0.51 % (1004)Time elapsed: 0.006 s
% 0.19/0.51 % (1004)Instructions burned: 6 (million)
% 0.19/0.51 % (1004)------------------------------
% 0.19/0.51 % (1004)------------------------------
% 0.19/0.51 % (1003)Success in time 0.16 s
%------------------------------------------------------------------------------