TSTP Solution File: SWB080+1 by Zipperpin---2.1.9999
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Zipperpin---2.1.9999
% Problem : SWB080+1 : TPTP v8.1.2. Released v5.2.0.
% Transfm : NO INFORMATION
% Format : NO INFORMATION
% Command : python3 /export/starexec/sandbox/solver/bin/portfolio.lams.parallel.py %s %d /export/starexec/sandbox/tmp/tmp.BNvTsY2NYt true
% Computer : n017.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 : Thu Aug 31 20:16:23 EDT 2023
% Result : Theorem 0.57s 1.09s
% Output : Refutation 0.57s
% Verified :
% SZS Type : Refutation
% Derivation depth : 11
% Number of leaves : 30
% Syntax : Number of formulae : 78 ( 28 unt; 22 typ; 0 def)
% Number of atoms : 136 ( 12 equ; 0 cnn)
% Maximal formula atoms : 21 ( 2 avg)
% Number of connectives : 480 ( 43 ~; 42 |; 28 &; 357 @)
% ( 4 <=>; 6 =>; 0 <=; 0 <~>)
% Maximal formula depth : 33 ( 7 avg)
% Number of types : 2 ( 0 usr)
% Number of type conns : 11 ( 11 >; 0 *; 0 +; 0 <<)
% Number of symbols : 24 ( 22 usr; 17 con; 0-3 aty)
% Number of variables : 76 ( 0 ^; 67 !; 9 ?; 76 :)
% Comments :
%------------------------------------------------------------------------------
thf(ip_type,type,
ip: $i > $o ).
thf(uri_ex_w_type,type,
uri_ex_w: $i ).
thf(uri_owl_oneOf_type,type,
uri_owl_oneOf: $i ).
thf(sk__12_type,type,
sk__12: $i ).
thf(uri_ex_p2_type,type,
uri_ex_p2: $i ).
thf(uri_rdfs_range_type,type,
uri_rdfs_range: $i ).
thf(uri_rdfs_domain_type,type,
uri_rdfs_domain: $i ).
thf(uri_ex_p1_type,type,
uri_ex_p1: $i ).
thf(sk__16_type,type,
sk__16: $i ).
thf(sk__18_type,type,
sk__18: $i ).
thf(iext_type,type,
iext: $i > $i > $i > $o ).
thf(uri_rdfs_subPropertyOf_type,type,
uri_rdfs_subPropertyOf: $i ).
thf(ic_type,type,
ic: $i > $o ).
thf(sk__13_type,type,
sk__13: $i ).
thf(uri_ex_u_type,type,
uri_ex_u: $i ).
thf(uri_rdf_first_type,type,
uri_rdf_first: $i ).
thf(icext_type,type,
icext: $i > $i > $o ).
thf(sk__8_type,type,
sk__8: $i > $i > $i ).
thf(sk__9_type,type,
sk__9: $i > $i > $i ).
thf(uri_rdf_rest_type,type,
uri_rdf_rest: $i ).
thf(sk__14_type,type,
sk__14: $i ).
thf(uri_rdf_nil_type,type,
uri_rdf_nil: $i ).
thf(premise_rdfbased_sem_rdfsext_subprop_ext,axiom,
? [X8: $i,X4: $i,X2: $i,X5: $i,X1: $i,X6: $i,X3: $i,X7: $i,X0: $i] :
( ( iext @ uri_ex_p2 @ uri_ex_w @ uri_ex_w )
& ( iext @ uri_ex_p2 @ uri_ex_w @ uri_ex_u )
& ( iext @ uri_ex_p1 @ uri_ex_w @ uri_ex_u )
& ( iext @ uri_rdf_rest @ X8 @ uri_rdf_nil )
& ( iext @ uri_rdf_first @ X8 @ uri_ex_w )
& ( iext @ uri_owl_oneOf @ X5 @ X4 )
& ( iext @ uri_owl_oneOf @ X6 @ X7 )
& ( iext @ uri_owl_oneOf @ X0 @ X3 )
& ( iext @ uri_rdf_rest @ X7 @ X8 )
& ( iext @ uri_rdf_first @ X7 @ uri_ex_u )
& ( iext @ uri_owl_oneOf @ X1 @ X2 )
& ( iext @ uri_rdfs_range @ uri_ex_p2 @ X6 )
& ( iext @ uri_rdfs_domain @ uri_ex_p2 @ X5 )
& ( iext @ uri_rdf_rest @ X4 @ uri_rdf_nil )
& ( iext @ uri_rdf_first @ X4 @ uri_ex_w )
& ( iext @ uri_rdf_rest @ X3 @ uri_rdf_nil )
& ( iext @ uri_rdf_first @ X3 @ uri_ex_w )
& ( iext @ uri_rdf_rest @ X2 @ uri_rdf_nil )
& ( iext @ uri_rdf_first @ X2 @ uri_ex_u )
& ( iext @ uri_rdfs_range @ uri_ex_p1 @ X1 )
& ( iext @ uri_rdfs_domain @ uri_ex_p1 @ X0 ) ) ).
thf(zip_derived_cl102,plain,
iext @ uri_rdfs_domain @ uri_ex_p1 @ sk__18,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(owl_rdfsext_domain,axiom,
! [P: $i,C: $i] :
( ( iext @ uri_rdfs_domain @ P @ C )
<=> ( ( ip @ P )
& ( ic @ C )
& ! [X: $i,Y: $i] :
( ( iext @ P @ X @ Y )
=> ( icext @ C @ X ) ) ) ) ).
thf(zip_derived_cl86,plain,
! [X0: $i,X1: $i] :
( ( ip @ X0 )
| ~ ( iext @ uri_rdfs_domain @ X0 @ X1 ) ),
inference(cnf,[status(esa)],[owl_rdfsext_domain]) ).
thf(zip_derived_cl1126,plain,
ip @ uri_ex_p1,
inference('sup-',[status(thm)],[zip_derived_cl102,zip_derived_cl86]) ).
thf(zip_derived_cl110,plain,
iext @ uri_rdfs_domain @ uri_ex_p2 @ sk__13,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(zip_derived_cl86_001,plain,
! [X0: $i,X1: $i] :
( ( ip @ X0 )
| ~ ( iext @ uri_rdfs_domain @ X0 @ X1 ) ),
inference(cnf,[status(esa)],[owl_rdfsext_domain]) ).
thf(zip_derived_cl1166,plain,
ip @ uri_ex_p2,
inference('sup-',[status(thm)],[zip_derived_cl110,zip_derived_cl86]) ).
thf(owl_rdfsext_subpropertyof,axiom,
! [P1: $i,P2: $i] :
( ( iext @ uri_rdfs_subPropertyOf @ P1 @ P2 )
<=> ( ( ip @ P1 )
& ( ip @ P2 )
& ! [X: $i,Y: $i] :
( ( iext @ P1 @ X @ Y )
=> ( iext @ P2 @ X @ Y ) ) ) ) ).
thf(zip_derived_cl99,plain,
! [X0: $i,X1: $i] :
( ( iext @ uri_rdfs_subPropertyOf @ X0 @ X1 )
| ( iext @ X0 @ ( sk__8 @ X1 @ X0 ) @ ( sk__9 @ X1 @ X0 ) )
| ~ ( ip @ X1 )
| ~ ( ip @ X0 ) ),
inference(cnf,[status(esa)],[owl_rdfsext_subpropertyof]) ).
thf(zip_derived_cl1473,plain,
! [X0: $i] :
( ~ ( ip @ X0 )
| ( iext @ X0 @ ( sk__8 @ uri_ex_p2 @ X0 ) @ ( sk__9 @ uri_ex_p2 @ X0 ) )
| ( iext @ uri_rdfs_subPropertyOf @ X0 @ uri_ex_p2 ) ),
inference('sup-',[status(thm)],[zip_derived_cl1166,zip_derived_cl99]) ).
thf(zip_derived_cl3574,plain,
( ( iext @ uri_rdfs_subPropertyOf @ uri_ex_p1 @ uri_ex_p2 )
| ( iext @ uri_ex_p1 @ ( sk__8 @ uri_ex_p2 @ uri_ex_p1 ) @ ( sk__9 @ uri_ex_p2 @ uri_ex_p1 ) ) ),
inference('sup-',[status(thm)],[zip_derived_cl1126,zip_derived_cl1473]) ).
thf(conclusion_rdfbased_sem_rdfsext_subprop_ext,conjecture,
iext @ uri_rdfs_subPropertyOf @ uri_ex_p1 @ uri_ex_p2 ).
thf(zf_stmt_0,negated_conjecture,
~ ( iext @ uri_rdfs_subPropertyOf @ uri_ex_p1 @ uri_ex_p2 ),
inference('cnf.neg',[status(esa)],[conclusion_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(zip_derived_cl122,plain,
~ ( iext @ uri_rdfs_subPropertyOf @ uri_ex_p1 @ uri_ex_p2 ),
inference(cnf,[status(esa)],[zf_stmt_0]) ).
thf(zip_derived_cl3579,plain,
iext @ uri_ex_p1 @ ( sk__8 @ uri_ex_p2 @ uri_ex_p1 ) @ ( sk__9 @ uri_ex_p2 @ uri_ex_p1 ),
inference(demod,[status(thm)],[zip_derived_cl3574,zip_derived_cl122]) ).
thf(zip_derived_cl102_002,plain,
iext @ uri_rdfs_domain @ uri_ex_p1 @ sk__18,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(rdfs_domain_main,axiom,
! [P: $i,C: $i,X: $i,Y: $i] :
( ( ( iext @ uri_rdfs_domain @ P @ C )
& ( iext @ P @ X @ Y ) )
=> ( icext @ C @ X ) ) ).
thf(zip_derived_cl24,plain,
! [X0: $i,X1: $i,X2: $i,X3: $i] :
( ( icext @ X0 @ X1 )
| ~ ( iext @ uri_rdfs_domain @ X2 @ X0 )
| ~ ( iext @ X2 @ X1 @ X3 ) ),
inference(cnf,[status(esa)],[rdfs_domain_main]) ).
thf(zip_derived_cl1264,plain,
! [X0: $i,X1: $i] :
( ~ ( iext @ uri_ex_p1 @ X1 @ X0 )
| ( icext @ sk__18 @ X1 ) ),
inference('sup-',[status(thm)],[zip_derived_cl102,zip_derived_cl24]) ).
thf(zip_derived_cl3583,plain,
icext @ sk__18 @ ( sk__8 @ uri_ex_p2 @ uri_ex_p1 ),
inference('sup-',[status(thm)],[zip_derived_cl3579,zip_derived_cl1264]) ).
thf(zip_derived_cl101,plain,
iext @ uri_owl_oneOf @ sk__18 @ sk__16,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(zip_derived_cl106,plain,
iext @ uri_rdf_first @ sk__16 @ uri_ex_w,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(owl_enum_class_001,axiom,
! [Z: $i,S1: $i,A1: $i] :
( ( ( iext @ uri_rdf_first @ S1 @ A1 )
& ( iext @ uri_rdf_rest @ S1 @ uri_rdf_nil ) )
=> ( ( iext @ uri_owl_oneOf @ Z @ S1 )
<=> ( ( ic @ Z )
& ! [X: $i] :
( ( icext @ Z @ X )
<=> ( X = A1 ) ) ) ) ) ).
thf(zip_derived_cl63,plain,
! [X0: $i,X1: $i,X2: $i,X3: $i] :
( ~ ( iext @ uri_rdf_rest @ X0 @ uri_rdf_nil )
| ~ ( iext @ uri_rdf_first @ X0 @ X1 )
| ~ ( icext @ X2 @ X3 )
| ( X3 = X1 )
| ~ ( iext @ uri_owl_oneOf @ X2 @ X0 ) ),
inference(cnf,[status(esa)],[owl_enum_class_001]) ).
thf(zip_derived_cl1478,plain,
! [X0: $i,X1: $i] :
( ~ ( iext @ uri_owl_oneOf @ X0 @ sk__16 )
| ( X1 = uri_ex_w )
| ~ ( icext @ X0 @ X1 )
| ~ ( iext @ uri_rdf_rest @ sk__16 @ uri_rdf_nil ) ),
inference('sup-',[status(thm)],[zip_derived_cl106,zip_derived_cl63]) ).
thf(zip_derived_cl107,plain,
iext @ uri_rdf_rest @ sk__16 @ uri_rdf_nil,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(zip_derived_cl1483,plain,
! [X0: $i,X1: $i] :
( ~ ( iext @ uri_owl_oneOf @ X0 @ sk__16 )
| ( X1 = uri_ex_w )
| ~ ( icext @ X0 @ X1 ) ),
inference(demod,[status(thm)],[zip_derived_cl1478,zip_derived_cl107]) ).
thf(zip_derived_cl2051,plain,
! [X0: $i] :
( ~ ( icext @ sk__18 @ X0 )
| ( X0 = uri_ex_w ) ),
inference('sup-',[status(thm)],[zip_derived_cl101,zip_derived_cl1483]) ).
thf(zip_derived_cl3590,plain,
( ( sk__8 @ uri_ex_p2 @ uri_ex_p1 )
= uri_ex_w ),
inference('sup-',[status(thm)],[zip_derived_cl3583,zip_derived_cl2051]) ).
thf(zip_derived_cl100,plain,
! [X0: $i,X1: $i] :
( ( iext @ uri_rdfs_subPropertyOf @ X0 @ X1 )
| ~ ( iext @ X1 @ ( sk__8 @ X1 @ X0 ) @ ( sk__9 @ X1 @ X0 ) )
| ~ ( ip @ X1 )
| ~ ( ip @ X0 ) ),
inference(cnf,[status(esa)],[owl_rdfsext_subpropertyof]) ).
thf(simple_iext_property,axiom,
! [S: $i,P: $i,O: $i] :
( ( iext @ P @ S @ O )
=> ( ip @ P ) ) ).
thf(zip_derived_cl0,plain,
! [X0: $i,X1: $i,X2: $i] :
( ( ip @ X0 )
| ~ ( iext @ X0 @ X1 @ X2 ) ),
inference(cnf,[status(esa)],[simple_iext_property]) ).
thf(zip_derived_cl1484,plain,
! [X0: $i,X1: $i] :
( ~ ( ip @ X0 )
| ~ ( iext @ X1 @ ( sk__8 @ X1 @ X0 ) @ ( sk__9 @ X1 @ X0 ) )
| ( iext @ uri_rdfs_subPropertyOf @ X0 @ X1 ) ),
inference(clc,[status(thm)],[zip_derived_cl100,zip_derived_cl0]) ).
thf(zip_derived_cl3595,plain,
( ~ ( iext @ uri_ex_p2 @ uri_ex_w @ ( sk__9 @ uri_ex_p2 @ uri_ex_p1 ) )
| ( iext @ uri_rdfs_subPropertyOf @ uri_ex_p1 @ uri_ex_p2 )
| ~ ( ip @ uri_ex_p1 ) ),
inference('sup-',[status(thm)],[zip_derived_cl3590,zip_derived_cl1484]) ).
thf(zip_derived_cl122_003,plain,
~ ( iext @ uri_rdfs_subPropertyOf @ uri_ex_p1 @ uri_ex_p2 ),
inference(cnf,[status(esa)],[zf_stmt_0]) ).
thf(zip_derived_cl1126_004,plain,
ip @ uri_ex_p1,
inference('sup-',[status(thm)],[zip_derived_cl102,zip_derived_cl86]) ).
thf(zip_derived_cl3596,plain,
~ ( iext @ uri_ex_p2 @ uri_ex_w @ ( sk__9 @ uri_ex_p2 @ uri_ex_p1 ) ),
inference(demod,[status(thm)],[zip_derived_cl3595,zip_derived_cl122,zip_derived_cl1126]) ).
thf(zip_derived_cl3579_005,plain,
iext @ uri_ex_p1 @ ( sk__8 @ uri_ex_p2 @ uri_ex_p1 ) @ ( sk__9 @ uri_ex_p2 @ uri_ex_p1 ),
inference(demod,[status(thm)],[zip_derived_cl3574,zip_derived_cl122]) ).
thf(zip_derived_cl3590_006,plain,
( ( sk__8 @ uri_ex_p2 @ uri_ex_p1 )
= uri_ex_w ),
inference('sup-',[status(thm)],[zip_derived_cl3583,zip_derived_cl2051]) ).
thf(zip_derived_cl3593,plain,
iext @ uri_ex_p1 @ uri_ex_w @ ( sk__9 @ uri_ex_p2 @ uri_ex_p1 ),
inference(demod,[status(thm)],[zip_derived_cl3579,zip_derived_cl3590]) ).
thf(zip_derived_cl103,plain,
iext @ uri_rdfs_range @ uri_ex_p1 @ sk__14,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(rdfs_range_main,axiom,
! [P: $i,C: $i,X: $i,Y: $i] :
( ( ( iext @ uri_rdfs_range @ P @ C )
& ( iext @ P @ X @ Y ) )
=> ( icext @ C @ Y ) ) ).
thf(zip_derived_cl28,plain,
! [X0: $i,X1: $i,X2: $i,X3: $i] :
( ~ ( iext @ uri_rdfs_range @ X0 @ X1 )
| ~ ( iext @ X0 @ X2 @ X3 )
| ( icext @ X1 @ X3 ) ),
inference(cnf,[status(esa)],[rdfs_range_main]) ).
thf(zip_derived_cl1299,plain,
! [X0: $i,X1: $i] :
( ( icext @ sk__14 @ X0 )
| ~ ( iext @ uri_ex_p1 @ X1 @ X0 ) ),
inference('sup-',[status(thm)],[zip_derived_cl103,zip_derived_cl28]) ).
thf(zip_derived_cl3648,plain,
icext @ sk__14 @ ( sk__9 @ uri_ex_p2 @ uri_ex_p1 ),
inference('sup-',[status(thm)],[zip_derived_cl3593,zip_derived_cl1299]) ).
thf(zip_derived_cl112,plain,
iext @ uri_owl_oneOf @ sk__14 @ sk__12,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(zip_derived_cl104,plain,
iext @ uri_rdf_first @ sk__12 @ uri_ex_u,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(zip_derived_cl63_007,plain,
! [X0: $i,X1: $i,X2: $i,X3: $i] :
( ~ ( iext @ uri_rdf_rest @ X0 @ uri_rdf_nil )
| ~ ( iext @ uri_rdf_first @ X0 @ X1 )
| ~ ( icext @ X2 @ X3 )
| ( X3 = X1 )
| ~ ( iext @ uri_owl_oneOf @ X2 @ X0 ) ),
inference(cnf,[status(esa)],[owl_enum_class_001]) ).
thf(zip_derived_cl1477,plain,
! [X0: $i,X1: $i] :
( ~ ( iext @ uri_owl_oneOf @ X0 @ sk__12 )
| ( X1 = uri_ex_u )
| ~ ( icext @ X0 @ X1 )
| ~ ( iext @ uri_rdf_rest @ sk__12 @ uri_rdf_nil ) ),
inference('sup-',[status(thm)],[zip_derived_cl104,zip_derived_cl63]) ).
thf(zip_derived_cl105,plain,
iext @ uri_rdf_rest @ sk__12 @ uri_rdf_nil,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(zip_derived_cl1482,plain,
! [X0: $i,X1: $i] :
( ~ ( iext @ uri_owl_oneOf @ X0 @ sk__12 )
| ( X1 = uri_ex_u )
| ~ ( icext @ X0 @ X1 ) ),
inference(demod,[status(thm)],[zip_derived_cl1477,zip_derived_cl105]) ).
thf(zip_derived_cl2035,plain,
! [X0: $i] :
( ~ ( icext @ sk__14 @ X0 )
| ( X0 = uri_ex_u ) ),
inference('sup-',[status(thm)],[zip_derived_cl112,zip_derived_cl1482]) ).
thf(zip_derived_cl3654,plain,
( ( sk__9 @ uri_ex_p2 @ uri_ex_p1 )
= uri_ex_u ),
inference('sup-',[status(thm)],[zip_derived_cl3648,zip_derived_cl2035]) ).
thf(zip_derived_cl120,plain,
iext @ uri_ex_p2 @ uri_ex_w @ uri_ex_u,
inference(cnf,[status(esa)],[premise_rdfbased_sem_rdfsext_subprop_ext]) ).
thf(zip_derived_cl3658,plain,
$false,
inference(demod,[status(thm)],[zip_derived_cl3596,zip_derived_cl3654,zip_derived_cl120]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.06/0.12 % Problem : SWB080+1 : TPTP v8.1.2. Released v5.2.0.
% 0.06/0.13 % Command : python3 /export/starexec/sandbox/solver/bin/portfolio.lams.parallel.py %s %d /export/starexec/sandbox/tmp/tmp.BNvTsY2NYt true
% 0.13/0.34 % Computer : n017.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 : Sun Aug 27 06:35:41 EDT 2023
% 0.13/0.34 % CPUTime :
% 0.13/0.34 % Running portfolio for 300 s
% 0.13/0.34 % File : /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.13/0.34 % Number of cores: 8
% 0.13/0.35 % Python version: Python 3.6.8
% 0.20/0.35 % Running in FO mode
% 0.47/0.63 % Total configuration time : 435
% 0.47/0.63 % Estimated wc time : 1092
% 0.47/0.63 % Estimated cpu time (7 cpus) : 156.0
% 0.47/0.70 % /export/starexec/sandbox/solver/bin/fo/fo6_bce.sh running for 75s
% 0.47/0.71 % /export/starexec/sandbox/solver/bin/fo/fo3_bce.sh running for 75s
% 0.47/0.72 % /export/starexec/sandbox/solver/bin/fo/fo1_av.sh running for 75s
% 0.56/0.74 % /export/starexec/sandbox/solver/bin/fo/fo7.sh running for 63s
% 0.56/0.74 % /export/starexec/sandbox/solver/bin/fo/fo13.sh running for 50s
% 0.56/0.75 % /export/starexec/sandbox/solver/bin/fo/fo5.sh running for 50s
% 0.56/0.75 % /export/starexec/sandbox/solver/bin/fo/fo4.sh running for 50s
% 0.57/1.09 % Solved by fo/fo3_bce.sh.
% 0.57/1.09 % BCE start: 123
% 0.57/1.09 % BCE eliminated: 12
% 0.57/1.09 % PE start: 111
% 0.57/1.09 logic: eq
% 0.57/1.09 % PE eliminated: 0
% 0.57/1.09 % done 1057 iterations in 0.361s
% 0.57/1.09 % SZS status Theorem for '/export/starexec/sandbox/benchmark/theBenchmark.p'
% 0.57/1.09 % SZS output start Refutation
% See solution above
% 0.57/1.09
% 0.57/1.09
% 0.57/1.09 % Terminating...
% 1.78/1.15 % Runner terminated.
% 1.81/1.16 % Zipperpin 1.5 exiting
%------------------------------------------------------------------------------