"`bFU +%Zeven&ZArith#Coq@()Notations$Init#Coq@%Logic$Init#Coq@*Logic_Type$Init#Coq@)Datatypes$Init#Coq@&Specif$Init#Coq@%Peano$Init#Coq@"Wf$Init#Coq@'Tactics$Init#Coq@%Tauto$Init#Coq@'Prelude$Init#Coq@)Notations$Init#Coq@0&v!D]hwnv %Logic$Init#Coq@0\͉!Ig)Datatypes$Init#Coq@0.i bYN Z*Logic_Type$Init#Coq@0 1jc6&Specif$Init#Coq@0;RWMi\N'Decimal$Init#Coq@0C涳N*ua#Nat$Init#Coq@0eʤģPSR蠠%Peano$Init#Coq@0 jha|ؠ"Wf$Init#Coq@0q+W,J+'Tactics$Init#Coq@0/9m+ a%Tauto$Init#Coq@0̂"&/rk0JqTttֱ'BinNums'Numbers#Coq@0dmk(5Ju<*EqdepFacts%Logic#Coq@0FI$ͼՋ`)Eqdep_dec%Logic#Coq@0u wWIϰ߼&Basics'Program#Coq@0!bs߯? :VU$Init'Classes#Coq@0](p{yOh.'Tactics'Program#Coq@03u%+Equivalence'Classes#Coq@07;ꮹ-SetoidTactics'Classes#Coq@0S_`nOU$&Setoid'Setoids#Coq@0D9AsWE!>$Bool#Coq@0j 2cZ`FW*Equalities*Structures#Coq@0όe얟)H.Ƞ2Relation_Operators)Relations#Coq@0%s鯰s4Operators_Properties)Relations#Coq@0U3y#h&)Relations#Coq@0r砠*NZMulOrder&NatInt'Numbers#Coq@0}\^ !"k}@R(NZParity&NatInt'Numbers#Coq@0H>ca'^^%NZPow&NatInt'Numbers#Coq@0)6*9 B:vȻ&NZSqrt&NatInt'Numbers#Coq@0` .%m%NZLog&NatInt'Numbers#Coq@0ꔉ .uV%NZDiv&NatInt'Numbers#Coq@0$ |J?d (w%NZGcd&NatInt'Numbers#Coq@0KgT7|&NZBits&NatInt'Numbers#Coq@0MlIpKt'NAxioms(Abstract'Natural'Numbers#Coq@0Zخb1Z3uuѠ,NZProperties&NatInt'Numbers#Coq@01D%E`|3x%NBase(Abstract'Natural'Numbers#Coq@0 Y?V vI$NAdd(Abstract'Natural'Numbers#Coq@05;ZW:㥜un$&NOrder(Abstract'Natural'Numbers#Coq@0]@7U#oY)NAddOrder(Abstract'Natural'Numbers#Coq@02'8zn7Hfɠ)NMulOrder(Abstract'Natural'Numbers#Coq@04> Aat/ j $NSub(Abstract'Natural'Numbers#Coq@0:DfJᠠ'NMaxMin(Abstract'Natural'Numbers#Coq@0]v|Qg̟ʠ'NParity(Abstract'Natural'Numbers#Coq@0̗SKz*!&4h$NPow(Abstract'Natural'Numbers#Coq@0҆mulf%NSqrt(Abstract'Natural'Numbers#Coq@0<ge$NLog(Abstract'Natural'Numbers#Coq@0K= R@'>6'>6'6''>= R('>6'>6'6''6''+k6'+k6'+k6'РDP@@AABAADx7AABA@@AAxWV\4@@@@@AA@@A@$Zodd @sliI][UNlFMk@E:9РW\48ADxk4AAxD@@@@@0+Zeven_equiv @@@l%Logic$Init#Coq@@#iffС)@A&BinInt&ZArith#Coq@!Z@$Even1X A@@@@@b*Zodd_equiv @@AY2@o,aՀA(@#Odd1PĀA@@@@@,Zeven_ex_iff @@B!nRHA\@"ex @'BinNums'Numbers#Coq@@!Z7@!mt@"eq @B&BinInt&ZArith#Coq@g@#mul1P])BinIntDef&ZArith$@#@  BAX@@@7@BNMd@@+*@B @CA@@@@@젠+Zodd_ex_iff @@yCk㩚AjfYhXBT@#add1P&L@ ̀\IBBB;CAWBDC@@@@@..Zeven_bool_iff @@D)Datatypes$Init#Coq@@$boolZ'@@$even1[d@$even IA)Datatypes$Init#Coq@@$boolZ'@AA@@@@@n-Zodd_bool_iff @@E훠ۀ@р@@6@#odd1P@#odd A6A"A@@@@@.Zodd_even_bool @@&F+%"AR@$negbdA@@@@@.Zeven_odd_bool @@GG9yA!LA@@@@@ؠ-Zeven_odd_dec @WUIYW&Specif?@'sumbool7̂K@zy`@{T @,aՀYA^?_AC#A^\V`^.%B#"wki;B^}C?6wA65}{1CLCBCBCXO*CMe\CZY7Cqh 2b^Cyp-jFCw(q@&Specif$Init#Coq@@7̂K@2AA +k=O -R'>= R@'>6'>6'6''>= R6'>6'>6'6''6''+k97 97 7%'+k97 97 7%'+k7 7 7%'ADxPB@DAAx`lA@\4@@@@@)Zeven_dec @&*(Ѡȩ@#notШ C+!HȐ"H0@@D@==C C,42'C2C7?=7A?>SGE(CEMK@CK3C!P@=ǀA@#notШӀA D+k=[ 3R'>= Rz'>+B9'>6'+L9''>= R'>+c9'>6'+m9''6''=R''+k6'=R''+k6'+k97 7 97 7%'=R''+k6'=R''+k6'+k97 7 97 7%'+k7 7 7 7%' cpLDADxTA@<{DAAxG$V0A@X@@@@@H(Zodd_dec @pƩo]_CuMO|HJC<>C57C/1ũ*Đ,ٰ˵C(ː*ѵC&ѐ(C$֐&@~%%A.A +k=U 0R'>= R`'>6'>+99'6''>= Rm'>6'>+F9'6''+k9''=R''+k6'+k97 7 97 7%'=R''+k6'+k97 7 97 7%'=R''+k6'+k7 7 7 7%' t䠐ADx<ڀA@@xAA xٰHA@\($@@@@@ˠ.Zeven_not_Zodd @@XHJ@AǀoB@@@@@栠.Zodd_not_Zeven @@sIeݶ@A‐@@@@@(Zeven_Sn @@J@AȀ@$succ1\wV@$succ :@@@@@'Zodd_Sn @@K[@‐AT@@@@@9*Zeven_pred @@L0@ԀA@$pred1\@$pred js@@@@@X)Zodd_pred @@M@A@@@@@r-Zdiv2_odd_eqn @@N߀рAyрBZPB@$div21[8@$div2 A@@@@@@@@A!b" #An@@@@@*Zeven_div2 @@=O/@sAᩚBBCD@@@@@۠)Zodd_div2 @@hPZҶ@vA> 倠=*B#BCs%;B(C@@@@@.Zquot2_odd_eqn @@Q'BinNums'Numbers#Coq@@!Z7@|A$|iB@%quot22=*}@%quot2 рA@@@@AɀȀA@#sgn1P@#sgn rA@A@@@@@c+Zeven_quot2 @@R@&AƀBBCM@@@@@*Zodd_quot2 @@S @@"ge1P,AFA@7ȩCBBCBC@@@@@Ӡ.Zodd_quot2_neg @@`TRE@(@"le1P,AA@z AZC<@#sub1P4@ pD1B*B#CЀ`BB/C@@@@@*Zquot2_opp @@Ux@񀐩z@#opp1Pr@ {A A@@@@@D+Zquot2_quot @@V2)A@$quot1\@ }ABB(@@@@@l*Z_modulo_2 @@W뛠@)Datatypes$Init#Coq@@#sum@@#sig#* @!y怰!B†2B&BinInt@1P]"@ {@@@@@'Zsplit2 @@JX<!@S@$prodt@GG#  BBB@@@@@-WWAA"x1"x2"@#andЖw@M7D _@"or @^,kb#A BLBܐ@@@@@ (Zeven_ex @@Y\@【AlqBjBcC@@@@@M'Zodd_ex @@ZD@耐AȀķƩT]BBCةBC@@@@@(Zeven_2p @@[󩚠HހBB`A@@@@@.Zodd_2p_plus_1 @@2\?BBAB@@@@@͠/Zeven_plus_Zodd @@Z]!a 7Ƕ@B@qu߀D?@@@@@0Zeven_plus_Zeven @@}^#,Y.@B@$"`@@@@@/Zodd_plus_Zeven @@_DzO@B@܀E"C@@@@@2.Zodd_plus_Zodd @@`e)+@πB@ՀfCd@@@@@S2Zeven_mult_Zeven_l @@a¶@B@@@@@o2Zeven_mult_Zeven_r @@b܀@6A;р@@@@@.Zodd_mult_Zodd @@ c@*B@04@@@@@@@@ ӳ2@ ӳ2[432@@A@ Գq@ Գq\@A@AB@@@"O@(PeanoNat%Arith#Coq@#Nat@&of_int"O#Nat$Init#Coq@@ 6@A@A\@ @'quotrem\@/@A@\@@+pred_double\!@/S@@A@As2@"@&shiftls2@vY@A@BCs8@'@&shiftrs8@vY@A@ѓ@-@&squareѓ$@y@A@@3@&to_intϑ*@@A@z@$@&doublez=@/!@A@ABCD/@>@)log2_iter/5@wd@A@NH/@1@&moduloNH/J@1,@A@A\d@6@&of_int\dO@1?A @A@bz@<@&of_natbzU@1?G!@A@#@B@&shiftl#[@1dV@A@#@H@&shiftr#a@1d\@A@ABCD/x@&BinPos&PArith#Coq@#Pos@)pred_mask/x)BinPosDef&PArith#Coq@#Pos@ )X@A@6@g@&square6@19@A@AV+L@l@&to_intV+L@2@A@V1b@r@&to_natV1b@2 @A@V5=@x@&to_posV5=@2@A@ABCl@@)sqrt_iterl@!$:@A@@@6@(sub_mask@-@)@A@ADEF c@@'testbit c@!ć@A@7 B@D@'of_uint7 B;@*`]?@A@AG@I@)mask_rectG@@+ED@A@F˱@O@)add_carryF˱F@+p@A@AB^Ҷ@@'to_uint^Ҷ@#m@A@gL7@@'sqrtremgL7@40@A@Aq@@'testbitq@5)@A@ݎO@@+succ_doubleݎO@6r@A@A p@l@0double_pred_mask pc@0-+m@A@BCD T@&BinNat&NArith#Coq@!N@!t T)BinNatDef&NArith#Coq@!N@ 2@A@ @@#add @3 @A@A l@@#div l@3@A@ Y@%@#eqb Y@3@A@AB #@*@#gcd #!@3n@A@ T@0@#leb T'@3@A@ACEG "@5@#lor ",@3m@A@ q@?@#ltb q6@3@A@A @D@#max ;@3@A@ @J@#min A@3`@A@AB @O@#mul F@3B@A@ ~@U@#odd ~L@3@A@AC =@Z@#one =Q@3@A@ @b@#pow ˑY@3@A@A c@g@#sub c^@3@A@ @m@#two d@3J@A@AB hx@r@$div2 hxi@>@A@ @x@$even o@>4@A@ACD @}@$ggcd Бt@>U@A@ @@$iter }@>:@A@A 3"@@$land 3"@>m@A@ F)@@$log2 F)@>t@A@AB S@@$lxor S@>@A@ @@$pred @?U@A@AC @@$size ܑ@?'@A@ !@@$sqrt !@?@A@A ! @@$succ ! @?\@A@ !7@@$zero !7@@P@A@ *@@%ldiff *@@A@AB g_@1@+pred_double g_(@25\@A@CD m@6@÷ m-@2j@A@S@=@&of_intS㫑4@4}5@A@AS@B@&of_natS9@4};@A@BEFGH\R@G@(mask_ind\R>@4@A@\^@Q@(mask_rec\^H@4@A@A!,@V@&pred_N!,M@4s)@A@B@[@&shiftlR@5X@A@@b@&shiftrY@5X@A@A&@g@&square&ّ^@5,x@A@BC"@l@&to_int"c@5L@A@"@t@&to_nat"k@5L @A@AnTq@y@+testbit_natnTqp@6n@A@B@@(succ_posB@@A@I@@'abs_natI @?n@A@AB.@@'of_uint.@MS@A@3~@@'sqrtrem3~@7]%{@A@ACD,@@'bitwise,@/v@A@>4'@@'testbit>4'@8g$@A@A{U@@,sqrtrem_step{U@8R@A@u^@9@(div_euclu^0@ @A@Afz@@'to_uintfz@9w@A@Bl@@'comparel @3R@A@CDEFs8@@+of_uint_accs8@5+@A@}@R@,pos_div_eucl}I@&`@A@3x@@'compare3x 0@]=@A@A@^@&doubleU@'޺_@A@BCq@@+of_succ_natq@$@A@w@i@&modulowɑ`@)1@A@ADK@n@&of_intKe@)j,I@A@K@v@&of_natKm@)j2_@A@AI@{@&shiftlIr@*O@A@O@@&shiftrOx@*O@A@AB,@@&square,}@*ow@A@Z@@&to_intZ@*81@A@ACE`@@&to_nat`@*9G@A@e@@+testbit_nateđ@+@A@A+{@@'sqrtrem+{ё@,J@A@5z@@'testbit5z@-T|@A@A @@'to_uint ͑@.@A@ @@+succ_double @.^4@A@A#@'@'compare#ݑ@ )Q@A@BCD%t2@,@(size_nat%t2#@ @A@%9@3@+of_uint_acc%9*@ ΋@A@A%V@8@+double_mask%V/@ S@A@%%@>@'div2_up%%5@ "@A@ABEF'ş@C@'Ndouble'ş:@ @A@(b0@K@*shiftl_nat(b0B@9-@A@A(nՖ@P@*shiftr_nat(nՖG@'@A@(@V@0succ_double_mask(M@@A@*W$@\@,compare_cont*W$S@!@A@.0@b@.sub_mask_carry.0Y@΂@A@ABCD.@@!t.@ ;@A@.먩@@#add.먩@ `@A@A.U@@#div.U@ @A@.B@@#eqb.B@ @A@A. @@#gcd. @ @A@.=@@#leb.=@ @A@ABCEGHI. @@#lor. @ @A@.Z@@#ltb.Z@ @A@A.p@@#max.p@ '@A@B.@@#min.@ @A@.@ @#mul.@ @A@AC.g@@#odd.g@ @A@.&@@#one.& @ @A@A.뾴@@#pow.뾴@ k@A@.L@ @#sub.L@ @A@.@&@#two.@ @A@ABCD.,a@+@$div2.,a"@ @A@.Xz@3@$even.Xz*@ ?1@A@A.@8@$iter.ؑ/@ @A@B. @=@$land. 4@ @A@. @C@$log2. :@ @A@ACE.@H@$lxor.?@ R@A@.y@O@$pred.yF@ `<@A@A.Ʉ@T@$sqrt.ɄK@ ;@A@.@[@$succ.R@ @A@.t @a@$zero.t X@ Z@A@AB/@f@.to_little_uint/]@ @A@CDF/@k@%ldiff/b@ H@A@00@@'compare00@?H{@A@A1P%@f@!t1P% @  @A@B1P@k@#abs1P @ @A@1P&@r@ >1P& >@A@A1P@u@#div1Pґ @ y@A@BC1P@z@#eqb1P @ f@A@1P@@#gcd1P @ 0@A@A1P@@#geb1P @ T@A@B1P@@#gtb1Pʑ @ q@A@1Pĺ@@#leb1Pĺ @ a@A@A1Pň@@#lor1Pň @ /@A@BCD1P@@#ltb1Pב @ ~@A@1P@@#max1P @ @A@A1P{@@#min1P{ @ "@A@B1P]@@ 1P] @A@1P@@ 1P @A@A1Pɣ@@#one1Pɣ @ J@A@BC1P@@c1Pԑc@A@1P1@@#pow1P1 @ @A@A1P;@@#rem1P; @ @A@B1P@@N1PˑP@A@1P@@1Pɑ@A@A1Pe@@#two1Pe @  @A@BCDE1[8@@1[8ޑ@A@1[d@@ f1[d h@A@A1[6@@$ggcd1[6 @ i@A@B1[U@@$iter1[U @ @A@1\@@$land1\ @ /@A@A1\@@$log21\ @ 6@A@BC1\$@@$lxor1\$ @ @A@1\Y@@$of_N1\YÑ @ >j@A@A1\@@1\@A@B1\@ @1\֑@A@1\@@$sqrt1\ )@ @A@A1\w@@1\w@A@BC1\k@@$to_N1\k 1@ @A@1]@ @$zero1] 9@ eD@A@A2:@%@%abs_N2: >@ @A@21@+@%ldiff21 D@ ߵ@A@2=*@1@2=*@A@ABC2kF@v@(size_nat2kFm@{@A@3@O@(tail_add3F@^q@A@ADEFGH3@T@(tail_mul3K@^@A@5Z@@*shiftl_nat5Z@y/@A@5f}@@*shiftr_nat5f}@4@A@AB5a@@'iter_op5a@ @A@C6w~@n@'of_uint6w~e@^5@A@8j@`@'of_uint8j y@'"h@A@9E@f@(div_eucl9Eđ @(*k@A@AB:x@@,Nsucc_double:x@ ʭ@A@CD@#F@A@=L@M@#leb=LD@#F@A@ABDE=L@R@#lor=LϑI@#F@A@=M@\@#ltb=MS@#F@A@A=M4@a@#max=M4X@#F1@A@=M@g@#min=M‘^@#F@A@AB=N@l@#mul=Nc@#F@A@=Rx@r@#pow=Rxi@#Fu@A@AC=W@w@#sub=Wn@#F @A@='%@@$div2='%v@#Q"@A@A=(@@$gcdn=({@#QX@A@=( }@@$ggcd=( }@#Q^z@A@AB=(T@@$iter=(T@#Q@A@=(@@$land=(ϑ@#Q@A@ACD=(@@$mask=(@#Q@A@=(_@@$lxor=(_@#Q\@A@A=) I@@$pred=) I@#R_F@A@=)R@@$size=)R@#R@A@AB=)]H@@$sqrt=)]H@#RE@A@=)a@@$succ=)a@#R@A@A=9R@@.to_little_uint=9Rˑ@#b@A@=@@%ggcdn=͑@$*@A@=U@@%ldiff=U@$'R@A@ABCD>@2@&divmod>)@C@A@>@9@&double>0@NĴ@A@?2@*@,pos_div_eucl?2 C@-u@A@AB?;@D@&modulo?;;@"i@A@CEFGIJ@&Basics'Program#Coq@0!bs߯? :VU \0BpHޞun^)BinIntDef&ZArith#Coq@0ådR4Tuy&BinNat&NArith#Coq@0K11ڤs+Π)BinNatDef&NArith#Coq@03@1O,[{ 'BinNums'Numbers#Coq@0dmk(5Ju<&BinPos&PArith#Coq@0vyػ0= u)BinPosDef&PArith#Coq@0}H d.%,b$Bool#Coq@0j 2cZ`FW*CMorphisms'Classes#Coq@0qیZBeϠ0CRelationClasses'Classes#Coq@0TL;0RUfw10.i bYN Z)Decidable%Logic#Coq@0ND걸풬/Oߠ'Decimal$Init#Coq@0C涳N*ua*EqdepFacts%Logic#Coq@0FI$ͼՋ`)Eqdep_dec%Logic#Coq@0u wWIϰ߼*Equalities*Structures#Coq@0όe얟)H.Ƞ+Equivalence'Classes#Coq@07;ꮹ-GenericMinMax*Structures#Coq@0måj$$Init'Classes#Coq@0](p{yOh."Le%Arith#Coq@0d}Omq+0\͉!Ig*Logic_Type$Init#Coq@0 1jc6"Lt%Arith#Coq@0KZ-eJkP܏)Morphisms'Classes#Coq@0Imӽ%\$PD.Morphisms_Prop'Classes#Coq@0% :B'.>u%$NAdd(Abstract'Natural'Numbers#Coq@05;ZW:㥜un$)NAddOrder(Abstract'Natural'Numbers#Coq@02'8zn7Hfɠ'NAxioms(Abstract'Natural'Numbers#Coq@0Zخb1Z3uuѠ%NBase(Abstract'Natural'Numbers#Coq@0 Y?V vI%NBits(Abstract'Natural'Numbers#Coq@0qteo_hɅ $NDiv(Abstract'Natural'Numbers#Coq@0bz$?[p(5$NGcd(Abstract'Natural'Numbers#Coq@08E-S ;j_Ҡ$NLcm(Abstract'Natural'Numbers#Coq@0 ~xZ9L{:$NLog(Abstract'Natural'Numbers#Coq@0K Aat/ j &NOrder(Abstract'Natural'Numbers#Coq@0]@7U#oY'NParity(Abstract'Natural'Numbers#Coq@0̗SKz*!&4h$NPow(Abstract'Natural'Numbers#Coq@0҆mulf+NProperties(Abstract'Natural'Numbers#Coq@0unt"kwpYC%NSqrt(Abstract'Natural'Numbers#Coq@0<ge$NSub(Abstract'Natural'Numbers#Coq@0:DfJᠠ%NZAdd&NatInt'Numbers#Coq@00h`ZK4*NZAddOrder&NatInt'Numbers#Coq@0e~1>r砠(NZAxioms&NatInt'Numbers#Coq@0] ρ5r&NZBase&NatInt'Numbers#Coq@0^&8yUL&NZBits&NatInt'Numbers#Coq@0MlIpKt%NZDiv&NatInt'Numbers#Coq@0$ |J?d (w%NZGcd&NatInt'Numbers#Coq@0KgT7|%NZLog&NatInt'Numbers#Coq@0ꔉ .uV%NZMul&NatInt'Numbers#Coq@0ctR~6[Ƞ*NZMulOrder&NatInt'Numbers#Coq@0}\^ !"k}@R'NZOrder&NatInt'Numbers#Coq@0 q;Ve7R W,(NZParity&NatInt'Numbers#Coq@0H>ca'^^%NZPow&NatInt'Numbers#Coq@0)6*9 B:vȻ,NZProperties&NatInt'Numbers#Coq@01D%E`|3x&NZSqrt&NatInt'Numbers#Coq@0` .%m#Nat$Init#Coq@0eʤģPSR蠠)Notations$Init#Coq@0&v!D]hwnv *NumPrelude'Numbers#Coq@05WUVŦ]xVXԠ4Operators_Properties)Relations#Coq@0U3y#h&&Orders*Structures#Coq@0$Znl0\͗+OrdersFacts*Structures#Coq@05Mܿ獐ζΖLB)OrdersTac*Structures#Coq@05'4Ԗ+9%%Peano$Init#Coq@0 jha|ؠ(PeanoNat%Arith#Coq@0O~2$k[#lZ$Plus%Arith#Coq@04tmG$Pnat&PArith#Coq@0,?pr.gZ'Prelude$Init#Coq@0JqTttֱ/RelationClasses'Classes#Coq@0Gz rA6ՠ4Relation_Definitions)Relations#Coq@0]4Ѐd{n^2Relation_Operators)Relations#Coq@0%s鯰s)Relations#Coq@0-SetoidTactics'Classes#Coq@0S_`nOU$0;RWMi\N'Tactics$Init#Coq@0/9m+ a'Tactics'Program#Coq@03"_6&Ű@A'Z_scope2 Q@@@@"_7@A@@@@@@@@"_82M접 AA@A"_9'`o@A'Z_scope@t@@2 Q@@@@#_10%$@#_112M접 AA@A#_12'`o@A"@@42 Q@@A@#_13@? @A@@@@G@#_142M접 #_15'`o@AF@@&2 Q@@A@#_16@16Θ@A@@@@k@#_172M접 #_18'`o@Aj@@+2 Q@@@@#_198@65rX$@#_202M접  #_21'`o@A@@2 Q@@@@#_22[@,CG@#_232M접  #_24'`o@A@#@*Zeven_bool9D{(@@B)Zodd_bool9D{(@@| ՠ2 Q@@A@#_25@@A@@@@@#_262M접 #_27'`o@A@@2 Q@@A@#_28@/R@A@@@@ @#_292M접 #_30'`o@A @@0boolify_even_oddF@@@@@@@@N@9./theories/ZArith/Zeven.vLL@@@@@8@LL @@@@@@נ2 Q@@A@#_31@4r@A@@@@S@#_322M접 #_33'`o@AR@@ڠ2 Q@@A@#_34 @$$/E@A@@@@w@#_352M접 #_36'`o@Av@@2 Q@@@@#_37D@;ѕ@A@@@@@#_382M접 AA@A#_39'`o@A@ @12 Q@@@@#_40g@<j@A@@@@@#_412M접 AA@A#_42'`o@A@/@2 Q@@@@#_43@`@A@@@@@#_442M접 AA@A#_45'`o@A@R@V2 Q@@A@#_46@a|@A@@@@@#_472M접 #_48'`o@B@@w@c2 Q@@A@#_49@n=B@A@@@@,@#_502M접 #_51'`o@B+@@@q2 Q@@A@#_52@|@A@@@@T@#_532M접 #_54'`o@BS@@Ǡ'@z2 Q@@A@#_55%@*5@A@@@@|@#_562M접 #_57'`o@B{@@w@2 Q@@A@#_58M@6@A@@@@@#_592M접 #_60'`o@B@@w@2 Q@@A@#_61u@!C@A@@@@@#_622M접 #_63'`o@Bˠ@@?@#_64X@&zarithD@@@@@@@5Coq.ZArith.Zeven#<>#1:9"D@@@@ @5Coq.ZArith.Zeven#<>#2:9#@/Zeven_bool_succ9D{(@@@)even_succoB/Zeven_bool_pred9D{(@@@)even_predM.Zodd_bool_succ9D{(@@@(odd_succ3;X.Zodd_bool_pred9D{(@@ @(odd_pred3;jc%Zdiv29D{(@@Ґ@&Zquot29D{(@@1@2 Q@@A@#_65@5Q@#_662M접  #_67'`o@AP@@2 Q@@A@#_68@51@A@@@@u@#_692M접 #_70'`o@Bt@@蠐p@ߠ2 Q@@A@#_71F@@A@@@@@#_722M접 #_73'`o@B@@p@Р2 Q@@A@#_74n@9Kժ@A@@@@@#_752M접 #_76'`o@A@@2 Q@@A@#_77@ @A@@@@@#_782M접 #_79'`o@B@@\@2 Q@@A@#_80@O@A@@@@@#_812M접 #_82'`o@C@@@@2 Q@@A@#_83@p@A@@@@=@#_842M접 #_85'`o@C<@@@⠐@m2 Q@@A@#_86@x-j@A@@@@i@#_872M접 #_88'`o@Ah@ @f2 Q@@A@#_896@q f_@A@@@@@#_902M접 #_91'`o@A@@b2 Q@@A@#_92Z@m`~@A@@@@@#_932M접 #_94'`o@A@{@52 Q@@A@#_95~@@+e@A@@@@@#_962M접 #_97'`o@A@x@2 Q@@@@#_98@Z@A@@@@@#_992M접 $_100'`o@B@@l@2 Q@@@@$_101@*@A@@@@!@$_1022M접 $_103'`o@B @@@2 Q@@@@$_104@@A@@@@I@$_1052M접 $_106'`o@AH@@2 Q@@@@$_107@8a@A@@@@m@$_1082M접 $_109'`o@Al@@2 Q@@@@$_110:@3d@A@@@@@$_1112M접 $_112'`o@D@@@ m@2 Q@@@@$_113k@R@A@@@@@$_1142M접 $_115'`o@Dà@@@8;à@2 Q@@@@$_116@ @A@@@@@$_1172M접 $_118'`o@D@@@il̠@2 Q@@@@$_119@ 4@A@@@@$@$_1202M접 $_121'`o@D#%@@@@2 Q@@@@$_122@*x@A@@@@U@$_1232M접 $_124'`o@CTV@@ʠU@02 Q@@@@$_125+@;x@A@@@@@$_1262M접 $_127'`o@C@@(@?2 Q@@@@$_128X@J5Z@A@@@@@$_1292M접 $_130'`o@D@@@%(@$_131&Ű@@'Z_scope@@i?eK#trans_sym_co_inv_impl_morphism'\|AF/RelationClasses@/Equivalence_PER/; P @/iff_equivalenceZ%Zeven8@B-UOF4@(symmetry0xj&j#@-iff_Symmetric!xAT@)even_spechI@@AA@AA@@@@@@D,UwT@#andЖw@A@@$Truey@gg@ !H Ap ACPA~!p@(positive*@@AA@AA@@@@@@@DlBI@@%Falsee@˰ŜB@ E @)False_induُM$Bool@/diff_false_true .C C1HAͩ ηPN{C@WBܩ ݵ@CNdC  ljdnlɐ4C {y]C+א:$C5ᐩ5.( pC>ꐩ!071(\ZMKA;2@#odd1P,@ (&9@#Odd1PĀ.#]@$Zodd,aՀYS 8%i;N@(odd_spec3;CsH)GCxԩoi.NȷЩ%xr7WXصC.{@`C6HhC=OoFXxy&COaCW~i5C^|p!n֩o@+Zeven_equiv π ߩx@*Zodd_equiv6Θ詷٩@=trans_co_eq_inv_impl_morphism&ni$ߚ@.iff_Transitive*z@/eq_proper_proxy)f|oĠ/@+reflexivity(ϓ/@-iff_Reflexive/h͐@,$'" CS'@&eq_sym X  @$negbթ@)negb_evenxЀj>@(negb_odd7dǀ wK><2@2subrelation_properJ74!A!B@*respectful%WO? @RTT&Basics'Programe@$impl7o.Morphisms_Prop%@9iff_iff_iff_impl_morphism8C$!h&&j@$flip$---_@$unitUe@A@@6subrelation_respectful>6z ;8G@0subrelation_reflv B4 DD O@9iff_flip_impl_subrelation2VA8-*K%/:a@#notШ9^@6reflexive_proper_proxy5YI@.Zeven_bool_iffw\4p@>Reflexive_partial_app_morphism 2R,khG[r@nkh^TLA:RpT%%RY@0not_iff_morphism Z`YZ{U[bk@-Zodd_bool_iff/R@&eq_ind J!b@ưDʰĩC @@@@@@@@D϶@ذҩWݰT۩Ґ"H0`C&Cgdaߐ%ε )Cp+ѐB ˩^,Yr {}Xsm4X   XRM@6O BQ @O7=DC?V<5:C7qE86,&@$succ1\w@  ,E= =7. MT4   U[ W@(eq_ind_r!2#JK@w2'D@)even_succo9{n0.4)# (,pvөvtjd)>I?,74{'pj/8O<RH,qhr@&|Yk@(odd_succ3;`z|@$pred1\v@ jrpJ ,^[:NEM HyEf@| q4lf\RJ?8SL  n ]gXV@)even_predЩ4~xnd\QJmb5e -(˩ɠ~6p7&,h|!pŰ0pk@US @(odd_pred3;j @(div2_odd9| )4~wb@#mul1P]@ 6꩚@$div21[8@ m h@ڷ;@937 ?4 G00:@-negb_true_iff'"Hn. ?ϩ@#add1P& @ ̀D"@ZY@@@Al'LԠ*c$O2Q@-eq_Transitive(l;q<<d\>@-Zdiv2_odd_eqn5ʀ@{AIh)L# +MmjpnQp0RĠro3qF@'add_0_r0:x;M9~qȩ14,&  eEc2v|Q,}O$?=7NOrm6+pTqy0 "Zabw@%quot22=*q@ рmebM@#sgn1Pz@ rvu yvs0"p0Ơ&6 %өҠ̩29,"0ީݠש=<7-:G?A70/)31ְéTCND?=S `FZPJH^ ͠ kIe[hנuLoeM!yP$BBB@@@@D@@˶@@ͩM@@g; S 1#BDB<c$OEOI d\ @.Zquot2_odd_eqn9Kժ@79 DLk,&#.K/LTs4#.+$x3{y\{;)Ϡ}8>:Ʃ <A7@.Zodd_even_bool4r?R]@"ge1P,Rٷ#Hn'&s@l@>-@'@/̐@@adc5]f\[$^\Fo mjU xy Ġ`iVé~{@ʶ@9VΩ FAHȐ!gh0B@@@@@D!y@ȰY@˰@*comparison;f@@'compare3x@]=%BRpTr's!e&Ơ%gU%!ʶ@d"ː`**@@D@.SҀSQ۩A]F۩p_]iŐTC6K!@M17;="A>8GC*IH);@(eq_trans!ySSRIFX@'f_equal=qqq!f5J&#Ϡ \?@@(?JU@"le1P,穷$A?Pb@#sub1P\@ p ݩ2w[xl"0کz@#opp1Pt@ {`x. 'Ȑ!lG߷@׶@éϜC8:ؠ @$ @& M?d)˷@۩-6]O6<ǰ>>@ΰEG~Cڰk,x_^ȩ_dɰ^ dRNMGQOnmBnMذZXntG_]s!yAw%};gf`jh ,8sq52xv:,>&oCȐ#AUX!mI"Hm@"lt1P-%@+quot_uniqueBO䠩0@*lt_le_incl%gDjh;%"ܩ!dKME *m8Z1\tשd@kJ@nMȐ"H1@@@@@@@@@@@D!cJ`acd@ĩgC,|])U@2PreOrder_Reflexivevv0@+le_preorderҀ\@'sgn_posPPcR{¶@wk@$quot1\@ }]Ȑ!o@-lt_trichotomy€g@"or @  Ű+tv-BAAAA@@@@@D@:ذ> @ܰ6#POSηY@. PǩR HϠ#NUL ;\BsSnWsݷ#NEG@'opp_inj:>O)d!/-/Y3 868s0B@#)v,6 /-@*Zquot2_opp-jK*@*quot_opp_l$ TDcX`f@Ji^)@Ml,j lߩshrtxv 6@ط@9:@]|=ҠCߐ!Ȑ!s!@-Zeven_odd_dec;ѕO&Specif~@'sumbool7̂K@ BAAAA@@@@@D=5@#sum@@#sig#* @uy | [AAe@*Zeven_div251쀠e1B-  t@)Zodd_div2_~@*Z_modulo_2`~GAӰ;Fذ9RBAAAA@@@@@Dz\V #  P[ (  !N`@$prodt@  W BBB@@@@@`"x1 $"x2 '  +~mU  0  24BBB@@@@D34+$ # E! F + J j L"Hy ROI W U 8 W  驚 +@(add_diag Rހ B a UVMF %E gC h; M l A@_A q q V uȩ6 \ { ^ }>\ ?A  ؠ QJ I ?@% =   s S Tq T=; w GWAu7.     a%ˠ)  ))> i5    h m m  @)add_assoc9x-B>  >   , @"ex @A ȷ   ͷ $H з é   M  ש p"  (   )   V  q$  1 $ "  & $w   ; . , & 0 .  !a      4x ϩ     Ŷ@ɠb  ]  XV,  Qީj  @Hr  K    Ð l,  g@  % r,    $      #  d_  Z @X@U  ސ  5 34 + %c  / )e d &&  >D($"Ha&"Hb 5 5@$xorbȀx = ? z @ H B  ) ( F * G O I  0 /  0& E B@'odd_add8&Bm 4  z { n.4)#}K|@  z - qww w9, 2/ v"Tv @   $  $t 8 |ߩ   v p gr U /s, C@ 3e@ ( } w n \, IF ;9/ -  | s a - N  ( dT 5R 6@  @#eqbPJ{PI  r     xQ wP  y    ~  ~  X O# @(even_add, ȷ ɷ  [ dc ͩ   J i@/Zeven_plus_Zodd3d  gϩ @(add_comm RosԐ  ᩷ R),  k$ v>  @ zi@ {P0,  | }aMJH  ޠ { 4{pi  ~   y   M  &  CA,  <U  @ f  3ccZ  e3- ِ * @(@%    Ω7 2 @   ֶ@      ݩ    64   : @ }   !          Gw,  !r  # )@ 6  ݩ  V  Xc  &        Ω  ؐQ Jk K >O4ML 萩N  B HH H F < 6 -Z  ,   O-O D > 5 #   T  &   F F@#orb<   O 3 P X R  9C 8 C 9 K@(even_mul,B          "@2Zeven_mult_Zeven_lx  P? b@(mul_comm9+؀Y    M4 H B 8 . &  @ 0 0 N   , S P  / C @ 4  ; = 6ݩ =]  Y  ީ     V[ v H\, d a  @ T@ E   ] } , j g  \ Z P J   bs  N o  I ku Rs Sa  @$andb=qpi      o o       1  m  @'odd_mul8&yڈxL#GYА!E