From 098a53893409b402cc3922cf4702c1b6f4a72cab Mon Sep 17 00:00:00 2001 From: Mikael Mayer Date: Tue, 27 Aug 2024 10:36:17 -0500 Subject: [PATCH 01/14] Release Dafny 4.8.0 --- RELEASE_NOTES.md | 31 +++++++++++++++++++++++++++++++ Source/Directory.Build.props | 2 +- docs/dev/news/5562.feat | 1 - docs/dev/news/5587.fix | 1 - docs/dev/news/5589.fix | 1 - docs/dev/news/5631.feat | 5 ----- docs/dev/news/5632.feat | 1 - docs/dev/news/5638.fix | 1 - docs/dev/news/5645.fix | 1 - docs/dev/news/5650.fix | 1 - docs/dev/news/5655.fix | 1 - docs/dev/news/5662.feat | 1 - 12 files changed, 32 insertions(+), 15 deletions(-) delete mode 100644 docs/dev/news/5562.feat delete mode 100644 docs/dev/news/5587.fix delete mode 100644 docs/dev/news/5589.fix delete mode 100644 docs/dev/news/5631.feat delete mode 100644 docs/dev/news/5632.feat delete mode 100644 docs/dev/news/5638.fix delete mode 100644 docs/dev/news/5645.fix delete mode 100644 docs/dev/news/5650.fix delete mode 100644 docs/dev/news/5655.fix delete mode 100644 docs/dev/news/5662.feat diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index a934cb41aa..2e52b713df 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -2,6 +2,37 @@ See [docs/dev/news/](docs/dev/news/). +# 4.8.0 + +## New features + +- Introduce `hide` statements that enable hiding the body of a function at a particular proof location, which allows simplifying the verification of that proof in case the body of the function is not needed for the proof. `Hide` statements make the opaque keyword on functions obsolete. (https://github.com/dafny-lang/dafny/pull/5562) + +- Let the command `measure-complexity` output which verification tasks performed the worst in terms of resource count. Output looks like: + ... + Verification task on line 8 in file measure-complexity.dfy consumed 9984 resources + Verification task on line 7 in file measure-complexity.dfy consumed 9065 resources + ... + (https://github.com/dafny-lang/dafny/pull/5631) + +- Enable the option `--enforce-determinism` for the commands `resolve` and `verify` (https://github.com/dafny-lang/dafny/pull/5632) + +- Method calls get an optional by-proof that hides the precondtion and its proof (https://github.com/dafny-lang/dafny/pull/5662) + +## Bug fixes + +- Clarify error location of inlined `is` predicates. (https://github.com/dafny-lang/dafny/pull/5587) + +- Optimize the compilation of single-LHS assignment statements to allow the RHS to be a deeply nested expression. This solves a problem in compiling to Java, since `javac` does not deal gracefully with nested lambda expressions. (https://github.com/dafny-lang/dafny/pull/5589) + +- Crash when compiling an empty source file while including testing code (https://github.com/dafny-lang/dafny/pull/5638) + +- Let the options --print-mode=NoGhostOrIncludes and --print-mode=NoIncludes work (https://github.com/dafny-lang/dafny/pull/5645) + +- Verification in the IDE now works correctly when declaring nested module in a different file than their parent. (https://github.com/dafny-lang/dafny/pull/5650) + +- Fix NRE that would occur when using --legacy-data-constructors (https://github.com/dafny-lang/dafny/pull/5655) + # 4.7.0 ## New features diff --git a/Source/Directory.Build.props b/Source/Directory.Build.props index 7a84fbde9b..df8725f3a0 100644 --- a/Source/Directory.Build.props +++ b/Source/Directory.Build.props @@ -1,7 +1,7 @@ - 4.7.0 + 4.8.0 1701;1702;VSTHRD200 diff --git a/docs/dev/news/5562.feat b/docs/dev/news/5562.feat deleted file mode 100644 index fc1f5198b4..0000000000 --- a/docs/dev/news/5562.feat +++ /dev/null @@ -1 +0,0 @@ -Introduce `hide` statements that enable hiding the body of a function at a particular proof location, which allows simplifying the verification of that proof in case the body of the function is not needed for the proof. `Hide` statements make the opaque keyword on functions obsolete. \ No newline at end of file diff --git a/docs/dev/news/5587.fix b/docs/dev/news/5587.fix deleted file mode 100644 index 4bee448a1c..0000000000 --- a/docs/dev/news/5587.fix +++ /dev/null @@ -1 +0,0 @@ -Clarify error location of inlined `is` predicates. \ No newline at end of file diff --git a/docs/dev/news/5589.fix b/docs/dev/news/5589.fix deleted file mode 100644 index 1af9c03533..0000000000 --- a/docs/dev/news/5589.fix +++ /dev/null @@ -1 +0,0 @@ -Optimize the compilation of single-LHS assignment statements to allow the RHS to be a deeply nested expression. This solves a problem in compiling to Java, since `javac` does not deal gracefully with nested lambda expressions. \ No newline at end of file diff --git a/docs/dev/news/5631.feat b/docs/dev/news/5631.feat deleted file mode 100644 index 70a4d27e91..0000000000 --- a/docs/dev/news/5631.feat +++ /dev/null @@ -1,5 +0,0 @@ -Let the command `measure-complexity` output which verification tasks performed the worst in terms of resource count. Output looks like: -... -Verification task on line 8 in file measure-complexity.dfy consumed 9984 resources -Verification task on line 7 in file measure-complexity.dfy consumed 9065 resources -... \ No newline at end of file diff --git a/docs/dev/news/5632.feat b/docs/dev/news/5632.feat deleted file mode 100644 index 344a92fc60..0000000000 --- a/docs/dev/news/5632.feat +++ /dev/null @@ -1 +0,0 @@ -Enable the option `--enforce-determinism` for the commands `resolve` and `verify` \ No newline at end of file diff --git a/docs/dev/news/5638.fix b/docs/dev/news/5638.fix deleted file mode 100644 index a9766728ba..0000000000 --- a/docs/dev/news/5638.fix +++ /dev/null @@ -1 +0,0 @@ -Crash when compiling an empty source file while including testing code diff --git a/docs/dev/news/5645.fix b/docs/dev/news/5645.fix deleted file mode 100644 index 19b4b1af42..0000000000 --- a/docs/dev/news/5645.fix +++ /dev/null @@ -1 +0,0 @@ -Let the options --print-mode=NoGhostOrIncludes and --print-mode=NoIncludes work \ No newline at end of file diff --git a/docs/dev/news/5650.fix b/docs/dev/news/5650.fix deleted file mode 100644 index 0745e66f11..0000000000 --- a/docs/dev/news/5650.fix +++ /dev/null @@ -1 +0,0 @@ -Verification in the IDE now works correctly when declaring nested module in a different file than their parent. \ No newline at end of file diff --git a/docs/dev/news/5655.fix b/docs/dev/news/5655.fix deleted file mode 100644 index ff4ac95cea..0000000000 --- a/docs/dev/news/5655.fix +++ /dev/null @@ -1 +0,0 @@ -Fix NRE that would occur when using --legacy-data-constructors \ No newline at end of file diff --git a/docs/dev/news/5662.feat b/docs/dev/news/5662.feat deleted file mode 100644 index 15c238b1d5..0000000000 --- a/docs/dev/news/5662.feat +++ /dev/null @@ -1 +0,0 @@ -Method calls get an optional by-proof that hides the precondtion and its proof From 2d8f49a9e367e401c3c645e863a229678139a094 Mon Sep 17 00:00:00 2001 From: Mikael Mayer Date: Tue, 27 Aug 2024 13:49:43 -0500 Subject: [PATCH 02/14] Release steps --- .github/workflows/nightly-build.yml | 8 ++++++++ .../binaries/DafnyStandardLibraries-cs.doo | Bin 1523 -> 1538 bytes .../binaries/DafnyStandardLibraries-go.doo | Bin 1545 -> 1557 bytes .../binaries/DafnyStandardLibraries-java.doo | Bin 1504 -> 1525 bytes .../binaries/DafnyStandardLibraries-js.doo | Bin 2052 -> 2043 bytes .../DafnyStandardLibraries-notarget.doo | Bin 1499 -> 1507 bytes .../binaries/DafnyStandardLibraries-py.doo | Bin 1515 -> 1521 bytes .../binaries/DafnyStandardLibraries.doo | Bin 57166 -> 56887 bytes .../LitTest/gomodule/multimodule/test.doo | Bin 624 -> 664 bytes .../multimodule/PythonModule1.doo | Bin 765 -> 664 bytes 10 files changed, 8 insertions(+) diff --git a/.github/workflows/nightly-build.yml b/.github/workflows/nightly-build.yml index 311a065671..dff45497ed 100644 --- a/.github/workflows/nightly-build.yml +++ b/.github/workflows/nightly-build.yml @@ -28,6 +28,14 @@ jobs: uses: ./.github/workflows/nightly-build-reusable.yml with: ref: master + secrets: + nuget_api_key: ${{ secrets.NUGET_API_KEY }} + + nightly-build-for-4-8-0: + if: github.repository_owner == 'dafny-lang' + uses: ./.github/workflows/nightly-build-reusable.yml + with: + ref: release-4.8.0 publish-prerelease: true secrets: nuget_api_key: ${{ secrets.NUGET_API_KEY }} diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index a679c43d9cbf1d0f0d8d7eb91e579ea58f81d5ae..e6ab0867b0d530f4eb5de531e3d99b53fcd28ddb 100644 GIT binary patch literal 1538 zcmZ{kdpOez7{|A<%Kfs5a*E?pWQfF+iE^Y+!$Fe?A(PELbzDXa6Dqe+wqv;~k-LVF zOReK4m$@x-7mB9CL8Bc#&v~A6>Uqxl{_#HF_kF&9eV_M(wiFPAgFv7?AcDI*CMNPt zU;r2dT7iH-Vmn*B8v*C#85FD)?1%To+nN&ObwnF^GOZlXcD#7gsw}ETP1O9+4f6Sc zxO5-hI(_izPrI7{(X%=9)9PIoLU)Na>B6TXh!4bh?{Tt3!vojM`s*lx`R66A4{AE_(l75#na)igtgijus z`0&0Lwg=V|ip+XDq6F6-lO4%iiwy+_BBpvRs(|+VTmH_3JOQcLT;Q;G;-WAkDMX#l zw#QK~`sN~Ht z$pCE4BJ3{04N|OOjIubsKZ!1nCC!a|ZD|?b|1Of5H6o)woKFJ;RUW!|;yrFbL__n$n9v$l;`6nPwUJf^`^v*sc2r=3ocz83TM9 zsd5d-etAZGdkXsMcx1O>*n|qz>X7=KJA#us?PX@PrGcV^0z><&>nc+9F&RlQRjdcx ztt3yIRzojo4X^xlkCt43;1CMSIP;-mu~V_Y%EAzpWK8j%UN!b$#s7kc4e8HDZNXL?WFn5As|uAyK~b( zXTI7HV)^#vsnE&IQezC)Dyq(gAFqf8GDV1p4Q-`g8|#GJ7V^~uJLzxgPeo6;xQe{c zQ_gH%LdIBHmusne!-?I|>v$c>NI(0lniw|20+?^iJRi~tT7NMIv(=)v7lFG2X z3iA%Kq!ZFO={(N)%)a>pY=98i8(>f~QmDux@)KvPqb^vB1KfinBvb*>wRcWP z^)6&FeEPBRH8Qpcqwc~wPA>-)6ZQvD>nU+gmi;*aLWnNWs~c_SXv(s@QY+27DW6p* zO-KiyUL2e$X8N229fd(14Omqt9@(4OQ?SgH%ckt>AB3buLV|3qnPyd496R4+mI)P^ zqN|xd4i3beION^H$>@F+H1R=vGVUYsm9YjYXv^8@0WR0e)p$t6NjLbnG0p9O(BeXp ze_H+Ar=sbZp!Nm41?qIoWuU?-erX{X6UP8@jn|XXRHDVU@*;7&PQcqF{Vhpw^kR<_ zCHXnP)=de0Z0g#CW>q4=xW+Q7t$WFNL`BEt5J5fpnQxT(igdLT;oW=V=U zx9gednE0rh-J4a=1~*@{mSx&!bmN`(u;N%>kEq#W@70p7Hu5v1B zsP<}35U>GX4t7sI3LQ{(oC3EQUfN5^UdE{y8Z=o8QWX4v@>9**+?t1}{Lz`Z@F>oZ z+LvrN2#CAodep# zddXwqutnMpqcM*ID+8Q4UYgxF*1;hRb<&uS^VS!a=5enTmaN}4FW1PILY5Bk3;Kv9 z-P+q*f@n)H1P=Ot`tCgWf9g9H|7iUY4*&Xcc5wa=D$thDUEdCno%Y|E;m~jDZ<^-J A6951J delta 1490 zcmZ9MdpOez7{|BSY_2Ef*0Mq~6*{VQS)I!DkfFJ*<)BfdHoLG$XZxMdVAa!RtOKjU50GX=j6C7E31R%VJ8 zmL8U;AohLKR2RZ__Z*oM|K;mKaeHJegEVl1b|=_1+=$N%y ztUiaE@bJhZoqxb)yFkrLr#145ZZ&QU6S==;`5zod3O%gzh%WGQ9IKWa0F&MYV{SUb z!F4wtBbV6KndBA|W=d=q&7%Pt!-dRe%v5?=Ax4j8(Ni`#5}q`-G>~2^wZ+Fe>=yM7 zi5%L2Otip2R|9SAbq_Jz?j^F(oA;;rcWoi<2#Uf}H#4fOG3_f&nMapj9w6P)Ja=X3 zZYqGg$yHuaS+=nr+cy~D=f(~Ob4ShT*ovIiJyPB*^K~%*{0nh3BIOR z|74Z-esG#^`P27q7>1hG%J}3o%a;@8goN~H4-CU&t^Q>Ibo?C!y29BRVg39hwvCoF zjuEwsCVJ3K^5yMn9n&bFhQ7J==~E8K#?eD$jMP6ldq>%e;yzhbq}cp?w2iJ8<8o) zS0(xlF1tU71WScB!ex{p4_#Jp{m@KO4jjw|6qJfT_xU}G3`p&r&FdtAsB~1c=vgkW zs+g&~2^EAUn5!5UuHJ7B3&7^W3G+h6Wyha$t&Z1ZkJg%kE}l)V$baK9;Y}E>d{wd6 z^iD)gRA5vlu{1wB^<9EHZ@{}!%D0#95NzHm83*;*NU^2t+qU^xC0)I?jWco}n*&_f zRkgk*{7o79qL#j%yM7sdt>nm;}2 ziO_1@eI-y7N&B?zXl<`NnKc(PfY0c!etF<_y!baECcY~3^?eT$idO`=tApg4TQFF_ zsrLi#UCdl}9-k)9&(^Q=E9MKabB0uM9P=K2WO;T^{S)!dr1xhgvtKMeqypNdwvU=Q zh7#BuufoXgE{O_1vFfJg&U<0TtnR4*86R(n#~YLs1r@e#pK<_Klzt&7jnuz*^^~_! zz10n_=@yPLQ!LV6NtCsATNJ4dK8hj}AA!B$mJcQG_*3es!wqQvOKP{Rz5kiK1wF5E zt_L=hW4H10f*w50hA1@``np{*m7+*UL_HFtXXw;}y diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-go.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-go.doo index d5f9719c6e60a94b5a40ab3cd6b28f2da489aeba..5ad2c2c2b7efa2ad928deede0f5ea36cb1f54a83 100644 GIT binary patch literal 1557 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 diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-java.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-java.doo index f9cb29a5b534b7f36668cabfa8d9569b0dae5f57..90ab6e5aea068db71d1906b82de2be6404b226f8 100644 GIT binary patch delta 1486 zcmZ9MX*ARe0L91H%I=LV`!HimmXuOdvNUAND9X*?>YC&z32XBd3SjsHaFQhL_i?W2~dcKlw(}f||jQTq6&2 zKtj=V0o9(`pA|#Zls|r%Ke_@Y;MKPcv`u|qv`kFw@whm4A=ghmmjhRwesl)#OoS(l z$EWcsdvIVHtX$NE_vdt-ce+KX@6MFDa0P@V#OuW=3ZRBl2vRNyOU$Fr&Kb$~(F4U( zIM#i}wRW-Qoh7ICqrVc#&#G+mTb=mVJ;M3x3iCYm>ytQ*YDv}9&bs@EQc9@Y{%ns&o{RDEI|gI1|CiP4qtifMTD08eH$I9kr% zxqOST)3K0M5;{o^k-x(j8EJ1_ZeFIg@2nux_agFw!}`oFNv7J0iJ$CNdtGXrUp?nc z>EgD{XjFg9L)CuTscnsj2jlBUPsp1;5=vY11EBqu56fT$gKaA#ay_L-*@i+K6vO71 z76@143``$JGz0FnB1vwIRD#i~__}gW19JI;v)EU!wNUA-)+>BqWijv9JMv zk|SgJzcQ*ExUzcqtYFXifeP`eRy*`XO4jup5lSJfL;4($IQE`x5gJ8>doiJzG%YXq zq>xd=@(yJhGYFWIQMKLJy_sh}Ih+WKf z=d;JN^nzZQQCXxQ9-H3;ZvV4*@G|u?sj31T^Gv0wg)BQNn+mHSSE=@)IZ=~iQZTXA zrIMV?EpP3%(g}ykSSO6Mmm~rJvq&NL2}56N{7v)oJ_iWbY>Ip!(aZrF9+8FfmMoXa zwyHNY!j9p>k#5!Dqjf?7LVJ86!m8nx`{Smi0GDo(A}w#+v#4<FaQTpbRbUjSTW=8_6K-w3S+Wj)8yAe5KaDKlN#izcR2rt} zPZOA~^j;VkeB?>1&y%=;*SUg~l5tQ>VcQ*e(G(X5@ZfsQp8H6er49N+y86o= z7uQ-7uevrOx7~8S-~{RKBuzTJeF80fi&p1GwXWPzxJ@-FaV<+|gnAT7XjgtEHr>^U z3+wvKAfBaL`a?G8J)aUYBd#4(r>H3bu!qa&+RX^ziH*99k;A5uLoD_HgJd|I|LEFF ziEK%eNe=~Ph|n#=IuA4;U5~zO(3X0Mj?C4a!Q&4$NTkU%=E?#}+5ct>KjY18Y^rXj zuN?Uh9%w^6E@gC#EHxfQv)SBa1B-zE2Ua!^XbTJi@qhpJuR^&8_<4H;hiHVLQT{)o Y%0Fj+2Ez|7{3ra=PEJWKH0KZJUxbprIRF3v literal 1504 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 delta 2001 zcmV;?2QK*g4}=gCP)h>@6aWAK2mn`a6IpB^7zl8Y6DEI6fu8z{o)QEGEm6BfC2B)T zwf*~0UUzK=xz3P-nIS_d`$!4*|4@_)KmC3hcH8G+6Cm>W9{sufwSDf4mSpgr0&=BD zD4l(MS&4_8-H+{V*u0gw8l>+VNU0nhoTy~Ai3myY3I?17J=A6Qp21T^VMxvwt^&S( zT|I&@@pylOgAF<}Lh;;nk_-nZG!3{$3NQ{OkB^2i&MHqNv@d^N#k{m+%|oQZBDXuPWpS?&Ch##T!&F{Gm`M-5$XDN3U79ooz;7Y1#D9uTF44=#Vf z>qQrFm9Qx`0hB%MqE8Etwu$CQr)&hw=Ul*`;a5n#F`G|woD$%fO1bOXvdv~?LRa#8 zPCYjqO`k^2X-;`Go(9=$>CNZk3Ao~4okV#{CNUnymMOarElc=FbY9l%*#`vD*>d6F z=N920j=>r{vA-wmLvY6GF+|KK5Fc&$HxawDUeUA5qw}-3 zAFt1u!gr4pl4Fb#KF!Mlde4@Y;wZgSX6uC~M;IgQ%k%7p&*Un2EIiC^ik}t}0J+2| zxl>9kc0Xel0>bbm+A%8?E2V!f9J?kNHBsD}y#!P_QASO_8dlBL&qgrj!P-@gGbtX|xbmo-lbSm?To-)+LtsiV6l$5<$ zM9WJVhN~zHDC8$L_5Tt zr?F$can3qqyN^+=j#2ZBa_?CYw^QZ)3n6DM{06L1UFTU{7mdMimz@S>GvJWYO8L@q zSc6yWK)F^&#;dZ`^ZXLrrjLUfpBEOZN`^N~>lA%Um)cIZjb9l%QAmhpOJ)-vBpeH~ zvapoG1Bzfhh`LK-J;Z-%)4-o|<6piW*0EPl^2H?Mb>k}^+?KmzSF(guqcVa~7Chu| zC-~Xw(I8@r$gE`$8GIaCyc*t3^?GLQs{RQ_gkt8%?&{jS8Q!rCStsR$Y~3^m zwKdeje{c7SW<$5OjLo~fn!+ItQtpJ-9oB7^Y7dQ#Uv-cgQ~}6_bZ{5gi?Xj9H0Twe zZfz$3y@x5_T0DPa+e21CgEN#u8+b<>+&-Z?y5qhZFk4NcCk%y^KNU^xF!F^nxoKQh9H{l4Z0fiY zlc!FFho^r^X{E}K$3YY`n!MVK%#Rm&7(zn428hs7Y8PUA-hSEn@Ww7C_Hf^dNFsR= z3Eo(F-_ic65i3YO4mW&Uz{oHvq7{qHofVtx@H)|qFa*!~{0&e`0Rj{Q6aWAK2mn`a z6IpB^7zl6y008j<000dD0000000000005+c005Jr2NWg)6aWAK2mn`a6Irbw5VyVs j008A2000L70000000000005+co0HoI8U}s`00000x_p=p diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-notarget.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-notarget.doo index 0daf34a5a7111e0966d9e72efac9dc413f22f01b..29bf4a7e7f6d3de4e18a4ac7da417833cc576ef8 100644 GIT binary patch delta 1450 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 JuqX3(=U*_HnTG%X delta 1476 zcmZ9MSv1=T6viXASW6PBG-@eY)V{Z+mQ)&KEG1%_DxpY(SZ9#GrKPq84aeTGrKTn2 z&_-gXwbfFlv>iH_F1FfB?52I_L+5+B-}%n@z1(~5w=T3K1hco{=7EDiAPC5v1j7;J zq#z;LFlE3lp>!|36w1SQ!J*koDbN!A^l;zaD~ia^8qP{8kheU)j}qV<+tUQi4k^-+ zlXKoMxs6@fL)PKbxRs1N-?dUOxe9fzBrXn@no{zfx*YtrC6^^#xhjMD^E9Hk+V^QH zQry{b4YE)W8+SwrxD&6!0!}s|KS2`E)Crl&WoEGybBd4Ld&|TpBo{bs&DD#C#CQ zLgc|k1rR4O&msQ~VoKD-cb$pOqqP{rA^Y9^V!Xd@=2bg{Fv5jTARG>&EzSxUuCxl3nlyE-AktX;=n(zJ{gU= zP{j=b4V(ah_~hss=)=t1~t;GU6x zmBG8{p0ovp{GlFLlYv>x9YIN7ZByIYwq+Y%+)M>I0ylOHfiEuHTp69ipz`Q-w^zS@ zGS06OL&mEy8WRUD$#~|$s`qp#zG)#q5}rqhpM8C~U;`v$nTDr;#`JA$zVN!f%Qktw z#BEt~?)kuNSIx*okChbD@%*hU)~V`*r9%@jPZ;~1f1Rk?6~qzJS~0e@=#Q%|H(}yk z_JtF+%y{N60}~T{kT!T>`jlpYuqHB@w0xu&qSMIUD)73YtXh-sEI@R1NtXs_?zYdP z5!P7^vzsWPBFY+k7F{v;<|{nCW=1cv*YQr!r0VdQ{s@Xi#lv4QVLp9hKF#roHO=XX zvjJh{GJc4@g}KKc(nqWx1Z&(KZnn-`v`QN^f(X*joYQXnxEp89wv&laugY?85+Mzt zKXmzyF&Btiex_V{lKzWrVH<#Y(vuv=e#a*0MIPz9!>!a&jh){~$6JeA&DZyG|0ZmZ zNE60yXm*db7#c*U1%oJ3j6io?fOaq^1P9INjRcTD1VisV`=6oJ6rJF? zE{<8{)C^)R{&L`x*rc+_sN3C^+hBuLURkv{m(}e?Mh_b~?qpLEuEReAb}m>9z#0bW zx-TtCEivWX=ZhUDoiEn_p$O5?0gS1<~}?LiKMFFi$7G9HHaLfrDT<;Lxr)O{XN zRo{x$dre?M0dK(W%!H!UJ}ugOCn-Z(*-XhoYo&a8lRP;joTIndq_dgF*XoG9RCd(R z;Bz10sUix|-YFXa>}|NfaPI%rDHjN|4hDflzP=lvf32WD5EnE(I) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries.doo index d959d4ea05e98d7615023ada35325d175a169099..92ccaf69a6d8d26c0066d0a1a2470e0532f3f13b 100644 GIT binary patch literal 56887 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

wxb| z-}mhI9TEJ2Yu`JRDjYiW_QW2#yo-Z<5lDC6*4f|N+Y#aPI4K7Q2R)gf9mcQj?!oTi z&i=00=MLjs@4@ba{e#{E5#lZr(Ds7|d)@AS5BituGIktd_YV&C54zj?GHdo6*$2Jt zy@S06yW2Yl4|)d=WESl2*!mB8y`3Fsw6lM>w|j7~cepJQxzCt(xVyW5u)Di`uye5e zU~jLxFEg;)V=_P3?(TNGhdaCb+q?S@dOO{No$mhO!49C=-8($o?E==aUVyqdx$kcG z4tqQM0Ac&V&f)Gpzys_7=)o?4+&}DfySp-rK&c!y-92E=_95VbXmlU!?e=!|fSAL* z?d?NA>%sQH;oeSf|G@+319-l>jsM$uunVj`+}++jc+lPHf|Pe2BpAHcbxP3%tPc*M zP4B^j-QL~<=;y)S0Z_6F;6Yl@1+Z!tWwnRD0jmc<6e#A--hOv?7o-EELHE$_&K__N z=-loe9)PkPc7YY!JG(F(9&B&#bPx9qyN95r``dflK)}J?&fy`bPxrwt5COgK@9uyW zL)HClAcJY?U!Q;f>hS09p8WkwwN_HYaL@bR-FFqb`(}vwb#{8L&Q8x85`M+~T~~2` zH=$Opi9+xB_rz4fuEWiU!`^%bj`FXFyKb#e@AxK!k!P!54G#zsr-3NiI)Y(fOtAHA zH4hxJK!Z~p=;X#Ce2;Dsii@g9w%q*^nEm&VpVLjP~zg}&&IuJY=k1y1!5q;>{d@{n+ z-7i}|Twz}ifj8lr^CdXnuwYoU+jt8ytehSbQ2p!X2ABqmqQzFLe;glt#}&ru?A3VI zzxZKtHlS52w)PjUllw2nmxKSMLYHdQ3f$@6S9yMz9@0P7Yj$qS;D7J-^v4%$#R2==Rgbsdz_QPWlN zivfh1aU8^-VCOD9Yyiddka~XEzakoJwDK>5*~7nYwf_5Y`w|8#d{)1<&`SJ$(+-gT zcJWZ)-ZkDgeCb`zOl&y5ejP;*k$6M9y6V{W{pm{;JG}*BFUKDS|KDISO&|k zDVBPHv>?i4M6M`cMLS*pqkgDnAdb^vM$C)2vuEFNhGEOShr)K zHyAwLjR)y+<35r~y{NxBs)}YX3h5dwrhqMUq!FuRXjZscMiMPdGVRMPlEJ6zTbbh< z0n0Zu&o>xnRJrCaJ?+P69s+g^K5xam9yP%%$L-=|Q>;|0a zwTsr5#^xGbwu5JJ)VlWfF22Qo6#~zvMFz6XJyW%<8n-W{=SEGP;Bb*@;m*ROMM}Qs z!@nyhxk9KzPoP7Pr2DOGGMB9?DP!^7cr>1kN5fOwJFEvVf@c&ZvR-XC$_XaQswbLr9eU3O`9 z$15{Id0=nVcIsiUjuqJ5t-6xSsK6($T!jW}2!9FjFS`W2G(YpK%Bg3LLDCW{T2|g@ z9Mzq<3QIp1km(XsRvBNHbebWk_L)@A8~1<_#(Yp?Hc(~kY>a=pbtufXUY>@;Mj%Ah zah`Y8a&;L^t6r)mZ$%kt5fEKem$JN8-s66YAl-U?rJNYc}qYaqz4H<%IFdL9VQ}PXs{!O;FU|6{|F1-T2SA z?&caAueyK3MfV?Y&HcMBx&L`r-2ajbZrHf-UHor`lc`#4+bjHG2)*)++08W`7-z3$ zUE^c!(RA|lWPByVQ-73!;vvuo?6>{pFr+d(cq$?)LaoK~{{09zGYR&&!)i_W=_`4pL9wO6s{p%wD_$Q4y6O+C|d?s22S%@0>v1tdP zV9Sk=%#CCHT~miYJ+`6!2B`onG*GfMB9|IY6e}IE>)#RRn)&- zz;qg{kEh1~1;`$BUmrtd{7YRir@r8Opjb$M!WYj)o^;Vi<{;dWiV5WaPPz^#`?llS zg&p`__N1pg?8%Nk0w%amlOFg_TL6^Ys2g^y4_fO<+^&z>x%PFd zEuL#6AdgjB=fsNfzLx`OPR26ZDFsGh{&%4SX-4Qz&LC9_jK~6XJp$@cenZ{jOsfo* z;*95+s~YYy70nlWTS<_bqxHtZ#j5HDpW|_o|73pXfK5wA-)|=#WQyDAISJ;)?OO7Q zB#Ka53aeN_FEIwxlZ%J~vhV}E)2{e`^{3yDzn;S!fFGtY_WmMftM!g~*}mRc-I!Nl$47J3W3EOinP~hnItI@s#a%^NZOKP=v9+bF0|Tk$yf>UP-lA77&dL z%U4jo84o!iMpLbF76xGUxMg|ZIov9oI6o00LPhE5qil3&{mbs=wDJ`%%m zDZ~gk5+RVFjcY;D{OEwZ^MNcF<5e+r0=MVd(Am;>@ z^@YSp@!8<|hx3Q8+K(P>`g8FIa3gU?LwvFFgLN*QyqQ~}-2~wN2T3K|1cQ^xP;H3P z6!n>E;r7ePPeM3+&wM-FD#t;iNongq84!@$($Tf`CVhtdv2X~%QheST>oWp~9sDqd z1Q;K5p{4>e6(lB@rami_T7Pgm#ELP5{L_WPi=r8j#Djav*hP_Q(@>)N3fB(iJjTk@ zU$q(in^m-bMs40fZ6e*;5HHCFD{ad5fN2TlPqbZD1=b_r+WHE-y7m9F!_kIzqfu$Tgq&ogwf*RD zVT`hdzxOzGEfQQxj8sd)GNUzW{JV}=w#ANA-)7kI8w_HrL-ANPpQ0fx3By;%tIcvw zO)BcDQ}jevDG`IENU!$CqqG9({sllJz=*_e9!sXK0%Ho z-?MsvmwB>}tT^j>AmniLK#ca4H-@A=My;Rm@KG=c`948$%UeXKGyvk}e0cE~2x5TZ z6kAjeI0rZ!aVgj|>SXvrbsCVkA?H=JsvEZ;_4C$V_w3J4eW!`BR)iZzO8@w$!xeO^m4yKb zw1z>8jDyvgw%>j$Xtf#d5v9DI_A#_Rj#I+XZnt6Zo@}bjHw5pm_~A1Ta@^krKqp>F zUd{dyNdQ@HMk27?6N_)B4JlFj#0@|-o9@-ZU~OWS2LK-jwXqKzUMK__$-xbn#5mRj z_++=fv(>uR@5l=<9uofuM78B&Ob8i8)OO!&xwQWepnf>d4Hl0I?3gL0rz3}8pt*}pdHA*uPMq3O^BCbqu1PQyID!tTnDwN3)k#ml z3Qc^mPPn5c3~tJnJm!tn2&ZzB)Z`@L;15Ih7%Rm44&6dvm{@6gY1tl_yjl`xb?C=# zp5;QT-wj7=R!Rc6iDM*CO8wzCQA+AdDW&=|t(3#jT_`2>sucoQp@}cnNh+nNbpe1_ z>!8A2YMsZrq}GM!LVpPj;TGh&j4#Q-+iK0mQt%Kf0H0@cg-oQ2+VD^%@Kk5x*NUOm z61YsGDPf?qhFAl32e82rDW?GhXW8opE@*3LnwkmaEI&N%3Dr7!xk*#Kgc&L2^3L6ACpHaMLO`cv&M zF5yY3J)wK1Lu-R-Zi6RD>xOX(ipJL&C_{iJQP;1_2X#smRAsQjxD4Dso6cR-cpk z_<~L|k+}NwH(!8Bx-DTAF52SuHEdrGl=N_j)$GaW%y0c3aHFVGJih!C3Qy-37eH&7{+Fa4Ln zO9%^G4D{&$RVdoAVKPbHEcrc^yNR`e-sQZZkbq~ay`3vBW3P;Av&)MrgE(Ox8dxq zPAbwF0tHc(? zTE$eu&S=#;aj%@=2G)nu>CaPS=+EQP&uG9GdOdvG`rGj0Li74-?1n6J%w*Uqrc;xt z)N=I|W&u46r76!F`KAGKM*XdKZ0zU{6dY}Xek~HBg0PvYAy6Z#;_+S&TEjfDRH_9Z z(iV+qOn-{sH4H!ouM8FkOK5JI8X7gTfq6+jZ|L>>?U*t}(9N+(Y+1fDkI_7!C8Nzp zweuATbt{1ijwW$7fh7(Pg{A(E`mGkB=)R${e?Oj4Q=F=Qn9p)bFB)2!Ba5nL510Nc z>d@4wk5dTw{7(v8!0}TuF$4HO4U&h1Z4GjNt1OLcf~LltSUUAv@=6F7??0Lz+fvfV z(;)LEkkBa!9^@0jB0=GNp}0?0+*aBQycqi-;ra2)7J+3i9=FeNBliD3ZoTk!Vb!Dv zX*{arMPgqzao&ty1n73o-DQA7bs1oIkTAFskXpvq0^TUZs&fET^>oIC{f+?7{mtSg zQM}`GofwYe2>9DRr!=sX!@?wiwnV=hi89%0J!4`~{t~G&Z-G8^tBiDys1)5zEcK+vC4S`K zA_UY4Y!ka$>4#e|8P@PfYI-?_o1=Sd+Ur7iA|7FeV>t3To#B<BT&I*>8g4$5k z*eUJc>6{JaxT(D|;=D9Fl{Y=9X~G_v3y4$ltg%W`p7Zi%%FE!@r%jsLEzT{rEyhZH zo(cv`f4mDD7Gswk@t?j_%lNm02@JuzGinYkW~U;(3lSDuwPSS+`Q3!($maQ*%>}EM z6?+5QH@-Ogc5pt!%u8heG3io0Vg-K;M?)}qPXb%`q-YPYU1$+ZSBT?z8*30B!9Jvh zzZ&SenLO01(N15Z#qly&vEjwON;Nm-ab{|+Wu%#n3%W=Sb^(G7jdqj`mmW*upsk|r zs8~NG&&*kCj%o#F&k)WgC5PW7b^#`P58!!_fyA3QtwU_{n4Y z79HMbd8NKkPBnj{&cEH#8#b6LfAVDuTAggbfB5yFqYv#9w2n&a@D!N-0v+L(YivWF zgr%L@;N8Sx{>XX>qxS}=l!~4jIvi!eOwGE-&IqnNnFDcs4R z{mL!ZDVviOcrk<5RxiyZ9P!3;2}6iRwnoTIChT)SfUPPjf~s~Wo?9hW&Yl$nkZ4~E zfOGBlw9^SeHZ#ef0?FKc*T4rX{%`j?kigHyW$ zK@TQn4o}*nvD4_JEVsji^rzeW`rf}xeR`x_0ghK&KTok4Ty$yb_;|aEE>}Sx4`sPT zPI`|PW;oLcew%vF(85RDMEP_ZJr--hV;z2y*dz@ybg1zsku%uZSPbe7P@w;^mpcsF zWM_bn;{KC*Ao#DNAxyU}!jZay`Gx!%as1pcMQbx3ql*XqSB75%Uz1D<&#SO2590I3 z!3aqK{bczUR$LS+s_D_FN%l53`J_<@X<=$D#9E939XJS2s&^c+)MJJ;0m8zEu*gCX zaWG&_Bd%`z%#Qx!#b%9tA{f?68J)FbUQ$!ReC1WI&N{F??nv{M+`k)4-VE@g`s5q3 zP1%MS`YLHlo4DVGL}g_RWdOxob3n&$eEMzXY@i5Rf@pEm_{FAC3V(&bz&bABbJ(xm z_D4TVp8XPXi7wHo47*GBQ`a#+LU|POXA zA<%&)1wVsXj+luvvIdWHvIS`B@{bLB565?zPQxCVP{TgeW0p`uqOul9qXA8Mo)*lJ z|Dj>8!h$bHo*SkkU5gT+m@A6V5%Ro$QR|elCIBkT&@^!m$ZTR2ZU2~03d&d-l)71F za9IqF4QR@$_cGZNZ}MbbhEh-sondIFW zqpyq!NyNoYkRS&Un1xTKT6c@Vf-=np`$lxr0iv0H_Rc4J5a*353dC!D)|RHBn`k@u;83mTbJA^41MDF$=Qc^@Pr zu7AAea}42roWtVO9$Z5h8krir8s>IW+>>MYpq=`NSsV1U-PCKR^(%_iWzb+EG{=kR zISAH9#WvV^CGTE{5`wytI1G3^SJo3;RUlv?;7Z8&XePohHn?lDvq^(p;KgjMYQpl1 z+Gp3ZN&l2y41y$B^W;VxeiL+Aznc*l1;7@_;=f1tCziDD+1Dw5t zi&Gte56q}{+ZYdu#j~H2gxl7m@+n>M3~jvdqIznaKB+f@iDb{{X|aK*V22j!f^cds z1;W=RnV_9O!&il!*zaD{m{+IM<~$ZJEBma7+%xXsEAEK5eZ@Usvf39jEOxK3@!d+w z=uu-y9zysxaa^akHRf#a%&>mF-ryhRw`~>&0={q0p)MFyJ}?&io%=;F4$KqWCYO;p zOvE-mI2O|2Sm5B$-6aRdB0V_Vr$7!32Zzop)#F1CjvyN`93JrNw-KVrJ-t@Br_4P0 zS*JqA>5_tf*iiDN;YA?4;pIuHVuY~=pHl-Yve6XcHwX7`GG7BTuJ#FX-o2!@*ie(} z+$GZGiKNOJ&_vQ@x37Wc!J&@JFAOXC%xPawfFqOi!!I>`PMh{Q_4_OiHgLpV^ha+7 zZU3c4x@c7iQ@EXtUTQq4y4+9ca^EBXpD1-!pCn)U1fOUO?3XEHYZ9u-!e)9Sk_DJ> zg>sLPhv(q*MsMt#E)4OX#AGG246CYNH9o1k~kVina)K|AJ!#MpH&`L;vn&}%+zw2KQFZ&lRo)_(3 zZM81@*DkszL`0rX4N%-dg4#BE=iaQ<{rDB6z`?gLXe@G&c~eAgI4U4V5UJzgNWx5Y z;#ZI`(@B#JPUNA^;&jyMTB-nxW8&HAbhkq0mlFASv!3Rf6 zpCU9^l-Hn@NXe>b}@ zP|;(U-sxqJ?C_Qa<7Bv@-tKK6sYIm7rlrAjX*^GCj83qa#Dh>sf1rlUE5yZQs5yUI z|8WWqTk8d~2NTv|SJtIS>TdDVkzX5S4W&|TgJfQa6;rS%M4DNa7ow<^PJ^8gYxT5= z5Y_d$86o265rpV)DGHHr4TR`*>q!u5OI5Kv5Td`u_l8R5dhfN=@CgTsoGmtogy5&{7Kb#FN!?M%y6 z!PO)v`U%4JXa6fGoPr-36g`;*1wYQ?lIdHa=o^@S!{YIkQ2LCN8#!}&0lu>L5fX~E zf~oL6T~&gFn{?yg8&awU-S`AUjp{q)^#E;jveuRuX8EOO{h58d9l$gAZofz|Pd^Q2 z0yML?Lrkp#1lS6oMFljD)OQ4b>yo?iCwu(epag3MTs5&IaKIkd54M8;MOVjgCvk_r zqm94u3wDJWOHf}W2-C0trh}@_Ci7Fgd(M(%_Z$#9Zr}&y7OGA*W|JxW^R|sthp;T} z0z8kShIOhFmLjaFg_3P&3p7w(h@@fx80OX!cFKTc@ue>dVq zF*b8hM*?e=nZh)$!Q{i>Of&dwaNdVpE_zx{;&P6YbsSuRH%rOD5ayYgj#Cdl&%?m_ ziVZwd-LO~X>sx@2z4{EKpTy5AJ$68KO&7upI{#Wp;Cok!*+u5>=*lSYYrKvet*(a` zFezV*PupC$5CTg=4aT6F<=CK483SET5(f7#)RF&D^Kp~mrsj!|cS%*UZwbm)8ta+g zWwpb*)b#9Q9u#w8GlrY~3!f7s(FY+7L*rWHEOM675qFjtlS^7P3#mBlrz69n>D5{Pw8&TZFe`=Kq9;ZtOaLRH?BI4#*CI!(yT z5xcmqVid^cFET!EE%867Q1Bl$`{R!~5pvyTor;1+sPWM(5Wv^eH~hhEzCtLRcKlN3 z0J6Scx7t6qzWBWL^M~!$=U?Dc$egc`7s2WpuwRX@7MQ`)may4u?pq2ImbVnybPE!u zZl3qdccEIXL&H(G5!Gt-TA%x}71he9=(29i8nh&of7&)?7^e+`TXabic(%PX_N?SV zE57#Dg`j4zFrUc-k3N|-8F*8=wO;4RwVBfuR>-drLx~8C*DF8jhz_i3glw5qpT6h= zuE>0^(C4<<%_A?`T#cny7m7M(8Uw%FV4_N-9b`WUW8*diGCszw(~A;$PN{T_MADL< zn&cnohHc&J9!u(k><0CsA^g$vk7-}iUC!4%B1gdbtMTRKd1d2=r3NW(kH%}I`fw~*tMP%QBH`Z|=CjQR4tLZ&dp z$VH@6h$&mw3^l59LVje7q(Q{(aEGWum~$Lr3VZcXz>s06!?vi5`y4FePEYRwS=)Fr zZ9)bBm+8=0B4Un|P#3<&)vp!~5@5xQx_~6Q3LJ4pxX5&ijSnA`f)zMQ40bvit)R04 zM?5R!kXW(ly2W?`BcWj={Mlsk|F`$9-AyLBqVV_m6^0Kx&S1Ra1kw;7v(gZHm`wwl zgx&j`bQa5T956U`u$>Tw@c#B!m%2!Gc`mjC-DmeXdz$#EDwRs5QmG`BY7BO8zpB1& z9S^46qhTMyw18cr zyU=Pf=!r^5KeBK(dhfdvwkEEut>ET~v(aj-bmWh9`C~)=xFdhul|MG+kDug^d-BJ9 z_v29Ev_F0_csHOMrKjC9i5%H96^8hwqtL`J>k3!=vY`;hFLxBy_~oub9lvZU{PD|A zY7qG4o*D^$xqs+=WRH=?K>aDiQscu$Nk3~3bc7yyn#_!B`Cpb6AmFL+Kzuyt9lC_r znJZlZFF#GO6`0^1Hx;O_#l z050Xh_*hGV5sWZ`xqEqLL4y0a03yj4|8qKcH>v>s#W_CNZhIKfuYyh>&fu5HX+gFX{Ep84xWK^)PhG# zX-vF%A-^Pdd=tF#0GfUC5pXA2uv)9pJobYW)({X4P>iNKLylvg@WuOY@wm{0Lj!=I zqeDSwP;NS-A?vQ75W6D6q&kw~!HR}p6Ht2>v#8m*P;g7h0UVoX!i!5Z5v$EE$Dj#Q zTQo7`r$V4!q6tw`WfP) znn!W1BUQ`N1jr$4iqE=dA_qwjQCobLwLK%M+TydU?f6Jl_Fq$hVsAz#U@#+QFgRRT z-q0J~g`HY88_ZD`WR0-x?KFRt0p+qH&&oyPYl*2!Z2HQ z5VpN#ysCrHGo^mYL3An&f~PDy2Il_k5KL>m63R!QxJUky_^+q%_s>@HL4J$=DA3Z$ z9^uBO&itSsH{Q$!L*8koaOB}=s~U&)U*KeY+MQH9K)sqkGl+ohr>(S3^1l6bJUIhz z$?4nIW+sfHd1Px;(l*bI*Yc_+7Iz9XQAf&Vpnf_WgtZWQl6t7S`d_VWC)u`Ix6lIl z3xKfxE0{bc=MSNxSWX2K?2)1#39jCZkb&BMbJq2V2t_qItGNfzilAD*gLhMi1B4rd zZ)J`XZUCWUw;01@bn(|MaDkljnx9R-B@qaZpJ%f*b^gRJ9epCLatZ}7(J{2NiDKr8 zy;vrm872-UU7t&7cz(X)LO0b}D$*mAnTL`zg`bn%k?FhU2|Sy2B(>|2c8y0}hfbYL zlL9i~`=QVf(aRAFnUs|EL>V^>3<_)MT-C5aQD0aH{}iR;ba;^o2Y%UCGw@H7%Na_; zrC^QHfamwyz@)WXoBl{y#l6?GZhtU|>hPaX4frs%hCrOlueQnl>o>bC2jJ<>^SxaY z761((%9L4rW#&w(kp}PvCjSh_(m&pvg7dfE*=+X4$9?8ZbaZq!@t_&_6Uff)kc@yd z(Xahx|7mCQ@%uhVr(=S-+Ww_KdpT*|d^|oM9*xu~3t z8LBx8v&2?T-}xzeA-b1?@##02FDQi+Va@k+@f_mwt-Pm2oBSsGf#nT7}d**VrRDda&I*iO+)tuC~VI5jj#^sWz-&FaULS!y9X|{O-xa$ zTOJ;DgexxSYrWBKdnnwoNm=9lDbx;`9bb!8Yg6@_lPIeK2WDrxMyd3HVxX4C#&Qcr z)xAGH6j07h15iN?Wwz`gsmF()jXQYuf&Y5q(f9l7_#OTme!qv`?}eW`YgE4z)$erH zs9-HFpq@J$als~a9exka%mN@yh8wE5jImZucR$Bse%BA}RHP}sE-CIhj^Ck7x9-T+ zek~YDNlB@wW0@cc*V=CmRqgbGu=7oqKlEflbg_UG4U{3Ifx-i<#Qe z+Rq?h90JMSj0T1)O&5m0ZUfV*ea-Yf7g#^30M}8|b_SKAUDUOx*`MB5pFI2J+5R3b zmdNd`_ETH`*Jm%@Q1zADP7K`(c3V)4AVl^Z1WbIue<0M6P4(HS#5@ja9yu{Z8Y|x9 zMs5;KK58SyDO~p5sEy9pe>4F}^UUDw5wrOy>rzm>=Nt=#u@g`FJ-ltGasQWrN3I7L z`}rxjgUG{x{tz6~2Xpa}M#_AIB=ZdnPxL{SKq*TxXw1@qoQxkSjK@qUq)C!P1;S5JiRqv&f$+(9%>;+eZkvw!5`;`)cn|LTqIC5mPm!5b7|z2qcn;h$G!fiwtg4*So$JhO9%Yu zY8%X(BhxWBVp_H&=Lk`#T7O6$QyGLbCw`TXizm8xk|kaaEnXxa*qQ8I5r*A2fZc`d zKHyfWX<~=d{)wOgm77YkUD9Jg*G>h~(GehoXv-utBdb7x4xo`-5~UF|Yw4HJk{%C= zu19F1G=gT!B(#)Agmz#A<_jZOrYNzToQc~qfiZR0-~qRMXXO!Z+PDzyWU=i4_#O-p zI@|N7I{BmvEfdej@46K427UOzx3>Enw*avUmI_syJ|!^c$hf$`XdR{;SG4(JqNU8Q zc4572Y+v+UU2o6YW}*VL^JGjvm0|}IhwJ5+0{Rf^v|CDd8~i-_0JRib4UODS^s>je?HMaclFPw z;wJ|ul?6ch^P&%d^xu3Cr2po_ApJKV2u?s<*pj~(Qxt{a> zsMiN_#Kv1T;PFWuDhM+Y{z9dn6#@Kp2^-!FD(=2~iiu%HGkit!WH|l|zh3vdz4ri> zid;?H6Ptbdg_awRUxt{L@!9Mx{#ccjcSc`S{kPLkBG^4@r;ok%hK4_-8g*#Z4v)%x z{uxyD@PeKBKpIJsY9dJj94Ki=Tbs3pH9zFhJpd53rhq54Ke9iV?63Nj&V_FP?8Z8 zMz){Q59z!Eh3w`5Ymj zS@H-(n2sHCW?3*W98m@(GArC%!3jAyLcxTDMt2i_BU{5w?Bqde_@>pGZidhGbdPC@ zdr92v3OJfx2Yv)%%_PaQa58%_G?P4`KV&oKH zJVFOMDH?CEay36tkyRUmHRjxVPW-X){qgvDck-^^9B>Lz z_{!1&3&wb6k}~ib1dGH-4i~;7)lR7-Trd&VnozSoCKH{F$BiM@V$orh(U&J^UKu1} z;SxiZaJdqLg=$71EqC_fnKLJ{Tl?EEeRfxDo3Hz=#57YrrPK~s1}e2-Zm0HZbC?kK zes+I-wf}!``QQlxNX!;We!<&VTVK8bH_3m!dAYwE*IW7hroXu3+q~L+{p{tFMD=#6 zb_#AkRq^r5=PzF*DsQDL|N84rqH-%$`T5VUcOIwk_?oKyI#>H!7WRMc?kDOWWTB_) zAExR%^L9}AwyX@bMU2_7JNoz!8;I)z94NFEToG4S{O5i57Z@eopBt9vqtG=3JN*a6 z5t;~Xb;tAw1Q9)O<8B3sFfNNz_WtaP@%{u{MX-`N(CQ%sXgx8Hg?xIbgRjKpKzsfA z*k8Wpy{%WNUkA!VX$L@f6Z7p05a=__-S6E1l)!?n zIpra31ubdIldaKekZs+HTEiabTMseTvS1irgXX*|`u3BO_TPf`yiW%GL#$^W!a)iH z*b4(33Sk_kuuw3_MVAL~+s>w2haMPhwjL7tBP#$hzi$-)CPmBxKBB!e0`0a~J;X?P zQ|AePpNcg|5f{%lXSZyB5Y$O2(&@ge`>Mh5B`t=;F4rsXOvUCw?{;Ip1#oZeQUB%> z)doi|{Y=~wqkY`z)~1oQVLZI`#KKFf0ES|r+JNuCN&I~9_pRpukbuJfUL#;1q&!sj zf}exshBKi?SW(|_NL2M-i*bOP9=4KjUd?7&Fsrzg3Md$48FL43sRdAQKNV2O4ia;j z-;_$Z%#P_aF(lf5iiEx2izF}#4+?C;qjJ) ziH=q$MyV#P}BxY zDusWrZUEE4e^B^_2>{ZqFr)<7qrr9mm~RVMs{g z1E!Z}?i2jIt)W}K;!B1EXE;Qw54++~j$>rDvkBuPCk@ReFvlC)}Nut5zzR4asDPVvX&CbW})ONyY#)RzlqilYDWZ zkK>4KG0-y@vVd=3M@raMEIy`A`$Zo%2|Ob{Z0!H`^6ftS-#>TXZmbjh{8en>sMu;4 zdybhG9i4N;krH@CflcHT#&^#IO_*?nM{<~8aBYR=F{li+fox;&>`teg^}&TA_y7aO z&i)q4bW2ab(G=oW64h*crVZ^JxBEoXm=3UL{EJS!7_xIc0^%AIu`+IOUu?3f5hXay z#s|_FQKAXE&x(9_3a2e`g}ErY-e3dT9|c6S8tHCZM+ma569fuXOk73BQj3s{{lKeg z5!XC2*o$ENB&$f{ECk57XAUH*n4_+XT?u$0im)x6|8yjN?po3}5!~aFV409Qv3^*9 zX-X(@ORrra=K-9yB#aY)xY&@y_^x?-=V)qbnxz&?XoScLunmI@1U3Q$Vj>s}@bl5n zmX@Zqhz_UirNlDIorxVt4Gp6mA5<6^MMe6MBps7!b~qChDXOJnMyVYKjVAIleAGFA zK&{z_X;UBFq=_>Mos2*W0`T}(u*~UzoYI?+6tYVv*}I;`>|AeD?n6#Qi?=i?_o zUbNTZ_(}NM5%ja@_`X{_m~>br3?+HiXdau*?8&x2N~uFsbbkejo`e-%OgWyG+)Kd< z>C8I59vV*>kh)!R;7))untyt6(Jm2#04QlW6*OBA)a@T*=2R#pL;L{Br@Du?|%9=T|ibHtRs` z1hve&DLg!?;oGq}XSFz?NEjh2#!JfL+`~1wM*LWHAZ5{5!T2-hXt8BBuSuN7(u`Ea z>z2jh#?iF4IqCDU5uj2;u7$D0kX#FLNin&8luHT9wcwT#m1}`j2+J*G03C-*`$2ao zBkDz;ius_L@6=_ZERM9rJ-tS3?_z9$KYM1boHa!SbIX?q0WqiYj;|@QNMSkN1HSt}mqQ466N6_R z@>tP+qz0=Js(DcsDmYI>xrT0TCS$$CQ_tXF#*h<;P`U$p z5RAGNUYJ~Ih(OUqhPsMZlOs-8@S<^?E3s)(T=`qZ;-;#a?wh~={`<|FtMbNbRQ|gy zzn3aLvZbA5>l0VJmMR{(;*C`C#G#fdo!L_2cQilrfX_Erg^g;TL+xAP>NICLb&1qh z3vQj}rrg_ktPDxbxshiioAmlWpPeM{ed5;c?_lm#yz%Modp@$GAo%t^XmF3!_ZHv! ztkNTo-Q67x?x~hTsAYCb&~7jytqVt#FuK`&+w;ObU8G$!xr-092FZ+;-p24UKO5M59H$Z7=?2fHtaUCQ42BttHyamWhhv*e&@_9ify#3EZ*z|@vy1*&Y=LY7Tgrw)v9RdI2j zSUiA1Hlzr-v|S}Is3cb2$Nra$IfYyuP(=E7U{S$V!HU}=T&Yz;haV3{&1oMjbtXZS zcsoDR;%2>t$f~29CP_>|M+||4eyfGeLFfJES~3!a-uzl$X+-W zUScpk)sSIJaO!nKd1WG%da&r8;)7g_?5cWvSwyztN+bZN2>+wm!>oDS1Y`#s>Q&Bv zr5-_589$4ao0Ofd=Q6+;^&{Eyyq&gnLl=wMNR5TT72|< znLL9D-9uywcael7l=k8uzTpdfmHKfioh37lg#E~jPvkR#8& z()!q>xJU|E0xgPn!(xEVViOEGu#*Z!{KUPd!;k3* zS)UYcp z5)Rn_6<5N&ZkrH82s$gi|2s<;q6H0c!5c zCto=a>P zia$W@hTr+N2~qDG{i};T+!k= zv2$6(LRM;6#ihc0GaYX`{UXgma{xx^gGmPi`R)ME4Kl!#eI7jiUII8>3Qv>y45-Sahr*n&F5U!FbGmLG}9|NxV(O(Y6vtO(>?EmUy(b!Nf@dK&8aK z-AN_Dc60y}1(3_)Ad&S`^L#x1h{tpYyx8KCT2+12zl!c>X#MVHq;s;!BIH5fN#rmG zl(+`%2g@XM<*5<)S^qdVLm!u$@20ncR2)FSbED+RD;U>^T`V}ZGupw0jltL1c2(MG z_0dauy^R_T+wN9?R9bq!8BN3Smu}eNYr(PewxdHidbe}v{nDSosoI)yaBk3QqfX^` z9kI&dfR=4z@8=yCKael2GHH`*$X*Kw>umBs!B;<-*{L){^dEpGBSbej$U$3FMa zgOSr>Dyd@x6`jqFO6t}oB*ju*5(Ds3wbmWH7z5w2Pq}b4#gkMFDDATD>#R~O1fQXM z^s<7Vh$+p4x896TPNsclv9WP0^(Uy@E+Oi0r)0oUHi@uanBM{K%>d>_LN+_0xrt0S z1@UZ=3~;Q+CZ$}7rV|HE@agn``v!dWr!0r)RWIn?STcVEwc3I*hIAO+3x4kR<72f2 z6UHmJeUVm1KkZIT0g|A++Cuo-7JWw8wlSZoh>@tCkE5f6QG24v2-&zLBGmHnL)(Hp(6XoIf_v_XaEx`Od-M7S|aWcoQp6aqk_|a2+ zWmcW*Ft_}Qq51{6vJ${Gl=O3z=nPk;?;sIljsMTBmz5P+w^)P|G$qd2{hy8N;`k~K z>oPUyP8WSB3g#+K7A|52s0SB&W^*?g9=H+{M6oSbg0?nUl?h$oP2+|G(S*Nzqzvdv zvL`5ejnhJ#k{dcj)TtK|_}kCp<1f^DkMC~8UwQ4&^oQG=t4oF*`(#`S1bCSMS78L* zQaGoZ&@hxvMJri69+);NSUTRYw>yM}rJ>x^P(byuZ8Sulvy`G{`y%=%?N(Abrm&_i z6(y-l%n&xIL`_-UXKsnNc)8sY9?fv8&C)B_el0C<9t}aV+puANn*y0KqVt_2h)u)n zjLH8&BZ)yLu(Ne^c}Uh=SEC|UYsX=%7CzKmKX zn!Gqku5mEAU_K))!6IHYtV$`IJdury0Au|qK%hYC!nnYUz>;Wu*8Oze7v2&o`;B80 zS&p#A}So^C8b5i)YSZ`_&y8F_h6>y1pFy7vKDq*ITnJ|GG5LodN>n@ zt#GvR*d}S3uILVZCSRyCg2`W5RcAgSG;Fap?5SYnm1HooNQ!wBQ^NDAiCuISnU)_~ zL?sjnEkG$KxHkGVa|8sgfQ5mC325mbY{xMAAbFA;ryhLNTS5wD5guzE0!pM19N~ zmH-RVTl668ECLs-u7$ZuB0luLZej2K9)v@7yeoS`1VxPSStS|&RM%JD{#GUjcNvvdJCzeYx$SDRRmz1L#ULly~ zZYttc(`|d>nQm?)$OrBccjSDEA~A=9ULOPKE>@faygR&JO*z}-xm^HB)W0A_qj|V9q zBJ?1Q5T`M>QA=}&DoJz!TqQpHe=AyV$&qV5o4j<4u}rTJy;c~vW_aiE`0UI6xOv=1 zLkT5vv)9Q?HWC@wQH^qJhj8;1Jgtqw0DCjh^>rI31v;opgOdTi#|(f2dg3Qe(}G)! z&C6opQm}-)fSGLQ>q9sN#h4F|o4NAnSVA02TmNkADki)QX-w^{5QF4FyX}}R+k6gu zrISF_r2f&IELc93GNVLm{cSP;_rx-<0f#qxL5RT~=ie@%-{2bTUkt{WBbI)1(sc?T z|C-Z-M%`JJHMf>pa<)7FFv>0YN=kvKdW`P|F0Fe54K4h|N}5on0{$mm2Y4szpidxW z(n{s9^6I|S_7h?orX1{)ZYKsbdu9SdEPGOi6Yy752Lf$^Lh&B%qyh((3phTik!bE| znS&75OvXEL1HPpIbrPaBimJ=YUU{epC8Rhmh}lVt)l$LOMlGdG2tt)mj_{`(aRYxN zpW*n_;1`2%Cbk77Xz-#?uym$Qkhq700gD@u2A{Xg-}VgnIdul)Dor>((Fph*7kw5q zQ0SpPs>~08`hy_oPJ@xCnMKh7!YE2`9TzQVGFcL1J*vQ2<%h5LZ} znp$g0VslL$@nxvBKjsWQtL6kdJ9gJO-Ca{}qyuj z9FBW2s+zk~7z>V%aMpo}mYvywQC!#7vW%`q>;}xNE`}?KPJEplD{${P8Y*m*!TR-M zhc%QQJnyGw+)iv6v#cE(wAO>e51c&En-^ffLI!4=($aVBlcXtb?b-^d7<`U_7*8_; z0S15H9lh&gJK^{MB`Gr(AZ0$F2SUt9xLEw7(RklNWC+5wf-{wVgj%IG*Jyu;7%HTd zXG1Ht91as))$%nNi?=z=#~H#YJvOFg8$lf8tiShVH0xec(rlHw&B7NSWw%SSGnlMw zMRH5_n~I1N@k}rZ>$M@*1=~j`27w65iDFFjS~#`8^k-r8f_dl)@v-k)Q8+ZY7VQHK zXx4RmXyqF%${X5psK@u$dUVaFH*F(+7zF7vBH9#W!Ik-NV887}Q5hH9*ZpRre}fS}^Z)_bS|5==p%;UNRiHS0%8zGL(o`lE9zUnqYq7aW{MOi?d=YR9g_(Sf2s|^}6{K38xK7?JfwFE@@#RC!?u|k^n=19F zT;dlz?=#1f6k+LXAyATwi3i0Jl+A* z$!8I0d-2Ur3^BeZ2t7N4bbVoyTCw#-gqJeJ2$oFtES6(|;L6MHtDV<7`!8RcTgLdZ zYRkW@Dk_>y>G5zp#pf=2_^%5~rL(Q6k!bW1FvfR@;h%Jq6pz^#;3Tg>&-=l56@q2= z4b`SiS(#~{c#JOv8V$bRHm?!JdzN=l*q7><(}92Y-KS*7)Qf-LZidH~cpODt2Gyso zXL4>y0nuh_F8Zn6&V*$Zq+}P68lyf7BTqJ z#zp;B8yLyn`Xh5phn?eHnQ0<69p@^ov%(yrlNy*~YAYle4k{64Qc##=+gdgD3nmue z?p?w0{se4jU~IN)6Y+p`8#X{ZbENL2^yyxtPD{5t^&)dgB6ym%#3GEh9~^E98-`m8 zCwWdt4^N4rn3JYwBv8Gw?u8JI3LOYcR5O7da{x3(Iti&R*GQnsZ@uEmK^EEmtkZ)vwlT z=Ys{OF;Id)rp?m&M*)=JQOBxs(Ker+744NAhk&oCnEl4?lxx8Og}+C~l!_ZAR&v{* z{f8&gpq z&d`0l8DZENEk{<F_g6%*n z4^XKXrWPq0_LX;PLn~6M9TEsIaOIK{4yDvel{&>0L1yCx*XkMK1DnyCu zkROZ@3Z)QJx=1Y=XvoDoe(`Re84Pa;=^cErF7w>bDkp?peo3snW^qj(J2isxfmn+ zlLMDg0;2|H-HP=c^%CqXWmtQb(z%kfu&SvX1p8P$f8S=^)23B`BkK7Q@z<)>u=u7ZmCD(^I35; zSs%zePxrB#wBpLx}07G9DF%Fa248ZUm3!6>0-r!sBkFX#H<;E8(hk>%Q&mMCbZTi zIK`83O9hVaydQgQen<9#rvG}*??n{LdO;LxN#D1O#!BmnQbEHS7-?Z6(Y%ua$pcao zGc}u?-=$Gk86^2$b3&3kJ&o6OKPR<=dMvv8T6O~#MY0oRmuaCB0ui>>Q)X�w4(H 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 YO9ci10000200IDT00027-2eap0HNP?x&QzG literal 57166 zcmV(~K+nHWO9KQH0000808MWbS01W^D0BvDzX=Y_}bS`vnZES5) zL2er{47~dl!QN%WX@Q*ji<}Y!1|w0sL?miMO11s_QeJ0m2ffY=2b>{8Df>tX_kU58 z3P1dL7CWLwq~UIoap zh({yMIun!TmE&?5T@gVD>U@HxsIIWfSf>)YU6t1P1V{6VW>nFEDvg}2pVdJtZ~zG| z(T9NCuF?~Ix>?9p#u#ylclK>ez65lB0{O;zR;Lq$aSANxD|BTBPqk+l zUIbWY5L?I&O9~$e9T!f-2;yv=I$0v}tJ~_LC$4Zj-*VVw;AU4ym@_!y(EQ!8E_4+d zNBe;l|7vjglzY2#lI5g~ggly4o#?CRF?(77WeWwm$#o z_YY7@0|XQR000O8O>Yxfp%3Cd2;BexIeP^F2LJ#7aB^>Fa$#-ky=ik>H?lDNJ-_1k zR%Jw4q(f4h9Z7!5o+NYqytb3a_GA{7D@BS&_OZFhTpUuC?r(pA#?}BD%OR;GGk0#? ziA5Zs(K{MI1Ni2fV*bATqS`s%CEWUv^P#g}gf)vVVamMtBc#>^?dNa{C@CV_4&nQP<;8SD2C-|)GMCz|FY6&GxncX<;7w;t3H>F<+nvO zo;QmD{JYDl7sa&vw5X=#tY{af#Q=)R@od3M?6$1gZgF;2EQ@cT-WS>YbJ-j6sy|I; zjolNc(6pDIG-l($;$mJ+#!nXWNn_9~82m+X_SkN;P@OJ#rvT#is|1w*aMvQ_ax(1= zhlNc(WAS`iy?a+q1xdHXx8D|n;xS{ynTyAkh^O(m5xqibtEAOXv(l%sW}CPH>HHiViS4)NrX98eUYFs)8#R$(E&*Mq%+|nUE3C5z%O*#6S%w zahgP;IZ!Q|lk}@L&0^&=TghgRd9Q!^6Z`%cF=_?nTLN_|u=?Vg6EmavbWu816lO(G z-k$uVE+I*Imb_9ZIG8&Z$f zWXkJyOm#|`UXK{Q48Wf!3tk>KH#XM(vz$)i<0OdKcx{6fSWqDF5vE2neCxFM2K~CT=9D%AxnN5yA=6`_S6~GqZ@I6M(M&UeAD`f@F z_OV49De(c4G-^zU*s#c#Zd^i1FIf$$@w?ZH(X7#vX!R}hn#HU598MR#;!dJhe9f@k zEBf$nt7!E2k6r%D3G(k34fT=FxL92P03UjyXixm=!!OOni{9`87_4|<_sL+qVn0yF zC%PW5W8tKF?Xf=$n3e#g+Npjd*MC@y2fa}_p7(}gIxOHBPRD9y)v{pS%75!~EKlxX zwT~+VG6NE|W*9MTF%Uha^afw9QxT5zVYurZJLXxuzB-=ZfIc&e4K%b$je*^lGe zD`*|2B|6S;aOGR>k`fVu2y$BVz6PT;0!`dKvUJYxB$lxe(&c#s7$E`0)}#PlRO7WI z(6aGqtt|tEz#2kmVJWnNV#q+Xjv%7od{Gz%$7KP_A*?>Vl;;Z|u+(H(za5)dt9}{6 zQ5bE*4@EFZxS&vosFyb^h8r$sPLT2@$V-@#_#*MA#@Ax(2jAWWimR#P%|5XOIoWMg5x^+=3Bf4xY|0_4lc z;d@+8ut3TuWDEy3pKcZ-_}6!Z#mE=W$Pv%i#Yipv3#1rez0G8LVx7=q55xK6VDjsD z{RK>pRnlccB{tn~9r@Qq1BziOkpI;XYfoSEqCKdvvNi9;VyM<8Sm;~Loz=_OHiTT+ zG`kq07-s%Tq6UXugq+00l!%t6XR?(um;b3Zoj;wh33$hGrDom@{amwwsS}2t0N%|6 zz6z{3FiztAxdagQs}lyqmy>5qEd7Nm5DFlJ*U_JWWV|7OgFvA2k zMblxSIO(~L@UHtjat`Di)5oQf1Zp+i+Rsi7|j=fIXrbssqjw08AWBD3O zURitzaO2H%F}~={%NNyPFf1E#0Y7Y(zJH6%Rg`z$Amjuhn%It-Aw-B_)CojKX$S9JQkXLmLNfBttYzdU4mq0(9jd_nsNeV)9 zBoyI9WG%?wzQ2&O+W|GZ4VmIa$~rGVwFp^%!#>INO8%n(70q^C&fM{HZ(6)6z7@ft z1b_@Y825T}&R2|jlPL8HaD&vN1fx+q97!{7^oG@Z#XSlDBddkuX_e8_8_r5R(URo? zzf-j{9iAJ~SgSm*hD41a*_L?P^KQ|P-b`mdVqh^dBmgcE(F<4KR}9nzfC^ONT~QUe zm_G_Je?y3w)PGz{PbwHlp^nn3BrIiH4WiL2p`R_fVZ7=`V!7f%fzZ_Qo-e{PHzwG5 zbu}z!KljGf?0uv4QOrs&h!ldjR^4J0Bo2E;>m!hogUx?Ws@eQUraMk*i2#9h-0ezr z!~S=%n@v2Y=E-a}xv0c^oRgl@O+)lkr=!1)d(+iRnD|e|jgL)Q&f0pUv2R z$h1t<-1RL*(Xjl)u3sUgq8GyCKKjdMTxS&IRu1TZkFkBI>A>@pXb}*nV;N7UWv#MW z@TZpR66>rQ`gXId(MJGrp4Fd^gzJi}JS`pN=(98zGUC3#nPnHsm7oT@HW9d4L`foc zj7^k4ZjG+eE6B;dBJvNk1p(L65mJjIm?gpk+fP-Vkx2`NT$he(qM@eZCU=4Qx}K!B0DV!P(W3pR+BGTu_Hj zuTjr?YUMW!I@8rOT-d^F;pf-zQ+M$=unU;APl7jy;5^ya)&>TVo8jWs^w{8_n!~vy z$F>vCT?;Rk)h!pi6G)(zL843!Pp%nkl+S|@(n?Ku8kO0TFp_$EBz}%h5WM3&C|{7= z2zfRhuqM^`-Ga%2AMO5siwRTh@jR5|pHA)vdQ6r)`_X5WdXSqe3oW_ylxu{nW!o=P z>#rPipZ(M4i?Dp&zu@zJ_H(c3pWszl)cZpAzR+3X3#(UhO)$)xx{2^eyLw`!Hu?b1N!Oecr2s+Z)FNc&m*0AinClHuu;lHRNQdp6oju> z(Mb1_oC;c<_}sR-NSk+hShnpRIZo6YF&6i|C|uynC7x;CaYWp4I?$oxIg?#Gp44@Q zmIa1RA=m+x^1a%V_EO`w??~DB5E|yOC*{FNU@YgK_zwv0GPZ2+ev~(>K!C!!>;&CC z!lBs5ff-y_!lIV1M4zy$mLJJ-a2~9lfl*I>X;bMXVvMC)B4E_m+0HTqaCeYJ3tpU* zV=gKZ2hrgzPMUUba119G8{*7J$Q+tQFOhM;6EMHy2}FvVY0c1A1!;0w!#1g@XG1-` ze+%dOrs7)kxVL_J+btJZGzD(f0nHG$UUVG5+s%?N>eb{OrVf|cdi+Cge6jMP<63jFzNdh& zpuE&aO6{a`g$O$3B=%V^`FsnM4cafP_6s`>w)K?R;HAAGs_r1lWI%rW;OT`!D>3)# zYgLT$CAY(Y3fLWmljWkzTW@C8CsZtePty5GrAf}gsAZXYM;ZrmDiF}25MJ$2K91jJ z&4iq#BW!g-oItkDK}HWmQWjaapXmut%D~U4xvnjeJ`A5~=AIIXxk(_3SXc@{JJ5KT zu)S}G9sx{gz&9=kBILG!5w~X{KGzTmT%a)-ztb0Jcx&yW#5qX!OwEepI4aZ;n)LBV z>U1RDoQ3?J#>lMs(eVNtS8TzpJ4Vf92oNhUB_| z(`3Gh0)_SG&eSKZJ$Ilyktz9R%H!+KnyM4ioD9X8XDAMx;3tv#V1{ZkJ(xU*yjOgH z%OIBU7o<;6`#{z-gq~h}kaJ)KccI}fG+a{96jAA+%BI#kcfqJ};?693cXG#0kW>nVi(Aeg=bP^n7;)9d1g++6v&9sxOzYS?Bnq4aQ~?1v6Rg5nDcL!Ccre zE3W08>L7OEES{72IK#m@m^otvcJ}FD(#>(!0l|nG7)IVb#dceMuZ7C97FT1K+dk!W zvTgoA!MJGgp>8BDjPm@ z++Ca16k|p%LqL4MkdbBxl$lM(0B=1|S{od2x*WS;Yup+so{b2eIoP-?0$N8_G)N;# zLno2T=!M|D8&&?H`Ck*P1G23yvl$hqNStAVuOku<_$3dY%0i6H>VmjlI8LJn8ca!~R7)xyh-bk;hef)KqoMv(1CAsF*C>vV`hem|!Z z2!%@4GDHu25iCRW#Duif%X6s2!#r-cZP{(i6RV6rx9viFRoSR~g6`X?obn#?X%E<}BdA&8+8Z+6Zl(fbchgI}^e|J|g|KKaQ%^n+`a|zo z*{G&Np;_oKE$W|0iZfK`AUBD9yk|Gz&EZovr${elM92D#&%g0X8kzl(9wyWx+e)v{ z=nXiyZL-#wVeqM&C1VRy_3aKD`N+mQ3ydW>;2n|KYniLKX`0Hfs(0__8^~kQwR}8VYe>=HvzY)}QLD>AHeZMcVnmSXejQ=j z>(beB+|(SmF32sIV_2Hom1J6qYf3QJ9MwJ3H4l56+#=^aHT)RYo<0?UDxuR6G!Szf zBn;Zo3;KvmJa*z#Z*YtoA>$>-Q?0Ly&ij_!KFh6;N%SNRjRB$!FC=EcVnnfEy zfu9}}oVF2M9K1vlr0mm@>bx42&#O^2mov4B;d6K!$gmnqdJNqQgq0oe2Ma_yj4;BsF?erkwXr2^uRvsme@XaRMBp~8<)@;f4B zgK%0SPwtmSsa$6vA_~^ef49Vy4wrR&Uf#;g_e>(6d&6>kQEn!>voooOr)CvP zBOFZwiDR{q$b^${q=wUH5X$;v5cl;ZnBS8h7g`dcMf&djWHv`Tr>RA zEGMRdAqIhO%Vta-jyLIU9qY+JfZUSzAYUgPA)JlJuit)*t@U;Ml^t%?AKiH_EN_1F ztZJa9gAH-jK6grQ7g_EBLci#I!d z=)-S#9r&jKEsllyPag#o43C2F?;rjKvJ5;V<*F4WhK4U#3c~Jg3>Ei)t-*?l!mm)COJqG#8fpi~>XsH0zr?B{>hu!p7;kQ+)>ne3tkaACy=F?}9LuJQ zV=$PFy=rJ1lXY{+eSS@yoS~t^$I2V|1{Am))C29{EePp_`bwH*CM7oxaL1R~B!wI- zW%8tdb+Acv9-)zlrKP_xSLj5K$agn;8f4`c*;kZ_2b`&Ss`K1=Ek7DJGWSh!cahvW z;gxBZ`u%qMeRA(%_`-U*J;NEq9yZT-)I2QM4IaBdFNtS76|P0B)@eeLt=YZk)VY;a ze&C!^-?JYS&pgZUm_Z$q4*+4mqL;9w;}ruCGI>r=@pW`2 zZE+YHk*?5o&Wy4QxB%g<8n~IrH%7)I_?c;=qoRN`Mfx@zB9WX zR^zfa^}+CC&;*zl@S-~dgTKeXa2xW$n6G}J+^96o7?GpNU@2o;yg=(ftg(OJ}t`ILJYBPwkrJBjs?t(B%$k%29TNR z+`c}aH@(>p z|OCpBrg) zP=*)O3f-4P^hGsZ%n%B)_@^P1Ca4s((v*@T6LEIUp@N$o^Z-xntYX+8OqxzVQOtOD z{WZ_7=i}H|o?9CW88?87*T6-wm#>h-rm+%oy16MDV^e=G-3G$&1cRk?w!+~S&0*O^ zn#CBGO?cdj^SI^ltA%;o(oAlr8mL5SF*An#Bj^>-aUOj+gtuuZ(HSqZq7~K8?X!aCh(2uar2P>fD?2-yV3n zI)~n(pa-zws1V@W;-Yui2mBH}nr`e(A$8^k0P<^$wR%9&2R*`_5DgmQb7m7@iMlgc z)NE03TQnlAI3g_q5xWVwTD(%j9-#_^OC|0RQhC8Y0N^gKeYxu(d5I_b`A4mcnSnp~ z?{dhdvg=tJ)_Wdp7&XUk&8V1LDg`a>fS2l((NbA~X!)T=OJxwM&l>0|+Yn8oCgDL_ z&k@z|DmB<0@-#L09`Zgl1Q7H{H6&5TOL<@;{;FlWiB{BKwJ0}{YC`rAc1119C;CkS zFW+Ee-)K-(fvT;{0e6x)nA)+AJ^hF|!FmqYi?BS=$9$*-n|sEZapsglgTiMoh~xyiNpVO zkKk4~)Y;w2G2U_F7%!ig@R=?;%BzZq|k zKEzfH=0u$e_9^MN3@yb}0RE$v8>uBNX6SFJ=Ur&ag8K;h-%ka7r&<5Kof4por$P99HX@Ch5<&%PHafE#M4wf==LF!iu zI{}bp$&}K3$nbVfuiNX&kdiq-ccvytcvZrB>0jVz$CUkm_=x{OTpsK_WyrdD;ASa& z1LYm2=Kx0cyXO9itE2$UKVb9RJuYRO!4ft^3EH)-Skqe9JF8$K?WM72K@$w+Py&^s z9>rRHvAszRa4iGQto=mXuN?lpT_}djSZqVdEvS~W2L%oT6i`Ti2?VLI(E|C+ zQf1u|Cjr3<&j-H5^Pw=R;-_d)Q7o>f{Q8H6pSuQqRQd`oiOR`W=^iR?+^FRAuI`fg zV1VCQv==3kOC*s^eKfm??so@|Xn^_P^|tFPvEXL9Y?+;ZYr?_+TIH`&uIzLqWc zzuxU=i=j?*EN6DgJR5}=oX2QTH+Qd*)DsU&SWne8*bM3Vs)+{wTd%v*Eq2HIYIW%T zvK8g^qQ9A+sg5;<3VaG$NJu*o^s@Q z4xNEl4ky2Epa^~zn!?r#86!JrQ79%BWSl}Z9X8+>qg>)m2=}TtepixNehy!1<$0!3 zFTZwDFCDYVPrLluNxNJJ(C?BAnv?JPbuiy`9i0mDI_bqIC?tQfqN+9YJZzlIF1=Za zJIqscTyO8yAtoSHoiLpI!RP-iCi9A4lQSN?Do4F)JSeAnwadPfm6>VgGOE6Db!?aG zyI05It9otAncAvgEv}`vjJw;9{ zpPaqI;NX*E8KIkuuJM@aY->mT-CYKqqmWLb9V>6p(toux^1{Cs4ROw|F4Vfbn+GVK zV6FgaV3IhQ2I7>WY@Qfrww++^P!Y)f4rP8z60cL)-m0EjK#Nhh^$hPgiLEe+EuX|d zvbCmf57B3bNOdxJtemB&yTs7_^dd*KoGgkj-?F|Yi|IxA%aGq=UUb{=f45ZQT8Pt` zX(8-WmwBYFbgHEXWbpG_sDz1EcyG&3EEbrGF2CUpc4F@obGKY7dt$d%v%2Vl)Y?4cze zniz8xO4iazVq%x)T0KRl&o$ImXco8BROr203caQq?}ET1Zv5X@r+EoAZ4SmrLJ9Yj zO7Cr=(iobEyA(#P8Y;crtW9(@?|(&lTx{A4BLc@R5a*eFb z|ETQdS)0^-2jo&k?VA)f$@r|D(@FN`=5+GwBrpG2PAAW1{J)LNOVZngb7Qva3y5gI z&f>CrAaXq+Qo#4Oit9H9fezbT^T(_Cdwww{X+hrA(m({dKU!SRmmth6uFE%iN7M_) zOU<#Io935+zRW7U*wn&ob*vDUvDwQS9Gj`nR<}qXy*BlO$Vzxv5PcT zO!le=F%K|jw>2`Xf}b+zAc8u5>~yN&>%<%PS`1kM{wVSKZaLNqwPg106BZSm@ayyhpcpAtXq z=0Wf;zckuV74m7HN}Qg)AKEWaOT)R&Y|0T7ai(wmNaKS^MZ|9urq+sTukG z;@SvM{8j{B7vh$@>vcP5IUTgT4qCbcTcAiSBN9ayafKusqsWnN7&m*B;~JY;)&Oowxlz%s#IiVS))wv0zQS37E4`@yC8_ zILNc;GFJ^Irl#^aq}GFzdRdvU+|1=FNB(m0;NM*O^;VPqEj44^RiUjc%1~guMH&Cz zY2tXMeE~nZ>Qp^50AogIX#wsFzUE6lG00-rfybO>=7W0Jd4;c^q)ZDxpb@?C+j-8@ z+?spe3PH&}+!(z^KYLa`dtzJ)_vJmPMcxIsB;HP6h2B$F@^RVySYBMKe?^2S^aN$S zX5Fp6^zTupZcM)qTZOg|7!JKYV|wpmUaYg4^t_tShvoOUbWpvk=8rWnz4UXloZY0CoRE>IOSR=TF7E5Q z>E!B%YC7Y+LP#nR-79qISMEBMgS2>cZ+kfZH2KxJt3F8!pukCa-cyw973yzB6a(21 zgf#^wwXPb}U3~v3EG0|YRyD9u%qcTO$t!PBb?Nx=2WVvy5SKF!@BFO<;q2YA3YZU8 zRsMh0b@BZFEW}RGhZOs8T?|ko&s$lwZVBl4yVkfcXgRQk71(6)`F+|_F||}3ZyP+H zS?g5 zgiVdmO}o=I8PGND5`v@xogdjaF#TI^|-cCdN_DVuqS&+p%L!p zA>7SHn8)$6^UhnX;b{si_IX1Cf%cOtHX|IsZh3YT!|*z9zcsSg*pv8SJxiH^sAY|{ zRL>{)o7B9>C(g(=;ka~V;~|ufioNecj{G%Ln^lBoi0Xumr#|v7v(eCC1=)(Ypw2k4 z4&O)^mg611m7vBqyvcAi`IUdd`0(nQ6HcTQa+laE=lBUMfnfB7frfN21Sk?1F_Kl= z)4Bu%<19cu>9N+F_Sg4<5XAL!&C!K~f{MZOpLC-f_sw0m>A?9m zMV0}&32DlT+~7IGkivnp!M%}z{9c$ss1igw6?%I#7^AehQScJXN3g>&HtXWW>{q;m z=$QX1Cq%nhv46cBUhR2L#h5{C=9%om>ijujJ!Y~JX=I@ z!dd7M`n)F*8y(b3q?_PFli?vTH6Z$7;ED_bSAj4vXV7|Ceo82A);OkA*{(ym`g>Y_NN-EIr_l1QnV)mLcc7sfI8;0$FF57@z&o!H-2=G$sUMy#+BdakPQKa8|vQ6L&W zq$+_|+$-crDzOSTSUC+=Zi76FMxZ^}7~t4+%@?he=0Zo{z^TWHkbBgyn#C#%I0a{g z;gATXrXlVaA#8vn)hzIaYG_uKG?|F6x4*E-$~xm4jL!b4Mm)S-f4(GOd^k5A7uqPkhrBrA3Pf#HyTU(>c0KXz}-3Q{uon zo$apm?&wVLSSvAv5`2$bDUY&=z>j=f#=b1^o!+v@u57;96Vm42tfH}&D1UpFG~f6JMw z&?&w_rr{lz618AOe2k)0^L#4c$@TC?L)^Vl2bFNe$ANm!C+~E)Kjz{#7hOsNPz}(m z30OAc!<~V4;xO+^#58XNfB*u-6>ct{^;d(oUQKaDjN&NDhs2O{4qru{JHWrVANU;82PR4xSB4(!PJvpPRQdMF4 zNKLJr874>0zG2GJQ5L=p%W*;}6Kdxy(P8+CTs@5@R$GGFXZXWs(Km$lY51{aW$7(f zteI7U7ez?Ph#{Ou z^~-tb?f0p9As^J!G5+b9>upwIEEtD$cjZO>OK*{e+mYPxu;W|(x`z(`$w0#0KxPpG zCRgmqHqlj6G5)CNYh6D1m)`)7)Rk*>`SeA{4de1x=7RKk>z-ztxzR;%W6@`t^Kvq| z5^z*)G3jr5C;fdJRU@G2P+@M*DAD#YhQ~bUvoT>vSRPFYIVKKi$bYNm@5w=t3_)uR zlXCtvEQ6{mC#>$(!)P=Ruo3ylNqB@Crzx7*BZ7Ck*nf4}<{H=9Nhh7&ZfP-uN|s8vL1>p!q?DS};AKp= z+O}??#Ux96&E#Q;Cl1Ow+MXU7eUYW$Iq58r*WQw)%>pmwgV_?{&Q)~>H+MoRAi$Da zA}md27x^woj~giA#ED|E(7T5>0O%b=zRr{bi!Vc`LZ2Ks?s}C4HM+88)kJGsnNb5A z0f{dLG8?i6N^jEQtq%@*IPU4KS@tJ`D5^GC-Cr2$ zh+KvyD>Tz(xc!&cgL7EmQu!}7(kl~W6Ar+XM>P`OTM5t|QDQrMX|XnoYv(ubgqo9v zmw#<(!a-s!?U-xai-$(ng0EZ)hkOr7DQ{^gMZ(P=N?WdOhX+o7lqH5zj>PXi zl%~{+7#UMq71R@fc3PjDG1c~vRyz(9wdN!5zxGHQ7sr|-Z7Vp^?rkvAW{ZVk9UOmo z$M=hTSRiB3=z4pja?2U`_WnqtauB)vQMrca3XIC$9iT5JgUriGSr;X7k0?|2;;i`d zWH>Bgyq`T_C4RN%lXpEhpU*$dS68LjXJt(*a}poDS1J!yt$CZI?#({=Z$c5iP26Xr zyj(?Pl2wae3Ku=h@M>@=053Js0c(Q81Fp-bqHgl^JY)M$li9Nw`%iMCAM$A>vVdpt z4fNuV$LjtOv7&K{_LeC^BQ)w#Lz6X}TIlSO3#7b?n@SZy@%2V1vf<0a(J)F~1scOY z#$>b@>C0^sn!^W731*<{X-Gu*HU5f2Jg`N4;R~`3J9v$CxDdfF*u7NzfMDul;+$gD z+JoJ*pV=Lf!m}A%xl#@&4TQgTYT647YdbN8J3X^YcHG@R>{?vqQqE>ac^kzIIS>=Z zsnTLlhgSS)d#^M+GI)&{NODVAeb&+-K6}E#iXq5ST2faD_~41ePiC1|64&=edV3TC znKAe1nsEwzvry>@RCbs%Td;x(UkNDglX%cEZ~!?vG)jdz1{g5uK87jIBSk_k0%`B! z26OU5YEQ%Mp@{|WG{P^bWH&@^B~6r_x07Utt)?VbcwnY-9)IqQtJ(WB<{>QVNCO#z zF9^GXhW$AjXOi(`DEJg{=K9x&1662G4|E`QZ?|RA`U*_Dg}jPe8|~75ugL01-|%hx zkZf}rZPW4^sVc@DlJ}EgR3q0`*w=vK%c&!@u5(j0368oZ*{?{tZlAmH+tIv;4`YV! zU$=%>`OP`5;9TC>EEfD0--QtW8T@I(UU1kUS;^z1kgB z{3V7%N>8j83|L?CrC1Wj@Dqm&cYO^yK}D!xNB0<@GuC5A_n6|u7Vjn$&y2o&{=kE+ zv^v~>w#kMsn9snkwjoDh`qu0b95mynEAtdceKm}$7gkV$?hJ52j`$t;Oi=cn@?%@R zwbIi*r-vqg59~TTfS}5`%1GSIjF5Esy3*G*Cn;IuruPU;YSam_CL%8!LS{t|__>D^ z#4Xr=y2n4l&7z)~8l)m#QdQcBO>M|v5?g-!yqtxf7|4^zhdgK;HtAc*UVL5k`4iO9 z?`vModUi(0?pi5QDXn|F@fZcB8hQsu90gb0GtLbPF#;yjIs6ALIupuh3O z#-0Q8`;QOR^x^5PNm4W4mScS}B0#hdBQlKgBq+(hUR{+_nfxjd`aAq|u>6N9q>NRx zaR)&5;UB~YF$xl8)TpR|vtJsRYv`C}QQJ6vqSi{$qiTor#&9RCF)6mW<7?BU%lHNP z0VWQbhdS?OssCD`0XV{^x`^J?#DW~ENql^*#rlV2rx40ORKY}iMorr!@E`P2-VtcS{i06nEPZxEpD!ld<1$^g~g^e&Gn{0 zTl}*O)t7Y)8*oJz7XzCp z^|*;@*_EtECNfqsjYSs zSOrHRkLuv&Mv%X&wbN0`4KVQ))zz|`I7v--{yZ6fE~m3nzQx-tqU!=9Vhv!VmcmBF zI>6Z(@l2zwIU}h#Tudv)uLYXWJVx`G8bBUfKu&7`Ii)dK6UgHrIT?ZpTLLXHWCCeI%_*kYwooc zHJ*2KmMqZJiI=D6;%RZOGn2z4yHmQ;mm@)W!afZNn-bePGxN2C9+0`e{&HGZ z=9b9Kvd3vy z%-%?xfc5uBLU5@)k{DO=#is5-&Jv%(@V;6O=6{G}_N8Z>iHwNoeavgg3SlRniOs=w zomY$Fa5H3Om|kCIaGoaL)LNECwE`258nR;jZ*EU5$DZO?u5V8vxG5O{lk3Z78$PfG z4cQ8bDz?0eEux}>BkCZAAp-AJvo=79{h!T!$ZzK4?_BHe-1V*1LCfhNrb$kiMi0m* zkxJUjxRtz3`DiS+y?0Xs`$D*b$OgGvdBctJ3~a+Y;gR(?3?>vXQWPhq2*Z_03y!W~ zbaEEES01hLWv`B2DNqYtNijLML9HpLjxQ%4_mG@AF*&WWF?G)pP}XjQUNFm* zP#a6=EH0w$h=wpB0_(MG$bv&nw)2I8?x9MGC1;njy@p`Uq-5Gj$#}PBtuGsYo; zBAwWlVLL7#i|0uR{dL@%u3kd@$v8U1v~&>EYQUd*P{F@kG| zrR8lz36w!nSv1v1YE8f+c64p_C&l&W-uR*%&R$9Z)6UL|T3Z1r5xfmZ!R>cD>4Yv` z>zo5Wz_(yOf678@Gofx}10J*PGw~lw~Iw!I~eV~tW z-}+)~6HR@@?WUbTlNa$voBMGl)R%F`lCjIE+A{7WWNbR{W!#C%xXmGy)LjFmmzKb* zwwZa+x2+&*!Yl_{zUMuUB(Ok7xkIRiB~enW18hMOrH)~q!QA>*@*W(v_(# zr)=5Ir@f0gj2NP$xM0ojg=Kvjmh~<sk$NUAPkO`xw)Vp7^6~s~75xEC*T>wNLe&C(+c5Sc}>YdLn|Oo5w6gB8=jyKmAGT zi`89CWe7x*0rl7b@f#oSfG5tT!1u<;3iHfXY7yVz>Pb(bh`S)-JcygL0yteCyFTD64Z&dd=2t9+nuw%klOhyD(8iQ1n*rTJwR5ML>F!Zn(QzteA zyqPZaHw#WR7`$W_iUITPz=k03g1C(@EKjSlyy??u6Q(jxh`M;sK*)(bd7CELwsHHlJ*qZ2Qh&R}U^ zQ8My6oP~-}TqshOCO=2CpJYUnYIW;%p#)UA)7zwBr{>Yg)L#lE7n_E+{pC9)TW(pF zjW`uHZCaOH8&J~ImYJnmiJ45@u7l>6spqZ<5}K4)Kg+*q@F%ej+qRZ|@n&8ofQ|(~ z#E=>396q3x0JJL3&QLfH9}-CA!R+`j>){zqAXsiKDWQX5W`TsE;X1Gok8+f(5~YcP z8TZxS*Qu|m=sKhA#Y7o@ z%juH8;(0 z)%Lt=EMT9WZPE9h5zhDQxAeaM@ua_lCpA;JO`OnzK0{k9IvTlcSFUR!rr zk;QxhE#GO?c2=I3)3=?h@4RAOR#9dAvmim_Y|y)iHc|FYm>QY+t4Qk+dRI!OH)#Uw z0G)H$a5pNJLdDTIJa#5WMWZh@N5{H~M$Av5rh%zBBUFvtuO`R*H8t)x(=_ctLj2IG zc6Rr=mPCe7wzH77t*K>;;qb@BoV7P0*i!y$FLmUk8dB>&ZTghiPjX4VFYhVc#fuf{ z!>&BX=4UPjj@VM4(FH720HhxA@RATb?37lU2!q%t=v$ZE*+~E{Y57obE8NJ1ZZR!O z>S03*u5?}7XSS}@;i-V69ZR9L%dr=a_qTqU!y4MN?k3cxxYK!~wTWu0GfQO-rzp82<|2s4&30pKeg$s4kr#!aU)JdT9cUzTt(_Up~C`e891^hV`)-W!T%{J5_r z`p(*6tA`+k&QIaQL9&AsJVuZ?Y)&DYZA2O2N;i_NMc9FLxFBqt)1b+$UKNN4CS2|^W9g@k zRFSEa&{Ao(w~viK5?(31v+m|Ms;%;V1Y$rjut};M%Nb-bG%VinkkADpafPc}GqqLDYQ3CHuAC!9O?fA@cQrVvmkf`Q#Ak$8#Ck_n%6g}-qjWirtl_s(w;>lh@*|Ke3;xqrxSMCI}OJ=lWBxvOH zW^EQFwhWof{5?bH$=+;FK&y1hoB8QMGg=qe?@~KmF|n+vnDsbFsB9etHA+%jO$d!O z3K`Md?wiTcL4)ujRPG^s5IKe34tKX9j;0;>ANJwHL;u5p=;O%$atL4ciC&K2%MsDd zv4GYkI(jH@J|ud21fLE&L{}ZjgLaqbtt0u+J|Oz*NM5ub5j}P!KRS=7J{3>)A5xtv zz8oJ>y-MC39_~}!O8)G3+Q(GKl1E3~&H>f45gPr=h4A_o9MnPdA9%X;Zd9FU$O1@__#|cR9A9t|M2kOfYPh3WZrS7&HA8FQ2aaS zc33AA5{iWn5B3iaC}rzPF76*aJZ?XtbZ%cU@_7IFp!1N@ynV^b&cX4)!~G*l|Mn$2 zyN?bY9UXTmEj*GOdw6hgbbN5Y`)fZsJnS3+_kv!Gy!m2{kS+2R;w}`l@vw|dzssWo zKuZK*#nrSNR2RK@$wm(G_0R8n)5gWO#RdD<1P^d{Y-ewWzmp~Y{s#WuY47kAnhXA) zokybR2`c)hDC(i2>mA#Hnr@%Xj-OU@+&LQhZTxIk%K&qa#fC{}>2ls`YWPjC;IHGW z-e6D;M18&=I)2xfeOt`nFT;+T*$oTW4@6e?pZ* zEVYEO>+=_Vw(UEvcv{%}^P35P(E?_&wlRwsLQ>jcMAf-aZq7&mNBfqbwDsdEU8{=g z2(TtxFp(T6iC~QY@@z1+r*OcukQ#*H;QB@rsQO4XzI@AgJ6TLG%3p@nsG74u7XFXl z!CB2FL*^fT5m7jk*z6X|Omeio+rq6a9S~`-=5Vj?B2#*np`5r!LK~dDv=pu~HuhC! zLpZKpZ3<57SFtnN9NNg%)=j{z*Va{HN>vdk1%-Bc4bngEo>;2lI75z1wV@LVD`Ws6 zcL;NMmqOPSqZ;Nm1Y-|{8v?V(#!Y~&*ETqC%C?b1d2lTKW4U1n8=cz?t6Ye%!muf2)EonEYak8eFa90D?TuX6&Y|1!Nl<8((6VkPk-(n zyqUZ%Kk@XE{%1BM$*{T$386|Y--qU z*1&LA`}7ylZ01VV@L;BSU~n@HO%F4H+swty!6AfmL=QoAL&^vaBczT85p@JTJKEpX zL1I83`N~wVVi#3BiqzZJn(J3Us>}YjA5>q(23vSjw|edt~;$LrP455t+(5viZfrCTnjiLEI_w+kP6wtdbqoa@LhQ^8I(_l zlZ%fI;)0~IkkEcppSuH0!3ja4{HRi9T#xPQw&;owL%veu#uodwO1Gy|C$`c#bcby=Y$5dI zNFep9yjVr7@qfw{S&7W|2!^#*19~gf*EQd|2s2~JIiU)!awW@-TjP{MM=o@cKcyU(>*fQt9c4n+07UYj5#%VF z>gz#-BITsG>EDP{98L}%o%&32`)|c4CbUHp8R^dR=%R(Q*g_1vq6=f8aTgh!hSS5C z=n2E=+woSE?R`r*%%IiJ8MG*t?okMx@7Ei&`dqvBxib$9T0l+au+`5VwtUnxhpqkO zu+^uBtphb|?Qdz=qPQO!w)VYY>wp}#Y*A}Zz5kmHTd2Z5s<7`4LVYy^$k7MmN>|;N zoa@8rvY#H;4wBU1;&N?*d zhD4en3Xb|}^*~!21K(i3n=C-ZXDwjbB8=p*wWB^euil22{W(dJ7O}ZJb4W1rQ9+}H z-Z~V`RODz=)DKbA2a53aci*B&_()$giX0#NO$0*li_(g~f;-XLUUw&8$qIpFh7+F+ zb_WI!p_-T~r#7V+yYxGs8&DNWRtfG52>VyLzajG@;?YpTFp&>MRtybf0r68KxQ1)3 zFj9&cL)KdlG|b3aYP70*OG%c8*HzsV#u$g3v@-i6tnmmg@qmHkov10N@;9=!qAVUx z$jV{$5d(*&i(Yu6Btovc1!F-;17R5CEP$G8DI8x;=0Ew!Cgxh`VgokyRO^8D1kBM! zVkT?Y#J=5oHtTRiKo8Hkj&>znGe^VY6p$~muh&UWxsCy^Y>TiaSRb6qp)S|5UXvhnf`l1R?l zj#VAaG>A1CS0M3VKTM&>7+izGfWz_#@y3F6@XvCSfu$AFF=Y}NHfx%VdbLG&>hr@{ zX9)p zA<}dt=ANbzxxV9Fb?e82++Pgbe57-mF2hhwtiek?PtXZ=du$sZlWudnk zqk6NZGxzF*aQ4iMNct|_&Fu3&AlzpNBQmJ7CFObIb0_|}t9gW1pGv`IyQt$A0h^gN zX|4v6TS>NNurZH00lg`qS_#!Sso+(!wp+W5VtiISy4^qqL!}mhv&4Y z&PiSURg+1M%4X_DOg|m;tO@9y8V+%e&GEju$i_4zF-5(_#97XrocmLZ z4|s%i^|cXJd_B*LXf!#`qk+{`Y;7afSmkNBGfH{t9{t{h?<#o-dfb67DK{4xPG@+m z-SNKeglD=D-sZ)zzP{hm9c<7;dl`I*~*Mij`+@HG{*5kyKG1VAR9$0m7a()8615IKs6} z72fFp>;J~4J=n>E;EZ;$mf8`7{!k@1%Y*dH$SkO(Hp)ird^8MKjX*GaVN z1ln~I?YeLM<*)NNdd&nHvF~C;GCE60*gw`ivwb90p_8gWc*u;oc{k*_wl_ET_{Zje zog-%o-c?iZ+Ou++g2b%68*s%k#PTjTbT?x*o0YfSS$Jap-KAo~togTnr{Q+y-|ekU zzB9)JrUK#lbXUi!B$qO{f?B%lu6K=;t0Lj~hvnk~&B7DzJD*lZb}wVcR@W6khO%WW zX0-82#=r6!hU3<1GP4mj3q2o<=sP(dq=D6P6vWIaf<<0%5tcn`w>&&X!TbM<)HN?hXIfRrMURLAY5Ty8e-kZ+V zr3v~VBz56yBbXq-@4O9uJ%8}P=}qLjHLPSfrwSy+-P~ACiK??3&dL^=`g3ns)k|^R zD77`3xLIAwy@|K+6UGSv!FQ%Em({XqW%T)sX5R^}op4Mr_W{N(Am!#WhUy19<}nq&nWcY#M}Q7?uIO zQ~W$t$2?_TTbH-tzaR74{)M@Dysi(nW59|h7aI3ybnn&bZszyY#ss)Vh^190VJKyu zTGU_iOcB-ENazv{au5oETV!A!pUvPT7x5^rTaN}tvuT|Q{+eraSixhQUU_{uX(7pA6a;WFbu*-6M~M0txCd$B**gG4&MB$Kq5l za?CN}Y~|elXpIzOh44q|uwqx&{Y*tAuiz?zQ#E`wW$5P|HS&is?mYVsUN0^#%GvDy zXm<$;>DEQDhiuTWN55S+Ao-zJ4Oz#H|9bPjWJs{O3{+9gicxQPIhl^i!GDp5b)NpL zT859m-J^*yOxk@Qff%yvxyaA{QKxtBC$l*UsRe9#nK%(p<8uv?W^=qjYm)!$0-~52 zcBl?(C*0bgHj77z#a0WvyNo7^tvy+qkkE!~68Z4G*`d=M83=dN2#3}>HbFSB{2V|y zaCzj2!n=#`riEP_ zZ*jlXpC{vY(?vO+znT2AoK9F&LY&cZ4vzu4sbgcRXWwCbiCVDAvZMV%ysdBj!V^dBkIs8wm^J@_>~Y)Vuol7?fYf#Vs728VF~86IPlXLV`DYR?4Y3RgJTIn!R;b? z_KGEh-E;r@@j!exmKbpKvUdRKj4ad^7XwVILI|;L6tV7Fh*7zi2(g%bN>PXO&BZSVK`2?}aP!8`$!dH}fE@mwhcTkNOLoWF0t$oD4zKcqiz&ZEh=#%u;Jt*GMUfj_Q>**%e6$KH`b`|HMFdzYiny@EvJE+xt2oA^;6*=N{ za3X8gz{PGa^{Hh-RNPrZe%r0zkKNR$Elm?i$n7SBVWu{xLzJ{rq-t-d`&~=->8|SO zegMWAy5HTB?st9N?`G?McSGIpV%_gXbicd4?sqrW{n#K2x?gvYG90nl z@4)=T!iCw3-pBH9?6?SAvPSya?|pmi_1!jUieSK^wiN?jcO6(vfYnzc6;uXeS;IkR-Oo9o?cCsD7U;s4bJ!7WZs4m!5p)BdLh1yg z(wDmw&)#z)2EER}ac;+-B zw#gd4)+?|RL*!2R*omsnod>#FepG&OEPpcmdn=lf(* zyW}qX8W&FSkM#V`8CL^~5z*OSc*Yr>Sz_a*mQE?3AEw>|M%)w@fEZv|O^7ii+F${e zR+mlZzanuX=yhTm;m^u*XYT>u6jq<`>XSd0*O3iP6uDN5B(%X&^Ewhr&*@ydkL2P> zGL=+=Lr#`dyO~n$ZYb5fSt@auJR()XZSz?`)f@8YLy8!^i?_9bK03~CA-X4rZzrne zlCevKn5fhYtTe$5QF7baiy&zBOJ4s0xgX~t#X;*GExM<4Hd};E44RnBLgvcv!W@rm z7&pUj6SA5Nj+11idNC=pr z3FWakyH0>^!sy_PFnSGI${P{GUY-f2;{6=2Pn=Q+EOKNnb0nA%aJbuNK_;@Hxe>1fN1S^rve-}5P&8Orhe*j=FJn(!|N`Y!(QEqO+YjLDACt%sTt|e7i-2^ zVP2MI)LnF|9}v+|RxnXAU&x7@qAh0Dnnq+^0_`rL+;ym&;p0M4nz^3hWk*LNw%{VkOMm> zcZ@hXN3sF#fjyc##=W}^?stq6dB84=lWjfTzDGDYXQPyZ;BJ02JGCD-rBL4q4u%pi zNcQ!E>PThIZWBRr^V3Gohwr}~lFtURv)HVKLMHi^Nftf{x^sl$CKFS;uNt^H-5pDw zH|M^y)90O|wcF8;VC0#p8|H!r*Q<$>$eH~IG@@?6nX5q(YvNvs^{62A%{vNh*9)K7 zHdIJG+LP)+V3DJ~-LU$0vembnP~YSsi+>6Ab#E8ABlQhz9IUOrp}Vl}P<_MqFl?f} zUlH-R7Vfr!adAxib8omP>3CdM%g9EcMEfh#spcMRbA;l7CYGYH*Fu5yo8|Ml5;{&2=G7@IW~g6WHj6~P(n zY4EJ&RHW4}>^yIIUqHq03ox(jF2of<)AI@zhZp?c-mG9ywWQ#g-bLt{-UU34-7sC5{_HFflw^)#x1&c7v zxSFK{!kQME6un7c*Ai-lPLKzM~ zsPu%=cUePEnoKgd zikd=>Bci#O%S7`=O~{>Coy~Skk}cgyL|;?>7en*CIt39{f@eE{?I|ay)H1F{R}$RotGhX)5o#|H=Pp%-8txV9_}9;wGWOSb@w~R`<FXM zsM9%Q%xOPlcyKg2j}8yI`-hB}hllO!G|5A6di{3@k7?8`{>a@_wdm%m;EuLz?(yf5^DU=xlc$9y4Wo*kP<_?;kL8c+_t1cOD)->^x*@ zdelB_GXjne_a8oF>eG32z=&YIA06y7EoN1Z+KddOrGI_)^3B6vUOf5xw_>g&%<$0q z-Z?TAI!DUH>^l2hQ)jO=)hDwItZwhX(G^j_7a#1*tM`5G1#lmjHCD~$6dA- zsJCnvg2>ZVcnu2(Cr$zpw6zGwfS91`>1q}@&H@QeaG({lMZ`1Rz^`vQc=<%JWZd&v z!oDhc*=LGgRzuOjY6R(E)f8H+S{N&~Ej)q}AdVdXK8IS?2ufjb=)mx~ z)v|^~igg_ahR?Z{HT+O)+;?g5x!AIY7m}wIOF;KCMBz5d)U-pVS*D_OoMxGNw(laD zt7gYKy6ms!C2J#A(r_W06NvR6_V;7l&*WtN|?3s*7n48`r!3sRQ?~abSY-7j61ytBF~Sf zhxE>6IV@{3;+*y`Cu7;3eJk!&V}Xq|>m5#-#d~or2=}$^rtU$^*M5CpG3E~^tn2rc zWKlI{Evp_2M?gRL$20bo|5r8kYGMqAleZjwQ}n(PXxU8wSx(txIA|a~s!1kCe^kMB zY7K_N9z%g&>!PoWsV;>~SU+42tm<2Qh4p)Qz=f6Sg?PO|3C%ED~hKOQ$m%vjlH@vF(b#NT(df&9a)hcfOh`F+D9>vCpb!};>9w|dBlSG0?(j&jRk46^MI2Iy@mp8GKpZ(j4D$SiU29zJoX;$|Zky-r6)*jOI$yT=6R=mV)9c zhvFGH-HjE9q8o{6Hy|e_91s+sPm0N0@%{a$1sfQ~LGjq=Npb0Z8$uh9VvKggvo=^^ zj7BSk-jU`>qV#O`deNVSoPp0Tfr{kI>6zAP`Th=JEQV;{=nf-m_trC}TXe0tBnMw> zP60`(#$U(Wh2;Fj)VbHVj z2R=f4E-5B?H_x*O$hLLXWmDL*Ej@0(`eoO`V6J}e`0@p1y=S~bT(Hl^pUWw!vb*xf zKbpngAKMnYVivoCo*(?oLo0Bq@Y+T3t@61_m$mV%PKxDM*51W){$GK>vssdXXmd|h zZHUH=5%t`ts^c6k5-rSGn6OA8_B{Q&2$C~|T3G_E-eSwFJj)a%X)In$#*_JETwUni z*?fSn;LkTuD_VY9T?u-oRLQc-|=m|uYk!XXNAJmxQrRN_xI;KVwFY4*9cBCIMwb^^(?y|L2d?U%nnzX z9mBpIG!I>>H&jlYk=r&X}bU^TvP0c{kQjf7bmQPP+eqbMD`D%Kfi9o(Y!=4mH5_D&VDv9c1u$4e)AM&7XKGeKna;kBhKkuF^|)a>glS z-}n_O>~Hp$-0Ke-)A#IeCNw?*ydG8;o<=WcJLX3Z1_Mwn_&0zYq%ZXNe*~I+;EKXk zS6hmNdxmGPc<`X;+W{|c+Tu`n%N>`@opbqJQpbP34Uh0Yi3Uc(p1(|O2X7WVl72&bOqz|FQBWL}G{pWq7=eRYM)^m2|8w-7^aXAym8ha99 z#;wY5zsDKKBF*9rjJ0oz26?U#fIJp$O%O}2_q{HuF?lY=WOase&L{bA%u)h1BJ`$% zYTRQ^WW{vd18Pxz1KskG_6Di26`6|~<}ww@7kyialbR#-M#JS*#Sc8j^FjWL`f;n0 zcS!W@cH}`OznvVD*tpovB_BvS)nf+rP%6oad&HB65F&B`Y4{G_;ZXd)d$X65?-pzf z;2&l__Vy&ES$sfIwyk$Mwua&lUNNM2e6Rv-&{LSf&dxtLgA=p&YE(Ywr)*y=hVzP{ z$ZUWARzQz#(9kHuHN>?YR~O>W889us@8-Z2JzmFmyEFW%cJo0OM8LBFPvSq_#tQ)G= z8>ictGK5eFYSs(s7m|ZZ4HKod*^m!|C26&`h@CUv@v!R^)-|^^)hoDi;3$`_bFUiP zjnJ{$lsTBoL?l$Vo^AGPL5>M58Vivt#e;JB2`Tbx*V~`{fWPaX5I-TrLfnt#WQOl9YyAC}RY~wsd4| zxk(=(e?lBW&=g-56M05}W5<4|Ljs5o6Ldo0Gh`}IOi)d2RtUBJY<7qRV*vT5D}fiR zW-MV20bL}iRt+htulU@dWs*)dqyDOa=-0C@ZDu9tw(_OdT{95;boXP4Vjy{>jofCW342LOx}34-?c6VK4M#w8>fZnM9m zG4kpkaM&3%N4>P`S*7~oauSi&uvdo@Hi{bl-gatQ1h^EiR87J<*6KC>T`d-Ev2&_# zBW(E%j9BZCZ_DbFXVR1~Y<0Yfi9_bpgjQW;iXIs%1=e71)b6xpIqsShN|~F%G8)*k zwT#B$^EA4dvl5kt#=!t~XtKvJ@t|>EhS$Q~#bf@R+MaUR2fNELI}R=0f3~u*kPwdEfsh=R{B=2cG;Fo!#kEl2rdT_|D_4MF0D6%1Hk5THU zZ$1JhAm0NhW_rsJN*RFP9Ge$j1K}8Oagr^v4bA{|EiMEbtd53HR0o6P8*)}ft-5}T zU01bv#*h5@rDrtJ*9v#z=)`ji=RK=J)G>T6r?b*q+77w`>^3u3)pf{ z9hyVIF1N(d;~PUi&lAHTqo#MLcSza^l0OSNIm(UC3RyKMhtuq?tEBML=5jdRxe z+)oMTe!Ibpx4$bg-#B=C#?Le9#MSJdo&=ttb@`_%4Md8?_S1?KFMZ4R86zS zv=S@8=MD2sms9)y4AhU8F=Mf);2k5yw6t!Yp^2bZ%9Oj7xe5EP8gp`)u(Gy=r5m~uLbP&9$m2&#%>&4!Gxu89c|8HO`^fwH zh$27%aF;&=^3iIbKG?H7dpR4H806q*?(IjK(y@axkt}8@%ZuLp{R7e0Ik#Z>XGgsS z=Plp%SP&<+)GS6A%T)=61V?y4N@hKYUS-k~V}&F>S;yT`Ba9oeCC_nVVd0e&0wgsV zNf`K*8y@ot{=P#eu`mp*RJ|0shjaYS0>N3i^t1A|Ybm9y##>fO0JzI-#8FE5;WtrA z=u0SNHI6G~HNFd_gkGgWFjh$7lXZehNot(~z}Grf;V!k#VqH+{+;gFyTu0a}E~k?b z1bEG2KA{#5c?HJj`GlNeNyh_~Sfo0iycG=9p1@=p%>Va>f?$4TQf}EfT}_3CgJbP*-4m#j@53?L185p2Ond#U4w&+hHnLkt#go7h;mST zM;tV{(!<_-UXJlJPJ{(c>hPevn3lbnj2G94q{N=kp6XEhAX}#NZSWvz+0aixk@y-1 zr3kPjYWg+#z@}^$VTQ9th+RwUqm@%o`6ASlUVPJA{w_Q$%Mr%$jh3F>{1Zb=U_fQq0>ktrat_QCt#FrQ<%AvHotui z+qVNHY!1GfJsA(|)=#G8_iOgK&r#4T&6l*pI1HkJ)tPScN9X|94VBe8?E(vTRmf^`^b~WJ;YkGbHks(P7!HWld^% zDKV{;#r%|m!h!wGQ3X8ZDZFS%(=Wp#g zFkxqZKK7mXT9_DBynwsw@VpI=k(P(31(chsTT&91Ky^!c9#xcvU3*|{zSjl8gg?n&qZ1kdE-!2&_? z@j`GPytuBk>qIg7Lm=|Qmn|}uy?WfZ1_aLEjB_Oo)uLZmjh-K#hi0a{t3;mq~ytFrq>#X9PUy4mFIDy3Y+qi5N z?y@p13GPc?iFYHpOq#{_NGzfp3PTclW!{{8^_W-u;|NQjs9&`dd6lvdJd8=UGkL-x zL}f1q8f$`KIWiQ5NlB`A{sO5o?-_kOtWwfFfl?lB@={BBSmGxJE{DK%g17NQt?5}R=jI# z-xwA4GJ%{iXiK`h-7$#Tt+jI^<-r);g1b3`njU<1rHeBKYYagRR#o{a8Q{sB4H3AB zy)xiDH9Dm?J)vp9AE^t7L-Ne=N>rZn`fkd~;QfH0)$m)GTWDJhmD)Td9GLug7e36# zE^6^#z7^B>_vMtC;N3YjgBJ2rp5D0#ldT%Qy1M+XL$l}e?9Jwc*Nck1hVPpU2hYpP zInTTl4v;5Zibt%T@Z0bz=JK96zVJ!XAMkdrM^IgH94{NZMpMXnH)Q_8&}B2))U(kJ zU!#TbQdlALLSLzxyR@CDnp?3nwQ&I#$(@-;qLfj1*>GW7a*Z~Nx|3x6kUS$Je_FT^ zzz*D762U;*-!;YxD_g*3y=&RVpN-9`t3RKr0k0Z=W~T78DKp)7O?Hil#k(fD%{=kKLMHMu{ZGwd2qZs6CLtO^C=PzftUWJh61oYmX$CDrHx9ipFFC zp3LCY)l*{$M!fb|f)E1BmI$fA1buc0&{auA5Y_G^a?8ZZ__Krn0_}4FV6Oe1emWq? zdX8G!M8KgbC;QZMXxy7^%~Nxs_8lL+1lL3PXyw%5YuHn7i!$M=wfD|;)j~XRU(L^! zDPP?Kf-l8+Gs0K%GirU`S9=B_n3-jxn|o_Vy|m+fUC#MY=})h($_u>%F_%jfp~I8< zXza{8DU1CuApPYwKEJmwQ=gs4PyplAkk3}F@e8@&P z)d~M587rTmWgqz_%9mSXE%LEg4W8G*Cy7KyTlkiGR_{9SUvm zGmMYq{*!nh_^;#Y6I?ieo>=k+rDpMpevR0FZupgnP{@zo#e?=M!>^pLK_E3y`%KrS4(C)Ha9S?DoB8UbNt zLs&&2kT|TYNUyNe4WHSOf4rhE_;maez|dYw>8!SSN=*s(6<57H?|}BWJ(v1OLV!B{#L-@>j;qPq?Q<8gs8WljF#qXl=j=0$h>W)WDb~ znn3HEHc*i@(lyEf-*0S~KARX=vvB2+$dhy6Vr{vcn~@E=Fh66el+>SqtbsdOH3d&L zR7xzyt?DNS?9Zs7AFZZP5sLhpyuDQscL`|291dE$*U*VOJ$F`FgGYgO`3%pfZnKekDD6|TldfNN!#v5 zoNtt}S;V+B2ImSiWYt@l?149Vyf5ZOPVDuZBbnWxGSzq>-(J{xTv%TX)}x z7eNDwP#rIV=O9p|+NwG0e?Qj{f z|6Jx=3dCQVM1nQ~bzc=WV!wM)^SnBlHfOPTUD-!PWS((%UvcMn>sQF$BnOMspy_k zTi#HTYr-Ya=WwWor&x5l%Ccn_FXfvm=oHC9~!w2SI zd(|7iD;xGpjd0Pb5GHXu8@$xmr+^rW3ctJ$UFMM(~D4hDl|R%MrHRV9}h@AU9K_T)0e5@T|>S zc!5T@Zt0R=SznqNtm)k}f)8KN^hcQ$#|~;BFNjw_n&PY3mqDEV3)9MZIh)HHQD5|y z)u=Z#>v`V(RkIlNmS%O2SP^+PQ$YC^606;G50XDq{n!<#g@fm1&mdQg)5ulh1abfo zIufjM=YXvOWe|DHP5@@qv!!F%{V*a)lGg7{1!-@hVXhZuAsNmvf{}EJB zDg%T#9}F!$SfSxXaShstl&H#(;_$Ua&|#O?5Q(&yyC=hvhi|8n46D3`G=8YYa%Vor zK~lL^!n}#4qQ`7_hnGE~=1mL6$Z$uz-CILaft4nmmbNr=y^**#bV(-ha44WZtOm_1 zj*H4rGx4_k$;iF9mT_ZG~i9h#5mLDa2l2y)RRUq*@vc zHbTtR(>g*F*XKrr$gPJEqQNC8M8MS%qSdV>K~|fp%F7)g+FN`-$Ur>0`)6#hZ=gl7Ep3z|&D@1%?eDuBMaE)qqJHL2X*q9#r#k#~DseW58Nzj>l=H9bM(yP0=s=B(m zy1KgBFUdXxik^2fujb@DP`Zc04V>wZgsp6Se7w6O1&rMLn5qN_SK-FaH=vXz-J}Pu z#vLu-KpWny)g_8qcIlv->&M##cn05`7ZLO1(_qR$lYbaOXq7;K?En%izfr7~?(lcC;WvDNt{`Gb)IX6^1OMp@QO~Cr zeaJnhNz!Ky0DW6+HCeE=f+~ZJ*I5^o0PV*J`ov-i4kIgWX|v6+L~3b2;c6oh%D)5~-q89Yc&yBDJz zpOy=8xrme1I5-1uW*P%Un5AZxjd<{NUQDc~Y~rcvioF!CuL15@^_RKC@gRO)X~zJS zHH{0?>HHauz$;VQU^TpyQNpgVIx@7H9^QyWc{J%a_~5pZI8}!Guw$c8V+4LEi>t6MFd#dj z0nw((sqQ+iKcr?-eDYM0E6U9fr$f33Zxb?g#1hw4m<3_==P4hvm-ufGDDe-i{_vyP z5OUdOodyRQp!!#{!~i_QzQrG0=MzHivSXJT1CaH7k~H2W|LdpZ-Q`O1)Bj2^1+d|3 z)8eWE`*d=C4G}zz5H`*Fwq;v`Dvp|is3ciUezM0lC{{{D zXEkFMASLej$8}=?+-xR)IDN%}|E0 zkTwM(NXTxMP5MKN5C?zP@5y>>C4W>S;Saa$3d*XHC2E3y)FJMaz)BJ&y%MM^fd4u? zc-7v0y^pZz44+@56g!y_9Oiz^HWSo38MXiqLQfQ_3g}>bW72Q-uJd$nK}1F@a`~&^e^xd2yhq@aF4~P9^wNRS^IT& z+7+#)!#=A7{6i0C(*Mw%k~eW_WeFBf7>!o4)Zsr?`HwaJW1ataz<+G;A3yUS5BZNr z`p1cd)6wMF@cl5SV~cZ+9QrgZ456fBp$R3c7OqgTW+4nE>lW5f^1wnJN;WL~q2yXVgRNWGr{B@b?sYFUbgG{L5>Xq{4@)|b47{g7>7IN1e8H-u z?sM>ZhAo-|*rPL;g&9(;<~C)Na0&+*=*!t{NlBYUoJE^!=nRDD4?x&+ia0+qR?NVO zUd`3@9i&l`m;hQprN67&lA1zQuO!2(ZYzX_5d?*Ft@QNBr~JvZ+y5ly#^CX@R&uC@ z)|5)Y5F0D;xus?Z@I~147iU7yE>2H}SE{|mC?#z%9zDjfLna|Ghf%JOnu#!SNyJjx zn-VCf5Na8iKL3$kI78U=v{J$zMw#^|$+gIJSc)p9VK2J#`mmaR+D-RLWA$5iIW zK2+H8)v8xhO`4sCAl4R|fRar)o6pi9n=P58WrCwi!-{|V9qi}u1N*V)0B=d#{)gV5D>rS#`(Db{*;DLtNGzbv5btvdee3zXe z$#z%bBXos~33bHPgHjF7B4DjuB%;3oL3j4QDbZc$C2(;s)yVR5Y9B;Bg6gX|?8k_i{2l|1iwX-o23{ zAq~x*s!_?>JRhvYO-=aRDX>H}D;tjasc~T5LeUeqL-p1FYHd5gw$-{7EkM2m5VC)n zko)ZXAzWnBsbGK&QrIKHwHG50ptf0@?fS@sq8c4Dpw0tmMNrkbgE^*P8wgE=X(hK4 zngI7;w;01JgmYCNpHN@$QT!7O0+&@aUg*LRztpQ4@Tbh>EWWx^ zK{=%bp5Jc)na_v&}EP%IS@XyaN*VSIu@1CcfjYfYmNJ%o`prf+^8%^gt0sZV6Ne@T^ z&b8kjJ@0Hh{g4XnG(ecm_OEGvFm2p>I=L7P#!ER|h!y3DsJYzPxMwy%q1wL_jrQcZ5zX+v=X!8bX&FqeBu}79O>4Bu&-Dxf#p29;1{_d`ll zp>Byh>V?}+U;Ir8l}l_AaPc66u)j+0@O0tC~1MH zx(|aB2IWFF7^q21r(Cc}>eD7@Z5{SL;=hJ@SpH}g%Ef=(@`q6V&@Jw)VEv9)ztdU4 z4=er$?76e%f7rmT-EwEo%mCtGXj0i_jFob}n=xkNyLzIABFyns&T-wb{|;rib%(b$ zb1CrJsC2kkOQ80uMzjEa-nqk1uDjXW{B&&g$T{a0_X`qHviLl2$RRv1PNaOZ<(T>R5Y#^kDx4khGqu*Q)RQ-raiMQ*GI zk=8Dy#W7s={kRQ>vA;9~lJc3sWot%N|jx@*XQp1!%~{q`c>Z0CZvlKH*^A@|94 zVrP5)TqmD&p=aX7!(ueU|=&|J!mi*Hb^$V4$IR&SM8r`_Rn?u=L7ra zhW+zr`{zUZ=Og=P*Z$eFfA;O41N&!c|2(yS?%F?}*gv1zKcCq@_w1j~+0PS)yWs#x zvtL|scx?wknzB`g>vkZdDO-2=ZwEt~GIu2GfJjsJ&>0g9igX4Bab9tT2MasSAYtLE zGgMf(<_s7Xt~nL&>*P zq=4%pINZG*UsMdsv8<+mnzMnrXml&oBT6i>cIs&S%4Nv zkZUYj;~uX7s9}wJHi!U+n+_0NC7~_82DO>ogSRH~DF?~Ngu|h76yUDlmoS`iF$D(6 z578MI86pHDQr+&5G;(;heUj_ns8y^E%wLf z7tk4ANgGVyPU$31PQ}y&G?KN|<=!x-t6%BVg2)7p1C+%c0=7u@R`6v^)=;};ho?yo zGbo{3;ocGq$Z-!86EGT%o1hGR4fmjvtq}RL)r#G$h1ZI3i2Fg@)C}llw}BsmSdmF} zKR0efFE_1ZIJh!9yfa`YnIl-vtm19wKqPl1XDF#Uqf`{lpCq?u+GuM^}{G`lA zXO8LPJ+1x@L(1>qB0o5NnVwCi*QBS8CX*N4>HD-Xq!gl}l(YkUn82Qi>%d!3EF2?F zt|$kto#7XE!gyHQjLK6;CYnzs$p~tZ>QKh$!6~>`hJjeP0LdIKRU)vWnp8-O9X)^K zLtEEY;W;Y&^O63mvts^SQ!?*`t^wHW7mOp65!%)r(_V5z58UWmK`e|* z;S{|;`)YDD?GD90_B{n!Jw6nIFCPo}{MZh@+VT2^1>nY73$h#5dxpz_jL%kgVki~# z08;|qP|}q<)c76wvSz)pFS zZWOUB201hy7o$;Ntj*X$gsxyvR9YsJ;`R_ILIENa7@`0f5V*Gq$T7bqh)J)-f7rde z7)A(gR{2%9#O3$mEC5>fsY4#`UP}3k0TQcVkZvI$RZqJutK2EdDRa!kqX%W=V7n3{dZ6_ZYm?|1Z`OXo+@~T7lEuZ-&Dl-WUn`+EFY&&t zF15kYB`tzPN3J*KFg3^Qy;kpPVZJZm-ao|tWl=*uu!%nd_r!1=*S586q|%U z!X|*^m}@pP9CA$X_x%?FAOaQtdjo(?kn+g77yM$UB{QLVSYh8{lW5g{!|3=p7VD-r zu5vLg7*$wG859Vz^reHA)B-55o-!!t2l1uMEJ~$Prf50~kaSi8fvrUx7={Nqz-Y~z z0T@I$y1>N1q}8X7jOh_j{v~(GqtBaiNopl3K8J2pih zLr`nvAH=Of;7T$Cppg-(Uznte3n|dy`(i}T2N$`J8?hnj^;6QNlxN-(?QIZzl>`{MUFU*Zo>!LS9cFc(GFOKfg#C?J~5 zNPXMdLy&x(LZM*Az*Thkst{7KA8=L8lbUUbJqyMUiVAnmj#Y%BBPw#Mt7BIjS@0rk zOUFMPi66U`^o<4g=pjxWQeZYGEOm>oU4i5YIBm`ttpH)N0gK^X^Y(5plQo+r z-p|(10Few}6$a@jYyc>j31A?=&qO~fUdq-iIvkgm63^(COx~|oAd57JcHF8!7)C{! zkR&@MGqoZyS+!8iD7K@Z(LjENPj=3qOV}$oNq_X9u{{dzjD!``qCJu`&2fVqvYUVv zyi2XmuthT*R{80Y=C>D#$mB~^j>k`ax@@ob@spyo!}zDrF@3j)m~dF7ASJlhXbj|H z_H4&&rL0YqcYmcB+qWPw>|)9wE4h~f6~dWyOug-G1<1Nxa;$fOgG|QQOZjPf`FVnM zwV2AJ8cjGS^tmLOD88^De@}>BzT9<%2u#KTArdWYA>!szJff8el6i!~h>=V*y&Q-q zy<}JNVM&pBKD7K?ipAItR5bfniw1J*h}r>e$#+wTyp~NnxpSJu2}RrpSw=4!i!+le zbB!2U?Lf*RTK{A3Xhv$GWi+pepT<&BYQ^i8#p3$Ww5mDU^S%?HQbewTvA~dA1#&?# zxrWMx1m!Al3yI2Az$%3077BnJhl}e$cf=#=S)Z2hiE5@(osF_M(iYbA8nM0e1?EO$ zy1rkOYf+3c?nbR+^U&G+k#QZ+S=qL}(fQE%w6+Rq5;LBf?FQmWyd9rzM%o|SWmZ_l zO%m8B26xC_x<%Ui$xsBytwrH^P3tDAC2!ebj)~V*5XC>!D{Gqp_mcWxP(rG1c`XT4 zF}Zg>4A14WrTdVA8m4`puJ=JkZk@zC>8w6%VOPwUMl*Z&@ag`(ymHoH733}78+s;t zo!{}5pA=H?9qs`?*s{OBn7nU5@T^82Dyl+k(Bx3%i?X7^eunSIiG_kUS8d#66;5vw zFdUQH(B;i!s26zZIY}UT2qKi$g&icQZn+mGml75z8pu#r@oKUs33FaF_H!jRWQr?u z%b49%wTAoN@4x?k?_QJNSoOaDuD(AEeeS8RonY%z{dpzyd8|LLg+5O;YN4;W`ik=2 zz>Ca}lQlA7z1kP|-~yL3JLO)^xq|A=Gla1$Z|cKcNVUWp6Op zx@~0Pp%8_8C<&_N{lxp~TxnYQ2^Qg$9rm(CVH`?r1`0y7tW3`N&Fm?23Xc<`R_o zGR<9Lo-fQ1Y9+D^RdQ^B$cDUA$I`iKNpXrI?!ZWkud7;q7000xn0cSl>xerAk2=IB zw7(sX3bb-&+$Q3BX=Q#hHvD8bZe;2Crb-aS-p;ge+le9zSuEs}TyC0Sh1Id2c>tY= z!)cbITM(c2TA`#B3|Pl@5Mq7i9u)Hpn=2wD_Lx72@r1eo+v8mP7aA33AGI78uE!!U zQfI@#V3cY^EatcFi9I!jWed;{mhA>*gA##HmK#G9z;tWIRP0wAQrWLF+~4k%J0~2k z#LP4afH9ij6VQZ0Dt;8wb6h~rNr)ad>0y|Vs?G+hKR7tNSINI%&fY8lun^sA29yRS z4!T$BfnbFt&IMLj;x}-UmquLzR^rk+JMXzR%-%k|bYmXdV&Bre)hc&zEAO`h+g#e) zKfRb{?p?CFZ$~?fh5dX{PP7+S2|UJq1;O-KgNH4NU9TqPwTx8ii%It!9^@iqo7UsY zEV315A_4$I_?Jc>vgT0}p*zlDrDi$*E%QiJ>31Oe2+i{HzjZpBERX9|aR(iL-_$;ZC&w~m{{I%4T=!TnnJ zKNI7?1i*r506sZ*UJ0BQHu{d!`Y}bGeaAb82SSTe-wlj~c%#JHza9jyhrfYA)0?Nt zw}t+`)ArZ9(`HMCMdmpbMdzAY3Q(Bk4>kF@w7=Qe3Cx6du-ej`$+U6aOW%{f6QXL) zg<+PPpXqp@e%MNxj`wJWQ%DiIOz>7f`d)8Sw+SHo4VO;MuaLtQ*@WO>z5`f-v5lbF z=RNncfK6&MgLm!v%n(1-@9EHEI!xDCb4)VlvMu;>*%sZge*|<(H~XEafDIMI;`hT- zNrrsf0bC%4gp?b$kiJYY9vl}F<%uw<9<4z zX&4uio?+@q&XT3;anmnD@&{cl|wYz5J+d)u1yX%0wi?TB#EKt0nnciR+nS*9t zSGaQHEzrBvYEN1AI&=POY}r;)(V{U?V_76ZN^2;?rNVdZ0jVObGfkn+cVs zpHRI`+19p_L`^ZK9H+Q9x5W+)6@Zlzd%2?^@C4YJ4=b1%RN=spHAC}aGWi6X$Q%MV zaHm$)9yPC`n-N-lu;JO9q_XyCk+qQ9mSGzjJ4Gz9P=60mU`GAZ@Ep##^msRn7o;Kq zj?9gNJ1>W>F&(i0ZRfaxGarMgv!koD!{(#W^!73;Eo`+~-A~40?frI~x%8JV*sQc* z+qtayP>$Ym4832|TN-f@6F`&G)uL|M#ZhvAE0u-1gk@x zq65eBNx1dg{0=?Ltk)}2ve5yJ4P>~fP|pfU2giD1QYw|;I?>RWoMy+=f4hAm0hxHQ zs6|B=g9z_!m$_ldvru*4jyT5{8zVdojn;`yRb_H_)DAd}8j2s%YV+}4r2%xIewuWm?Se!A+;_d& z)BIvORwoC<1nD_3Ub3Z@W}|-VDI(8!hW~iCl?WxDsqyOXWSknW3p7~n*tOJgIKachaMg@Xzil1J_b>*GHBW?M=o>De{C?fc zzynOr(|rp}8m)8G?5VDM*g1NrugI*^9mb|#F;p`lmzEs3l9OLqk=Gf_%q>>Ii?N3P zr{~Mk(w6n1NQEObOP$m4e>AR(;;SgEOV+?UU0+F=$Ah_wlZCUG0qjA?o~hhTQU-3= z0AXy)4dbm!RwY9hXwkTDA>G~Z zOKI-l@Vm>Lu8WQx^<-QKL<`M2<^t`a=F#)-C6<&taRp_$kO;6b83RC2sQSCUc9w#Pj7A@o2b9ZIoZm z@~e0O<0u&tU52Ibs}#tX5uNTFeHmhQ@{693Tg+E=&$0;i#seEcYiwj}u;^cneUz3W z336!Bf@G63n=BdFd*eZrKT%$O3#lL#Mq2F!h2R|Drsr{O4d%(J6je;&WSA_E2q4xE z0|W}RuAnO;wVMbeyPq#oc3Ohpexuk#(qrU7*p#2%QK5Yc>0FvWXe^L$Q|*Rxlaa4M z`kG@$eq>pCT(k}^dNIthiyoX?s|rE)_TBsBj9{fYnt3U`IHYZ-OCD4@#Wa^DA3@l@6X#A}BJ_XG5 zAcyC4Y%v>FTTaUn?d0f`(~BOC#9>=FDt)YyG-XS6hbEJ+s52IWztpt$d`xMm&$eUF z3PxTE1|zeim_45pMpk9)VrBxSHEAA~Kqa&ikA1hszebFKH_#FpW_w1timZ52#q?ra`5T3SqsHU&K6d-?y3k05$F!2Emq>ba zDZ>%PHy)!V$}?G-DJo5Nq7?Fm1;B15JXJOGvoKtsx~pt{u?m=jT8`3Q> z)#0z@T9{HN3dBr)P<1KbGIS>Z?e=rJTnBHC0Y zF-8JZXZ0{hSw@NK5aor30Np|eaFqyWTMDb4BL=0hmsv<5OELD@oPZUEK>Nt59SFOV z9%PBqY;=gFlMGUdLGMUPa}BN#WU-ry8D1TbH=gn4Hh|pHm$<#dCod9nH0-AkKzF&s z8LYi|OQbYd2&^cQkyetYX221b@n8Ajoe!ERqG)99)?7O!u zL5ansKc6IyXP%!ngfUgOLL`#M?Y0)WX!9BH<%a}TP3#}s$xP%!DKko}*59VXJYDED zVE1OPP-4R|d%FOCH-x6S98MrdEdFjKI)L1{3~B73aW}6r=T<^fPIcF20nC@~>+(U3 z@f6+-Tv+!K8hH4NjWlLVIr5LT&h~Z^J)jRDb$n8Yl`;1(L${ud+7?4T9+;I_pxKuL z=wjLDHXMV$WOcyMMkpBXp?4}`qjI_AL>Ac6(~=t@su_%Tq6TzJ;d05MOD)rGR9#&6 z@=b-SA=!3;jZRptmMX?JSSe*nP*idC2o=Sc>zp^z9*%YmW-_qD#5Usu63;#|k&e`H z68E4oAax_O!Iw?>x7q`K3GD%?N<(a)kOF$g#oh}_DELqxR;GtQ%|@^fEtQl?7KAo! z61C0kSg+8~-M;lrghxW-2E?ZcU91K)RQ&o zEz^x}Ygw1ucob|mhRk!;a!tp?1~obca2lCt&c&)M>L#Fe+@0H@V(IQ+@OEvr(KTb- zW2PkAF0&cXg^9>0T$brnv^;l(cG6MAT!F9=W5~JQ^nhxdY8kI+VSZ^_a)Y*}P?+rg zqeZ}oYZL~gj^dS~?y{CZw|MVOIg{F&(nyfD!2m*s@|zdMQxs;HW|${m?J_6F|G z%dg^(Kt$*1m=(^b>MNSme7xLmbFTn22xW@^)pFMXT^gEemd2)Sl28F%kr%OuDJPJf z`*oi``5-gB-Oc)PM#d$;~ z{DzFmL+8996Ur@Szb9kzbA`C_f70m$SlHfuy&pW;)KAJ_dMuuVSuF>ltVB9BigTja zLr0FjIstF5$kba+e!wU{>(^}BN9k1#mG})-iV`6))>U^$qepyyb4* z&k&C3u^}znxG$t8J-i<0-K(~f<=ilb74mKu=4X&u*^2ZQ?>7_?hf5;GGYKlxsSO@o zkbeYY5RjpiD5e=U{(en!H+n%nbOrdR_pLA-8jlv`(Bk8*JMPL?dZWcU4Q*-E{rhWu zyynx-+JIkbCEQmj$eb(lE@8hNdQllxQUm#5rALFE!NAATs@Yff_rc5G_wRx9DZ`h_ zK@dnL;5U-F19%%&+sPNe^PuTadwL(csn|qZ3Oe^O5xL-$HaqN)>VEv%LchYL1^G^Q zzrwwRz6nU~2g8y3RRXIkL-BZpM;QSg%8ur_v(U$=;l2|yO#IVhv{fX^^`5@M*RSm7 zle`Ijj!^G!a60#~B~QZ^_a0 zn!znpX8bjx$$7q0L94}?tM%OiIICwBT|TtMJt^d~tWuB5zH`Ys7raPG;!%qb|8(39 zy}%QU0L!g7Ai+zOY*X1Rl#bX=sZ$d7Ss|Le*lIDaw`7r5Pa+Y3x;BdlbgQbMP*qj_ z4pn8=mi}bY&U(3RWBGB}v!K`-j$IH++c7S&l(kT`d7z?(vcoEJ-6pfO+F@_;RuGkC zA`lfjqHTCE7jI_DV=ZC!${-^eO(}IZ{K!Y_N7Ui0jyR&)?#sj~bje6QJTVgxd)-Z7 zk~E#Ze!4?Toy~nAb8S5|-JaOHcl)`%?I2`epB_N9k|*L$znA-a5I?Zv_2-ll$C z)AKd&jncDpoFC#e+)R$-ZygR}D_Qx~Uj{#B@QyMgIkXHa;Qk62PCg4j+w(7ej70yQ zVBeeu&Y)~UGq%2pFj@u$L9t2g#bP4hTzT1hz58bO=-`dKWehK?w#>__tfE|$o{lCN zJa^fLe|1zRL^wJ_zJS~btjGltXf@} zf1wH*uF(r)7BYIgohXdz!giw2Yr$@mWn2KgRex8C;#-L<6!3-7h5c3|40UgP%Cyiy z=Wtgh3&f^Ra3Y3mRxyTfNIk+=HK;;R;6$Z9sQ@1ev24dSjm?Dd6}Wy^aB?*54oAcB zdo?!!k9O`g06b%??uYE@zGqJJV|VO@=aK~QeSflKd=)Uu50D$ehTzu1iSHA_y26|SDXzBm3!NiiVG!F(#xPKhbM`Gej|Ft z8dpz*zEli8vYJ)e6UA3Re4C@v>IY4W7r(#`%ESbx!2v~}vn}S*Rg{W7bP6{kq&S1; zNLl)A^$xikNkIILykt_$4<~(+-ThL%{@Jb)ocL-yBl+r0qw1SrMQCLLEfYi5LPJBn z@{S{x^C#ZL$mUJU!$`eK`$Ub){p45yJi$4^%@Fmlto_7JTx~6p-XbWviS_EM1o?II zbke`bzEy`U7ZbjvRES4*min`L?!E-I`t(xAbD&g;(X2SdO$Y`vWIDu&kxHQyV#pS$ z#RD61@rqx(nn#Ffxp*$D%eXYO${Epe_+aOwscZzz$ddBu6Ebtuo1x!#+Rm$lD&rk; zekuG)=b@!r12Y@yzMcxhaGDR(jC+dSy%>(u?o}Hv(>fMKQntrQjXKaP(uR?bb z>NrR^3`*cBO{ z;@`WXzuc}U?ATp0p55=h11exKf~w5q$~z<47S-Mn$w8lYOXM2HAqBm#ZAW2ewyll} znQ1+TiB}z+x%u_C`Sw4{eDjyr5x$D#EvolAE9u6)=#tu-T;#>kWR8|HCps9{;kK0# za@h*r;y!QZ;{VI1CXz-&N4-L-Z5ho<&uOh7ghUw|@R+p@YGjDiV!`}<%tAg}o*b!-3g?SqmS+&DdZhvlghe)t-dC1MX>IQBSXXGbP38MZ2QO9}vkE6CKFU>NaGgteY8ppv*MQZ!fJ5hlW?KGO#X-sQ7^+-A#EintiI^FjxZaH5l z=?{wsi`3BA2EVH;N4nODTPr(Of3d7UkS|4+n)C=K5lEg%8vrOY589j_(1?u}WVLUn zeyd50jZtlaW&vN+_Ts2b?PE-?Fai%fX4We1@ln3&~59RNgW^?^G3d zoq$~iR`b2gj!DHzE(g&)cQ%(bwDJXgB$pie2U*YNuzQYGMfY#*S5NQ!)iLe zZ-Wae1M2z}XM|`YIup29>_U1T86UMKMDdU&>{jHPYkr2|=~j375*M4q-}s=_TIIKF z`Q(mgHFdrj?+45cFAk$@8f+N@4-EsV2CZb}rcOg1v%qUDqO`tIL}tk{%BvPFgIHtk zCD4ZQ7hnD=67$zz`l^q;x9oX>TxrRRw+hdWS(ZAsXZ4mkI7XObk^6gX`+IHs^Q>*( z9M?TNDJx&MqKB!)5*nToL3d`ks1pG_wV4JQ0=EWmVP#9|l0$-SUvax`ZZhbWa+Q`^ zr918B6TCF8&2QQypJSo-*zNB48ZSzaI&B#c5J$Gsgy%=6zV{1tJ6^+(nfqOzt9`ey zfmPiL9Cq4wXTsJ3V2g1)6TbB%nn70GV{y{q^YY?6_%>R)2R^eP`Cp)$;1TzX{rZO+ zA&85h&_3zlK~1p}gj$YB6YV_XCC371p&g;HpzDn#*GcfI-sUnnvOK3KLU6?W05yhU zI^N?lIz!#@C|bwut-;}I%ziH$l5b2wA$M8Wyhke@l?T4RU13UUB+mnr)7KhCk?jAS&GSWsQcUbL zy}V|W-+)glda_TzmA~mhyo2Zbjk`B#xBo$qbnx7&q|8aQB~$#B4q8didLJ)dD+o)O zrmEt*>~j=iq%Mc+JVeUDD3TYGvgjLT!)TbR!dW|TKRTRcPBkFc0Op!o$hB$8uxO38 zv(Sdj5K6~M31M0+IZU(Je%U=&dkIG{3olk<7(pGN<7GZ`l>*Rwm7+b2 zTk@95CZpvaAHFpqXqJ=o#Mny+yJ&oZPYBIDNPa@Z;OHnSLr)WFlEq?saG6d|N0Tpt zVw5LWoA$kA~bOgLUj_Ai#l zg^wjmCTBTgGNrF3x54;51wI;LSz0=or1aR@jw)S7zpZ z0+%95aRz#)HC(6rpR*eVcy_p4B;stLu6WKu)2L|JoObT9S2)w8Jyu~+&&wsfpXEl< zpF+N@u2|pO>Mum{=*`=`pv+^UcL8A*iHH7ALGw7TK|^O-g>#~QuQSdFx1;YlA9UY~ zoegMK1K34D6|mUrOA7%B60j&(rwe6hP1!irzyp_EqP^j(DSh{@WBjuI61>XO&*Cuw z0a)`>R5TxBZ7L`>2Ub|Eoi0YLJ>PwCc>8)yJ!Fr){jJ#kCo47-fxk7|-O?)!h9UIPhOyjoiXLu<;$UrVjk zqo`;;&Y{*ESX`~SnrnPp)J3gOc;6mfvi4DW|g+w7wm=H+ff@{Y(0zrou ziB8}%!X)JizZ48FeLgbt9NvF89s7=P`v^n&@T@W^f>xPyYFlOGWVH_%)VjOikc2so zSQePh-98i1v__6anC0O8UC_)E9ez@6)1K(Q`7C}>q1J5yGg zJZsYAQP3)-($4hRdU-nS?;;H~-vzOyK~AKIEYQ~{lfgAR#aH7_zu5Vw46vv=CcA^n z?zm4OYv#!;#eM#6(~I;9-h{RM_JCB2A&7Mj;Vt^or?D7ScK(#C-#w=Y=F_fN@K{7w z;Q6d1pCt6&lU^AA9Is!+xg`lCYm^VIA614i-PiPX1ApqvSUF;oqb`J~GZ=Lh>aOA> zx0mGmS!%{qc}I(1jL|zQ)9LS~Q{E99Mumt6CsN-UcHfYbB=8&DTYS3fdGntalf2r4 z0H2}e_jq!T6c}8~ZoqKWe+r-=%txQ3mD8JH)x{i}%X1cwW?=@7KI^a+H5St3>`%ry z1iqS+Ks5*S17WI)dF@IT=!dRU&1tZkfLZ-7$s)u{gP(p5ydt)+sLRDz5HFtUTBum! zu^wtEajJ(*wfgT-1q>N!??slbXT$eH3~w%aEpmXBYQGj4TB91+q5D2#cq*wV-8hck zyb=4FThtP?57X%IU=mCOBx8y#|CQ2$ESyjUV?k}X#R_g9D{hhmo8aZtecu)hvS=82 z%}ECKi%t5{isg^H6?S@KTk;+b{L>x19F8x_g!K&S%qy$=rwzQ8NB+rWlZ2y++$wAj zhwp>0_%LKMQRTL9h1^S2cE29}N7Lci87j=$0(Dz+E=cN%Pga!~$>vMOy#lk$y}GZH zeuEI?DqMZpz3!!tKZ-q6oq%4OsiLvIT8i*sOD2s1fkya=OY^#AkmqSYy!HymAq@@! zTl{5?Mz+K|W1((es%$ywQWHAYzxS4msR0v8Q{YTQQ%kzP$R+1#BFi++&djvG5D@Rx~ho{IgTIvgNWsb7rhT~ z6@CZ9JDrm7V1>c7rB|gdU&M~MBuYAwCl(@ly2vnHJpx2*x4$C|jF%;7)j>>2Pw1rv z3B|2q!_xGSP!+(jD`+SMERe!g0Mn`A04?Pkhgkj&mBqW3$Agwb;XKd-BGW2nSIgza zg1ax1*j5qaTMpj~vb|J0YO)Tm${wZC=W&&`m|RoO<(i49Fk~{fVARIPa>NQuV2Nbr zx|)a5(m~}dYT(*PlBceE3snp$8HGtBWrD4%?y?BzB4iX_k|G?gAK=BG>r4lawB#+@ zX?i*wi*YM?of#kHJq|s}OV{7w^NIOv`!{(8>d;HgeAroRMe&s@l}2+R4?3&fF%iJ& z*xiQ*Jy+$!X}yUo#tLx?jfFo9Y6Ob1=IYzEM-zRkV>9{K#hVq*v_!U=1QB>gqcAJB zxhLYy%ISU%nM}8n#z1s86hGK0?jU)bh*sLbfx3->YfRKe$Ek}bgiQ?lnAJ3V_i{2l z|1iwX-n~(|pkm!B_(t`X0<8>7M|s$foK|JXR$+?}+Wf|kg+r~ayt-pF%UmOg{7yMV z*yW<2MZ9dKNzu7?>pt=5Pd>DQqY)j!36FYi=LJ?+A(qD^}^tYIjemWUVsy(*d zhnnB}5NdOVGpPSauTeCMcDA3450cKB;KXG#2`1wv!bOcs^;O>LwD+*8TVLWoRX(8N z(*$}AHT*Q=dn}hhEU=gG9n8bfmabUkx@0`T z77Q~R>|KK8HIatmdwNV z5xh*nd8WMtXZX|c6Nr}PAOtIvdJ4+1a_UM%;=Y2#1E0ke5$oFYVOc_@?ua_@ybCCW zu8Am4{EGdVA~ivqQlsIKG0 z2bi*|4G|_!C+FAgLzx9j=ma23hFa@V!NW~VDb|!>vsu!ZLN=|#K=v&3Cp`w^SOp0v zmWw7f&re~@0TNG~6|Jr79k<&jZtg8;OCti~@nt%can_hi>!Y%pR5C95-hMmIx?m0p zX8+Pk4leS8Q!x=HQCM5gYHo`v_Lp4Jep`Gwvs`biLC@<6yxg% zpBfABm0nttEEOX;JcWxa0Lo(92;L3jY=Z)1n|k`-@iw-S7lDc!Lq)-E4I{|+vi7>Q z9Jk46(C|L^fMif20TL?aLwEc>rIxoc+D`QmvM0>6P;=P~=93s~#4;!)7I-5t!K8wE z-U;>hMX0~uu&vFiFVk4IK*J?g5bR8TSMo_Hs_uZX^cTg>R7XaVYOb_~u`6;NtTt>Q zpjX?y^b|IQx`zd7!3H9<0SrHioU5`eMF-saslZoj&NxHG? zzf4VYyfxpe(7YFH&XYd{K$y>pSLSxHZ2}qo6mE53bT!z^b_g)vsf78=o0skXsO~RY z1>aD$Sp(?0Al;tI5L9rqy=L*8UD^%t+c8P^-_?zEIA{;CQ zl!G5Q7`#O~3vYiUs}@7`4-vK>A}jRtFrPagC_xzxL&-&Y#^~P{;E|Jf{ z^}n({a2&igSAMvp{s=)^n1sxUeBe~9j#aYStznk%Z4m7ew=43OMa?UA#xH_M31pG= zQe&1}_fi zP(FeEu>HcK*IT37Xw0c}EPQ4Zh{hsu2u50zb)fe4`T`BfpanPv%*I87f-5(A?o}VP zIvjJcReZ9$uE-q^m|V7ITkw7OHc|@uqD-zu@pYzkqp=7|7BZ85*s>Q0ws1|pzxCr^ zT0b72{Arcp@yV>3FV^z=AYRf#e5C$5x^!->xFDr?3;J!AP5$3H@GqkSeN9$P1I}by z-lj=-e6k4smy+;3Ez1S4YaRstHgWzu=7rsE0fK=hfem#YkE6F>#EyH5ypYA7xH%7j znKU|wz$kO(5SUK?JAv4yiUWj* zON?2gB1;wcK@b5?IE~PnA0V(+q465D{;o6|3~#qv*9W*-fg7ug8@D8CRmfj31`B6p zXTcB`O|OS;`N(&eo~x*x<{rsE{n7Fd3eNcP(GfEREcnv($_-HREU`sM&|k*a7defo zj`jCHy}C7y&diEpDO>#xQs$kWRXk*y|LCwg=kCn>U>)zhzW;T>bn)DBQ2Tqub(u zU@UrGy4SqT1{eugb2h;8W(}VpqF#ICsB3>7hH4p*#HLK$V(`8Px}36#^)7%pGnI6L zLeNZE`8R>2#!zR_&AYY$6hWMFi1uWvGCHMVS9fCa%Oq?v29;4{ZSmAsBt2naazZHE z$1H!rl!Q!k?a!KyuqYX!-+gHc!dVj#s;=DpedW5UsC~JfatMuRsX$^uXEaJwlsEW` zR!~l=N~50;^$Pk))T^MMLbVJ?U{I!R{FG@Y0JUiCB+)C>PEdzwCmhrwcni}_K~bwW z{n&-8uv!WUWYGm8wxZnH+F8CdgqGA*EwU0vXh1640QsU(^53o#oV_?pg=yct8cxo> z@rTN+)pY;teB|8=3^GfL_iat$GBFKJZNn!-54nUN41l?~giw)3?u|R-5has!U{KG5ntAU6Q(#==FS@WF8j1e`>lHoiwjpyl>73{e zkL_}u1%-7kfx>wefIZpr%}Fz{GzMyvy~ z`4EGPMkyA7dO;*`4!8yiYxVBMaGZ9hrjrnqEvB4lE}c))!BD_Rb($-vugoR#{X9O} zfm{bN#{rmoa$+5cDV2%po5@kKyhFJYTadeEBxaVZe$-O)D_ItG=x=u>64Xto9G#F* zBN>jVe&Gn1?Dk^rH!s3*LkhV{Xg9VRzGN@FNhUu7QMK6i}qEtQfYMd&7rE1;H? z!5AG)#fyxvBaBp+j7<@p8*yH-?!E&GD-U8%Bj;F#CGAGa+CE>M5}hL>z(+b zG4R~@a=kIo#z~p(Piuf`!@1&OW>XkpJ?uBJy0gyfVGCvoQ<-Js!tziQ1 zcw=Sv=ZqX@F9w&eMJ|SDRr9G(#Tja6izlgss3l2Br8cGA&psyAN9DFf&5y*v@{kE* zgD4smnw{J8%+4TMr4khcJrfbJ2HKNhS=W9=)%T(anWb+-T)C|u?)}yYgza4&LiqGS z9Z((Sj0jt(kgjw$KDM7lIWml|h1sp>;a-6EKoTab9ikLH2co-0*q_C2o4L)Iasn)`M1jx!#4*}M?CI7%aa}}2$FrRM#VQ|lYa@oaiYl9 z+nLgLdlR7qhFPu_j-mKJXd18$Y!yoo;}Yep1_lc)7j#IiF#tc&6>|*@Htl#CHr1y73DYuqORoWCd0ypvv!6l`P+7=A;l7UBOvSMwONc9>F0;|W4BKyf-Uqc zfbPKJT>wd=2(UnH`S!Cn!}lNZ{Xsg;hxv8G@09I^>l-;1q!z#b7fZwB44T74zOf7N z!1qMeljrK(t}LpR_)^eMwexjU)}+;}#q~@^>C{$fvusWfiSRZgq|h`2qT1~H&9#O- z{cm;b=NfqR^o?kjY$wpCu$R)q>v7(_YD1}0$!rV4)y;R-F#Mcy{DmFo$=>uc_B9%% zD4bbal=#*5rqfBNIeUrO?Gc!1-eHC@&)Txoul{ehCO*z=Kb!Hgn}5KOGzP+O+~{t? z8v$YiivKq8zkL7P74xIVcg|gR)7(?T#o?|wfLlpF)B$49!hd?AO0((1>R#2yvFGC0 z4Z*F7BVf?NeU_A&`7jN1ywZP{ZWA!iTPn{X8VOhgtEUN6f2#H-`BitS$^3*)Cd zje}SU>hsI2xCW4JfN0pGV7~EfkB>@ifvtcDgBeD{9Urm&jK!Le4(1=8tK_Z_1Z!BF z5xcpmDAmG>n2g_#t`~^itf(AKyW?z_&!|;IU#;YiniK4gW|WD4#POWu-O<5xkivee z4ytc_fl+8h#9Dnetnt5jBWQ_ZY|w}Od}ca=qQ3x2YEbZcnl5+*LWo6s?+T-F;WALf znz-5vBDg0uGnd^F>~WRhuplIB4sFzg$Xj=i^h&n};TNHh+SLD|dt z-ShN6FDBrbvQec!G;Cn9=oK4?@;0?3&|jB+zqcfM_V8~pQopr^OvG~U<2IWElf zdnekbf*}bC_H%GbFW7C;O777yJhdGn_wwmQN_=OIhkJN2Wqa__{1wHb#*2TiCqc zVV;lDz42h!9g9hzq5>ylu^OPd+N1$YKeG=o`@pArgEelPCPx#T(3@h7Ie!d|TgdhKl`&AtClEteH(A?Q^GQ$14~tNk6unAoPL2abP|lci>G~f$M-baX5jMFg+fP zq3-77B*MtRf*$6awWNCscwG)N4vqonip{%edYKA44Z31yY?7#zlOSjDqyZkA79_n$ z$E)y`r{RzMAPSo?$+T7x#RjysFS3xR$`$JP#PSkAV;ENm8-bSK;gChPWHYBj65^U3 za9t@$0*kvpq{gq;z+fY$6o1w34hM1nWSShcOgm`ZcPc(IFt>Lj@TB%A);UL4Huz(DETy02O zR!t?K`{NY0hQs_?%4dYkhBIV{2>nN6s1S_fr+XEA29vON!DdFJ=U~S_Rp=}vFfJN! zn0%3UYh%&0yLL0h+WLy^a6&5xC}FnU@i#nDFS=i=sAn;klvaI=8pqaM%MBxTWGB#z z??LsfE)nRtNy`}ipydoyw*ti!m!-wy_I{G&*XJqnq_Mr-WJSa^Va|h52j6#``gDjc zt!Yz<@V-%2v`}TrH2E^jg_)iuKdEhqYx^7PUTv$C=f&O=I>UOAJIBtX4qJ&C7K1I04o6kt7haQR0O86%-;WwzIZTmz+e5v# zt-_qc$ysV7%wv&gkp|c!Dv&A>@?d|VaGHFSY%W_^AFm?8lE^LU7g^Im*5sq6hGDTU zNrVNEh8P>^s1xgG#p5FlwOv!dy&bZuCPx2( zL21^&6|VfT(6<8BqpJqkAUW(}=f=V>e6;)I>9f7(_gE{r<=eu4GfH9ZUo`kkzQ}d!~SFd z8Zubke$tidQ>u#nU;p{;@a>y72fywf?Y(=s|4L|mQSbFc7=Fm{2dj@ZqSbf*%dNh# z)_J6>zc~1<82HB8>PoD(5Buk}^)+34_waE4*H?Sb-o1XY`)coy*00{>Lln}lD|mfR z2$PT^n9iUHIvYIxmwR^h$GaJ1EKUcnN8NGS7_y%2B!1`c9h3MClO16(Y@m@Wx}_z9 zJ`167uu}t11E`7GhU*)>%hh#kY>w_gM|IZ4|8$#w4&Q$`yqHcW?*+yjz&S%zLh;8G zAfCg2{PDv!$^iCTY6MPUm% z($NS$6H=mGet6N#%ye;Y`{77r8sk?WD(gn^&!1jh}-6*6* zTiH&Kk2ld|g_GF$D*!VH0UvUd>6FcENPonB;-GFOMPq0K6o!uYR0*FlxT0$Z8EYs4 zsN+87%*2nPQ%Qgm9hQl8`q>d@v6t=?BPeRDma)d#vz>L&O(nq z1F8cw*cRIj0ub?*Z|5fRFjeF^C^q^vb=p3d;CUt*U|RSR5ykK&Z@f*S;(F@z4ED=r zD}H9%Jan%Y>zG?cOvT{k$+|se_8lW%yZH%%Dk>YgPkVNA;@v_lQ;-%yC~fwYZrPrF zs3+)fbNH+!!I+!hT7zL=DE!45Ax%#|r2S9nAiC^{c9{tX5xcd*mCsrF3<$Qaz}2kh zqi!ztORNvWD-@P2u&Oi75IFTF50*3soJ<*Nbe8K|1M(nEP?IB`0HmCm$7(49U$^qE zQ4u(hG_-J5Rz{$bQ@VbyiFCzJ0K6FGw4E*-Adpb?be*CL&j_jL%ZH&b6K|mOh8@V6 zoAKqOH|0>H{ZU#SdTKJ0WVXJzxl*OoC7Ju%l5b)}Dk6#vEmz`v;)PJR^cW*Dn+z=_ zGpvfLkaHR1@*p*efpKCe-MZrn6P4G|7@#Vmw#_-|i&8ms78Rxv5Q5eL#O5kvs`W=; zz0~a&V!~Odm!fuN7Qf@O6SMp+Vj*W&xA8!F+Z;&C)m914EX($BL58n0Em&u^M|*~@ z{A~S`~$g<+HrePND z+my@WYiQR6OXi2PJ3wn0V(PZohrBx+$q)R9tv+9sSX&%{kd}t+ zDh)PTl!%}N>6q-cl6-!t&fr|v@j1g{dk7pUSngQ@2&{ipTt9c~A7TU9)qM$r>gY5L zaxjQVWCI+wWK}+uYKegCJz(5$H;YF6Qce-(ec6#gGf~#NTUj9JW%s<{`EgpwWi~S* zdQ0ofy5R01<2F8B1_Jyp#;4RU9n{<>=$u(MmttNICSS(+B(ODL9mwpZaZVf$VPoWh z$W%i`BZFz5-~&bD^eQi23;^kXM-6T#=^4+_2BHBf7znI})+{t80WyOYEyVO6BB^Sg$&NufH>h+I56@ndEtC)p!rZEp^iv zGp${DR&iiU95Da3y)S%(>nzt<(;PqiTX|#D!N9+n_XQXjlR&$_yHz^04j@E7>dZsi z3S~fC4^I>~&+#JzqI?Bue2k@{ZcOqmg)nnjAu+Ct1`0jzpz4SSj+Y%)%Yg)e4AzmlT25rJl`PrOb;66!w&O@gdTz=j9&4#n+~X77N8vgb z?W&@a)9UmmkM^>&p-eQ99G?<>nQRQwIAzYISXUplJ~wK`H_+c&_lMc=9p4=G{^cHW|mqOIxS#t)~q zmvMCc3ziJ#d?b~vmBKY1Z4kbMvvn{AI=F!+#Tf2;av%X(bSMby;SsO#mhfIQxH6>?;q zod{h)c$#yL-^CxP{fsX0Ty7Hl=*hl4c>5H0mR(Bfw)A&3PW#AEjFAH>AVO`Of03-S zH=zN*HhB(ID%hd;w{TU6y0fZ6V4c6C1}^LtNwUu$jd^?)D6@viKmdx53F;IdUT~B) zRlFl1Q!vC58_iqzhsR#dw$^bWaT*#&Fdt&IDq9v~jQ?i)NsZs;rw=UvP{4!0+Ci&~ z^=g5`9GV=D{srp%3${QyohnxbSacG={3~b$4)yh7Fo%b=)jS*&c-c@8rT3{I|&zy{_gI2(2IU?J->wcwm`8*5{1}57r(OVjtsoJ?vL41xjOcw+fR4_d6%e zDzw9=Oic9gz2xs7& z907tiH2LZRRDc1iQ3gar-C@AhDqi5aO#YE{R#w;K4X)0L(eGCsU1MYYL1z`OdacNc z8_X8e)mB&5Ivbr0>rU7MQ}GK{yr6Uy_>s9$tO1d`{-p7Rk4*CTaU#Ip0A}8R`707F zGB-eJ!SJ?ND}ShO`#J>+MDY!~>YcMGdFIV`X`?B**{T7T3HF(<8D_(8wp%C0#tF^; z8T3f8&ZLVhQH6148A7tx~4*SQSh8aj&jaex@U#1Vi<{c-0%Kd~f{l zPr5Y@Zfc`@P>x(>K?Hdcb1#m7<_tE&(EVG%|MG>i-h zHMF~0`#Ij?!6Vt#+QUFsj|#hLI`UyCuOJ=;+Nqv|tbbPt@v6tfTvT7XRe?f?!e-7t zm~U$lVOz%x5FOe|#Ds0V<4eH$T3umVUyrv~Un`Xv=QATPB2z!eulg7E0y5BRF6d%u z4uW0_gI;$*7fg5oWjz9Y{Rg=(FQpAo!9fYq$sLrs`RdAgaeErbX!~*xDGiqkAXZzC zfN4<4NlMih<|HM{YT>@nE8_`V{aJ2Ie|9``N>g6Nd}&ajva2-0mrynb%?7F0w0zi{ z2pNTywoegG=*>QJbY2@iJ$ks#H~9}D-0D196*RClx7bC|3Y9hqWX7D?= zZA#BpW|NZJI6*12eTt3aTHLbrmwkA0ZB9C{!atI=&?&|hJ7SUbyn~a*wK>YIf56pw zuu}Voi%+-343KU8lvqr~+mD3}k+pW5S^kbcywU4C2#nr!h0!ykZ2AjSD><2J{DEg% zt9Z~gk36i`mj*{kE=C}1`)P(VPj{2~J;cJcAxrm;WcskeiRoegLwc6l=c0${bl4pY|3IHx z^a_A+@j?K2Pf*YNYkq8Zk1W8DMUd(KEMT;?DD29?-)>hJud*28j2JJA+AFFdy$Koe--qU=-YtLV$ofmCGlDWOD>xBoi zCeveJD>OHK_KKkdD)i{LP9ITv;gR2Tyi@rCWhlxYr(_Qu>>O$v@8&p@Qz2qc#aC%M zc)YjM0DU#27r*HV;&eKlOgED~m?bKw;lV}TpPZ#{@TX{H?Qb*$zF~MRl+%)H{y*;y zM@tRtKu?rGH}4`f(#?MVXh+Zl4qc&<=*l_hqD^=vnY!eu-2tMI(uSRx#Dp)q&(pk~ zPR_fK6e9Hm$~NSe~wPz2E}N3IAnp*0>qf4U>4&lfTGw0H^0UfxNb zKNUDWe`?`I6~QXV6hwD=NY>wf(@O5|!4%P)r0MYnR&a}Jz>UgNMwZr^HI1p3h_@gS z-djQzP^Tv(wq3wPHlN;j^NDDmaZ0_>AWLLJayYXF->RY+USnpFG%&UErjnork)cDe zW;seE#KrTdQG4rUKO1(EJBB%PBwOe6Kdy15)8kaeEqS2E`;_$UAC|niBx&bwz*b z@wblLtI^i@a6y{|B{}M)SQ$a6wti^#FGBi{q;PBSdIGc(%j__#ebvbjV~7M>l`WE* z)PAfvgSR{Twgp?ue0{8zC`Clfc(rtx^^%{z@<%4ATCVj}U6ONkX~xOARBLJG%d$IV zOH6>k!c6Z_{XbAk0Rj{Q6aWAK2mnoQ6Isxrp15!U008p>000dD0000000000005+c z00000ZDDR{W@U49E_82gY*0%90u%!j0000808MWbS)mW&J_y|a06BXF00#g700000 r000000HlGN0RRASa&KpHVQo-L1qJ{B000620swFT0079|00000Za#*t diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test.doo b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test.doo index 88dc9758460e993a31e9ff00f354e4d3c1e5fed7..7a1b95f09944748b6f025a4fc54e8ab9f5b478bc 100644 GIT binary patch literal 664 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 Y4CHML!&uosHZuX?0wC=UOyCR*05L`?eE Date: Wed, 28 Aug 2024 12:46:18 -0500 Subject: [PATCH 03/14] Fixed doo files --- .../binaries/DafnyStandardLibraries-cs.doo | Bin 1538 -> 1525 bytes .../binaries/DafnyStandardLibraries-go.doo | Bin 1557 -> 1547 bytes .../binaries/DafnyStandardLibraries-java.doo | Bin 1525 -> 1516 bytes .../binaries/DafnyStandardLibraries-js.doo | Bin 2043 -> 2035 bytes .../DafnyStandardLibraries-notarget.doo | Bin 1507 -> 1503 bytes .../binaries/DafnyStandardLibraries-py.doo | Bin 1521 -> 1512 bytes .../binaries/DafnyStandardLibraries.doo | Bin 56887 -> 56887 bytes ...s-go.dfy => FileIO1InternalExterns-go.dfy} | 0 ... => FileIO1InternalExterns-java-cs-js.dfy} | 0 ...rnalExterns-notarget-java-cs-js-go-py.dfy} | 0 ...s-py.dfy => FileIO1InternalExterns-py.dfy} | 0 ... => FileIO2-notarget-java-cs-js-go-py.dfy} | 0 .../src/Std/TargetSpecific/README.md | 5 +++++ .../InvalidFormat.dfy.expect | 2 +- .../LitTest/gomodule/multimodule/test.doo | Bin 664 -> 664 bytes .../multimodule/PythonModule1.doo | Bin 664 -> 664 bytes 16 files changed, 6 insertions(+), 1 deletion(-) rename Source/DafnyStandardLibraries/src/Std/TargetSpecific/{FileIOInternalExterns-go.dfy => FileIO1InternalExterns-go.dfy} (100%) rename Source/DafnyStandardLibraries/src/Std/TargetSpecific/{FileIOInternalExterns-java-cs-js.dfy => FileIO1InternalExterns-java-cs-js.dfy} (100%) rename Source/DafnyStandardLibraries/src/Std/TargetSpecific/{FileIOInternalExterns-notarget-java-cs-js-go-py.dfy => FileIO1InternalExterns-notarget-java-cs-js-go-py.dfy} (100%) rename Source/DafnyStandardLibraries/src/Std/TargetSpecific/{FileIOInternalExterns-py.dfy => FileIO1InternalExterns-py.dfy} (100%) rename Source/DafnyStandardLibraries/src/Std/TargetSpecific/{FileIO-notarget-java-cs-js-go-py.dfy => FileIO2-notarget-java-cs-js-go-py.dfy} (100%) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index e6ab0867b0d530f4eb5de531e3d99b53fcd28ddb..6c1f8d7b511c25b175dbe1f48c7bb3e75689cfba 100644 GIT binary patch delta 1039 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 delta 1071 zcmV+~1kn4743!KGP)h>@6aWAK2mpg(8?gT z{w<_QVGK(0n?dt;Xw4l^9>S+wQkI=U`4UrBq75-*dquyYn_Uz_Mxynw8>J z9TWNpfa(C!M@i$*P`1<@KEQI!ForLj?N{-)s-nv=D9(xA?p1IPn~DIvY}l zP|cRpuhwCEI$f6juG6c}9pfZPU@b#aCv1DmWe(-I`1r&G&$2`?~f}?(WV<`%yVM{oq{PN9Ui+7Tob7 z@ta49;+(ToPkT9$4{F&Yr+?YKtBJ0nOB6*SCj!4tmgURYxH2;$*?nz0#u?{~k720; zYlJbN9=Qt$uHWAD}UY}ileEs3Jos$2ziEsG;y{l35?K^{WLKC$f zUJc^|s!KOq6_L6-3vWlnL@{Dk`G4W6%naH!J4(OGKo_x1xI+)mAAeHf3F)^os+jzg z2%f*szT+aWpJ^qj=W(s)4Gs0qQ_@%!@X?Bmk8~Y7Altr|r2SRr_G==aJMaXJFPzJ>@wKn+^PG0I(J^@UrEyTN-=)&8)aHji{{c`- p0Rj{N6aWAK2mpg(8@6aWAK2mtS69I*|V0SWJ899aW_MG&QvuK^){2H#LbRf^*CyaLf}Dp#W!XH3EndB8205Qb=-{;0ehmb8kBJ z$8e!PW)K8{aZoNS6OtEyk!0L)T!mywS-J-A`i2P!G%G{!=E~oPXEV5DEb&Li-|pue zV;T{Oa6u9pd%oGT2mmTRn#Z;ENm1UgxD9TOKZWP3{A9s10p3D=4?&=u%xC_P^9Lf7 zzqbfs?t~}=#-Yo&JAmR|U=6=CE0)2Y0aPN1?z6r8;52 zHFrRH2w!qZS+)=5Q%qTjHpGza8U2NBc2Ni!k@~F7!Pct}p1zSRrO{iqe7c6a=gIj4 ztM9xjyfH}i?XQ%d7SqYk!RbFQYuF*fCl)P~0{Y_~nGfRXc*9oTvc%eHa*E#O=FqnS zY;GETztrv#WlPh4oN);(#|&fm&Pkpl7k9~-TvpBjl!OBndbw)0Q6tOEsQ_Rm3a&1% zCzVGniA`SCl;dqd>$cSfiG{j3sU~H-Sxm1e*48SZRvbr}8q#BcT$WBP)QaDg&B(J; z-YvrQb-^zCtn^Gry0kRYK<&VEstsx~w3fV^`f9zariE~SgSb7=O~;Anh|@WvI)tiE zp?+e!~>JYkgZYP)J%h?!ETbzjNZIE6D-?^$CL*bl%H3)1Vw&8~uHNm?F?x0@(OQnCQ zO+yb?fPuW7Ce%DmQ51=sY;&|`hL;^A_7%mDa%9;ugK*kj#lgT)_^(WS%LnLHg`$7g zWpG4jqAmchg7Ei%F)i%PrBVwYM?%m{nPyO5V@cbbq?vZ{gqYaZsiQxI$>^t5( zw>zyYB=tTn^}eB@eodD&R@YMF#KsL>^-2Yz7(D3j4^T@10u%rg000080PkZQlYRv_ Y3GZVZSp$JZ5T%p91uzC?1poj50I>_=%>V!Z delta 1011 zcmVPP)h>@6aWAK2mo|q8?g(%)RN< zAH${om_ZN(#zDETOh{gTM3QmGaTSs!W$7BcyL%=i(5wu>n=5}Gp3LBevBV!4f4iS^ zjA=w9!X-&)?D=NTA^@oPXdc(rCq;SB;x@QBeixpv@{6$7?f{B=ferl9tXKw@!wgO&rVW3p7p%KgZ#c$(mqMBp#-Jp>95jE2 z*4zQ*A$-myW!WK=&oE^r+7Lsw=ky1<*+n5_MCw|b!Zy1P9>10>rO_LJHVGHnmK5fOk(y z@1*S|&4Y7)mf|Z@p9+o#Mzs6;XC55W1W!JjBe>y3;y2$V ziet`Fz3t^h-m9`nPP02#6Wv8;D2hZ*1b&;`lrLuE%FKvl&$XQxN1QW0h8rDNBa8v{ z%Bi@6a0-^iNv3BSNsi2H6T!)+i=(qouRmV5Q}SPbn)sFv(AyeCzh-A}OlYF&;ngrc zU?Nn`MWkM*g|{JMq8Kr&{I9rbGlO=)_R_C1&`oR;?$E>Yhm?3g`mKyACVwP?=Wny` zcoEp{w35{OxYYZGhWc?+(pWX{Ud6_Hx{e)?b>FWc@jOE^ zociuHva;Ii+3DkLCu~c)4bsctfsHo6Xdk@$C2&x$|E1Eu)aJMTegRNR0Rj{N6aWAK h2mo|q8@6aWAK2mtnD9I*|V0SWeF99f{WjQy;WuK^r?AUSxbsiL&E z4lTKpq;~5lb~={p95NY~reK>RlAr;Ql`HGNcLDGLlHg04v_8ZpvDp2--Nj;;dHWXe zM|>Mm@<5$nG#UkD75f-%ZI=X*2Y=l=KEpe-rXfSt8lG*$FrO_>#$B6#cNpxq);3yyXewfcSGJD0Spi^= zamjun-zWq(-3ZP(4odqy@j`7^-s{%!N6aOK2?Cejbc+9mmAGb<+URq{JreeTe1!v& zV5Oo7|PGNGT2`cD)*i zAq2S~A&M}Pnj}BLfKPvfA~5}_%tFcNP$eJ}($2nrqZdj#U6KI*lEVVW(y8=V#k~^L zy{Q5~D;*-C#VQ?p3>`GOBq26|ul882So7EA$b&Mn^6tI#mT0+7OczFhRXip6-BG$9 ziiaQ2cAZ}qm3u;e1i2)aYs$&8FG>wyKS$^l;83SPH-VwiFseLmaU6Q1yQCl0=Ki&j zb@%yyP6-%RT!Hr`1N@R9Dz%KI9=V};%Ddpa>$xKvQN6F5TAfd;LNe($h=t&_vUM5~=m$xAU zDn%z17gpqF1rxh;yr@unmF?}pt|V%*ohvhc+1Cb_vUB?bcr_eBIwhqaQ^Y)j(ut`& z7WJBl4vCeC#qjV{PEgNy?Gc7ShIEvB*S)&q+CCDrozSMT*1N0->f2q_o65xSf}!ct zoO9rG-RiCODY(ro{iY+MfAXp5MH`CXrZ+bd`wcHf!^WY-Y^ncX(MB-=iuycJkX$!^ zn;z8lw^`?4U2FDJgGH}Dpa-t@b-Cfah5#ezw&uTYhuYSP8Xc*Qd+)jV}UtanzeN*#??tl*7+94D;t}u&zJ}WpXF^NlEB&tP`pftA>$VAs@6aWAK2mpFw8?g~w6`Ib<>}Ou;rsBtZipD_7QkFCKh=6!?-Stq!(`$L{y-E*87g+qb|U z@J&p~Jw@SYGz!Tw2{3G2kA$%=zTKgK;VoS9<@6&;(WOWIn13LVmr#l$4iv`$@-PEq zY%>Dz0>qe*gV!9>XbWe52}id9K11w{?Zw%IjsRe$j9pIR__Th ze;`Ynx&?k>&RFo{35^&yEAi|C!+f?l8h35}9Wk-rS-G$_f z8qo-@yAhmn99H)GazJm_*6Wt>N5U0_2?cP{@8>*a=0>cZ!k`y}cE`2vR|#acwy z+Drc*Y_juQh!B^)R*tPl-#bo1-+NEiv#UKL?kW$q32^cBT|!P8(BNd~Y4?#{*g*Xg z@m2#UcPfx;w83lTsM71^Yie3q?MMAkLQ^sqZVakDD(OvW;AdCHe7!%5Y#5lrB z_(D+}W6BDqjfrJrcu29fr4D0FiYTli@^`c_PP%RWx^fcL3OVOTk{JqI2qhMwts!bfDmfB~)ZmGl7Ix5GU4@=anw{HqKXT;=3u zyE~_OnzLC1lNdcFcqjOU_c-!}lM3t#p3)p_?0OXtLkMz7 zLMCBQk`zD5fKPuENnrX@m4#koLREllNIUC}UMT5*^pb@5mjaeBES)Ng)y%6v-PtmL zD5WEiQk=@M$D)FUa}r@2_zZP+YKuw%*v}AV26(AaL^Xj$pTno6CWy4e!R{N)vpf+0!r*3#!C zb$~>w)Y$H8Yw6w^!Z|C$07b_jF)LL~8Kc{jLxaC=z*=yqF2W27Rq--8oL}CS2&g5U zY`N5;UMtwxW$i_c+N*qT4|bKMHr<6Vn|`Bzaj6=&KY&-m5oBFb_A*8GGmv#m)wZZt zNAwb3*;ovBPwfQt^w%D47^KKVxp&^%HC)?Eg0>Udl-7Eu6-j-wty@#87@jZ;d4_Rb z*j=|;tGx?uGfThj$ZDUWD|$AXB5~8(3yJ-j7pr1x(_+`uzp-eem}LwgT7N(dT(9d2#d|dYR?uz5f8PqVtrWFF?y3Qe^H{z?llQ@icrkza zSslRw7h1l5;+UOK63S^OM*KmzjZ;6mH*F%L=mN7O;4_9FXSeCkN0V%sGLk;m`o=h> zl+X#>O2JaY1h5=AWB2kB(})Pclmonk$u{T z=~8M(Och~XoSZy&X|w9|Y{YRH38hO*A*~1o23iNAUFFS1V5hzQFDw0*w%P0RFHlPX o0u%rg000080D58@lY9p_33_51SsE)}qO_B}2QUV82LJ#70M04hg8%>k diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-notarget.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-notarget.doo index 29bf4a7e7f6d3de4e18a4ac7da417833cc576ef8..3d4eaf2e261d0e81a17d551da26dece9a1c332bd 100644 GIT binary patch delta 1017 zcmV@6aWAK2ms?_9I*|V0e|CT99b={?dX^T003|f000L7003}u zZ)b90ZM9cTZ`(K!z57?p-Xy@QZf^^%?L}K8-M~#-#M$&%Fw!I@EQu;f3GSx;?;Vm> zP1*WzT5JF#GC4Ev&6^>|dhr7E8b6m(JW7^NCX-yGRfg~s<5r_AcJ!2pyyUd@z%qq9 zSbym>db3(HS-ufPQb~!028m_H5>()=Jxu_Tj49`(A00^W?SI&TfCQ<8GT~n}Viq|4Yjm0e`)m zJe=VgIm4dR--%@NjFd+KO}ufde~Zl78CJw=e@&Px0QNVHy-xf~gKT+T3aLSqSYQgD zBr8jl>PJ>KmnTp8nn~cwEH@`>a+2k~8~|9TO43dBTjSA6VxN~YmH4INZQEvprHXD& zZb(^gk@5$Qt+fWI6US4gh4d>xK7UKE30ht6%Vy;{>gx{ShT8v_eNhMY`1!O9(};Fp zJ~sv}89IC2PyK0ktfqtTgZRzgPsfYriPJlfdW33^oME+&$J6<;3{RaweIA5lSq2;U zMju{)afLVr+;XKA)aKdfvZ3p|E#vsK8U!|ml*{4_r17zKPKq_9Seq1`vwxT5rXTvO zfp`wOCUjG0umKuC9sNN^BYJt-p#B8yXj8}Z2>AG<435=7(lT0!9RIfU*~7`m>ego3 z8ooy~yX!hYxqmvJoX7sza7jNsuRdHAX0ovC!cG`+n;a_o{`TVL{i}DMZz$mFuNu{* z6uEH=N~YITS}l3;cz|sRuYWG26r`cM&+d(<31NES%j~}Xb1?-p7T4@6aWAK2monf8?gQV*O1003|f000L7003}u zZ)b90ZM9czZ__Xk{@!14d`qMf;2R2U5lkCQWdp5ad_-PyTdgK>W;;>G=zqsAN$a$E z=|D`H*4lUXJont$=e>Fba*024&h9x$N25{7;vzwK3UMuwXB+h?Vrfp*+8s#*ZeStf z;D2PXBs@Q1SyXV2nFNk`LLwC4tUZkYqJ#+HM7t;?xlQnbg)}LQK}miyX#NSUxdX~W_?k<~vSTP; zVaiIhA%<)h^cT9>MImHF>ROw^?swk@$x<49Wb4WGUv}Je-E3o!>f3*5IW3@*lYfKL zUn6VSk@^=Ft)7wcAfS#nZ1p`$tes}1cvaVgz5<}SY0P!vUK+}lra9vhSdJOS@Pm^) zM=rKmnOvS66 zZx+)#ijB1zs1?Uirh)V?KrTzC34a=0@5*N6+3V{T;riNtpM6$(=J>g^G}A!sz;vn& z8Zxx@x|{mbW?xMU;RbP=znhK|&k?6{Aaw}U969}J?T@G9W$B+fz53iSPLc#x@LT=T z474kRA>f({DWKG!wJs}loi}A1o>slU+EC>(I|6BVtR0hLsZuO;iq_dla(~qgebhia z23;z2U1u->YCsvhR!1XvbJ(En1Z`MTs{?CuAgEK-CRS&O*@d4GF8Wu&Q-p<0?5;0MXm{tBixN0+l zcFhjbuQJe0Y!mL#!}Eufct-lIj4CGoB!cJfvhR2Z>~>m7>U~`6eN96{{c}^&ST*oL z#l{D^jvbKh_ev|O+pYsmvhCaLQK&B?tCPKNoyOdic2}cakQUr$_R9c|LrA5~U;X?6 rP)h*<6aW+e000O8X<{3bXazV4X<{2$1SnDuoRg^qFa})(00000goEI1 diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-py.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-py.doo index 0d6122a6f5577af5833346caa6f9bc1f63c351cb..86bfd547970336c977fe8ded720f0c1107034b77 100644 GIT binary patch delta 1026 zcmV+d1pWK*3+M|CP)h>@6aWAK2ml0R9I*|V0e=K!99gmLOU$7I007Dl000L7003}u zZ)b90ZN*n%Z__*w{@!14d`qPg;M=Rv76ICLr!qj>7$1?B+%~I89Be1*DE;r8on&#^ zbnZYvrK+iYch7T=?`-GUGtjsAwUFXQvTQUONi0$pBfClwGLe+@bFP!{t;pk2O3XE^ zM}H##o)toB5C!I#z!%Ai0;QsfIAuz~dl4_m5a@GrE0l(cN#M#1V-mrY5UGhm<|0>G zma!HRg0UR}z+9CQ6+CG@YTFF;tw?O_dsB(uO5V3^Cs?8=H*QE-Z;|k8j=ixKXb|Uf zo(>}Y4v@=oGrE`SwH6tV--y-pV&0R@%6|hquOhgBr}KTn)y93Z326Ga%Ra9Hy)Cq1 z8qy5RX2zf=!#mW$nEZ7qa|J;^s7Zaj*;ccLaD#j*b>OGt#B;=Nrdz<nIjk!RhImr3yFpfcSJr0dwb=Xbutuy`!UT>UD%GjWXZtZ|^V+n-+Jww{u)aY{f;k zd9b0KEuxT^@R(^d#m$puW3LeaC_dW9zCZ(T4|l%D+26sQ0RG1G1URU@Jby8^yTxPf zZ48fpujD+XU`{`grU@ zy8CUX;@+KiSg`v|*sEs;@~@N~VDR@e?rP2z#iM|;of#fysLE7NyKHMS%d76O`Yp(k zas=v_K{Oj)snD}1c_sZumla8JZWv3o_6 z|0DGu)*~4Elz2q?gNzy`za>I2?y}$Wa@)-ek~H(UGV_)Oy;4^^q1M}3vB{3EW~2on w2EX+A2~bM`0u%rg0000800d+llX?X>2?S&uS+VU)%%PLJ1uzC;1poj50C7|85&!@I delta 1035 zcmV+m1oZpp3-JpLP)h>@6aWAK2mpy<8?gwVtX2007Dl000L7003}u zZ)b90ZN*pLZ`(Eye)nH-dy@fA-QEVxcF`8e7Px7PBugI)M!F<~B~m3R!I|s-ef%L= zlr4o$i){uB%jEIC?>^q~s8_E*J>r*A@CQMP$z&q1%t?ymE=MSMR_UK>mBsHkODiFe zDSy~bCIGZ3xlq7MWSGHcLCO+^)Dvk=q=ff8U28+opNB^-71Trkm1Y>T1nxM`jTdds znN*@m6&Daq?GOMmSqYTzQ@g_17N{P1W_|BX1%9n)-?p6~nbfgSL&~n^8NH|28*70E zasFcYAkvQj`7C#ny{qb%?bI z(Jl6ZT#rLvC@gx&)C@Raw_hisD~)dU8LWdAP{qIK(ujXOPEaGOW|L@yp)_?&4}cFV z0v}67ISWfB;%i>uYr8)UoPUU|ZhfX#SnwJh&>_v?eSL=VHT@fXsnY})8LmgY zu;~ZeB;`d(_0v7cCGKp4`1GV5GOtZEjYLAPb+kpjO>m=7u-$lh$8p@0xL>{9!fiq} zloz{a3)(v(N`V&dFT$lj|Cx4Y!z{g>= z1k8hl5m?_#`GD{>_AYgMZ3s`x# zD*sF|N65K8QZ7DPI{UMZWN)7o%5%XBGaZ#gJ?dOlg0crcolF5-p{#N>m-uylSO2!0 zHD>nUbuqeI=$Q~)%;3&AHh%~+Kr?bFA0SzPV{yR@Z<3!`{xZJ!aC3I`;m!Lm!<44K zTmOy^(EAp}T&@|M6PoKYK5Aj6fco5o>nhdfqm1@MtQWgiP5hsQE>4Sf!;ivmA~2Qf z0v^#Lnue5kLHL7=8YVv^LNx87A9=axW(G-`dEA(JOGCfX)HKum=UZsUW=FctJdoY! zJJ2AipRR!<+2`%Py|yQ?)5&!JFEP8V?e?g1GJyNSdwVtYzvIQ^(YXtxR F005HN+$aD5 diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries.doo index 92ccaf69a6d8d26c0066d0a1a2470e0532f3f13b..f0beaf7d64554671e84c9321b2220992df5998cc 100644 GIT binary patch delta 49 zcmdnKhk5%RX5IjAW)=|!1_lm>TgfsTd1o*(1L@5x7)9@Z7?Tg&wE)w<@7e$WgS`>h delta 49 ycmdnKhk5%RX5IjAW)=|!1_lm>q$KH$yfYY?f%N7TjG}iyjL8S?T7c=_cWnS(oe%H; diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIOInternalExterns-go.dfy b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-go.dfy similarity index 100% rename from Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIOInternalExterns-go.dfy rename to Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-go.dfy diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIOInternalExterns-java-cs-js.dfy b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-java-cs-js.dfy similarity index 100% rename from Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIOInternalExterns-java-cs-js.dfy rename to Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-java-cs-js.dfy diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIOInternalExterns-notarget-java-cs-js-go-py.dfy b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-notarget-java-cs-js-go-py.dfy similarity index 100% rename from Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIOInternalExterns-notarget-java-cs-js-go-py.dfy rename to Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-notarget-java-cs-js-go-py.dfy diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIOInternalExterns-py.dfy b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-py.dfy similarity index 100% rename from Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIOInternalExterns-py.dfy rename to Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-py.dfy diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO-notarget-java-cs-js-go-py.dfy b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO2-notarget-java-cs-js-go-py.dfy similarity index 100% rename from Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO-notarget-java-cs-js-go-py.dfy rename to Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO2-notarget-java-cs-js-go-py.dfy diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/README.md b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/README.md index dc0ec146d7..b4349bc604 100644 --- a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/README.md +++ b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/README.md @@ -40,3 +40,8 @@ is shared between concurrent executions (see [the `{:concurrent}` attribute](https://dafny.org/dafny/DafnyRef/DafnyRef#sec-concurrent-attribute)). It cannot currently offer any other guarantees related to concurrent execution, such as freedom from deadlocks. + +## Notes about naming + +Currently, replacement modules should appear in files before the files containing modules that include them, [issue tracked here](https://github.com/dafny-lang/dafny/issues/5728). +Therefore, until that issue is fixed, it might be advisable to add a number in your files to make the order deterministic, as the "find" command might have different outputs based on the OS. \ No newline at end of file diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/separate-compilation/translation-records/InvalidFormat.dfy.expect b/Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/separate-compilation/translation-records/InvalidFormat.dfy.expect index a576b64806..e6ff823639 100644 --- a/Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/separate-compilation/translation-records/InvalidFormat.dfy.expect +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/comp/separate-compilation/translation-records/InvalidFormat.dfy.expect @@ -4,5 +4,5 @@ CLI: Error: malformed dtr file NoGood.dtr Translation was aborted because errors were found Dafny program verifier finished with 0 verified, 0 errors -CLI: Error: cannot load WrongDafnyVersion.dtr: it was built with Dafny 10.6.0.0, which cannot be used by Dafny 4.7.0.0 +CLI: Error: cannot load WrongDafnyVersion.dtr: it was built with Dafny 10.6.0.0, which cannot be used by Dafny 4.8.0.0 Translation was aborted because errors were found diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test.doo b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test.doo index 7a1b95f09944748b6f025a4fc54e8ab9f5b478bc..99c10297c3a1c96bf3e11dcbf5bf3512e0e77730 100644 GIT binary patch delta 46 tcmbQiI)jxrz?+#xgn@y9gFzuhW+U%(MrI&Ac{yV_m{w%60Mju{HUQR`39b42A#z From 73f2e43c1f70e6782663047c9ec7a0248643fb9d Mon Sep 17 00:00:00 2001 From: Mikael Mayer Date: Wed, 28 Aug 2024 17:42:45 -0500 Subject: [PATCH 04/14] Added necessary mv and rm commands on Windows Fixed the tests --- Source/IntegrationTests/LitTests.cs | 4 + .../LitTest/gomodule/multimodule/test.doo | Bin 664 -> 664 bytes .../multimodule/DerivedModule.dfy | 8 +- .../multimodule/PythonModule1-py.dtr | 2 +- .../multimodule/PythonModule1.doo | Bin 664 -> 664 bytes .../multimodule/dafnysource/helloworld.dfy | 9 ++ .../nestedmodule/SomeNestedModule.doo | Bin 769 -> 668 bytes .../SomeNestedModule/SomeNestedModule-py.dtr | 2 +- .../nestedmodule/SomeTestModule.dfy | 4 +- .../dafnysource/SomeNestedModule.dfy | 9 ++ .../singlemodule/dafnysource/helloworld.dfy | 8 +- Source/XUnitExtensions/Lit/ExitCommand.cs | 18 +++- Source/XUnitExtensions/Lit/LitRunCommand.cs | 2 +- Source/XUnitExtensions/Lit/MvCommand.cs | 57 ++++++++++++ Source/XUnitExtensions/Lit/RmCommand.cs | 86 ++++++++++++++++++ Source/XUnitExtensions/Lit/SedCommand.cs | 2 +- Source/XUnitExtensions/Lit/ShellLitCommand.cs | 6 ++ 17 files changed, 199 insertions(+), 18 deletions(-) create mode 100644 Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/dafnysource/helloworld.dfy create mode 100644 Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/dafnysource/SomeNestedModule.dfy create mode 100644 Source/XUnitExtensions/Lit/MvCommand.cs create mode 100644 Source/XUnitExtensions/Lit/RmCommand.cs diff --git a/Source/IntegrationTests/LitTests.cs b/Source/IntegrationTests/LitTests.cs index f770c2141f..0f559ce7d5 100644 --- a/Source/IntegrationTests/LitTests.cs +++ b/Source/IntegrationTests/LitTests.cs @@ -132,6 +132,10 @@ IEnumerable AddExtraArgs(IEnumerable args, IEnumerable l "%diff", (args, config) => DiffCommand.Parse(args.ToArray()) }, { "%sed", (args, config) => SedCommand.Parse(args.ToArray()) + }, { + "%mv", (args, config) => MvCommand.Parse(args.ToArray()) + }, { + "%rm", (args, config) => RmCommand.Parse(args.ToArray()) }, { "%OutputCheck", OutputCheckCommand.Parse } diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test.doo b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test.doo index 99c10297c3a1c96bf3e11dcbf5bf3512e0e77730..ce95bf59f7bb89de36a61ec60edd1c7dccf94935 100644 GIT binary patch delta 42 tcmbQiI)jxbz?+#xgn@y9gQ2@_BhL&*rtZ4Q%NQ#_lme3_h>B*i1pwO(3sL|8 delta 42 tcmbQiI)jxbz?+#xgn@y9gFzu>BhL&*CWVyA%NQ#_lme3_h>B*i1pv7#2|fS- diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/DerivedModule.dfy b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/DerivedModule.dfy index 6c6249d642..a826a16f67 100644 --- a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/DerivedModule.dfy +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/DerivedModule.dfy @@ -1,8 +1,8 @@ -// RUN: %baredafny translate py --python-module-name=PythonModule2 --library="%S/PythonModule1.doo" --translation-record "%S/PythonModule1-py.dtr" --output "%S/PythonModule2" "%s" -// RUN: rm -rf "%S/PythonModule2" -// RUN: mv "%S/PythonModule2-py" "%S/PythonModule2" +// RUN: %baredafny translate py --python-module-name=PythonModule2 --library="%S/PythonModule1.doo" --translation-record "%S/PythonModule1-py.dtr" --output "%S/PythonModule2" "%s" --include-runtime +// RUN: %exits-with -any %rm -rf "%S/PythonModule2" +// RUN: %mv "%S/PythonModule2-py" "%S/PythonModule2" // RUN: pip3 install "%S" -// RUN: python3 %S/PythonModule2/ > %t +// RUN: %S/python3 PythonModule2/ > %t // RUN: %diff "%s.expect" "%t" module DafnyModule3 { import DafnyModule1 diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/PythonModule1-py.dtr b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/PythonModule1-py.dtr index a5ed531378..8875c24a62 100644 --- a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/PythonModule1-py.dtr +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/PythonModule1-py.dtr @@ -1,4 +1,4 @@ file_format_version = "1.0" -dafny_version = "4.7.0.0" +dafny_version = "4.8.0.0" [options_by_module.DafnyModule1] python-module-name = "PythonModule1" diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/PythonModule1.doo b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/PythonModule1.doo index 3f3a77b4df2dc97800f19362001c948355645c19..73cac5cbf231d0ad36acd4ca7622cc285caa16b2 100644 GIT binary patch delta 111 zcmbQiI)jxbz?+#xgn@y9gQ2r-BhL&*-p)FiNabzkHU$F(lP7Ovv@^7Ecy-wEm8nVN xA_Ym-)}}>g_6V`6ZkWRq5p+^YBk*+SX;y{+Z$>5&2ADaM6__m1%t>Q10suA%Aq4;c delta 111 zcmbQiI)jxbz?+#xgn@y9gF!ZBBhL&*UfC3x$g^>Ze}aL6v6DA4+8Nde8-F%2X{?zr wqshrJFfFdLX%hPhk=B9ngD1}{vJ5Q=;L@G5 zcELgoQHut)=`Ug(X{PJP`a=^O-zXj9I|#6Mo*T_k^v){El$E%9+0_O6}9(+#OSl!!2UhS^7)v zxG5|2jHl0HOLrR2-50C2=zL>k{(t+yH|_If(^al7X8RQS<<9EtpTBgIo&G4DPFect z($k|^FS5#gw=9Z%8o5Sd*45nBf9KybqejmD#E%K#z(~mlVs;=dD9TSSO3a=7g)zEb vgaLOX0+k{Glqe1GW@JLvif#o$-z;FNfLa*f&B_LnU;@GdAT7qkzzn1SmObNq literal 769 zcmWIWW@Zs#U|`^25Xin2A$rwnNe&|e!&fE-23`gkhTO!w%(T?v61|fA+?>!5P6lR% z%9=DLATF)oW?*Fb2~-Q#o*U$t_t=1E&u`Jz_dK)iGF89Q|8^xwaDz~)uy&xHYVM@_ z)B862$$YUgR%v(sHHW`ZS@z#Vv2&lk{JQeK{Cw?m!xKN{YH$9%WqaP|zjSq?|s$hgH2cbd8yL;QRbW*dr#{wwKtp83zW~zU1j#l!zs-D!OBT$ zVtScZwOwr_g?ZMoL~!v>I&*r}0g2CoAC6c~W&hBjrE^&MO=eJ0g!pZ4WABAMFFs$? z3fmDP(*H{FQ~M&LyH%=F+5}g9GKgT){&(}kERiXjLu_Ifz5M@Ld1=dmN3(BBe2Dp= zEaWlmgwu+I$FF9r*mQfBPmbaVhI2~W{=}T+5?+;R6tvU0LU8s9t*UvU&n@>&oAx*- z)ob6)MM3+gM*O*v)Oz7blGLY`zSlKZ|7~A1C3Vl~)2`?j(hE{j|C zHFV!NV=s{%-GB4`sT|ht;%cec{)!V;_nR-B{I@S+-|0i&oAd+VQFbKbc*Oq1j|t(x z2+Rj!c3_kh6y>KECFX)7%OE2;?N0?pWL>@<&T;O%?^kbKJx||{XZa$H zqf@NK2R2m+WZHJ@aWb9W6m cxYvP(fxM1k7%LmdW+ot90HnQviJXA}03QM+wg3PC diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeNestedModule/SomeNestedModule-py.dtr b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeNestedModule/SomeNestedModule-py.dtr index e495416f64..b5896b4669 100644 --- a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeNestedModule/SomeNestedModule-py.dtr +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeNestedModule/SomeNestedModule-py.dtr @@ -1,4 +1,4 @@ file_format_version = "1.0" -dafny_version = "4.7.0.0" +dafny_version = "4.8.0.0" [options_by_module."Some.Nested.Module"] python-module-name = "SomeNestedModule" diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeTestModule.dfy b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeTestModule.dfy index 063cd71c1f..077d23f390 100644 --- a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeTestModule.dfy +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeTestModule.dfy @@ -1,6 +1,6 @@ // RUN: pip3 install "%S" -// RUN: %baredafny translate py --output "%S/SomeTestModule" --library="%S/SomeNestedModule.doo" --translation-record "%S/SomeNestedModule/SomeNestedModule-py.dtr" "%s" -// RUN: python3 %S/SomeTestModule-py/ > %t +// RUN: %baredafny translate py --output "%S/SomeTestModule" --library="%S/SomeNestedModule.doo" --translation-record "%S/SomeNestedModule/SomeNestedModule-py.dtr" "%s" --include-runtime +// RUN: %S/python3 SomeTestModule-py/ > %t // RUN: %diff "%s.expect" "%t" module SomeTestModule { diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/dafnysource/SomeNestedModule.dfy b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/dafnysource/SomeNestedModule.dfy new file mode 100644 index 0000000000..5f5d4774b8 --- /dev/null +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/dafnysource/SomeNestedModule.dfy @@ -0,0 +1,9 @@ +// This file is used to regenerate SomeNestedModule.doo +// RUN: echo 'lit should ignore this file' + +module Some.Nested.Module { + method HelloWorld() + { + print "Hello World"; + } +} diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/singlemodule/dafnysource/helloworld.dfy b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/singlemodule/dafnysource/helloworld.dfy index d437246e53..957ee79b50 100644 --- a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/singlemodule/dafnysource/helloworld.dfy +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/singlemodule/dafnysource/helloworld.dfy @@ -1,8 +1,8 @@ -// RUN: %baredafny translate py --python-module-name=PythonModule1 "%s" --output "%S/PythonModule1" -// RUN: rm -rf "%S/PythonModule1" -// RUN: mv "%S/PythonModule1-py/" "%S/PythonModule1" +// RUN: %baredafny translate py --python-module-name=PythonModule1 "%s" --output "%S/PythonModule1" --include-runtime +// RUN: %exits-with -any %rm -rf "%S/PythonModule1" +// RUN: %mv "%S/PythonModule1-py/" "%S/PythonModule1" // RUN: pip3 install "%S" -// RUN: python3 %S/PythonModule1/ > %t +// RUN: %S/python3 PythonModule1/ > %t // RUN: %diff "%s.expect" "%t" module DafnyModule1 { diff --git a/Source/XUnitExtensions/Lit/ExitCommand.cs b/Source/XUnitExtensions/Lit/ExitCommand.cs index ccbd6b8948..98c100c459 100644 --- a/Source/XUnitExtensions/Lit/ExitCommand.cs +++ b/Source/XUnitExtensions/Lit/ExitCommand.cs @@ -1,3 +1,4 @@ +using System.ComponentModel; using System.IO; using System.Threading.Tasks; @@ -5,18 +6,27 @@ namespace XUnitExtensions.Lit; public class ExitCommand : ILitCommand { - private readonly int expectedExitCode; + private readonly string expectedExitCode; private readonly ILitCommand operand; - public ExitCommand(int exitCode, ILitCommand operand) { + public ExitCommand(string exitCode, ILitCommand operand) { this.expectedExitCode = exitCode; this.operand = operand; } public async Task Execute(TextReader inputReader, TextWriter outputWriter, TextWriter errorWriter) { - var exitCode = await operand.Execute(inputReader, outputWriter, errorWriter); - if (exitCode == expectedExitCode) { + var exitCode = 1; + try { + exitCode = await operand.Execute(inputReader, outputWriter, errorWriter); + } catch(Win32Exception) { + if (expectedExitCode == "-any") { + } else { + throw; + } + } + + if (expectedExitCode == "-any" || exitCode.ToString() == expectedExitCode) { return 0; } diff --git a/Source/XUnitExtensions/Lit/LitRunCommand.cs b/Source/XUnitExtensions/Lit/LitRunCommand.cs index 1281639d27..7c15266857 100644 --- a/Source/XUnitExtensions/Lit/LitRunCommand.cs +++ b/Source/XUnitExtensions/Lit/LitRunCommand.cs @@ -18,7 +18,7 @@ private static ILitCommand ParseArguments(Token[] tokens, LitTestConfiguration c return new NotCommand(operand); } if (tokens[0].Value == "%exits-with") { - var ec = Int32.Parse(tokens[1].Value); + var ec = tokens[1].Value; var operand = ParseArguments(tokens[2..], config); return new ExitCommand(ec, operand); } diff --git a/Source/XUnitExtensions/Lit/MvCommand.cs b/Source/XUnitExtensions/Lit/MvCommand.cs new file mode 100644 index 0000000000..8a8808b1c1 --- /dev/null +++ b/Source/XUnitExtensions/Lit/MvCommand.cs @@ -0,0 +1,57 @@ +using System; +using System.IO; +using System.Text.RegularExpressions; +using System.Threading.Tasks; +using Xunit; +using Xunit.Abstractions; +using Xunit.Sdk; + +namespace XUnitExtensions.Lit { + public class MvCommand : ILitCommand { + + private readonly string fileOrFolder; + private readonly string destination; + + private MvCommand(string fileOrFolder, string destination) { + this.fileOrFolder = fileOrFolder; + this.destination = destination; + } + + public static ILitCommand Parse(string[] args) { + if (args.Length != 2) { + throw new ArgumentException($"Wrong number of arguments for mv, expected 2 but got {args.Length}"); + } + var fileOrFolder = args[0]; + var destination = args[1]; + + return new MvCommand(fileOrFolder, destination); + } + + public async Task Execute(TextReader inputReader, + TextWriter outputWriter, TextWriter errorWriter) { + if (File.Exists(fileOrFolder)) { + try { + File.Move(fileOrFolder, destination); + } catch (Exception e) { + await outputWriter.WriteLineAsync(e.ToString()); + return 1; + } + } else if (Directory.Exists(fileOrFolder)) { + try { + Directory.Move(fileOrFolder, destination); + } catch (Exception e) { + await outputWriter.WriteLineAsync(e.ToString()); + return 1; + } + } else { + throw new ArgumentException("File " + fileOrFolder + " not found"); + } + + return 0; + } + + public override string ToString() { + return $"%mv {fileOrFolder} {destination}"; + } + } +} diff --git a/Source/XUnitExtensions/Lit/RmCommand.cs b/Source/XUnitExtensions/Lit/RmCommand.cs new file mode 100644 index 0000000000..d860a2fb25 --- /dev/null +++ b/Source/XUnitExtensions/Lit/RmCommand.cs @@ -0,0 +1,86 @@ +using System; +using System.IO; +using System.Linq; +using System.Text.RegularExpressions; +using System.Threading.Tasks; +using Xunit; +using Xunit.Abstractions; +using Xunit.Sdk; + +namespace XUnitExtensions.Lit { + public class RmCommand : ILitCommand { + + private readonly string options; + private readonly string fileOrFolder; + + private RmCommand(string options, string fileOrFolder) { + this.options = options; + this.fileOrFolder = fileOrFolder; + } + + public static ILitCommand Parse(string[] args) { + if (args.Length != 1 && args.Length != 2) { + throw new ArgumentException($"Wrong number of arguments for rm, expected 1 or 2 but got {args.Length}"); + } + + string fileOrFolder; + string options; + if (args.Length == 2) { + options = args[0]; + fileOrFolder = args[1]; + } else { + options = ""; + fileOrFolder = args[0]; + } + + return new RmCommand(options, fileOrFolder); + } + private static void RecursiveDelete(DirectoryInfo baseDir) + { + if (!baseDir.Exists) { + return; + } + + foreach (var dir in baseDir.EnumerateDirectories()) { + RecursiveDelete(dir); + } + baseDir.Delete(true); + } + public async Task Execute(TextReader inputReader, + TextWriter outputWriter, TextWriter errorWriter) { + if (File.Exists(fileOrFolder)) { + try { + File.Delete(fileOrFolder); + } catch (Exception e) { + await outputWriter.WriteLineAsync(e.ToString()); + return 1; + } + } else if (Directory.Exists(fileOrFolder)) { + if (Directory.EnumerateFiles(fileOrFolder).Any()) { + if (options == "-rf") { + RecursiveDelete(new DirectoryInfo(fileOrFolder)); + } else { + await outputWriter.WriteLineAsync("Directory is not empty. Please supply rm with -rf to force deletion"); + return 1; + } + } else { + try { + Directory.Delete(fileOrFolder); + } catch (Exception e) { + await outputWriter.WriteLineAsync(e.ToString()); + return 1; + } + } + } else { + await outputWriter.WriteLineAsync($"File or folder {fileOrFolder} not found"); + return 1; + } + + return 0; + } + + public override string ToString() { + return $"%rm {(options != "" ? options + " " : "")}{fileOrFolder}"; + } + } +} diff --git a/Source/XUnitExtensions/Lit/SedCommand.cs b/Source/XUnitExtensions/Lit/SedCommand.cs index ecffc218cf..5cb212cb2c 100644 --- a/Source/XUnitExtensions/Lit/SedCommand.cs +++ b/Source/XUnitExtensions/Lit/SedCommand.cs @@ -22,7 +22,7 @@ private SedCommand(string regexp, string replaceBy, string file) { public static ILitCommand Parse(string[] args) { if (args.Length != 2) { - throw new ArgumentException($"Wrong number of arguments for sed: {args.Length}"); + throw new ArgumentException($"Wrong number of arguments for sed, expected 2 but got {args.Length}"); } var regexpReplace = args[0]; var delimitCharacter = regexpReplace[1]; diff --git a/Source/XUnitExtensions/Lit/ShellLitCommand.cs b/Source/XUnitExtensions/Lit/ShellLitCommand.cs index 3a3cd052ec..50bdf1fb2f 100644 --- a/Source/XUnitExtensions/Lit/ShellLitCommand.cs +++ b/Source/XUnitExtensions/Lit/ShellLitCommand.cs @@ -23,6 +23,12 @@ public async Task Execute(TextReader inputReader, TextWriter outputWriter, TextWriter errorWriter) { using var process = new Process(); + if (shellCommand.Contains('/') && Path.GetFileName(shellCommand) is var command and "python3") { + var workingDir = Path.GetDirectoryName(shellCommand); + process.StartInfo.WorkingDirectory = workingDir; + shellCommand = command; + } + process.StartInfo.FileName = shellCommand; foreach (var argument in Arguments) { process.StartInfo.ArgumentList.Add(argument); From 5faf876b2c768c61044b8f87825385682b6e772d Mon Sep 17 00:00:00 2001 From: Mikael Mayer Date: Wed, 28 Aug 2024 20:15:34 -0500 Subject: [PATCH 05/14] Fixed go tests for Windows --- Source/IntegrationTests/LitTests.cs | 2 + .../gomodule/multimodule/DerivedModule.dfy | 7 +- .../multimodule/dafnysource/helloworld.dfy | 9 ++ .../LitTest/gomodule/multimodule/test-go.dtr | 2 +- .../LitTest/gomodule/multimodule/test.doo | Bin 664 -> 664 bytes .../singlemodule/dafnysource/helloworld.dfy | 5 +- .../multimodule/PythonModule1.doo | Bin 664 -> 664 bytes .../nestedmodule/SomeNestedModule.doo | Bin 668 -> 668 bytes Source/XUnitExtensions/Lit/CpCommand.cs | 109 ++++++++++++++++++ Source/XUnitExtensions/Lit/MvCommand.cs | 2 +- 10 files changed, 129 insertions(+), 7 deletions(-) create mode 100644 Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/dafnysource/helloworld.dfy create mode 100644 Source/XUnitExtensions/Lit/CpCommand.cs diff --git a/Source/IntegrationTests/LitTests.cs b/Source/IntegrationTests/LitTests.cs index 0f559ce7d5..b91a4b5fa4 100644 --- a/Source/IntegrationTests/LitTests.cs +++ b/Source/IntegrationTests/LitTests.cs @@ -136,6 +136,8 @@ IEnumerable AddExtraArgs(IEnumerable args, IEnumerable l "%mv", (args, config) => MvCommand.Parse(args.ToArray()) }, { "%rm", (args, config) => RmCommand.Parse(args.ToArray()) + }, { + "%cp", (args, config) => CpCommand.Parse(args.ToArray()) }, { "%OutputCheck", OutputCheckCommand.Parse } diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/DerivedModule.dfy b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/DerivedModule.dfy index 696c15acf2..b95ecb1d1b 100644 --- a/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/DerivedModule.dfy +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/DerivedModule.dfy @@ -1,7 +1,8 @@ // RUN: %baredafny translate go --go-module-name=GoModule2 --library="%S/test.doo" --translation-record "%S/test-go.dtr" --output "%S/test3" "%s" -// RUN: cp -r "%S/go.*" "%S/test3-go/" -// RUN: cp -r "%S/../../../../../../../../../DafnyRuntime/DafnyRuntimeGo-gomod" "%S" -// RUN: cp -r "%S/DafnyModule1" "%S/test3-go/" +// RUN: %cp -rf "%S/go.mod" "%S/test3-go/go.mod" +// RUN: %cp -rf "%S/go.sum" "%S/test3-go/go.sum" +// RUN: %cp -rf "%S/../../../../../../../../../DafnyRuntime/DafnyRuntimeGo-gomod" "%S" +// RUN: %cp -rf "%S/DafnyModule1" "%S/test3-go/" // RUN: go run -C %S/test3-go/ test3.go > %t // RUN: %diff "%s.expect" "%t" module DafnyModule3 { diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/dafnysource/helloworld.dfy b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/dafnysource/helloworld.dfy new file mode 100644 index 0000000000..75e0ff227c --- /dev/null +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/dafnysource/helloworld.dfy @@ -0,0 +1,9 @@ +// This file is used to regenerate PythonModule1.doo +// RUN: echo 'lit should ignore this file' + +module DafnyModule1 { + method HelloWorld() + { + print "Hello World"; + } +} diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test-go.dtr b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test-go.dtr index c09c81885f..d9d364ca0a 100644 --- a/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test-go.dtr +++ b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test-go.dtr @@ -1,4 +1,4 @@ file_format_version = "1.0" -dafny_version = "4.7.0.0" +dafny_version = "4.8.0.0" [options_by_module.DafnyModule1] go-module-name = "GoModule1" diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test.doo b/Source/IntegrationTests/TestFiles/LitTests/LitTest/gomodule/multimodule/test.doo index ce95bf59f7bb89de36a61ec60edd1c7dccf94935..507fc7e0335796bc92c068aa985db220d0b5d4e4 100644 GIT binary patch delta 111 zcmbQiI)jxbz?+#xgn@y9gW=rljXX0LdC$$3iB#TpZc{K&FnRJuMms|rhgXLkUzwUT xE>e(WZEad~W{(i7>V`Q?5kV)VGy+eDo@QkT@MdHZVSt%4S%JwC&73qQBLIvUB8>n5 delta 111 zcmbQiI)jxbz?+#xgn@y9gQ2@_BhL&*-tIb?$g^>Ze}aL6v6DA4+8Nde8-F%2X{?zr wqshrJFfFdLX%hPhk=B9 %t // RUN: %diff "%s.expect" "%t" module DafnyModule1 { diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/PythonModule1.doo b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/multimodule/PythonModule1.doo index 73cac5cbf231d0ad36acd4ca7622cc285caa16b2..d02fd1ee749dc029853701729d0c43ae7326c4e6 100644 GIT binary patch delta 42 tcmbQiI)jxbz?+#xgn@y9gW>e-jXX0LnNH81yo|8|L@6*?f~aUFTLAKt48{Ne delta 42 tcmbQiI)jxbz?+#xgn@y9gQ2r-BhL&*rp~&_%NQ#_lme3_h>B*i1pwNK3rYY0 diff --git a/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeNestedModule.doo b/Source/IntegrationTests/TestFiles/LitTests/LitTest/pythonmodule/nestedmodule/SomeNestedModule.doo index df92ea9bec162dab2e586d0ce06e517ff4d46ec0..984fce8d142d402a72aa113421fee8f0558d1987 100644 GIT binary patch delta 42 tcmbQkI){}fz?+#xgn@y9gW=5VjXX0Lna<3fyo|91M5!=Yf~a^VTLAQp4Bh|$ delta 42 tcmbQkI){}fz?+#xgn@y9gQ2T#BhL&*rmnil%NT1wlnRq2h>B;j1pwTG3t|8O diff --git a/Source/XUnitExtensions/Lit/CpCommand.cs b/Source/XUnitExtensions/Lit/CpCommand.cs new file mode 100644 index 0000000000..c210dbb83e --- /dev/null +++ b/Source/XUnitExtensions/Lit/CpCommand.cs @@ -0,0 +1,109 @@ +using System; +using System.IO; +using System.Linq; +using System.Text.RegularExpressions; +using System.Threading.Tasks; +using Xunit; +using Xunit.Abstractions; +using Xunit.Sdk; + +namespace XUnitExtensions.Lit { + public class CpCommand : ILitCommand { + + private readonly string options; + private readonly string fileOrFolder; + private readonly string destination; + + private CpCommand(string options, string fileOrFolder, string destination) { + this.options = options; + this.fileOrFolder = fileOrFolder; + this.destination = destination; + } + + public static ILitCommand Parse(string[] args) { + if (args.Length != 2 && args.Length != 3) { + throw new ArgumentException($"Wrong number of arguments for cp, expected 2 or 3 but got {args.Length}: " + string.Join(", ", args)); + } + + string fileOrFolder; + string destination; + string options; + + if (args.Length == 2) { + options = ""; + fileOrFolder = args[0]; + destination = args[1]; + } else { + options = args[0]; + fileOrFolder = args[1]; + destination = args[2]; + } + return new CpCommand(options, fileOrFolder, destination); + } + static void CopyDirectory(string sourceDir, string destinationDir, bool recursive, bool force) + { + // Get information about the source directory + var dir = new DirectoryInfo(sourceDir); + + // Check if the source directory exists + if (!dir.Exists) + throw new DirectoryNotFoundException($"Source directory not found: {dir.FullName}"); + + // Cache directories before we start copying + DirectoryInfo[] dirs = dir.GetDirectories(); + + // Create the destination directory + Directory.CreateDirectory(destinationDir); + + // Get the files in the source directory and copy to the destination directory + foreach (FileInfo file in dir.GetFiles()) + { + string targetFilePath = Path.Combine(destinationDir, file.Name); + if (force && File.Exists(targetFilePath)) { + File.Delete(targetFilePath); + } + file.CopyTo(targetFilePath); + } + + // If recursive and copying subdirectories, recursively call this method + if (recursive) { + foreach (DirectoryInfo subDir in dirs) { + string newDestinationDir = Path.Combine(destinationDir, subDir.Name); + CopyDirectory(subDir.FullName, newDestinationDir, true, force); + } + } + } + public async Task Execute(TextReader inputReader, + TextWriter outputWriter, TextWriter errorWriter) { + if (File.Exists(fileOrFolder)) { + try { + if (File.Exists(destination) && options.Contains('f')) { + File.Delete(destination); + } + File.Copy(fileOrFolder, destination); + } catch (Exception e) { + await outputWriter.WriteLineAsync(e.ToString()); + return 1; + } + } else if (Directory.Exists(fileOrFolder)) { + try { + var actualDestination = Directory.Exists(destination) + ? Path.Combine(destination, Path.GetFileName(fileOrFolder)) + : destination; + CopyDirectory(fileOrFolder, actualDestination, options.Contains('r'), options.Contains('f')); + } catch (Exception e) { + await outputWriter.WriteLineAsync(e.ToString()); + return 1; + } + } else { + throw new ArgumentException("File or folder " + fileOrFolder + " not found"); + } + + return 0; + } + + public override string ToString() { + return $"%cp {(options != "" ? options + " " : "")}{fileOrFolder} {destination}"; + } + } +} diff --git a/Source/XUnitExtensions/Lit/MvCommand.cs b/Source/XUnitExtensions/Lit/MvCommand.cs index 8a8808b1c1..8ab0a59351 100644 --- a/Source/XUnitExtensions/Lit/MvCommand.cs +++ b/Source/XUnitExtensions/Lit/MvCommand.cs @@ -44,7 +44,7 @@ public async Task Execute(TextReader inputReader, return 1; } } else { - throw new ArgumentException("File " + fileOrFolder + " not found"); + throw new ArgumentException("File or folder " + fileOrFolder + " not found"); } return 0; From e92da7b8c2d8e31256153679c78fb80910ebd664 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mika=C3=ABl=20Mayer?= Date: Thu, 29 Aug 2024 11:13:40 -0500 Subject: [PATCH 06/14] Update Makefile --- Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/Makefile b/Makefile index b3f1aea3c9..273bd2dad6 100644 --- a/Makefile +++ b/Makefile @@ -103,5 +103,4 @@ update-standard-libraries: # - Apply dafny format on all dfy files # - Apply dotnet format on all cs files except the generated ones # - Rebuild the Go and C# runtime modules as needed. -# - Rebuild the standard libraries pr: exe dfy-to-cs-exe format-dfy format update-runtime-dafny update-cs-module update-go-module From fa034f5dcc16eff868b91b6b35283061ccf4a2b6 Mon Sep 17 00:00:00 2001 From: Mikael Mayer Date: Thu, 29 Aug 2024 12:40:05 -0500 Subject: [PATCH 07/14] Updated standard libraries --- .../binaries/DafnyStandardLibraries-cs.doo | Bin 1525 -> 1525 bytes .../binaries/DafnyStandardLibraries-go.doo | Bin 1547 -> 1547 bytes .../binaries/DafnyStandardLibraries-java.doo | Bin 1516 -> 1516 bytes .../binaries/DafnyStandardLibraries-js.doo | Bin 2035 -> 2035 bytes .../DafnyStandardLibraries-notarget.doo | Bin 1503 -> 1503 bytes .../binaries/DafnyStandardLibraries-py.doo | Bin 1512 -> 1512 bytes .../binaries/DafnyStandardLibraries.doo | Bin 56887 -> 56928 bytes 7 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index 6c1f8d7b511c25b175dbe1f48c7bb3e75689cfba..59348efa1d23c6c1dbbb7fd875fb2557335c7bc1 100644 GIT binary patch delta 47 wcmey${gsE_`L@MdNaVPIh3U^ts1yODP$BQucRypr(+Gl(&H3abT}KF?|c03lBe;s5{u delta 47 wcmeC?>E_`L@MdNaVPIh3VEB_PvypcuBQucRypr(+Gl(&H3abT}KF?|c051^^mH+?% diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-java.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-java.doo index 250c0c21ad942a10b48e56e8dc07f50a6823cfee..d82fb0db88c692a8ed71da2152cd647eae07b7fa 100644 GIT binary patch delta 47 wcmaFE{f3)2z?+#xgn@y9gTXdlb|ddhMrI(rc_rgXW)Nd?DXRsT-oR=D01}@I@c;k- delta 47 wcmaFE{f3)2z?+#xgn@y9gW-L$%tqdsjLblK^Ge2(%pk_(QdSEvy@AyR07<R diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-js.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-js.doo index 55fd0ffa5b8ef9bb42095e5746baab991ad3b927..a2e77d211c36f8f7730e3eb098dc0858ed1da53b 100644 GIT binary patch delta 47 wcmey&|CygRz?+#xgn@y9gP|-%b|ddhMrI(rc_rfoRuE%y4Z8)H-p+0V04jA28UO$Q delta 47 wcmey&|CygRz?+#xgn@y9gW+4U%tqdsjLblK^Ge1GtRTkZ8g>gXy`9|#08r%*5&!@I diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-notarget.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-notarget.doo index 3d4eaf2e261d0e81a17d551da26dece9a1c332bd..2d539daf5117cb62984b7ae3968b3ef1bf0b7840 100644 GIT binary patch delta 47 wcmcc5eV>~*z?+#xgn@y9gF!o9b|ddhMrI(rc_rf>W)Nd?2CD^_Ud(C(00!3!XaE2J delta 47 wcmcc5eV>~*z?+#xgn@y9gW++q%tqdsjLblK^Ge1&%pk_(3|0#;y_nSo06)nNQ~&?~ diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-py.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-py.doo index 86bfd547970336c977fe8ded720f0c1107034b77..ce201e74f6a25e1005962981008c549ea2d9640b 100644 GIT binary patch delta 47 wcmaFC{eqh}z?+#xgn@y9gW+L{>_*<1jLblK^Ge2}%pk_(LRJefy@u5W07MxMfdBvi delta 47 wcmaFC{eqh}z?+#xgn@y9gMlSQW+U%RMrI(rc_rgfW)Nd?A*%(LUc+hw004ap2><{9 diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries.doo index f0beaf7d64554671e84c9321b2220992df5998cc..2d174bc619bb98b1d699128e94ba50c53fb93c76 100644 GIT binary patch delta 1859 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 From 002620504a13f3a64d56b335eaa2c1c432ed55c9 Mon Sep 17 00:00:00 2001 From: Mikael Mayer Date: Thu, 29 Aug 2024 14:10:50 -0500 Subject: [PATCH 08/14] Fixed the C# library --- .../binaries/DafnyStandardLibraries-cs.doo | Bin 1525 -> 1525 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index 59348efa1d23c6c1dbbb7fd875fb2557335c7bc1..48dd25a23520c113103698d809a30b61c207529b 100644 GIT binary patch delta 43 vcmey${gs<1z?+#xgn@y9gTbnBBhM^GCac2DD;O^`1L?`Ntd<~Z2dgar_eBfh delta 43 vcmey${gs<1z?+#xgn@y9gTXX@BhM^GCe!%MD;O^`1L?`Ntd<~Z2dgar@o@`= From 50b1cd3c252c0ce27a6ab9dcd331e7af16b98f52 Mon Sep 17 00:00:00 2001 From: Mikael Mayer Date: Thu, 29 Aug 2024 16:00:07 -0500 Subject: [PATCH 09/14] Re-generated libraries-cs.doo --- .../binaries/DafnyStandardLibraries-cs.doo | Bin 1525 -> 1525 bytes .../DafnyStandardLibraries-notarget.doo | Bin 1503 -> 1503 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index 48dd25a23520c113103698d809a30b61c207529b..c6ff1282ac42d341228734370b659ab7ea0d1d31 100644 GIT binary patch delta 43 vcmey${gs<1z?+#xgn@y9gCVqjBhM^GrqKG$D;O^`1L?`Ntd<~Z2dgar0sst# delta 43 vcmey${gs<1z?+#xgn@y9gTbnBBhM^GCac2DD;O^`1L?`Ntd<~Z2dgar_eBfh diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-notarget.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-notarget.doo index 2d539daf5117cb62984b7ae3968b3ef1bf0b7840..715edcc8e7a115a9d29c3ac310c92fb9709d95f2 100644 GIT binary patch delta 43 vcmcc5eV>~rz?+#xgn@y9gW*;6MxI%WOs}dpuVCEE45TNgvs!|vMXa^}9^MXI delta 43 vcmcc5eV>~rz?+#xgn@y9gF!ofBhM^GChhpmD;W1O1L?`>td<~Z5vwf# Date: Fri, 30 Aug 2024 09:37:58 -0500 Subject: [PATCH 10/14] Renamed files to ensure same ordering --- .../binaries/DafnyStandardLibraries-cs.doo | Bin 1525 -> 1523 bytes ... => FileIO2InternalExterns-java-cs-js.dfy} | 0 ...rnalExterns-notarget-java-cs-js-go-py.dfy} | 0 ...s-py.dfy => FileIO4InternalExterns-py.dfy} | 0 ... => FileIO5-notarget-java-cs-js-go-py.dfy} | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename Source/DafnyStandardLibraries/src/Std/TargetSpecific/{FileIO1InternalExterns-java-cs-js.dfy => FileIO2InternalExterns-java-cs-js.dfy} (100%) rename Source/DafnyStandardLibraries/src/Std/TargetSpecific/{FileIO1InternalExterns-notarget-java-cs-js-go-py.dfy => FileIO3InternalExterns-notarget-java-cs-js-go-py.dfy} (100%) rename Source/DafnyStandardLibraries/src/Std/TargetSpecific/{FileIO1InternalExterns-py.dfy => FileIO4InternalExterns-py.dfy} (100%) rename Source/DafnyStandardLibraries/src/Std/TargetSpecific/{FileIO2-notarget-java-cs-js-go-py.dfy => FileIO5-notarget-java-cs-js-go-py.dfy} (100%) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index c6ff1282ac42d341228734370b659ab7ea0d1d31..a679c43d9cbf1d0f0d8d7eb91e579ea58f81d5ae 100644 GIT binary patch literal 1523 zcmZ{kc{tPw7{`Be8H6oY8m1hB3ax57rj}f7Y6e4?CX2?1)Z9#DcgBXuQ8`DM12sa- zY}Y6mI^2^&)TAbgB(`$2$l0>H|J3vB`~LAh@B2RA_n+_ce(+cbR388Ub-;(NN2Hh< zsWU(TFa`zy?ZqjTM2iSJ92vDCicY0aeVl2=8@1%K2KRdo*L$24&7_HRp=x&C)ozwY zUH8f6XYoPNRCv|njD!njuIpyqHKxAeb2N9&a}md14wCdt$ER1%SIx^fpVE1uqarY? z*nO>#!y%?53tyf4NP8~NtwM-LjNQvjkb=@sS&I7JF-l<5Bc-6Z$NE2ZFC zZlFWF{a8#wg7%KhE@LWo=A#O0xwdJO`RX(1AsjBBaP}day&Gy)`dK6Y;++Q@$ijW^ zS$+ox^#nMZeEe?s6*Q}o>kpIM1EFra!9i8Gp6Jc9Z)6Y~jhHFX9aLN`G>QwJJ~vU} zX{|nRB$J-9(FOaop|O_mUZEvA+Ganu;*ij}H3P}h*U><(^sHC!YxNY`u9)_t`gLq3 zY!9SiD4Q5JY*4MMOqfR&-W(v@(L8f${$6Sv`ZiZ_NoCo>dg4@Th?#nKFo-)~Mz<=@ zX>yb#O_FXw^YJ5hw!{MfRU+e}xh_YkQhz8qM^F;U>rS6IA-d>=z{a2oSaz`;B%T~oEr&+!kGQ-BF zN8(TnoP};7aO@)qy4=l8-R8v!s}^eFAWGOO9O^>W$riRj+CHZzut+HxKP^M`Z$X55 z5apmjZc8FG|E=Tp$bpdu4_B!+8CF^J2Y)CraYZaoVR)D$c1XKzmIJ=Oq0jLjSpQrV zN-|cN#Hly=O}C_5g9W)WpAwuf7ur;2gI;cH}K{rr3rBUbb2{|c=wPuwy)xC`7V>Y;Wudkv)!IF0|FM@dsWu4`1$bMAnA=urnH6BjY@gopvSq7LjU%@7p{VCtj zKYDW*_AF_AUiWJEIx@9DKQcE&y5CkHK@ncH|EgWjX)ktBveonop*cM^Y_wcit$oz1 zowwEQ{MO(3*2U2klUeV2;v2p^?h0SlcO0Qb>q!}npn{< z0#xkvjQ7nrBa&x0v7?Q!C$FHlfK%-Y+BKK4_ADk%#?RKR@-5C4SWOvFh%wB1O#i~9 zWA#(fj>J!=MzUYdJ)&rp+C6UI7>Hq0N#%z2_XrgDapT*XJL<_RS)Jql(p-!s2BTkc zF|ep<+qg5Ry!0zpVW{@iv+GI=#am7Ps!q{6W{P>*Td|_jezQE)*++iS$cN`-uz9rP zWA39HkSrMMYeXLA384dPzt>GO)?;bjawQf?hlp1lEWA vKW-P_`kxS=Tq@td_j~F0IQUlx0OFJUMSlMW2Rs(0wzL2*CS&O$Y^nPj+_0>t literal 1525 zcmZ{kXHe4#5XJul2)zh|A|O?Y^ii4=1u20DhA0qb|r-%lrg3=SZAaVgDNIaamnLC}i-48o&ciyKr`-8*SIm7?};09a>vaa#?ek_I! z0KR|#K;UqT@(K>T>KA%L`$h=rItpPCEUm}iwh!r^_Ul0jwlgHm8rAr1eh*K!A4wtx z?eCJuYGkDdHSJR2Y1<@Ipwc3zh%lLJ+0+|lyAeLV4f!UH~4Zw^e8qle~^y*UGS#&Zbu zqgJ^GI5<2p!8l$?5H*}ami9B2q(=>%?GSHeEV^~DGH$o!R3Qo| zZUXDxIDv+ud|%VXWX^N-b=B1G3|iQvA6c<82j&%N{R>7{4fvYO%qx&U)A4_x_c?txiQ>UBv$&;DT=$eqyEj0y8qd_X4U9hOB>Yne0Lpe*bX1i00!{Ukzk*`02Zmlf!WKjOv z>mh-NU6_jUyDI+fJPm?e0d+RBwnt8iKq(AO3A9pvu5TCcY47TQBJlWYz%j!yRqIw? zjP#^TC(i(KuP@FY)Rw_K7I)S-XW*N{63$AE5CVBV$>YSGaxM#l1A5!Lj^YC^YR0d5 zf&E2>bI*+OjZOVwC_{5raNzZUr(YJz?X6}w zC8R)ajxAo&TtC=A1#;V(;JPHvxl0LrZ=U|N23Ycp8AYTj5e-woHGq0ENz#CN!3hKoWD-;fR z()x$g+6vm0S?>769GCJ)ITrE_E|(h{o~X;=?ySH`WV)`^A=cZp zX`2nJoMTBRvL@J|FMQV1#9$fT70wM*$MnkJ<#_PC!ZL!q777+E0uj4I!}Q}M-h#qZ z17JCBWzk*xhNZZwo%F@-xYDm5NCV;zxNMqF4}aL4DxSdCm=P)Ep)~Vgw`tRD--rwL zSk38s&fB1ySCzEMYoJqCvwt3BV2bqj_$U1cqRe|xQCDlZgf}HsAYoAr&FgB1F@c+O) m{OkYJPx$@S`YR9q^^pz<{tq4CFi!A~1L&~Phckrphx!}!WVnz3 diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-java-cs-js.dfy b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO2InternalExterns-java-cs-js.dfy similarity index 100% rename from Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-java-cs-js.dfy rename to Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO2InternalExterns-java-cs-js.dfy diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-notarget-java-cs-js-go-py.dfy b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO3InternalExterns-notarget-java-cs-js-go-py.dfy similarity index 100% rename from Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-notarget-java-cs-js-go-py.dfy rename to Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO3InternalExterns-notarget-java-cs-js-go-py.dfy diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-py.dfy b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO4InternalExterns-py.dfy similarity index 100% rename from Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO1InternalExterns-py.dfy rename to Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO4InternalExterns-py.dfy diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO2-notarget-java-cs-js-go-py.dfy b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO5-notarget-java-cs-js-go-py.dfy similarity index 100% rename from Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO2-notarget-java-cs-js-go-py.dfy rename to Source/DafnyStandardLibraries/src/Std/TargetSpecific/FileIO5-notarget-java-cs-js-go-py.dfy From e19e205ff81b783d23b9643ba3c70b7e9da35213 Mon Sep 17 00:00:00 2001 From: Mikael Mayer Date: Fri, 30 Aug 2024 10:15:13 -0500 Subject: [PATCH 11/14] Forgot to revert to newest library version --- .../binaries/DafnyStandardLibraries-cs.doo | Bin 1523 -> 1525 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index a679c43d9cbf1d0f0d8d7eb91e579ea58f81d5ae..c6ff1282ac42d341228734370b659ab7ea0d1d31 100644 GIT binary patch literal 1525 zcmZ{kXHe4#5XJul2)zh|A|O?Y^ii4=1u20DhA0qb|r-%lrg3=SZAaVgDNIaamnLC}i-48o&ciyKr`-8*SIm7?};09a>vaa#?ek_I! z0KR|#K;UqT@(K>T>KA%L`$h=rItpPCEUm}iwh!r^_Ul0jwlgHm8rAr1eh*K!A4wtx z?eCJuYGkDdHSJR2Y1<@Ipwc3zh%lLJ+0+|lyAeLV4f!UH~4Zw^e8qle~^y*UGS#&Zbu zqgJ^GI5<2p!8l$?5H*}ami9B2q(=>%?GSHeEV^~DGH$o!R3Qo| zZUXDxIDv+ud|%VXWX^N-b=B1G3|iQvA6c<82j&%N{R>7{4fvYO%qx&U)A4_x_c?txiQ>UBv$&;DT=$eqyEj0y8qd_X4U9hOB>Yne0Lpe*bX1i00!{Ukzk*`02Zmlf!WKjOv z>mh-NU6_jUyDI+fJPm?e0d+RBwnt8iKq(AO3A9pvu5TCcY47TQBJlWYz%j!yRqIw? zjP#^TC(i(KuP@FY)Rw_K7I)S-XW*N{63$AE5CVBV$>YSGaxM#l1A5!Lj^YC^YR0d5 zf&E2>bI*+OjZOVwC_{5raNzZUr(YJz?X6}w zC8R)ajxAo&TtC=A1#;V(;JPHvxl0LrZ=U|N23Ycp8AYTj5e-woHGq0ENz#CN!3hKoWD-;fR z()x$g+6vm0S?>769GCJ)ITrE_E|(h{o~X;=?ySH`WV)`^A=cZp zX`2nJoMTBRvL@J|FMQV1#9$fT70wM*$MnkJ<#_PC!ZL!q777+E0uj4I!}Q}M-h#qZ z17JCBWzk*xhNZZwo%F@-xYDm5NCV;zxNMqF4}aL4DxSdCm=P)Ep)~Vgw`tRD--rwL zSk38s&fB1ySCzEMYoJqCvwt3BV2bqj_$U1cqRe|xQCDlZgf}HsAYoAr&FgB1F@c+O) m{OkYJPx$@S`YR9q^^pz<{tq4CFi!A~1L&~Phckrphx!}!WVnz3 literal 1523 zcmZ{kc{tPw7{`Be8H6oY8m1hB3ax57rj}f7Y6e4?CX2?1)Z9#DcgBXuQ8`DM12sa- zY}Y6mI^2^&)TAbgB(`$2$l0>H|J3vB`~LAh@B2RA_n+_ce(+cbR388Ub-;(NN2Hh< zsWU(TFa`zy?ZqjTM2iSJ92vDCicY0aeVl2=8@1%K2KRdo*L$24&7_HRp=x&C)ozwY zUH8f6XYoPNRCv|njD!njuIpyqHKxAeb2N9&a}md14wCdt$ER1%SIx^fpVE1uqarY? z*nO>#!y%?53tyf4NP8~NtwM-LjNQvjkb=@sS&I7JF-l<5Bc-6Z$NE2ZFC zZlFWF{a8#wg7%KhE@LWo=A#O0xwdJO`RX(1AsjBBaP}day&Gy)`dK6Y;++Q@$ijW^ zS$+ox^#nMZeEe?s6*Q}o>kpIM1EFra!9i8Gp6Jc9Z)6Y~jhHFX9aLN`G>QwJJ~vU} zX{|nRB$J-9(FOaop|O_mUZEvA+Ganu;*ij}H3P}h*U><(^sHC!YxNY`u9)_t`gLq3 zY!9SiD4Q5JY*4MMOqfR&-W(v@(L8f${$6Sv`ZiZ_NoCo>dg4@Th?#nKFo-)~Mz<=@ zX>yb#O_FXw^YJ5hw!{MfRU+e}xh_YkQhz8qM^F;U>rS6IA-d>=z{a2oSaz`;B%T~oEr&+!kGQ-BF zN8(TnoP};7aO@)qy4=l8-R8v!s}^eFAWGOO9O^>W$riRj+CHZzut+HxKP^M`Z$X55 z5apmjZc8FG|E=Tp$bpdu4_B!+8CF^J2Y)CraYZaoVR)D$c1XKzmIJ=Oq0jLjSpQrV zN-|cN#Hly=O}C_5g9W)WpAwuf7ur;2gI;cH}K{rr3rBUbb2{|c=wPuwy)xC`7V>Y;Wudkv)!IF0|FM@dsWu4`1$bMAnA=urnH6BjY@gopvSq7LjU%@7p{VCtj zKYDW*_AF_AUiWJEIx@9DKQcE&y5CkHK@ncH|EgWjX)ktBveonop*cM^Y_wcit$oz1 zowwEQ{MO(3*2U2klUeV2;v2p^?h0SlcO0Qb>q!}npn{< z0#xkvjQ7nrBa&x0v7?Q!C$FHlfK%-Y+BKK4_ADk%#?RKR@-5C4SWOvFh%wB1O#i~9 zWA#(fj>J!=MzUYdJ)&rp+C6UI7>Hq0N#%z2_XrgDapT*XJL<_RS)Jql(p-!s2BTkc zF|ep<+qg5Ry!0zpVW{@iv+GI=#am7Ps!q{6W{P>*Td|_jezQE)*++iS$cN`-uz9rP zWA39HkSrMMYeXLA384dPzt>GO)?;bjawQf?hlp1lEWA vKW-P_`kxS=Tq@td_j~F0IQUlx0OFJUMSlMW2Rs(0wzL2*CS&O$Y^nPj+_0>t From 0421812324d67c1c5e9b86f943eed811e4535715 Mon Sep 17 00:00:00 2001 From: Aaron Tomb Date: Fri, 30 Aug 2024 09:58:00 -0700 Subject: [PATCH 12/14] Re-build standard library .doo files --- .../binaries/DafnyStandardLibraries-cs.doo | Bin 1525 -> 1530 bytes .../binaries/DafnyStandardLibraries-go.doo | Bin 1547 -> 1557 bytes .../binaries/DafnyStandardLibraries-java.doo | Bin 1516 -> 1513 bytes .../binaries/DafnyStandardLibraries-js.doo | Bin 2035 -> 2057 bytes .../DafnyStandardLibraries-notarget.doo | Bin 1503 -> 1502 bytes .../binaries/DafnyStandardLibraries-py.doo | Bin 1512 -> 1511 bytes .../binaries/DafnyStandardLibraries.doo | Bin 56928 -> 57211 bytes 7 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index c6ff1282ac42d341228734370b659ab7ea0d1d31..0d942ad77fcff1a7ea0fd3e168ab54013e9bf1cd 100644 GIT binary patch literal 1530 zcmZ{kX*3iH6vxL{W)iYz852cz(I6BVOO0kQ$d-7NNvRo3W2s@RC9<2Rj6Euny|D~$ z9%YFvkt~fpqG%YNEi-z0?|rFr-n}3G=iYnnxgY-L{?JHn9&rEw00xBFKwWRhOM(5l z000&c01({kV!d$Ju3&BwvtX-A@E0@G?8nfvX2t|$+mrd^|jlCSwW zDrX1n5sU>j^rl2-DwwP8Aogv3N0a$ab4W5ljCn6H`PFSGr-4HaV{vzgoCVCjYEJy;H;liZD? zv{@n1(Sk-WGuBvOYR_}!CPDd*!_Y+C&nOhdIq6Mcpe2t&@!CGhBic)?%Q@#3@QxSe z#j;WA6tpGinJ&JT9)zy5ZQLbI`+ey4cu{t zH;(()s4I3$LjtbuPP;hM_!A2`&GF&7^`x%CF{MuYfGJ(laP!jz57L~1-_cTXhe_Gp z4X-*L3VNB=B(VSP6^vWX6$NU@9QHz3|hIhj{a5US!9KB5p_%x9i#1T&b7s>xE_4k_J~hlbhbMi z7HclJJ;VE2kJM>MoK?(09fhpLSRj~UG32&8x1W1MF23bCcG}~L=&dtpYh@(<5o>@w z`MTt*xmdhKOq4$o8x4Mgr_I>hm9WyrNafy3~Q5QsTbIXxQMC~Un;EbJ!Q zr@>er1a(4+LvwLN;NYYZ1{6K1@I@=Zg`%z9YSiaE}nwGT=y>~T+=Iz z0Z&^rY892wT~F)Fmg}?gm$jwKRBzS9iOR1_8_Md;TD4kL z#QJi$s-b3ndU`ah>C8~2^18YtHaB%uB|qr|Zrv}#>rEE<0eKMu))V zt!}H_BL{6=GcN`uttw5M-hq|}4b7?`D{jkOI?7)@aX$P!G*Pi!jlR*dP0hDv_(rvw zQGL~fxYeY;nO5mIaRts8bm^v$cwb{ai^B`QxQ`~BDx)!lam8%LQq4d*wm|QlX-{)# zxuDE(!VoR%8*b9+omoA6Y-aiC$JU#zpRovIGd;K7$_rmN2sDjX?mp-|P`g!HGasq= zSdVF=nG_ILk^(%(aa*jmt5|!I@NwK%*hTi)MM-7(#5$^jy@q4_W1D`XlUBHI1-8ET zp5`O(ln+azBKXmK$KDTtca5~rbBti}u5>HYV)M#)!MZ8m9O>bnG^IF;kh!-*LvL z!clQPMU$Ni&9e_IR@g>6xzVP^@2u?mK05Wu%6!pxA8?Ua>5sQgCgd2&$G6yq?Q)}$ zTtIQ||EKQWcmESbkw4@o2LHPHD;54-1OSR6v-U9lA0yC6UcMg#;9mOgDS`J#^*2X9 BviSf2 delta 1468 zcmZ9MS5T7)0EB-+??|swg&@^YniLf&fe3~$7~ue=9Yq5q41{KWsfwbs&_XCVnjA&x zV5kbGhz6+=q$hMiH(8a@rMkx+Ot@|MPw5ps)ThlQqiax&EQ< zjOdYzU6Sp)%Whq)?0X&gHOL~0o8YE5POzz@(ATUvh4XS_LoN0DWGDN7yU&y|Vb!q% zK))~mfZRVO3B`u^W4+M*D0IlEz6fjf1|}9>COR+2haS!|l=c&-^*OrV!Dw-FSiEWK zpft+XXK+XK(M*Gx0wlm6Z-d{V*9yW{GV%uNxmlKe$eG zZjP`Ojg!0n+Su4rn|CP9RZ@cFqaNo|l+FWk8s8FDy$e;gG#;k%+Xai6X&m})IaIQw z>-M^3I4<3kC-4s@GOX2Po(?PBdNU#zc>q^edtW2aTc8Ch7E$MO>iZOBKuU2~YM_RR4hQ1>AsyMwlkpc#@`t`Dui&hpUJ`uW2W2cyalQjuJ17^H0qDX(Uf~R(9a?L1f+#CU#rj+Pb?V zqKmb2jo?{=UvW(_>`UK_$J-iFpoyulI}^({52`=I8VEKalhN3{0tuXp#7F5e=03{a zk$;uJnBOhVF!%&JW`B4s4HhMW0AI)N#6kd^?bMRyS@b z&r86F#4y2r(bCEqOel@DGe(ees|yT*eA~^1fVWn?E|t;9sIkn+Wj_ZKyiUMO%al?* zqA)86`By>z?qhFsEhMNPL#R?d=1m_Q(TsN+r!>e!?XN$#ZtL2a^DhRoi`wzJI`7UQ zO!W(c5{Lq|&07_$XEfBPW!t6c#m^P=zOcSEd6N!|$K5-Wiaz}~QMgLtWTkZ_Fvc)nXjOwW-~Ij&|ubGbLZ{Oc5HNb)haP3!s5 zsqL9k8oth)K&cF)TLin!n(g^UUbV++&pveCgG5JQa@G_wNz(lFF&nq%CQxl>3aA#I zh3Rh-CNtF16Yu-iQqJ(*Z`=JW* zgH2?2(EU8<@_z8&U>R#OI+B$xng;969?lt1OqoBVd@`Li!@6aWAK2mp&t9$9Q47zl8Y6DEI6fu8z{o)QEGEm6BfC2B)T zwf*~0UUzK=xz3P-nIS_d`$!4*|4@_)KmC3hcH8G+6Cm>W9{sufwSDf4mSpgr0&=BD zD4l(MS&4_8-H+{V*u0gw8l>+VNU0nhoTy~Ai3myY3I?17J=A6Qp21T^VMxvwt^&S( zT|I&@@pylOgAF<}Lh;;nkn92D)b`t;*&f<8=?o|BkYwq{fR-)^VM$a; zN^s`+zmG3gM9F$_T68mD$fkJrJooU(I4e$*+ zf;~8{osRK1hTKmk2R(LS#L`?rz&%L>?$tnCr0LT#%^8=Mn68n-s}FkU?(WqTBrku| zB(35{_B+d>f^*Cy9F!K|jA=omga{>Vh(_c+TozKV#wE#TD{nscr*Nwu3kZV17$_5# zDVjwj8FvhKA=y%v?!kL_WI_VX$`HJjviITVg$dLs31Hvn9Ag?0iEv928hciw-9afG zh55O+HV6GX;8yq~JinH9qyB5<&lC0Z9_bFb;& z=tdWXkP)fZ+AM54``$^G(&#CQ#(QZ`ynZ(1$1I^aE8~&PV9dP{enfC z7lb?tsQr!4`YTK9Jk4s~dmuLs4K>TAw!hs4sT0-DvL%C7ZqQ7pnffAb8hv5#6lGtDh>lG79P!0ok4x>87D~s8~8_kX$IO9!Vqvvg%nWg-&&WAI?kIi zj#sNeU_DXAvN!>0ysVuPVyQwbb%@s333Ag9eNsU@1zjq1z0P19RDgdnc%!yP@b)-C z-3r=~rj}_7xV=*b%jzI$9$d2&e>3ZIfa8JDt;w`ed|NcT*L8q$e|0|EkM)JLzM#7| z@{xGX{-|XXvL;Sx=tOC!6vD`>YUszb+?_*ozrMnT7&*y{b>h- z|DaR-rq91nO928D0~7!N00;n!P99loAQ%X60RRB;0ssIF000XB0000000000q=A#K z1r{a)6aWAK2mp&t9$83~m-WvB000aS000L70000000000005+co0IDW8U~LA00000 D4UDWD literal 1547 zcmZ{kc{J1u6vuyNj4jJp#t9%S=0P$D!Dcq>`8f7vpm57N{BVQ1Ao_l2lI@#> zi~#l~WvE7$w}mNqJda|b(P_<}N_NZ;FpDPN6J{^q;0kMVO5baDsN_${S?5;MK*6Qf z>iOGSm!Ts1iMs5zdbaCOz-`XBx$WHSr6OztAW@j`H_sKsI80nT$Ix`bUOL=uShN-Kt^Qd5O z5k$$;UOS9H`&Tv&4{r*1xj%PakuH-5RcT#6a4u0L{%zc?J!-z(M5>*aw&>QB(dqRU zFy{LM3;+VC?`JD(5TId#&Vo+tSp zB$f86iA`gNH>Z2kc{buU<0n%UyH(R|I@0y5hT{<|0kpk{qbAXQk4+Ai#i*LJ@H$IH zb3G&tU^X`&mK7bdK^trGkALxwkh^Q)Q*+cO4UMoR426ovAX7?8vY)!DuN^*}sp(N3 z4ujQY8W*yipAPIuLb+p!3h)AqMG_2tYepxTntUO0Rj%- z$f?R(k-5-QcGsPJ#Tt{@VCbfp%(qPU$AX_aq_tt^g~(;_swP)Fszbh1Pvbz$v5^Q@{26-3a?YDLvNaX)zD(Nsdv^?rG5nq z40pWuf`?Nk!Z2^LkOBqexQJ+fsTQrtL}StfCt?8FGy3Rnt%|Ou?-DdC_aT zJ{uHpQ)??+P_Jt;y~smfA}Hc!E7!CXDcMn`nS3;LX@gw3?j11D-v;wh#xL{-$h}o( zxb)sK@z8H$2+Of;{j5!DWpm7tpKGRlX4U^HJQ>B{9kxulPnMe}NI%Zlo8Z>=EhdD2 zsw{c&o%QEEqT=nNUoAPhZ|I&PEP3Z?$YPkD>A@{kQPfU$G%I(BSe{-o-dR0vZ1CZD zM7vl3rdm9g8ZxM5$cOm$2b~N!V7NdM!2e@-_uKzdKSB9d>#vmf*O#};^?#V*fPwJ* OIDmGWush=+Kh)pJm$kY8 diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-java.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-java.doo index d82fb0db88c692a8ed71da2152cd647eae07b7fa..498ff882038344f701e3856ccbb2f267b3392818 100644 GIT binary patch delta 1456 zcmV;h1yB0y3+W3JP)h>@6aWAK2mpgl9$9Q47zl8Y6DEI6fu8z{o)QEGEm6BfC2B)T zwf*~0UUzK=xz3P-nIS_d`$!4*|4@_)KmC3hcH8G+6Cm>W9{sufwSDf4mSpgr0&=BD zD4l(MS&4_8-H+{V*u0gw8l>+VNU0nhoTy~Ai3myY3I?17J=A6Qp21T^VMxvwt^&S( zT|I&@@pylOgAF<}Lh;;nk?xH>fHxG{BA7N9Weja&dz`%F)>%#BU^`Kv z^nb^8lErD$x?=(=RY~o;`|dvf_^vNrfV{_>oU<7xspokd^Mpi5ZWDx*#f5rY$T&Er z37(vtWD^t0BZ=StkSLBhOSPMy6L}wkkep_- zf%4EFjd}qTp(go;4noZOw}w^4r?J7qn~JOpsWp!$d_rpo*b)6gy)LP%qB6Ea^ph3Xq-U z%6p*eon$GE-m}H%a?+vA&;v9pL%4s0=aX&3RmNSjAxQOWGyAOc zY;|oPL(3F@2%DF=`mK+i98D(jVyR24oUJ0~+o4Y+rX6Ie z2P)udz4kurf0wRp+`=3?o>Uc($qq;kaML1BYM_-gs4UIv=2S4T|o(GB_qQQS0G1 zFay9usG5sNwGG05NW?^0S#teIZSLp8AGnx!MESiL)tNkr1b@(0zomZ>XlHtp)bqH| z^Ck_|@0K)H8+c>Ih8w&NEs&i}VB4`gbbXyJrqP$yb*s_@K~S%SEhMeuG9(Mi($!9F zvD7N(7}JPI)b}in>mFlSA3GHv&1?6p_Q35HA&0YDOdJ8+8sP}A*G=z;v3_wo%$;|% z!@qO;I&8OJu2y%`_`zPmLlbzg>NbRbwEH&tz`wBldRxOi)~o3Rduh=9v0}jdgV?`v zCvN?(!C__f{6_Kq=<^#;O928D0~7!N00;nsP99loAQ%X60RRB;0ssIF0000000000 z0001_fs>F07A6A}000080E12*S(m?sETaPe0L2dg00#g700000000000HlGNlgtGg K24e*P000037nl|R literal 1516 zcmZ{kc{J1u6vuxCW62n@lNS5FWI2S8va7+P6r=3hjG3{O#~=pdm5e4*W0{fOv&FIR zj7ZkVk|oBj$RH*$#nUwU^c95f&c(;0!HqVF7eo244MT1 zwm<*?Iocv_A^m;4LqgR;gAqXp2UDbkCQlPnh&tolf#7Z45izP(;4!C!2^G95(Q>~#Gj>4z^kI3<=tmHl zr1IHF)7-DHVSId-+s%dQxGwhm6sSZwS=B2^7WXb8^_aW|8@lGQn+pHloUZFmyU@Ut z>Yr|4WH>HCKVF&_F?^3K;f7nDIB095iNDA8?C>=N)Z)S!4lnra#CB6by0O*7Q0LM`_C`_;~<`$y!Dk6AT zgYRI*9lfbYum;m$et!T6jUE8u8FdkknJSS(`xw}hcUl)ReZrp9A_X-30|IE%+wT_) z+#^xIXK>6S$t@&3)jXfrdFgIBH(HV48>sgXy-6T0O7>FjhV;px`UH-X0bhg;DEYWl z!a}5jB_?Z@t6M%K_#C4PMK<=~V~az>)Kmo0MF?K+(XKczE0+fF#(p9fm$tIm=5h}$ z$yck+OJ&RA6^*`f!c&|dk1{HW2{_ipi7RnE_mIJv~{uXIApjzrx;usS$kbtvQ8BI_31DcDU<52N+MuT=;_?6^g z{rqzYMOVn!>Tvn7gNhv}1s?rERNe}7>}% zuKQbk-xm|{oKWVoYej-K*_5#Gbk|U`4ISxS(@bu+T&>4|P##ZC@fasu``CzNk*aq< z79H3Kx88WRF54fkl`$U}a$Z93r0DdjZQ%CpBp+t|7a0BI_z~Ti%l| d6$AhJNJrrQ2MRD7cJPk_=%`Ug(}(?s`WqDmvjqSE diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-js.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-js.doo index a2e77d211c36f8f7730e3eb098dc0858ed1da53b..390cb3d9e42cacdb23af0bb88b22596a06cda35f 100644 GIT binary patch literal 2057 zcmZ{lc{CIX8^&kGI%CEsoi#?FW_mKj_jW0X*~Xpy0iFr|=e z^UWnowg}lSMKqe5jIAzN>eKgq|J-}d_r8BT=REIu{(8=Ne>ginemDRC5C)_>AUwj6 za>9{70AL*i0Kg7hl3zqW4(mc$yV4!+g1YQ!B|BLqlKg^NPHmQ` z3l_GG`@1+o97(8UD3^Xm$>QiP2E6qHR{;5SKUqF@=A)k!a^o9fzh%EMiFfU0;93bN z`T<6rk(A_-k@aIx~k49V7l z*vZ}|sXFWNbUMsf-+X(C{<}8{r1dD2F=O+<+G^1=+QH5nP0Y+&J&V3N@O&% z;HBx~D}VVl@fYD%TUk(%E5SjYjJe(<5bkf)1hpp`bP50f90dSC=%AX&XmUujAF11e zM4mY*{+;L3@znwuP}`Pt7(Qb$gYx`@R?I)PkAojl83X%yxT@Pym$<*@R1h%z1?n#^ z>iSMe=EMz~oZjG77?J@O&ot?xw&1lwbf8s~FdzS_IsZgp-bShBbGgz5aYmAHmRy+x z)bZqkA#er=2nQJG*ykgVrwiluZj!Z|GnxNa$5{T0yl4|LY!@#x{PeRjuT#{ z>7DV1-xt`%`YEUst3rF!0T;GOM%Z)lM(Ti%E zu04uc%MM3R>eEl!h_xShVQUE!)?P~Cnb!e}_%?3&V1Rv@z^LvK;8?Y|4slyrmt5uF z>#E^3w`6}(M5;A^&Sk0PJ#oh%ddLM`wyw}~qs5RRdUoD=@0ld$RZG{?Bc7F?O`i>p zxRhf0AtGJsW(sysmi5RQsUNxrL(kSWZFG3) zGtlED(Q-1Wv$s6N> zqmyi7D93)&&m)wb=)?I{fydajin&kLd@v7<*Ub1=cAZdOZYf;wSf1hu2TQnjnJR4B zGU$alHsAI0vT{Ig+5?nhVPnd#jUnrGDt=-)LYHGeV(kO{nN=+1NJv!gWG8bF3WP}U zV&vEAmDVpHo$YELEStnMFvQ4Qe}A#9$5(Ath4SWMgOL8?`g$(tVMo1B zBqnq`IU-cMLo@l_Y>mpI+dE=bGHrlcjVDulO_+g}gmYFOJPjseTSY&`<>i%FaC83X8xC)!bu7VM z{L}YTJdLA;qsXI;2%!_5_iAJ{^Nus0SX@4rSQO4V&Q0$(9!KaHM~usz*p;4kTP%rX72#jlP=%F;1sWAT$q_CG3XhmDV__46EJ zaGn-gdt0%`nTC{rfhpDull*xRDdj+f1&-gT79E}1wz^SmR+tiwxoDWlP;ZmBrW3#y zLQeq$>yAH*?|FW!`@29!E{s*~5>bNFf>9$I{KJY;X04il%#*jfZIpIBNnzHo z^!!K22++~K`)O4Iuh+Wx-6ZM3P!{4I&j)BD_rhkvV@JVRNVsD3nwC$T>BP$EI0Mk9 zY%|}Rm47%u4GVV#FWqRjj#StXEJHtq%esFE5V#w+PdNJ}VfS@#n|pA>+~x_Zxh6>y zi30D@EYnMTI6EK+&iDTzeDLi5GZnO-@;4;^Gx|?R{5J>yRM74oQ2l?%z}X21{ycyV MHu6B}KXC&1H`WEIg8%>k literal 2035 zcmZ{ldo&XaAIE1#v$D!c`}_UzJLmU1-@m@!^ZQ_(ML{wE000aKCnC-z z#J&j*5&-}ffdGKy&X#mO;L4?oA)$Jq*Gc{)*P{W7hI^WYvaMqm+elE(GR(SOYmei@ zaH`XXq^zsLRr+A9(k@Q#o)ZOhd+pa~i92MMEQoCk`2ke;^$JX7X-aK_x!pjXPtPGP z+ye%ep|xn6>tXx$8Yk-uU$KN|2e01U8awJVH92t#^+;P)y){Q z9;QtnIeUe6I?&{?pQ9|Ia-fH|ArJM87exnBy~QTK=venFH$r&ba5e8QByL7mZd|Xv z%J!4OkF!8}!NDbKLq|Wx^WouD2>x6v?uUH2GO$`VJV6agdY?{L#3xSkwpv=o6-HybOZYjHHwWyva_r@4PwrNB za&um_Yhjb8waj9XyV<&PFCs)1 zL^3CwAFyoNH0p*ox%_tD+(@C^;)!TQmnAzI;jn@jQC0{ik#a%zc9Hp(Hm@vMlaFRk zXa?oz2~@Y@DFLUnq2>?GmJl%GQqIWjeZeuwhJ6X9O78=c^?c_?*VkTBFYUf&qkOtA zV=e4f`FqAF;5T%qSq2_c*${NiQt=MRl4xxu)o~A|VZxMqLQWqmD7Li!wTPZ~pWENA z`!3AP(e(D8HPv-qIJtemO^+=$E(+MA+|^ACh%d@JA|7j1jyyJ~P)KSsC_04cz~_@A z;NKeuO+5W{e3RT8Za+IGLbwyu6{|X~1v2G>d(ELvLhD6)lKa@);NpoMRH6hhcRVz8 zJ1P6wrL0dgA#K)DEAi2ZqM3xUhtA=%n+ajzwHfxwX&!G{+@Ai4(2W1e)y(G!3gshc zs1Z=mjSW3*O{L19f$yxHe4AjmkB+m1RGVcM~!myv$f2KhKWv9nl6huwm1DDP5se&DOs)ujWfQp z4YmX$K{-)84UagVvLSQ#x@Y{4Lo%mhj=UvEnV&YSMcE#|V|f6i{TfsE)U|WFTLtss zLVy?9O+2HgTx!PO`#2bZID65xB`>QyU?|2bjD-TPQY^T420I&EHXyC{VQwvNzv{q@ zu+;j(NmZYr@eVQHMV!EmZNVD1ksqrVzJ`G#8YxW}7uDuP_+>EjWfHk9Rc^kdWKWc9 z?FAW4xa+A`w6gRw2aQktd|elRcC~&uEpK=MpMq|;D?Nah&Y!oui7tRhIi+E+Y4n_} zgxRuG0a_cX5zbLaL4w#S$W(*O2kN%1ai_@?RfA1NkA2q+7NsIR(911>Ia%N{0o$3c zfUgG_%O338h`BV+SrXBtoMH>k1-2vWLP z(p0MaaeAx%UfAk7Mgs2U6~BrS{gsK-sZTFEz@|rbH%&CpvDFk^IFIu^X`bW$oy6E1 zyVTEvGn?xL=B0c0q08jo$B_K_zv0X-l$om(!9ka-VCy|!k z8s3+48+5(oLbwmDs54A3s`a)vq#Xy2iXA@mywzQ1r$TrK1+8GG$zw zRl)$3VI?PckOHMY9-_)#*Bkv>O{GzsgzJs-|#nvZvpH=ZjDjS^cKw+-p()smn9b%WQ` zh`oQ0oB*ss_x(b|NG`KllJB)qn`_ zDc?Hs^+z$}O&{+K{TSTO_Ku9Q}f)ooVBSLf`WHIjIgEPC{mviULd@twDJu9$f7{b|}n@1c30`Y^cV&uKT z6{PqHc?dU3;lPs5;MgAdJ;oYhqK*qZVX)yv`@sD@RNiVHPocEY-I4aHBXODfvgHn-z`Az zNfNDM>BKm3#*F&Q8P@s*-=ud)ykcF!s7XWmo?iz~vGaCkw;(J%FaS$h8A}BJKl(_) zGjT=SAP_+q1mXh@FG3*VgNS~(HV+(rR$KJj^2Nvm`%1CZBLX=1L!n0z$$7I#=6;P97v1@+2c)E)r2}N7=LP?lro}F#l#9Fji)PMX*0%GMZy$O^m@U5tZMvG zvZjNj^+}N7gQ(09OVogdZSY4gomf8G0zj`LJ}gSKlRF~A^v1@5OvGGEq32W~44B;K zhSQc8Z!|@Fi-X_L1D3YUBDI=QE*8UqiPhNB{@;dL{hW4_^*c7R4)(om5Ch@`Z#ya` zRw}~J*1LRi)l`|llqF=Ts4+UFuwCV*j4Vw7Zws~FgJ(yOllBd^Yn zpMpFlf3v5BaFL2+OV^B>Ve#g@{)}}vG6x(Ays4x5XZTcmZN)n+kCc@?o6!S;yulMX zgHlvt{>IqwgBk~Q!?Wys!b5Wr5B#&Y%65Mk2R3*v|}Nv8{4yMD-y?_UwJ$nO+b@orDVZ?@=qstG>G+Hy~66lq9-eZ`NoHl&O&} zn%+%K7bH=37M@5x{Bo!3Xp=*~sfKmmKG(`MUM)T}C9$3BtVe+y*%^A9a}0 zrjsuHk!X4{R<$zOWhKn#)Fv8FL;E)HrtF$aOuXi)WH!gz-K-M$a}Igoiqe>)>0h=G zrg-#Y`mRY@q%#+7m2zD_RdN)%=}ynqYjeQ%ZJiEisu#{*@4riHiS>rlorpN>c3$=(!!n4Wf9qIYOJ`U6M5fJNPrJlm>mbI$mo+3h zRrV!bL5j`4bI~!JP%J_}5U>JL{Rx=h^1Z>jO9^K4u7kBV&u^=Dn_6bx>-hrR8Jp_G zicBAMeGOlWJ81xDvz6dRz1h@icukOj?dG+m&1)7GiTii;+@T4rS7wjy>{PR4Y=Q|-XDI$5?nU5a^0Dv&Ccv-i1WCZ5~=Mtc8LUZ{mGYM)0sqDgbubq72_gjikybHuklU}Tim z=asjrxOL!{)XbpObl%7k2aWt4_C@Gl`YC$bFKV_=y+3!CGhyvCKR0zuwM=uL%71%g zaZ=28_(EB8PgwF?{Iu58(uZD2Vac8t&^Y@YV;@X!T!xXkkrcxdsWa2-P)+Y7$Krgk z#e5P;MRfI$n~RX9)Qg&=(NmawH=JQbh@F%|XLH9b zvdXC0FzW5sSqXGKC2nQG;3r;Ep3b_(LA#Jg&xePOS-n#75(jOcIsF!}?Q6d;IVV3{G3yBz)}Zo8s}z zxwt+ns&pfB0ZHZDPig+Q+`XU)DYhIKBUV$CA7oxj5U{DPdP3(8xA6Vmz3$WHkJ)?x zfD;D*Q0T`bxXAF}$bhg~PnYmfV`$5^XZM6kTNyT72;t_MNNmG z<+$q$g|niNaoUBkg+qn{%7;w!SKj9CrNyoBGU1k4?&eOJZff^@$)}Q6VY8=;b)uQX z8_jbyn{9{iW?r8R;;NDQ-c$)&cSizVkN}>2x%=eQ6AKq0BUN+Ww&|%sQ_pJ7{pzy^ z3R659^tsYd+w_Y{GAA^2%Z`dL9<q(d-v&=OE;pGAwpokTMh@q?7w@71T#&)+pRw93oQWX(sPo~m}j`w8V!gaF|6!4Yh zaAzg+$Vo{5aPSx+p}}*wqhk5y8JrP)%IVC+`UiA-quIvGGx6m$E&&h~_IN4VCu%{l zG)B5r`Hu{YNN+Z5qcG`T=W2)PSg>jqn~To9P6_8a zcggXzSFD3~c>20f+LKzrQc0Qz1<%yBI_zAr3+cDgg`PKAToRv79s#-8S563Rve-4E z{Wqfh4;u;U%9&msciX|llv5H{6IpL3-DtNy5c+MspcAtXVbTerb@@%q)` zd-MpLYH!fAWNOt2nil5KI1HSlrA5VIUnz7|<>wAp*~naZtu4;x%)(AtOkudj)KUd} zumsi^A>u?CI*HVcUAvSJ2C3LjhLK54Jzs7=+!YWv-SruyaxNScFpwTvT!WJNzTG2B zSGLv9@JAz9(5O_JrV8f5gA~0shY3`xtfEor<6}MICZ_sbUE{IX9He`Jju0B!L#o#5 zbv1}3pQPz-#AoF6B7(5$#cf!d3lqwTNx{f#+3L6dC{$BV9tXH%)rgZA} ztpwEsgX_-w_^0=77a$x{@?A5~h@~ diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-py.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-py.doo index ce201e74f6a25e1005962981008c549ea2d9640b..dbadd82172153f6c9f44d11d680387fe72ec78bd 100644 GIT binary patch literal 1511 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 literal 56928 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

wxb| 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�w4(H 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 NZ~y=R+T8#E003GXjx+!O From 8ca95a7745b6bbdbae13ea6baaa15d9f9430924a Mon Sep 17 00:00:00 2001 From: Aaron Tomb Date: Fri, 30 Aug 2024 11:40:21 -0700 Subject: [PATCH 13/14] Another re-build --- .../binaries/DafnyStandardLibraries-cs.doo | Bin 1530 -> 1530 bytes .../binaries/DafnyStandardLibraries-go.doo | Bin 1557 -> 1557 bytes .../binaries/DafnyStandardLibraries-java.doo | Bin 1513 -> 1513 bytes .../binaries/DafnyStandardLibraries-js.doo | Bin 2057 -> 2057 bytes .../DafnyStandardLibraries-notarget.doo | Bin 1502 -> 1502 bytes .../binaries/DafnyStandardLibraries-py.doo | Bin 1511 -> 1511 bytes .../binaries/DafnyStandardLibraries.doo | Bin 57211 -> 57211 bytes 7 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index 0d942ad77fcff1a7ea0fd3e168ab54013e9bf1cd..6626d883a6b43b9e2f5bacb6955578fcac1f8cec 100644 GIT binary patch delta 435 zcmV;k0Zjh-3;GKZP)h>@6aWAK2mqi_9$ABa%W{ztD1Q&V^cOuP2n<@Hc8N;VhLmdi z_o2M*+75D^AqO)4JC{WR>h&%-7_w zu5h~Ca@b_xW>-jbwL*7hQ zDUW?x4ei5j2{fVJb$J;U49&{6I=_+o1W-!@1QY-O00;n}Q65=xXYtUq0{{TU4*&oM d0JFCN$pZ+WQ65=?e#>%`hy^nOpiz^(1wF43##;aY delta 435 zcmV;k0Zjh-3;GKZP)h>@6aWAK2mpOf9$9Q47zmLPD1U*T`iq_t1O_cpyF?{wLrS&% z`%qqYZ3nr|kb{{aLn-@63HSd{lnOunej0Y$=V22d^7$V9x&5_$?u?dX@SXy4rAR29 zeSKMphn?Mz?QYn-mAM+E?;A*|937mfWVMM1N%0B>oCQ79W%r)JQ$=A&&KIr%zJ6Uj zf-v!TgMWh!Ix|A?+;x%7tS7t;AjcvejWp>@Oqy4Y%XM`{1R<#N37Vq1!Y*T-O6YP` zTIUm-Oe>mDMF*-ha<+a}1+BmVB)CKe0lBx*6a96wkXgnUafx@)ZA`udbbbQ)kM*oh zCkW+ek#C7HLQB=f#=ckR$_$=r&oKNEV4XqCkbfPP6b=a;7f!?o;>=E+ED`xtZB@}T zS2$g6Iczd;vnwRb860tF{^3|xx(bb>{lJQUG`N1squeFQa?(J)7CHCkT3&wTA#WzD zl*c};hW25%1e#Fqy1WbvhGu13o!`iP0#Hi>1QY-O00;nmP99luXYtUq0{{TU4*&oM d0JFCN$pZ*|P99loAQ%Xfhy^nOeNL0T1wHRyyv6_k diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-go.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-go.doo index 7bd8dc244d3a1c76c0642fef4208b85b5a39c3c4..d84828f821ac056193e4d9f7380c6ecccdea884f 100644 GIT binary patch delta 435 zcmV;k0Zjgt43!KLP)h>@6aWAK2mq{69$ABa%W{ztD1Q&V^cOuP2n<@Hc8N;VhLmdi z_o2M*+75D^AqO)4JC{WR>h&%-7_w zu5h~Ca@b_xW>-jbwL*7hQ zDUW?x4ei5j2{fVJb$J;U49&{6I=_+o1W-!@1QY-O00;oAQ65=Hl$Z6-0{{RF5C8xN d0JFCN%`qXjbptWlHL1wCA2#YF%B delta 435 zcmV;k0Zjgt43!KLP)h>@6aWAK2mp&t9$9Q47zmLPD1U*T`iq_t1O_cpyF?{wLrS&% z`%qqYZ3nr|kb{{aLn-@63HSd{lnOunej0Y$=V22d^7$V9x&5_$?u?dX@SXy4rAR29 zeSKMphn?Mz?QYn-mAM+E?;A*|937mfWVMM1N%0B>oCQ79W%r)JQ$=A&&KIr%zJ6Uj zf-v!TgMWh!Ix|A?+;x%7tS7t;AjcvejWp>@Oqy4Y%XM`{1R<#N37Vq1!Y*T-O6YP` zTIUm-Oe>mDMF*-ha<+a}1+BmVB)CKe0lBx*6a96wkXgnUafx@)ZA`udbbbQ)kM*oh zCkW+ek#C7HLQB=f#=ckR$_$=r&oKNEV4XqCkbfPP6b=a;7f!?o;>=E+ED`xtZB@}T zS2$g6Iczd;vnwRb860tF{^3|xx(bb>{lJQUG`N1squeFQa?(J)7CHCkT3&wTA#WzD zl*c};hW25%1e#Fqy1WbvhGu13o!`iP0#Hi>1QY-O00;n!P99lEl$Z6-0{{RF5C8xN d0JFCN@6aWAK2mqu}9$ABa%W{ztD1Q&V^cOuP2n<@Hc8N;VhLmdi z_o2M*+75D^AqO)4JC{WR>h&%-7_w zu5h~Ca@b_xW>-jbwL*7hQ zDUW?x4ei5j2{fVJb$J;U49&{6I=_+o1W-!@1QY-O00;o2Q65>BzlAKL0{{TU4*&oM d0JFCNxC02JQ65=?e#>%`cLg&7q*0Ts1wCYL#c}`u delta 435 zcmV;k0Zjhs3+W3IP)h>@6aWAK2mpgl9$9Q47zmLPD1U*T`iq_t1O_cpyF?{wLrS&% z`%qqYZ3nr|kb{{aLn-@63HSd{lnOunej0Y$=V22d^7$V9x&5_$?u?dX@SXy4rAR29 zeSKMphn?Mz?QYn-mAM+E?;A*|937mfWVMM1N%0B>oCQ79W%r)JQ$=A&&KIr%zJ6Uj zf-v!TgMWh!Ix|A?+;x%7tS7t;AjcvejWp>@Oqy4Y%XM`{1R<#N37Vq1!Y*T-O6YP` zTIUm-Oe>mDMF*-ha<+a}1+BmVB)CKe0lBx*6a96wkXgnUafx@)ZA`udbbbQ)kM*oh zCkW+ek#C7HLQB=f#=ckR$_$=r&oKNEV4XqCkbfPP6b=a;7f!?o;>=E+ED`xtZB@}T zS2$g6Iczd;vnwRb860tF{^3|xx(bb>{lJQUG`N1squeFQa?(J)7CHCkT3&wTA#WzD zl*c};hW25%1e#Fqy1WbvhGu13o!`iP0#Hi>1QY-O00;nsP99m8zlAKL0{{TU4*&oM d0JFCNxC01-P99loAQ%XfcLg&7gHDsI1wE*YyX61? diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-js.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-js.doo index 390cb3d9e42cacdb23af0bb88b22596a06cda35f..554046c6a116e46c4cba493d2fb8ce213d90b478 100644 GIT binary patch delta 435 zcmV;k0Zjgh5Qz{HP)h>@6aWAK2mq*29$ABa%W{ztD1Q&V^cOuP2n<@Hc8N;VhLmdi z_o2M*+75D^AqO)4JC{WR>h&%-7_w zu5h~Ca@b_xW>-jbwL*7hQ zDUW?x4ei5j2{fVJb$J;U49&{6I=_+o1W-!@1QY-O00;o6Q65=kz%`mj^Qfs8N&52R%M+#ZLeL delta 435 zcmV;k0Zjgh5Qz{HP)h>@6aWAK2mpsp9$9Q47zmLPD1U*T`iq_t1O_cpyF?{wLrS&% z`%qqYZ3nr|kb{{aLn-@63HSd{lnOunej0Y$=V22d^7$V9x&5_$?u?dX@SXy4rAR29 zeSKMphn?Mz?QYn-mAM+E?;A*|937mfWVMM1N%0B>oCQ79W%r)JQ$=A&&KIr%zJ6Uj zf-v!TgMWh!Ix|A?+;x%7tS7t;AjcvejWp>@Oqy4Y%XM`{1R<#N37Vq1!Y*T-O6YP` zTIUm-Oe>mDMF*-ha<+a}1+BmVB)CKe0lBx*6a96wkXgnUafx@)ZA`udbbbQ)kM*oh zCkW+ek#C7HLQB=f#=ckR$_$=r&oKNEV4XqCkbfPP6b=a;7f!?o;>=E+ED`xtZB@}T zS2$g6Iczd;vnwRb860tF{^3|xx(bb>{lJQUG`N1squeFQa?(J)7CHCkT3&wTA#WzD zl*c};hW25%1e#Fqy1WbvhGu13o!`iP0#Hi>1QY-O00;nwP99lhz@6aWAK2mqQ<9$ABa%W{ztD1Q&V^cOuP2n<@Hc8N;VhLmdi z_o2M*+75D^AqO)4JC{WR>h&%-7_w zu5h~Ca@b_xW>-jbwL*7hQ zDUW?x4ei5j2{fVJb$J;U49&{6I=_+o1W-!@1QY-O00;n@Q65=w3^{k00{{SU4gdfL d0JFCNtpf;}Q65=?e#>%`Yy~p{no*OX1wH-D!`J`- delta 435 zcmV;k0Zjhh3*HM7P)h>@6aWAK2mp9a9$9Q47zmLPD1U*T`iq_t1O_cpyF?{wLrS&% z`%qqYZ3nr|kb{{aLn-@63HSd{lnOunej0Y$=V22d^7$V9x&5_$?u?dX@SXy4rAR29 zeSKMphn?Mz?QYn-mAM+E?;A*|937mfWVMM1N%0B>oCQ79W%r)JQ$=A&&KIr%zJ6Uj zf-v!TgMWh!Ix|A?+;x%7tS7t;AjcvejWp>@Oqy4Y%XM`{1R<#N37Vq1!Y*T-O6YP` zTIUm-Oe>mDMF*-ha<+a}1+BmVB)CKe0lBx*6a96wkXgnUafx@)ZA`udbbbQ)kM*oh zCkW+ek#C7HLQB=f#=ckR$_$=r&oKNEV4XqCkbfPP6b=a;7f!?o;>=E+ED`xtZB@}T zS2$g6Iczd;vnwRb860tF{^3|xx(bb>{lJQUG`N1squeFQa?(J)7CHCkT3&wTA#WzD zl*c};hW25%1e#Fqy1WbvhGu13o!`iP0#Hi>1QY-O00;nhP99lt3^{k00{{SU4gdfL d0JFCNtpf;nP99loAQ%XfYy~p{cutd{1wB9!x<>#2 diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-py.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-py.doo index dbadd82172153f6c9f44d11d680387fe72ec78bd..385e819b9e314db703c98fe91bcc67aa784207a9 100644 GIT binary patch delta 435 zcmV;k0Zjhq3+D?GP)h>@6aWAK2mrBB9$ABa%W{ztD1Q&V^cOuP2n<@Hc8N;VhLmdi z_o2M*+75D^AqO)4JC{WR>h&%-7_w zu5h~Ca@b_xW>-jbwL*7hQ zDUW?x4ei5j2{fVJb$J;U49&{6I=_+o1W-!@1QY-O00;oFQ65?KPIw=o0{{TZ4*&oM d0JFCNwgU*UQ65=?e#>%`bp@6aWAK2mp^x9$9Q47zmLPD1U*T`iq_t1O_cpyF?{wLrS&% z`%qqYZ3nr|kb{{aLn-@63HSd{lnOunej0Y$=V22d^7$V9x&5_$?u?dX@SXy4rAR29 zeSKMphn?Mz?QYn-mAM+E?;A*|937mfWVMM1N%0B>oCQ79W%r)JQ$=A&&KIr%zJ6Uj zf-v!TgMWh!Ix|A?+;x%7tS7t;AjcvejWp>@Oqy4Y%XM`{1R<#N37Vq1!Y*T-O6YP` zTIUm-Oe>mDMF*-ha<+a}1+BmVB)CKe0lBx*6a96wkXgnUafx@)ZA`udbbbQ)kM*oh zCkW+ek#C7HLQB=f#=ckR$_$=r&oKNEV4XqCkbfPP6b=a;7f!?o;>=E+ED`xtZB@}T zS2$g6Iczd;vnwRb860tF{^3|xx(bb>{lJQUG`N1squeFQa?(J)7CHCkT3&wTA#WzD zl*c};hW25%1e#Fqy1WbvhGu13o!`iP0#Hi>1QY-O00;n&P99nHPIw=o0{{TZ4*&oM d0JFCNwgU){P99loAQ%Xfbp54rRgIVA`TMxu6!NYsXu zYWw%4yw2JVdYu^#I75a~_K_0q|Dq@re)#h+?6!}?CP3uVE&6-=ynXD9mSpgr0&=BD zD4l)%wGwwTyQl4L*u0gw8l>+VNU0ng9I0eAMTDey0Rzs09_liC%iyu1FeK*-R{>vt zjvhdmc)Y@Y!Gz8hp?K=P$hNE}yb6$G5syZibtWdwE63$Bx*~!Q)cFKWQC(q|u}&p) zyDF{o36AC!&8VUSRT?>4KdXaQ-~bX_q7MPNU8N`bbhD7Hj4|R8@9f){d-NIEB@8s@+tRr=OoKX1NmCy)SGL0`IUA2 zEX!n_^4R5SHFULG5>2T1Lo67YwQYU=&+i{lO9KQH000080G3f6S$Kf=jy2r?08V@b f00#iGw*gAs2$oSES<_3a?UM=LGXj=TlRn=)0o>45 delta 437 zcmV;m0ZRV+z61Nd0}@b60|XQR000O8bWR>w(4wBWkrF6>ft>n_oDu{EBT>6VBx*xS zwf*~2UT19wz0M2=oFPLg`$!4*e^HbQKm2(ZcH75c6Cm>G7X7__-ad9lOEP#*0l88n zl+M2XT8X=v-P3kAY~IRT4bt}wq*M+Lj#RRmB0^HUfB|Pg4|SQnW$;*07?SgatAMXR zM-L!OJYL~{U_xh$P&{>CWLwq~UIoaph({yMIun!TmE&?5T@gVD>U@HxsIIWfSf>)Y zU6t1P1V{6VW>nFEDvg}2pVdJtZ~zG|(T9NCuF?~Ix>?9p#u#ylclK>ez65lB0{O;z zR;Lq$aSANxD|BTBPqk+lUIbWY5L?K94oeCj2^|+s#0cVSojO?}@~hkG zq9?9!Jl}HIWZ-63NSHG?;?Vrvu`YBK8b|wq75{2*`ILLRbCTtxfqX4;>dm#h{K`6h zmSwU|dF*nv8oJsoi6&J1Ar=hH+O|Ib=l2g#O9KQH000080CY|sS$Kf=jy2r?08V@b f00#iGw*gAs2y{*!S Date: Tue, 3 Sep 2024 15:31:34 -0400 Subject: [PATCH 14/14] target-specific standard library Makefile now processes files in name order + .doo files updated --- .../binaries/DafnyStandardLibraries-cs.doo | Bin 1530 -> 1519 bytes .../binaries/DafnyStandardLibraries-go.doo | Bin 1557 -> 1540 bytes .../binaries/DafnyStandardLibraries-java.doo | Bin 1513 -> 1510 bytes .../binaries/DafnyStandardLibraries-js.doo | Bin 2057 -> 2028 bytes .../DafnyStandardLibraries-notarget.doo | Bin 1502 -> 1499 bytes .../binaries/DafnyStandardLibraries-py.doo | Bin 1511 -> 1506 bytes .../src/Std/TargetSpecific/Makefile | 2 +- 7 files changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-cs.doo index 6626d883a6b43b9e2f5bacb6955578fcac1f8cec..21538812c88840849b1c7152a9c9399941b6f6b1 100644 GIT binary patch delta 1034 zcmV+l1oiv+3-1dJP)h>@6aWAK2mpL~Be4yb0e^gYBUzFcIsT~w006}g000L7003}u zZ)b90ZN*pLZ__Xke(zs#yd_cz@PZ!gKQ~_ci`NunUFw}+y`f={9SmufE&glcVhgD{gh)!10oTwNkl`(HG2gD zfQpaiaaZ`nDAz3Pf?MKu;kYV4nejw`vwuH$p z51_bbSi{fFO2OcIoWYsIxaLpwLg8MhHy-0tCQS-cP?BGdn!iQa%$WP|F_n}hhfu!6 znB`c67_(i`A82P6_>d5(&)OVpv-;jh7SrH}ZD&`HthlSP*rp)Wx4%+yT0ko&3x8+$ zj0(e^)X!P4c|gjefI8l|)#oHC>@+LIYu_ex3xIv6G3~@|8p@W&DdQ4YiV24Bg_ATz zE`Dcaa=EvZ&j|-A^m2K#Cao;@#{qze$hhiMPfCwk66Ymf{o(j6qjlSIgM>nLPAc{b zDj9l9v9?wMb>djc)R6uJ$YyC3L4U34ZP|=Gjk@j-Zm9g5?33J)O`$bYPwl{bt_^B3 zbk@3^`u(n{W&vRbv5UW-jup=mr*|Or2vr|B!)i6h)8VoVPn|)1ZW$+01RMCN{%8W) z6?`9XONA7W>u0UYMz!<0jN{X45Lg?kTowl)jgPfMQp{C~xlXZgwvycRLw_GM5D!6@ z3SFNwm;fc9^q#A$;k{@Vs69bD%CunG0B+ut!Ld3>ntLl2<7;z1dpPbH-Rewh!?!`R z`&xvHl2OAI=TGt z=KSlW!aw>hQJiuX>i|wl=+gN%yUAZJrhwYw zLflnB1{r+es&)*8E7l^ghp57jF=~VN58P3`{+CMsQk#|@wg4k}TbEGtxI~dfa#rP7 zm>FKhASqr^3@J;NiW&Ix?ke_1j>3I4sWJz8TcYUSbqSmj8mR{0lv*$@p!yL9t1M90 zMmWETm?%5zARefHw;ql=ro;o%?_{)R@<$>#Zk2t{n`gDtNmB3QR__}c>eqBmL)DgA zCpK;AI<-I)gGYUS0Z>Z;0u%!j000080DO8QlY<2~34D4ZS&|ny{;8A11uzC_1poj5 E05&1-SO5S3 delta 1045 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 diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-java.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-java.doo index 4ea72a03b74c61f8c6e6482c1207c0a2356b725e..a86c4511f64a647e93a96bff1d4dbd5285764723 100644 GIT binary patch delta 1004 zcmV@6aWAK2mpe5Be4yb0SSV7BUuB1MG&Bqt^pc$EjYJ#Oh}+f?t`;b{w_RQz%^r$ zJ2C#ne#$YV0g(uoB%-0?n!N%6K*dM%bzAtvDDPO<1-Ha|;kYV4nejw`vr@l(5GZHM zg*)c_fe7XAtbABnAu@rXZ!_)>ptxsP!_Uo1!QgV7!Lh`+=1=v1Lg8MhHy-0lCQS-c zP?BGcn!iWc%$WP|IhB+p`%pf^nB`c67_&X6KhVxD@F5{mpS3yIdiBB61Ic0@o?2+Mw1uLb1{&+;@qqsWWxYgGrD(o~l zMQ_(RbXR~~r_ud?rPfE3EsaygC9o6|4B;CmX^LDtBxiEjSO<_34pivn^0G}@S?*2+ z027gM)x4gR9=slq^oC+>tpw`Cv6QJH{RxoG(yE18 z@!PT)c^c*2A>7a{XtGaoM>d7lOg*&&^SL&t$Gnx6S1IN?#lqQ2a@7yL*Nof;T`F{a&R_zRfYN)Ru7>xrU7+?*?I_cN zX#==*{e|s-c9B~%w08UEeovH-MX>wb!EbBxZ za?ZHFYk$|;Q-{!{^L=)mzgkQIwZ*Bpt%3|P_{LR#?HCFdtVLi4QH394)CTV#xTAXg zFO~kKHZ47D0Y>t+E}`aeh9ZmPtje)4GrWpHQaqvQVqZ70hDEwxT;+R}AufhY#Q_4)-+O928D0~7!N00;nrdLxr^ a1vm+UdLvl_fkhCYld}ad24DpM0000Zg70zw delta 1007 zcmV@6aWAK2mqu}9S%);?gu{Tms86!x*kP$#dj?LQO;o5duE5Xl~d9 znB6lWp(Grr(8Cy4_@0@KSf;>>NHPw7lQ3qY;A)YcH6E31&5IuL+uFVtv}@Z;kXWe0 zL`6NIilKKDJ7Wz{FV43t=|y@9ke%hqd!Xx`WGRi_v&HCg(xJ`J12ii`xP<4EZNyc^ zU9%xb^=mWxtn}r7I?+1QK+V8-tPMIed_d_B+C9__s!Lz4*4eBe>>ytY>ATah;#uUJ z7E{!p-&{H9b~EpD&T6p_C%KoU9U5k01coFUaF%JyxQELnpTxf zs1W+LX_e_3@cKzvTN-uOp5>CV%uN{&E?A0h&HB`EJTSa)|&r1HeS6nu|!a4Z?p($Ha{Wkc?&rfFxR`iE z`Mnv{nLLREf6!LHr4eXndXv=ixX|+^4b|_KG*%mbcw@ze8@vuJkey9n+p#=!eVs0* z(U;bBtI`BPP_Kn8B(38zBn!&Y)lO}()GFr~(}+ma_biR;9%ES_I~5E>5Tf;rptLX%LY0&+#V!-@^*uQcoZvC&pVP*CFM)CgW^BYi00Rj{Q6aWAK2mqu} d9+PhcI0>Xt9$A;ag)F0!umvy%V+8;J000B=;9dX# diff --git a/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-js.doo b/Source/DafnyStandardLibraries/binaries/DafnyStandardLibraries-js.doo index 554046c6a116e46c4cba493d2fb8ce213d90b478..0ad15aebf4ae7c8c0195df539491555442760f30 100644 GIT binary patch delta 1547 zcmV+m2K4!f5bO^PP)h>@6aWAK2mpq9Be4yb0e^;iBUzxdjQyqs008A2000L7003}u zZ)b90ZN*qibK5o$zUx;YIe4h4qO`XTEvb{FcI(J?I=1Q@G8q@9U>hTnU;vPnE9<`( z0ABzJzN|^Bi%nv&`+d8M#V+5z1^f}+MwC2I7>q`vfUIL5ft~A-Aj0Cmd+0N?2iJT( z{eK7(c!#%i&IlS}H1&n4(XFeZK zz>WN~0MqGIZ4g^X$T*EXPN=qV=fW)}!5%mdkA!i6!^8#7QtTgtHw$n_h(8{w{por{ z(HeV@BX9$KymrQFEwuoE(2vx=`*cr$_^1%e>FhiggpkWvtH4&X?;R%r_TH22Y=8B_ zj9cZ&HUV5beV3Gz4%9elcG_c<3N}zbC*EcN|vZC@8mO z$#|VsnDWK1@IHJJki~u+M1*ocA{3%E_)K9GA<7D-jfG{WMM$x>l@3iNffQ^)@^`q@ zPP%RV#yE*eLayOZGK0Pg0*OUfS$~XbE_bZuD@_y>vY3iWswYwTmOo-P6}!QFE{PZ^ zmYW9dTpIuK^*GPHe3Pp-8Ltbja&fn>ucbWo)hvTa1i!_omi!`m9AXiq0y{-;og)7$ zhd4Vik7Em~?rX6ZGr8fr5K)Q+k$QA(Y`X90A#o~6q*`=> zS`4-HA51SP4s_+n*x2=IAb*AsOpKsKbEeMc{p zbb3t!^h*ItIF?S8$13hspzduIK(x{!kXjt$*dx(FgG&-38~AFE)rz%vZAM-wBWrw* zkygFz*NN@ID6z_?q_{hb`=NaJ0qiz=L#DhZ^hY6=6mm^DY5Kxw0Dt>ALazXaIz@C7 zNHiK&mB%fP18;Pf^rPC`zc#Y&KHnJu%ZexQKIed+b3{hVX!OVp&C|;0n`GB>N4Bzh zubNt&THkERWPW%Dq+m#rytVZ?qz{ltl^NT8ZEf9KQ#fa(IiQ#rBxYr*sbX}ya%l2b z9au>YHAU!2p*mhBUw`M9wNpjO{dQjKjW}OS`TC<-SEPMR{J#e+JD-2gpO0OZn3c9WN z@7tlawW3zYT|J<79_wGw%1`ni*hhAXeRTHeEbH%1lmsik&D)pd5w3l~JG)$+TwT69 zzr7On-#>B0PJby0qyi^`{83~Ar#O5lQRaEVPADbR&C1`M+$mMa)cH2MOMYHV0Fn|H z?4eZBir_O9xuYPgNDV+{qEz37sBXOZ!tM0e|K+9s(l<4K=nm-MtsO#%;|j6Z=d+Sy zDyDGlicum1rMaaNdp#SauaK>Gp7(m~OC_{3P6P$6$zM=ChSF9lAI@-#01tX#)!D~^LY7v{%{5sK$ x2m~+s{R>b_0Rj{Q6aWAK2mpq9Ba@N`I0=S&BUzxdjQysQ(+4mHW(NQO000eO=4Su^ delta 1583 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 Q%$$?41uzC&1poj507+Tj-~a#s delta 999 zcmV@6aWAK2mrBB95gY86RUH|)RCuy8E#RasjQk68myYKGvx!+}P599;hW}HnqNqW5= z$1ElxlDiloVNtFwmooB?XpF}{j#G&|CGp{0Uj;0B013(m7Qyk^)#1h2{>kkHlIY+` zqB!C#(QaNwfsRr#*ED<$#aFyW-P$0H`fa z#k2|1fqTQLL<4-qHejp3O;A@Jn~=+`+TQ;~Cj6!5P0C~Ye?^dqmS z?J=iq+j@aSLhU;h)dN)wy{FiERs(h7{7mCcq_+UsSuT4ky7nbYXn4Tp!>e(NHbW24 zvJQ*rU$zqEO_W7{H@4cgFQH|EPr~M9rhe(lNK`74@%&Fa=&&&mkM3)GnfE1p!7ee zqv3ztY*0N;5-Jd9F*vFoI=C zW}{jVjG$A0v3-Y3_doZ_;&eVh?`sr2B&2XeXsq_bt6}wGfTYc^9N8%0Rj{Q6aWAK2mrBB9+PVYI0>;) V9$EEHcpssYtOYOzVFdsH0061b+7kc( diff --git a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/Makefile b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/Makefile index 3e6c7bb7ee..eea7d40b13 100644 --- a/Source/DafnyStandardLibraries/src/Std/TargetSpecific/Makefile +++ b/Source/DafnyStandardLibraries/src/Std/TargetSpecific/Makefile @@ -19,7 +19,7 @@ verify-all: update-binary-all build-binary: $(DAFNY) build -t:lib --hidden-no-verify=$(NO_VERIFY) dfyconfig.toml \ - `find . -name '*-${TARGETLANG}*.dfy'` \ + `find . -name '*-${TARGETLANG}*.dfy' | sort` \ --output:${DOO_FILE_SOURCE} check-binary: build-binary