From f2c71a26883e1f7f62c171040020b74e26bf261f Mon Sep 17 00:00:00 2001 From: Manuel Bl Date: Wed, 30 Aug 2023 21:13:01 +0200 Subject: [PATCH] Fix invisible cross in PDF QR code --- .../codecrete/qrbill/canvas/PDFCanvas.java | 49 ++++++++++++++---- .../qrbill/generator/QRCodeTest.java | 9 ++++ generator/src/test/resources/a4bill_ex1.pdf | Bin 6391 -> 6387 bytes generator/src/test/resources/a4bill_ex2.pdf | Bin 4012 -> 4010 bytes generator/src/test/resources/a4bill_ex3.pdf | Bin 4397 -> 4395 bytes generator/src/test/resources/a4bill_ex4.pdf | Bin 2988 -> 2987 bytes generator/src/test/resources/a4bill_ex5.pdf | Bin 8696 -> 8693 bytes generator/src/test/resources/a4bill_ex6.pdf | Bin 7117 -> 7114 bytes .../src/test/resources/a4bill_postproc1.pdf | Bin 5024 -> 5025 bytes .../src/test/resources/a4bill_postproc2.pdf | Bin 4952 -> 4953 bytes generator/src/test/resources/invoice-01.pdf | Bin 48595 -> 48594 bytes generator/src/test/resources/invoice-02.pdf | Bin 48595 -> 48594 bytes generator/src/test/resources/invoice-03.pdf | Bin 48719 -> 48717 bytes generator/src/test/resources/invoice-04.pdf | Bin 48719 -> 48717 bytes generator/src/test/resources/linestyle_1.pdf | Bin 6391 -> 6387 bytes generator/src/test/resources/linestyle_2.pdf | Bin 5925 -> 5924 bytes .../src/test/resources/pdfcanvas-opendoc.pdf | Bin 6729 -> 6725 bytes .../test/resources/pdfcanvas-openstream.pdf | Bin 6352 -> 6378 bytes .../src/test/resources/pdfcanvas-saveas.pdf | Bin 2977 -> 2976 bytes .../src/test/resources/pdfcanvas-writeto.pdf | Bin 4326 -> 4323 bytes .../src/test/resources/qrcode_quiet_zone.pdf | Bin 0 -> 3015 bytes 21 files changed, 49 insertions(+), 9 deletions(-) create mode 100644 generator/src/test/resources/qrcode_quiet_zone.pdf diff --git a/generator/src/main/java/net/codecrete/qrbill/canvas/PDFCanvas.java b/generator/src/main/java/net/codecrete/qrbill/canvas/PDFCanvas.java index b0448192..dc689ea4 100644 --- a/generator/src/main/java/net/codecrete/qrbill/canvas/PDFCanvas.java +++ b/generator/src/main/java/net/codecrete/qrbill/canvas/PDFCanvas.java @@ -17,6 +17,7 @@ import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.OutputStream; +import java.io.UncheckedIOException; import java.nio.file.Files; import java.nio.file.Path; @@ -48,7 +49,6 @@ public class PDFCanvas extends AbstractCanvas implements ByteArrayResult { private int lastNonStrokingColor = 0; private double lastLineWidth = 1; private LineStyle lastLineStyle = LineStyle.Solid; - private boolean hasSavedGraphicsState = false; /** * Creates a new instance using the specified page size. @@ -75,6 +75,7 @@ public PDFCanvas(double width, double height) throws IOException { document.addPage(page); contentStream = new PDPageContentStream(document, page, PDPageContentStream.AppendMode.OVERWRITE, true); isContentStreamOwned = true; + initGraphicsState(); } /** @@ -104,6 +105,7 @@ public PDFCanvas(Path path, int pageNo) throws IOException { document = PDDocument.load(Files.newInputStream(path)); preparePage(document, pageNo); isContentStreamOwned = true; + initGraphicsState(); } /** @@ -133,6 +135,7 @@ public PDFCanvas(byte[] pdfDocument, int pageNo) throws IOException { document = PDDocument.load(pdfDocument); preparePage(document, pageNo); isContentStreamOwned = true; + initGraphicsState(); } /** @@ -163,6 +166,7 @@ public PDFCanvas(PDDocument pdfDocument, int pageNo) throws IOException { setupFontMetrics(PDF_FONT); preparePage(pdfDocument, pageNo); isContentStreamOwned = true; + initGraphicsState(); } /** @@ -186,6 +190,12 @@ public PDFCanvas(PDPageContentStream contentStream) { setupFontMetrics(PDF_FONT); this.contentStream = contentStream; isContentStreamOwned = false; + try { + initGraphicsState(); + } catch (IOException e) { + // should add throws IOException to constructor in next major release + throw new UncheckedIOException(e); + } } private void preparePage(PDDocument doc, int pageNo) throws IOException { @@ -200,20 +210,36 @@ private void preparePage(PDDocument doc, int pageNo) throws IOException { } } + private void initGraphicsState() throws IOException { + if (!isContentStreamOwned) { + // save initial graphics state to restore it after drawing + // (not needed if the content stream is owned as it will be closed) + contentStream.saveGraphicsState(); + + // set default graphics state + contentStream.setStrokingColor(0.0f, 0.0f, 0.0f); + contentStream.setNonStrokingColor(0.0f, 0.0f, 0.0f); + contentStream.setLineWidth(1); + contentStream.setLineJoinStyle(0); + contentStream.setLineCapStyle(0); + contentStream.setLineDashPattern(new float[0], 0); + contentStream.setMiterLimit(10); + } + + contentStream.saveGraphicsState(); + } + @Override public void setTransformation(double translateX, double translateY, double rotate, double scaleX, double scaleY) throws IOException { translateX *= MM_TO_PT; translateY *= MM_TO_PT; - if (hasSavedGraphicsState) { - contentStream.restoreGraphicsState(); - lastStrokingColor = 0; - lastNonStrokingColor = 0; - lastLineWidth = 1; - } + contentStream.restoreGraphicsState(); + lastStrokingColor = 0; + lastNonStrokingColor = 0; + lastLineWidth = 1; contentStream.saveGraphicsState(); - hasSavedGraphicsState = true; Matrix matrix = new Matrix(); matrix.translate((float) translateX, (float) translateY); if (rotate != 0) matrix.rotate(rotate); @@ -416,9 +442,14 @@ public void close() throws IOException { private void closeContentStream() throws IOException { if (contentStream != null) { + contentStream.restoreGraphicsState(); + if (isContentStreamOwned) { contentStream.close(); - } else if (hasSavedGraphicsState) { + } else { + // restore to default state + contentStream.restoreGraphicsState(); + // restore to state before creating this instance contentStream.restoreGraphicsState(); } contentStream = null; diff --git a/generator/src/test/java/net/codecrete/qrbill/generator/QRCodeTest.java b/generator/src/test/java/net/codecrete/qrbill/generator/QRCodeTest.java index 0c161ffa..7f1a4bb3 100644 --- a/generator/src/test/java/net/codecrete/qrbill/generator/QRCodeTest.java +++ b/generator/src/test/java/net/codecrete/qrbill/generator/QRCodeTest.java @@ -61,4 +61,13 @@ void qrCodeWithQuietZone() { byte[] svg = QRBill.generate(bill); FileComparison.assertFileContentsEqual(svg, "qrcode_quiet_zone.svg"); } + + @Test + void qrCodeWithQuietZonePDF() { + Bill bill = SampleData.getExample3(); + bill.getFormat().setOutputSize(OutputSize.QR_CODE_WITH_QUIET_ZONE); + bill.getFormat().setGraphicsFormat(GraphicsFormat.PDF); + byte[] svg = QRBill.generate(bill); + FileComparison.assertFileContentsEqual(svg, "qrcode_quiet_zone.pdf"); + } } diff --git a/generator/src/test/resources/a4bill_ex1.pdf b/generator/src/test/resources/a4bill_ex1.pdf index fd3d8e2ca07ab8bdaf014825b5d955ba78486890..485e5c9ef679deac345ec17cb2500a329799119f 100644 GIT binary patch delta 5505 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 DE&Ec| delta 5509 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 Nk_a;jB_%~qMhXD0`A+}< delta 2047 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 delta 1708 zcmV;d22=UgY#*kI>iAvTlruwNi3gvhw+4D47_UNrWGV-?)v?mU2{5Zx(o-KOd z{Mi#De(P3z?3r_#K_7eMRye0WTMqKmCx_4ekOJG^QRw}Ynox{Cqww$Nw-5K{{kIdY zUTUSf2^$09^MCJNI+cqn=|r*X59p)Re|q=+_U`^;QjPwR@UA~Eq^n+vCkl`LlEdmz z&gE2E8=n2M9wp{et3|5HVd?G7{q1ped^`U*#NF|U?xp&O>pQ(W7Q6neza-NTg4o!D z#OvS=$Cr|NmGHaE-QCUcaP#_jd3Sy|zJB-L*S|YozkfgfbiO(M?)dg{dH>>h}2cELf3BY#nH zX({xYLVxa=a>|@Sc~N_%S}Jj>O!UT!|-QZn5QXXf87Kgw|2{P`2p7#~f( zlxac#8UNKyoUUoTWPKvD$)8Y2DC3`QetfvSdw+NS^Yz2chvUP;`}c1z?=Cm@XBp^E z*iexFSGRYUcgOYn4-fB-*SBwP?~V`G_s99&<^GG~)$PrP%l+m4K^~r83(c!*nW4+u z>-)Pejt`gDPp0we>ic*V;#CsULk|5a#;X_vD$-8jO8!6oxk~9O*G}y!hpXpLJvN4_ z{C}-pl`z<^N)*BvJ~0|$_J#+yh0*IzOh5 zua`d_-$|%RG~Qi~um5nldANLW{Ob0Pmw&tC#rebimmjWQKaHAiE^pud;o-^CUl2)* zjBue)Uy9W{tQ6}xh&>WE8a^cb$Wel+X8C{mcC_W6uRfB^VmU?5nr8mu-?{nC!}b0B z`H}bQON$XxJGCU1{S~RNIale(^%qlL|I3;0G3n3KVE-$#VE>zBsIMML`)jk+bbnTn zScK|@W;t;|`F~+~`g~G;_0egFt-^qQG-I{L8OwrR8RLDIS}1&~jM?&}x(Koe z&=avguVdO%hDXvrUdN!KUZtANnNH>SFEQ`+vv8`%AD?|c`XK`w#+!ruJDcJD}u*l1Y_J1(P6KjQg zWbyJWp`ArvZzqm=(>s(?D_ws9S&*#BO4FITO7lliin~-~l{{WO^M}GpCF);zk`!Bl zew$oR)PufSrf@1f$@}t`GBYHvQ?KNGrkx}Pb*nhhskJccaIqwppnt_ns@W>pL4P_o zoy3v#&qbAX>SCz=jB}E??tk)D-=#w`)$-mf#xy#KF8w1@GEBq5mZYGU5IH2=Ps2P} zPft`OF#ORg8Gt5TO5@Knt%otlGg$s|Fe6B+lQrELQ6C1OR zV~^tx!)ycKp&Bo=v5jM7dn~E>#9iOEbBq!US%3Ph$slsn1GXf?z<(ttorxzi+XLw< z(HnU|6!KWQl8fdfuLz`5o~xLa^*rAnckwpvq#GMjP{?~#&@Fp^D5NKGR&gpBGJhO2 z0~Tqy(B5Vj^zYMb{r*gQTg3Y$!NF6V=$4Bf7MetOhRWfw8|pHlOCRn2D;byhR`=z{ zB1e|}(8o>U&yn*vay&jq&POB1;>ANqJVxGt^!BlMGI13b{Tw)-1Lt$#JXvxqWIhr) z@@{gfT|D=5=zI>H&!OX?^FNkMU{SMgAFlyDIUq1FFfcG6ZVd`BFfcGMFgP(VG9WN8 zFfcG6ZVd`BFfcGMFgP(ZGaxW9FfcG6ZVd`BFfcGMFgP+aHIrK*kqI<13MC~)Peux- C=$ae= diff --git a/generator/src/test/resources/a4bill_ex6.pdf b/generator/src/test/resources/a4bill_ex6.pdf index 188abad1fe2e055fda6ab8fceb23117a54b350b1..0fe9316a019905b7f30b177d2a8494836a9cbf00 100644 GIT binary patch delta 6252 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 WFfcYYHZzkm8s=T@5-8FJd5H7S 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 diff --git a/generator/src/test/resources/a4bill_postproc1.pdf b/generator/src/test/resources/a4bill_postproc1.pdf index 05386fd22cdfc499bbef172b8cb7cf224e8ae753..96e79d414654b9494b650684f7a6093fdb23dd75 100644 GIT binary patch delta 677 zcmZ3WzEFL`1wKa0$rt%l>#g&m9eLi|*Zjt$cH-%Ou9rPi9JN>-xt4oOeVra=_9v{Z zxS8GY&_2QGGJKX5=a0{SEEzA^bN==Fx8D_CP6=C6ac6#-RB6GBiklaMHW{2he#4LJ zY|fES-&!P;J?Hi-76+wx*|}6%pDj7x9v~Utm+#?u`FOd(pF)GB{rit!uhy^k*(0$o z>|Wm_k2t}i`~z2g-^Z?cFmEN_SGBc1u4nbUF3Oy8OVuq_`RDUY>hi2*tFCc+s`whe zE420#2)}#bamHeUFiEi|XD_$;sJ*tVwlQ4U{WvK^&^)_;o?qzeL#G8379D$bg6UsQ zrn2H>x95ktq+C*$_$R%ebTLEYl(P8DqIxIYfC-*u=@G#v?=o(@FgK31!>we_1zskR zD5v%68a!tl0}5CqA~pF}H2kZ=Q*Y#rc_OIYx--APX=hIC z435H;FFKk!G&h#C@?=_FSF!Wic9Xg3pOuz?-ZgERsmr~8OYLM^k+{2T$Hu~&eKivV zSI(?ITPCourS)i#<0j#>^fkPG>6g}B7kg&$dj5@9*EZBDRzHy{S?QW1X`Z9M@1Xic z?p;$H`Fzv4yt(yfrPeF(a;0wmC~$+()n-zS9C^+>7yZj9nDY5wlkvfY4>NcVH_BLi`X0Mi$YgKR zpXP&1&GVwnB6T(yoIgI_neFlSUwi)Asm#69CA$9iZJ)(_e6sr1QC?!teoEZ-TsX5g z;@&-hWR;bl4O9HOd``A|1eufyu=wjP={L zOq}4kxH!?3cahO0^^N5xGfYIDPVDxvTv#uraYALc@tT!S-ZezL@LSL1qHN{&f{l?& zcj0wm5w>Rv8Wv1FYo@S=IMlq{<@Nr@q@MK070X0pt+qKFpL~E#?^DOrLwC$A7RGGT z^J&=;QsUxxWJ<&?r#6$h*+TMax8E>2*2{`=h`$!?J9T+!ZEp&;xp+iY46>f5FHonHT+&J@kHh1xyul_lu**Er0ur1=4&F>78q?ieP%dEVUDENN8r_*mas(mlmdi`}uyccRwy^CxyUY-#LI zkU0NfwmWaT@~5xAiuXR6c<{&G|M%yy1vAzGorm}a@ex^MRDRw zGx$;$Z<=N)BtLoQu`SD1uG*^Dxg_(LZQgaZ!YjTG*WD7=80nmty_|QZ&$Z%j6^TLO z#}BSh%DX0KJ9pK!#_ie*TzbzQWcr(vsr+1}_gt%}Y0D{(`A6=lF1{Er#a++vX-m`u zg$*y)ZCEyGH*?a$-Fvt=dSBeQz{@5Q<+Q$DT7>PHfCdMnTi7Y}5QUnbyS(QA*wmA* zd}qs|)5pbr>|m97Ak-hDdFMZ)`kd3(S~~@%clBw^m?3mJ{KkZ3#dnX?o8NxJ=v*Hw z>LLDmYTv2LOKW3yvMov6j+4UVj|&B88Ps$QozTSTmTNz2yp-a delta 623 zcmcbqc0+B$1wKZz$rt(5>hoj`dER^%+10=q^e0|%?nEPxuT2WA!AnkkHLfyKu&i*e zh)6g%cWK+i;ELoc^4X8Qr}p9GQ&jV=|pcI%Y|Yp z967tR*Q|WDa`a5*(hocf7Vlp}uMx=ZT&bROU2 zFkk!P(?(XiJVy2%N0h_4KHEQNDZaVOK=4t}ML|~K;G~~i(w9osdHylKnZ_^i>-8#! zT@mX`Lgwkc&3+;^p>1~Qq2Alm-acsVU65vG?YJap(H5Q4W@parFzYbOyk5;+{N|T* z^j)dE_!CAmce2H139>(KoO_hNg8S|qcW?gN`wvc^|NUrXgw;t1ptXi2?+oI diff --git a/generator/src/test/resources/invoice-01.pdf b/generator/src/test/resources/invoice-01.pdf index 74c076d4bf3be288e3e180881473c7c310a50930..d928283b3ac91926a6b82e2b86b0f6872c6b712e 100644 GIT binary patch delta 4046 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 delta 4047 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 diff --git a/generator/src/test/resources/invoice-02.pdf b/generator/src/test/resources/invoice-02.pdf index 74c076d4bf3be288e3e180881473c7c310a50930..d928283b3ac91926a6b82e2b86b0f6872c6b712e 100644 GIT binary patch delta 4046 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 delta 4047 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 diff --git a/generator/src/test/resources/invoice-03.pdf b/generator/src/test/resources/invoice-03.pdf index bbd7908979a719a599b59142b5e75d5de499dfb3..989b208cd62b4cfe8988b700fc40df21dd569b0c 100644 GIT binary patch delta 4077 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 DE&Ec| delta 5509 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 NP97m5qHk${_%HCPbLId5 diff --git a/generator/src/test/resources/pdfcanvas-opendoc.pdf b/generator/src/test/resources/pdfcanvas-opendoc.pdf index 1602045c700de8a2388346d4ca2d6089435fb38e..334dc1cbdfa4111c57d1662be607293f674075f2 100644 GIT binary patch delta 5547 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 X`mYv+l1^-3jv$kS^YLjKX~F*w8?0Sk delta 5551 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 diff --git a/generator/src/test/resources/pdfcanvas-openstream.pdf b/generator/src/test/resources/pdfcanvas-openstream.pdf index bb9e37dd2de74518fe7c871db5901719b02ca4ee..affa11211bb47070070d89a888634c32fb70e132 100644 GIT binary patch delta 1648 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 diff --git a/generator/src/test/resources/pdfcanvas-saveas.pdf b/generator/src/test/resources/pdfcanvas-saveas.pdf index ac02f29c48c7dd7357af2ba386540405ee6f371b..0912ae441855550a4e7736981a36f11b8651d2df 100644 GIT binary patch delta 2073 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 TH8M7n1`Co1GYTaoMNdWwCu!$; diff --git a/generator/src/test/resources/pdfcanvas-writeto.pdf b/generator/src/test/resources/pdfcanvas-writeto.pdf index f7dc6a7d8f07ab148bd95acc1716cad841fe88b0..c2d4087b4d1b375fab251dc5d5e403a353bf192c 100644 GIT binary patch delta 3422 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 diff --git a/generator/src/test/resources/qrcode_quiet_zone.pdf b/generator/src/test/resources/qrcode_quiet_zone.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5260bfc5f0f678910ecdac40de0298bd87fd7510 GIT binary patch literal 3015 zcmbuBc|25mAIDvd!5G(iGb$Vx+0Dj`Ws*I_Z3r#axn?laFdCCc*(ziygfO-uxhPvm zmyoTpOEi>mD=K3d`_jcj_j&H^dHVDDy&Dm0tkTiD+PkXLEsL-{v-fyN?;JEG;avpi9`<|)BFJVZZ#ZF@FoQSsGV|qh@l~b zBG#kudZLaxU8tWpn<6IZtC&AY6{l__M)qghUiP)QXNixu z9i2I}%*mcA2$Vxw!>R;gkdIor5Ee0aoFgVdDXjLA4Hz2J##GQ$7mDu|`#69fVyeIN z9D#NdY=vkbJUH(4lKgn68U`yY>EugoUieKWX-uX-XKz&!BV{N(TSZ?m$mk)%VK{FI zD)5{n<#qE!gv_fla>oH3`@A^f#i6HFv(><1@S&6izp@NNv$J!&)8j66F$RXwqxEi0 z)b|=Rs2a2;^4`U9P-phy%FzcQ>Yd=r&poapGsWyArH8qj1ZgpImR76oi{f+QBm}9P z*E2s?)atx=->~F+!=0}CF1bl29dJK8*^2uw5G=gphhec6@BI1oL zsl&-@BCcHrvE;O96@wwca?B+by~?WV)D0}*`g~p?G+y$6_Z1X{Jvg@KG+$a#V z6ulW~r$Y4I(gUpz1BUt__VQxKz)J7`h+F8BhJw|nZ@r1rta>iGk1=|b8Yc-m<{>4e z(pQcSh%&U|zUG;*(dKl1%7PZZj%SA75Cov{4z+z*Kj8V=ir(I6%iLdNZ5ej59-XfE z{_JVgh-LMh(V(Vh4O2z7r^xwfxbLFx0uhv84#CYhvRF@E6+7odmN*1M8E(CIUY|N( zd;Sh23U%mn5v7F_zLY0s?B*z)rSWe5BzE}k#*fp-d?jofp;h}s)Mi05F0eQt> z-VJ>0l+7wBb&Lp%Q|XKt{3W^u>C-n8Fkxa|bCqct5KmwDT!QsXY8oo3{(M8T?(+|C zKJr*(zWoSGR-FytaYFd<%Cbn;;o+-n<;oKKuD(>{@#WISCtdHfElpBiFCAR(7hKyo z6O|^%{B)+>p-3ZJb zH-|?m1L31b^spF0a0XPC_XT80=eU|L02hi#1mYtk8M`^vA0bJ2T}IYj?A!G4b-Z`Q`i-I9Zoo>|>( zapfg0q^M&rc$pWv7I?reM@J!*Vv){5B;|^?ah$|a9bO~`cZ-l_JYXcB8 z-tUf&LM)1@Y^3N(@E|5AgF`LE4O><(JV4dl@1Pv$UC~!z56&hu%a$hB)yk@6X6F`U zp>t+&>I)SzrW?YQ57#I5vT!Nc#4+_Uttqyaa+8a!WeG&LYQ3U3+?t;)yrbsKO5D* zUR{)L13MdhT_qNpJkJ9TvTPS2j~zynowDc8XpJQW^;N{YtIL*49rLfe`N=rAt{^f^ zWJ#vi79C%4bN>ZLQN7UFx&un@tBmqT*TtZx9fCt%RA!m2tH_wELh$^Y zV`L$xE%Q}>yz2;#6FJRnH!%g0#p5wbKo1&%7w)xugdms0TE?TY<@u zYzh*99ruE|e}Njo-hi&KT4AOBbWIJ)OAqb^bjye0U;W>0fLt2Zaf36O_0Z4DACey{ z;I9qVEp&S&$CQbxB_YNM?ML;jX6s2bCFLe-X2n#XV}st?3`aZheS7MrE;bHJ&P1md zG_rY)`0dwnId(}`@gRG-h=9HP@$_d+q18sER>>%4MTC@F^aK775MSqEJmu~A;-+bw z)3kx2e{*7q^@xwuAsIX2%8~M!r=|&!q%Zd<&-Ju=t0e3SWS^-$FBVDND-aZQ+jsL_ z2!FdU+}or~yz)Gcn&t0P!IpJlw;Q~#W9FyZiq&7Z-BeSXDV}RGAaYYYrKUO)wgP-A zs#MmrkVOqZiA-h4tvlNmqlfnloS?WI9ceou`S^CtJ`s7b;K=BD^~IK2iGmgW&8{ROy5O~nGgS@t1%c;92FOu?itN&$H9yh)x((rTFHJTp#xf%N zoVdAVCeq`7#$GmvxwAdkW&`&rD-oXw+%qDCEB-WW8KdVk598E-62iEv_U)w{_TeO~ z09$|b$Elm*(58T=F{X((FpZXy)STrRZG6?Xr96Va>7ZW#dZdhO1O*xZ*}navM8ji+>yp zj0x{j<6n^UAAa0Lu74xeKim~WCwV~-02YGydjS|79kdSMCH%LB+@Z7G1^E4~AyGSs z_dgl}tNWdX#Oi&gq4d7fP*}t_c?>#%OeN93g0el0wnM0Y;iHwG7Y*3O;2o5-G6S4( mUnltgZiYM1dYpWLv~vVsv64V%d_5Bs7KMf=DVZO$fcy(6b1wt{ literal 0 HcmV?d00001