↑ Up

Vampire-SAT---5.0.1.SAT-Sat.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : Vampire-SAT---5.0.1
% Problem  : SYN464-1 : TPTP v9.3.1. Released v2.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : run_vampire /export/starexec/sandbox/benchmark/theBenchmark.p 300 SAT

% Computer : n011.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8046.5625MB
% OS       : Linux 6.8.0-71-generic
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Tue Sep 29 02:09:47 PM UTC 2026

% Result   : Satisfiable 0.18s 0.27s
% Output   : Saturation 0.18s
% Verified : 
% SZS Type : ERROR: Analysing output (MakeTreeStats fails)

% Comments : 
%------------------------------------------------------------------------------
cnf(u343,negated_conjecture,
    ( ~ c1_1(X2)
    | c2_1(X2)
    | ~ c0_1(X2) ) ).

cnf(u346,negated_conjecture,
    ( ~ c3_1(X1)
    | ~ c1_1(X1)
    | ~ c2_1(X1) ) ).

cnf(u349,negated_conjecture,
    ndr1_0 ).

cnf(u357,negated_conjecture,
    ( ~ c1_1(X2)
    | ~ c3_1(X2)
    | ~ c0_1(X2) ) ).

cnf(u360,negated_conjecture,
    ( ~ c2_1(X1)
    | c3_1(X1)
    | c0_1(X1) ) ).

cnf(u363,negated_conjecture,
    ( ~ c2_1(X0)
    | ~ c0_1(X0)
    | ~ c1_1(X0) ) ).

cnf(u367,negated_conjecture,
    ( ~ c3_1(X1)
    | c1_1(X1)
    | ~ c0_1(X1) ) ).

cnf(u370,negated_conjecture,
    ( ~ c1_1(X0)
    | c3_1(X0)
    | ~ c2_1(X0) ) ).

cnf(u377,negated_conjecture,
    ( ~ c3_1(X1)
    | c2_1(X1)
    | ~ c0_1(X1) ) ).

cnf(u384,negated_conjecture,
    ( ~ c0_1(X2)
    | c1_1(X2)
    | c2_1(X2) ) ).

cnf(u391,negated_conjecture,
    ~ hskp5 ).

cnf(u395,negated_conjecture,
    ( ~ c2_1(X1)
    | ~ c3_1(X1)
    | ~ c0_1(X1) ) ).

cnf(u409,negated_conjecture,
    ( ~ c1_1(X0)
    | c0_1(X0)
    | c2_1(X0) ) ).

cnf(u413,negated_conjecture,
    ~ hskp54 ).

cnf(u421,negated_conjecture,
    ~ hskp13 ).

cnf(u426,negated_conjecture,
    ~ hskp41 ).

cnf(u430,negated_conjecture,
    ( ~ c1_1(X0)
    | c0_1(X0)
    | ~ c3_1(X0) ) ).

cnf(u437,negated_conjecture,
    ( ~ c1_1(X0)
    | c3_1(X0)
    | c0_1(X0) ) ).

cnf(u441,negated_conjecture,
    ~ hskp66 ).

cnf(u446,negated_conjecture,
    ~ hskp61 ).

cnf(u450,negated_conjecture,
    ( ~ c1_1(X1)
    | c3_1(X1)
    | ~ c0_1(X1) ) ).

cnf(u457,negated_conjecture,
    ~ hskp36 ).

cnf(u462,negated_conjecture,
    ~ hskp15 ).

cnf(u467,negated_conjecture,
    ~ hskp47 ).

cnf(u471,negated_conjecture,
    ( ~ c0_1(X1)
    | c2_1(X1)
    | c3_1(X1) ) ).

cnf(u476,negated_conjecture,
    hskp39 ).

cnf(u480,negated_conjecture,
    ~ hskp1 ).

cnf(u488,negated_conjecture,
    ~ hskp46 ).

cnf(u493,negated_conjecture,
    ~ hskp22 ).

cnf(u499,negated_conjecture,
    hskp21 ).

cnf(u503,negated_conjecture,
    ~ hskp20 ).

cnf(u507,negated_conjecture,
    ( ~ c3_1(X1)
    | c1_1(X1)
    | c2_1(X1) ) ).

cnf(u515,negated_conjecture,
    ~ hskp6 ).

cnf(u521,negated_conjecture,
    hskp52 ).

cnf(u526,negated_conjecture,
    ~ hskp67 ).

cnf(u530,negated_conjecture,
    ( ~ c1_1(X0)
    | c2_1(X0)
    | c3_1(X0) ) ).

cnf(u536,negated_conjecture,
    hskp16 ).

cnf(u543,negated_conjecture,
    ~ hskp32 ).

cnf(u547,negated_conjecture,
    ~ hskp31 ).

cnf(u552,negated_conjecture,
    ~ hskp25 ).

cnf(u557,negated_conjecture,
    ~ hskp38 ).

cnf(u562,negated_conjecture,
    hskp59 ).

cnf(u566,negated_conjecture,
    ~ hskp57 ).

cnf(u571,negated_conjecture,
    hskp12 ).

cnf(u575,negated_conjecture,
    ~ hskp3 ).

cnf(u579,negated_conjecture,
    ~ hskp42 ).

cnf(u584,negated_conjecture,
    ~ hskp2 ).

cnf(u588,negated_conjecture,
    ~ hskp40 ).

cnf(u593,negated_conjecture,
    ~ hskp35 ).

cnf(u598,negated_conjecture,
    hskp34 ).

cnf(u603,negated_conjecture,
    hskp7 ).

cnf(u606,negated_conjecture,
    ~ hskp58 ).

cnf(u614,negated_conjecture,
    ~ hskp55 ).

cnf(u619,negated_conjecture,
    hskp8 ).

cnf(u623,negated_conjecture,
    ~ hskp11 ).

cnf(u628,negated_conjecture,
    ~ hskp33 ).

cnf(u633,negated_conjecture,
    ~ hskp69 ).

cnf(u638,negated_conjecture,
    hskp27 ).

cnf(u642,negated_conjecture,
    ~ hskp30 ).

cnf(u646,negated_conjecture,
    ~ hskp68 ).

cnf(u651,negated_conjecture,
    ~ hskp63 ).

cnf(u656,negated_conjecture,
    ~ hskp62 ).

cnf(u660,negated_conjecture,
    ~ hskp26 ).

cnf(u665,negated_conjecture,
    ~ hskp60 ).

cnf(u669,negated_conjecture,
    ~ hskp24 ).

cnf(u675,negated_conjecture,
    hskp19 ).

cnf(u678,negated_conjecture,
    ~ hskp18 ).

cnf(u683,negated_conjecture,
    ~ hskp51 ).

cnf(u688,negated_conjecture,
    ~ hskp4 ).

cnf(u692,negated_conjecture,
    ~ hskp43 ).

cnf(u698,negated_conjecture,
    hskp37 ).

cnf(u703,negated_conjecture,
    hskp0 ).

cnf(u708,negated_conjecture,
    hskp23 ).

cnf(u712,negated_conjecture,
    ~ hskp45 ).

cnf(u717,negated_conjecture,
    hskp9 ).

cnf(u722,negated_conjecture,
    ~ c0_1(a2428) ).

cnf(u727,negated_conjecture,
    ~ c1_1(a2428) ).

cnf(u742,negated_conjecture,
    ~ c1_1(a2435) ).

cnf(u747,negated_conjecture,
    ~ c0_1(a2438) ).

cnf(u752,negated_conjecture,
    ~ c3_1(a2438) ).

cnf(u756,negated_conjecture,
    c2_1(a2440) ).

cnf(u762,negated_conjecture,
    ~ c3_1(a2440) ).

cnf(u767,negated_conjecture,
    ~ c3_1(a2441) ).

cnf(u771,negated_conjecture,
    c2_1(a2441) ).

cnf(u787,negated_conjecture,
    ~ c3_1(a2443) ).

cnf(u792,negated_conjecture,
    ~ c0_1(a2443) ).

cnf(u797,negated_conjecture,
    ~ c2_1(a2443) ).

cnf(u802,negated_conjecture,
    ~ c1_1(a2445) ).

cnf(u807,negated_conjecture,
    ~ c0_1(a2445) ).

cnf(u812,negated_conjecture,
    ~ c1_1(a2446) ).

cnf(u817,negated_conjecture,
    ~ c3_1(a2446) ).

cnf(u822,negated_conjecture,
    ~ c0_1(a2446) ).

cnf(u827,negated_conjecture,
    ~ hskp10 ).

cnf(u851,negated_conjecture,
    ~ c3_1(a2454) ).

cnf(u856,negated_conjecture,
    ~ c1_1(a2454) ).

cnf(u861,negated_conjecture,
    ~ c0_1(a2454) ).

cnf(u866,negated_conjecture,
    ~ c0_1(a2458) ).

cnf(u870,negated_conjecture,
    hskp14 ).

cnf(u875,negated_conjecture,
    ~ c0_1(a2462) ).

cnf(u890,negated_conjecture,
    ~ c3_1(a2466) ).

cnf(u895,negated_conjecture,
    ~ c2_1(a2466) ).

cnf(u900,negated_conjecture,
    ~ c0_1(a2466) ).

cnf(u904,negated_conjecture,
    hskp17 ).

cnf(u909,negated_conjecture,
    ~ c2_1(a2469) ).

cnf(u914,negated_conjecture,
    ~ c0_1(a2469) ).

cnf(u919,negated_conjecture,
    ~ c1_1(a2469) ).

cnf(u924,negated_conjecture,
    ~ c0_1(a2472) ).

cnf(u929,negated_conjecture,
    ~ c1_1(a2473) ).

cnf(u934,negated_conjecture,
    ~ c3_1(a2473) ).

cnf(u954,negated_conjecture,
    ~ c1_1(a2482) ).

cnf(u959,negated_conjecture,
    ~ c2_1(a2482) ).

cnf(u964,negated_conjecture,
    ~ c0_1(a2482) ).

cnf(u979,negated_conjecture,
    ~ c1_1(a2485) ).

cnf(u984,negated_conjecture,
    ~ c0_1(a2485) ).

cnf(u998,negated_conjecture,
    c2_1(a2489) ).

cnf(u1004,negated_conjecture,
    ~ c3_1(a2489) ).

cnf(u1009,negated_conjecture,
    ~ c3_1(a2492) ).

cnf(u1014,negated_conjecture,
    ~ c0_1(a2492) ).

cnf(u1019,negated_conjecture,
    ~ c0_1(a2495) ).

cnf(u1024,negated_conjecture,
    ~ c2_1(a2495) ).

cnf(u1029,negated_conjecture,
    ~ c3_1(a2495) ).

cnf(u1034,negated_conjecture,
    ~ hskp28 ).

cnf(u1037,negated_conjecture,
    c2_1(a2497) ).

cnf(u1043,negated_conjecture,
    ~ c1_1(a2497) ).

cnf(u1047,negated_conjecture,
    hskp29 ).

cnf(u1052,negated_conjecture,
    ~ c1_1(a2501) ).

cnf(u1072,negated_conjecture,
    ~ c2_1(a2510) ).

cnf(u1077,negated_conjecture,
    ~ c3_1(a2510) ).

cnf(u1082,negated_conjecture,
    ~ c0_1(a2511) ).

cnf(u1087,negated_conjecture,
    ~ c3_1(a2511) ).

cnf(u1091,negated_conjecture,
    c2_1(a2513) ).

cnf(u1097,negated_conjecture,
    ~ c2_1(a2514) ).

cnf(u1102,negated_conjecture,
    ~ c3_1(a2514) ).

cnf(u1107,negated_conjecture,
    ~ c1_1(a2514) ).

cnf(u1132,negated_conjecture,
    ~ c1_1(a2431) ).

cnf(u1137,negated_conjecture,
    ~ c0_1(a2431) ).

cnf(u1142,negated_conjecture,
    ~ c1_1(a2432) ).

cnf(u1147,negated_conjecture,
    ~ c1_1(a2433) ).

cnf(u1157,negated_conjecture,
    ~ hskp44 ).

cnf(u1186,negated_conjecture,
    ~ hskp49 ).

cnf(u1189,negated_conjecture,
    c2_1(a2456) ).

cnf(u1195,negated_conjecture,
    ~ c1_1(a2456) ).

cnf(u1199,negated_conjecture,
    hskp50 ).

cnf(u1204,negated_conjecture,
    ~ c1_1(a2457) ).

cnf(u1209,negated_conjecture,
    ~ c0_1(a2459) ).

cnf(u1214,negated_conjecture,
    ~ c3_1(a2460) ).

cnf(u1219,negated_conjecture,
    ~ hskp53 ).

cnf(u1223,negated_conjecture,
    ~ c0_1(a2461) ).

cnf(u1228,negated_conjecture,
    ~ c2_1(a2463) ).

cnf(u1233,negated_conjecture,
    ~ c3_1(a2463) ).

cnf(u1238,negated_conjecture,
    ~ c1_1(a2468) ).

cnf(u1243,negated_conjecture,
    ~ hskp56 ).

cnf(u1262,negated_conjecture,
    ~ c1_1(a2479) ).

cnf(u1292,negated_conjecture,
    ~ hskp64 ).

cnf(u1301,negated_conjecture,
    ~ hskp65 ).

cnf(u1340,negated_conjecture,
    c2_1(a2428) ).

cnf(u1349,negated_conjecture,
    ~ c3_1(a2435) ).

cnf(u1355,negated_conjecture,
    c2_1(a2435) ).

cnf(u1359,negated_conjecture,
    ~ c1_1(a2438) ).

cnf(u1365,negated_conjecture,
    c0_1(a2440) ).

cnf(u1370,negated_conjecture,
    c0_1(a2441) ).

cnf(u1380,negated_conjecture,
    c3_1(a2445) ).

cnf(u1394,negated_conjecture,
    ~ c1_1(a2458) ).

cnf(u1400,negated_conjecture,
    c3_1(a2458) ).

cnf(u1405,negated_conjecture,
    c3_1(a2462) ).

cnf(u1410,negated_conjecture,
    c2_1(a2462) ).

cnf(u1419,negated_conjecture,
    ~ c2_1(a2472) ).

cnf(u1424,negated_conjecture,
    ~ c3_1(a2472) ).

cnf(u1430,negated_conjecture,
    c2_1(a2473) ).

cnf(u1440,negated_conjecture,
    c2_1(a2485) ).

cnf(u1450,negated_conjecture,
    c0_1(a2489) ).

cnf(u1454,negated_conjecture,
    ~ c2_1(a2492) ).

cnf(u1460,negated_conjecture,
    c3_1(a2497) ).

cnf(u1465,negated_conjecture,
    c2_1(a2501) ).

cnf(u1470,negated_conjecture,
    c0_1(a2501) ).

cnf(u1474,negated_conjecture,
    ~ c1_1(a2510) ).

cnf(u1479,negated_conjecture,
    ~ c1_1(a2511) ).

cnf(u1485,negated_conjecture,
    c0_1(a2513) ).

cnf(u1489,negated_conjecture,
    ~ c3_1(a2513) ).

cnf(u1505,negated_conjecture,
    c2_1(a2431) ).

cnf(u1510,negated_conjecture,
    c2_1(a2432) ).

cnf(u1514,negated_conjecture,
    ~ c3_1(a2432) ).

cnf(u1520,negated_conjecture,
    c0_1(a2433) ).

cnf(u1525,negated_conjecture,
    c2_1(a2433) ).

cnf(u1544,negated_conjecture,
    ~ c1_1(a2436) ).

cnf(u1550,negated_conjecture,
    c0_1(a2436) ).

cnf(u1555,negated_conjecture,
    c2_1(a2436) ).

cnf(u1569,negated_conjecture,
    ~ c1_1(a2439) ).

cnf(u1575,negated_conjecture,
    c3_1(a2439) ).

cnf(u1580,negated_conjecture,
    c2_1(a2439) ).

cnf(u1619,negated_conjecture,
    ~ c0_1(a2455) ).

cnf(u1624,negated_conjecture,
    ~ hskp48 ).

cnf(u1629,negated_conjecture,
    c2_1(a2455) ).

cnf(u1634,negated_conjecture,
    c3_1(a2455) ).

cnf(u1639,negated_conjecture,
    c3_1(a2456) ).

cnf(u1644,negated_conjecture,
    c2_1(a2457) ).

cnf(u1649,negated_conjecture,
    c3_1(a2457) ).

cnf(u1653,negated_conjecture,
    ~ c1_1(a2459) ).

cnf(u1659,negated_conjecture,
    c3_1(a2459) ).

cnf(u1664,negated_conjecture,
    c2_1(a2460) ).

cnf(u1669,negated_conjecture,
    c0_1(a2460) ).

cnf(u1674,negated_conjecture,
    c3_1(a2461) ).

cnf(u1678,negated_conjecture,
    ~ c1_1(a2461) ).

cnf(u1683,negated_conjecture,
    ~ c1_1(a2463) ).

cnf(u1688,negated_conjecture,
    ~ c3_1(a2468) ).

cnf(u1694,negated_conjecture,
    c0_1(a2468) ).

cnf(u1729,negated_conjecture,
    c2_1(a2479) ).

cnf(u1734,negated_conjecture,
    c0_1(a2479) ).

cnf(u1749,negated_conjecture,
    c2_1(a2493) ).

cnf(u1753,negated_conjecture,
    ~ c0_1(a2493) ).

cnf(u1759,negated_conjecture,
    c3_1(a2493) ).

cnf(u1793,negated_conjecture,
    ~ c3_1(a2503) ).

cnf(u1799,negated_conjecture,
    c2_1(a2503) ).

cnf(u1804,negated_conjecture,
    c0_1(a2503) ).

cnf(u2254,negated_conjecture,
    ~ c0_1(a2457) ).

cnf(u1978,negated_conjecture,
    ~ c1_1(X0) ).

cnf(u1970,negated_conjecture,
    ~ c0_1(a2497) ).

cnf(u2123,negated_conjecture,
    ~ c0_1(a2439) ).

cnf(u2121,negated_conjecture,
    ~ c0_1(a2456) ).

cnf(u1979,negated_conjecture,
    ( ~ c0_1(X1)
    | c2_1(X1) ) ).

cnf(u2215,negated_conjecture,
    c0_1(a2432) ).

cnf(u2212,negated_conjecture,
    c3_1(a2485) ).

cnf(u2211,negated_conjecture,
    c0_1(a2473) ).

cnf(u2234,negated_conjecture,
    c2_1(a2458) ).

cnf(u2209,negated_conjecture,
    c3_1(a2428) ).

cnf(u2227,negated_conjecture,
    c2_1(a2459) ).

cnf(u2235,negated_conjecture,
    c2_1(a2445) ).

cnf(u2035,negated_conjecture,
    ~ c1_1(a2455) ).

cnf(u1903,negated_conjecture,
    ( ~ c1_1(X1)
    | ~ c0_1(X1) ) ).

cnf(u2214,negated_conjecture,
    c3_1(a2431) ).

cnf(u1901,negated_conjecture,
    ( ~ c3_1(X0)
    | ~ c1_1(X0) ) ).

cnf(u2210,negated_conjecture,
    c0_1(a2435) ).

cnf(u2226,negated_conjecture,
    c2_1(a2461) ).

cnf(u2141,negated_conjecture,
    c2_1(a2468) ).

cnf(u2224,negated_conjecture,
    ( ~ c3_1(X1)
    | c2_1(X1) ) ).

cnf(u2059,negated_conjecture,
    ( ~ c3_1(X1)
    | ~ c0_1(X1) ) ).


%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.02  % Problem  : SYN464-1 : TPTP v9.3.1. Released v2.1.0.
% 0.00/0.05  % Command  : run_vampire /export/starexec/sandbox/benchmark/theBenchmark.p 300 SAT
% 0.07/0.18  % Computer : n011.cluster.edu
% 0.07/0.18  % Model    : x86_64 x86_64
% 0.07/0.18  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.07/0.18  % Memory   : 8046.5625MB
% 0.07/0.18  % OS       : Linux 6.8.0-71-generic
% 0.07/0.18  % CPULimit : 300
% 0.07/0.18  % WCLimit  : 300
% 0.07/0.18  % DateTime : Mon Sep 28 16:08:16 UTC 2026
% 0.07/0.18  % CPUTime  : 
% 0.07/0.18  Running run_vampire /export/starexec/sandbox/benchmark/theBenchmark.p 300 SAT
% 0.07/0.21  Running first-order model finding
% 0.07/0.22  Running: /export/starexec/sandbox/solver/bin/vampire-ho --input_syntax tptp --output_axiom_names on --mode casc --intent sat -m 16384 --cores 7 -t 300 /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.18/0.27  % (3500017)Will run a generic schedule for satisfiability detection.
% 0.18/0.27  % (3500026)ott+31_1_sil=16000:lcm=predicate:bce=on:newcnf=on:random_seed=1117235073:i=116_2999 on theBenchmark for (2999ds/116Mi)
% 0.18/0.27  % (3500023)% WARNING: option uhcvi not known.
% 0.18/0.27  % (3500023)dis+11_61:31_drc=ordering:lsd=5:bsr=unit_only:rp=on:newcnf=on:random_seed=3962083455:i=135531:add=off:rawr=on_2999 on theBenchmark for (2999ds/135531Mi)
% 0.18/0.27  % (3500024)dis+10_161_sil=256000:plsq=on:plsqr=61199697,1048576:gs=on:alpa=true:sac=on:slsq=on:cn=on:random_seed=1409127227:i=88024:add=on:rawr=on_2999 on theBenchmark for (2999ds/88024Mi)
% 0.18/0.27  % (3500022)fmb+10_1_sas=cadical:bce=on:rp=on:random_seed=3073706726_2999 on theBenchmark for (2999ds/0Mi)
% 0.18/0.27  % (3500025)dis+10_1_sil=32000:sp=arity:random_seed=332289375:i=103:fgj=on_2999 on theBenchmark for (2999ds/103Mi)
% 0.18/0.27  % (3500028)ott-3_16_to=lpo:sil=16000:sp=arity:fd=off:rp=on:random_seed=782324797:i=159:bs=unit_only:nicw=on:fsr=off:amm=off_2999 on theBenchmark for (2999ds/159Mi)
% 0.18/0.27  % (3500027)ott+1_1_to=lpo:sil=16000:sp=reverse_arity:erd=off:random_seed=1180474974:i=131_2999 on theBenchmark for (2999ds/131Mi)
% 0.18/0.27  % Detected minimum model sizes of [1]
% 0.18/0.27  % Detected maximum model sizes of [70]
% 0.18/0.27  % TRYING [1]
% 0.18/0.27  % TRYING [2]
% 0.18/0.27  % TRYING [3]
% 0.18/0.27  % (3500027) found proof, printing to "/export/starexec/sandbox/tmp/vampire-proof-3500017-3500027"...
% 0.18/0.27  % Finite Model Found!
% 0.18/0.27  % SZS status Satisfiable for theBenchmark
% 0.18/0.27  % (3500027)...printing done.
% 0.18/0.27  % (3500022) found proof, printing to "/export/starexec/sandbox/tmp/vampire-proof-3500017-3500022"...
% 0.18/0.27  % SZS status Satisfiable for theBenchmark
% 0.18/0.27  % SZS output start Saturation.
% See solution above
% 0.18/0.28  % SZS output start Definitions and Model Updates.
% 0.18/0.28  % SZS output end Definitions and Model Updates.
% 0.18/0.28  % (3500027)------------------------------
% 0.18/0.28  % (3500027)Version: Vampire 5.0.1 (Release build, commit 5ef7c2677 on 2026-07-16 16:54:09 +0200)
% 0.18/0.28  % (3500027)Linked with Z3 4.14.0.0 3c47fd96cf5645d0c42b2c819d9e9a84380aa721 z3-4.8.4-9178-g3c47fd96c
% 0.18/0.28  % (3500027)CaDiCaL version: 2.1.3
% 0.18/0.28  % (3500027)Termination reason: Satisfiable
% 0.18/0.28  % (3500027)Time elapsed: 0.014 s
% 0.18/0.28  % (3500027)Peak memory usage: 12 MB
% 0.18/0.28  % (3500027)Instructions burned: 20 (million)
% 0.18/0.28  % (3500017)Success in time 0.051 s
% 0.18/0.28  % Vampire exiting
%------------------------------------------------------------------------------