From 05e3c54b5693a64821e7fbfefffa898683a86b31 Mon Sep 17 00:00:00 2001 From: Pavel-A-Sokolov <119577863+Pavel-A-Sokolov@users.noreply.github.com> Date: Mon, 19 Jun 2023 10:54:46 +0400 Subject: [PATCH] Page sizes (#61) Added page How to get page width and height for .NET and Java --- .../how-to-check-if-file-is-encrypted.md | 2 +- .../how-to-determine-file-type.md | 2 +- .../how-to-get-file-type-and-pages-count.md | 4 +- .../how-to-get-page-width-and-height.md | 42 ++++++++++++++++++ ...list-and-print-all-supported-file-types.md | 2 +- .../how-to-get-page-width-and-height.png | Bin 0 -> 23368 bytes .../how-to-check-if-file-is-encrypted.md | 2 +- .../how-to-determine-file-type.md | 2 +- .../how-to-get-file-type-and-pages-count.md | 2 +- .../how-to-get-page-width-and-height.md | 38 ++++++++++++++++ ...list-and-print-all-supported-file-types.md | 2 +- .../how-to-get-page-width-and-height.png | Bin 0 -> 16477 bytes 12 files changed, 89 insertions(+), 9 deletions(-) create mode 100644 java/developer-guide/retrieving-document-information/how-to-get-page-width-and-height.md create mode 100644 java/images/how-to-get-page-width-and-height.png create mode 100644 net/developer-guide/retrieving-document-information/how-to-get-page-width-and-height.md create mode 100644 net/images/how-to-get-page-width-and-height.png diff --git a/java/developer-guide/retrieving-document-information/how-to-check-if-file-is-encrypted.md b/java/developer-guide/retrieving-document-information/how-to-check-if-file-is-encrypted.md index d0c5bd8..1178b93 100644 --- a/java/developer-guide/retrieving-document-information/how-to-check-if-file-is-encrypted.md +++ b/java/developer-guide/retrieving-document-information/how-to-check-if-file-is-encrypted.md @@ -2,7 +2,7 @@ id: how-to-check-if-file-is-encrypted url: viewer/java/how-to-check-if-file-is-encrypted title: Check if a file is encrypted -weight: 5 +weight: 3 description: "This article explains how to check if a file is encrypted using Java with GroupDocs.Viewer for Java." keywords: check, file, encrypted, Java productName: GroupDocs.Viewer for Java diff --git a/java/developer-guide/retrieving-document-information/how-to-determine-file-type.md b/java/developer-guide/retrieving-document-information/how-to-determine-file-type.md index aecc260..760d80d 100644 --- a/java/developer-guide/retrieving-document-information/how-to-determine-file-type.md +++ b/java/developer-guide/retrieving-document-information/how-to-determine-file-type.md @@ -2,7 +2,7 @@ id: how-to-determine-file-type url: viewer/java/how-to-determine-file-type title: Determine the file type -weight: 4 +weight: 1 description: "This article explains how to get a type of a file with GroupDocs.Viewer for Java using Java." keywords: productName: GroupDocs.Viewer for Java diff --git a/java/developer-guide/retrieving-document-information/how-to-get-file-type-and-pages-count.md b/java/developer-guide/retrieving-document-information/how-to-get-file-type-and-pages-count.md index d04588e..1214558 100644 --- a/java/developer-guide/retrieving-document-information/how-to-get-file-type-and-pages-count.md +++ b/java/developer-guide/retrieving-document-information/how-to-get-file-type-and-pages-count.md @@ -2,7 +2,7 @@ id: how-to-get-file-type-and-pages-count url: viewer/java/how-to-get-file-type-and-pages-count title: Get the format family and the additional information -weight: 4 +weight: 2 description: "This article explains how to get the format family and the additional information using Java with GroupDocs.Viewer for Java." keywords: productName: GroupDocs.Viewer for Java @@ -10,7 +10,7 @@ hideChildren: False --- A format family is a group of several file types for which an application provides additional information. For example, archive files (.7z, .rar, .zip, etc.) or Outlook files (.ost, .pst) are format families. -You can get the format family and the additional information using the [getViewInfo](https://reference.groupdocs.com/viewer/java/groupdocs.viewer/viewer/methods/getviewinfo) method that returns a [ViewInfo](https://reference.groupdocs.com/viewer/java/groupdocs.viewer.results/viewinfo) object. +You can get the format family and the additional information using the [getViewInfo](https://reference.groupdocs.com/viewer/java/com.groupdocs.viewer/viewer/#getViewInfo-com.groupdocs.viewer.options.ViewInfoOptions-) method that returns a [ViewInfo](https://reference.groupdocs.com/viewer/java/com.groupdocs.viewer.results/viewinfo/) object. GroupDocs.Viewer provides additional information for the following format families: diff --git a/java/developer-guide/retrieving-document-information/how-to-get-page-width-and-height.md b/java/developer-guide/retrieving-document-information/how-to-get-page-width-and-height.md new file mode 100644 index 0000000..2be7fdc --- /dev/null +++ b/java/developer-guide/retrieving-document-information/how-to-get-page-width-and-height.md @@ -0,0 +1,42 @@ +--- +id: how-to-get-page-width-and-height +url: viewer/java/how-to-get-page-width-and-height +title: Get the width and height of the document pages +weight: 5 +description: "This article explains how to get the width and height of the document pages using GroupDocs.Viewer for Java." +keywords: +productName: GroupDocs.Viewer for Java +hideChildren: False +--- + +You can get the width and height of each document page using the [getViewInfo](https://reference.groupdocs.com/viewer/java/com.groupdocs.viewer/viewer/#getViewInfo-com.groupdocs.viewer.options.ViewInfoOptions-) method that returns a [ViewInfo](https://reference.groupdocs.com/viewer/java/com.groupdocs.viewer.results/viewinfo/) object. Use the [getPages](https://reference.groupdocs.com/viewer/java/com.groupdocs.viewer.results/viewinfo/#getPages--) method to access the collection that contains each [Page](https://reference.groupdocs.com/viewer/java/com.groupdocs.viewer.results/page/) of the document. + + +The following code snippet shows how to get the width and height of each document page: + +{{< tabs "example1">}} +{{< tab "Java" >}} +```java +import com.groupdocs.viewer.Viewer; +import com.groupdocs.viewer.options.ViewInfoOptions; +import com.groupdocs.viewer.results.ViewInfo; +// ... + +try (Viewer viewer = new Viewer("sample.pdf")) { + // Get file information. + ViewInfoOptions viewInfoOptions = ViewInfoOptions.forHtmlView(); + ViewInfo viewInfo = viewer.getViewInfo(viewInfoOptions); + + // Display width and height of each page. + for (Page page : viewInfo.getPages()) { + System.out.println("Page: " + page.getNumber() + "; Width: " + page.getWidth() + ", pixels"); + System.out.println("Page: " + page.getNumber() + "; Height: " + page.getHeight() + ", pixels"); + } +} +``` +{{< /tab >}} +{{< /tabs >}} + +The following image shows a sample console output: + +![](/viewer/java/images/how-to-get-page-width-and-height.png) \ No newline at end of file diff --git a/java/developer-guide/retrieving-document-information/how-to-list-and-print-all-supported-file-types.md b/java/developer-guide/retrieving-document-information/how-to-list-and-print-all-supported-file-types.md index 448b4c7..8b77f76 100644 --- a/java/developer-guide/retrieving-document-information/how-to-list-and-print-all-supported-file-types.md +++ b/java/developer-guide/retrieving-document-information/how-to-list-and-print-all-supported-file-types.md @@ -2,7 +2,7 @@ id: how-to-list-and-print-all-supported-file-types url: viewer/java/how-to-list-and-print-all-supported-file-types title: List and print all supported file types -weight: 5 +weight: 4 description: "This article explains how to list and print file types supported by GroupDocs.Viewer for Java" productName: GroupDocs.Viewer for Java hideChildren: False diff --git a/java/images/how-to-get-page-width-and-height.png b/java/images/how-to-get-page-width-and-height.png new file mode 100644 index 0000000000000000000000000000000000000000..eede28b27190114a81c2c85613a0cbf1a4807d1d GIT binary patch literal 23368 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 S#6JqUj?p*OD>-rI@;?C4wmGT* literal 0 HcmV?d00001 diff --git a/net/developer-guide/retrieving-document-information/how-to-check-if-file-is-encrypted.md b/net/developer-guide/retrieving-document-information/how-to-check-if-file-is-encrypted.md index 4917671..9188b2c 100644 --- a/net/developer-guide/retrieving-document-information/how-to-check-if-file-is-encrypted.md +++ b/net/developer-guide/retrieving-document-information/how-to-check-if-file-is-encrypted.md @@ -2,7 +2,7 @@ id: how-to-check-if-file-is-encrypted url: viewer/net/how-to-check-if-file-is-encrypted title: Check if a file is encrypted -weight: 5 +weight: 3 description: "This article explains how to check if a file is encrypted using .NET / C# with GroupDocs.Viewer for .NET." keywords: check, file, encrypted, C#, .NET productName: GroupDocs.Viewer for .NET diff --git a/net/developer-guide/retrieving-document-information/how-to-determine-file-type.md b/net/developer-guide/retrieving-document-information/how-to-determine-file-type.md index d496833..c5d76ba 100644 --- a/net/developer-guide/retrieving-document-information/how-to-determine-file-type.md +++ b/net/developer-guide/retrieving-document-information/how-to-determine-file-type.md @@ -2,7 +2,7 @@ id: how-to-determine-file-type url: viewer/net/how-to-determine-file-type title: Determine the file type -weight: 4 +weight: 1 description: "This article explains how to get a type of a file with GroupDocs.Viewer for .NET using .NET / C#." keywords: productName: GroupDocs.Viewer for .NET diff --git a/net/developer-guide/retrieving-document-information/how-to-get-file-type-and-pages-count.md b/net/developer-guide/retrieving-document-information/how-to-get-file-type-and-pages-count.md index 3b1aefd..e3d0191 100644 --- a/net/developer-guide/retrieving-document-information/how-to-get-file-type-and-pages-count.md +++ b/net/developer-guide/retrieving-document-information/how-to-get-file-type-and-pages-count.md @@ -2,7 +2,7 @@ id: how-to-get-file-type-and-pages-count url: viewer/net/how-to-get-file-type-and-pages-count title: Get the format family and the additional information -weight: 4 +weight: 2 description: "This article explains how to get the format family and the additional information using .NET / C# with GroupDocs.Viewer for .NET." keywords: productName: GroupDocs.Viewer for .NET diff --git a/net/developer-guide/retrieving-document-information/how-to-get-page-width-and-height.md b/net/developer-guide/retrieving-document-information/how-to-get-page-width-and-height.md new file mode 100644 index 0000000..58ba23f --- /dev/null +++ b/net/developer-guide/retrieving-document-information/how-to-get-page-width-and-height.md @@ -0,0 +1,38 @@ +--- +id: how-to-get-page-width-and-height +url: viewer/net/how-to-get-page-width-and-height +title: Get the width and height of the document pages +weight: 5 +description: "This article explains how to get the width and height of the document pages using .NET / C# with GroupDocs.Viewer for .NET." +keywords: +productName: GroupDocs.Viewer for .NET +hideChildren: False +--- + +You can get the width and height of each document page using the [GetViewInfo](https://reference.groupdocs.com/viewer/net/groupdocs.viewer/viewer/methods/getviewinfo) method that returns a [ViewInfo](https://reference.groupdocs.com/viewer/net/groupdocs.viewer.results/viewinfo) object. The object contains the [Pages](https://reference.groupdocs.com/viewer/net/groupdocs.viewer.results/viewinfo/pages/) collection that represents each [Page](https://reference.groupdocs.com/viewer/net/groupdocs.viewer.results/page/) of the document. + +The following code snippet shows how to get the width and height of each document page: + +{{< tabs "example1">}} +{{< tab "C#" >}} +```csharp +using (Viewer viewer = new Viewer("sample.pdf")) +{ + // Get file information. + ViewInfoOptions viewInfoOptions = ViewInfoOptions.ForHtmlView(); + ViewInfo viewInfo = viewer.GetViewInfo(viewInfoOptions); + + // Display width and height of each page. + foreach (Page page in viewInfo.Pages) + { + Console.WriteLine($"Page: {page.Number}; Width: {page.Width}, pixels"); + Console.WriteLine($"Page: {page.Number}; Height: {page.Height}, pixels"); + } +} +``` +{{< /tab >}} +{{< /tabs >}} + +The following image shows a sample console output: + +![](/viewer/net/images/how-to-get-page-width-and-height.png) \ No newline at end of file diff --git a/net/developer-guide/retrieving-document-information/how-to-list-and-print-all-supported-file-types.md b/net/developer-guide/retrieving-document-information/how-to-list-and-print-all-supported-file-types.md index 9282c8a..9e9669c 100644 --- a/net/developer-guide/retrieving-document-information/how-to-list-and-print-all-supported-file-types.md +++ b/net/developer-guide/retrieving-document-information/how-to-list-and-print-all-supported-file-types.md @@ -2,7 +2,7 @@ id: how-to-list-and-print-all-supported-file-types url: viewer/net/how-to-list-and-print-all-supported-file-types title: List and print all supported file types -weight: 5 +weight: 4 description: "This article explains how to list and print file types supported by GroupDocs.Viewer for .NET" productName: GroupDocs.Viewer for .NET hideChildren: False diff --git a/net/images/how-to-get-page-width-and-height.png b/net/images/how-to-get-page-width-and-height.png new file mode 100644 index 0000000000000000000000000000000000000000..603dd5c46c8c42555c04024c7c080f6d02a4f35c GIT binary patch literal 16477 zcmb8W1zc2L+wYBuijo2%rL?4UhjfROfPm5sQbUglNP{#(N(e|w4bsw`149fU-9rp9 zNX)xO@B6&xf1h)n=NvxDp1s$ewf0_dUEk|>Ey6U_6&~Dsd=Cc)=Yf)<>`NS+8$W^1 zO?R#Xzfr#e)p2mH1>4HVXe!CbJaKV#wz74w#KB>S^^X--Y?q?yG}W$=W4-68Nz|*E z!5$heq)Zy|CcB!{(BpaC5nd`E!!yq4kM^ytF`Y$$5mjaQWgnlQuPtpY0`j83JqO*rjPb>H(P zHvVE#v%6=GD9gf`xBjJU|GS_6%}M-`oi-lzwI;;RP7m$))A#+}i)&8!GP4XY zE_YoN4cu^WIO(zfuX%ly^aL*Ax+|&4;jZ5%yu-^r;@~?3T%vH7d*v?U?C5Ceyk>UiOf{+WGns#z((NQ|Xf*`GeajOb zIJ_=-S^!${7=F+ualHm_w@dfOp&VCV5?)sa%aZ&<{un(8P4l(v{v0}|GmoMo)08i` zHgcPCT)Owk(CVL!(d=u3mhivcd6S27LXT8Ugx5v!n zW5IGbEDT9(5j*Q&h?Th5m-$E@!Jy=UAp>3lht>WC3HFGCp6tUcDA4)`L8t1NC}ufo zDLN&)ZTNta_h3oP*>G54Vu4^B8-0vv9^?etNWt!4P23 zrl87v$<4E6+N*v3Y9VZKA~%JYuGT@rUooJ|7IE+u)ivz9;54#dJF=I&SZonDVZ?2RcHU{w zq}l^Z_#DRZZDfdol9G}*O`9Xl@lyLbI&Kox)Yh8*aJg1mfm>$W;JGtZfm$EVeTFm1 zHKnk9-9pb#A$Yy59VG<5ujshs*8^KV7{}{xdaLdR7*f ziAP=5Y&bLYy8_1Q(IWChHAk0?ljX`U7}-LGa}iTtR+GWcUZ#2 z)Z`7&ZxBa>s#eD+M|0ZEnk5QLb6#K8Z7oVrGP(lj$n!^TS&{z+zOxf78z7t`kRfQ93&~IVCk79pa8;`lgUDtM9auj<(Ft&-W*DIXgMc*L&F4 zP9EpdUWSGOJx)11d^Xw>QxD7!lV-oV>7_bmjT4p+MNLiq=H}*a-)1j14VYIZuYc5E z>_|^Z5%SndSm)Du`1Ko)Tk39y82IV}cqW3rs!j4PU{SL7AHGf?m0L6)z{A4>dVR0? zyv)nLbsr^RXDj^1BMP&_jGg31fw%+#m#fLXwBnOwQkec)jIyjk43tLvci$<#%J7ae zEoNI169e|XXmG}Cj@Dw1xLPpK71Ji4qXzw%fME=j$+_tm-qj_4z$lxvy5!>K@1GGP zPCHB4;cwtvM;RvyLIRyYldx9_E6^}XszHEc8%x7un!00X`zs^4Oaq*twYB8d7W@{y z=N|FXI?QXOMzu3DGx&YK7}W=oA;S?oNV_kK+(+}W!#ei&aEYjGMJ>bwj*c1zli;Pm zKbcY^ju2>`j1dRNS3LK|v6FLs0+T)p@ zF*}dwcc=9}lZ2^cPS#|m=+YCXr*r~Fso@=?hU&1Ou&MI_QCrLh>dX{If|#Y%eM$1k zRbhN_>taL^^6fK|IX@Fwu~UatiDxv!o!v4M5r?C>3f_~A4Abo2eYyGW)=~MAiBFP9 zVb(yH<%UwQ_|aCRQH;Xe3fzh3Wfix0X%pFpzMd3gqbP{AKOTx2;I@H^TVU2G4z ziD1d*72C$gpEdN{WrMGsq}W@K#Gl_+C9}d1x(Z%eQ4o0|NtF zdwaH8Z$YP7uag}L(^yJ|^mF}DFfU0t7i z!#TLP8qPZjzE7I?4jQx5@-DAWc60=xALB>{ngEmeU5j7lCh3qphM5UW)!mMtp3>lM z7EV8Xk>F0=kHAC;&fD~a8ANu^I>n&Uq^|bLn}7F-OQVYjXeD-_h_0@#Sb7CCa`wl& zKIO-;T z?Fe*K&QX3iiF<|-2VK=V;9TzbDrD}uu#w6UwcI-^4$53Cq*sVepu{QLjCvrUS=;^q zi9~wV?gHaGS!R3=81LCEz)aMiA}iS=7N|}A4&;1&8yac=_nwuKLfCQ@O)a_>00TPM z$-&_V7v)?F*pyw*WvL^K*LrARco?O*2Kb~UQaP$8D@s$DT$%?WyA)4Jxb81yrsmrk zz#+WWvsvllzMgJwRc+gvjC;|uQDVRd=PJb5-RmrJYLB861dL7xE`H-Pv>Q&vWS?WE zS6JzDoxL!`Lpflq7t>l5)@IqhS{hWcO9ot|fDdb1E=ws>_a!`xVq*5fUnEXlNq7rH z?v<*MEqeSJCl>%o|SIunu@Fs8s71UfxDbX_HZQ~wn8Jt?s?@O$Ft?R^Hg z3n#X)bB~jq>91cI--T8;HO)C9vy-NAOj9aP{6`NMmZT7Q7*&*t5wYI$S*fj=-m=fJz&~4c6XcH)}vF3 z>5=?khV5qt%K`5t>%={G9xVg|jw!T3^O$a_DjRK2dSR0Ddf(Vji_;T$Ai;UBWnhV2 z;AMNaZM0k>T8=S`E$E0AsXK`K+LfFeFbPVcvJZriLGr8Dn z>$AKd>w#=b9yaFY?Wj;V@BM{|iPbZX7KenA>L>ZFR1$tEEii4rTRzKCf&h84iqV3c z--H*>90+=K;6)Z3qse~zp*aJdxdE2&KE{?QQm+B0c`Er`>)o#Vhj%r-b70f~Z$-wp+)uHW-^b}xiGm^Nvn8872K8Lpvz?_@SR*0dQ0GW}ofnXc+=!3Ke!_J-d z5U)?+n6*>=OqBlY_j}|-m4;t22a% zK$$cV-4)^NCBBI3N~q|2(EI%lRG^aR7RPp2rMRh!F1c>mn6!~mns2GN&k+kI?r?S+ zMM(@=iNus!=M7qeNiieqBX#}jHWo}X$ z5-hG$Qc`xFI$xOW;HUTlBT>nY;{4@^T&p{j;0R!NiA>ZU4or1bmiJ1eg~C%u2D-<9 zTEw&_@p~(Gz~k|t&ndKWU$=B8eFBY74-AlvCt$O~LOCj~?yx#aW+vKlW1y`-Bw$b1 z34#R#1kgP8;@tLa&KK$#BCEX*XJ%)Q8f7aGtb*eJFflVRp`BIaoA`|r&OnoZ8DJHw zyIx2r-rzlav7l2SadZ_WReR5tG9YDUC;!&{}_O=+gm(bv8o>WF~$LU&6`O93;5 zIDx~HjJuN#s*7BQKZ)J_Xl!hZ+?OFaaq9gnM^(Hm+EyOH&&X6SgSQko=en@z^xgw- zYGGk_xk=jN6OBwq1EEmplJh`;Miw$}^Wt?p8o}x}=~?*z=|$7>Ji#|}Bi~3TVB)YR zmY&o^eU%^r@auDLOP9N2P~A(&x5MYvi!wYw5cEvqiMYAWgF4}A_U#C+W}7#RL8&H; zE5bK+cX!Qfw*b3uryoI*ECwsioRrW|t(}!EEqDCYaRfH2x3r*<3>Z+bi=h_nq9v<4 zuT)`X0%5K$Pfk1oP`v~2huZN^#`~x;dXz{6kw`a=?1LgsD(8vhrGQF#XXpv8x zXtsxm8Ulhn+7G`rHC4(5`mM<0SV&(813Y6P2`u0*H3+1bTAxFNf525V+Ks-1#HANU> z@vg*wJw68g@1D+F)V5c0NKd&sZ&M4)zVN*R3`h*E5D+AnWu_#Q)A}s7-7-iL z*VYRoXP4}LNlhO68-E4}pOY^voSmIZ$ycdOQm>8j>Ss$F1>7E4@INi7y^O-3LJF>S zYBIB^cD=V_u2v-dFbi1{hXr6C^if6WB-8-`&3J0_GyuAdCMH_gUtLJK$e!+ z>*(lcrdwiE>*NT~0&W}z*`EeCdB{k4>19yNaTK`%e+wLUJwu*n!ug2Z zWJtVfT<-^~7pswRy?dC((`^c8wo|#`szI+^28_p-v;JkL>$3ppggaL*`0k0Hu9Vli z2-3p`6(Lz!Ak(|Vcz1pjyKy1RWDXATfgr&hqu2P}+bn+x_haVzveU~{W?baaCM+=` z|KObVlzEAaHT>{sQ#*602c%XavFMcY%D4utxZkLxeet0P@r5Nkt*QGoG!&3sUY4mk zSD1H4J32Y(QCBv(ZxVx9_K?vjVn0#Q9qi!dSMT-*IBZrWa&3AXUI4K&ak+-X@DGuF zSCULxpCT8{n!{eYE0YZL>#6wgK3b!&<2Y}gUO<1~GHu=w_V%V(SN9xQhYZz1SGd?*mu?`*nPl#1!R24OQd;8$J+qF;Rv{ zXYI@v2L;g2K%w-QcfaNU-!<8i4~NTy;Pd<8J`dC~cUE*^yRJ55T_cg60w|Tfc8`di zfcnvdJXkUCXY106R7_NqQe4m)_8f;LWL=8fr1!{_`v&&(*Vl=UOxO=Ng}m>(p8OFI zr5^kh5^=`Kq|6Ebh?ieJ{S`5B0GW#W&L3G*Q|7O{iDP+VBW`){QP6E{EiBYh^soPX zD&%<2Ng+dD^!GBn50k~-Z-Z4zalBf^01MC?&m3jUWI}fnd+DE2DbBT{2-TP4=%d+L zcd;Brn+Hd?fP0?2|HSGu6r7^UP}S@vt}9v6wZ68N@Baz(@(O0NGPe;iBkiUXraDZj zs_^hGw+Qg=5hXQ*xHr2oSAC)gy1)-j5J;~D{HP^JysEt!`$jB8Qpr#H_g*))RckVdCGZi*-{(+L)^PDs zwQkT!a(-u-SU6UxuYd0V;%KFS3nF~x>CwkiD)3G_257#5+aiCnB=CfJsobH!U+Zlz z6hd{MVeWQoGLUHb*-s`V*+@g7EKDC7PJHo;KBJepX7P>daLE1bhg9m@k)iDL+*M>_ zHO6=IL>qiU!{uulL@n&*y=v806(W4)yZ9hIeGF#bN^D7DbL6|+qc)fAI8!~c40pP{ zc!4MXIe%+}4mNN((Tzdwy(C|a=9G(5MVv@fGWYXXnTu`wg-r|$BMXPdnh zY1P!qq7m}BRMm_nvGmyo29O|0PU0&*`x#{hoy9Al5NJ-*dg0JDQ zHxK#g1T5dSkN-$P|2#st)e{cm%XXF~CiI|FU@1wlVRB7uMJ*VtB!@bXi|i|O6We)J(rFe-W*6vZo|l`jvu&<=s_fAqxQLt@e&Tk+>X|BP7!xUeUYbn|QQtOv+A5s{0fdL*%$Vc! z?f5W7`0v1)-55vf_`qBP+Plmi<z#U+M|rotxKhEC#)hW$&<8P*i5<2<=f^ zkt9@qL`Gx)+5f3IR?W!BlizDWD)IcMWUT2&W_)@!H^JJ5Y!m1RWJvKJC z25=9oT%QBA-M-yMQLM8vi1<*VO1D!T2uqNa_4FLKZHknWm2a~x#x@xlp4$WPJ^r(! z;2jR03Rsdwy^*n*j|hzxDTr2IFDx{;E6}N@tT6VVA}0^Rqhj-99{=J?U#&1+)De0U z4(Ex6OTiLroTlA9pDRp}b|Gj`?PgW_K+a z9Ucd+PcwKhA8eG`ms`XM5a$c-STb^1LxE-17I>V{=(~Goz%l zAp%1h7%0+KRbzOw5yE8c7NPhaFwkDtuG^$R^%q&fFUE_j^dAvT3nVH(uNhp4%-$Rj zWwIT}Gx_qW)j#6-)UeGl(#)xI~TUlb^KdU^-S* z%`3#Ihiioei;gmmUAhA@ByYl2Ofj6d0L=BDnfpZRmajY zb}nKfrSKg2rKe2tQ%~iSxJe>9(?QGE19O$KXY`R}FBt62my2Gms_|HRu55(V1lv z>Bf52r-?c#DQS(PtA|2M1}w_Po#}^6yk0)JV1My)8Rq8Z20Kvn_njH#XzY2E#af%V znr72Cz5kk%wEtDd(KC?B1#LBH5^Ywrf==gLPbU?)2Aj*o&wDKYh1`0*G=kjHlab%I zGweRJ+aiLkST=IgR)f9Ae%?wAF%-@8d)>Y3h!1f!4*>;furwzXeamqAn6^vz_~Z z8~XV|r~OW~Ba`ISO8shdxXs2MRQL>=u<2%gvi)Z!`CJ7ZP zo$2*f>RR=Ncf;=0HOO;-Z4uLj+KaSC* zw!*w&$`>L4o!-Zly{?m%-E{X^?_W9_k*8x|Q{3Rf}Gxvnl&|Cg$ILS-ZMs2zg~k)ZN;A z9Q;|z;ck^R7VjF-*Z7E5bKU~5bL_DeF%`>O*JZ(q2=drw?@tL+Gn0tO-@r3L652ij zZg#=p6cnV^8u@fSPd*{4@{$hbb_*6ut*(y`+&@SxrP5klMWd~~Oy7FLr$T>R(a)!B zQOio=QFt*TP0m$j#xT|XooCngQ1<2doh2lnw4aX;XBkqDKsgRr->~2f7p(VEiTXum z*7Kv@Izu;p4v8HCueUk_AAljqh|r&}dsI(zhDz{$UNol^H%3B51B3VxLg4~cxq;Kh zuV3gFu*0^>_>UFe$}6ZRLGr7b%l0*23cX=aqCWNeekNjn`nwG}xbo)7CiGFW2T(V@ zkn_Fn_U%|V@7NyZEJ=o(cydXvy`MXpE<&ZekRBf5u*hKi`H6hE1sy#JKEciFAEcf< ze-5~ISq9(ACm)wZ=y`bLEBfjP>;Le0;OFmab7;Xrc3tXZ?3Fi0$ULSVK4XwsXj=MHiic3aZgMlR*3{ZzWHBo!{wRe~iYD25Wn#@-Qa z_XS1^21%!#h)?KAVREL#XpbLMv=PthasepGrv~K#xd9m!QKMTh=LLBGMcI~0PB1rrmpqKk14LRi4GaoW1<>7+d&qk zF)RILHkqOJYf4%l+s%#90l=R`UqcOn9`jN&{6mO6;%;U4!7n>bc&Q336EXdK=Jr1++TtE><%6j!| z;sdlO>j=VuCoaqCafSg3=4nwW0;VH-+hVBa77{d4uvE^+W3 zk@~QKK$w#pq$5rwb6C{rr<0z&5_3SaU_*>>W$@11e#MR);d{|Bo2tM>En*W(pkwx< zas0?KVrVoE*TlMISBa{Hbw_!2STg(({T@f_P(xbx5w-ba7|cz?AnBd6m8(E)=uN#i>{e!U5v4g%yz({VBD1&fu} z7+(hq_AeCc*!HG=A5rX`z6P2a2l$Jq;);l|#YO4m$9BLZl$Ke<2Y%QEf}V)bNLg$+ zC2t>&$H*@sj`cS&EFKq{p)oR+;mMT|Yp&lO4S({iwOF6ycovHW z^aoa?Jm;F#UN)xypi@*8y}jx4&U3!rOUp|CWtINnH5k;!3W(-Ixy5&tP`?-*tMVPK z6-X}KM9h6s9l>RL)IUk=ioaIYs1h)*(YgIaulr1Dd#s9ZY5J-<`FweuIW>(8tEV5} zN)ClHam@`onO|)yOEzseS{UbN!|Ky~-X#@4Y;4zhuZ}6x;3Edc8Gyl4rNn1aum^Id zCu?n=6T=RcOYKZo3bd+u-p)IzYvFT<%PnT-#pKp+v4$3ETMcknF7Y7E&=df4-<^1V z9f%xaBCa2-a_uAhaGdn}rw$D7>nJRS zZ}}mu3?vN4tdk!E^Cs5jBJ-hx4tzV)Dgml|5^~nu{L56<8OD7>G|KyG4|7rBPbJDb z^zZx#BVSc~BwMMstYw^?W)|i+XJH`EM1&t{b?^XdI)m~EBriUP1{_3~?)Vvq(atCa zbqY_Vr~Yu|&6hy&^sX{ppH;vuV>~TU>!7&iPrYDw0UZ)so(3H4{-M|Jqs@3`jd1Xl zAQ&Z>h}q}D9CAf~y^gnZi|BFd9rD^1e3w6b(@_lH1+Z$xpdw;$A{B6rFpHTzGZ!u? z6{M22@bpO+Qalc*4`;uiMhmZU7aM{`hHJkF8@@Zn_o66I*6Y%&*^<#3GOvJJ$atDl z6?D_AShz?T%UIVpKK07A^YKt^Z4V@y(7Q4P7cMr{HkliAsXA0XD<~Fv!%;_`u{!W7 zniso0@Whzj?F-=G02imMy)N}fgloJ{`1ivTY%qp{Geuo$1DIL>Ql_aS1E{XK^Sb6s zJf$azU{V`5l`#bhq^bb;dN~J83oxmek! z1%Oqahj@a133RI0^!1GptnIYEsipOi*3W%4Bc7QnVBdr_RrHB(b)!6)r4^I5FhDbM z)D$p&1Nf)F-mWMgPtRjQ(!ub_xu@Ewt_BZQNyAxQKw6R2VZae$EhKt+{$lDmKPQs}7Q;9@s%~h#vj@0NVvR4~(!xw@FMP|Xw~s+dc#@ffV#y4M zd*Ktw@K@l^mA=HhC@7%603b%CBTtuAtzE-4j!qwH^nP}s(IHDMiR)+ys8ans3(Je5 zcL2oy`E8f6?bpP3VuV=_bHA!a3~r|jLn(Q8kn|&>KZ;rB|Eic_am6$kb@IxXD{2+- zVt!QO=pQjDWQYU1PDO(kuxl&GUaq5`D@P-(`|940)zYw(09|z=3rgJ0d8wZ}haCMsp z4Q%qdHB6_VkjKi8WL0VP8J~eet=i7g88NtyXOtW@S-ln%Vb?%+7lYoGE^cFc;mu*b zOL}8Udee_f1%h&Lx~EAb00AA$C@7@Keq%sQaN{p|86CC_L=PPeZ1N61^?dh4tmwRZrWxWCfEV9M)&y6uqr@~?na+Xo%=@zhXM{64s2 z!PLPwZM!XB%Mi=nUkOA)R~^4>l0sem{8cp;;M+#h?T^A-Bw~7?gE|1~aN30)I*3v} z0I7ZD_qS`zN>P=URz&TCN0Mp*LW>tY4-}s+QIdt)0t)!SE?}DWKi(Wc(5?S9Nv!&J zh!~Xanp|%9FB%*{*H^^UM*uprxhk#n3O(p}Blwev!@oiH>-B|2b+u7c!cfO($EVGm zmki$;vJ6h!c&Tlh_R`}FkIwM38J-zu=-8caV&uGoGG&pGgH9tS!7$&3W+T z5?+s0JMs!YG?_MezCS-;7*fWarD8LlZ)o3-nE9}8%Ji+!x|%{ zh3f5t@jqThM#@HqA`kEQbb=VR?ti}bE*0jEo6hh}On4P}1s7Yf-799hYA|`ZeDPkX zB-ovU+Vmiy(rMs@y;Z!G0EAtC4-h?Z@IzAz4xxJbN#tRn402lZ%l~(xnxXjzJS8B> z<8BzwK~MB(Q14FmA<1(Mh4IIFu>@ezPv;aApekU~#&pB&UjO#XjDSGsDu09`yemDN zBK&a{tFSpO5mCiRXwkSNzxy1AK{b_Jl*V>sPoL_V@}`l*}wyD(QNWk{lKKzSyVv>w z{UK48uIs3pnQVpM`JbS-Hz3-^{LoZoLQhLbXkh(m0z^Wvz!$!#UTOU5R_=V*V@CH5d-c#O{gepH>bK;lfj zQMBcxRPes~^r}~}BOS`huU!k6dgPSj1mi=2%HsG_1Ao-q!jC`;6mo%%-%b*B zwKC{prVrk-mrY0;cr;XA;&>3X245YFz71&hMFJP_pFEzH`my1{9)syQ?lr{3q^_VS z!>ci9l~zGp7KsN_n@qet<6}RT^l$U8e8=LFEGfcVyb3iV+s+ZHbW}8t)lxm!-vW@x z_r^N8vMScKIj%LYoWV-zrF{CqR*Emi3NdZd_9U+6F~Q6|W_9+8Qd)2Ow;$!PB8c+u z{dR(|4e}Or=TLGdDmzN{ReGM<%kcy5j9%Z^->=!2b?Xnf9!qE7YLub^P@|^9Raof2 znFO{mXNh@_6@E2t@=4t4`M^opcc;9yE-*AM@5ucW)VES4b(kqX%$hZ50g7n-(9#@= zviN-&a7hS!`Aa=qo}&kvp`;t`CKonb2B6>;boMnHi3-P(&{S19+vb0_-Q_|*>^f1m14 zK}{w6&}U5$(|l)|66Ib%Me6RB9(X422*4`)Ori96TwWxQewf^@ye4t zZ0Mz($k75o^BzR@S#V-iriuy32jkQ)vT+H&dRz**7T~M>0pv{O&-e{$bL2nCJdU@e zWnP`%#b!d^lRtmYxwz5`;xzGIH{0-88P;BF4b5g$qRtwFyhewy^NNd4kkTj%EO1U) zdAdJuh+x~;O0YDXtD#JcZHtU{GPf7mMpZ)r@i>!UEqMfx=MZpXt~Xe>iA{=R9YKvZ8;;x)r#Ahq05Lx%bCEPvgba6uy`u-k4yJz67 z5PnEcPf$B>9iW8!_k&1o6ZK}YhyMC86dI}8#cC*RXw4IA$v`aEf>l3l)Dz{usPUfa z(}FII50`p}{v<_{0A4<9J-5CWvqSrr_n0{LtFQfAfa62Vsg?&Md5V-;@rfp0!#b1l&LmGAbq#rOATwx;*3o;U+^|aFxP;aBeWjhLLPA z6-s<}x9eaqt?f^)bc7ne2jI_7I)M-ie~XYN?5L6Ji_>mnSu?iecyH$CL0MVbx|5z}4P#j7?=GhT zJo{KkQs(1t$G2*JBc2LEDiq;kfD~M$7?)QVi%uBATI$1t;=JhX$P!idnpay+%xP3q zgUA3oHESC?U(j=G64k!&|4*WxMn>B5#KyA74nNpHZtl);@Tzrd1L=_WYdW?!4gc`| z0mEp!Z!L=cZPL3-{g(8>gBJ=)THP=a^X$+#l~ib+taKzG224@RYmZ}P`isKMJlQTj zZv;9kCpv~S=~tQ0yAy2momiKK*rd6APC-N=hc`3Lni6mhHCY4cf~xFZIvgkMti4Me zP+*NWfNkQ{?Y-9M8;HJLdG=F1zVpMFnMZA)W7@au=TR}XsxU~tXtx4gI+*UMQeO}7 z&Wihv^DVjQf)DqiFVNgT*3=^2YN8pd+9hoKDCNaQ8E#^JP@YAbA#0HSoS4$fbBJnE z>?2nie8q5LDw^%KQ{auIv=5`DvH%PmRADM_bc@?qJdS}4?Y|Wed8lTE7qf%Sp`w?O z_&}mxwcb1&SXNz6;zaAidMI|Pd8F0uBL?KnDT-O_;n?6w>do`I_LX~?l27o-1pG)l zFZQeqCJe{kTDAd-9(<)ZW#E-u);F-2)0&zDN9){0tW$kVyME4)=gs$}!4}B=$6-Q;BRds4Y~-2aOTSFerd@^1+)km&FJ z3W()(rsJ(0Qa$dT6mGr@Zt*6Lrq&dtU4ND@g$KZP>X4VXoP@STN$lN9w>Ya^1VpN- zs5G_#2{EwB9uT0o{hgeAiy}}Yd(=JG#-=A=`)T3`)o6SsQhwL6mhzZ`^hf=Q_oK|P zJ8Zt3-Pj1f20M=oE!ocUd!6#E{hQY3nD6Hlv6co5>(<USfmVgOY9bu57H@t~#jgZB)$GA0aCnmjh(?2}$U82?+`&<^eXuI0WB$CfRc6F6+3z?RW*Mx@b~P zOe(pH7gZQOzMpSmQWY9{9K&)JjFkwG@nJR|jA>N&9RvvhdEJ8HPatKe{hH<5!Dd}u z9ROqBimOEG=av}mY3vZ$2kRI&5JQ%}9gPCH(dFq8WYSJ!10y5xzcZt=JL2P=fGf4p ztApR$oGcNU1DA6i-Oz0A76%3>p z^>tYO&3*zV`0dRZfp}W5>zpfY7kfY2A_z#E^{83hU)M*l@;)ErXh@@e5Jd7x*U{ZE zmf$CUPNea)?*4zH)AjQZFB&V38UX3eZUbxm(%>?2G*kGfcPC+%{u0~G*^UTThWm5| z#Rr9DBWe{LP^U_E`uIDz@>S?hSm|GSEQB^dQ5JwOF3)E6Oae!Swk0YDb+y;tTraci zSM!tw7a~6WH%i^(n(AWx@|V=YBbM}}SM!tvs$ZpFI%t5v%){Zv4rOqx+QI}2AP@At zX6ULR!ZuX38#U+4fK|+XY1rqISpWgSr=drr1s{pCNb+ny>L`Wn|L*kbS03VNiow@Z zLCRU*z1yMZrjv-}s+%JZ;v+uUS_q9#J|kx`T#T0<-=9a!SFoEi2}~!zbg8~4%|;Bl zTCsOiV3UI9WwF8|z!3*W?d!LH$#f>S@BG#4{;ARZC#U_{IS1@f`$Kd8`@(e>VBQf7p|Zqs0(f sA25T`S4qRQ^*?>gMG*NHgU5e?uTh-^K@NE3qOc`Oa_X{W(r-TgfB2XAmH+?% literal 0 HcmV?d00001