SET007 Axioms: SET007+596.ax
%------------------------------------------------------------------------------
% File : SET007+596 : TPTP v9.0.0. Released v3.4.0.
% Domain : Set Theory
% Axioms : Structural Induction in the Positive Propositional Language
% Version : [Urb08] axioms.
% English :
% Refs : [Mat90] Matuszewski (1990), Formalized Mathematics
% : [Urb07] Urban (2007), MPTP 0.2: Design, Implementation, and In
% : [Urb08] Urban (2006), Email to G. Sutcliffe
% Source : [Urb08]
% Names : hilbert2 [Urb08]
% Status : Satisfiable
% Syntax : Number of formulae : 57 ( 2 unt; 0 def)
% Number of atoms : 307 ( 69 equ)
% Maximal formula atoms : 24 ( 5 avg)
% Number of connectives : 281 ( 31 ~; 1 |; 102 &)
% ( 9 <=>; 138 =>; 0 <=; 0 <~>)
% Maximal formula depth : 21 ( 7 avg)
% Maximal term depth : 4 ( 1 avg)
% Number of predicates : 33 ( 32 usr; 0 prp; 1-5 aty)
% Number of functors : 43 ( 43 usr; 13 con; 0-4 aty)
% Number of variables : 154 ( 143 !; 11 ?)
% SPC :
% Comments : The individual reference can be found in [Mat90] by looking for
% the name provided by [Urb08].
% : Translated by MPTP from the Mizar Mathematical Library 4.48.930.
% : These set theory axioms are used in encodings of problems in
% various domains, including ALG, CAT, GRP, LAT, SET, and TOP.
%------------------------------------------------------------------------------
fof(fc1_hilbert2,axiom,
( v1_xboole_0(k1_xboole_0)
& v1_relat_1(k1_xboole_0)
& v3_relat_1(k1_xboole_0)
& v1_funct_1(k1_xboole_0)
& v2_funct_1(k1_xboole_0)
& v1_finset_1(k1_xboole_0)
& v1_finseq_1(k1_xboole_0)
& v1_funcop_1(k1_xboole_0)
& v4_trees_3(k1_xboole_0) ) ).
fof(fc2_hilbert2,axiom,
! [A,B] :
( ( ~ v1_xboole_0(B)
& v1_relat_1(B)
& v1_funct_1(B)
& v1_finseq_1(B)
& v6_trees_3(B) )
=> ( v1_relat_1(k4_trees_4(A,B))
& v1_funct_1(k4_trees_4(A,B))
& v3_trees_2(k4_trees_4(A,B))
& ~ v1_trees_9(k4_trees_4(A,B)) ) ) ).
fof(fc3_hilbert2,axiom,
! [A,B] :
( ( v1_relat_1(B)
& v1_funct_1(B)
& v3_trees_2(B) )
=> ( v1_relat_1(k5_trees_4(A,B))
& v1_funct_1(k5_trees_4(A,B))
& v3_trees_2(k5_trees_4(A,B))
& ~ v1_trees_9(k5_trees_4(A,B)) ) ) ).
fof(fc4_hilbert2,axiom,
! [A,B,C] :
( ( v1_relat_1(B)
& v1_funct_1(B)
& v3_trees_2(B)
& v1_relat_1(C)
& v1_funct_1(C)
& v3_trees_2(C) )
=> ( v1_relat_1(k6_trees_4(A,B,C))
& v1_funct_1(k6_trees_4(A,B,C))
& v3_trees_2(k6_trees_4(A,B,C))
& ~ v1_trees_9(k6_trees_4(A,B,C)) ) ) ).
fof(t1_hilbert2,axiom,
! [A,B] :
( m1_pboole(B,A)
=> ( ! [C] :
( r2_hidden(C,A)
=> m1_pboole(k1_funct_1(B,C),C) )
=> ! [C] :
( ( v1_relat_1(C)
& v1_funct_1(C) )
=> ( C = k3_card_3(B)
=> k1_relat_1(C) = k3_tarski(A) ) ) ) ) ).
fof(t2_hilbert2,axiom,
! [A,B,C] :
( ( v1_relat_1(C)
& v1_funct_1(C)
& v1_finseq_1(C) )
=> ! [D] :
( ( v1_relat_1(D)
& v1_funct_1(D)
& v1_finseq_1(D) )
=> ( k7_finseq_1(k9_finseq_1(A),C) = k7_finseq_1(k9_finseq_1(B),D)
=> C = D ) ) ) ).
fof(t3_hilbert2,axiom,
! [A,B] :
( m2_finseq_1(k9_finseq_1(A),B)
=> r2_hidden(A,B) ) ).
fof(t4_hilbert2,axiom,
! [A,B] :
( m2_finseq_1(B,A)
=> ~ ( B != k1_xboole_0
& ! [C] :
( m2_finseq_1(C,A)
=> ! [D] :
( m1_subset_1(D,A)
=> B != k7_finseq_1(C,k9_finseq_1(D)) ) ) ) ) ).
fof(t5_hilbert2,axiom,
! [A,B] :
( ( ~ v1_xboole_0(B)
& v1_trees_1(B) )
=> ! [C] :
( ( ~ v1_xboole_0(C)
& v1_trees_1(C) )
=> ( r2_hidden(k9_finseq_1(A),k15_trees_3(B,C))
<=> ( A = np__0
| A = np__1 ) ) ) ) ).
fof(t6_hilbert2,axiom,
! [A,B] :
( ( v1_relat_1(B)
& v1_funct_1(B)
& v3_trees_2(B) )
=> ! [C] :
( ( v1_relat_1(C)
& v1_funct_1(C)
& v3_trees_2(C) )
=> k1_funct_1(k6_trees_4(A,B,C),k1_xboole_0) = A ) ) ).
fof(t7_hilbert2,axiom,
! [A,B] :
( ( v1_relat_1(B)
& v1_funct_1(B)
& v3_trees_2(B) )
=> ! [C] :
( ( v1_relat_1(C)
& v1_funct_1(C)
& v3_trees_2(C) )
=> ( k1_funct_1(k6_trees_4(A,B,C),k12_finseq_1(k5_numbers,np__0)) = k1_funct_1(B,k1_xboole_0)
& k1_funct_1(k6_trees_4(A,B,C),k12_finseq_1(k5_numbers,np__1)) = k1_funct_1(C,k1_xboole_0) ) ) ) ).
fof(t8_hilbert2,axiom,
! [A,B] :
( ( v1_relat_1(B)
& v1_funct_1(B)
& v3_trees_2(B) )
=> ! [C] :
( ( v1_relat_1(C)
& v1_funct_1(C)
& v3_trees_2(C) )
=> ( k5_trees_2(k6_trees_4(A,B,C),k12_finseq_1(k5_numbers,np__0)) = B
& k5_trees_2(k6_trees_4(A,B,C),k12_finseq_1(k5_numbers,np__1)) = C ) ) ) ).
fof(d1_hilbert2,axiom,
! [A] :
( m2_subset_1(A,k1_numbers,k5_numbers)
=> k1_hilbert2(A) = k12_finseq_1(k5_numbers,k1_nat_1(np__3,A)) ) ).
fof(d2_hilbert2,axiom,
! [A] :
( v1_hilbert1(A)
<=> r2_hidden(k2_hilbert1,A) ) ).
fof(d3_hilbert2,axiom,
! [A] :
( v4_hilbert1(A)
<=> ! [B] :
( m2_subset_1(B,k1_numbers,k5_numbers)
=> r2_hidden(k1_hilbert2(B),A) ) ) ).
fof(d4_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_zfmisc_1(k1_hilbert1))
=> ( v2_hilbert1(A)
<=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> ( ( r2_hidden(B,A)
& r2_hidden(C,A) )
=> r2_hidden(k3_hilbert1(B,C),A) ) ) ) ) ) ).
fof(d5_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_zfmisc_1(k1_hilbert1))
=> ( v3_hilbert1(A)
<=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> ( ( r2_hidden(B,A)
& r2_hidden(C,A) )
=> r2_hidden(k4_hilbert1(B,C),A) ) ) ) ) ) ).
fof(d6_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ( v1_hilbert2(A)
<=> ? [B] :
( m1_subset_1(B,k1_hilbert1)
& ? [C] :
( m1_subset_1(C,k1_hilbert1)
& A = k4_hilbert1(B,C) ) ) ) ) ).
fof(d7_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ( v2_hilbert2(A)
<=> ? [B] :
( m1_subset_1(B,k1_hilbert1)
& ? [C] :
( m1_subset_1(C,k1_hilbert1)
& A = k3_hilbert1(B,C) ) ) ) ) ).
fof(d8_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ( v3_hilbert2(A)
<=> ? [B] :
( m2_subset_1(B,k1_numbers,k5_numbers)
& A = k1_hilbert2(B) ) ) ) ).
fof(t9_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ~ ( ~ v1_hilbert2(A)
& ~ v2_hilbert2(A)
& ~ v3_hilbert2(A)
& A != k2_hilbert1 ) ) ).
fof(t10_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> r1_xreal_0(np__1,k3_finseq_1(A)) ) ).
fof(t11_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ( k1_funct_1(A,np__1) = np__1
=> v2_hilbert2(A) ) ) ).
fof(t12_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ( k1_funct_1(A,np__1) = np__2
=> v1_hilbert2(A) ) ) ).
fof(t13_hilbert2,axiom,
! [A] :
( m2_subset_1(A,k1_numbers,k5_numbers)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ( k1_funct_1(B,np__1) = k1_nat_1(np__3,A)
=> v3_hilbert2(B) ) ) ) ).
fof(t14_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ( k1_funct_1(A,np__1) = np__0
=> A = k2_hilbert1 ) ) ).
fof(t15_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ( ~ r1_xreal_0(k3_finseq_1(k4_hilbert1(A,B)),k3_finseq_1(A))
& ~ r1_xreal_0(k3_finseq_1(k4_hilbert1(A,B)),k3_finseq_1(B)) ) ) ) ).
fof(t16_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ( ~ r1_xreal_0(k3_finseq_1(k3_hilbert1(A,B)),k3_finseq_1(A))
& ~ r1_xreal_0(k3_finseq_1(k3_hilbert1(A,B)),k3_finseq_1(B)) ) ) ) ).
fof(t17_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( ( v1_relat_1(C)
& v1_funct_1(C)
& v1_finseq_1(C) )
=> ( A = k7_finseq_1(B,C)
=> A = B ) ) ) ) ).
fof(t18_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> ! [D] :
( m1_subset_1(D,k1_hilbert1)
=> ( k7_finseq_1(A,B) = k7_finseq_1(C,D)
=> ( A = C
& B = D ) ) ) ) ) ) ).
fof(t19_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> ! [D] :
( m1_subset_1(D,k1_hilbert1)
=> ( k4_hilbert1(A,B) = k4_hilbert1(C,D)
=> ( A = C
& D = B ) ) ) ) ) ) ).
fof(t20_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> ! [D] :
( m1_subset_1(D,k1_hilbert1)
=> ( k3_hilbert1(A,B) = k3_hilbert1(C,D)
=> ( A = C
& D = B ) ) ) ) ) ) ).
fof(t21_hilbert2,axiom,
! [A] :
( m2_subset_1(A,k1_numbers,k5_numbers)
=> ! [B] :
( m2_subset_1(B,k1_numbers,k5_numbers)
=> ( k1_hilbert2(A) = k1_hilbert2(B)
=> A = B ) ) ) ).
fof(t22_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> ! [D] :
( m1_subset_1(D,k1_hilbert1)
=> k4_hilbert1(A,B) != k3_hilbert1(C,D) ) ) ) ) ).
fof(t23_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> k4_hilbert1(A,B) != k2_hilbert1 ) ) ).
fof(t24_hilbert2,axiom,
! [A] :
( m2_subset_1(A,k1_numbers,k5_numbers)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> k4_hilbert1(B,C) != k1_hilbert2(A) ) ) ) ).
fof(t25_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> k3_hilbert1(A,B) != k2_hilbert1 ) ) ).
fof(t26_hilbert2,axiom,
! [A] :
( m2_subset_1(A,k1_numbers,k5_numbers)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> k3_hilbert1(B,C) != k1_hilbert2(A) ) ) ) ).
fof(t27_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ( k4_hilbert1(A,B) != A
& k4_hilbert1(A,B) != B ) ) ) ).
fof(t28_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ( k3_hilbert1(A,B) != A
& k3_hilbert1(A,B) != B ) ) ) ).
fof(t29_hilbert2,axiom,
! [A] :
( m2_subset_1(A,k1_numbers,k5_numbers)
=> k2_hilbert1 != k1_hilbert2(A) ) ).
fof(d9_hilbert2,axiom,
! [A] :
( m1_pboole(A,k1_hilbert1)
=> ( A = k2_hilbert2
<=> ( k1_funct_1(A,k2_hilbert1) = k2_trees_4(k1_hilbert1,k2_hilbert1)
& ! [B] :
( m2_subset_1(B,k1_numbers,k5_numbers)
=> k1_funct_1(A,k1_hilbert2(B)) = k2_trees_4(k1_hilbert1,k1_hilbert2(B)) )
& ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> ? [D] :
( v1_funct_1(D)
& v3_trees_2(D)
& m3_trees_2(D,k1_hilbert1)
& ? [E] :
( v1_funct_1(E)
& v3_trees_2(E)
& m3_trees_2(E,k1_hilbert1)
& D = k1_funct_1(A,B)
& E = k1_funct_1(A,C)
& k1_funct_1(A,k4_hilbert1(B,C)) = k10_trees_4(k1_hilbert1,k4_hilbert1(B,C),D,E)
& k1_funct_1(A,k3_hilbert1(B,C)) = k10_trees_4(k1_hilbert1,k3_hilbert1(B,C),D,E) ) ) ) ) ) ) ) ).
fof(d10_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> k3_hilbert2(A) = k1_funct_1(k2_hilbert2,A) ) ).
fof(t30_hilbert2,axiom,
k3_hilbert2(k2_hilbert1) = k2_trees_4(k1_hilbert1,k2_hilbert1) ).
fof(t31_hilbert2,axiom,
! [A] :
( m2_subset_1(A,k1_numbers,k5_numbers)
=> k3_hilbert2(k1_hilbert2(A)) = k2_trees_4(k1_hilbert1,k1_hilbert2(A)) ) ).
fof(t32_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> k3_hilbert2(k4_hilbert1(A,B)) = k10_trees_4(k1_hilbert1,k4_hilbert1(A,B),k3_hilbert2(A),k3_hilbert2(B)) ) ) ).
fof(t33_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> k3_hilbert2(k3_hilbert1(A,B)) = k10_trees_4(k1_hilbert1,k3_hilbert1(A,B),k3_hilbert2(A),k3_hilbert2(B)) ) ) ).
fof(t34_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> k1_funct_1(k3_hilbert2(A),k1_xboole_0) = A ) ).
fof(t35_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_trees_1(B,k1_relat_1(k3_hilbert2(A)))
=> k7_trees_2(k1_hilbert1,k3_hilbert2(A),B) = k3_hilbert2(k3_trees_2(k1_hilbert1,k3_hilbert2(A),B)) ) ) ).
fof(t36_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ~ ( r2_hidden(A,k6_trees_2(k1_hilbert1,k3_hilbert2(B)))
& A != k2_hilbert1
& ~ v3_hilbert2(A) ) ) ) ).
fof(s1_hilbert2,axiom,
( ( p1_s1_hilbert2(k6_finseq_1(k5_numbers))
& ! [A] :
( m1_trees_1(A,f1_s1_hilbert2)
=> ( p1_s1_hilbert2(A)
=> ! [B] :
( m2_subset_1(B,k1_numbers,k5_numbers)
=> ( r2_hidden(k8_finseq_1(k5_numbers,A,k12_finseq_1(k5_numbers,B)),f1_s1_hilbert2)
=> p1_s1_hilbert2(k8_finseq_1(k5_numbers,A,k12_finseq_1(k5_numbers,B))) ) ) ) ) )
=> ! [A] :
( m1_trees_1(A,f1_s1_hilbert2)
=> p1_s1_hilbert2(A) ) ) ).
fof(s2_hilbert2,axiom,
( ( p1_s2_hilbert2(k2_hilbert1)
& ! [A] :
( m2_subset_1(A,k1_numbers,k5_numbers)
=> p1_s2_hilbert2(k1_hilbert2(A)) )
& ! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ( ( p1_s2_hilbert2(A)
& p1_s2_hilbert2(B) )
=> ( p1_s2_hilbert2(k4_hilbert1(A,B))
& p1_s2_hilbert2(k3_hilbert1(A,B)) ) ) ) ) )
=> ! [A] :
( m1_subset_1(A,k1_hilbert1)
=> p1_s2_hilbert2(A) ) ) ).
fof(s3_hilbert2,axiom,
( ( ! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C,D] :
? [E] : p1_s3_hilbert2(A,B,C,D,E) ) )
& ! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C,D] :
? [E] : p2_s3_hilbert2(A,B,C,D,E) ) )
& ! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C,D,E,F] :
( ( p1_s3_hilbert2(A,B,C,D,E)
& p1_s3_hilbert2(A,B,C,D,F) )
=> E = F ) ) )
& ! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C,D,E,F] :
( ( p2_s3_hilbert2(A,B,C,D,E)
& p2_s3_hilbert2(A,B,C,D,F) )
=> E = F ) ) ) )
=> ? [A] :
( m1_pboole(A,k1_hilbert1)
& k1_funct_1(A,k2_hilbert1) = f1_s3_hilbert2
& ! [B] :
( m2_subset_1(B,k1_numbers,k5_numbers)
=> k1_funct_1(A,k1_hilbert2(B)) = f2_s3_hilbert2(B) )
& ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> ( p1_s3_hilbert2(B,C,k1_funct_1(A,B),k1_funct_1(A,C),k1_funct_1(A,k4_hilbert1(B,C)))
& p2_s3_hilbert2(B,C,k1_funct_1(A,B),k1_funct_1(A,C),k1_funct_1(A,k3_hilbert1(B,C))) ) ) ) ) ) ).
fof(s4_hilbert2,axiom,
? [A] :
( m1_pboole(A,k1_hilbert1)
& k1_funct_1(A,k2_hilbert1) = f1_s4_hilbert2
& ! [B] :
( m2_subset_1(B,k1_numbers,k5_numbers)
=> k1_funct_1(A,k1_hilbert2(B)) = f2_s4_hilbert2(B) )
& ! [B] :
( m1_subset_1(B,k1_hilbert1)
=> ! [C] :
( m1_subset_1(C,k1_hilbert1)
=> ( k1_funct_1(A,k4_hilbert1(B,C)) = f3_s4_hilbert2(k1_funct_1(A,B),k1_funct_1(A,C))
& k1_funct_1(A,k3_hilbert1(B,C)) = f4_s4_hilbert2(k1_funct_1(A,B),k1_funct_1(A,C)) ) ) ) ) ).
fof(dt_k1_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k5_numbers)
=> m1_subset_1(k1_hilbert2(A),k1_hilbert1) ) ).
fof(dt_k2_hilbert2,axiom,
m1_pboole(k2_hilbert2,k1_hilbert1) ).
fof(dt_k3_hilbert2,axiom,
! [A] :
( m1_subset_1(A,k1_hilbert1)
=> ( v1_funct_1(k3_hilbert2(A))
& v3_trees_2(k3_hilbert2(A))
& m3_trees_2(k3_hilbert2(A),k1_hilbert1) ) ) ).
%------------------------------------------------------------------------------