"`̄?$ʰ+OrderedRing)micromega#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ֱ&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'BinNums'Numbers#Coq@0dmk(5Ju<*EqdepFacts%Logic#Coq@0FI$ͼՋ`)Eqdep_dec%Logic#Coq@0u wWIϰ߼*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@0KI'BinList+setoid_ring#Coq@0Au$Pnat&PArith#Coq@0,?pr.gZ'ZAxioms(Abstract'Integer'Numbers#Coq@0\}zK=PK%ZBase(Abstract'Integer'Numbers#Coq@0 TL}2_} ؠ$ZAdd(Abstract'Integer'Numbers#Coq@0Y9Vgⲫ򐠠$ZMul(Abstract'Integer'Numbers#Coq@0Mtr\b"H#ZLt(Abstract'Integer'Numbers#Coq@0xK|j2[&=}۠)ZAddOrder(Abstract'Integer'Numbers#Coq@0w:}H#NK}{)ZMulOrder(Abstract'Integer'Numbers#Coq@0Dr~-~ECM'ZMaxMin(Abstract'Integer'Numbers#Coq@0bAX1'ZSgnAbs(Abstract'Integer'Numbers#Coq@02`ou{Z'ZParity(Abstract'Integer'Numbers#Coq@0S)*Dd$ZPow(Abstract'Integer'Numbers#Coq@0AşsאI)ZDivTrunc(Abstract'Integer'Numbers#Coq@0`]f5FԠ)ZDivFloor(Abstract'Integer'Numbers#Coq@0dj_TYQc|$ZGcd(Abstract'Integer'Numbers#Coq@0G0=$ZLcm(Abstract'Integer'Numbers#Coq@0(9g%MmN]%ZBits(Abstract'Integer'Numbers#Coq@0ܹCF5s+ZProperties(Abstract'Integer'Numbers#Coq@0Ve*ʞ_OV)BinIntDef&ZArith#Coq@0ådR4Tuy&BinInt&ZArith#Coq@0BpHޞun^,Ring_polynom+setoid_ring#Coq@0gaKw9`UW+ListTactics%Lists#Coq@0,Jcy{%Zeven&ZArith#Coq@0i?eK#HFSQML-mk_SOR_theory!'%/-75><ECMKUS`^)SORsetoid&Setoid'Setoids'@-Setoid_Theory2_ jA*SORplus_wd"x1K"x2L@aID"y1N"y2O@  p] lY+SORtimes_wdM@P@&)SORopp_wd, ) @&xt(SORle_wd9,6)@(1Q/R@;8%Logic$Initx@#iffС)H7I6(SORlt_wdSBP0@/KHS@;Q%SORrt+Ring_theory+setoid_ring@+ring_theory؛@ FY]Kdhڶ*SORle_refl!n4ߠ.SORle_antisymm8!m"@:@]©mĶ+SORle_trans, T!pU@~˶@}kն,SORlt_le_neq& T>W@#andЖw@_@#notШ0SORlt_trichotomy>$6Vn@"or @1SORplus_le_mono_lQIW''  + k7%'AO@@@@@@Ӡ @)'/-53=;ECLJSQ[Ycanl8|vtrlyeb]PUBL3B@FDLJRPZXb`igpnxv~  +k()  = R ' >''  + k+T' +T'+ !T'+T' +T'+ !T'!!%'0AO@@@@@@  @dbjhpnxv~sMܷ?ڷ"зȷ }n}*@ĶUSRP@OMKJH@G֐  +k()  = R ' >''  + k+T' +T'+ !T'+T' +T'+ !T'!!%'!rAO@@@@@@P@ @Ƿηַ޷@>6B"|vy^@]堩ON%#k^R 9/  ٷз@ȶζԶܶ db@ q p H+k()  = R ' >''  + k+T' +T'+ !T'  %'jAO@@@@@@| @  !)'42k@@;<qoe]VL{FlDeBY<I52- %@" *(2097@>HFPN[Y@ݶ@ܩb۩cڐ  +k()  = R ' >''  + k+T' +T'+ !T'+T' +T'+ !T'!!7%' AO@@@@@@렠 @A?GEMKUS][dbkisq{yѷ@  @-V0"{ns`jQ`@dbjhpnxv~8653@20.-+@*)(  +k()  = R ' >''   + k+T' +T'+ !T'+T' +T'+ !T'!!7%' [AO@@@@@@9 @Ƿҷ)'+  `dz lOB6޷ܷڷԷͷŷ@ȶ϶ֶ޶HF$ ϐ +k()  = R ' >'' + k7# '-ؠMAO@@@@@@|* @зַܷ  ljbnN:8㐷LJ@8y1`'V!G@4$ @  #!+)64WéU +k()  = R ' >''  + k+T' %'AO@@@@@@a @%#-+42;9CAKIVTyqɶ@@Jo\n&{tjdb`wZgSPK>C0:!0[@42:8@>HFPNWU^\fdnlyw̶@]@et p+k()  = R ' >''  + k+T' +T' + !T'+!T'%'%AO@@@@@@ @YW_]ecmkus|zն)$@@pJٷ<׷ͷŷzkz@~|PM5@˶@%ɐ +k()  = R ' > ''  + k+T'+T'+T' +!T'+!T'%'oAO@@@@@@MՐ @ķ˷ӷ۷=;3? s[9rvސ_#!i\P7- ߷׷η@ƶ̶Ҷڶ  b`.&\  X+k()  = R ' > ''   + k+T' +T'!7 !7! !7%'(mDqAO@ @@@@@ @  #!+)31><uaɶY"ȩ$'xvld]SMsKlI`CP<94',# 1@#!)'1/97@>GEOMWUb`{DUFC= <+k()  = R ' > ''  + k+T' +T' ! !7! !7%'AO@T( @@@@@M @FDLJRPZXb`igpnxv~ַ¶@Z\6ŷ(÷ tyfpWfw@jhpnvt~|<9!@>|?ɐ +k()  = R ' > ''  + k+T' +T' +T' +!T'!!%' \AO@@@@@@: @ȷӷ*( , `H@K@Ġ`͠^jvYL@'޷׷ϷǷ@¶ʶҶٶRP@۠϶@) +k()  = R ' > ''   + k+T' +T' +!T'+!T'!%'ZAO@@@@@@ǐ @ݷ $"ywo{[ &[YOG@o6e0V.O,C&3 @  #!*(20:8EC3"EG +k()  = R ' >''   + k!7$'AO@A@@@@@Ϡ3sor_setoid_relation @& PQU$@@X@1@7e@/RewriteRelation6C @A@9e   (+k()G'@@@A@A@@4sor_setoid_Reflexive @O)US[Ycakirpyw#sor驚*@5Equivalence_ReflexiveM-+ @L9 @`ɶ7!xZ!yY@XTQP |+k()            7     7 +T7 + T7#' '+T''&,MȠ%@@@I@A@@]3rtimes_morph_Proper @@ AƶζնܶeLumk@@a@@t,rtimes_morph @Ϸշݷ|c\d@.Awu@ " uWU@ZX\ |+k()            7     7 +T7 + T7#' '+T''y,Ƞ!@@S@@1ropp_morph_Proper @@]B  " )'0.86@>KIǰ-@@@@Ơ*ropp_morph @#!)'1/97@>GEOMWUb`D@.w€@/ 53;9CAKIRPYWa_igtrǶe +k()            7     7 + T7#' 'Ȑ䠒@@@@0rle_morph_Proper @@CU/[Ya_igqoxv}@)@&,@-{/}v@@ @@)rle_morph @sMyw}$  @5@_ȶ6WT@SOLo +k()            7   67 7 +T7 +T7#' 6'+T'6'Р!0H̠(ܰxL(@@@@^0rlt_morph_Proper @@ DǶ϶ֶݶfMv`^ɐ@@b@@u)rlt_morph @зַ޷    }d]wuਗ਼e@..v@        # !vXV@[Yz +k()            7   67 7 +T7 +T7#' 6'+T'6'Рz0̠$ 8xL@@[@@/SOR_ring_lemma1 @@ eE      "  * ( 1 / 8 6 @ > H F S Qt)Datatypes@#nat@!l @$list]@#lpe @$prodt@,Ring_polynom@%PExprk@'BinNums'Numbers E@!Z7@#pe1#pe2@@-interp_PElist36<     ! %  +InitialRing@(gen_phiZA   $  + #@!N7@@(id_phi_Ny@%pow_NH  6 =  @ @"eq @j@$boolZ'@Ȑ#lmpQ@.mk_monpol_list(NOASBW@(positive*@C&BinInt&ZArith ]@#add1P&)BinIntDefc@ ̀@#mul1P] @ @#sub1P@ p@#opp1P@ {%Zbool!@(Zeq_bool0߀*@'quotrem\$@/ŀ @#Monf@@#Polj@@#Peqj*(@*norm_subst7:d0`]QA;5/'   0b_SC=71)   sA @"s 8                 %  8        ' @@@AS K I  l ة - M   @@@@A@@ ʠ*Rtimes_0_r @@ xK ! ' % - + 5 3 = ; D B K I S Q [ Y f d    H ^ @@@@ 㠠*Rplus_comm @@ L : @ > F D N L V T ] [ d b l j t r  } Ҷ     h   X@@4@@ *Rtimes_0_l @@ M T. Z X ` ^ h f p n w u ~ |         & { p )@@M@@ +Rtimes_comm @@ N mG s q y w                 ?  <  1  @@g@@ 0+Rminus_eq_0 @@ O a                  ʶ8   Y  V   2 Z X@@@9@A@X@A@vA1ՠF-SetoidTactics [@|A1I@ABCD@@ Y.Rplus_cancel_l @@ P       ¶  ʶ  Ѷ  ض      a H      g E 蠩   ѩ  [@@-@@ x(Rle_refl @@ &Q   Ӷ  ٶ               gސ@@@S@A@@ ,Rle_antisymm @@  G E N L V T ^ \ i g \@@U@@ ⠠(Rneq_0_1 @@ V 9 ? = E C M K U S \ Z c a k i s q ~ | 9@@j@@ &Req_em @@ W N( T R Z X b ` j h q o x v  ~          u @@@@@ 'Req_dne @@ X gA m k s q { y               9  6   8@@@@@ +)Rle_lt_eq @@ Y \                  Ŷ3   T  Q O  S@@@3@nAۀߠKK@AB@@ K)Rlt_trans @@ Z |          ö  ʶ  Ҷ  ڶ  S :  t  q  Y@  @&  @@!@@ g,Rle_lt_trans @@ [   ¶  ȶ  ж  ض  ߶        o V $     u@@@@:@@ ,Rlt_le_trans @@ .\   ۶                 o =  5  ' @5@}4@@@@AT@o@@ABC@@ ,Rle_gt_cases @@ L] ϶             ' % / - : 8  [ Ƕ S ĩ ֐@@@@@ 'Rlt_neq @@ e^      "  * ( 1 / 8 6 @ > H F S Q  t  l ݶ@E D@@@@@ Ѡ'Rle_ngt @@ _ ( . , 4 2 < : D B K I R P Z X b ` m k       _ @@@@ 젠'Rlt_nge @@ ` C I G O M W U _ ] f d m k u s } {   ۶     נ{ zH@@@@ /Rplus_le_mono_l @@ a ^8 d b j h r p z x             0  -    @@@@A@@AB@y@@@ABCD@@ )/Rplus_le_mono_r @@ b Z                  ö1   R  O  7    Y   @@@4@@AB@@ I/Rplus_lt_mono_l @@ c z            ȶ  ж  ض  Q 8  r  o  W 5 @@@@@ d/Rplus_lt_mono_r @@d     Ŷ  Ͷ  ն  ܶ       l S !     r P ;@@8@@ -Rplus_lt_mono @@-e   ڶ          n <  4  & !q @  3@    (@@@@@ -Rplus_le_mono @@Pf Ӷ    #!+)31><  _ ˶ W ȶ I # ö@1 T@ D!@@@@@ 0Rplus_lt_le_mono @@mg" *(2097@>HFPN[Y  |  t  f Ͷ@ @>@ =@@@@@ ڠ0Rplus_le_lt_mono @@h1 75=;ECMKTR[Ycakivt ɶ    [ @8X@@@@@ -Rplus_pos_pos @@iK%QOWU_]genlus}{   @@{@@@@@@ABC@@ 0Rplus_pos_nonneg @@jiComus}{  ; 8@@@@@@ ,0Rplus_nonneg_pos @@k]ƶ4  U R@9@@6@@ E3Rplus_nonneg_nonneg @@lvĶ̶Զ߶M 4n k@@3Q@@P@@ _,Rle_le_minus @@ mȶж׶޶g NJ  ֐@@@i@AO@@/@*@ABCD@@ ,Rlt_lt_minus @@.n۶  o=5k !@@@@ ,Ropp_lt_mono @@Ho˶  #!+)64 WöO )*,@@@@Ar@@A@m@h@ABCD@@ ,Ropp_pos_neg @@lp!)'1/86?=GEOMZX {1F#4@@@@A.@@@ABC@@ ޠ.Rtimes_pos_pos @@q5 ;9A?IGQOXV_]geomzx  }@@f@@ 4Rtimes_nonneg_nonneg @@rJ $PNVT^\fdmktr|z @Ƕ@ @@s@@ .Rtimes_pos_neg @@sd >jhpnxv~  63@ @| 2@@r@@*.Rtimes_neg_neg @@t [Ķ 2SP@S@ ɐ@@@@E4Rtimes_square_nonneg @@u vĶ̶Զ߶ M4np@@@@^,Rtimes_neq_0 @@ v Ƕ϶ֶݶ fM@퐩8z@@>@@,Ropp_neg_pos @@2w ߶    sAn@@$@@'Rlt_0_1 @@Mx ж  (&0.;9   @@@@*Rlt_succ_r @@cy   (&/-64><FDQO rީ&SR@@@@A@@AB @&@@@ABCD@@֠+Rlt_lt_succ @@z- 3197A?IGPNWU_]gerp Ŷ@ dVJ w@@@@@@@@ @A@ PQ@ @A@AB ӳ2@ ӳ2[)Datatypes$Init#Coq@@A@ Գq@ Գq\ @A@AC@`@AcA@A.0TQ+Ring_theory+setoid_ring#Coq@@BA.U>[J @AB'@"@Ab@B_@ @AOBCD *] @w@A[@BY@@@ABCDE@@"O@(PeanoNat%Arith#Coq@#Nat@&of_int"O#Nat$Init#Coq@@ 6@A@A\@&BinInt&ZArith#Coq@!Z@'quotrem\)BinIntDef&ZArith#Coq@!Z@ /@A@\@@+pred_double\@/S@@A@As2@3@&shiftls2*@vY@A@BCs8@8@&shiftrs8/@vY@A@ѓ@>@&squareѓ5@y@A@@D@&to_intϑ;@@A@z@5@&doublez,@/!@A@ABCD/@O@)log2_iter/F@wd@A@NH/@B@&moduloNH/9@1,@A@A\d@G@&of_int\d>@1?A @A@bz@M@&of_natbzD@1?G!@A@#@S@&shiftl#J@1dV@A@#@Y@&shiftr#P@1d\@A@ABCD/x@&BinPos&PArith#Coq@#Pos@)pred_mask/x)BinPosDef&PArith#Coq@#Pos@ )X@A@6@x@&square6o@19@A@AV+L@}@&to_intV+Lt@2@A@V1b@@&to_natV1bz@2 @A@V5=@@&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@]=@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@1@#sub.L(@ @A@.@7@#two..@ @A@ABCD.,a@<@$div2.,a3@ @A@.Xz@D@$even.Xz;@ ?1@A@A.@I@$iter.ؑ@@ @A@B. @N@$land. E@ @A@. @T@$log2. K@ @A@ACE.@Y@$lxor.P@ R@A@.y@`@$pred.yW@ `<@A@A.Ʉ@e@$sqrt.Ʉ\@ ;@A@.@l@$succ.c@ @A@.t @r@$zero.t i@ Z@A@AB/@w@.to_little_uint/n@ @A@CDF/@|@%ldiff/s@ H@A@00@@'compare00@?H{@A@A1P%@w@!t1P%n@  @A@B1P@|@#abs1Ps@ @A@1P&@@#add1P&z@ @A@A1P@@#div1Pґ@ y@A@BC1P@@#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]@@#mul1P]@ @A@1P@@#odd1P@ @A@A1Pɣ@@#one1Pɣ@ J@A@BC1P@@#opp1Pԑ@ {@A@1P1@@#pow1P1@ @A@A1P;@@#rem1P;@ @A@B1P@@#sgn1Pˑ@ r@A@1P@@#sub1Pɑ@ p@A@A1Pe@@#two1Pe@  @A@BCDE1[8@@$div21[8ޑ@ @A@1[d@@$even1[d@ I@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\@)@$pred1\ @ j@A@B1\@.@$quot1\֑%@ }@A@1\@5@$sqrt1\,@ @A@A1\w@:@$succ1\w1@ @A@BC1\k@?@$to_N1\k6@ @A@1]@G@$zero1]>@ eD@A@A2:@L@%abs_N2:C@ @A@21@R@%ldiff21I@ ߵ@A@2=*@X@%quot22=*O@ @A@ABC2kF@@(size_nat2kF@{@A@3@x@(tail_add3o@^q@A@ADEFGH3@}@(tail_mul3t@^@A@5Z@@*shiftl_nat5Z@y/@A@5f}@@*shiftr_nat5f}@4@A@AB5a@@'iter_op5a@ @A@C6w~@@'of_uint6w~@^5@A@8j@@'of_uint8j@'"h@A@9E@@(div_eucl9Eđ@(*k@A@AB:x@6@,Nsucc_double:x-@ ʭ@A@CD@[@&divmod>R@C@A@>@b@&double>Y@NĴ@A@?2@S@,pos_div_eucl?2J@-u@A@AB?;@m@&modulo?;d@"i@A@CEFGIJ@*Arith_base%Arith#Coq@0Ĕ}CS&Basics'Program#Coq@0!bs߯? :VU'Between%Arith#Coq@06v*0ur`C0&BinInt&ZArith#Coq@0BpHޞun^)BinIntDef&ZArith#Coq@0ådR4Tuy'BinList+setoid_ring#Coq@0Au&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;0RUfw1+Compare_dec%Arith#Coq@0jXF 810/@0.i bYN Z)Decidable%Logic#Coq@0ND걸풬/Oߠ'Decimal$Init#Coq@0C涳N*ua%EqNat%Arith#Coq@0AIgՋXRV *EqdepFacts%Logic#Coq@0FI$ͼՋ`)Eqdep_dec%Logic#Coq@0u wWIϰ߼*Equalities*Structures#Coq@0όe얟)H.Ƞ+Equivalence'Classes#Coq@07;ꮹ)Factorial%Arith#Coq@0@oehJd-GenericMinMax*Structures#Coq@0måj$"Gt%Arith#Coq@0䙛#c:D $Init'Classes#Coq@0](p{yOh.+InitialRing+setoid_ring#Coq@0k/T=cN"Le%Arith#Coq@0d}Omq+$List%Lists#Coq@0>I+ListTactics%Lists#Coq@0,Jcy{%Logic$Init#Coq@0\͉!Ig*Logic_Type$Init#Coq@0 1jc6"Lt%Arith#Coq@0KZ-eJkP܏%Minus%Arith#Coq@0LFtR")Morphisms'Classes#Coq@0Imӽ%\$PD.Morphisms_Prop'Classes#Coq@0% :B'.>u%$Mult%Arith#Coq@0햖Qyb0$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)Peano_dec%Arith#Coq@0Kݢ*k$Plus%Arith#Coq@04tmG$Pnat&PArith#Coq@0,?pr.gZ'Prelude$Init#Coq@0JqTttֱ%Quote%quote#Coq@0J@ŹVz-,3%/RelationClasses'Classes#Coq@0Gz rA6ՠ4Relation_Definitions)Relations#Coq@0]4Ѐd{n^2Relation_Operators)Relations#Coq@0%s鯰s)Relations#Coq@0 'Classes#Coq@0S_`nOU$&Specif$Init#Coq@0;RWMi\N'Sumbool$Bool#Coq@0sB ,$11.]m'Tactics$Init#Coq@0/9m+ a'Tactics'Program#Coq@03CrHȠ@"_83@BDF@IKMOQSU@@@@@AAAAAAA䠐AAAAAAAAAAAAR@2 Q@@H@#_66@-3@@B@AKK@AV@Ab @An@Ay@A@A@A$@A)@A@@@@#_672M접@U-3KK@A#_68'`o@@^-3K@@砐預렐@@@@@AAAAAAA7@y2 Q@@H@#_69 @;o~@B@AːK@A֐@A @A@A@A@A@A$@A+)@A@@@@@@@@@@#_702M접R@;oKK@A#_71'`o@[@;oQn@@moqsuwy@@@@@@@@@@@AAAAAAAà@@@@@@@2 Q@@H@#_72@=@RB@A]K@Ah@At @A@A@A@A@A$@A)@A@@@@@@@@@@#_732M접@@=KK@A#_74'`o@@I=Q@@  @@@@@@@@@@@AAAAAAAU@@@@@@@q2 Q@@H@#_75.@|-+Y0@䐐B@AK@A@A @A@A@A(@A4@A@$@AO)@A@@@@@@@#_762M접s@-+Y0KK@A#_77'`o@|@-+Y0N@@@@@@@@@@AAAAAAA@@@@2 Q@@H@#_78@E+@mB@AxK@A@A @A@A@A@A@Aɐ$@Aؐ)@A@@@@@@@@@@#_792M접@@EKK@A#_80'`o@ @IEQ@@ "$&@@@@@@@@@@@AAAAAAAp@@@@@@@e2 Q@@H@#_81 I@p@B@A K@A @A ! @A -@A 8@A C@A O@A [$@A j)@A@@@@@@@@@@#_822M접 @KK@A#_83'`o@ @Q@@@@@@@@@@@@@AAAAAAA@@@@@@@2 Q@@H@#_84 @O@ B@A K@A @A  @A @A ʐ@A Ր@A @A $@A )@A@@@@#_852M접!@ 9KK@A#_86'`o@!&@ BK9@@8:<>@BD@@@@@AAAAAAA@ \2 Q@@H@#_87![@ g/Ϡ@!B@A!K@A!'@A!3 @A!?@A!J@A!U@A!a@A!m$@A!|)@A@@@@@#_882M접!@ /KK@A#_89'`o@!@ /L@@àŠ@@@@@@AAAAAAA @@ נ2 Q@@H@#_90!@ 췵R@!B@A!K@A!@A! @A!@A!͐@A!ؐ@A!@A!$@A!)@A@@@@@@@@#_912M접"$@!(췵KK@A#_92'`o@"-@!1췵O@@@?ACEGIK@@@@@@@@@AAAAAAA @@@@@!V2 Q@@H@#_93"j@!aBAޠ@" B@A"+K@A"6@A"B @A"N@A"Y@A"d@A"p@A"|$@A")@A@@@@@@@@@#_942M접"@!BAKK@A#_95'`o@"@!BAP͠@@̠ΠРҠԠ֠ؠ@@@@@@@@@@AAAAAAA!!@@@@@@!Ԡ2 Q@@H@#_96"@!Ϥm@"B@A"K@A"Ő@A"ѐ @A"ݐ@A"@A"@A"@A# $@A#)@A@@@@@@#_972M접#=@"#ϤKK@A#_98'`o@#F@",ϤMY@@XZ\^`bd@@@@@@@AAAAAAA!@@@"B2 Q@@H@#_99#@"M l󠠑@#5B@A#@K@A#K@A#W @A#c@A#n@A#y@A#@A#$@A#)@A@@@@@@$_1002M접#@" lKK@A$_101'`o@#@" lMߠ@@ޠࠐ⠐䠐栐蠐@@@@@@@AAAAAAA"0@@@"2 Q@@H@$_102$@" y@#B@A#ƐK@A#ѐ@A#ݐ @A#@A#@A#@A$ @A$$@A$&)@A@@@@@@@@$_1032M접$K@# KK@A$_104'`o@$T@# Og@@fhjlnpr@@@@@@@@@AAAAAAA"@@@@@#22 Q@@H@$_105$@#=Y@$GB@A$RK@A$]@A$i @A$u@A$@A$@A$@A$$@A$)@A@@@@@@@@$_1062M접$@#YKK@A$_107'`o@$@#YO@@@@@@@@@@@AAAAAAA#F@@@@@#2 Q@@H@$_108%@#4X@$ӐB@A$ސK@A$@A$ @A%@A% @A%@A%#@A%/$@A%>)@A@@@@@$_1092M접%`@#4XKK@A$_110'`o@%i@$4XK|@@{}@@@@@AAAAAAA#@$_111L4x%@%L@%@%@A%)A%A%A$A$A$A$A$A$A$A$A$A$A$sA$fA@%@%W-3%@%L;o%@%2=%@%(-+Y0%@%Eꠐ%@% Ϡ%@%%@$/ %@$췵%@$BA%@$Ϥ %@$ l%@$ Ƞ&@$YϠ&@$4X@2 Q@@J@$_163&@AA@@@@@%ʐB@A@@@@$_1642M접&(@@$_165'`o@&0@B C @@@A@2 Q@@2@$_168&D@ Q1@%B@A&K@A&@A& @A&(@A&3@A&>@A&J@A&V$@A&e)@A@@@@@$_1692M접&@ QKK@A$_170'`o@&@ QK @@       @@@@@AAAAAAA$@ܠ2 Q@@@$_173&@:bF@&zB@A&K@A&@A& @A&@A&@A&@A&ʐ@A&֐$@A&)@A@@@@@@@$_1742M접' @ +:bFKK@A$_175'`o@'@ 4:bFK %@@ $ & ( * , . 0@@@@@AAAAAAA%t@ '2 Q@@4@$_178'F@ 144$3@&B@A'K@A'@A' @A'*@A'5@A'@@A'L@A'X$@A'g)@A@@@@@@@@@$_1792M접'@ x44$KK@A$_180'`o@'@ 44$K @@       @@@@@AAAAAAA%@ t2 Q@@@$_183'@ ~5Z@'B@A'K@A'@A' @A'@A'@A'Đ@A'А@A'ܐ$@A')@A@@@@$_1842M접( @ 5Z@$_185'`o@(@ 5ZK '@@ & ( * , . 0 2@@@@@AAAAAAA&v@ 2 Q@@J@$_188(I@ 9 AA@@@@@(B@A( K@A(@A(" @A(.@A(9@A(D@A(P@A(\$@A(k)@A@@@@@@@@@@$_1892M접(@!9 $_190'`o@(@!9 K @@       @@@@@AAAAAAA&@! 2 Q@@@@$_193(@! 2g2@(B@A(K@A(@A( @A(@A(@A(ː@A(א@A($@A()@A@@@@@@@@@@$_1942M접)@!_ 2g2$_195'`o@)!@!g 2g2Q 4@@ 3 5 7 9 ; = ?@@@@@@@@@@@AAAAAAA'@@@@@@@!X2 Q@@J@$_196)b@!cAwAA@@@@@)B@A)$K@A)/@A); @A)G@A)R@A)]@A)i@A)u$@A))@A@@@@@@@@@@$_1972M접)@!Aw$_198'`o@)@!AwK Ƞ@@ Ǡ ɠ ˠ ͠ Ϡ Ѡ Ӡ@@@@@AAAAAAA(@!ɠ2 Q@@@$_201)@!8s@)B@A)K@A)@A) @A)͐@A)ؐ@A)@A)@A)$@A* )@A@@@@@@@@@@$_2022M접*1@"8s$_203'`o@*9@"#8sQ L@@ K M O Q S U W@@@@@@@@@@@AAAAAAA(@@@@@@@"2 Q@@J@$_204*z@")wAA@@@@@*1B@A*m@+ÐB@A+ΐK@A+ِ@A+ @A+@A+@A,@A,@A,$@A,.)@A@@@@@@@@@@$_2182M접,U@#>m$_219'`o@,]@#>mQp@@oqsuwy{@@@@@@@@@@@AAAAAAA*Š@@@@@@@#2 Q@@J@$_220,@#.AA@@@@@,UB@A,`K@A,k@A,w @A,@A,@A,@A,@A,$@A,)@A@@@@@@@@@@$_2212M접,@#.$_222'`o@,@#.K@@   @@@@@AAAAAAA+S@$2 Q@@U@$_225-%@$(}L@,ېB@A,搐K@A,@A, @A- @A-@A-@A-+@A-7$@A-F)@A@@@@@@@@@@$_2262M접-m@$V(}L$_227'`o@-u@$^(}LQ@@@@@@@@@@@@@AAAAAAA+ݠ@@@@@@@$R2 Q@@A@$_228-@$]Y@-lB@A-wK@A-@A- @A-@A-@A-@A-@A-Ȑ$@A-א)@A@@@@@@@@@@@$_2292M접-@$Y$_230'`o@. @$YR@@!#%'@)nat_scope*list_scope@@@@@@@@AAAAAAA,w$Ԡ$ʠ$͠$$$$@#2 Q@@@$_231.^@#Y@.B@A.K@A.*@A.6 @A.B@A.M@A.X@A.d@A.p$@A.)@A@@@@@$ÐQ@A@@$T@A@@@@$_2322M접.@$BY$_233'`o@.@$LYTР@@ϠѠӠՠנ٠۠@@@@@@@@@@AAAAAAA-,%%%%S%%5%y$ؠ%>@$X2 Q@@J@$_234/@$c&AA@@@@@.ѐB@A.ܐK@A.@A. @A.@A/ @A/@A/!@A/-$@A/<)@A@@@@@@@@@@$_2352M접/c@$&$_236'`o@/m@$&K@@@@@@@AAAAAAA-@$2 Q@@@$_239/@$@/WB@A/bK@A/m@A/y @A/@A/@A/@A/@A/$@A/)@A@@@@@@@@@@$_2402M접/@%$_241'`o@/@%Q@@   @@@@@@@@@@@AAAAAAA.Y@@@@@@@%2 Q@@@@$_24202@%!*AA@@@@@/鐐B@A/K@A/@A0  @A0@A0"@A0-@A09@A0E$@A0T)@A@@@@@@@@$_2432M접0y@%f!*$_244'`o@0@%p!*N@@@@@@@@@@AAAAAAA.@@/@%2 Q@@@@$_2450@% wAA@@@@@0wB@A0K@A0@A0 @A0@A0@A0@A0ǐ@A0Ӑ$@A0)@A@@@@@$_2462M접1@% w$_247'`o@1@% wL!@@ "$&(*,@@@@@@AAAAAAA/q@@%2 Q@@@@$_2481E@% }AA@@@@@0B@A1K@A1@A1 @A1*@A15@A1@@A1L@A1X$@A1g)@A@@@@@$_2492M접1@&8 }$_250'`o@1@&B }L@@@@@@@@AAAAAAA/@@&S2 Q@@@@$_2511@&^(C!AA@@@@@1B@A1K@A1@A1 @A1@A1@A1Ő@A1ѐ@A1ݐ$@A1)@A@@@@@$_2522M접2@&(C!$_253'`o@2@&(C!L+@@*,.0246@@@@@@AAAAAAA0{@@&2 Q@@@@$_2542O@&4AA@@@@@2B@A2K@A2@A2( @A24@A2?@A2J@A2V@A2b$@A2q)@A@@@@@@$_2552M접2@'4$_256'`o@2@'4M@@@@@@@@@AAAAAAA1@@@'-2 Q@@@@$_2572@'8(CAA@@@@@2B@A2K@A2@A2 @A2@A2ǐ@A2Ґ@A2ސ@A2$@A2)@A@@@@@$_2582M접3@'|(C$_259'`o@3%@'(CL8@@79;=?AC@@@@@@AAAAAAA1@@'2 Q@@@@$_2603\@'%`AA@@@@@3B@A3K@A3)@A35 @A3A@A3L@A3W@A3c@A3o$@A3~)@A@@@@@@$_2612M접3@'%`$_262'`o@3@'%`M@@àŠǠɠ@@@@@@@AAAAAAA2@@@(2 Q@@@@$_2633@(gAA@@@@@3B@A3K@A3@A3 @A3ɐ@A3Ԑ@A3ߐ@A3@A3$@A4)@A@@@@@@$_2642M접4)@(Wg$_265'`o@43@(agMF@@EGIKMOQ@@@@@@@AAAAAAA2@@@(f2 Q@@@@$_2664l@(q5WdAA@@@@@4#B@A4.K@A49@A4E @A4Q@A4\@A4g@A4s@A4$@A4)@A@@@@@@@$_2672M접4@(5Wd$_268'`o@4@(5WdNϠ@@ΠРҠԠ֠ؠڠ@@@@@@@@AAAAAAA3!@@@@(Ҡ2 Q@@@@$_2694@(xNJ@4B@A4K@A4Ð@A4ϐ @A4ې@A4@A4@A4@A5 $@A5)@A@@@@@$_2702M접5:@) xNJ$_271'`o@5D@)*xNJLW@@VXZ\^`b@@@@@@AAAAAAA3@@)@2 Q@@@@$_2725{@)K%1ʽ@51B@A5,@6NB@A6YK@A6d@A6p @A6|@A6@A6@A6@A6$@A6)@A@@@@@@$_2792M접6@*$_280'`o@6@*M@@@@@@@@@AAAAAAA5J@@@*2 Q@@@@$_2817@**@6ՐB@A6K@A6@A6 @A7@A7@A7@A7%@A71$@A7@)@A@@@@@@$_2822M접7c@**$_283'`o@7m@**M@@@@@@@@@AAAAAAA5Ѡ@@@+2 Q@@@@$_2847@+"%5:@7\B@A7gK@A7r@A7~ @A7@A7@A7@A7@A7$@A7ǐ)@A@@@@@$_2852M접7@+e%5$_286'`o@7@+o%5K@@   @@@@@AAAAAAA6U@+2 Q@@@@$_2878(@+/AA@@@@@7ߐB@A7ꐐK@A7@A8 @A8 @A8@A8#@A8/@A8;$@A8J)@A@@@@@@$_2882M접8m@+/$_289'`o@8w@+/M@@@@@@@@@AAAAAAA6۠@@@+2 Q@@@@$_2908@+AA@@@@@8gB@A8rK@A8}@A8 @A8@A8@A8@A8@A8Ð$@A8Ґ)@A@@@@@@$_2912M접8@,C㐐$_292'`o@8@,MM@@@@@@@@@AAAAAAA7c@@@,`2 Q@@@@$_29398@,k4رAA@@@@@8B@A8K@A9@A9 @A9@A9(@A93@A9?@A9K$@A9Z)@A@@@@@@$_2942M접9}@,4ر萐$_295'`o@9@,4رM@@@@@@@@@AAAAAAA7@@@,Ƞ2 Q@@@@$_2969@,ZAA@@@@@9wB@A9K@A9@A9 @A9@A9@A9@A9ǐ@A9Ӑ$@A9)@A@@@@@@@@@$_2972M접:@-Z$_298'`o@:@-%ZP%@@$&(*,.0@@@@@@@@@@AAAAAAA8y@@@@@@-=2 Q@@@@$_299:Q@-H=AA@@@@@:B@A:K@A:@A:* @A:6@A:A@A:L@A:X@A:d$@A:s)@A@@@@@@@@@$_3002M접:@-=$_301'`o@:@-=P@@@@@@@@@@@@AAAAAAA9 @@@@@@-2 Q@@@@$_302:@- KVAA@@@@@:B@A:K@A:@A: @A:ǐ@A:Ґ@A:ݐ@A:@A:$@A;)@A@@@@@@@@@$_3032M접;*@. KV$_304'`o@;4@. KVPG@@FHJLNPR@@@@@@@@@@AAAAAAA9@@@@@@.(2 Q@@@@$_305;s@.32BAA@@@@@;*B@A;5K@A;@@A;L @A;X@A;c@A;n@A;z@A;$@A;)@A@@@@@@$_3062M접;@.x2B$_307'`o@;@.2BMՠ@@Ԡ֠ؠڠܠޠ@@@@@@@AAAAAAA:&@@@.2 Q@@@@$_308;@.UfAA@@@@@;B@A;K@A;Ȑ@A;Ԑ @A;@A;@A;@A<@A<$@A<)@A@@@@@@@@$_3092M접B@A N @@    !!!@@@@@@@@AAAAAAA"@0W&AA@@@@@=ِB@A=䐐K@A=@A= @A>@A>@A>@A>)@A>5$@A>D)@A@@@@@@@$_3212M접>h@0&$_322'`o@>r@0&N!@@!!!!!!!@@@@@@@@AAAAAAA<נ@@@@02 Q@@@@$_323>@06UAA@@@@@>dB@A>oK@A>z@A> @A>@A>@A>@A>@A>$@A>ϐ)@A@@@@@@@$_3242M접>@16U$_325'`o@>@16UN"@@"""""""@@@@@@@@AAAAAAA=b@@@@1'2 Q@@@@$_326?8@126[AA@@@@@>B@A>K@A?@A? @A?@A?(@A?3@A??@A?K$@A?Z)@A@@@@@@@$_3272M접?~@1x6[$_328'`o@?@16[N"@@"""""""@@@@@@@@AAAAAAA=@@@@12 Q@@@@$_329?@1(AA@@@@@?zB@A?K@A?@A? @A?@A?@A?@A?ʐ@A?֐$@A?)@A@@@@@@@@@@$_3302M접@ @1(䐐$_331'`o@@@1(Q#)@@#(#*#,#.#0#2#4@@@@@@@@@@@AAAAAAA>~@@@@@@@22 Q@@@@$_332@W@2?:AA@@@@@@B@A@K@A@$@A@0 @A@<@A@G@A@R@A@^@A@j$@A@y)@A@@@@@@@@@@$_3332M접@@2\?:$_334'`o@@@2f?:Q#@@#### #Ġ#Ơ#Ƞ@@@@@@@@@@@AAAAAAA?@@@@@@@22 Q@@@@$_335@@2.7M&AA@@@@@@B@A@K@A@@A@Đ @A@А@A@ې@A@@A@@A@$@AA )@A@@@@@@@@@@$_3362M접A4@2.7M&$_337'`o@A>@2.7M&Q$Q@@$P$R$T$V$X$Z$\@@@@@@@@@@@AAAAAAA?@@@@@@@22 Q@@@@$_338A@3$AA@@@@@A6B@AAAK@AAL@AAX @AAd@AAo@AAz@AA@AA$@AA)@A@@@@@@@@@@$_3392M접A@3L$$_340'`o@A@3V$Q$@@$䠐$栐$蠐$ꠐ$점$$@@@@@@@@@@@AAAAAAA@:@@@@@@@3r2 Q@@@@$_341B@3} 3AA@@@@@AʐB@AAՐK@AA@AA @AA@AB@AB@AB@AB&$@AB5)@A@@@@@@@@$_3422M접BZ@3 3$_343'`o@Bd@3 3O%w@@%v%x%z%|%~%%@@@@@@@@@AAAAAAA@ʠ@@@@@32 Q@@@@$_344B@36 ^AA@@@@@BXB@ABcK@ABn@ABz @AB@AB@AB@AB@AB$@ABÐ)@A@@@@@@@@$_3452M접B@446 ^$_346'`o@B@4>6 ^O&@@&&&& & &&@@@@@@@@@AAAAAAAAX@@@@@4V2 Q@@@@$_347C/@4az|AA@@@@@B搐B@ABK@AB@AC @AC@AC@AC*@AC6@ACB$@ACQ)@A@@@@@@@@$_3482M접Cv@4z|$_349'`o@C@4z|O&@@&&&&&&&@@@@@@@@@AAAAAAAA@@@@@4ˠ2 Q@@@@$_350C@4-AAA@@@@@CtB@ACK@AC@AC @AC@AC@AC@ACĐ@ACА$@ACߐ)@A@@@@@@@@$_3512M접D@5-A$_352'`o@D@5'-AO'!@@' '"'$'&'('*',@@@@@@@@@AAAAAAABt@@@@@5?2 Q@@@@$_353DK@5J7AA@@@@@DB@AD K@AD@AD$ @AD0@AD;@ADF@ADR@AD^$@ADm)@A@@@@@@$_3542M접D@57$_355'`o@D@57M'@@'''''''@@@@@@@AAAAAAAB@@@52 Q@@@@$_356D@56LAA@@@@@DB@ADK@AD@AD @AD@ADÐ@ADΐ@ADڐ@AD$@AD)@A@@@@@@$_3572M접E@56L$_358'`o@E"@66LM(5@@(4(6(8(:(<(>(@@@@@@@@AAAAAAAC@@@62 Q@@@@$_359E[@6 !AA@@@@@EB@AEK@AE(@AE4 @AE@@AEK@AEV@AEb@AEn$@AE})@A@@@@@@$_3602M접E@6d !$_361'`o@E@6n !M(@@(((( (Ġ(Ơ(Ƞ@@@@@@@AAAAAAAD@@@6x2 Q@@@@$_362E@6+HAA@@@@@EB@AEK@AE@AE @AEȐ@AEӐ@AEސ@AE@AE$@AF)@A@@@@@$_3632M접F'@6+HԐ$_364'`o@F1@6+HL)D@@)C)E)G)I)K)M)O@@@@@@AAAAAAAD@@6ݠ2 Q@@@@$_365Fh@6-V0@FB@AF)K@AF4@AF@ @AFL@AFW@AFb@AFn@AFz$@AF)@A@@@@@@@@$_3662M접F@7.-V0$_367'`o@F@78-V0O)ˠ@@)ʠ)̠)Π)Р)Ҡ)Ԡ)֠@@@@@@@@@AAAAAAAE@@@@@7U2 Q@@@@$_368F@7`<AA@@@@@FB@AFK@AF@AFΐ @AFڐ@AF@AF@AF@AG$@AG)@A@@@@@@@@$_3692M접G<@7<$_370'`o@GF@7<O*Y@@*X*Z*\*^*`*b*d@@@@@@@@@AAAAAAAE@@@@@7ɠ2 Q@@@@$_371G@7-V,{AA@@@@@G:B@AGEK@AGP@AG\ @AGh@AGs@AG~@AG@AG$@AG)@A@@@@@@@@$_3722M접G@8-V,{$_373'`o@G@8%-V,{O*@@*栐*蠐*ꠐ*점***@@@@@@@@@AAAAAAAF:@@@@@8:2 Q@@@@$_374H@8E&(AA@@@@@GȐB@AGӐK@AGސ@AG @AG@AH@AH @AH@AH$$@AH3)@A@@@@@@@@$_3752M접HX@8&($_376'`o@Hb@8&(O+u@@+t+v+x+z+|+~+@@@@@@@@@AAAAAAAFȠ@@@@@82 Q@@@@$_377H@84AA@@@@@HVB@AHaK@AHl@AHx @AH@AH@AH@AH@AH$@AH)@A@@@@@$_3782M접H@84$_379'`o@H@94L,@@+,,,,, , @@@@@@AAAAAAAGP@@92 Q@@@@$_380I$@9$(hKAA@@@@@HېB@AH搐K@AH@AH @AI @AI@AI@AI+@AI7$@AIF)@A@@@@@@@@$_3812M접Ik@9k(hK$_382'`o@Iu@9u(hKN,@@,,,,,,,@@@@@@@@AAAAAAAGڠ@@H@92 Q@@@@$_383I@9$[AA@@@@@IiB@AItK@AI@AI @AI@AI@AI@AI@AIŐ$@AIԐ)@A@@@@@$_3842M접I@9$[$_385'`o@J@9$[L-@@-------@@@@@@AAAAAAAHc@@92 Q@@@@$_386J7@9FAA@@@@@IB@AIK@AJ@AJ @AJ@AJ'@AJ2@AJ>@AJJ$@AJY)@A@@@@$_3872M접Jz@:9F$_388'`o@J@:CFK-@@-------@@@@@AAAAAAAH@:W2 Q@@@@$_389J@:b+D\AA@@@@@JpB@AJ{K@AJ@AJ @AJ@AJ@AJ@AJ@AJ̐$@AJې)@A@@@@@$_3902M접J@:+D\$_391'`o@K@:+D\L.@@.....!.#.%@@@@@@AAAAAAAIj@@:2 Q@@@@$_392K>@:;,AA@@@@@JB@AKK@AK @AK @AK#@AK.@AK9@AKE@AKQ$@AK`)@A@@@@@@@$_3932M접K@; ;,鐐$_394'`o@K@;;,N.@@.......@@@@@@@@AAAAAAAI@@@@@@A Zl)+>V@`V}y0RVH@8 E&*ކVq@Ʌ1⊄SR/!R PQU+OrderedRing)micromega#Coq@@@"rOA"rIB%rplus@C@DE&rtimes@@F&rminus@ @G$ropp#req@@HA#rle@@I#rlt@@J#sorC@#SORL@( $*01384I @5sor_setoid_Transitive44$+Ring_theoryE@+ring_eq_ext@A $ENZ[@*proper_prf4>M@,@)  /fP=@2rplus_morph_Proper9 8  aE@3rtimes_morph_ProperAw@  uM@1ropp_morph_Properw€H+@(Rth_ARth'\,L_emv|k4Z@%SORrtU'BinNums'Numbers@!Z7@ AB@(positive*@C&BinInt&ZArith@#add1P&)BinIntDef @ ̀@#mul1P] @ @#sub1P@ p@#opp1P@ {%Zbool!@(Zeq_bool0߀+InitialRing@(gen_phiZA֩ @.gen_phiZ_morph0Z[T@!N7@@(id_phi_Ny@%pow_NH⩚@(pow_N_th8ޚS@'quotrem\M@/ŀ/@,Ztriv_div_th 16"  詚@/ring_rw_correct)a2Ut td^XRJ@:4/(!I@)get_signZ#7N@,get_signZ_thW@>20/-,*%#   멷"x1緐"x2R"H1 "y1T"y2U"H2%lemmaQZS@=trans_co_eq_inv_impl_morphism&ni$X,WV S)#]j _.ny@/eq_proper_proxy)f&@(Rsub_def&AI,37?)(,59A+*7;)y0-F@4"1@>trans_sym_co_inv_impl_morphism'\|.;l@/Equivalence_PER/;5Bn@*sor_setoid5Z93/Sa;*,>=X\<dNM%SPL$GTF?_?EDKHGbfFnXWdhAAU@6reflexive_proper_proxy5R_QIFUheéa$\i[!f@>Reflexive_partial_app_morphism 2R,c@dYroggtt~cféjw`-V8lihgyx11کl{SLC{ȩqpConCC۷ַַϷȷ÷!n!m#@#notШ@2subrelation_properJ7(!A==.Morphisms_Prop@0not_iff_morphism ZG&Basics'Program+@$impl7o)DatatypesS@$unitUe@A@6subrelation_respectful>6z bb@0subrelation_reflv ii"@4iff_impl_subrelation5:;<<@8per_partial_app_morphismp&(, $*2;AGHGSTP%5,)/7@FLMC`Ynl`^][ZXSQNLILGE@>;964v&Ȑ(hyp_listE@$list]@AM@$prodt@f@%PExprk@Ȑ'fv_listB-$/ ^@/SOR_ring_lemma1YHI7SWjpx(Ring_tac@0ring_subst_niter!&E+A'/D@$Truey@A@"eq @A@$boolZ'@A@ Ȑ#lmp@.mk_monpol_list(C85) өSegI@#Monf@@#Polj@g@#Peqj*]!@*norm_subst7:d0dYVJ:4.(_W0f[XL<60*aP4 ޷ٷԷyxHs kzdhd_X@FQDB;(D#0wthXRLF} P*(  2H($G}v@dob`YFbA0vpjd34 C0xrlf56pJH<:9764/-*(%(#!RP@GH !'/8>DPLB@to0abq0cd xvjhgedb][XVSVQOJHEC@>0 H&04GMU^djkvrNȵ@0~ K}xvsqnqljec`^[YKH&$ ICH>B0LPciqzjBk;@̰ʩ0 0  ؐ}zxjg@#andЖw@A@ot@r]x kZX?<:r<t]vF9Hly}k4#,;TF$@  E 0G<9- BC-SetoidTacticsx@0default_relation ͩ @3equivalence_defaultúԩJ,2#Heqՠˠ(ԩݠ$ک,]DZ     $  @)Rplus_0_l w0 C@Q I&:2驷{$? 11@3rminus_morph_Proper&D )/568A88":ɠF~H!)28JF{@yfa0ST  hfZXWUTRMKHFCFA?:8530.p n!p@R*md,okOv@Q.qj0t/"qv H$#04">BU[clک򩜠 H93ܵ@ð0CAtgP$r;=:(BsSc-VRA?&#!c#eDg- HBjTS`dRnr 0)CVѰXjl ͩos4 X/Z*,\nmz~lnortvة} v$|,n~̩ɩ!,@~8   y,%C@\,>4C@(ܩ jVַN$nD,@ [      .,    @*SORle_refl/€A?310.-+&$!  @.SORle_antisymm췵TRFDCA@>9742/2-+&$!@+SORle_transBAgeYWVTSQLJGEBE@>9742/-,@0SORlt_trichotomy l'zxljigfd_]ZXUXSQLJGEB@?@,SORlt_le_neqϤ€:}|zywrpmkhkfd_]ZXUSR@*SORneq_0_14XM~{~ywrpmkhfXUȐ!oj@.Rlt_trichotomy4C_cv|@"or @c fC BAAAA@@@@@D@SʐUĠ~ "B\ BBB@@@@D@&  栩@*Rlt_le_neq*45A@OR WA' ;*@)Rneq_symm!*8?@8SVNB^ܰVIY :4 #&:8,*)'&$  B@@&Req_em/F@JoNH@ @ߩVw M㵷@@%Falsee@\C@)False_induُ# {ymkjhge`^[YVYTRMKHFCA30ͩq2]_Q@/iff_equivalenceZuϩ䠩Kө{@/or_iff_morphism3 کtf@-iff_Reflexive/hᠩ@$@)Y\( o4WEaex~g@ga>kdn_@.q.@qfwdR4@c@ebf@gei@0rle_morph_Proper~mq os@$flip$ |~    }@9iff_flip_impl_subrelation2VA۩.詚@(Rle_reflxNJ0搑ڷӷηɷ  ,Gx4䶐!B@6@9iff_iff_iff_impl_morphism8C =?A AA CCCE8:E@dH8zũMPܩ.ީ`, %U$@ (%"ZvZ\@]y;p+8'/6fV4'-34;?l8<Eq6P3,+Gw:0"y@z06Y+9,4PE9J%6' C"c=%^x428@IOUVXa@@oApD\cvBq'-3K5@x?ЩBdsB"H3"H4L{Pn8f@)Rle_trans4hY@O/WA@MQ?[_rx[ Np@,Rle_antisymm%1ʽ<UY9aKJW[IeiP^4@A@CPD@EbSGdh,IdhHpZYfjXtWKhYMj O llQn  Spp UryC4ݷϷ̷ɷ·wyVW,@:u8D;젩@)Rle_lt_eq4ر4@)Rlt_transZ@4@@@ũ3ਗ਼@0rlt_morph_Proper. ϩ? өݠ CE8     a٩  0 . "               86ʷqt}@ZQש_U :N4    % + 2 4 =gI@    ) / 5 6 8 A٩˩{,@ 5 ?FD ?9!5 0 / 2 > 8  N ; A Mᐑ a _ S Q P N M K F D A ? < ? : 8 3 1 . , ) 'i g @k a ho Ġ mt q @Ϡ] v 0 }a<  9j          | z w u r u p n i g d b _ ] O L74yo  TT vV D Ϸ@ $_tmp Y                      } { m j@7@2 q=od @,Rle_lt_trans=@ o s a }            é    @'Rlt_neqUf< k x | j          ̩ m  C 4 @,Rle_gt_cases2B01R'@{ ڠ ܷ}        ݷ  ַ  ѷ  ѷ  ʷ  ÷      A@D @ < L @,Rlt_le_trans KV@?=C h44             aLW@e .+ /G3  & $                    . ޷, ۷ u@ @ P @1SORplus_le_mono_l Ȁ z  <           &Q 2  U   1  ,Ӑ H          " C ?@}{ta}\0N O ^0P QCv  *N Gc ( F ԩҰ L԰ HH       # 6 e a"C %k Uw % T0@ M   O T +j@"@ S %   ' W   3 *  UK ,  F.  O 0 `   eC Y2 " [ c }8 @  _  ] }6 & |C@ E t G\C@ 0 a ~ b`               ~ | w u r p m k ] Z= ?F  db;  )Щ  er f ;D \ ` N j n      =  ^ \ @*Rplus_comm4Y^  | sQ*  A, n@ o   ` q    oS t rUS Ƞ @/Rplus_le_mono_l      Է  ѷ  η  Ƿ  ·  ·          | ~|$   @.iff_Transitive*z   xp Ω  ͩb  "y$$թ 4            ,Io  /1 1E>,  34@0and_iff_morphism ƳV  :zN  @.Rplus_cancel_l5Wd e F  IKKI   M @-iff_Symmetric!xP (ffp  Tha   W A ? 3 1 0 . - + & $ !           I G  ۩  kb 0 1: ' sj`,  * 9B L @/Rplus_lt_mono_l6U  g e Y W V T S Q L J G E B E @ > 9 7 4 2 / -o m  !q   r@      $ ( ; A I R  ' R & :@/Rplus_lt_mono_r6[j  ,   8 9 9  3Ȑ!a i 7 , R ! 3 ܩ B @F A @  k : 7 * 8  / P  1 # T  % L o ' C Ġ L W [ N N [  P ׷@Р@ T G c I ; ] g =@ \ \ Q q ^ T f T   p@ [w  { vq ` w^ P K  g[ hZJ   tH Yh z #  e dT   ~Rq   v  թ x j   lp`  n ^          @@    E A@ C   ɩ ]   ^@  V  ѐ                    ߷  ڷ  ̷  ɷ   : ީy@            Ω @/Rplus_le_mono_r& +  ) Զ  Jv     0  ԩ Q  c     ש X      ^  l@e@  @   A @  }> W  U  ٩ v  C  ζ \ ߶  },  D  ն     .  ܩ  ~ }@@ y x@ v  l &Ѷ@ 's   w u t r q o j h e c ` c ^ \ W U R P M K  =  :  2 7 ,O@ & % 2 6 $ @ D W ] e n@          } z x u x s q l j g e b `  R  O2 43 G L Aߩ@ ; : G K 9 U Y l r z 10/ސ                   | z w u  g  d _  g  V  N  U  o f f f 4  g  e X g g { \  v l j  ] z  ` 0 p t b ~        t @-Rplus_lt_mono(D w { i         {  {   ː  ݷ  Ϸ  ̷  ɷ  ·                 0  .- @0Rplus_lt_le_mono.7M&          ܷ  ׷  ׷  з  ɷ  ķ        J IG7 @0Rplus_le_lt_mono$5                    ޷  ٷ  ˷  ȷ  4 ` 4QO JD 9 [YVVUS @-Rplus_le_mono?:Q / - !                    7  5 䩷 ϩ W #  .    5 $  aS &  2  ̩  : > - ީ  ? Ǡ !.8      % . 4 : ; = B F     ©   C  H       % - 6 < B  N J       @     } j   e0         W  X  $ C}  Hu  J ,    / 5 = F L R S U. n J*  ( C  N " ^ A  % c U D    * . A G O X ^ d   p   Q  [ $ F o  U 0       r   s H !  - 1  ; ? R X ` i   }    Ե @         0             0            C ; na% j 3  hҩ Vܩ 2( x  r ; M  ]Ω w @ \۩ , D u A F  w  } F  I z H     /   |  C@ O  ۠C@ e | S RE  ɷ                         k   e$    Ω  U d |v q(   t nm j c  hSQ }(   K G , % E ȩ CNI  p    XC@A   C@? Ð              ߷  ط  ӷ  η     V@Y   ζ@ Q a 8            >Y  ֠ ؠ P@I@A    Š@ 栩 &$ (O 4 @M 6 ©  4. 6       ' H         JF   }      @     { h   c0         U V  e0         W X C } ^ |MG pJSJ       C  K    H  # '  /%)3 yu ذ / )6 ̵ @         0            0          @ C  5%  7' +9?goo  D L7Fqq 0 +H: < x?  1N 1EFxx 8G   8i     <Y C@  Z` ˰ \b , ^ b B jTS`dRnrS C@  Gs.TNxlR. uhq8p^z~G MO@@ fpr?@Š  tݐB@ FŠ 9N   k h ^H    Y Q `  n J E >@ , 7 * ( !  f * 0 h ] Z N > 8 2 ,  c   6C !  o      |H      w  o ~   c \@ J U H F ? ,  H '0  { x l \ V P J    TC ? V /Ӡ ۠ D ^0 tm q e  ?. '8}v r ) z n (C@ Z I C@ ^ 5s PNB@?=<:530.+.)'"  X wFPHAB # 4שL&NVPE,^+@,Ropp_lt_mono !4 $7=ENTZ[]bf$      ٩ H &*=CKTZ`a lh      @         0         u v  B C 2l 4n ,6:MS[djpqsx*: n%;  ax#Jzg MD:(DH[airx~(OO <tS R^m C@ 086L czxuspnm@0SORtimes_pos_posYπh s p k· ` @ nm| } g   w &Ϡ4~pΠ  #@ 1  {{ ,      ֩ @ ٩ 頩4蠷   Mʠi V4& @.Rtimes_pos_pos-V0<  3 & E,   H   [ Ơ N, ϶@  ة  ̩      ũàũ ], "(@*Rtimes_0_r(C!0 թ] թ  Zީ BV4$-   } ,- {& H@L%+'  / % )) +  ) :--{ ND 06>GM2 XPbVV Pc=" K , ;A  j7@*Rtimes_0_l(C JU ѠaQHF|4+/9=PV^gm++  R"Z Y/|zwurupnigdb_] O LG<4Oc@,Ropp_pos_neg+HԀ F JɠNt rQ'EQ%ҠJj {M @ ܠ@Upfp@]u^ {&@Uxiǐ f d K H`Z >Ha|`rq~p 9Ω L@ B S & @      G  0I>;/  D  0K@=1! F  C Z( _%0;  CAVA ϩ  C8B  :$ & B6b<dmL1 ک :  K@ D@ O@ĠT &@ ᠐Z e/ C@ UJGѠ8 HF:87542-+(&#&!PN     ? B  ̩ H   &.7 OK  '    @     ~ k  f0X Y  C ~: - b~ n920 8F`HBkg<   '+>DLU& e~J/ DMw`.#M3 MP6 @ @DBZ7@IcG< I@ 1>N('MB ͷ@ Ơ@\-ZxO@a2_T  a@ IV CC@ O M ·| # !4{ / 2y @ $  &"vn Р'w 1   Š :㠩4  <  :@ Hؠ9., 2 'ة 8 6 1 + CzDDE堩S?, C 8  I9\ l_` 5 +4ʩ T η.ĩLGD C+ + ?4 "P 3ON@.Rtimes_neg_neg&(<%+,,77KI=;:8750.+)&)$"SQ sQ:T=P  @ ~\?e_Bũb<^  iC\ ʩ 4"&9?GPV\ àS` ǠF @ ̠SO ϠHRWg:|    47! -1;?RX`o! ܠ[s% ࠩF`*x ٷ@ 砩`xF 렩MeK}6'   8K+S=<IM;W[n+ԩ8M-U?>KO=Y]p-֩o<O/WA@MQ?[_rxZ @ Ef7\[ "  O^ % 8^bBjTS`dRnrbYgΩY4  Zs|hhĠ@+Rtimes_comm%`4ptT|fervd@.Rtimes_pos_neg-V,{<w{[mly}k·Z @ +uݐ ؠ P ? =4k}|{Q ,@ :?=8ᠷ VA <vC 6@ DLũ g   k  o& ^n I p[ 889<^ Q x  { 8  E8<"  *յH "x un@\gZXQ>Z290~nhb\+, fCQ".@"108 4 0c@,PER_morphism qj  / +57$&  ?D!)28>?8 #+4:@ACL6C_D ,@2<4>J Mj NW ; ީL79RTg0$(;AIRX^_/#eH",0CIQZ`rnPõ@NC*b4q]t(_jUW3p5 D*7;)EI\bjsy 8,9=+GK^dlu{99m`o  C@@sf3eC@7?dĠ[Mj|zwua kif 4.kgX,M 1j`[/ܠe ᠩ @ 頶@} dq͐@ Ԑ А 4@vuא+㐩 xv]Z  PHrKੜiBeV;4@"- \ 0^SPD4.("Y0`URF60*$[ .C 40  -    ީ      3 5 (Q @4Rtimes_square_nonneg40C@: Ҡ詚@(Rneq_0_1%5 31%#"   ;멷ҩ$ 2+4@ն@&(d/ 1ީ+- k  // 1  #33o q dA6EI ,@=??"BQ50)/7@FLMOTX˩H/5=FLRS^Z|~@|w0ij y0kl C(bFA?HCrd-.0)&a+Yc ot@. 0-h,t*2/j [Q 41llL6n2 U 8fpp  G;sJGLIH "B?03 avI UJO KGF <:>ɠxO _I %PDO #B\Ѡz`|LdNd 1>[ /ܠrsWFY  @ 砶@ynN_QnSt@y[ly}ϐ 4@dҐ@'Rlt_0_1FSC@~ՠZWٷԷԷͷƷE @I@*Rlt_succ_r+D\0L#wn6hk