summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-05-23 03:03:21 +0000
committerNorbert Preining <norbert@preining.info>2022-05-23 03:03:21 +0000
commit989493fc0cf04ec736a261d39eee40e1d7bdf4be (patch)
treea277a139c974ad3d3703fa42439cb0da70de6f89 /macros
parentfcedb80554137a681150f48c9a1ca20dbfb2e83a (diff)
CTAN sync 202205230303
Diffstat (limited to 'macros')
-rw-r--r--macros/latex/contrib/functional/functional.pdf7750
-rw-r--r--macros/latex/contrib/functional/functional.sty1277
-rw-r--r--macros/latex/contrib/functional/functional.tex4112
-rw-r--r--macros/latex/contrib/pdfpages/pdfpages.dtx26
-rw-r--r--macros/latex/contrib/pdfpages/pdfpages.pdfbin301209 -> 300782 bytes
-rw-r--r--macros/latex/required/babel/base/README.md23
-rw-r--r--macros/latex/required/babel/base/babel.dtx255
-rw-r--r--macros/latex/required/babel/base/babel.ins2
-rw-r--r--macros/latex/required/babel/base/babel.pdfbin857732 -> 861855 bytes
-rw-r--r--macros/latex/required/babel/base/bbcompat.dtx2
-rw-r--r--macros/xetex/latex/bidi/README4
-rw-r--r--macros/xetex/latex/bidi/bidi-doc-intro.ltx2
-rw-r--r--macros/xetex/latex/bidi/bidi-doc-title.ltx4
-rw-r--r--macros/xetex/latex/bidi/bidi-doc.ltx2
-rw-r--r--macros/xetex/latex/bidi/bidi-doc.pdfbin178059 -> 178054 bytes
-rw-r--r--macros/xetex/latex/bidi/bidi.dtx2142
-rw-r--r--macros/xetex/latex/bidi/bidi.pdfbin3124343 -> 3139075 bytes
-rw-r--r--macros/xetex/latex/xepersian/README4
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc-intro.ltx2
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc-title.ltx4
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc.ltx2
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc.pdfbin243617 -> 243585 bytes
-rw-r--r--macros/xetex/latex/xepersian/xepersian.dtx142
-rw-r--r--macros/xetex/latex/xepersian/xepersian.pdfbin762845 -> 772104 bytes
24 files changed, 8207 insertions, 7548 deletions
diff --git a/macros/latex/contrib/functional/functional.pdf b/macros/latex/contrib/functional/functional.pdf
index b154fa20cc..7cedd591e7 100644
--- a/macros/latex/contrib/functional/functional.pdf
+++ b/macros/latex/contrib/functional/functional.pdf
@@ -1026,11 +1026,15 @@ endobj
<< /S /GoTo /D [ 586 0 R /Fit ] >>
endobj
589 0 obj
-<< /Filter /FlateDecode /Length 1112 >>
+<< /Filter /FlateDecode /Length 1109 >>
stream
-xڕXɎ7+CE@0 D7ç%sH.un.W~(̃vبl`{udi(ۤf 7cBܣ1h*?Ce~w z]p'bEc?=շf|!Utdňwgrew86;.ʮ<+(ڊumHb#WMB$"]gDRd^tN@27#Ё|t902F>ӖD0e/ʚWzN-PdoɉQK6QaړM襆UAXP(u-Hڭw?>DB; ^ͅ\G|M@,rQmf~wIH.wA~"QBG!Y~&kI]yt_k-8NIt`MJa<r
-]AjiUQ;QK ]"HY38WOicƱ3mI޶!Ry
-koSEWkӗo4wY@'Slw+^+GaSN%+3.(rA(bwkMatzYǰztLy٤"he@7u[qhVm9>+߅399@po2S\_ի11x :ؚrN~lK?(l
+xڕXn8WLh4`#L߂f\Crߟb7Ilw KR|^-j+](vRw tqF -(K8]|9+e5^J-s瓒*'?뻘O Z&{8 s9 /Xџ[
+6Hު3hE3YYl,'sޕ1eeuVmY%3BQ*2etVx45! $Я |`y8ȂY{\v+yn|EXT {EaW.2RB%2Œ
+@&en69"kp} 4~D8
+2/}v
+|Fe0b O_Ŀx}Y tR
+VHoSs6 $I:,gǿnj8_Vq**˽=YY2kZ.I)D7+CCmSU`zUzSpoۻt3Jɦ$ҭJT2 `#-JɔPՏ/$df`?Kg.yoYr6']:x(nuпva[%Yjkhᑞ}]yZǷZa2wqezN\/Oֺsm yv^VQnEKEQf+.؇f}iOۣhvoy3,7.9͜Sr4Lx:Jj3a 5&ݳ" cqVj*v-6K]UD
+pS=LΑ{|Lm9nJ2LxbC9J S~%<w Uc+ #qDf:!:>Rm"UP>>t%6/=+2z9-gZ؞ 2a+zO;0Ի̶W@SF6yjѹ1z>T#i hn.6P]-O}BwP6wEu{`e).I`K/y*tfp٤eH=mpN{<gD_"Rl
endstream
endobj
586 0 obj
@@ -1484,14 +1488,18 @@ endobj
767 0 obj
<< /Filter /FlateDecode /Length 1907 >>
stream
-xɎ6@f*5= ǠoA)!$͙Lu0,[Ţkc׉>-O\=b$H~zN-IiC(3~D)\(RR)E%;퐉^A=W8"J洽i<שo_P ]2bH8?~Ý 3];9cʊuejb"i4xUM[iA<.jvgJg΂!8 0pQek[қ
-j;@Jw1w;G}@N7XV
-
-rW AD:b+?ge;d2r[;.ŀĠ<./t|o!,0{tqQʆO0dLfOX3.{ 9u
-I?r-<fCtDOm<ɰfpΓ2-ňRl]cku.g{?KE$60$ӞO.g-rÄup34+g袦V6mR{tv1yo1+
-XqE'p
-ZfCh˘^s[2H,z5׆lI/G.C+Ɉja?˶KX`H5bSbQ걶`%ש [+Vgbt}-Qɑ< +3|hB+pkhpt;ϲFj0S+IȭwH_X' v %N?F)O<t dHrFuܷu[ժυ`Q*e3"ᙻLڧJ],SruD 7 t#ۑG{'-+E4Xt?Npy,u l[&bS˻862:C#Gz [`<z] ]RdR#ꙑ-BXJgUP~߉Ӗ#o,N]=!srdV#"cd=c?H^# ʾy3)Kꫤn=")N;-Gin(+{,)t& R3U{ /wQu 3љ\d4HKlS,'b:#D#|S&[fUጒLǹN;apuQ>GjFփ7f>`$k"ϭ#<?m丮EkR|>W/KY[(F'0~-sC,x&A:f VCw05a}$8-I`HؙFb^az(鼲1xxpbO(D1^S
-H`k\9,1yfԔԇa 64'9ę.<d9R Q߷g`fPOLČ܎t&W"V<fF-ag$>#v|v&dgHfGG{'󔀊PgmINcōZG[pPO
+xɎ6@aHWhq1[kr%WqghEŢkcׂO/7->s
+3p B#Q` S F Z^zB(&b6,5ՑFj';i ő28"53͜3U¤C /WZt7)) Vbi}WSSP ַQ(T7z~VaG85?ER_ssaVlz9XTvfs juқEwORb xW˽' ˽S(
+Oh9曳mSJ^K6k&-f$x[^+nvUQKQt^ԟvOg3
+-
+%6e[H`!э=I0$Vޟ=:wy<$ARu}\5z>6v~ I.MIݩ]Z
+:Wq.g#gࢦyV6mR{tv1yo!+DXq't
+ZfC)˘-/\T$c2o-׆dM/
+X@%G^5̮̄u_
+a6nflg^{5ݩs
+$"`Uhs|$[|~`=wuXLS审>則liLVNU(nWϔB6Zu(Y%rZ$&1sL
+Dh7KT3rZH<^fdHIvމbˊe,9܏lc=.d-sDW8eLƐH-y
+߳&FqߥO畝 ӵ8Ж PsA>#Ƅ^gzK) #aα5g,pCmv)+OMya [T1ؐC2ޱsMT*}
endstream
endobj
766 0 obj
@@ -1606,28 +1614,22 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F35 638 0 R /F48 640 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
772 0 obj
-<< /Filter /FlateDecode /Length 3530 >>
-stream
-x\;#W0ƻjkWU$_R$[J|h
-Vo__ ,.?N?pؿ}yw
-<߾<S$8y
-ZQRk4Qb(ZZfPdNL
-$bBk&{Z.߹cpls5D#̋acܨMR"5$j0u,$(&pV3`똂QhhŌ7'KKÞ ˊ\:U ;B}\ 8C^b_Njxoe:a+Wan^
-(XۥrdV9K1:I=xA1LOKh|K'|ƒt݀n[ʹ5Ka~'ޢ9dіGNV;YcY B9Ϻ71\k6qD 3w9D=cՅ~2I.2]ipIҔzl&goI}I?`yH@?tha}u6[wX[[p6@W[T}gS߱8Nhq=ɠ30ГʩiAށ[!.)Sip)6W; xGbЛå`%{5ݫ&;;PǃB}l3պyb3EW2MG@nE%/S^9"B3=E
-JV72}>C kLPL'$xAWbhU"c@0V53H+է9%jlM0
-^
-yQ%?S##Jos+4 ۖNe-ف oɘ.CN{M\(l^%%.X&%:, yK} IsJ; iMT ($y2041CεI\/jR ZN+DmRKRGy5'c9 D̾
-`$ PC=QC0jYM[Au!(s9Ar{Qq5Yʡݟ CژbBoS9d^dM$_U j|VPG(2e2U|sQGt=X jPM*wD/7~ bqWTN_~JW
-F^bd;]veB} Oh.S 5*d^JHbXQPm< LYa˛ox69\(gFS(V9 ?5@wm5/=_7ZZ!bWp5ȟ;$ *>wgo0V0o{&΋;둍u!gnܩP"vaL)lzk4rEF{j+1HrI2.\N
-u,u=TFX{PJx5A3#띫0aѐlRxhZ2kY:
-LmTQBvӗ]\L(e3x7G&ðJ#ܲB&l˅YI1s F7σu/M8 {jmԺ/CQXU^z$ _X:FxfaiEW˺Apw׽Fz*Hl1uc,cn[feI
-Vjki: ҭueM\j'Ac$n2 l Zݮu{u<6<xIeE0e2.qYx/exƘo:aiZ.DoDGUfݪ˅=c:rM8?qHjgxNp7y_z8^0SHG<&kY :(E'TSE(˩b" Aڹ}]Ɵbb!n գ\:FCTftO\n:@~LriiqÎ^ oŢóa}
-Joq
-g >v'\hDh t0ޛF
-@axK>vBIous4Rp1F;zqHOqěSʽin㽩 5'[S
-n Z*ImTt9'-RE]T8bG|Ft
-99C7H.,:z^Sp!$0s쓦z5I̷lQ"Wl 8'}>?&$~͜}*bo&)ha6=wb#
-Wuw& GK*FxLrӖTQ@w۵{),-_4ID_]ۚ'94լbIٚPNڔs-jRޓ},M3U-n Aڮ&Sڀz>V-T.Qd|7z]5,v68;6ϤTv&06`A:b *rmtf<]}KӒZ18jrMWNnLyw&RWYe2t5t|pnSo\H ̚T-yBgU;RA+̈́'L`<2^
+<< /Filter /FlateDecode /Length 3542 >>
+stream
+x\;#W0n<(zULe*E؉3CrxZF&?q^x{w'LkPpoI gV듶Pӗ_^9Ϝ;{Ε\; }Bh_Xl^L)UsPg% ї~B#$CgTZ3
+zOٰODE56$=LL^
+0AT1V|=IPqIBs-Ir 5f5C/K6?s7,o#Lviص4CzO_y4I PS5h9 M޲U!'Q0jgqFwS?&Oᦱ~w%8N}}A:&Ip7MSOʖIVIVńÓ^Y@W@9?'s8*@0UQnd# ZQTk2Ab$jLlN
+{ĄR {Zڴܱ9S8[׹ll =WFx 4˸QV"U4Q :@XJ$%ͪLf7"R%6F$i0 qs@>L {vQ0zUUwŒPWB)N~Kb/@lm䀆YC\QL{1`.]<#ȌR7sDzStB:e%K4E>]4v7F1F1RzIh<''Yvlі3ҖG4#Ǭ'nk<u7LcF$!hWn Ngx*t(գt @_Y <=>g=B߻%}Ƣ} 1Ƣ-@$L?th`#}ugۺk݃lzP̈xB
+𩹉"HWQr%Ekzj*x.txOTwq :]rD.(Uv@_S>g`&t{B%ÜagtBVܴcBOQVK1\EJf+*I|Q?#(D[#*kk=TH`
+%Q3Av?=oMx/hK y\wV_JV#)އ b@Vn$K]b91Vl
+{13H:dZMڙ0Gȳuڑ
+ !1666e?,Г1݅Q#8I<wO]\#<٥NWvKI?`Jکբ#nڃr 6|s9B/ھ(*sIʡޟ CܘbBoS9diU_$M5r*&<6{Xe2U|sIG,L$ڡrUwX&#Iח_~oAد\)_
+{
+r9`o $1,1\*M{ƹ`#Wy4i\XmuHWʋk囩oɑn[|%TM_val#!;FPIJGD9 O 볯JFPnYd!
+ ȑ݊UR+UGAd𲬉uQPɃ, Z ݮdӒX{u>:Ai|@
+I
+ߖȑ?B|;O(N"?o7.ްl[Z{:ײ]P{pRGlne/<C,&
+kZ
endstream
endobj
771 0 obj
@@ -1649,20 +1651,14 @@ endobj
<< /Font << /F34 637 0 R /F15 639 0 R /F55 774 0 R /F36 775 0 R /F48 640 0 R /F50 687 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
778 0 obj
-<< /Filter /FlateDecode /Length 3274 >>
-stream
-x\K$ ϯ?DAO
-T@3J3tf*rаfGA?؅ۂK056W J">S+}j.f
-eEF
-.ܳڔ*9c
-}rTX
-1r,#ɋ-o9Ɉ@:9y+ yf>MpԘt1 M1csXB^<+~yԵ}ȋ%y {\z< =yr\R"=1AUk&OY
-{{1^X)lBsln^s]GxtGboݽ@Zpq9 sZ (;N\yQT
--|O~Ruq̀0̊&IFܮ`1i<DqP3øchi0m>X&h6 < 1 u$b^>)'e$1e|א%{>wþv%xm>][Kb.R '0ίUp(/Zb)$K"8z-AB rq>=ܧ5IZd#^" [舘 0-dX1i]d3H\\_O.f [1)E__Z(rU
-=TtlVu&{~i*GTDiWqҲw9ǔUq mw`6k Z5C y/"§!<vwA嚫Klhoq*|YD,Ve՜oFDzJHOg msTY=13kGӉVn?y@2Nm5jc]#gaQFWX^ԉrzBtq΍qP$4S/*TB~I-iy sXh8ְ(9J.C焬_g<QcnKgng/nl]y
-yH*lQK'D'|:e/azlkv ?h4l7hAR[8>
-qْMu.\>=)T o|1ξealerTh+S[G)Pʢ ^5-UkX8M3 ed<ۋJx]4ߔ :GǼӵL1Lds9W:{/GYlY|ʘ#NoWjU]}Uiǫ8VTOrA'8׹Wo[bEԮS׈v
-hjʻyk'. {\mBI*vu=&j5QZfS lƵ{\^=m5A1}$vskkQM7!'.ʫy(-ffyPvG-^07hqlVdkLc*^En16f;4v
+<< /Filter /FlateDecode /Length 3272 >>
+stream
+x\ɒ$ W }計)YB's.}k2ARQ]YIa!
+~~Iû_'΀?=Re+e1̌$!_ y񦮅zɪԭ3PV::6C@ִ #GX쫸vOyЖtC u\Cs])YZpo <Y4C+yߔ"!nUj/5WhҖ߲#u,
+?XxXVK?y5:K ?%QV#Y|1EK"y00NpqMm8s/7R4긒e%h'`ΤݘND^Syuk/DPoՒ.0טKJcRYү<L^x^u!2%?v{fR6[/U>Om.\xk#S=k9㪷0VȪS(Uc@}P]ٮ2^pk2ۋN5VZ9bA}Jt'њV#O
+.YNx6ngHqt5Or9Z X:zsZHGE2H/8xغfRF.H{,M8
+r(,[p|?c+>ӴȰN:qc8AЇP_v_
+ŧPݓ|RJǨo8$)+Ę_&f^l9qU^-rGAl1S7kXhkGb"y o {3͍8na?؊pi*_Eܫ-Ɨ,p>C{ _ٯʼjS1pr ]\ꨱ \+ +ًC r =殅wJZ?t&`? 4
endstream
endobj
777 0 obj
@@ -1678,21 +1674,20 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
782 0 obj
-<< /Filter /FlateDecode /Length 3035 >>
-stream
-x]͎$)S 4I&:W۶jfNsyÚ
-M
-#SMWʡb bɛv'gPgKkZHbsĹh'@x.r 8!yBp)X#5|]@NsFG~o?z)#Q {`QVj5ER P-}3zaJbJzD&
--vkRS;҄NRAQK n
-6'l 橴NOcLcCa(lkn%8a8?xhtltKg8:-IlQoi*X%QOX*&5FyZMw];Дu`-qBK!likʾ[UV]Sv>MYcN&y^h=L[)ߋDGNylX!>Io@8c:[IjAN"u5$RK!B" QҖS[]oVK MrD߰!ǃidb<:n86 B'wQ\>Md$_]UU k<z䨭Nu5_Kȑk\h"GVw
-WL Na(nU-f\ ]j<FܪjU:Zo S^xz2A|]jeFnq`hTˌ|Zq#Ey%<bvFSLjT#ꋧ p<p9/+S[x ?:#շȄtvsw:it0r('[Akug-
-cV'BCw<p@L]0H1pt38Fv=p0kaAylbȹ<~8z# m^?rRC3QkC
-j:Ljh#K6x^}F>V<8fXѧf2Z<hOlm;[ΈdG HХkz9Vo8Ǥ9q߰"]vAlq.[}."E~׽ja$G^ #a$ka$GF6Fr<Z021H}쁎Pטk Ci2΃ ȽOײ?cd_.'h8(
-=! E26|h3ī)~|MO;&ZVΛ{ǟN kćS !-傶Pi4iy1m
-~݅@BG9
-tJu^ 7'Lݲ<\opzT^f3h\L@9KN:d<f> F[ᦵ-p}ͺ!Ԝ9J BG*UCyifVAF]Gʀ!tZD]%/VяBdS iM9u 4&{]ˀ+qF'z|*}Y;5HQZVg AXp,nF3̧yC't`'=K%n8̈́W?RK.
-*t?u%rRWCQtW0ŀY4Iq19$͛3E7%& OI-:')?ʈin`ۢ*Z'}cIg \%Dzzj9Zxʬ: UғS<m~{%*b'O&+O ynLr$[1w}Z6U}'[]m*+Z++kLK@4LMUkWG=Mj9fVa޿YTlV^S$bI?z!AF GZb%&9”8(4Z+6<y8\%&rVԐl7p=m*}7klTgEoY˜'Ԕv{ռ\dP>IpZ77'۵)4D12ՉPݔ 2:FZRۅ|Y޽J%,LTRBb⻹_ϛsi~Υq҉.&KSܰȥŭfYy(2"ttw.-+%Zs%\B|8|Q<s"3;}+pU+*_;>NO{TVTZ˽9t ;~C۰a-
-0V9sFEiS
+<< /Filter /FlateDecode /Length 3060 >>
+stream
+x]M6ϯU 4;h{Rd[0aǔQ#hᯃ<vCig|S<"8w!
+R,%|R Y;
+!Ы0)c"^\̍,ojމ` ђCkZ/"s ıi/@.M<QX*<!d834  kEWn.Ӝ=Y'gի'@pȽe$
+[8jY H'mt'p~ ZHup#~M\R۸(\IF˕,F"ۄ0x"bj*jkQ߰3r,5ȟZX|xy+pɏQ-
+;*@kԴfB5?D
+#@L"Zi4+:*Mo*z .-k7FT*`/ھSm>$`
+uRϾˀҨ\a:qtK3;= eaAu/ziD8V͋0>6R=}EeTUEiﲲXwJIDn01:*Շe5p5*@-8}W#x.6i2}"6ȐS)/!VX^zH:)-cXeiIz,eg5%jwiH+Շ+D-+׷_Ju$RD[&!iv&R ;M^lέ^#t AύĄ!VVĄlx5rGxn(Rjv]
+pbR+Ե>bҊvVܔA|bHu8oU#AF"HPخ~(&:Z0[uWM<*L|.헻 k)".lE
+N n9A"5M uutS<Ϭ}V/6%MʝKOO^™_xFND+Ж& HT׷ f,9x:GesDk"s u6R<(Xoks_#&P/ r]RRDLW[fHilRn+A+5x!B]BJu xjO3#1
+9tgHKbYNrUP˟FNbt(<j>UL) Ra3Fel p#f򴥆Nhy["V% ӜD2jp`ZoM:<*څ]BCތ1p7b5&s)<6&(Cl+&s|b=2~wQ- >VDzs]Q8jMNnS%wU~p8is.^ImM0 \5-*0Q c<mS:ww6^RMߌ*\͖b١Y7zjBMƟ0i=*QKmDgFݖJsՆux$cfɉ.ê&*νӣ[- kۙS6JTwk?}.5zO5M wkoQ
+ I wvju/{Q+zZ3f9;{J晘jT
+"-ݜOCZIa2tU=s*S%q|+7p2U3*NO{V[TgTGK91u2]!cX墰ۖ5
endstream
endobj
781 0 obj
@@ -1711,14 +1706,16 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R /F48 640 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
786 0 obj
-<< /Filter /FlateDecode /Length 1524 >>
+<< /Filter /FlateDecode /Length 1558 >>
stream
-xYn8 )ՊDJ@`Nz[i39a)˒MƙmkY?Iv;<~{v&2@?&0_~ [ZOrwwD3</D$=}S
-N&he0JLeT#)'~-Xgbh (ǴXx1y T/Nl 3˫M8r!倏jOgg%('Kc\Nm.\F <w9_ۨ
-s$G"co,9^<G.9
-δ7JAVbƈ&K&8Kc2<\Td:⚩4Qʡ\ce64H!?HN#9'\(:;-0PQϺQu%s??z إqxGao?.hXh@&hq+&Ƣ
-OKJt;2nk̭F ddVn.(\#c-K IXhĞ) 9™`1tؒkBR*yI U\,Q
-;\ߐOX<ʟW"`/ţ˓ kTBSu]fT"tA! u#t!~1jj;ˆn-ӳ0Y1F" #Xs"^xV@&w_X]5v_c+°a؆1>uCN[R}A1V ߀g.R7Cefu6p@Q}dCPtK+ݣĂrJ[ 6wZkT7Fx/iikDiB ZK:ެp[WcpDk5o:hOB{!dmaճy3JK{G2ʦ: 6n8_+B+5j+/Nt{_F3QR[>[nkB.y,=\F)KqsO[ºJRN71<<-pa c5bOD6'DeD9}},yfA@h eyްVk/7=fذw~7NV ZڌXI]|-}n?r;MܯA=S6vM_m8k,xۊtmdS^-g]:BO lÙЭ5bMƆvrʶֈzW@w[Hox iB6
+xn6p8C0qVT4=3CZJާY97c;|}ؿ>BvH&c?~
+lLն/A{{9kUc>f,hr3U
+4ũ ~##BVbU{/TqF1A=!T Ͽ]FP1{11
+pf'̞K5oB1Q $7}oL?2|Z{)֮& Y' -S
+Ku 8HS(N`Z# Q#y]׼Hw)-5:w?\m=}|]+)Al
+LeW .:jwJG=*L˾y]朕\ 9$;BqzM*3k8|<5,svs`<nSB,UOb#<C|ʥ]j o'=
+R'R;qۓtR36JF;=|:N{ϻ294
+
endstream
endobj
785 0 obj
@@ -1733,22 +1730,15 @@ endobj
790 0 obj
<< /Filter /FlateDecode /Length 3559 >>
stream
-x\IodWq|, `Z- 19ėTqy[HZ9Hzͥc˅_뗇?JuΌ /??_r挹Jw#sʹx\+΍ǿjaO?}>uu3 "+͓W4sV\GK5~*S[]?ueR&f0bRmuffm,8"M2Ȁv>" -#ȣ45?5?qÿ7(ѫ߾>~w3wOdZI_>3mp~H鬿2$xyF)%J]VLj<',P;C,p7Mfvk?0-TK]b@4i3<S
-nNaq$GK
-Pj7`Lc6&l|+dDT2XY-2{`Ӕ5Lt' '5E\Rr
-ӬGsB]Udr%M, ā&;&"<ҋpRfB1Od9oyV90`.R Lƒ
-Њ A!F3PS$gAHcָ)H{90mj ]&<R2kH5S׾Q-ۨz 1
-HR~B$ 9rG힬-pnk]icJ~n^fÈuk 6[_2up)w$ eCMbBIDຘu"XZ,aw(6>^VlDGs`x9FH<^Z*,
-~DV@Ei9@>
- ( j Bx_9 nH5ia?(&F쭉 HWV\C*+,E #,xr ((Kt;0` *z>OIωj":7Dgqҹ#{Q ފ<FׅМy.J4;U5r
-g$gS !gQU<1
-!1G
-vV2ЧIo;XAITVatvx(<;qd6CH='R&UYi2oH|0Dt_4c!0sUt,SiG&iMdʫĻ|-?i~Eo}]Rz0e5BI5JA[ZBuw`1!b1`Yd (K j׫4Au)tj/M%
-]_va4"9T ɶfѭV,s`4Wۡ7
-k&ӍKbƒr}܈ŬBPPgВܭj7}KH6E󅉂q\q  )愿DF*o03TO7Lmȩp%|.3B})( ڬ;gƐ US+\pqi!MҔtGDzY`?o[YI`B=@ߢ]\mr(4DNR?Bd[kbٰ'銸&Q ~T/ ]yu%b8Dj^ߐ?yK1L VaX[
-94N3 udL.&QD`877.K~e%}-{QCWv1v{qa
-¹v>;-ZPByYm65a
-ËR '웧όbY"=5)L )Cizj;1Qp Cqp@oJz EX&ڟT+)[X:9k%!^;[Ϛr]0
+x\IϯxG
+I
+kOO>7usRxkoփpo~^JFJ|R}h)m~w ?}y'޺*}gR?5mTz{j_1ȻO>=4 )~2 F=ie#`L:MN'Ybx?v-#Z(#<<-%?soXcзÏw7I?q7mPn}˓@.~#y}[: D$u,2ɊF eQ6U?Nn+=.9$"
+VowLۖJ׊ uoq#7j_b tF&1RG
+=|/*ɱ6"<R&sư&,1bUO(*,F!3PPӁK;)|4< IωpH-ΐ4 Y,J]|lrO9)b{"k] ͙㤏Q7"!n&]E4ϐ(ΓN\nxI͑,"v&m`4\cKJ)JF#&^Oxa'Gt,+MI(T2/D1"M>ڼ`r,z%0xXLj3*1-@_dQh{}n5+)-s=s$6lOCr6ǯQ-M#Qu'w2,puH)Vbqm>K&r4屚Oe_5MA>/r:k,J#zw|?c5F:ůׅ`eռ}nv3k lKԡ߁LU?#Kl U]bPK/Yݬ? ~Pw J^4 #5S?&9pﯽ {3~4)Amv;7(07r
+:U{;I(s<Zf,iv۪z}'y_hJ%ev>@_zxQ"P`Uî!ċ~׏;iv\1d[,sU.Co^x
+
+Śa5ܔ!V&P# nl? f=$}n.ƚ`))L(c#챡+X){W0#kJM#baIXXR@WF,fB3v8u1#ِ>Άi.&qܛ kUxD(*o);ӍB|L3E\ipJBJ(.|]RcȘ)~ .n5$u?4Y*rME"QK8^@)`3A;\7~HKwjw6EVj=be!Gg▄ lYqMGm5JFd0щ(Lf3R-} Q`ٷԼZW)D6= rOJP*߰tKK> $c7~h ~_꾔5.k~:ҸN/JaGni :K7:ɥ4vشZ@f^h©Wϯ2zށ> UK* ٟ%*W;]kP>ݰΕ% :˼뻳$iҷt|];4`w^Ф|UϺ)[$ %HfHo;!(pvz.Zt a#a-zPR hI;zT kB/yy $j.-C۰~<4MZֵb!B}m.7dĕ +r-'όR@#?/)JQq)'*/}&&*Pxu >0)rqޤ?NklJZ)Q>W/?
+;L(x:m'O
endstream
endobj
789 0 obj
@@ -1767,23 +1757,22 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F42 792 0 R /F50 687 0 R /F55 774 0 R /F15 639 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
796 0 obj
-<< /Filter /FlateDecode /Length 3831 >>
-stream
-x\Kc|X [>9q >ėT!QZԚ}iId"7y/}3D`ݐ7usRxko!rIJ$%~'zҠoE=DDz9GҕRϩ-?yq?ڕ#)=27zS?M_PBn$V'^*#<ͭYkeZ'y}C}Q[XUBZU:H$@@Wd[CFzoAӷ]r%α,=zJVzwcӓ)2V4)c՘W&mRKϫCLQM *(d
-)'<mxq EqkPF Mb}Z&cS<*
-K7B:,FY+3 oFDx/DWRەeM֫W`@>օ4NwV|ЀPdk#XGT]{+|HY,&eˇv O|Gw|$_|6(F?}A x.ƒRI6뚯p^ ,\W7ӿJE2ovf4ym7<Ўݟg<Ǚt;&r'/P/z(AYceL-Ek2c#Ɵ|cQRˌ+fvJ?vzܳup/,L}YZyzѐ~|jنM/3-8;**K<O=:8!>O9
-C;ItSt)YE*),)uS&-:qsdߟ=KY-
-͒BZJ
-n^
-O8)b(#9ŨA-m⤦?Q.x?{@t/8ꡪif`z-W.N
-Xu&',g+CuɷeѾT>_Nˠ<L=b-֨rsb
-EXkI;zѰjȜ.-[k r$,եH$^H@YjX6?rp2pm
-T^dfٛjLZpAȢPze<V#p+-YJ|s7K\h dV2 o)qෂZN9=
-@%G ȯWzy~jq^55zީUz$tPjo!yܩ׍0~Lz}J,B,ͶH;"@z^沬CR1ƥ;G)a:#1+Cڕ4~weQb` Fvn{>a(yxRK.5 cso
-$
-c'D ('P8Wj#,#B (8/dbK
-=Z-#K 7nR ;>$>뫑~ cbћb]N#og?+G!eA|Lpx0jCc%`-)%W0 N/`Uw6\d!fttGH.L7t`׼x-^]u#R*%pds^s߽eNW/sF#[2oJb~" (ծwd42]~x*kzJS-4)T*K/荴rd~zL焽<8G5\'Q浘?8AY+Sjiv2 NRJ_߉ho䤊~,jOTq?r„X"0)@\z qZ;k@dڲ1dgXN8[n6x
-Z۸;Xm{~+b$YJhbئM<Ըm9.U)GPrDN{@ J
+<< /Filter /FlateDecode /Length 3838 >>
+stream
+x\K }0M|VMMΎ'U%ٛ˧$NRK~
+oJcYz{F(SǦ'1?e᮴XЦUcP\lf<IM;.=>={L 1BD!4*t/Zŭ B%4jZb*e^kQU^ M4בd1:*]m]ax4"0Fƣ!znڮ\ k^? z_uBc7i6_7 G{F +QݤD?|ΰf@o~gwȃ%E_|כ6(F?~AiE?.ƒR4f߬X(ְ
+pj}{(%,gˈԀ 0>R=۞yC.N[ m8m4
+B \@ $֤jZ 0аJC[~Cˌ+1gvJ?4zܳu5liO9+OO#ҏO-#eg'YeBHAGI63!S'GBL}h3y*..eE*&KJq`KLp}{0e
+!C(
+]W_s`Sv<O_%]%wٵh'=_-~L?nL
+ߜQ9HGd죻Z PuP1eG%TRΜ9>~?5{^3[Z-ۜp dRt_*̗l1 Sl?nU,`:}^ %Q4?v<<ir;^-(|6KsQ2;ش [ f?(1%@.}~2V$V`yytc~ ݉wV꽒m
+?q~A@k@CBkͨXeɸPX9ac#iJ uO'jRBqcAŲk5wm9^K5\S<MvBzLEN"/7WqaV?b\V/x4oyڗ_,Of{E;V/K|<{.oy}~0{'k%Ry$ohW ?wf'GA4}
+K}5VHȹ&.-#L%uJ
+~MS^J/質krmz#4YsiŰna: F
+-
+
+B*׬uT4/4y:$TR*x_*$CR-J{^*$I!HK@*͑"U id' ˴0gjXڍJ Ú#;# =jGP0#!m <)Z-QcEwD(Ab LqRG2R
+je2vkH CE-_[m~i g/y؂h tKyZ ^~nk2:,to="b.'KZ\uP5[+^:={dΕ2=jFUP]0 Ȃ\'J~*ke~Jی,>)+>US 9_0xX y %|.tG:Skμe^ˎuqj\9.FP)<0^}VvOP=j„pX7vQZc!0\z  ` ORPWltȴUίd+'-&<sZKޟsNӶA(^>EO%;Vu+RN} ˡY8йխ|ݷۉ'j7Q/h
endstream
endobj
795 0 obj
@@ -1796,29 +1785,27 @@ endobj
<< /D [ 795 0 R /XYZ 70.866 771.024 null ] >>
endobj
38 0 obj
-<< /D [ 795 0 R /XYZ 70.866 318.926 null ] >>
+<< /D [ 795 0 R /XYZ 70.866 318.851 null ] >>
endobj
794 0 obj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F34 637 0 R /F57 799 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
803 0 obj
-<< /Filter /FlateDecode /Length 2238 >>
-stream
-xZ#7+:ɪV;ٞl 7My uź dz^ޞ{E@
-c@ۓ/rP3 o_')ე*(&)Oy~Fyp)%az.JIeh0|..Q~+ef/Zݥ ҙ 6 ̦kS)b]%5j5zZըY
-i)j5h7KrwVd~02Qߞ@V8/_>ߧA
-nwu , ??Ē Dg럒; -P<8{J={z͋ΩeK,v;?S\lK);VB<eɣ ʙF7k,_T(igu'/d4[fW(@dyIۤ
-"Ev
-[>/A3w^8g4;ĸ/V07 6ڦ7K8|;AG վ7U圐5+<h3
-67B8o,T Tbm)fJ:\xA[lՊx\lDYVxT=,eJW5P~UY4*Llg͌zGVuYʁ*`#wWoHuY|w ̮b0#6M6U3{g#1@T].- ;;O1m~vC0/؍r^㯶q},vDFklGe헣.p\mA X[e+9Zhr X[V>&QRX?&QFHͬTBu=|띞>\HI@vs
-dG=ʼnMcnuس^i[w2VNDX3Lk59z&n*W}7@T &
- tTCťU'&M>^GB%]rkk*Fq*
-#&)f6gp*2G7h&k`S޴}7"ah咣BpF8phYnH1žPX:
-n Ba/z(vxPo9Gre &WcHgX&g`/W&὞1rџa:p^7EJ;8kiYA]3v )_o/<JNSt5;NU`LJ4.{$`dt$q2wK "kyZ3ݠU,uc^EƖJoj\ ؐ
- ;B{rV8 [n=cdpfd^{< -kv.ΝP';H9ݳ:nG!
-#{guVpj1^xjܮTob~ Ƿ9!:i8j {&&W*s'Aݹ2nvE\+WOy%3uQ>Jf}Q=):YdaB )eBҌ?6$a<5CtO7[
-fU/Cl֌w!FvE#ewWvEx9㮺nDzb0'-C`-
-cuG4~:Rgz0#Y\n^GTw3X4z])F=A](#{\TrXK9<_Wnt&o SX0zo
+<< /Filter /FlateDecode /Length 2222 >>
+stream
+x[7+:QdUh^lo&(;$G߻cwb]|uoy{~x4ƀ_+3f0j5<>_Rⓔ꣔4?Z#̇O. KtQ
+M6U@i磔tt*P}^ل/0#:Lnqe(|t&8"2ڔiYR6^XӚF\)_!?-EiIN㮞<LQ&
+_3
+Gf/i~H#ˆO?<(eY?;N|/CKj@#7Q<MU?iDX)#$lYv7h<E 0[ xw"8α/ٿmrl.QM'
+ǜ[at莏@l{>Y hq$<^
+2RDž͍ F)NcpX0ay
+.28FĨms/O18>G"qut5Ǥ9 RxUFf_U2L`
+|#
+
+INسbF5#֪,A<ۑbS0jTeW2:;"[ ѪۑAwE޳ڭ
+9JȱVCpu|WXx߶1Yss
+h&.Nu]R7`blʛ cF< }]2oTI-;a5`<lye<?;)!8;[FCGp*qݧn0H(:^a3+^X9ڋ0pG{IG{`T"{8kiYA]4 a_k/<J ?~h.VҥD5[Yefґyn$N.w)c-Z+%t䊃Ԃ\c`?ZY4N݃*oEӥ Yp4JL. lU3~Lhy[1 ar-l#v.Ν'-;Zr2[zv;|i 1W#Zc;n!])ͱ9HwQBosCuӈqvMv?R5rMy+ 9akJK[6\[͋4;L_`OFj)s;%UYڃUЁd;Z(:VWZH1Ş$o`L @jfK_^ʴuR/ZYluȎٸƵ8cd*sf@8(_Հ#һvG G9i:+pmQ;90,us0Ź͜q͜qDuc^.,.h]I$o݅*9=7֕KB%5eM_ D"=<a
+
endstream
endobj
802 0 obj
@@ -1831,24 +1818,22 @@ endobj
<< /D [ 802 0 R /XYZ 70.866 771.024 null ] >>
endobj
46 0 obj
-<< /D [ 802 0 R /XYZ 70.866 584.469 null ] >>
+<< /D [ 802 0 R /XYZ 70.866 584.475 null ] >>
endobj
50 0 obj
-<< /D [ 802 0 R /XYZ 70.866 169.009 null ] >>
+<< /D [ 802 0 R /XYZ 70.866 169.001 null ] >>
endobj
801 0 obj
<< /Font << /F34 637 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F50 687 0 R /F15 639 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
807 0 obj
-<< /Filter /FlateDecode /Length 1244 >>
+<< /Filter /FlateDecode /Length 1242 >>
stream
-xXK7 WVC$`a` toANiK~əyxm޴=ز%Q|}")<~Fp!
-u>ҕg
-G=L&F7|D%̩<9"e]쩲T^hL()dJ'4?{N %[8裟_}AjCIz-yJTΠ:z8|? ߺmOQ2̨ʜD?:ۧc9y.b#$r%K,
-4aBpX,'6i/w]fxSxŴI~{n.%  9|_G~F?Oīgj5h+ň߼T Fiȼ> 99Qp#j-4A7/.)<*)bLMFы4]h*U
-TBY4mtjB)tNfÿ g\54Dng|bf72TZL7|fZJ RYBګfy4ox Xqt汯q,Jk9-6'Җaln_?cC?M/GxwL{|=Oַ &(U.;E ö8j6=Lhhb{z}_
-!7iX&Tnf/R1v}QR u+oSm.J9GBA9Bf((|Z,}p(GP2t u#_=rXP
-fYSaŸq0]4!K=8aREMͻ&uϴ(шwhA-"U\ѷ%jJr3&TjE+3m5sޢA~Fd@ _R[AAj_G̨0.1\bmqq=_{]~\梁+!FA:yn#)xpuE] { Mw.tTuk
+xXKs7 Wf<35-SҸͥ.)KG+ ̳qi;m<}]L8&:B01ePf^{9zl\H?dE>bevI~̄C/oU~'h:{54-6"N-#ҋnO>)KR2Ǚ++Df|{6 ־{Z=g"/+gO3 ̷կm؉d&zX=@ؓoAăۢQoF?Mȃlb&a<B;Scf)\Ј=٘SefâT!ũvAиз&bK1lG<?={M'M:Pmf8hAvDN8\H!(|rنG/{ͤ<2죷>gd17 ޣ"[ˡ9A͡fl`e_InxX.u;oL츙7p5Իd<5?җ]s/[W0$K: EbχkڙH)R]93
+z
+C,l* DRTiwTo {1dƾGaYNw wš'Pfsle9b0S4mz;_oӬb
+!\'U*DAémjP+j:=FZ}pۂ=>jveuBcJɎ%H;JB\qDۍ\c+FJw߯xKh XUOW hqY%
+TuWсZx cMc] w$HaEYwq:V\Q$CM-9)=Ե:j^̦x]Ͻw,?Ґ)C0-@fh$& Dsq3䜬) Hf_mݖ~!yFF $YnPN m㾍NVB{V[e oś`w.- M
endstream
endobj
806 0 obj
@@ -1861,19 +1846,25 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
811 0 obj
-<< /Filter /FlateDecode /Length 2929 >>
-stream
-x[9cW( &xVlw<xӌբxz%~ۅ_~wwLkPpyE7".3E[`Fۗ/98;Jr}z(׷Ӿk v_%8W㾚1֢~o>Xl%N) @.Hxl:z4q 2!J=҆9g"$F1@GN*ȫ|R5Ҋ{+ kaO~8rŘ7$qzV>kAL/ΐxO"2%O/xLp#$nw%.&0NIsir&C4̫$N&mňgfP:k'+LE@dE`N5&tFh
-%;=2wf> "ϖiz-@$&Y©4qn3H^_F>΀Y$!)=6DZ)/ fg/م⤈f+)$1MNЦ_u̢ҾWiv u_XC/prf+d9$/4yu
-IzwYW9&bըET(`Ε%#JdnR
-E@
-y55nVLiq9-BLfic@!|oC-]|j5yVFa
-M/\LJ~GpjܹRRLBQȱy*tR>=b[ƭh,ڏ[ Ug@h4G!
-V[+X%YG8$j<`řtAPp|&*m-l+.lm8EE}l8-dy7O^Ω8U^<^V\Q>"GW%P }#oU[O-Ct Ӹ$UYPPRl\yڛ jk/T\*/
-TR}0n59M2!b.T˫Xz\#>om3Sά
-D6MaY~)5Lww\̍SaFጳ(bf 1 iԸT"G:`'BgXQ9&˓N!lDl4  v϶sMcdg[ꇭc ey,*yqL<@NOC)&ϊd^>
-??T]~L9{ΑE
-ds=A[ƑLTd;$$udoGdN!2[٘SLA9:6}{=C@:g '8'Jx?&t)N ayv!HoF#Mxª~Z}ӺN.tyAD
+<< /Filter /FlateDecode /Length 2937 >>
+stream
+x[K#ϯ>,C
+iW{YEmXiYYIeCg`f//?__?^
+U*GOg1 mrz2w6A`k-o,詳Qv#s9*CI/q\~;TILt
+E~kD)ذ纊L0s9QRH;כ 8:dOn~w`|ތ)9?Q)An󔯸(~W䚈F7K;[Ke,Br*'5
+b7Z-PsRyU@Wx-
+(C2d9PI액f?vO 6T
+q5u/']K?
+;&\*@eV
+,9ǂ 'hzS"e40Ƚ-4[&%NX)ዖz7}=2{fF% yNz?y8yqȵ^aE<_xF{Ȼ[Xp
+Mj<4a3?:!2nO;֩C\Rh9;Jtk·cՆJ%)w@/IZ-p1NzUpA~~Aa׃bwY<ܑ0mYq3݁wPPnQ!oՀAn4Q ᒷ?;.F}Xb_͐o{9cխ|[:tv\kgto6X]o`1JFQ銄osPSLC۬]*)
+&;=:¡j
+xKt2\CMl>I]cծ> rݾ6fAL_GWkqކI&_ q\I9m*<2x/1
+,w$ŨFVL.᷍[ʽ)L<lZ?/sxЛJQ53`·CiqV)/X.f\k *
+(iCN}krKd[Dh\ NpQKj̢| fKUZ[է9k:J6&? hJ2}4> Pzoy4P-s^y6<k}+ui1'zhntCIB*y$ ~l:wЍ=lNs/€
+][ۖsw9e&ݡ%}uANswѩ4o4+ah06uL K剏K{uT:6DoutHt\$:G"Z!erzy[a RtFSfnY!fsFHw3+|'jeS~rL>3yA>]z6HKxL9GFN}>2] Zџ#S|TT9$#sHg#If{H~1#1ݗjsC%q*5R dHrX犧81iXof;$b3-6pt}Y8-{ @6a(sҬl䒯
+iSl]4ϮA5-ӈU{;>I5_iڊjZ
+?Mzo/O
endstream
endobj
810 0 obj
@@ -1886,28 +1877,36 @@ endobj
<< /D [ 810 0 R /XYZ 70.866 771.024 null ] >>
endobj
58 0 obj
-<< /D [ 810 0 R /XYZ 70.866 583.291 null ] >>
+<< /D [ 810 0 R /XYZ 70.866 583.475 null ] >>
endobj
62 0 obj
-<< /D [ 810 0 R /XYZ 70.866 300.437 null ] >>
+<< /D [ 810 0 R /XYZ 70.866 299.978 null ] >>
endobj
809 0 obj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F55 774 0 R /F42 792 0 R /F50 687 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
815 0 obj
-<< /Filter /FlateDecode /Length 2870 >>
+<< /Filter /FlateDecode /Length 2877 >>
stream
x\KoW1> CV,0
Qio_~}>k?imv_?!"߁ (Kw/!_2ƛ[)oҭMo_a<NCp^<O0K=DA;yqsZu1:37s19y}Z2o3? ;pXxBG}(l7܁OZ2>z]KVOw<xaj}dbe"Yn3 3yUN蝂8a{!^ ,e9Y_7HCX׋0l&G;784LѾ')ÂF!A^t=˷n_f!Sكxiכ(["Wː
-Y'I3.]@aξ`=^@'ƭ1(k6$Bd<e5o3Mw_~h*~_:T"z|1$p/7ٰ<
-3ϓ|_2̭#HTeVToU˦s1Dms~L,rV
-'Ṱ
-ɷ5{nQB_%,lʸg<"}]\j#lF"˗ˆ~tPNHhW.S\C B̌h8y8֌k+:kEq&UdM5bHT)[}ʤpFM)ҾS{b- <xZb< h@)A,Z'Bx_o5liVw.Y1l2vZP70oy>WC)jFL|^oK;FsL'pV#dK-ZVb.Epd5rZ{.[*K(V6jU%VEO
-pɭb#/&W98rp^@|\/n1W
-B
-ŕ7
-oK*~&~ޢtkg%dE!!2
-w9hPۍb )PkC 0
+Y'I3.]@aξ`=^@'ƭ1(k6$Bd<e5o3Mw_~h*~_:T"z|1$p/7ٰ<
+f)S0F*UVgwq٣puP,_
+#y]hlC9s:"]Nq %,{s }03e
+}װYCG Sg Vزa9 hAlü\ ݂J1y a,ŕC<H3ْX
+>j }ʹe,ron8Nky
+PozkLCN1uGD̴Hv]Wjd!:Ra*C JD188j(%ΊlG.\Ƚs!{r T\㟗Ss
+`9jF@;W-=1ZyIqj1 Q_[5Su!(
+)bWތ+ShZx[4ޙ}s񬤼̚3d=DJH1T/i)ta'(\d1@`u,+&6,Ѩ(lT+O7!AmL~ϩ9q/vsofͮщӝuV,P=)-}om1Y1 ]kNs1
+xY
+F-exf {kJt1 r1Fɵ +ʑfl (bkmۼۥZ-QJUy{C{aYB :uz?%hgp.\Do8#dF:HiHJR'.-p
+[Nzy
+r
+[{$L,G͌gք/ ݁W,
+Y<|h@]qf4Pxf40zV4h g1E$hdpR4` ԣΊDc|)޽'}K3\X'7]Zze)1A܉)-[)W;J9Iiju1>)j=6ѩru*d_zu \gL//zN3b؛v۠W1WF/nogkW\KyIrƙB?f$Ul0Rvj$n(mBYa!L#BhgXgڣsB qp禕͍kA4^msJN
+5`]yOڥ<ghT߰j(pSm4C~@y"?3߄?)CZJyhHkı%xHB[?P1aypXb! D[Zp>YQpB:-^t%z3j֪q'L {5W˜'>0e`*u8y'Yܫ=P6RͯĒQQo*Hs*ܑ=G{[RVoxT_{Iʼ-Ex$m%=,mjە:$j֩܉JPy(ݰJ'l{bs{y1h\sD
+e
+F.
endstream
endobj
814 0 obj
@@ -1926,21 +1925,20 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
819 0 obj
-<< /Filter /FlateDecode /Length 3696 >>
-stream
-x]KsܸWq}0ƳʥJޒ$qU|^M3
-Ҧd<am]CcKuH&yEH<`v|B
-|rV~cx:o&VV53sr3+K霬-|0ƦsXҞќႹs))9`;+}LVwP}wayP{tR Xd?&
-+nA8GX'Mї8Jjc3.W5]<^׋0lG2}+ cbʶXrHdCG)5zQ`%¸O{JV8۔
-RԊ8DiD 8)"IS=%TPEV\7A|ahw1ħ+Zn-7PA;dPF ASu(/k-
-YK̢|bKM0UK>jIş1 ?j3BO|63iU9QX{&U#Mᓪ<I%J dFS'j uV6i-^>)kJw
-F`hN"
-VWgU6o)sNDB#0v8rJjFm*XD0#beqA̔ y^T@k{T(BI4DJCB ZSõ-??z;҈^kl㺷!"HSpy9P wV RP%{+\Q4C_K]L7!%5_Zr.X;S>6|WDҫEAm"P$AWK o÷@DD6잴ւ &AXk
-#ք5a[QT^]UdIa"كljs粲O=b|!h-i^69Edҋy;FF]žb}0}KK(n̕ݸC˻K̈́^* IMs]*v '_Rҗ/C@A?0W=o5ͼa nΏ5o6*u 
- (T=ѻ66ߣ
-!DZYa3)G
-LIhP5:%jhx):[lSja'5ﲽ>,r!m*m}϶WpV8]R C_w9#nػ
-=F2Xރ/#%1>~1.k)nb}89%%.K2[ =BnmXG3-p`rUSQK\묓g 8T˪7/o8WXx.F/'[uNxwxІfOR<_Cc+*vxBMeRgN$yk oR)U{ՊY(.@
+<< /Filter /FlateDecode /Length 3711 >>
+stream
+x]KܶW:FwY*֛*ߒɉWŇn@A].~}ݍF}I_>E:s;?VQiq%]߁~}@D|E-<}/[4a\i<Ru ? aytQZ13M1j-OnvkQL E?~~ߕGǻ?tҊb8o!?;[
+;ێ  Nތ#($Y߿a*2$f\D:!siƟl*SI$Uljc/W5];HW/sK0jHjvd `ވHf\JHbWD5Q(gdpNj2iT*6r
+"bٯt,(g6(^\10e8&`UO5(&4(*2rٚ] ~0
+7M2_FyjԠB2a5;:ΪTΣxm# F0;yg}3RɆNi5 iű3\`#rG gQ MȲW$SꈩJ+})00p$wE/7m֦m>e[Nq[[^yrDd/+Ev}lo.{s*{kF!.XinڰbeX'3ψ[<&#7@̛+賑+¯/Q+Xi_Jzd^WI%J#0(z?vpOSjPT37jGQޖQ+{87*Y渒yT820+;\A
+$:b
+)v!ifk=^YxIF㽶GZ'sn6>ysy#X Wi[,Ys6sR/tK]L}8!%j-Ŵ[d+הG) ~#rai(G+8bJbP(my{Wq$䙇ݳX*qnSTNˆbcT^w󫫊,)T dϝ [=鼡/ݴ]d좳
+h}ѼY;yFjގ_jMy{mR%r0 Zcr6F9ۜ׊S/ i- .5cD⑩005o>(5|_j=.5ohRsujHjY;$5RX|<Rj~{Qc1RpGʸ0ȥz-q^W'wNƞ91U|w&9iȜ|΢SilՌj(Gɚ,D9.Qܨ.QJ[fK#%uD)TA܁>eNs҈FvȜXy4~:0?\sjkG/Xi;_vLG~Eh":Non?mI5<-I<9hAxHWVZ3G`4\4Dศnw_W
+ {Ey#̌A(8Gۍnp\}>d\/ؚ}0ʳwH*l;"WkC6wܔ<Lg 8k B2Vz@&*O4$ЮKn9@E{Axv
+e3H-L~dHMQ
+1|$bRw2,{LK_ &ؒ60E6,$ B!LJ
+!)K!v{gٴ@;l-|'+6%A5]8^- 2{|QSjar|og˅hR&߫ov[}$4A򁺄_VhpgOg{;ܝaM'_ =^v2Xٳ :%q>yK/k)ncb}|e)ZCx=Bǹ^ ڌ'k5ɷQ[m+߬AZ:AwJY{Iᕊ&?mM6m}u~k\W
+ר /]I⛫[d|R܎RW{2WT=Kn(ɥ<RCGz{]Y
endstream
endobj
818 0 obj
@@ -1950,29 +1948,31 @@ endobj
<< /D [ 818 0 R /XYZ 69.866 801.979 null ] >>
endobj
74 0 obj
-<< /D [ 818 0 R /XYZ 70.866 609.515 null ] >>
+<< /D [ 818 0 R /XYZ 70.866 610.038 null ] >>
endobj
817 0 obj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
823 0 obj
-<< /Filter /FlateDecode /Length 3946 >>
-stream
-x]K8Wq$ 4H m 43sٿ,zRYN=$rYIH~rv˻/~zQ&/abo^~y`L|` >1ƟS/
-7b JStj7tnrvRт:p5ZWpGizk#qly><TIY۩e㞇W%n`ι&wꚔ35|IY+(ݷ5 wI&a*KSCrWLMɊK( {;W\`0RsKV"v"R=Kf+G56ZS1˯$rg/~]B]vo>FTWi1“VnuYQAlq
-z
-NA)
-߆57shݥut0#(O"`5FPB\蠤 | εR~
-QJ UQUD,DeL
-&WU$ze"u J:RcU$nTUEI5IUUɨ着f"VU2&ڪ*-UJ\ǪJ1تJ㡪R2~BES{lj{qlU%d`&Kh&+o^l/h$
-۠C&1tmnejcKG3!ҌDs%liM5TPg8q5%r)W 4h#cbq''ikkG`|_L
-*1-b
-g/s*du`J.#yڠ&󃸫xh>6eGAq?PA9j4t>>;HҦ~vF`@wRjLSQώICYu(}|/o>X.5,/JZj~X
-1@`'FML˽2'Y[ԇED&xkԙ\aSYidH[8Y–HI%)-q9`Lsk&!_Rqc$EU$a(Ur5_khU Ǖ*q> Y&!; 4_#P-U( G5_zs)۫TYOoiy5%4aj*1rUJb#$7[nHm4)}b]}㽸Ng!CG/ߠ{S*^N$`ܘX#Ī٤`; |ߡ8SB VU.(M˞ Tc6s~'TJw~[ beӼ"B
-F.;ݲ%J[uQOAVk%m҈EwHdQf6
-t0%m!MH=
- #;t!>ʿI~H tUdYOa_mU0_gR.-&AߜYֳ=I:j#ڤ$t$# mR҄6`9MqCt0&&܃GM8gMҾ&9M&o6|-+hMnM6x$i0m҆6ɉ'\K&K$MĢ{j{4\'{
-ԆaA5g=&"bz8%!CI>nDSr i>5UJhE'm!Mv_ui"
+<< /Filter /FlateDecode /Length 3867 >>
+stream
+x]K$ c|XYl- K~ȒTGuԭ9LwI")"Q=뉟Ϛ<Fu8YΜ1'<?s¹΍|~
+s4fSaN)1rO"Fd<zgѤL-5-"B*V:FOޏ٬kf۴#J[2R2:HVjEV wZ
+/P\_F9e>=R^7۴HǴlFc
+)Wͨbɶ(5nAW
+nZ"pv穲B)Ġc(=H;*6wXjF?4L6@om0
+U0Jv@s,U8 w;x"{-B ħC7TReJ!xgfN;\ j$rN]mߧ.6^[oNr ]TgbC.rk! S+ DPe42n"-g'yB5'Y/Hc}G=&pCLgB
+HLțLH<:ΊehGsldD(3S$
+WH"yTPb0k|^N|9r\LR]cuÎa+HJ">U%Cve!ڶJv$/)CrpLUFMUzrCqj^<Z\U]V鵺iVgjrn2Lt]DUw]^vW.D%E|1LkbiiM;NC%"ߓ
+jOLc}yJJ*J)f3A.س?
+X tB[1Ш$h釒[lU LV2% F/opΤ'ΰ1qV+pKOE.ݞL_-QVy}/RRQ>E3 _9tR뻺&hQK2[h2`Lb|3 ,\KI[R&]re0VQ[
+Kq\{Ìvk|=s
+p<$!Fxj`N0B\a#Ԍ
+s˟ySjZ#+0ݘ9 6b]omW7_7B
+vlI*ZߐSY1²ȲkY-JtA)n^ET[@1/M: ,|YG\y/~K1-S=&gtprrfaK 8!.ƹ>+/j/i؋kϻx$F}1xзV\pAQ=e2_Eb\X5(_JNפQE$yy>}B\Q$8w cçOvP!K 0 GPE1W<yCͩQ koRHҵ0_vz &gQ֟@UQO 1urLw.]AlR\6 ێ$ gF
+.Iւf}88 SĻWV)+qn;xͽY2Or:3b%A}+7ʵ*;}y<
+"5)=m SiO,ibHI6zLRH-@u`<0m$rbu/w:_dΈ ;S(Z%Ə͌J\*W`6ϳ=0Zt6W{R<&LL\9WueWN8Cl(RS&LRbkӗ
+"@]~I2)Rc:>W%fQ_NAe߷Dq`ĊrJsvԄ5)H5I5`9k2`5k"${v! swTkRkR-& NIE[Mnxx>i hgR\>k3DR\tV)Xv\k~IAG6L Վzq*& ;9R+9uSseKn5OJ1w>aï90n$ڪ%28kgUJ)0BB?U{<dX9a]vb]KAo 06$#
endstream
endobj
822 0 obj
@@ -1982,29 +1982,26 @@ endobj
<< /D [ 822 0 R /XYZ 69.866 801.979 null ] >>
endobj
78 0 obj
-<< /D [ 822 0 R /XYZ 70.866 424.468 null ] >>
+<< /D [ 822 0 R /XYZ 70.866 424.259 null ] >>
endobj
821 0 obj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
827 0 obj
-<< /Filter /FlateDecode /Length 2808 >>
-stream
-x\MoW!_x<l&; 9d/)Z-E-[Ǫb|r6O_7`hrP3X~}壔IJ"zR~yz=~֦>w=p=|j>ǒ^[V%~Ox Sރj(k&RVJ+DvUEKD| q.|*w-РjCO&q% so܋YP8 (p*]$,C=(VQcu<UCF8j'dvf<vLm!*S앞s
-u6zΊi˘6/Ւ)vY8I[mz^l@ZN(lӴ\~iVA`Y*ܭ?+^ȏo5N$ /7Oм*fhf63R˭&K#ۃfڵso+9Us#wXKo%SU a[E+=2<iHr<wmy#"eNY蜒Ţ y:pGw0M܉or]r<Of'Wd“[9ǯI`Cj 5 8S~װ{?^]ӕ}W tAk^g+~W~)wWO{rq+\LpAt׷F. WZW‘ŴN{+qeaA&T5kO
-lL|[r'-ѫ@< @t%s6vu>z
-/SpY0pG
-2 "i^},d+#|%> kb1/S7[VeB*iS+G@ fw\1wx9QX!`W]]:N<[\ܬ g)y3cjBy;kSrfOJN
-[lx[7/8"Hz#.8:˩H{Uͅd甮cL¦k./GVS8D9 MgVf
-Z_ I!kp8{Tc4 qH
-hN?,p: ʞMÊV:nUGzi)jũa}-'iq;jq*VC{Eu-NV?-N8[x8d̸xʹuQy-
-n7-N a-i@pzKSAG-Kiq*켢qlN(8D\؝)*?AAS>MS8%6-Nn:jqچ`:jqvr8}3kq7Ϭũg{
-W=adNJǍ
-:-pJm:TNYy& PIC[Lo!q 
-qx(7 /U5i 8V8%^Z61N IYSsgG l"9<U !ثpРW9ɖ"'8wR6(rbt9ta/ٲ"ቢ "g:Rv eL֥vȉdENAի89Z?iWW>nJؐ
-|l[8xCh8""AIn㠾"Ɖ.vcb$k)NsΧJvqy[ c,/kA]Q =gcz\ÓA5B3P&[d>55-%75
-RJW(O<V^˪8_BPGҢ!.eɝRR!9X+r'RkE2Nx<W?$y_Sq*NK()j(ǩa}9h+<8E8o+Q]SOSD'98%&9qS;qVpqjXqWFҝ$)*?OE/9N8[;U/1'ǩrƱ9YSh@2Ӗ Y )Q&ǩrEb78mC
-R8;9Jrƙ8gTbiWj69( xJ {=YSQSQ>INMS#)k=,_Ir{Kr'8?,M
+<< /Filter /FlateDecode /Length 2815 >>
+stream
+x\KsܸW=*,JM֛A
+MjtV$8IAtvPe߻>BR >ipPC0Ct(fC@!ixv
+kHKZEQ<UCF8j'dvf<"4"BtU0t/+}Z%@2BY;r'd@SW;P腑 CWD۾}?4S&s"3 qMJ GVr8[J8@ᕭb(.Xj
+/۸TKMHmA~ DŽYo9nTrfrqFaRtn)Xe^2{uD~|q&axty5D3 YNakCK#ۃfڵso/9Us'w^KoV %vhOE/=4{U9n޻xIӒl`tNc!<CCNnd͝t][B.؁A-m|yu&<~}X[Aj 8S~װ?^]ӕ}WYbGAխl^s+~˯su~0/3謏oM]r7ND4\5iY‚O4k_ɅFh6&>/jcU ]g ނ ;[pf#x-cp<BI]vBrW|ջ,'gV .r.zߡ +Xd|
+oy~~J-',\2^ƒ-j: ֥sw,r+~ZWc[ߜIv-^(NM2 "i^},dO+#|%ާ5b1/knh
+adNNKM
+-qrJmUNN)<CFD!-7)x1
+bJJA}.wVbN|{"ڍ5\hSvsR޼-υ1P]aPz
+Qz.
+qf'Ej-g<(L䷨9lԴ|+V.<qz;P3sIQU C2˖;i`Cqg(.|e}exƯ~`z852WT5'|GؑSHHͩa}jh+<9Ԝ
+QsVEͩ#5g }%95qN(9> gŷ9+9%Ө95<5DFͩMGjN²UGjN%jN_Ԝ3Ss*yWliiʜ69H y {=SґSߑ>zNSC)ghïD^99!IiNye 3
endstream
endobj
826 0 obj
@@ -2017,22 +2014,18 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
831 0 obj
-<< /Filter /FlateDecode /Length 3017 >>
+<< /Filter /FlateDecode /Length 3015 >>
stream
x\1߯ݍjk4.f&+-%f`%}7ὙG&,Ѝ_/I׏OyEƀ_"/bp\\>~,% %JJIJo Z;н|/ ԫ{ ]׸O[+)ɼzNҭK$HP O-!v /,h#6/C'jMNuO &#л6N CϛP |E~ 6@LLr&&2'B ωa9_@*P @cU]I6@:! 
-vK-AЦh(2|de&ӕm-5L9 *ܪz"ufr0_Xdԭ
-qv>5&Y2^^;+x
-Z\ҺZ޲-t»-%w}egE)Zh2ƶXc78n,:k}5Xz*B&H^rz=T]Je֝+9&,P+ǘ;1{ fHJ}K@Ҩ?<G KY*ԒE4\C0uIRC 7HB*U@
-gxGonGh.˾;ޤΏ`% </[YO|~8ƬyA(_W* |#*|V}gbH%9|oX(t-eA3tOhR=E}ۚPF#d<еF({Xt,}R2vt(oHO5&L>.'wٲ"#t)u>?;VN99h:DC(XG JhU*a(0 3hґH{Tk鼦_cJH3&zɎ|%L]Op
-eOq-2HQ$ET8tDg}
-ѶާѺpܴLDZ6МfZ`6;dM~m(,1Z0VIo5UNpnQꇁU|o{9lOM}
-F:J8"h;yP*aί#ėKQ*.a~ġ{T×qj=WҝqL(~ѣGbk\2Kdxnܷ6)\Qop޵%]"Ѿעa$$ á|8,H;_k3YA#p8Y-|{˪K GB:؜:n(+9܀+ɴHat*(OMJESkm--6z8 yQ:FbS)/^
-]Kq$KUՌ({A]!CD-~c͝?D 5k#U=)Qwzz8
-=: :}g@TJZz)^ j%T\7m>1ю'+ D
-;l-j~bCM,,$й<K|M^ sgCB2C%Fsf;N A3y1tiCcD=r8,,廹gAeNn| pWm:Ĭ[7v9IspNPa7pO 7lON'!s9z3;IQ%{sΙq Ҝ}jI]"B%b-<MFsgYm01HOnKas u_=6\DE3MT@2vA<Vk~Jx)>4Q8=VTjvs'>zyc#-zGփqr\Q"B 0 ȇFy Noi>y";<tEXsFVy%G ~?'.[?dS^}[Ҕ1Ea%o.<k]K.8PH5
-W|ԫ"YH^ZnqE
-cc?gq6ևVC jI*+r.hjI4+ROUWr|W}KePIQTaʠ<K+gtѾ[n՚1OP&+I4LJpM- lF\{P$Ob[]15.vCN'V g(*Zr-$҃=tzo"~2TV䮶ӡc?qqꪻO+ L}`V# `7/W8z&ѴDnnn 1*[ l +1'ϔ[D>ڶ] jCPvvZI>/}GTUB~ ȶ4 < R@BIAJu#}+\0ϻ;"H@ֳрLc뚮~6e=ZZ7
-4/n69
+vK-AЦh(2|de&ӕm-5L9 *ܪz"ufr0_Xdԭ
+Zܣu2Le[s) w[Jʪ܋R$+Fe'edgmoqX ys9tHjTTLRX'){~ 5; NWrLXWʁ1wbp͐^ Q!~:xF0˯T%?h& aꚓ^Av)oȻ_U.
+ o bo!$ܚ\2|S}wVI+؝yMJ͓1By2^(ͳ(<q"Yy >Pxe[TE)NF\U@=<?JsްDEyQZI&rUffnz#B5l1FsW])yZk[Q9IݽXdQ QlߐtCyϟ6jL^3}\N3eE-G5RF{}0;~w`srtruQD  4s7F;6CUQapfФ#;Z^yMMVg^ LJ@ 0V
+q =H
+NDiNI>g CI.z!^&96Ya[Xhyq|9`/W
+u."]d"&*? ~ 5?s%jw(Mr+*Z=<AБtA89(YMσA!#<P4d<WBkf|\|9m#S~ge?~ هwƭj)/-fiJژQE㒷lK%bfRra>|U,$/l
+C`W勢GϱرU8tZLwӆsJ\K6Z/EZMJ?r(URhRoU+AfX2(90]oy[faq Ӿ@0젧IA&}S&dK,ɓFjWL >]Юy$Uʪw<k6`ޛ 㺷2th=OEA#kzJqS?n<؍,Uw8~ofh4%6H
+.p뻽5JL.3m,$wûڐ4;¸Vϋ1ztUP_f&m.-)$Oiо97ЦCfy}6;4r)nv8
+n|}΅8bs4 "3غkEY C>0 M
endstream
endobj
830 0 obj
@@ -2051,21 +2044,21 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F59 833 0 R /F55 774 0 R /F60 834 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
837 0 obj
-<< /Filter /FlateDecode /Length 2972 >>
+<< /Filter /FlateDecode /Length 2971 >>
stream
x\9%WP,MVxv4LP$[
2rYBq xiy݉3񺈳 ܺL&Œ+G YrLSۻ⠊.b!!)꡶0v)
-ŀ#)3JH8@ Q0%Ό -?:LTÌ="&eɘCRޅ͇bE+6&) tь&لJ"BJ4# QJ ٝkeBz
-~p(wLG8uh!y`gVVH\et\m2IVTS8I@z zHBr*Y~.\s ydOOӽ-GZ獽6J:R@RĭoJq`Zkn (T¸#*4AwՍT@^#A)B(AY¤SېB;1xd\Vrg|bgg ly%eo6
-͊v{!cw^cf[p]nؤz3[ں
-  }1*H
-q
-B™t-yK;E`c0=׉ƅVhzvE`|1Ķ\wD
-4 k 5i(]%(O
-,$_DTH g8|dewAhsqR ?tQK"f,B- ˕ݨؓoF
-`$GX$\?
- +ed{yy!/mk6}ݦMHƍ)Ɒ
-Sd0|=ݦM|U/ 9f9̄ VC.'3DuAjgJH]f|;GNcͩrkkM鹅 E b $p8=>*J¶pX҈'n '
+ŀ#)3JH8@ Q0%Ό -?:LTÌ="&eɘCRޅ͇bE+6&G.hFlB% ݿ?l!%A~;czq*Q
+i-hqꨁ)B_5|.׭g<3d5)ݓ뇭q@B 4,T?,\:Jkek{ٱ[.{lPe1tХ![ߔv`5`QV(qGTiq/-%`GȽhG
+*R2PI5 l!vzc;#iWh"c2ΈۋQA`/K'km
+O8Ж
+E9.SO8vԚ#9V%S1Tޏ(&2q&Q'34vF#GP.zsd5BldFJ*MI3Is.@9cGY!u3Eb H!fH犯V?B̩r̶:-7ܰI gR auw'$r)bU$
+Ǝ=:jD?ncQbNA1$lPR8FtNb'_I\*Nb'I܃:u:8#b?.bJ(t@!M8 :X׆Ʌr񔽝ІbV0UBWtj`H#hϦ,q1qw.=S9$:֎7 5= 'VpLx݃cMĩiֻq{d@ʑ,H*x m-7`Eݦ%֨ըK0 B;+qE{7I$][&|8fQx\x\:pszTR+C9T=6MO^VӃ1ׁ0.&=
+d‘i''øEZ,EQ%a/NH;eFG~sY
+y?xk =G:wJ"?2 ߜ`VG,}X;EZv{u_S5Ί#C%'T0Nn ]L'abM/ŖŃ.N+_ho{ Ry
+鞄4 1XuIi J,MMH3e(՚&""e8#Y#@:.^'ݜ$';ͩlwvCz?[p;Z
+]wK@+֏LJ6iun'qJFS5Qr%q
+<y%^5E~KZM_{iqcx, _O|i_sv~?D Gax3q<i>ߤP2KL%@#;yٽ:-AߎuXsisSznBQpål1X1 :?~9Jbe-9)V4IDž(
endstream
endobj
836 0 obj
@@ -2081,18 +2074,18 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F34 637 0 R /F42 792 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
841 0 obj
-<< /Filter /FlateDecode /Length 2564 >>
+<< /Filter /FlateDecode /Length 2562 >>
stream
x\Mϯ1{X'h`gg;oqfĎQ"En zУH`ի5ߟ=p6 "XS[9$|YJ*zҰoϧ̌+g?}t}J)6:eN;|pƪtU7Ɯ~c[HqBnȈ@ilLkQZhf~̺լ-TiIQ#t g@
-Gwgz)OAGQSZ Wz?!{_=9^Xݿ? 7>?vRpKwڰ0?$D)ޅ/8S/YKgK$IҗZ6M;)i
-Qkn`bT}lS$wS\dPJHڲn$yeޚE2*uN|,|HjOfg슕׬D
-z_ѻ/z:,4-c gg=׶V1xWu<?,`>
-=`A;hAN#W3X40=[57=5H{8ϵRK*5>ŝ~{y: yal}El(0Hj,X5V{%֑BFOb8q-Oe4O`چi[<*&:2nF7Dizb@ 
-V'<P3 w^m k6r`e yNA0޸qr
-1yV
-̆]gi{]\(ULyp|t"H /u>V5R߷-!c1Lae y㝵wuU0[ v㱠}e9wJ @%辔yN'=ҙRVHi~mKpbu~[|닃dh~YPj(KRq]&"!7sC\R;2rZ&*L2@^x575MǪAK"ʏjHFcKZwZziTkLۜ)x PWۢ'yDVtdcj+7@>K9no9=0M[/`Rݿ5TDGJj׿m02Vj[m-&oJ(wzʷ)z&?|SqZ .C_?V`U #mk
-ڤJ;vj]
-0V@՗
+Gwgz)OAGQSZ Wz?!{_=9^Xݿ? 7>?vRpKwڰ0?$D)ޅ/8S/YK''IԲiIIjjRRP?\s#[E,fIf(~ e7M3ݲI
+5ۋdU:(YjϜ+a Y
+Q>YFRŭNvC[ȫVǙξj@ ̘3O]GBJM[0|郩U1lbR?Cϙ꼜MU;W\MktUKb)5;YЕhG3mf"p
+
+S-m$1;MشssMLhbptͷj#
+8s1jR7:7-PBZZIxi-rՐ~#BݺdiY+b
+=`A;hAN#W3X40=[57=5H{8ϵRKCw^v.!Qq3Q#ec%XXG
+9>M|Ľ&>Өbn?jmp4C5jr,
++,vR9HgKi;X!%i/=an~/=eIBA?L/uHuyeg2sJP<AjC2jyY]֐T& 7=-=ڋ(?!-ie j]jCR 3osl7@]#lu[5ӑbqM
endstream
endobj
840 0 obj
@@ -2111,25 +2104,21 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F34 637 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
846 0 obj
-<< /Filter /FlateDecode /Length 3371 >>
-stream
-x\K c0Zz{d7dK~H=lYVUCMMlER(E^W#/AV_>
-;L"@zhۖki;ePB1N6\{V*5p6jV
-3k2k,m<`u!2CE\O7+|rY.m eB%֝t&9-iusY
-cV׀fu #8H:Dv- M[:S*сI4eF-=O2ӥYW))H jԩ''nd/|xLJ?>?_S.a_JyR%~!Zm\8tNR'~_a)>e !ZΝ|2q6]`
-{gBwZ=EaGpZQ,PI='5$PT l 2LW؋]M=0.]vPn
-flinn}-nA% ~BArlNy3 8= >,Jg1d䧁N8S >PT;
-vbMBI{v"ZĎD.ސR¹!z[s/aoc1.U𳩝m%9Rny'NOfĚB;2 H Eb+%rB-&%E1ab <OJ'Ҋx.)@PGe*^wM%ˢع7v{$
+<< /Filter /FlateDecode /Length 3373 >>
+stream
+x\K c0Zz{d7dK~H=lYVUCOMlER(E^W#/AV_>
+Dli8w$הhҙJ4ǸU,@P}N" 
+flinn}-nA% ~BArlNy3 8= >,J7bOpq|XwĚ4Dh)v\(t-k!ϥs#{C¡&_ªwc1.U𳩝m%9Rny'NOfĚB;2 H Eb+%rB-&%E1ab <OJ'Ҋx.)@PGe*^wM%ˢع7v{$
`:YK[-,m8ӢMess4Ќ~M`m
s0bG`/V8 nt8l9ic[&a'f|!.ߎ w
-yʥ24}P.M1Frs‘~!^ԴtAcsjCO-MOCcvSݶ ҆hҙJ48S=J5 )QPV)~RL6yi=BEXIĒ`A<V`6a}wUN
-yc)c劫^Q*x>S09N:nզ'HKp+ bOM*o.mrb%oR9 k~Ѽn%dcͅ55f#oq-&tyqXc(]S(3TA?jFڀN
-pSCYնSV|jg^i\؉^Ԍ紐G>&7kb[oYI'~o{OԲQ]U1b ]Ud~m,OJb0UrU=
+yʥ24}P.M1Frs‘~!^ԴtAcsjCO-MOCcvSݶ ҆hҙJ48S=J5 )QPV)~RL6yi=BEXIĒ`A<V`6a}wUN
+V-M}EGgAk!5Ll]r&E!q˥%U'oǻJ_IN[B'|3QsgPn3Us &A{k(EQ6._ZN`MK'oH!=H[iDŽ|LåZ½$`lXlZ>L!@t0U+װK98Wtۧ,W\|Q*x>S09N:nզ'HKp+ bOM*o.mrb%oR9 k~Ѽn%dcͅ55f#oq-&tyqXc(]S(3TA?jFڀN
+pSCYնSV|jg^i\؉^ԌϧG>&7kb[oYI'~o{OԲQ]U1b ]Ud~m,OJb0UrU=
i-H_lU:2VRj$7jkb|aVvLU&f3}LV9򄱍X"q|HfLNu¸J&*eJ@ʱEkhR{|ٗMiD2Mƺԕ3ȚM-P
ՑFhZZS~.wәh-YCxV%4^ks_cb&G6^ WOq]iϱNd .[ٕ4ÞhUQtUʣ7j(1v>.$>dg֤`i˭V@ )(5[@J`H@OTtl3q͟蘫0f}qŚԓT+X9aK;j MO.Q\4 bP¼!BuW˚BvV'=2ҁOh<sތ(vI1ie a,Z
ʩc/. 0ζK ۂ3%W^Y9!cKJA+ak[d>r$K.hԯ7g͉I1W/
qVUaeYgF^l1FI`"ZkaVTB\a"ڠp+wbSV
-ZOԤXN8r4LHj&Z^ϺuWNf䰒sc3Ԯ6R(o6
+ZOԤXN8r4LHj&Z^ϺuWNf䰒sc3Ԯ6R(^{6
endstream
endobj
845 0 obj
@@ -2145,24 +2134,23 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R /F34 637 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
850 0 obj
-<< /Filter /FlateDecode /Length 3832 >>
-stream
-x]K`,_b
-p»v~ mxvcE>pVx$3^("|̬+kPE.)mgahƈq껂{1BjuHkT\RnR@ۙ0B
-׸=\ P-
-[f^V' y[&ު=C 9(I =_OzL7~9
- rQsCI9C5
-R tQ0x>G`sma pΪK(*%&~CH-uT>IM!mPA *% $uGWXՁ{e2Y"(] f:/$)T'
-0=:pi {3}d<V7Lȍq96;Rx2w[~RyqyVyfC저&S+n!8HTH{__T.o"IWK dҐCVdB$1ݱw(%\$h@HeW6ִX/D> Ɔ^<NdD<;+n$9[T|< RBvPܽ\]MIf$.G@LvUl c2E)D9 B>{H#P||d KfGX M)\a|GCUyF=#!cw5Wבf56#ZxO~UKtBP9e x&X]5?DkcIRZ$.qZ ٨c6嘍>p@!2ǹsOvijӾ)/F8I;3);.LJä])$hZ&NO
-_,`.&2-D%O7J|f>KWWilҦ±$
-i![Cb<Bz
-q#ʠ_J:B-ɫv,߯if.dvnS-[*99HPIvUa֕3^\LVraYK4h+%IR"Wj/%ZbVZ?^I':1#8y@TEǜTD$AU9 5 ңy@Ząg`f~'GK +PlsPv C€fSdNc3!
-Fڜ {Nhz]74 ή×P7$/6|׺ TpGCApƺaaa[ݰ%׶Ꮍ^T ! {v@
-R$$.8%$$Ͷ5$#-FA;!!PE*N!6ncɳAK5$Rwk )ݽV\HwP!ߏ,z3"jHV R> 5$ʪ:!ɶO.`QC0+-ThWm>=;X*<RCR>]3w6v_Fm +CchKdKOD(Xnf:1R_xW.zP2) :)JGKH3oHt~JzahÍty9酝ܙA=x m9vy9vDZ9|: f3yR OB(w^Ebbz}p)X ʽk)pNθn%VjQd
-Ц&w0xxPd^-!ۗ/17Ʒ6ȗkDcZ)az<_Q vm=^-H{K ]jG "eӥ58]HҷRv=-Gȗ.48'=lӎ^ͱ;[^ecsO|9]7>H#h}Kq{R,9A*U'"=T mҝwK|iI 93W?{NwG|A"5Gm-rދS]/>lŇ 6.CՋZŇ1<{ J[gv ~yZo5lxy:Yy?HML쟺&$!,j nwD9yY`/]KM?@<k͗_X<U <T
-h ncO y[ %"Ii ύC:%ݝNt7w>3-NMR3P̏2I
-՝':S_u/׍r>gl1M ɡT7/ k6O=4o0}9E23Sngi:}#O AjW aN\ ]hϞ\I#dOvf{4I6ªҷ3gwSA1?z\} Jp%|=nIsAˍmC% 6/[^tqP^O!ڴ\N3 i Ӛtg{Rr/ i e L BH=Zh%N4NC04zŒv*)Z".OG~wʃ#'M(\k>!
-GԠ)k6f| vh(j;N1o|ԧ:("Rjԇ"Y*0>÷U@M,6q\( !I^ӣm)-f{:ĤQ4T 'g ߃ǡx`.lpa!c"'7d\a,jfx ;OVSHOPdw(dz-U# &r;ݥORfm,ȋu::Iwhh( %?+DCiq!J숆<~)<жawQ|w^[e||[@)͡%E7?&`$jăhHAw7pzXjߕ9{\{''_ʥ_jS+8tbz]նCz[AQDV!ƉayO, e\^:vAQG9-:Z#]f=yo~I
+<< /Filter /FlateDecode /Length 3834 >>
+stream
+x]K`,
+Cd<qe
+Cѧ}VqA8CZASͅ*5ge9wǗPA8A@o̚p٤UlyVO?/.$8ڻ/o҇{ 2g ZVwOZء":kY'~,s@rGһޟ~/G\v}S~^A*A J4)Lǫ9.k pk﬊T]2Xba=TRGTf
+-PG-^R{{EY`Z&Y(ҕj{MD!v@W@GN4 DvosG=tӓM\pGM
+ ٻ!_-X/D &x 7ޝdgMgx;+n$9[T|< RBvPܽ\]MIfy[]]a씫dSr
+A}hGD2Wa#d_2<bhH<
+{;2g3 y%m$0Ժ{˭Z*&o=:*S&*N+6YjPK(L=Ɋ$A2N2apx̨a1>p@!2ǹsOvijӾ)/(yܤ7);.LJä] ͌}M4-''e^,`.&2-D%O7J|f>Kf8<7 ±$
+-\v͡U1GM!ER=Ke|%\!LK^)if.dvnS-T%rrfALì+gҹxJHO;9fhmW\KDIR"Wj͗_J
+Ĭ~XOtb^GxWqPX9H!6+!6o 6s~qjGx|@Ząg`f~'GK +PlsPv CGTp<6 6،:thun#mNC*D'{ 1PuC <| uCri3Z7D
+h\2X7l]7 lV7ܱR7\*!ҀaNJ} cM^;j#&]Qz`p$V~R1tlvŬ_cG:dXc
+gdN0ޕ!=nAnF7NJG2)ކdnÍty9酝ܙA=x m9vy9vDZ9|:Lg㻥^AFOB(w^Ecz}pP{ה:;V<[UGVɸzGUAQ\x iie-뜥ݳ@^[-A]No[ $|+G;uOU=mx&iUvxFvܱ ~_B ˗*In"3jܾ|)g1eA]#b{J t|6JkƓB/'_H~AR;j,ZORcHCv ]JЮ絥H҅|&`ǻWsl.ǖW
+'kX:Yy?HML쟺&$!,j nwT3<sX󬟳_s_~J9x_X<U <T
+h ncO v@t$%$9XuJ;dn | ugz9'[vӛQg{ڙe;!]Ot_
+4q3O2&$RĂ.d$8S+yRYn~m,UN5Uף<R Ol05̉+^ -ٓ+y)lr3ԐF=()};so{v.05N]?{#ёޮ~ڗ
+mdzS/Mz'JC{h[JE1i|( ( q(X}pƇ w?\XAHtH 8%W& n53䅅N'o)G$'ct(2I;Z az` ߖ XDAROB')6B:E;K4r4V_㒟 4nO¿ UvDC hVV;IC-2MvQВi@: { !3S=swcʜ|CKmd//)Qkkf:1yjr[ rSC("U}ZY'Mvr2ip?.?R;Π(A£œCgt-#]f=yo~%
endstream
endobj
849 0 obj
@@ -2175,18 +2163,25 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
854 0 obj
-<< /Filter /FlateDecode /Length 3735 >>
+<< /Filter /FlateDecode /Length 3734 >>
stream
x\Ks$ Wq}XIRgIoqfIGw[ZII
-aIș"EǏ$NxtseF5| >EGOoi~ ?kGRORP[VL#ٙ mZ$.~n2߿>=;tL:{_hdZIFj"]$ /<9[* UX%e)
-Ջ*!*nH
-{`^ݖ
-X!%eV::2YT ,T#3=`\8fZ˻/%Nfh^(v;'S;?|8Iynæ,`HS*-Lh2me":K5Ἀ2$nDE eݑY
-"K Dsd?BTZvCfEш-k"WCAEŤ&cGD`Jy0GNKxy
-YbXzDȋƶ)F^)5gtMh@dԫt`G\I_j0yYNe? 72eb$qNtI͙%)FU, us_j2@ ϹEfC~[n ֚nGi%$ 5>n{^C){`vY-5mV _4@|N[HH5kq:*abH\Zd ĕCWR0Am? _vbYghO.D $wQ RZ@;aeШaļUަDZ١ <z[eiA K-#2U!6WTҶd+)А >'w]Ҋ]8U1%u@L@j>N?kCu֊4o @`(P$a[&W0Cv!lo+8_TT5
-bJrLS9s2v^ݒb슭ռ]FnqvXHr!IHO w<a!e kBv еʗ&o q2 L){Lpܙȓe+F~P9;B)TA&R޹0i2zFrGs9FLS"n2?p,{*z5rJ$R:.%k;%ftEbqB]!  LC*x˄_[*cښV*Ɋ+trZG^#a-X {2/X /)u=xx2; #G/$9$I1sU>.e-#>NpE }X1w=K%Z~+:]<ʲO9tR<-A$&fir)&[H0FsdHs- n=Jz1Tt|N>)]{W(9g֒l<N쮄 ~֪B{qOEuܭvRע/"ґM]JF5Ļ725Sw԰X,װ*)k)ȽD+e-Mn O])st`B衜50dMtqKDCR }dvgӣP$Fo#
-VuTݎ:쵳:!tzuvҾv=5x2a3s,u&+.Qg\qogug?gF~>Q-9\T]=5yXNJ%йiv9ږt~vr쒞b-̞Y., ":CLhZJBȜܶϋ֓LՔ rzE*4[ ]gey7R<=F:ھ@dࠃ_oF;)/;yJWBDǤpYfOA悀uo=^x6RBI{:FgH0 f ,Xvlxi
-U--cT50ۉM (-6j)P';`KnFInd\pTў/MRkz)+[)E?DJJ͜lRD)oVWAUݲZrr1E]
+aIș"EǏ$NxtseF5| >EGOoi~ ?kGRORP[VL#ٙ mZ$.~n2߿>=;tL:{_hdZIFj"]$ /<9[* UXEEOQ.^T !Tt#gER ]4V
+ -!~ZLʀfiSU ;3<S Y_pwh.<*;Qyݢ"~L|k $Ai4!MdlF3m˴"^Nj,IDׄ".8a1vGf
+Ӫ>e
+EK7QǦH!V7څ>G4Ab/ȗhejAO&mJMF17
+ Ӊ*fMLF?|<OpD*OnOQ$yZZ΀^sUL3$){}X@>i̒hMc^(CS_ʒJ+kV|'/Ԡv(1/iA84}bRg*(cfqmZq>hNV՛c`s
+JN ȱk_1rL"[1\6
++.&5a;"S͛9rXrʯ'ɔf
+y0ײthSHb^*oh"rPQB4Ϡ[RҪ +*i[KߕHHwhAJȓ;.AviEɮ
+}u՘: & F5'v^}_!:kEٷJjNw^
+iԋqnz_fvjޮwFՀI#8;,k|k$;ᰐ2Ϗ5v_C{K8NuU׃pl=&@c8z}cɌhk#?[pqH!* wD)\4B=##~Ds9#SJx?7L8UTY
+[N]R9F%}^`[QRqUCO`dJ~8.͐j? ڋ|!<e]ɇS|M-m1m{+mdg:9#֌vǑܰQYk,=T,{:xɞ}<iu<ySe퀣SiHKSZ֤똹*r @~oq"Z>?лq- ?l MGeYЧ:) X]4H9y|t$B92x$ɹIT =i*X:>T'dq殽+3kI6 zv'vWB݆vEvkUս8ϧ:VakЂZNKȎQƦT.%#S[K
+v;jqjki|B䔵^ؕM7'R.ԎT9k:0cPq&:Y[8%!g)Ԅzk>2gQ(Z~Em7
+O0A _9d˜t`h3'-8'ڧՒ s}<J+c}ɗXaZJ48.5 Xzk#*iIwܰ<{R}(eOv_
+|  魗q z{]u"_OIk5X0=fScjW%+RrV ˳}^y61¬i/Z ҆`kBO +6pt:nGW]Y::bi_uv;<9N̕y (Nx3yQoyڸ3QݺK3O{?#?GV_ˍhi.*.ki<c,'4mK]U]:?I9vICMf,vZZP!&@T-Gqpd]On[EIj
+||ksG;
+f
endstream
endobj
853 0 obj
@@ -2202,20 +2197,23 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F34 637 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F36 775 0 R /F60 834 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
858 0 obj
-<< /Filter /FlateDecode /Length 3674 >>
-stream
-x\;$WL "XVc@$Ee +w$ٽ3s+9ݞ&XH<$Oz:yb)`O>'urRxkO!>óIJ,RZO+QkMohzbGsH)Ѥsy'V*ӗ1(#u%#ͣYe
-DwƑ2K/OYȏҨO')tW= }ӟ0^Q ߈dҡ BY?Xg)3?kVF`+7w =S6D|1s^PزKdaU}HQQfFxNwIy0\-B^l} 'n+=;1#c3H-y.a; _<[?ĥ1x>n_e^4bB<!O~j(Vehq>]j%SaQXvVQaLf&$^\
-ȲJn9Ƅj@jٙuєdHZ5ph(ǣ!@dlm me&0F- HD
-zZAzAZom@٫R CٽCM`r+RJ]}@M@%BL0d$Gp)-R;Z TC??/Q^k!{0Q@S2'?^
-IYM]=hT)z(UGf=cO-ۚQH!kR\YEKݺ]!>
-Y}~j?]SVywJHąAg+/Im5t&Ke.aމe_FB2wʥk{<xVQ_iI&F#҆*N5 0Cd".w=w{T?(.q(=Wn
-r_4˼!5?
-ctAk&ZwjHŵ=ݨ,f:=xT<8Ck}K%zGlU>wwyR7fUd5r|${va] _Jm9HO
-y'pp
-T
-c=GWAilZAdWvb򮉥ʗ0vXky/O. f~#L81MEy&sĜ4&〄4P9cP?"?)B~񐒃| |OY $@Wj6("KЮT4x{Q8MP)§C(9]s-0|/T9
-Ù!'E}œc)@ՕܽhטwsYK,~|y{N(J~=v1P94 %2|\ B%Qt⮘xf(%Z -JrAS6nma@똶b? *T?3)7w-Q |{= +<~l#7Oj[Tz ItA;anrE?@!cϛ]xREU]qp6QLM~j36\o?9n uzY |j o"va@q,c|ڗ;c96ð)p\?İC.kZAlMe?,P*hbAl!iӭJk/je9 CwHi-M=nUሄ4y%R[QG\u{G4>^XH_ _͛;R? ZX>Z)EeAD;nB;Pu7Ҭ8a
+<< /Filter /FlateDecode /Length 3677 >>
+stream
+x\;#W0ڪ*e/ٖ*+} fnwt ?Oz:yb)`է/?? |O8֞K|g'w3Fqn=Q)79>7sm{syO;+[VOyĘ_cL
+4uڕKҰ M?<JQFh[;ZHݗ,G?1o>>;}Lo|ד6O}g!Pʻp $V%P-5I]~O$HkI5+F@H˴ oaK Bw+{C1s/ݲKdaUF2!}D GU桝"-,aygXyql}IOݨW<;1c3H-y.!;y~^"&.M }.JܧU1A͓T".%PvMCZ ƝhT\^k,|֨WZ3Yls-yX.F%aى_7cB5 EL ۪hJ]]${-zt8m|g!Ȗ $g}MfXԯ+"-FU*gג~sl]g/\^-ua<8&b*e>W V D N?KnȻk:ϴyJ1?c=PΎZD8dN {%C: GIQ?OX<-ՇYύyO6xxY>D1(?'&ɺvb5#>yɥ/*05TS[gҢ[L*6#PQp~gA *khP.$Q5xn潇a)$57OQlb tX: TDZ +!uxP&H7YI߲ՠn}j(YYelp*gn֣nH¢7uQQ&𐋎zƞZv?5"!jR\YL—uB|$$wNhLw\&UԄ$j* _k;FJ,#&=g/(n6^PS؉tL݌4,LS0rX=V(@3IPf#
+Bu/d[;/Vh!E\t9P$
+?s#C(ƿv6R^v(;@WCpb{4XGpcIdR&t!d}KTl50zC׼ MjXYd.6QYSy{ͦ/[2Ss4yҜ~qhZ'؆FoY(Lsc$0\GlpBiz+!USٸFHyGx&`Z֊+stS%m" 8{{܂#YwE^;%QG$$zJ0'
+'Ns6W8M7s1J̈́S = ZKJAsjnޡ?HJQڗmDq"}-EjI' О'SS4J!F5Ga39D`$f yܬ9 16~jZ)aƿ"BS/T-U6b&K^3@gP_4N].s8SN,2-9 *x4xA+PDՔ$'~LjAiAff踝Vzs8@ziGʩrWZ3Bϕ
+3+Z:Bf{xAT\ݣ.膂6A kC}:p[>OiژYTuŌʥ %OFKú(
+sڑZ217i
+rNF
+y9PB6ĨUDJdNirt%`44\,5,FYfhYiK)=IX]cA!Гz
+ܷM"WG")^J媧 iп/&F`纮ALwUn:4`+qWd(9 J#thA!;]K] /m!BIk4:]_ZǤ59”TG{k:GIqו
+#;G`Lr
+oC`*_K9![q |]'QNw3==KCNt'SlUܽCXLer\4kY9d|~w<=j_ϧD -6h Y>hI.rKZD]1.hfR"_Ъ;M[[:-؏"{AݕJgԽz6%NKn;~O
+_?G=?*UO~Ocv+ -!
+Tʇw <۰G1k7S$suP.|x81 e5@#k 6D=6q,ct1ljf [ðaQb!~Y5Al_,PPg CҊݧ[^R4Ҽ[
+7ACDV#RJ,,x )PEBTqKdt<pռI#!)5C(Cj]/h'j uCtj<ZGfG-
endstream
endobj
857 0 obj
@@ -2231,29 +2229,22 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F36 775 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
862 0 obj
-<< /Filter /FlateDecode /Length 3809 >>
-stream
-x]K }X
-ca1/"!ZіOZ7>v) |E5NMј1#l\~.9_N(KT0<?/}kG'K`-xE
-ߗYy)̐B-mE#rȺ-KEiDke |ז\:l5(ی8|%G(
-N#@kZ>a x)׮ӸCq~VT|W*|v).8EzsnOCFc~'RKMKI3k窌EH\`"$?EvHlɗZc
- Ew{%{d,9f݊_~Kp_ϩ~ԗ_.)%R&1ԗsD64fv̈VX5#Ui@)Ŋb. 7n~}{k7SAA(عg O˻c*KѱqqMyP$:/PQ]d{5UFtIbK<aMF<LΰVxL"r@M"r 6\1G<-FPˣpc&?ק |yF4}Jc4b+M8ND%Rp"m
-)AITt ({"
-H9k9JK\8sW j+,
-3o\EGOmk#q"qg2vq4 QS[|flųu-ʆbKșζ(ŖyKNVata΍K<_yB
-ؼiűOs2_jT*O_3sW؛*4.4ww_mL@iT /%䗦jBc+\,)GnrM0FSoz7[bqbߠoWeot8 9jye04L1إv/"@LO%D@HBɅw
-RrpCڦ_PCx a]&pv5F@ ri66BQ u%&Q[w1\@{;Y~6- Tg~i(o=ZV(th[5P)@ dJqM
-fdKP' ]U)Y4V4Fq/NH$a$prM"Ryz1j.1(@^C} Ĥpu-T|KC ]
-N]RGu-zʔ*Y!Nn"CH4#kLP |bڦ!(bw@+ "a
- B(ba;؇%!؇ o>4ҫK~w
-LRG
-R. VD9^i,kFR1Ԩk} X`g[-3ɖ2E-[5;`Ŗ6b4(ϼ 
-㭶`Q_E%֣Ga+;{ӕbjj
-*`KVӮy%$G)Qh9
-t|].Jk~fq[p
-Y߭ lM ?\Py u̽=N Okv/{R=sYÖ;Ep9m{;PPL
-sB-Hv* mjA c;De/΅5#x,w8
-6UAvf8su[h+-ffN,]\-= \|sn,QYf*0>7yY1B-,eLHeF6[[l4&qlm1&IMjN$A3-$zͺBᡮL YhpYA }
+<< /Filter /FlateDecode /Length 3834 >>
+stream
+x]KܶW>F?*MoqtsĊCrO7Hr '菐|_޽|zëdGϗO^_BLƢ|'kGk'kZG(+.>!<u;k->P ?rCwsϿ}Yk!8rLP\ љ~)pkO9`DT].|YK۽?}z.{1\;ΎceIwmd)&"Ή@Epx.)ʷ! OXcq2#V!xYEÌΏI?7?v{ װ
+/dr@:1u.*w? k:ȼZ*J-UML|Ch/-]SJ>;)>,/m/ih2FA*5#UiA(R3>P`wn8oLP^5:KWv=TϏ5U✥?
+Kˠ2Bp$-D %Ӧ 2"#&˄FkKRyPĞAₐVx~M"JM"J .^1`-FP+HCCPGO<m_G҄)р]'Wm)$ݛ-XW_&:=vln5Vi%EMCAL9+e RK+,(
+׷qj6բgJĴ`Dl褬GS'6i3v韭1LZR
+}uN w,o%k"ĒKnD" W]Szvcb|CK57qlw%M]?>o0rӠYU Bs &Ԣjx5j#mZ~ZU*!uOYVKmN̄swG8n0ŗ!jfX<Z7~bKh\-Ժ=lKiZlY&TqFFL}e790?^C/{ːZd'ޖfkߒ˥NI?:8ziI)BDؐuau1$jf;}4k"2+UB~jv= .4h^Bb!GO%Z(Sh2D>tQ+X}kzEFs9~fN$AWa>Ǎ{f!|ƈB@J)$H',;_/B@(K"Dn_.]?h,k\=tT[^ mfr2%^ኁo D&8h)j k|`{5W+U I:HАS!4k宖d.i;|r#
+=&1Yɬ",8$@ ,񿳩kMCXw3ɉ"{-pَ&q;!2:q}X|+KZk<;'<|YK1 $zD-&$Ǖ'3[Q W;e|y!ùMj8yi#0(3>1^fP+>"$bp#X`|dVF
+M|=1PGx*1 #&:# 7٤6JEnnVh=*{j8D!pmh"_X(B¶MERJ5#38DM84uX)R;5hCۦ!d<-(wc ) "SbL
+]: B(l"
+=
+lY
++$s`@>$dl0!RE|ȾV߂I'/ޙ@vMD~ ]k7]ZҵG(k=h+AH[>&C@
+.$_"㰎<%a>%o fcpFB5ҁ@ [uFB3>#fC?'m#_S݌&+KJ"̽G%
+XH83jN]?9[i%t.^&ܱ8y䝬 9 ڌ<gab*H3ga=gw&A)xip.tUǭLE#<f ̠L=Kxe<Q̖ɒ6w-diMy1YrŘL\N
+LxW7dKfti F?E_
endstream
endobj
861 0 obj
@@ -2269,30 +2260,29 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
866 0 obj
-<< /Filter /FlateDecode /Length 4757 >>
-stream
-x]O S>D8 ַ i4ү_R#Jّ4y/zIy??k~0w7q9cny[kɹqv/Xk?,kιs1byʈ/?}s{LWgԇ
-ci`\Qq֪%0Yq5aKaqI&Q| #/PY'P$?YQjLhՄ3>Yg*I,5q&Vʽp$)
-#*{#I4'QG0M+]r
-#P"6(K0YO._i
-,Uɵ:a+4LLNLѱ:n6v"F-ɖ\'P1ѱ3lm}y ڼa6WĄ4ZIr;+",JOc u@9Eq[:y}@D &9Gaȃ_I5gd7
-gƼiT
-CS#,mƊ:^H8?p@G615,@P!f;X4
-CA.VWKfJ'=ga*͇PA tPE?>;xh"cٺF$:h%f X:5nmzV|^hoyM{5΍-[]eo+.]Tj{;t^dorjoVao/jo\~
-9;AAgB"AAwo ξDGS8v_Svv_~`}= "JuflT+:+WW.X껯\}})̻v? x~+0&,(T:aqIh>s:a\}RXa\~~@
-V
-󡌆Oy}M}ު3O"4}RߵzHa޵k%ݏH ^Hοv? t~+GyJxf衸 wZ݉Y JD˼-܅9,<{BX-=p.'>%{DOЮ!9~7|R=9)ՃR=9N+S.LL:ŋ{I_2^*>MXUޠxќ3}Y
- )G5'ѿb 4jK2a<LH%a. S7qʵ˲uRKpS 
-K(,BZs^͇3qC9OS-f(
-}tz1PCk'123_-ll҂bc9z*Ģ7r&̰PNpSkZxFeV'毙&f\M5:ZG7jtU&QҎ /gW&ή#eVZ͎B,XO2OcJ %j;Txje ϸgor-]型m)Fh[̓`[U%\`42g(y5R rC#TRe*;P4#TgJ&.L1B[켦BjVP 6BC`[TFrFmآ*4Bl5BTg8h2BmVdU@ÙgCT'Vn)(~/\2hB R&[" JЉ7\I>Ed)hY`Z΢Q41F\AqtsV 8: 8*!8:}~؟^ܘk@ު~ӡDEEh"8S
-AdHտF,䆏jg.H`\Rp5bΝy[ 
-1܄*k܈$#jzԫGM$5Qܩ&Vj$4]MXKѐѩ&*i %5qV5 SM nU'~j$9^ @ZVPM-(EZU-u筚<S5,^y1vf<F ͓cl/Ujurkh [FJ3#iQ up3hGp;v;prVbDTOE昨0c#ܐ`Î%>-ɉt;7Ҵʺm-l%gdփn=Q^҇TB|l Hęm
-J׈l1솪լ EЇTw- l.{GX:uo06)lxyfjF]p1kBa*)rqzdk^sjqy1ΓA,ƹjD:EnqM4Γsxfy 88kpqC[2sіhKmЖڒqZM4"-(Ig'PWA~2stU0葼i$YgH7'|ǑٜBgdb7B䚩Ic
-=8&,=n1o(cKhP 0ҸXd*Yb PP(W}ɳ8KB\^)J#Ka{TrFUZτ<ËF^7 ͆ˬdieTzY Ves=fY{2+yZf:YԮˬ$4Ԝ &<{¢ ,\Nby:Byĺ+!n91˹\n;py9#)jNrj#G
-Ro(#LN207# ܓ-1k}W97y&͊Sғ)&<o%B4
-A3ݬFM|<0U'-ߒч/O$=AiiSt%^q'D /KK*•Ϛ\EȢmEYMz
- lGځ41\ݣ4)
-}#siU/ O4*[k9Tu F[%K緜w%٬paYs)|Kӆmw\.LX?K"]1osvnP-0D=o>ߜ{VǺDW
+<< /Filter /FlateDecode /Length 4760 >>
+stream
+x]MݶWeKqȮmvAVmhͦ3KR"Kg]זDqxxf )~YgހQy's3xO8o9s.>r%7RJ|B^~Xkιs<eD?@=@hR%CTrI
+ I~"9ё
+:Td]D:4IAg=(BFP
+ud񽣼
++d)qDyF
+]&"#"<>="WZ sa-j7"LYRp H~fLi'ci!Pc%ZFaY
+͊P`m-e! <~ye]3h;pۈ,4Ziۢks y6z<'w#+q-|Ujvdg6M^YYɽaމTOL)/+U *J!b2*p5^y",gQ}zunj g #Vp;upYD/mij^!I/\y"V^/\ W]ㅻ*x[[oC[pY5d\q-We7h0;AQɯ"A!x`ﻅ>eđu }R/D_Ҝݦ_ҷq:/չqhBuG7N6N0o
+8-dѯYNa O2q<tL%CkJr䞔C%DVB驕N<UZubnH96eJxˤ_Ž@](hu'&SsalELuZ0c"'Z
+&m;ŤdVZ%WJ< B-i^;
+ic<H^3wCKçR.E/\
+~9!ʥe%&\:r)I+λ
+zºCgT0UrwZi!E&y.d-w' auJe^O!~i*Vt9V[]VT.eꝎk.TmJ4Zt8>l8K*C7H;u~ij9-}H|/fH*[1Ca9
+,Vhc \QsGa8ga2
+ӺdoAQC<v;MGd[Aӝ"77D8 /ՌpEUD%8%膎 hD+M̐~
+ 7KZ:1
+a31[2ᶚN3j&N~V3QV9
+`40FG?%n kzT5(͌𧁣)p`$6LBrZv6ujءrL4b!` 2#
+S'fD.5sZ{[=4\Dyz"jnA_eDeLފF4lZ״ Hb
+$J4~W"b! )m_Jekc8ZÔGv1p=},$+6c'pT錨~pe+4nрOSs/懺te<_щod3sصB3\*m.UʖC7fjz>2%_b%_"ls8 1NxӨcHUY91ϠkYj6ƼղK_(y@ @0F<9BR3R8p> 4Ӽt,_te쳫Nٵ}>*5g2,>{gWhN>{2:g3gh1J$]sbij>{yge^3/'^cK>*5g_K\v)<rog]/gEeZAUi!7MCn^CgD;4fSK@JھxcR_S- &?Ox9|8j@~,e7 <LgUy-gU=pv%+e)uonh@RFĴR;hB
+ Q#]K_ 3!r=pH jI srjufY-jV
+TvHrlIr;լK**tY׮jVV4 ;#©N#wj+T-|܌{u[k<]<e ϫmWsRZ.uE1Mv)沷(HԲ2.)NEmё#]Kr
endstream
endobj
865 0 obj
@@ -2305,34 +2295,32 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F36 775 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
870 0 obj
-<< /Filter /FlateDecode /Length 5236 >>
-stream
-x]M丑ȣ}O`Ѐkeiw5s/HH1E2P]]||AO&oӗߍ,X}_}!oޜB}?H /zҠߊ;D+>1wιR:cN;OZ*}c׿G6 e
-ڥ&%2J ݡ>B
-oJ$Y./5-@ҍ@MHzçJPkbB!l#drVFJz`;YWp
-6fb~K#i)[GZV;VZ)` FC˸@Q^+MLrU^D"mrn;$ƒD#$jX
-#HM¤H(0%wIas$*#Q^QK?DIב@
-
-[AAS1ۃv:z!bSآoy ӨBg;塞Pʙh/=JE=z0Mm8JK:kJ)ZdCJ}
-F<aM7 NXHO_2cQYsͦ7B} '*pݒUNa,W)ǿ kǏuuـ';6hAEg#AlH] "Lekja4Kʵe"o+mx#EXVtb Öy?o#H--Os҅^M6+׵!`DT"wx״NDX-E v_7۳)Cʊ^_N3`iT8;RyH:c#H9+aHyl5(x@mjAhFc42
-)8&f(&vzD^0AsD}:Dp-E`ۢ я$m mA"=d
-DHn_ܽ,, }Vzb#Z(+,&KE #xԽoC+X">,abwlkrB+ʧz8FXL|,RT ׇ()k!'v.OBHC0nC08%t
- :
- MuŻ5.dOE.Z4]1dmNDPUx0kGS"g| br}4Ƌj@5ܦ⾭
-[R#
-4z%ʁ jp^h9<F$G9h Qn(
- HRUs*Nm:hkAzlޞ ){\˹PЈ_\:n𙑿ɛHle*Z<P9[}'uxeaxx/ p:>\(t !pFz:f6؂=. ܑZ<,灬ϝZ3Z؞W4y״<0PyZw+N![CP;]HO[,YeVzl
-KZFsT@!=J[y( XɃz) %$Gb05oѤQ3ŇRDIǃk!/0J`&s-DZ~PQPE(἖fI9ZӲfQiM]geά]ܙe!R?ClY{..)kw2%k#Xxj#[ST۲PmCT۲v^jf־f[> zjF+m:aݧJ5%f~9?*&OkR˯ ;_6<dә-J0i(e%H; zPfd*I$s&;@`*=jYUҤYf ^unBt?6 RBhvfy%I3HAh^[l
- pBJ_`98{qf:z=oo~w2L:}66oޖyz[yھy>pApVph|?a'܀jjqQK8˓P:7IS:Xz@Pi'@yoQA
-AXck(LtLp8=}!΃"Lk hHV5S7YUPriU1*_; <9|M `#]m[N{koQC3LBҢ$^-I︭b!\I6sNҨ'z /z'٬ .XR= ӗ&CcG 'OK 0kFGo)HsZQv:(!<XHU{!0*u`#>/N|WZ}tQ\LJs`Q\pB"`EP%*`~UB;"FAZ%NOL^>K
-3[2`~OɀctȀ)x:޿kȀ+_n-!!d+nȀy!+ZeDCҹR5(2yIa/XdCzq[Wl|iOmn]ٵuQ胄'IP|qmZ0qЊ/nڲ9QiR^FQiR%pyIG|rgp/EYKn:ȶ*̶UEd[G5PU1!kO N]3~p-ϧK~޺+e^tytٰtYٙ.R
-]S,lLSqe.S).Ky鲋/1t9m1]^O.?k[ږ.R3<y-W)]сpFQl+}?U ;JD0ETYKCRBi>c Mj;x7sL,~OkZwbũKA(jT#9GaYĎ2UnR#oyD["
- yePRѼ
-P 5&g~Cޤy>D9W0QDxoR3orCGB~̀Ę+"onڇ[ڝPK7""e0YMM!”-{t\~}I-Lڤ9FIڳDPͤ2کeO-sLM x5Y O2ew!XTzj^TSJD{1>|^I%[4Uܶ"ݟФ1ٷ)],nc[Jn6WQq8wjŶ^CtpĤ#
--pQO,WSoZt|Ļ9UI(߷YC~ 3 Ǿs?=KQZ /Y ➌:;~rgB_Un|'ˑ9x?-mhxۅុ$}WRTШ@k EԍCugވ|>7/,w9 ]ayW'(>WS!>0ӳ%Zr}&==VB:oQ˫F#vۡ+ʼ&|!G7r$aڽMU9"W>"fsh9cdKgbe Il[Wɶ"fƝY:{L<:JA])(/,q^OI
-n@4v=P0y`=ǎM[6-jsf#m` (O
-s8iSwn^{Z%{f(6&̐Tzl'bJ{
-mTi;NfY,؟4=Sg Ҡ )k >uh
+<< /Filter /FlateDecode /Length 5226 >>
+stream
+x]ˎ,q߯h1'0ڀvg'he[
+asMTD=Pi.
+k;GkyEIj+3HP Q~$:XpD K#QadFITtPDJ3It@o#$jX
+#H7r4g鏟C¤H 4!J Z 0+} ri-<Ϧ9opAh
+q԰uxT9z{N'쁲5Df2")џo k09"FάKѽ:䦎Ag/VN yG|Trh;)u Fph)hi1R^Om-QWhm)mְVyaj;"IkejNmI^m*v9RRj[LmnKm<_7[
+^٩[$¶V8 7)t_/xk9d{
+*}nm!溪[c;St]Ccﺺ+#F҂XC$guD6V6$^*E}IwYCB!ma4X~Kʽ,mVĿݿln)@-X¹/g$Ưmf-nLidv}V R+S+ $ju9 ǫ]%rj++(@d~ߝm_)EJUvĦY_D$IH79 EVNaZi(x@mjAh*gGpe%=npnF(JdGT*5}d/ܘj Lު5`ND1=DSiM26 "E:DE(*-pc/ t#tpTT= +;D80>nbW۾Zs{JG @I
+qzhdYn!
+x_e&>sצE u zLyګ)=>кZmIۄ>Z|㭶
+:Pb9'8@uI8z;R9SR9ZK4iwE#c֥mٝpvmKaG:3nKZt]n"*^ݗyapzkc (M|ԈOZ-:=qwd`
+zecSgPfxF+5u
+jq5 =6oφ }ݍ˹noTNB-K>3{ĆP!ᬢγJ[*9;G};w Q40dὉP(!P93f6؂=tHEd5|?Skdz
+,!Gi=VݎG>f!'xӞn~ O![PT~OM7^=uKrU_}`kKרC+|!'-9"|M=Oۼ Kϵ[*]8N$8нV/j<qٸ[!N\^Rr(SRzU\{^)ZRS.R>J<߉u
+JM&^^O$!|~g|)&)b֭b^~N|_uV>/ly͝|*~[>oy+|>˖y.S>+q!|E|>x[>x[>tm|x[>[ײ.^z8 K3 DV}U ޾zzM3l}Um\gC\0j1h[ݖ_)v?nӹ -kp%. +M
+GG {q9;}qgvz_n޷7
+l:o`c}c߼y_< !
+ =7QZ|oq{,:TB1r{doTms02v>ᔮ{(@.ck(LȁNh ? HeG g)|8a\YfG`@C\GreKTN+k~BJ\O;m#|
+09b[r`x5ȎF(-JZłb)5-h. J4H+Cm
+bs0}y>4vr>ciAT$>QGo)JsZQN?+!<XHaU{1*u`#>0N4)0..Jq,ˋuިC]{eC^`hUň0/^Z)鋗k鋗o<+<g ĖeSur:g<oe`}qEM?@yKHߝqe0 }1J.⏖zAzj>5q?#~DTPw+Dإ.4튍/߲#K#.}l%I"J/a|OXytNisJ+xNi4HKTzUǻjJ[\i..IԇKUTaG~ A.3(ZM
+ B_CaEv0|oT3T=srS:\t4ʙI}T.>J.'$ >;+T`g94>9Y4}[Z6h5^fR|D~N3 
+
+PCaBx~
+[ ݄M w#Dno˫{F.fam^ܩ]!G7rT'&/;>\՘yKc<Ho.ZڧAhm;)t/| M-Zo/K.1/h5cv};C6=ӂ'6:9JN])okNPXR)E+D4*4ExGd@uh5+MTʼnS0?yIu=ዟ<~cޖLV3ҔuJBU"z">]O|Gz"J12.mOq\܄ei&2ۍƽjs,kk=9roʭ\|kUŢ62`NEG)kdܼ<+ * {OJ4Ki7V4kaD] UYLaWp>'>:]qk2cocVbp踼m` U\~ubx52lV(w@~
+T7;k5PߒP|>Q])rSRgo?Nq
endstream
endobj
869 0 obj
@@ -2345,21 +2333,17 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
874 0 obj
-<< /Filter /FlateDecode /Length 2836 >>
-stream
-x\MoWs0'`HL[6sS^SDXTni
-a=IϏRFk(e1]sGJz`yO11{V(k3.>fܷ#p)a&Q#NvoJaNbpecH(BP
-dh+s9ON㼈n&AOi|. ,^I.Cc#jKH'܆ZP <֌] 諾5<!קɷ6ti4jV4ɪ3^x{g qK++ {-(
-C*Hlj@
-d*+dpgI %yHTrB&8lSp(C.(%פJiIjK&P5&MKeYr*vgYeWY\e]2tie8góvɍ?yHЃ@%emON׆ gXr%hJ)/dl
- DjN=_!ʂ躨qŔ#HTҾ^wWFc
-|vAΙw<g:V]Npec0>rfƥBo+J)$DjDejX]c<Dr.-JZJ+4,ig[& ݳ#3d9[lҡanwMUaISG1WYVagM MZVs/B>'Йx%tG;I!,+?m3QSsdpEAi9w +=`nVP`4cd\;&Vt-
-qMZ[hp&hy$e#GSU41,rH%uQ
-"R]NO{:
-BlÄGk
-QcͬB"^T)_Yp8Sċ4fRS/B?ig+e&`{x 
-&dI>Ю=\M=\M܄IJ脑K&PӿM(-8heA.ɞuW\e]vpuLh%Pe/gBM_!/K~X[pV8h, {*ZCXT-X-[j܇,l(֊ ▴L!@m:2K7C뛁ろV߼XMzgͅEm̢wW\߼wWᩩY^
-/p %T8޾y ƙtgs1r[3;)shW˜V>Y-sGlcg+gLSGљmm%dNT'D'98 2`wKRVq]%Cɲ-ݒ^GWTfnL,B;>;0]=#)6(FB A0r 6XWǡ"S_{)g'O
+<< /Filter /FlateDecode /Length 2852 >>
+stream
+x\K#ϯ04Y'0 Y-l 5_]d7[duKMJaFR*ɚï{:|~hD`'E_A N
+o|/Ï/R_OR>+z|}FDjgRj3s;臞X5*cϟ5@,] iK^Fi[GOЌ!Kp+Okv!t߿<ڠ0Tv/OJf Pe[H 7i_Hj% qCY5xfD@T#kHI/
+m욌I"q8}e5Fত间FrgV
+eAnx$L!(nU[,ɣPέ8EqH(Mo0K[x KMH'ϴ@x\"nw7-(O6mg98d i:u&::za¢3p"}Vh$wB3;%-j^}!z
+ osD\;'$3}>2S/Y~(sB)_ #lL GVm+` `mVhׇKg
+\(&I'dFk̘:jK:);ӥty]%
+ ِYä1klYbisa$M8šVC[1)WGykvN-CR\++.G{r? te <=Qh*#21"ҿrۨ9tj5&#ɧ' c h +=`nVP`4Cd;U2Vt,
+<7"--Jփojpya&f^ʵ3#
+ڕ3ccb$+9w<.ǫkg˛"2uQu;ƞ*ى?޶
endstream
endobj
873 0 obj
@@ -2375,23 +2359,19 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R /F40 876 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
879 0 obj
-<< /Filter /FlateDecode /Length 3352 >>
-stream
-x]Mϯ4YlxgoOI /)$-Exf%~<>*%/_/뗧o4x u".3g:8_.?>s8q.kɹqo|Rb W{h}5\XN}bD,eDO_\ ^"B!hAӚڤZBjiRv2aT'6cR^_^~z\w_KpÔ+-V"bF˯>D'b5ɜ8Tpx#cFCpmTnml kS(;($%zE19%Dik/>ck ^KL*Äkmh᫝w Ж%j(dJ _y]Hc՚]R\"$( gz(@fv32v=M<R-# }L<dxH%9F<
-7iuיq tXzp?[:; -Ka〥#>tfKo,1NdMPK7?kM/?7˖NᎱtDK0rw8`3қfoc˧1Nd=O}R'P{N!8ڝ䲊[Iyo%v.DxJ^qCEmOvx
-fSv0ǟ<ywT0U6XD%Y^/Bs2@[̈́d遰u"`Vo}!5(}О!p5hSpϱ|8! dSme|ۭ!4ҿr T@~h-68urGd
-s=Ec8cQӀćTsIƗܧ@Yo8e<hl
-]
-ץUwKiK6]9heA.ɞuI:.;ʺ$Ch%`Ho#Q3e_qQ/+iOЫ*#h#Zc)K FR]A;ƕ!}LөDHE.,
-ִ':+Lt_Ө$Q3ޯcTؖ _RH+={X{fJS7Jeӆe#21]se!R6\6 N_kj)emɨ 7-7|@|j7][{vy(%6푪tJ6ghK{fKxnfм6\e?tbz
-kNecj8,uZ
-K[N5%
-E ^$`oSq xUoł["ɞc1shf$[jɒ)"]s/O.G y=ʓ!7O;l$ŤZkhD^aQ*י-TT诫2 -hj ,^𙓘z^XV(i<q^~!@{?phܙ(??ז&q'o q4vܡ=¦ aJr(^aDYHlJpJm)9O=O5=B6eK#ux(ihc! ۤC*I'hht6e |L8%6ݔuTp H*;xP<I4we(! ox8b:*7*hYYIx #FJחj?*gP 1&DphC[FX651#%Ha|cmPkBsWҟdMe2X6pXy5m9bMcƚ }>ҪD,K<Ιr IS
-.$HsD6P$Pm;RK}Vi-:Cb=EUEcp.cy) #ZE flS2{kRED!\ۇL:+ W=R{GRSbjx9( /@yuw]xl>-ЖXQpvpx|v4
-9E
-;Etunp7Jܔ݌O:) %СN: N:4$u I'`}CI,՜t V·toI!MHҭxpI
-R+Ȥ+QntrN)#rN0R#>*; c<\hIed,{d<SŒ.|Rn"AH7w$X5Dum2][9+ 2xXZVB++*ĩ sZd%;dnqK4jCcbnH_Y*W$DVD^my!y/Ep35(.WnT^p#{%hPqZλ9+hCҴ4-YMڌn>`z.b Afx(I+:S" KDRD#
-"Q['
+<< /Filter /FlateDecode /Length 3360 >>
+stream
+x]Mϯ{X,~w<|7ǧ$ėER--ElϨXXZ>}˗o4<$ >r挙~3s¹ 壔KHGks^sΕ\NY+FRFo~KYhC\:$
+Flixx@gc! C*1!'
+߾I;t`'469H|K5GkR}AAXƃ@C:
+ˏx83 o2e+cв+tl`tюK*P2 }m\sШ˒V]t4V\e]vpuIЦK$G0f^V xWU~A+~Gxώ5F`Oи b$E8c\0M?zAn]Tb
+i3Dfė4<nt& w̢$&(yd:J:ް4F)螙ԍҮvaTyK񊘯Ĺ I^X./Qѵvv٨ _[n x$n ZQJnm#Ul2Ж͖܈4~;Cp.잸 5NUJaP$TY+ $T٣D[K .Nꆬ]&k9ͷaKՒ k-xzQ雊KoXU*vu?K=~LT#so6O.Wͬ}1$cK>Yr3Gknb%J^$nȍ(ko#I1eZ&fX$ufK21U&BK5"f6 Et|愦^/,zG參/o\V2^Ew&/7?p;~ӈ7L+!}<6tTFDP{ #RʆFJgPDŽSBlMYg1~y@)[-CC{HS&RiLm<,WEC#Ax(yhc)!馬3唍;\8DZ8T)SO(I}Q A쐳yGt=N͍[Zr}%$MS{ևCLrS'Ԗ
+˭Ò')kz%)OI.c,<ѲdjbfcY??nUy"NZN%[!L9unB )>?l`)xwvF)AR"E|Z?KOZ˥XO-৶+xmQy,/%^7aԫ@@
+Mf^fWAY) ãz`ӵ#0=S{Gy1RSjo9W /@uw]xl>\ЖQpvޝpx޽|ޝv4{W{W;Byw<zPۣuwK\l:јQpЦKA.;κeWI=\%]!bP,?#</jF'-pИAvà *a00)h*)BJT<ԖAɧ 9G ;GtunWձͪR#7e7sT
+Hm9*tsT5sT-*b'9*`]C
+XߐK5稠n5tHdt+G%~K~~8G%u I]upO
+4I%%I*j-I%Tf gIy6Ku|I*ٮ
+/z#:ʩeCS;7RNR魻wHiMR:I*(H#sTD9AHQO@THQKƳA`<s;M
endstream
endobj
878 0 obj
@@ -2406,8 +2386,14 @@ endobj
883 0 obj
<< /Filter /FlateDecode /Length 1193 >>
stream
-xڵZM8 W*R>"@=m-?,YCbGG=F;}O/Cgן/t*8FWgkMFk3= P>y?Ikm)ϥ X@r@lX_FκH*"ɑQ@sWq$#M:ݚ4/1TwcB|l6M+rV
-x]=9c9bw"wK31Iᵅ؁3
+xڵZM6 ϯXUD}
+мPq܃a9.=GoZkbLų-4.ŐNHDh9SUIC;uY r3<{1$G[7czɣH 6ӎ=irΊ.87u`>:†S+ڏN.¾gG'l>ӌ=}$ǼA-EpB{>D-bQ]`̀ =)U&e`{E\F
+q
+Ni'iS9a,>fj<YD
+NXw&3PX]UN-7HF(UB20~fQ "g,G$rYara5pB
+[28o!c/bR1mQn,\+
+u,QYutBe]HsgYn *}!"'J_WިM+.u.\MH[^gUϲ%:J8/TBDN(}%'#JQ雲W(]`\GEJt\R誢WNm5Wլ 1?a=_h_>WSའvQ=.EfV&kWq
+=M?020 /ι8٠,/9I9[`<@~cۜi<{IP
endstream
endobj
882 0 obj
@@ -2426,14 +2412,10 @@ xZ;$ Wtx,z`{{|p _ )JJU]m,| zJ(>?RR.*?>^
~y46jrTcACM" P^3jk #fy@dlja+
G[khZVKfcY,9}%A bN-#6SRz"mEZXZ skvIAU"RfnlZLJwkVWd1JӈyMRU6;no2̏IŪ2'htX[*"j_\eX6{&QվRM_=sQ]/s$Ji u6h/mjr'@:Oc0 ^(ztJ{3eV G߂c'x?L`RE|
L>d*`C`j؍+Ķ\K<> [ON J).a'9 "( 2<,t1t5Gu3mz fd0KV
-"k'Gd)q+cFaтGʴh*D>Ë495;рNepd+<8GVT̺|#E_"ї̸ZE
-QI*^J NQ}W=~=gE.|qb:@S!c0"841) B{LW e3t
-Ykkı
-!B-Z]mRVF݈1 #ǰ龊VOxc=
-<Bv/iLЭ9JÚmi'چU/AL4BoHs~:DnZ;C_42C,5̣9Xop巬~xEVϥblh4{^+DJalαrTQ-OK™YDXVmbc&!=@lE؋yKħ]R¸. Q[q\V*@!;v5Qk7=1f[(Ź#o o+d5Ӿ lz w~^ <9e;*5q` pR4& ۖHa+gb:h.[
-:Rq.U8ĖD$ ƺ|A7tCוYt16̌gCkvLߓv%ėMnF[=
-2xYht0_*@u4#&8'fn8zw-צ(Y QB+A
-a}Wo@[b;QD3mis?7P]Ӿ>VMN]\͒/ ?=1UiJ젯vQ `Mw7:3uq$֐FΎH{zͭd&٭PE
+"k'Gd)q+cFaтGʴh*D>Ë495;рNepd+<8GVT̺|#E_"ї̸ZE
+bkq!֦F<lĮq+d寭*
+pk/vJiZ!w#z,Þ*Z?㵏 ~(0&1A(khVh5i2>fj"}()Vh}} Ȱ0$bUÕ߲Yr߿>ֳ-֣y%)Qͳ9ǶMSeD%F2?. gfa]Z_IjX"( W4qb/b-IvI Cڻ,NDmUxpY".n8cgDuQ:Ƙ}oa玼56@fL>,Ƃlz&lz%
+_6m(lxeaDaӍ„Gm
endstream
endobj
887 0 obj
@@ -2456,13 +2438,10 @@ endobj
stream
x[M ϯ1{X~TmMՎǝ*ߒS'K~I}Zm=snAx
u>D wv?}Қ>k?hm^6~yhG}eJhm~_~L0 -I{u moq}/#kXe_p=u.l;fhMy(mY3|yWW&q*wkh^>;
-]+.Y1H_@A}g~_;+2_&|~NV.739eF3L/:ԨҪ|Y*:oZ I`^?W a}\:C5nŃT|<`@e^÷l:7gNEZ ZnT*D@&7+1!f i*o>*ZM% =]&)GI~,e:j
-x7[g=$9b3vdvRE׮(ͥr~ 񄲌i1-_o8ņUޚ5#+-QK-MZ4yRdM/>S'Cq}Pc
-{Cr!rp%Gz{Mb68RP0\]3h?in8k,P}SZsMV|
-vY-3'gsYt=&cLKb 5z4̋1zd6C{a0fՊIJ0j{ -ṞQ^mBfo9KO䲄$Y숥Mx
-R'26P+t&?O8)uI<m2VY`0xoLgoX_O_/
-yҲM)Ue%eT.0N+խ% HUKAEܹv6i n5g[2_uoiL4mrrѾJ<M|}~_I $ }K{D"HWH X`E"aH0hU5n"aWAJuH; `ga:걅4,bj<>zPʚ'=wсCR_yn4I4WmSHHvr̅zӊL%V+lvͼK콊QN&۠
-ѴR8 Bb)O8NaWT&E].4|*l= a/0[·zal((Bm򤜻!loƭ k.Vj
+]+.Y1H_@A}g~_;+2_&|~NV.739eF3e~L/:ԨҪ|Y*:oZ ^~/
+0,u0Qy!kv݊m .}yʼot&oΒӵ41 J@RܨjURõMnWbBB@T|T൚J:~{MRLُ2/\YpuՌ#Hn.7r{<Irgt)H/]QKR ec^[Vqr y5U+,k;FG#VZ2 [:h*5-Ț_|) 9N(>/~wqnH5CJ7\gK
+dsW]axC|bt"|cpW\p ;!b ̝R6b~'F`6F|+_<Uvh|Hi}3ʐAIVq<waJ2F  %T$3TtnkdrHӶ%\YpX}m)DiS<bbH_ԻZR^R رtַCLr482 ^nP ]5m O)dx@Ĥ-$|SϷ2oe]Vzy
+.c Qf|@ͰQ+U"opKbX[#^yZ:iItx4TXa#Pa-ηSJ >/ëaRGQvC)RS P:R.!KWVɡ<Xddr ?LM~axo@fK&ıhUc84^ VI~;
endstream
endobj
891 0 obj
@@ -2481,26 +2460,23 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F34 637 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
896 0 obj
-<< /Filter /FlateDecode /Length 3111 >>
-stream
-x\Ɏ6W>4MF7P@Wk
-@FB &4`:07R2weew{p.~$^!?̂J[ׂ*_QYb<3LJ]+iFuJ4=R~w&#8?r`&ãMCb }BY`Б̑p4IbO³mjd
-dP) !o7ጐ[E9Mh;e;ax}1Jo@)%AJJ:oRJH:h ` N)Z \SUVpy[6Sruzlk\ S4*Z`4B8}j ^a8W`Ǜ擭9Ths%WVq<3 P!8@\4EZ
-1D0tEu!Os{?A>m|S'MLU$;J$~K;7͂D8/eABHUto.d!RHa
-ro~Qѭ D[E3;D~*XH"nSe2BJrn`t-2uY
-*Z
-ۭpuVXB=f%j4` +,1
-dC%Z5o6-PQڤJRmsH`-$8޲\)oʃ&dڴS{1+fD7eVLxdТJz3wg$ɩЈ hQ,ħ 박k(<"]۬D.صNP& fO]Q¥D%Й3$x{P$͜ثHB\+:VOJS>Q]홾ɣ˻E9۲6Nف^i[<1 d-G+' ik9cXWT܊S
-:r'ʱۓ8]BغRJPf1>,>;0pw+nԷʐ1O8 F.`dU/Ht~kzݸQCc8_!XjFO k3Vƕ<K}KKA kU" EkY
-k4?
-P7RMd S
-<0U[dtMv@<Rl3
-9<!)r*)$LR;/;#)Nq<)yX]mk5c ܖI.u|ss]:I2ha+Lȅgu9tђTnˮ>@R~xFdk j< %'Ad D /`dgfDa)Re-5d}wq2\P$_ί2y
-
-86/TF|3)ldM9r)晭5:32-!bRaAqT
-J4";Xdm.,,R^]zm.̭j(딱t*M2!mV2fm? /(zmK ɸU}|WrzW0]/bz)cQckƝ*KrR@Z TGE{p+(+( F@݊ Z4o>-q.>R
-k}j}*Z>aezqY֖m-WyZ̷[op:o
-${"}FCjGZMgyF!IPʡƭ'Je7/ktD҅Q)U~ѳ
+<< /Filter /FlateDecode /Length 3112 >>
+stream
+x\Ɏ6W>4MF7P@Wk
+1F iENO׋XXQe+ZM2$Ef12Wq"^)lߞ.*bkGtX}H{E'oX_|=pǩi?Osψ>N{Sq 'y۱\J[sP7>?_tW2t%[9-OZ…9IrAQZM8V>[w sޔ@F}udJ]]~kc
+ewck(<2I#W gNU4[딗xJq*}L,V$A4Y5c>sd<`U@N;}ހ!Iȱ
+xFR?b3(z㎢HHҪp|τ(,eohÔux1|^!mRE rF,}ؖ/3g([
+3ЌܬK`kߙw p9?ߥguEpxs2 "2*o_ kL|-Ge!0)u)AWxX&J-ݙ ˁ J7 a- if9CG2G%$Y> >Qfa*YCѦT'L݄3B&oźB4\ȗٟ2# +@J))e"ҿJ)"1aLB:'_+Lk&p%NYV1o[Ym٬Nq=qտqM6LѨhhn<"ZJNf_ Pe52#Wz^YoOvPa%2ϕ_ZEDZ
+EEn&m@`b"UvO)w~
+;#ӵlgHPiAEk5#bUΦ{pKKR.vs+V>obD{RՐs-+,Zh+8o=Ya XBs5t?+L hռڴ@yFj*I! |(x:hHra+ByjNŬޔY1㑡C*ܝ&>>h/w@#.F\TfXl"VfXAbxl
+mV"BGp'( (RLX=(`fPUWFa!eSQsI)vx׋ήL߃zݢmYeJ{۴EVS2}lՖ{41T+ nEV)c}9iwgkwU.F[_l]f)j%a(YE@riLVJH7V[ea'#0t|UofƗ_s$qyNY
+e5T=np(ꡱ_km O,w]{'H|EE5kJ뾥w5*aBVFDxˌ<3xфl;e;|v=awZ NA)CUFisT)cnwӎ-~2ÿWxZCH&U; )w/w
+$6!eh3{B~C|J|9`VY~&[ĝ~ 8~μ[,6ֵ1_nˤ^O:.z`sIpjకwh c³Ѻ:{hI*Y W^e? yV?P<#2 ^5_
+I5T B"
+xG3"T^_]O)䲖;8r{O(NfuzH<x ]AR*#>Gp왔w6rwNc @ H10䌠8\*U%^{ r lKJ,6e)/~RSV5uX:s]&e6~g+}]%dܪ>Z`9=+ʮ{K1X
+ֱ(I1F5 NncIۋpKw%9_hh
+[ۢ= P w^hlnEiia-}VS8|Zv^OԃTܵ>v>O0^2k˶}
+[vu-78{·R~uG>!@]kh[<ՋIP`lX2ʛI5:W"EԨ*L
endstream
endobj
895 0 obj
@@ -2516,26 +2492,25 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
900 0 obj
-<< /Filter /FlateDecode /Length 3637 >>
-stream
-x]M$ crXY/`1g${3|r$@|/!U*VUKx@3SS)X򏋾߼:}I*yxCs ZE/!&OZ÷Z6Z;OtwW|Bt{=~~~=È{0L2%+q-w
-z 9W^W,IVˤbRq
-M29.L_b)
-0Hxt2=-՘P6}DAꡝ)>{d2N`c$qo%|cGZ_c{\RLrIe+ PG69
-hcgǙ 㓵uOK53>+%h1>6G?دq&|m Q; <>Hmh2>mi-3q3b|e}&Fbo0lZ3/Yz^vFK(G62mq/%Q> 1cc<H EV rw(GP?߼4BvrSB rG“K|ZWmh6Ɲ>%\||n1"޻RV@9s7k9ܟ˂>2sHS@ru
+<< /Filter /FlateDecode /Length 3641 >>
+stream
+x]M$ crXY/`1g${3|r$@|/!U*VUKx@3=]S)X򏋾߼:}I*yxCs ZE/!&OZ÷Z6Z;߯Otw.>} !;3^F?rsO?~a=&咕8nֻB
+[Ta3&sK=/R~Ïl[ʡ}?yŘ/Ɛ.;2{2>^g =O=IE߯A`wNQ(M$bA?9Os:y
+
+ E<(<iY0xA'@<#>.o+6c6S d/D.'ߓzrWx2\[*cS))mMZ>Qj
+uBߴƞN4U|8ͧ>wڰ3;-b#n8y\@jqzіʮQTؐ0fMOeLjyYZ9 Or>b* ĕy]6KšUYz[*U ׿_~iT9y+!Xi=I-*D^򕳢 5/wcs %=Sa(D&u,7GzٛVo=GcÙ{\W !]}wdnU\_1Xqm ,UBD
+E#`f|H
+8N6Dž@nvpg|jpc|$6G 6⎴]̖1C>IM{>#7|t6,=I
+cM`{;c%a#zض8ߗ(\i11ڇn~ ܢ\+9ݻc#o^i C;^ WȅOD#%YV>L-+p^}}ZN_.RI|n1"޻RV@9s7k9ܟ˂>2sHS@ru
Fёō3Y@NI{i:aPTV(tUP,\4)P#ւ2{L!Oi{ ]2ҭtqGC'08c=ު88^̗c5pq6% Z֭k{sG;Jm FEC
--$tID FCz3ޔsׯng.ؕ,ǸkmWB`fJ5÷%o:
-ok6#V~Yjjx%
-ji3
-u ٘cX¨1Vj/Nk@QJˇ+=m(p+X;
-*B
-B-=H=2c?xDZZ=B]?BBP)7Iv=V1)4]3պm?||!kOV%^Ɲ?%w}&JF#t=6Svwӹ
-:u+cvpˎOL'Rm8`k$ϓ:&ƤƷq6u\DH=pSۍ*kq)odtꠢD!r24LaD9s
- -?΃|<_q|BqXp#YRiR$|`DngTCu+7 o8X2PA30nE|xxd5@-dISUUA҃n)GXfwNY {
+-$tID FCz3ޔsׯ73u^c܊|+pQ03%ے7
+?Zu3)mLdri?,z
+zkvd<P-{MZʮoP!P$ʘAjݶʟB>5H/SN̟> %V~#:Mz} )e;S?U1;eG 'Rz)6͵HOwqIMcҎh۸V|:Z."m8C`8D7f}[uPOL9dz̊S &A0]ALc>/V8j>8f~,Y)u)]>Vx"nгhk f7W,w̠|H"><<|gԖ )*yKpZjt |Dϔ#I;,bE
+5=
ޡx@b+fK;pe2C3MSeFQeۅ穲Ǩ2 *QeXfLGɞۨ]<è6L|H=G6t U#
t *H$_xQmda𙃥::^Gp?m܆j/Y;*J*@
+4R66rliNChxY!lz|)+|fP2~LJXb\&١94\g
-}(0(
+}(=
endstream
endobj
899 0 obj
@@ -2551,16 +2526,24 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
904 0 obj
-<< /Filter /FlateDecode /Length 3394 >>
-stream
-x\Ko$Wq}MՎɉ
-3K2*ԧ&ߏz,s!O\rr^֏ǡŀsjȗ>\Q051ƒQ{Jvu$\UVƭkgd< Oz  VcrxB#!~RI\e=:q6ZiuWZǬ&+*a ㋷ß ҟ<T̟3 }yriR{1(mךD1`N qL uW!b5P[}ttaNf}J1mzWaB
-JKr]ŇPQ<A*՞p'6L˶*,S_d$deGlz'61yy)[ ,:Nk2qm$JL7kAf6 v6_ "¶qLZY78. 6V6~l)Ȣ/{(^ Drߊf_֣0´FN7zHL N+ROU>]ΛKmj~5ˏ SiTjR [)9!r6NNc݌.S#.mzn#!tsΙ")7yBޣ7π6Üne,M&_J&LdOċF;B(>ڐhT鄄&G$62iаu6ƪ̂7Crhn#tBMiFgӞ/0O0Y]EUh 82ӔT":U-Bu(w2E^ġVi5McC)ci3QMD"AP(zbMYL>3#:8[rXkJaÆ6qXbq8W-J0Bw-n6o9trۉ䎜Ľ-܊/ܴ:j;Jd 9 ~loT g yģ\;b%2
-=4GOX(ycv^0.fAw%Aog=o%blAfd;y 9thTD 9:l 9pӉ PMiv
-u\#PFDa+~HNBGSSo.T+)҅&K 1KV
-z@k*%OP+{0cQUi !3-+Q_tGŚsmb[7
-3}XEha@hX%b܌!3:c8cAmc$(Vco9l %ծF4<d0tWAІaֆuzuoeA:,E'
-3ANf\0a+
+<< /Filter /FlateDecode /Length 3391 >>
+stream
+x\K$ }Y"wv goONK~HT%Tlo(>RUE^~p#/A V_>A.N
+o $/_.??J KTW) Ji=}WD7o*1/RjH\ߘ_>b*(arLIti[;R(-v1Y$**A3MfhxV
+G)奝"\Tfw<H=yϯgnt~{Y0,dztl)nlps LJOU|V+iP:}U>
+A$2I^𿏊t GC.LZx[ )7j b-a 92" =KO) h-l4\ZXDg'H7}5'ìijzjI /Tm0b/#\1١ޅyqFگ< 5k|VF&3 X'
+
+Ė4 # DEb5ݏba6%vn
+h`e^%q#:.ss 4?Gҙ>;XXu
+=N|2 . 6 !̿xp:0IVT<?ȿJ0M(C Dr]c֙:R*)&n%t3d";Dd:1FS`UBσ*> R ;& =!a`l0BVv9LxfS?yõSl%q&7Ԧe}Lh2WtyxpKōn<HgX`wP^Kg"8ʺq2<ZkSE_ZUq:Hͽ.'3 y#hƍ@pn&4K*G;?[Wi#Im'@{L"75rjdC6NiqzFny>0N1% 8":Q:3@d \Fc c93E@Sĭ9n} lom9A* p6_kkkBə4ɞ_;%v"I|1p ˤA~
+EoZ`,Δ33fH'ZݎQw%u8llsՄ8vj9HrX:@$\ _-s>I䦷9O'o{[:u_:iud:Is\;?[^-ߨQ @pxI %v3td<dXhМ=9`[8,%2kߕS Ki#B;y 9rdTD 9:l 9FD9v
+P Lswϙ&V*Z/!;CcD@w@<JݯVtJw@ѪEW 6djČbf[W΍鎊=戆7˷nƵ NtQ~R1 G:b*(JfHVLiKF4ZQw~Ur~wwJm/TQ]dxJ{a
+Я%CE`Y1 ׽]V?@n9`U_ۃu!# ]|A̮7Rf0af2|c
+<{p'ojABƨw|]
+¡SI>ۉ)Ľ-ߊ/ߴ:#Sd{tnу3lHw~Tf`>7
+3(KSA|02+q_J=Kv&қNWKS_N+͛ Nl0 Vl@6!'
+Gji;QdMJ"m QߛHӕЍ mlhj6-9tiw;<AjykM4 %Jս>cLoj>vCyIJv8>SްN%kK
+#R` ( c"`bXv45ZΤR͈봛3dm_#6<p=T3k A<B%]h>/uwt \)1.3
endstream
endobj
903 0 obj
@@ -2576,29 +2559,23 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R /F48 640 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
908 0 obj
-<< /Filter /FlateDecode /Length 4425 >>
-stream
-x]K ﯘuC*ViTD7ۧ$N\K~
- I
-h55du4'b[; *Z(FLTq %<h&{۴O!W:8)F\;Uu5{OztȅYzܐH,*u
-_-Y
-0[o9 (f-Zu(IyU_m&^u8H<[:;bUK6J6ц f ?@ӆRD??ptyV6|MQS$Y ['(umgXp}1r9L$NäQٟH)li4Mr{^B!k"d"faNইW8/)4&cok E0 T׳F@0uQ| -#CFQn <|}GBphdBpޒN@X|ԬJq_GFafװ-!y 1+qsOA
-7 .qPbD_yj^`R~bmTUDGkr֪ϑ\
-_4;]С5U=}ݮs<@Us{ 5Ya潮wK"tMƵ(*Aw"N6
-M Ȃz"~s4Yw/*o
-iX_HZÿOHGQl}umpm0dZ_K3ehgKR-gQ𖓏 jx8zqp֭nZL 0*ɄDV\$@ |Q!0xUR9aW #^6
-T+J8р6Pupj\O9)6bi&9L<%
-h˶Omd\F6[,=BfqCKs3c2FٍrKXD3d;&vK[lsx3,QXSиLDڈB5R9&
- 0 -9랚9XκuO =eݽ od
-y\mBȃUclY!O O؄<4 = Ӑ8 y.  ؆<;pM[DEN
-X> |N*
-gY 1z S*>kuҵ"@Id ٩7VBRR3'z,Bі,4m
-M@[_O#6F; U&udd^>zZOƸ
-|
-\5\:ِ9J*T6=}C@W`ZA/keۿ߻蘪MH,>$J$aZ!5 0Lp^W<q6FfjNd#$ό80'Bg:! c*dqT]qKNJ" JZI {sE8)j犌,e,R$`U[,2όfkEiETD@43RSs[FoN^:
--GPd`dNI'C(7[h)V,뼵pKJ^˝:] ":j68#ngk'W3pJm
-/40%4a$|;d7=(ž]E˅r5{^XUX`݁#cuCіp0euiCZZAcFfm7t;\1CCH;M F|i+F=FN*n^M[g\Ghr8'3Cb9C?Վ-NM[pe`.BCuPl˜p53BZn
-"mZ~g iy < mdB`PZvgr阮1wʭ}Qz+r:eQ:Pmйf,j]}XkErNTHOHN(+Њ<>o*F+U519z7+) ڠJ;'$Z;~ 5SB}ǺZU `o9(.xTaꙩ(sdX\Lh5%)n}b{i9{֊v+D!q{CXr@㉪wRߨ*2\+R?b>EƨRI\jW1܇!&f IIo%5KMק ѐА /p 3å3-^=8\%D4W7<w -旼y~4[$յ 8?
+<< /Filter /FlateDecode /Length 4426 >>
+stream
+x]K ﯘuC*ViTD7ۧ$N\K~
+hF'A{A9P17438*!I8Xm+?P\ZUZ1@h[dȓQY;U¯f0)'X" >ugGa ۑ-L? Kƞ̘A)N53h 
+G$u5
+JTM9wT0R3a=HN9gf[>:="D",qvi Q=C&^m[̡/YN
+W 5=j $Z}ìs55YydaZZ'u]I#ZQCMa!If.Dlb`\V *Gdv)Jgg1yF~iR0Q/EEXA%K@yyRida*&o6bIޭ|ODE&M4FtKJqiY.*o.$uO1Vtc `tCs #%@~bN0D1dGqyBq4GFо291LP[bf
+aΩg`V4ZBGЍ:-x+Ж$',i%#(21ʱY f&%Z)MH a[Bp'c<WL102'OM PK&epNQ[ ٞ.!4 ![ۢ-f f&kƮ9U2BT"'02PeVn23ƝghWH,뜽L7Gq{D`BY%0v@YSEz0iq[䃸XOdn>Bf8R̉q-s%d%nL`KX
+(-'O290՘p3[' ܴ0`0 T *)H )C8.`rpU*FX'׽l35VZەh q'3mDsԸ6rRLm$ L$ry\eKZCIѲm7Ȇ$ l?jX{9)83r+X; f d3喰:grv`M햶f Y`DOqYPj2r.3`MtO)R`Zs=5{s=!u?n9zʺ{Ⱥƹې'<A}([ٲTCA yi&!O{!Oq]:v!O ywnv5lO8T]mO}Tr8U<*b#?rT|kE<ȳSoꭄ<㓥$g O
+\OY-/YWi
+; _3l9Zc*!DZZ2cuAh0`9+H_u$E kfnoQ(U]|1;ȡp^kbWF0%N6d;ŁŷJMO|:Մ7VZsn:jögbgl{`%3+V~|Hg *#% ו{
+tDžnE;P#?3^nogt
+,J;R}v,w+RNJ0@*i8W$q6>WᤨY+2nY8pJET9lwH?3ftf~1W!9TRR35{HIbNͭo9Lx0nFhO٥a2h7#-E۷dgS}flDy&h?p۪4p̈́,4e|g~mZ@ON1޾` /Ɵ:r?=:TSAw>lx݃7?ֆ) _rע몤"?˦hsYss1kSˬ\snꚹAѡRe΂6ňɠ0q zދ5p):S$%FjM/p}b|FAǔXorʹ:ҷ6ۂɋޖ/
+W
+VHwBs`NmE5G+iJ˻9pjiS/( C䓥9]0'dXlXL-/)!x-ww1$|rb{^u(AP<KZ38kԍh {6Wh|G[N8AwcZ-{*<+C)WIjz;qO_f%\Z
+h`Eo}F.r2+̫{ntЗ
+F뭸ޣ˭v:EA@B皹R`fتu5a M; R!Q?!:dGB+'K`1ު
endstream
endobj
907 0 obj
@@ -2614,27 +2591,33 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F36 775 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
912 0 obj
-<< /Filter /FlateDecode /Length 4166 >>
-stream
-x]M c|XY5UnUٛ˧$vRK~
- ;'_OE[IX3<iCHWR(
->N]ό]a gO;Zm0_EBÃ|^g>EBΘ{Op|/}M}%[%ߌ*n@F cMTĵSDg*BP
-X_x+eڢx̧̉|xf'yv6ꦃP&Y3ɘ%F'#k6QaÑ~Óp_M Tycau%/\_&QY4 xL.LCgMrx&aB
-alZ2҄-qYHtuVy3/wE 4:%a
-$B-IaUN-oIj[eۊlsm[`ige?moQV+0:ȿ&1OxnZet &;ADr1x"y5yh4X
-Š[<L*pj }xxA"u=bKN
-?'p .Rmzm-BjR[1!% jT)FRП~ɵN"q.ߎ(i{Zo2^^7,OY Hi͖Oߵ-n-tNVjGPMQT0tBFrgB!EPC))|P.h%- 27Xm
-lͧ
-?lBVQ^ZTgZ OGːĜؑ]w-y{Ss£DLb60Yf۱q 3x
-2(e demśF~4x[۩}ؖ}lC
-CZq2NBM
-Fo R XwL35d@; *"
-jTduZ>EObbqjeZV%f\t[NB%̬R9Ź,{ ۏKim"x5]R(0Җ)M~PR()f ЯRؔ& rVHUo6쿖4bC·Ǔm
- [$9rY汋VnTJ)d9 dp%`ʥK j@wR8j5oǥXa0w24QIq?d#%<Q}GDZ97pG26}}kTg}V'yBsNJ;r=r}-޷r[=$ v싉.ix
-W㇮y(@@/MQH۳TE
-@޵L>#UZndVĢ΍\5yN5(;msOϕ;WdxRL&pE1ƅ b}DbVu{ O1Zܐ?4mQ .bC=mܰ3x.ëIkZF 5E7"
-auhib9< ?T:1\Ks '
-pHbtu7!8Zf`MlWçc.76NolaC#7C.ذٻVJ=*I%Sf$;)(3^yaT;dY.F7ύ L$L/A^G3W X9DUGj3Ա*])ӣ ?:V
+<< /Filter /FlateDecode /Length 4175 >>
+stream
+x]Kc|X z goOI%?U))vS3{vzbW~?| /.N
+o $_$%|'% zҠosSw̫ǟX '
+JsSAt[[)(-v>y8,4ԀӰם+_V
+Pׂ'ikOl0a,)Qy+St/4<x?יpƨH ~e~~I}%[%ߌn@F cMTĵSDg*BP X_x+Ӈhx]D9C<<S2 ZtJ$k!dd~&*d3j^8s47$*p&0S
+@YaB
+!l|g}J~Y@k`lJ9X7x(JdSM6mהn4*dhӍVNz:/h%ˏ
+wMGxy=6j8%4GGHl{I&1}XUkN@+PH.Oabi]MNAxF9~9i-)N ֳq1@B7ïg)!v~;ߌE3U=cGi$ ;(8OI>sXDg~
+Tue;c֊%43JS ?M RR!2D~HXCE-k(vV)/zi!{&[7jYj[1o8d#uPK*鋞۩$`-܃єb= BRXplcǖo֕&oUl/]lႥӺ <ZF@pmn r1 :ƛWv>1)<Lv8l)FyA('C+Zx贰ՠ[<Lpj }x7cPد3kq/@b'\@M F ]0 Frc=Q<=U
+?'0W)햧r9S0~{Ɔ![R[1& jT-FRџ~ɵ^"q.ߎ(Oi{ZgU/KSQ
+EZSwm멛p v:&TӪR*:Z#9w3ڐ"(C)rʉP/h%/i]m)iD,9ȴad0)Qܼ&bl6ϴU/CscG2v"޵PyZ21ʔQ3 3986:kQrfo\3cw۩X/k V|ޡ0 fRC"+W"Gf
+/`'N+2*z%7xpZ,
+ђ+ +K9rځ|iY2s4"՜5GH_uEfׂi7e(zlQLLkJѧ9U
+CFSk\Z}poJ1y@kc7x5
+N7k@Xn;&y2H --0Gs\YGX
+:Xuǻph`'4=VZm~1)i젤®#--4h[#ad*1ZUC9J
+\/ɚxYGG 3p>DzӮ5 녧rR
+Y]9KcaߎOd15
+ǹ|Zq n0JpLN屢.y8O. PE/3
+_TǗ:S rI
+>QTАy-M*:m>^Odžj񦎡q&2wP+չ$9$$.XDTrۛ=bptG}zh`(ou΢#ִP?
+dž!Aj
+W C4  w@\'<Ծ ~Hg zCځdDic6nd*@@_mx82LUA%p: EPzpu
+DH7UmFp_byMWv<;4$ޛK6x~tr1!at * Z^ĊEPQ a$b;]>y?i.zA;՚ejI>"/7wȵ.Ͳ藕7Qf^]bNy_mP e>Y]q.gUFf m.T'`UKKqDzhWn&kZTd] pVb6 t]">s9<fN!0m>77J8G,7C&fhxQY]װM€@yƗu{N=Y =eS/]ͯX]6D;߰
+/e KA.J=ŀ_}>|wt[!2qTO~V)sjE\ܴU+:) \щM= Ntb`x-My>zLDj5>XrǼt X[ހxM;皆>ޥkVC.Te9sڦ^MT$=mO+yX]Itm'>l.[qΏq}$=3mov']qb>ĉv=ymOߝwV#[^κJ!
+oz_U #
endstream
endobj
911 0 obj
@@ -2650,26 +2633,27 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R /F48 640 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
916 0 obj
-<< /Filter /FlateDecode /Length 5450 >>
-stream
-x]ˎ%9nW̢eIh0YYe`v{7cp/<I7x7݋|U:<$/o|V>N;_|"8!
-~}g)R7)-H_
-U/?)BE5V0P^~"^VjrLg\;>ZIF Az
-%PC6z
-BZh%tZ[]8ҝ@
--GU?3ޑg)a с~Poqܞ5nD:Ej^19p<[krpcL@x,[J3Mn9Ner /:M_~_ ZW 4kfmwHozF BT(S x. Z CL豔:
-*BU2odJDW2M( ׄVQ|6Ok9[>L>"Q;TͧF~a~H>\ͧq_S#j'V|>52'װXƈ
- B>9!
-G1!huWC%ꎺz4l9P(a|))Z 4" 80x1vrcW* 8uH"$ł3v yVjheBkx6lk߫tniߋV]wıo43x6o"ż^ i DuHn"ź.&0#|S W1[8NL`Dpg{mz8`ly;騇F TB%9.1,;!EԎ2# 5j\ݿ
-xb3t]..tWq0h=v>V~VN5u{; $N$uW*#SɢՈwZ{r{Kfur#&Oy;crcr#sgLY1n<\JLK] kȘu1Wc򭝔|;)$c2DsL[*^J3t
-"8CǛ˻gOOM34ЊPw|8;W@S o@xG
-8C״M3f7{>gcW\Y."ryg \j0:a`P"Xxj脊S. Ew xT~ UBv@1Ƹx#TR 2KV.:5J1
-pX V <m`m 9~<j}՚Vt&]N![oK0
-$;sjNhW@Y8x\58\pjJkcKbON*$dJ?sj1U
-2:_<(^
-'EڿKmzz(g䶲Bj$w
-פWP04P*h.@8JoC\ш*<J"XL>|eOfi}<dհ`Jh<~d۔O<lS\ğCḄZ!nZ L"f%Wh8#Rw뺗Qẑ+\mFp36\
-WdzCh)qԎkJD(Kse۲lOϊWTWvokŁ@-56Yީlwל2MAQNgvS:]BP?Ӹ)o iٓxAF7/Z_Ca,Z}>,;mz7gd*_M AO3C:
+<< /Filter /FlateDecode /Length 5455 >>
+stream
+x]M*r˙Ð|GttTW#fg&f5؎[x6D+@p--!̓)_?wyF=~'9cy/9?q.q.8גs߿EJWܗ_I,+]}Dߧ_Lb=1L{Yoj;ekmb+ZiRVBKO[iV_w3¥=L+>'δK?5ZM3iτqJZC|]~'H;]HpY/?BHfRP s/IڇaJF1h\m .$?R߭XϬS
+\t\H-ںv)Ccw7Ov /f~Sp
+t=@&YL`>Ùc+yy31u
+;{Ҙ_5޿MWمt%C|{irj|FdR1P İ~ Up*>c)4Q&^#3J. |I<Y
+|[BOX|
+`` tr |OF-/[YBi~'/Ff5:h5h)ⴻ٩(GDĝg$ @o#efKOIŸx=&qu 6#a30iGǩÕ%T8k M+Ai;{ѭ0O
+Gq7cV?pvOࢮp{Sy NiJp"lVTIJ՜
+I*[/P|ԸZɑiߎV
+CrD
+gִ.T:"r<N#JU|$*y?L+K2p ++cq:ur%X|s?/Y-0c'N;_eS[ݵŴTʫV9<c}_d-[ۅi{(9R4_!!+\6 ' 1Y/qةKt\=ۨ踰j4kctW w0`O
+3{JQ*1C8wT0 Lj_q˜۞z0nntBGN80xg;aW',>JX0r"my4\hat#y)WY)/J-~UZhwnhLPw/ة% cwFrD !-LȈVF!55 N3W`"K[<#n h]Ңn<@g|zT7u)lfL f}q؅׀&y70nh5%#c&zW|,): G#"?J93)*4}Qv*Hb{ieVvCu$〲p P/L&Pvf{xl,.)ᐻť4ξ%'%,keiPtIxɟ%UrĒn;r^/9n}%݊V?h:mV2CB`Q)pvP
+%(`a6}#shu0 JY,%@ds
+2/k@
+*F4 EV`"ʪMN1Ջ޿S.窢xTh(({[STyy3S5W[{D1^2(.4J|M#>5joǫIl]o;߾C~QғOr%PηoL/B=>1ltX2}%紮Ɲڲw+7#ԾFC饥bByT!A]~O7/W8 Ϩr[xOXg{ZsZ2X&i^1K
+%З%/LꌅҒB/ ,U{8Ȯ1*A~%} LVR~J/:/J[y`FG2}~aK7fI>3/,EC&4a,nxuO@KshƢȉ![(G4W{ѹx=q
+DKgNݑ~h ^/5cόyIwA"o<,Lh$\?|eo*cV@ygMMZ=b\= Yfl©&rV6NU-g*д纂Fj/`_E!(9D: DJ5BTqMT b"Vô_9cK㹸Kq81]&ro]i!Pay/x!{WL0yT<>k]=#hS ts)Bb?<{] ̟C9>H\( .%['n,|8줡Aح?o5%/:Q8cB4SBB9%T,hm(j>m7<F/[asDmeLKwǞeб]7tV:(]%,:3fx`#xX8vC^_;Hi}!<mTmk^Z|jA\$Nve
+rى[ED|:<X˸TrC5-asOKb(o(\ cUcWjhd
+cE
+@=elw
endstream
endobj
915 0 obj
@@ -2682,14 +2666,22 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
920 0 obj
-<< /Filter /FlateDecode /Length 3021 >>
-stream
-x\M#ϯ04YN
-C9hp >1tqE )\,.ѐ2PDlQf(3b~̟qb1;]1vqE^׆n`Wnpui}pԳ8b`
-W?53Z V|crpʌXqGPk֢SiW9b CZ WyTs<`Ul[%\y.˭՗荓՗Xh}ܸsɰKy5F{R4X"N+L ]+  !M@^ܻe /$\f![RiAZU8&X)m=3:S{5ˬgkm: umx9
-^b):`V< 'AV1VNZӾ6BSd"*6*mt[FK}b#һ FGb#֯Sl$&6:$Fd/6*QtnUFDl$&f/vF_슍52׾ѧti>Zo ̿r "ӿ
-d&zXDҵ#jL$p 3q
-wŘ)_;3'#eŅNUqtQqPvIΊb#(g=qԯDNLt`dMg
+<< /Filter /FlateDecode /Length 3033 >>
+stream
+x\M#ϯ4YN
+9!4V'f 4^b{81B-5<I⤸]ǟ gһkӯҒi%?=3m6H_~Av.1Jkˤހ瘑 ׻K&y@׽LJk@ %il
+=
+c`5>RFY8\!59eآvPf,?>|ll|wzAz^_eץP9,/(\ h5\XaA(3`aA [NE`4^+3Uk-_eQbVnp幸
+C.^JW_7NV6V_b|bIHܢ]r &j.J8 K`H8W3-v6L$
+g7yisN1c#dC(7LkPsumKnIniro:VJWbk[(qsL-ku$˟,N/4׵Ye`^nJK/Jrs|l[N( S$d.4[ۘJQ6Mdʵyih2< Ngb%K#DljKJ5`kٓgkmC$W7!]AJ hYVx0!ǣ>K RY+^
+_#j}
+רa$x&
+P˂ԲEm
+3ĢW/kC80$fD0L$&2mLlP(7
+K}G7e^׆kozO ioYio(\ڛ@-koPڛ
++ƻ[;o(g ,1 -=bL^&7[!?-<6
+רx4&*PJԲҸEm68)Ɍ+/&5ZɌ1 #S,2vgNOGj ک
+ҡ>qл#GQک_~
endstream
endobj
919 0 obj
@@ -2705,15 +2697,17 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F34 637 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R /F40 876 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
924 0 obj
-<< /Filter /FlateDecode /Length 2643 >>
+<< /Filter /FlateDecode /Length 2660 >>
stream
-x\Mϯq 1vc7ofI(JbIݢЫd_?zuNw=]>?.Й/Ot*8F~pڒ._?p
-/eֆr~)oϟOn57 Sj'P{ ղ`1^֢5$XV*玆\0; $ϘJX(earz^3%?5<v(?\/%Pzc>NrߔuV
-iz0Xw/GePҔNbwrm>t@rnKkyB"ȸFUZdgŽOV9xnBF񴶨EsO6݋m88^Npwɓ ^^4MD>|tPnHc["t/ {»Dd>jeXn%7qr YΕae v^,򪵍 o9cNΕ
-ўuÍA)*>KPR"tLP6sHP
-K ],(A)a={ib[F^Nޕc0'encXu.砨o J11!!YzlD5!Dyw,d 3{ g%tFV+͜%Tm?%j[Ƽë+4@bpdc9"HO!IN7ő{yC-yl
-ku6eQ1 ʙt2H{):r6܏!G+oӰ`kn~3?OC(Nw`yoðҡpEx~4nPU8Ffi,'ѳrK#]4
-KۏN h81UBN=Z)iĤ/!+(FڶAs\4`I~F6~9j}P/?(@xpNYFBP?+BzW]AːB!(r 2Į 2WerG
+x\M6ϯ>*`
+-\)~Ⱥ%BA'K$JK4mtNB,AiI6;\CBZ ӭ.yH{oƋ
+0(ӝ!o}W'ZHŘr2(G㙖q08OӠR_]9Q8!S(K KK:vTgyM߯ib~tמ= <BHQx~(4nӂ塪qt *Q)gö_ 'rۡq+s+F-kqrjxav@ʙ) ]kuL{fY<-:vmHp^X4Ӷ#k| gap>pʳ!Da{PC%]b5&@"^&j26t<V>πﰍN4Q;p+D&%b3h#Ay
+k7Av9a% lٹMY Aڤ Q/*I8!3 (VїYFZ aLQXKj۷i8QV$j\]Qsvj\Y͙8I !CȖS\C ͑bNg9?ʡ-C:@%qJ|sӄL"NqkbΡ캘s7SlfỦS9sf1'ŜFwszWZc+<LSUNy2rx%ع56l)ͯP_pT֥2e*0H5Ji}@y!_'uʕWíY6Z=Nu&Ns &*9ssPMfcA|?GmtbǖqNRyի1bAۅ !KhF4_6Wz_
+W׫NxBgr—A,ݒA'Q*gMoH\X`\ZCå| :^%nSnJ+KmڭB9B%-Q~"l9znξ c5h2;i9,jƠ,F>
+N;Y_҂GuJVmL
+uc%עƔ 9&#@sHB j>X~tc6}w 2H5^_/Z/at[ޘ$B&xI
+ҫfN h81K*wS4BY˥mq
+.\zrB>4+}I-A9ȊW(%*9=;xTϊ'I+!}=:ݏ翱!(ʆ!îʆ!zeC~sGh`
endstream
endobj
923 0 obj
@@ -2758,20 +2752,19 @@ endobj
933 0 obj
<< /Filter /FlateDecode /Length 3986 >>
stream
-x\Ko$ﯘ U' Y!q@|/&I[#
-]|J#OZ%]?  w{f7x=1{!%̑1*2ΝGn*ӎ.;7ʂQvE^gHi^́qjL7Z=7;^AOfTDٲ\o<7ab[Y>sw\!cE`^c(f'wBŋMNh }vMiq.Q1]XF:BǑ;BG}w9۸KJ vt&jzJf-9|#wJ5Qvb? |*432
-Jf?%Ңj
-`'ܼuLMG* `!Hl^k?1g!zxC_glըм"oB>uj<p1I'sTwI˫Jp3M,Mm^۬!Rkȭv 2X
-( 0PH7ȷ+=sYS*qjS󑣬 bGpduh i g+ fe^h]hl30YX Fkjћ"v .C
-uqTi[ d*vOyCȊ
-Ćdr}N`Q<]PP*2D96H(4RL)[>+Y}\İxNJYe:2W
-:F'Z蛓`fK.L9-q=إ~Ȉ r{W0SpIh9gDKڻ~=qYnAZbD1  uOx&!'Vӄ;TilԉtP\RqE{%w
-0&lגh֑z
-b1%ASR,ۜ R,g]΀#2ÀvcOSF7G k2sӄI:ȴz36
-5EMF!+d֭(ٕQ%88LiK)^+bg;EcΗg2Z -JvZcf^=̛ۙ:M`ZACEF;0E:Z$Q4viH>1iof<)iot3$'s9!d%kSBM9w^&Ʌ}1!g8챎3lc۩57=_?1d4Z kcmџ|m\}'Xuwue\rhSFdX#??}/JݭK_skMT;13 xc7puw2s>[h@PhQZ0HhоcŮIʇV{ΐO-k8𐂬Xf,
-m0/uvUd9h@֖8[aNMޖ8{'g&f2t]RCryΚIHaWO<7w~p۲L\6aze 7\νå;뷒ac'v<K}3'@JoOVywLG2XHMeS꒛44a9v^k
-%)AҴz*Ԍ;]q<[SЦV4F>=>@6R˺k\mR`Ei_,eqD,NԱnli Glgg_"qRϭ(rbKK?yY{"nf< t;jF 1al:0R˜-D#)(s@W2ٍPz<"FF{v: i9ywstgzƳ|NCn3q0>!vAige2֣Q_TaLJ<DĿ_Y#1 m~dvXx}԰3nI8 &!40B9bzQQwW #*g!.HaUBTaBxVH0^R9y:# [<eVbDzsj$Yr%y'LV(2XU3v\n9 GzzeZdg nN6$ax›1V$HT2WK% c߄NK{2m-nHȌB;ǖq Q[q).j*GI5=?ĭv*?e_/j8<cCER~#:".kD(ή*nX5xpv˪({P"QOst@Lq
-'fhl8m
+x\Ko$ﯘ O`!@,!q@|/j$I+4bbu˿.퇇>KTѡ3~
+(q0RH7ԓȷ+=sYc*8QyNJgA#jN4vԎ4ɅHx.Ie4 p,c,#nj5M_a@Pt:8)%6Y1
+=x^-b8
+MF,&\e[cGsT
+ixX-uK2J[ғq6iӷ WFQ;x
+ػpo%XwwOL~H&ZU
+Ć֕sN`UI֮(LUTSK$yӨW!@~*A }GRr&-Ϥ;U/|R6BU==29 =
+}0/mvSd9h@֞8[aNKޞ8Y'g%f2tCRGr}ΚVHHaWO<w8lwix[ڲL\6azc 7Q\.e8K[T3;㾅 Cl%'@c+ؼ;vM#zZ$ǦǺ)wQ00;o5
+7}kR
+ (㋜p IgMgq |mcKoh8z`8pWw|nEsXX_BnAcV(c&Ͷ3H{
+7>$sȷ}
+W@/+!vrKNe7QEvrOB["};ǐ]]B˝ܒ82sGv9XywK(-cw_$nDX`p:wg}lBϨl;ЎA3jqrl pVl6p4'H.Œ;N^kf•yIJ ǀ9#¡a[M|+NP܃eX׏<2/`WԂzx|bj."c 2ut:ZwR(Awݖ)Ic)7yW^N);3gwËtp@OK+
+
endstream
endobj
932 0 obj
@@ -2787,29 +2780,20 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F36 775 0 R /F37 793 0 R /F42 792 0 R /F39 935 0 R /F55 774 0 R /F48 640 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
938 0 obj
-<< /Filter /FlateDecode /Length 3833 >>
-stream
-x\;$WL(G X,Pf2Im|lnvȀiŏf o_s4^>$~Ùbcϗ98s.+ɹ]o/Ff_>coqyO~ߧg"QO?xR {ZsD@(&NR[I<aP/~~+™t *J_??3!w<1ڽS maBY @!>B
-f]QEa||=ȓ/`軼O3co3$ di.DVc &27۽Y
-:yJv4IU*fIAҔ~Rk%KB"z^+ľڣPQ1;Z%WO#w=wZzR{6aX=-5R!LodB<5Nzi(
-փ )}%ƭ9[ 2$(z }y[HmZ!m^=똥[%jڼ;t % r/)6X) : 2p 2B.졑ח=,g<.0Iq@e~
-"wx#)ܻ blebOL?FN ݨ .L9$ :$YJom63[VuCx$4Ǭ/ 3k++޷6,A96H1U;k#D.\QٙjO爫$&8S5μ;򨴶{"?Γ 巿]~ Rp&Q@ҪcMRc!)r7͠d&PX=!X&lE-!`\8dؾwmVt_\gyt~{%v^SܳI 1VѢU`iQFES\'ς#Sm0;'fC}Q!A@K dN9r!d:ޑ U è=*B cBZj;B=FD:`=6"ȫ멘eƵPĻKi/Gd9( 42Ce3Iڈ,Vv~ǁibaJMqnqd$wWiI\FwH\=8kTSq0kQCQGFFi#{i#aڨO<%aM㔋\JJʅtj+= IvDׂo4E7$6M7l[" *0#efbC6KE#v<ICķlo yX7͔q&sT! 2EKDj2|fX6ĔK뿃d"  \GXB2N{AEmmPVఛ$&X[ݚp9w:C8bbb+yiD'|<NSgs|c~~<! PP</H.yJ,6GմDE'~_›a'.kY`vȪϪ9bU'O_ERٌ5["Rӓ7uYحEhg
-UHD p 2p-4%SA%֋]mMmȋFwЋi;Fއ0w۱~vB <@>l0ךeSʻ9|K¯!.yvx3D|dNJ5=}J3Б'VY*j?li!$s؜8{8'_A:Z*ُrTnuT f\,lH=[ضZtkPoF}%y_laK"[is*QU
-o>8 |Gh/REිs
-;dCWVۮ@F*lA6s-m)U
-~D ˾!XXZPCNcvԎOncfjtЊ
-&;—N(a6 &[>&@ =4GD)h.V$
-@2`OBM!Y9- 'pp78T88eqXeb$+z=g<`J=׾ nDUG!'nu=udOjz:K;iGd?Nk }Ch~q"rڿlBܫ\#
-?D
-H>
-'LёCCŴ̫̔\>uyw+3E&HQ7dL9C:;ՙ ]4TeP q`gl@{vY\`qxפ;t-č0b0(OSuhS>*^۞o_H
-᭖ͧ7ʩٶD>εԎ.W UmV$άط=H착qr3l5.y%ߨ᪥{(BKp 8w<M@4~DĐHb'[h%{L/V@^~oNAY(
-fv Ň[Gww<Ԓ>L&-}l S)LO7,&΅)HW{~-$z,ӦTh4wB7ъZw\L9,&EgIV8d7˜# hYrd
-l"@-['4D@Gw{͙Kxcj Rw5?ފGrNs mwj0d
-bFȷƤLhz,
-)2p
-i!5Kp- njS(:Ee g2Կ0T8`+}ϗSR=?`.܊Ƒ $fҼr GxSdAms(r~υwuU7хJ5<#<c,FK?,>¾ 1<i;#)(G
-=6c>ج[Ŧ6@RFbdl])Ow?<]\6]v-k]\>}tbwaґUyl)onSAdޖIM6-6#〯mџG)2?\
+<< /Filter /FlateDecode /Length 3834 >>
+stream
+x\K$ϯtX I򊘘Yޛmَ((ݖ#||/1AӯO~q1Y/:Ɓ~|ss=ʹkKAJIoho1!w}z&R^~'H1 e;NbR`Z饕PVJ C4m+В/~'租~J~p&'J2OzLizE?]~!:\V)DŽyh]+!F@Z 1-i5.>B
+f݌PEa|{|=(N2.SX D%/ͅ3Ҫ},C4aDFF|{4K
+~-$2`Ih[|^eTO^Wq8;W{
+*FrGˢ!{#L񐫥W5ihFR`J\#*/VN&t:WtWz˙j@PQ.Cּƾ`?Uϑ[T-MPrtxfO9- :u&s$wHI_ ^)}%9[)t2$(r 3}ikfXB۴{1k?xM1Kyw&*J<rHXc V/0 -Bue`!8#vy Xw* T .r=p}3{U׃ZlH)!|)G# [Few6-~ﺅC*^$j 7gWVomVyYe1ɵA96H1Uk#$YM]0(SILp&kyQimD'AoŸ-ɗD1I.K5iSHI4W{HqCqkc4}k(@$7s Ic޵[Q}Y8;̣yc+=Pck[Iy-?
+E\qoT4u,(Z1>-%F sb;d@Ч(>+B DX@#'B/[{Ppڎ3"D<6-fZ#-os4p-ֹ)TE^]K md,3n5tπ"t^H{9"A
+[-T:Z5[(7XSfkCW6[X<c6$|K m>RUω7Y*Z~/9穰=r6tcj`d/M|k7nrYo]ѵz=΄](%y3%]
+:_&ㅭ xTХHϵ+ %zn] 9rY;<eǛAxhҊLSK'0X6 [>&s"mh$}
+$Uw s6 +s΀wE~F-ɁuFN B3ʤ$fE@)Q(ɞp$ w)CӤ4aԞI|bF R*XC_􆺑/Wо"zֵT'-R7/2?1i鼇O,!\8AŽނB,g.ĽhwN `m P70!Aq
+Zxh;b* 䵩;r @fGr`n`0M_|H5t7+_O-3`d+Ђё0EJLJ{oʴt{{jos@J80RFއ_!
+Faޏ< 'SHTHQφk O v-TFщ/*oO8ȕ9|-b9n/=_NsMp+G.H9&]2 +o[
+R/\xs_[q].'^83bc#[}HViٳ|D*=\m3ͺ_mi$k'&Hxq ΗKצɮ-~s7œO݆5hpiOW*<_w m2o?&NGzSѐ1qK
+w̒<ᶼ帬!L"\w&v(i(e* PR0 |<ݤc))m˫?893w) ",fSՐAXFUFF"(9uK! cۑR% (K,n~DeSookM.R5w.Ͽlp#p7( 7Hd겙z9RiB[Vdw<fkRg》]lT6)
endstream
endobj
937 0 obj
@@ -2825,19 +2809,17 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R /F36 775 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
942 0 obj
-<< /Filter /FlateDecode /Length 2505 >>
+<< /Filter /FlateDecode /Length 2506 >>
stream
-x[Kܸ ϯ1>!
-u>D55}Z[vHD3|.|e7i|~(=(X{ˏ%,ACjcAo[[Y<w5~?ckg,)kO>ie?(S,[ [Q L k,&KrrE[ (Oe
-Es9S۞y Ai
-ׁ\yY?F_GFHڄ&(nТqϳa_Z
-HSt
- Ȓa Ovf/NG")nqoY
-q οk!^|It;{ Ǜ}q pf򄇄iwPn ͙jֹqNӤto(`Jl픏x$
-v3
-|ua$
-Mv7bXڝ >
-M5zͽ Zūp8WVxVX;5m[} =Iˇ?b=(ȷrEG"=o]ǪaTY.zdfh]y?Mr@w*n zI:mO  jz?ʞp_G.mKNlR ~\dUփ)})okGL+qBh|{d2G@,ĎtkӀz{26oС;=$gMH=9ҍ9Hz\[3#tREތvb|*}y֣xk|JəsWJ<Ӏ_BzܑN.:uQv[@h\pzHg-"5Ok[,̳
+x[Kܸϯc|0*cm`oI|[iMK~ɖHZnٳ>ї]/OOO~qTӯO.A%Ĥ4ϗi?hm>jMWG<5oq߆pf}?g~g{ӏ%.AgcǮO/
+!?|yS6OO~.:3O駟?Ir.V cbH+qr.)f92>-騜\kh &.4o @e0e@暏^㬀pVoâ9ɓ\)oE6>9 2\- mTݰcL5axϢw _Z8HSu@Gy~~ˁU&zt
+_{Σ66|0"M1>`vr/^ګQMJ&h@&˲D.gZ5nZ*gf&^Mj}{Wl%]>Д&pGs?L7Lac@#`:1rqGN-6*M JnA&b3Q>b\;gwQ8{sc$7BU!lwg!:-\(&8,'Ik$r9 Bjݳ0hGka<B `4ӌWd
+4óEp r
+,(poa wG$R'CpmZ{eORv|IjxoxuRV |'w,y;F;݋]C@
+EW:w@`T j97jX'U'GZ/ץCR)r#(]NߎCHkV`|
+=u krV2^7@akN`v9b]&%p`ԂXg2Ξ4 +E'Ą(Pmi垝C4`P
+*ء,9 N;mb#طE"4imzyNv@13чW36Ёu@zgx.YgnΫ`(=-nT 38mT㤞d]?6X)ܿDND-J ۙuy_Kcɧ#z= F#8gCf&KѥYnJyɼVEEQ{7K\ْi`\2Z ]u~( f5',M nCp?Zvh8(+yEvܲ2#B~d>+v3>wřdu'FevuA Q=]G]n35b^~@Em_KAYUm ࠴KIk,@61Zr 9:zPD~4ڧ G(:"Θ7Tܸn+]*@)MJw& ߆C0Ϟs0D*0ELa_̱=#Ԏv?-<O_0 G0lc;9"K&*Q R}kE37)K@_"b0gT^cʖ Kw&\dna3E:z]%ŶEa 1PgOBS\lsop_+0Ʌ^Rgvn۳ilۊnLOZ>d(0hK;E==,]Ǫxsi,h:iWvNa$op8^#BMꍶB݈:ng
+aewMj<ԏKY`=lٛQx\h
endstream
endobj
941 0 obj
@@ -2856,20 +2838,17 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R /F37 793 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
946 0 obj
-<< /Filter /FlateDecode /Length 3072 >>
-stream
-x\MoW1{0dUdn=%d!{O)J"%}Z"_(>ÏOQEg`}2'UpCT/N|~hm&nO
-YZ%y=DJqcLOhb1H*&cLMBi-~4?' ߺDf0cq)!ǧ1.ޕ,<Yk1G#b+۶R ͵Z*oZ/V'[-M6AVO",5PNTKpOut{w"hK҆t MHUr&x?9 ˀvab¬4NL  9ZA!ۇz<v)w0t_ip
-@q[t83*>|N%3VҜ@>8*ΐej #xY}TXC 6ʱ,BupCXx
-mXYbXniG+e, -^xD,Y&Ưb폥#fEm'8
-_|uiG&
-]4jQL܎_<1`K[
- -e9g@H* ƪq]6f+Ivyd°MdXʕlʳ #eۨvcMly45<ԙ6)lpm˭6iϣcMwƶ ݔvf:Bm7OĶ[,oƶ wŀŶdkX߅m1_vSڑɷmb~f[mooad|M62O޾&vfRw6*M &3V
-k| gSlҜv6Mrnz/~VC`I=hk tB<X n6Y94+U/C5kѾu.rSj+:#LH-=i.ԕ;jUi΁@BrdvchAܑ(qFw, Ĝ:H5'p,^'Z橃\wL;fUEKyWP <A57 .:H6Bk8?Eӂ7Fb3BG|Sa ,0n9z8@x.a;/Ba
-ΛETJ 2<umP/0@'A܊h q8j^G-χQ(xGlJ;2Vp~
-/GiFaHeT3>nNiE_ƍxB-߆+
-w(f'ʬa&<y׻<@=>Z
-9̵6:TuBzRWٍ[YNX2J$=
+<< /Filter /FlateDecode /Length 3075 >>
+stream
+x\M,I|DLt#f{n{Fxދ3AJ==})/Lx>ÏI8{ N^ɇ|=AkQk5<kM pG=7|~,5(=g@le7 1@
+Oz*k}F/Փ?}ykO/OZa [,"-
+t<GL>/ٿh!#9Ab7W\6ƄoYklJAå||[qSd&ť 9> foxW2dWl{Cٶj"֪6vskWHVy }:WLi铢J'o[ ?auarZ_Zr'8jTIWw'¶d)m*MWc<\%3iX+r
+{ NL ;ӲK- \ l jEvC;uڒL 7$]mosW{hPc\i7<Ċ]YkP[UJ?0JDSp.ٜyŋފ^
+$8*_^]w3ҙ&r*F8o
+ =e9gP;&URtU[#E›m
+")`/ͧYeWd°OdXʕ;gADeVȻض :lP+WmRvUam˭mܟG6i_X3M< Al) l6Bm7OĶ[,ƶ AwÀǶd[X߄m
+4qw+ KG<DZy
+.w3Y+CJm~-4دy of/akl畃pwf1X2_WPޗ$!x&[t`]ݪ+a1@Z>``qݲ !r5{̤2eg&%TϤd_^:+}5]fʿ:ER30;StŔ6gC//J؛vŀ9(C9d8DغYbS:IgǀFm zD37lp
endstream
endobj
945 0 obj
@@ -2885,27 +2864,21 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F36 775 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
950 0 obj
-<< /Filter /FlateDecode /Length 4104 >>
-stream
-x]K c|X
-NԖKGNq:!WySbfUv;!c1C[_iwR醆k9“hN`Jgj]^!fц6 JqR@4BV
-ڦCp'No!0~PCΪˉZ,|cP櫩cʆc;Ii,WՌ:y^{nYZc~='JlٻߑF^|c/}I]nTjD=qt`H#߳$G"sU'}b+Ǧ>ۺoB3yr?b3LrstI,X<bS=;9T~8+j[;"$9"vVҭ#vhH'>M\1:3%PdG d-( o,,i'ސˆv dQ& i,QK)vUk˙h6 /hpIzΈw\}jm
-d
-wA艵!AOAO:rG' }Г^?+s
-M.H[qр%:H#(5
-xSpK
- ^*Lؽ^ rԀ\qV~f鸨'6
- -p* v+ƎhMTza]Vcb:H稇V!1;raH iHiM /oXsUFM`HT))'lI3"*g.^QL~iDD 1XeNʘȩv[XlG
-V&_-Xɔrv 35[ތN |7'z{_Z2× ee6u c
-bfp]XA׷앳!o8c@7F*i<rX#iRBz
-Q@ Y(A+kjYYcGRb  MAlJP MԡPxN>P1xPȀѣ
-j_FT%NpE='w{I+d
- $O)8 dL/'
-G81*ar 5K 'xe$Nf}Kw#i<cs=]k3o FM*jQ ۝[rO"I!]"9(vղ0!֚Ƅ~>gXYxF g4t`Fט=}/pλmƨeoj8ujُэhU?o0/!--5-ĥ
-Cyx^d,v:S`@2tH TvY̡څ!3JC]ƑZKgd:YG|*z=2t(DR-azCV#rsYg zsSq>榢kMš
-i#Q3
-]XZ&isK^$r(t ^SR'M#2֊-{^euV?;`:6t *_w4Fg^i\T㓑CGϸ1(53fbui|k گcd`@v99^0@+orP4BjT3
-[&6S%d!iObOPnDpL(ׅO3<hI!.D7ŽhhihVjAعg> j8? }Qˉ55&D~gQ.J&W-ݯ糹7 ev.SyLt>8鬢J+K\`"0 [=)Ð:rʠc$J#)_NP V.;͚Fw&[G\yE
+<< /Filter /FlateDecode /Length 4103 >>
+stream
+x]K c|XWTx<-\>%_-Az}wZ# 
+FV?/A}Ϧ_X_s[.Ɉ)tQRw\K?w ʛ5íӐd1{h}q S9NX{-Zx؎ڙZ
+(ҝ=z^ 3K9ՠ]>4;vzKV]O$]MfjJ\S27NLSݸ*fЉ6qeϓs[ynWB4z2ї܅fQE$H@Ƒu`W(ӁEΎ B0 ˜o:p^>6 ش֍~y-Keg> 5}<N2egqQ
+& p
+=q@o?\;Ǟ o<{4 oS^?2Pc 0
+PY\T>l-1!+
+c$`8FV{SQHm9h{8 Z؍2'ؤ)wi:?&38e$ȝ!?;/Ҁށ]#k!--o\shD792"Q)L JG"*e.A!)R&%
+(pH7Vs5k6'celT;- I K|+SVJ{u);-oJi'3KGN/=w[PO
+D2oDj2Y)I'?Y DK %u\0#E>6A[
+G Pq\y49΍T
+a7
+]8L#isK$U9Amu?o)mJvduk=/xuV?;B>H}>կ;ȵt7zdv<1=+j|<aY/3^;Z&vߠ'_O~ 3ȳF
+E
endstream
endobj
949 0 obj
@@ -2921,25 +2894,18 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F42 792 0 R /F55 774 0 R /F48 640 0 R /F36 775 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
954 0 obj
-<< /Filter /FlateDecode /Length 3661 >>
-stream
-x]K c0ZIh40=`omd7 -[WIrUOS.ˤ>~(OLJ/߽Zy":˯
-'uRN>D!5~ӣYJ,)]
-;Oq䇶Cqp<W)x)Ux (/EqN&}NTU4 @2=8i+)=;M٪GuCԂHL*w
-æĚŦX0kcJcBXQ)z3x 2eJݣB(Ɔe2PJQf%(eOs)ϥ9s1UKyj楠<Wy6lҼy` ̬ `E v㹮p . =[uĠt?cH[GgZaFrP
-c-(ǂ Dhx\j"
-H/krd Y-E\~<pRwɃ\A{'
-ǒnRAo)y`~ $͓~=Ѷ٠JFa<p\=h]K VAw%hϯldQ#d 2*ԇz{'@v 2/LxN78;uYOU'erAC61)KQA8U1T.Zz (< p#áR2+IctB":'9Q7#OA׌|2Ng fA4x@.hСBg-z k1tHj:f5
-U9 rf8
-:w6>r. ><5dqVWJ<2 >X)RgıOo}`fȲUo[%tZ5>I
-ͧͶHPbQA5
-2#e7"
-C)]BDOBϸ~D?* ν{3.Da:?@JNruڧc(x[u"HхO=P .Hԟ8eZO?+3?*E' KRZmiDXKqlKt8T~̞jT=Pb|h|&T<Tˊ8\Wr4c0xZۑ/[Y}.8DDd .ok$/eSLHC6Z cڟqcV&׫lxf)>ĭ>{ wH'bPD=|T&!jUEOWޘn͔eJ[9*ígRQ3w]ir])26sט;sI3wӧcfn<i>3=!3w;9se[Cvf/܇r/7:s ֙Eu.[b)֙7,~H|&)W 
-UIY\;uSP֌gvV} ߽"Jܛ,Oјޔ|~L{yun/%|s}IOW1ĉvݔPVc7^{@iɽ/[\V 6=lC|ӑ?2`2
-f |{3
-56%>V"8f+1[؀vIPc;#`Ͽ]1DZtэHtv1ڿ;D7BB,{#QA8ӕpq
-ep/K_*utoQ/5/uS<7uJK`8{Jx#
-N)VF6`5Fch#lp.Y<hLp pǭlbK魘8Eaӕ'3@11Ǯw~`ӫSɭ>/֧SQwM,ma,xi0>WJлYtΩH/lRSjnD;q8^N(d6o5Wns9NвF,kkG.ke-mA#*p~yQ>nG*Ic +q㘭|l@H(g@_fIX&zj襠YjNXf
+<< /Filter /FlateDecode /Length 3666 >>
+stream
+x]K$ cD
+LںG2߶tj)W j뇟~/??\1\nbh?~)[u89nyF\<~1?OX\q3TV!(P4p BwxmJZA >/fh[?.NfB_hCO*= J*#lD/Ȳ;rwM^]H8X+Uj`+lV9XiF*Q=>5@ !Js!Cv'}OQj|_[acA
+<Jbȓ9V:^@ 8DZ
+ 0Wg$ߧx*pon
+æڏ̚է\0k&sFЛڕsv+d8AvW#e.,[Mf72+n@)gsLK#p>5eKsd2I,kAoORI7ذi>FZu#R,1:?324AЂՐNHLZAowy #{a}iSgA 
+FaݕpXDTv'/HX"|mABtW !M4Mt
+n*X֪r_Q.\.UkjkPkr Ջ^R+z"elzmAeL\<aNJxmUDPU2/,q8>@i#sN Z ^ְ Fۜ#ZdJwqt|q5f;~z}
+Sgט6׭^yLc:ۘ~*1ՉNmLgqV1*1L~⳪IH[zZC5"WrsYJ1aCMWJ}
+k) Z$ [oj ՕTW tjHmq 8:f*խȃm>ht2
+ܪ_j#3Sec 2qm|@(g
endstream
endobj
953 0 obj
@@ -2949,28 +2915,30 @@ endobj
<< /D [ 953 0 R /XYZ 69.866 801.979 null ] >>
endobj
198 0 obj
-<< /D [ 953 0 R /XYZ 70.866 368.575 null ] >>
+<< /D [ 953 0 R /XYZ 70.866 368.55 null ] >>
endobj
952 0 obj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R /F34 637 0 R /F40 876 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
958 0 obj
-<< /Filter /FlateDecode /Length 2505 >>
-stream
-x[ˎWhY CNO.^%v  S|Id-}=vHVթCX* _y|zӳgHO?=|XΜ1uqO>/}͹|9|\\8q
-sogޕxO>Z?۠"gFe"f M%t)ei/(C3g
-+~s|'4Wq֘3[P`)DNİE:
-O7zP5I}NH'+1OuRz R
-_ۖp-:E~/fACh0Wy}M+$AV0<:&fPHNH ϙ۔T^<0{ a*\~) r&^VT&qǐeLV
-zeke 1vwKls
-'*Z(s:e1[EdE-t
-J5kɖjlۋ᎝NTX(z (<.sIW:T^t:'J4*^ nĊ6u-`&ZM˸xwԺ߄cٝNvGP 6a80 AwQ3b†GQ$o @܏oD :jpj w;ON{_|-񭣑zE1|JsrDpz款#Z۫~!Y{~ f&-3-SyS9ygp&q+ vA]Е;(|H/Mpdmr`Is ߲um</2~i Z>xյ99*X =jَ u]+^ Z~6"L;JE|;k,힉14F~"&ᒷge)$'o(=t:-dLӊ @⑻5-(Z'Lx.aLX: Woܭ|Hp=ST2T=B-.׎,U*Gvhh|5JVd1SuL1cL$MSqE"dl8d+w 1hB
-&0m9`Iؙdž;U6UAlZ1jT𢦿\V78S0
-Z
-/jo«1d‹;p"WxI
-/«Aj‹
- 
-/"KF۩ok% Fo:_2|HxZmչʩzrUGlDPDZ +Ϙzvѷ6@1vVuծ/}\+
+<< /Filter /FlateDecode /Length 2503 >>
+stream
+x[MoWaY3:@n-ɩMͥCR-~_'٤[DrfyHP#yE^{t'#/A-^>t聼[{q>w_KI TRz_OoZX[ o]iOTc**a5p]K!Z
+yoc^z^HS.h S.BD?VcQ7秹4.P(Ep?٩GՌ46,(+
+Y2IwuǞM˺m4I1?Eo
+VgIIdD)b<~:D
+@  9Vode%+3> D%.3
+;Fo3;Z\<|E]v`<[T,څvO?dIPi :V!MhR4Tť*p[hVH0\9RwϾ劼l&v*c#/8rɶD8ϸeZC|yH{e#/_-毱iD>|<Qw@F?^/MM?_Ѐ0.R\
+a/p!LuGCDakc"F.cbmj\)1[8JhG
+?2_}OvyK.Xr#eד<ztQI^ȚHgh9Aq+a
+N$i
+[ ~欄MYU^@iᤑA@k:`@hT\L 8V?!ZNPQdMwV i&@O!w??+xksⱞ. Ӧ? ޜVVq{c=cDXQ O -4'y œiZCNRhi( ܐ%!Ełxhmd旅QvQ`*G*c 낝0)IZ_t9x:6H2^z:;t Og¨Y@~ Y&U|D5=FĂm ILc n%SZh}NH+uMR_ۖq-9Y~Ϟr,\ ONW
+Cxҷq5?-;DF!Kȳ;EfgyoAӑ)K觔U_~S:h9I}-+*hͤ "b2:V*E^e
+-2/qrLiyJJ\m1[Eda(\[kv$;>um/A;KFtz E\]
+҉vtYҮ2kq`$+/ShLELHRpWz2ZȔk7j:2ahiڅL)n8{KiiV#b%I!%BUꭘW+$nf
+j[Gb#-#L-KG&*#xʑ`=Z/-{zL$ة:Ƙ1&2Ц8_"yS2Crq;ʘ 4:&Jyk歠Wc͔151qf˘f[ʘț1 cV&0+UL{zN*dSiw$
+ku*vf^@U6MiV+*Wxih^fT7_U9XMmTx5Ux1C~^.^
+/9XTx5HUx1^Z5ᣥ‹ +Uvo7Qg[ΗFNo[R@Vš#]w_6ipU^ +ϘOҎ{v7jүFc#ô:vu|ϥ"{
endstream
endobj
957 0 obj
@@ -3009,7 +2977,7 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F55 774 0 R /F36 775 0 R /F39 935 0 R /F43 964 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
967 0 obj
-<< /Filter /FlateDecode /Length 5443 >>
+<< /Filter /FlateDecode /Length 5442 >>
stream
xڵ=˒w}E(ńh>X.<>ȚGc$y%9v_
E%[I|c"i, SH 55c9_ՋXEgp:,o@WpuFe[.N%ȣ@k\U[hܯl٢%g&ʅ&cɔ9VqAϔZU'{bҤ"OIKH>uY(Zh[ygU>)bfDWkfj A6)?tP !/VVS Ŝvߞ/ "sR _= ~>r h͂(~RsGxw& C($W LXا
@@ -3027,15 +2995,13 @@ O`_1\w6C *1E1c]ÿ_OG. $
-?۹߂*3~5AOrzjYj;%WnQ&?<y=4RB>x
OSJ68n
Ej Q4B) XrYzw2
-w,wE'X RKR1(RhK՛5($3W@^5v3Rr;zշi,n-Hhv'ߩU@Řۃ/%?<M54+GiR5} Po|9uK=p{)n(ʹ%ĭeZr/ 3ln}4m^$RoP\d4^e)5@BbKq*/FZByܜec:%ttFq;]GϾ?HX=ȗTLo%MMpU^GQ_M.a%2_&VZqvF"'*; <czno%\~S)'IDץC`_s^.14uCT"
-EvՋrE O8uRʊQX7#r:*ZRGuUnO߇n5(^eSuh€0~08{`i^4K0/XUZnmPn@\Ag$F=\3 m, {KVKr)$,Oz)=JXGHxun _$W?i\ams;dNEt6WIN*B*z:MQI4.Ը8%.6=Ӷ$qlDIioՓ?^~?gY\9P!aȩ2Y&'͠d)}
-eYrdse,Rpk4sM1OQ|nu JqkhP3/^W@$״6y
-)=NPhUmS! Ի
-CiJi>FXö#tڊ=I"Ӧ[at~E ٥`ʕធt5C<29 [WDN JWcX)Xآo/t/r/Ԇkb~^
-TP"qgսE
-`.UV8߹˅<Z%z>-xjUiw@ *zC>%TP
-7d\(-R^P8$K\f
- )^U_Mr {뭥*ʶ&S -69sS< plrћ66܍5"-(l6Pc)D4MLv'Nƥ6a&atj7]j.2ݮ}
+w,wE'X RKR1(RhK՛5($3W@^5v3Rr;zշi,n-Hhv'ߩU@Řۃ/%?<M54+GiR5} Po|9uK=p{)n(ʹ%1^dz lF>M`6/Dhhk 7(.tLlm2ښT !8#R-}WnB1:rXt8.#Tg$iKu*&ŷЦJU&U*ԨUe/jji/Ip+oO`Zfth#HH1=V77ZZG.)ŔU@$j
+jr`TR`
+I
+̩D
+Ϊ{+b1\ps yrJ(|Z@"PT|<1J&7o6PnU[J[0B2qI
+Zy=NV{m@#GP؎D8U2l$ŽSfdUI"UC*ApMu/p3ps-Mׄx0)u~_:?BqB. WpBR
+\z5![KwUmMZlsx&7ml3kDZQlR
endstream
endobj
966 0 obj
@@ -3053,28 +3019,25 @@ endobj
972 0 obj
<< /Filter /FlateDecode /Length 4028 >>
stream
-x]Kϯd`mN
-E N|n3QНT{F' Po~&G[ka~ F u1
-.C݉|ȉФa  tQ|f
-3#6Gm1nug8^ lEg.(+~+ &^v%R=Wim3Qh2Z8_޴
-anäi.a''XFm&UgyGOsϽ7B0˽"P`_ ֝6߼C@k@ҝOI;Z)4F`5ZQt"u]^ yG-Lw&'Bw"Pc*Jr{-9dR,/R^"nV2EFM^ 5( 5U'2wZnFn
-Na)ʿܺn)Cmt=R~;0@A*%n*ږFc2mZy UN(,
-֣߿!޽{dҰk! Pn
-W/8mʤhսGGZͽza9hh۴
-+0 kP‘* EX
-51Պ@3RKЉPϿEg{ @+}1
-NQ~8M;aA
-XThX kOh _nA[ wt9mۑo <PhQ$Z.i968;mSd'ţ!G 6zlIշ-Љkdd;=
-r=Q) -.Qp4'GDlP0y%Yr.2 73pRG ( yr1OUyT f`M'6gwɰD.Sb)࿝/ n HƏ}h?S©N}
-_Z 辝e/'`ayЇl9&M9I@RE^N
-tI)PQ0q|eaK 8.DPW`@~$SH[1SVևZRs-/kM @L${l<*L
-[1; CA7c9 AqzĹSZNajhs}t,N9)ZZĈ\txHܦiG[j-Y~Ѿ;;o
-n.}Nb{2I^uT zTBJ@MJR XBwv@z'm#WH(C\Ho0r0[Z {C@iF5K)/vlе÷v
---9@ѩD!! Z87^H)<TNOG}_jfo8h{ @p=%'u!KI̡ ,}:,4;S
-{7
-Týv%B -sTN m?"0%%]K]i)纴nܲ\qJ@%B;
-e ;dvH :QѢ;6- Dfi9DtUYW[/ru-N";Y2؁O5YZ,Zk%WuquB^KvdizmԡZA-%{ZIs%&ivZ
-y.UZaڏÒg75l
+x]Kilgv7' K~C-RjI(~`U_}Kё3AyQ/EpCϗ?II_TW)\+-4|=n ?ڗG tDuNSS_wrr(JAVa=W
+D)_Z/f+-l–(&IeɄ=vJA,r*{9oz}O)ܔkURcublVV:ryYW
+i) }A!IuT7JBdݧ*
+m/
+ #6Gt,i?lz&P$F_ob:/e([W/MsEm8]ZKûEaUrpͭ]6y9b%ՠ*ɂ^2Ip0Lu
+(p뺥,ۚv&v<aPA)aBUFc2p{+2#pN\Q{7_(vV;S!î0۩@qY1]
+ Z?[64nkw"hFa~߶qlPn4^QΪLwwA8v:6-o+)"7:{@&܎-)tn85塵a#6./
+jh(\V8 kTC Q:?÷r,MD  Ʈbߌ;c=)>}KkY;_DQHj`Gg)Er9CJ ;4AvVHD϶t
+ ,*kԡ(-`CҎݣf޸Gp
+p"b! 2a'bcAz{\,(N~bypͫNP]~=qP`L&z"``f9"p
+6?,}N[~Gm0bԽC÷KZ5xx&,(9lp`bt`OJ y(At^#۽ Cƞ(g rGAAh|sdwucrt.L`+)(a쒖kdx&{8(`rXbADɧ<AЯN?`Pv܊-5؜y¿W'cWNA
+^nG8 #CGg4'Tc
+@ώaf6e:}|
+_Z:(}?^Nt^{lp@M
+:}3Xn2vp!Qv8e2 BwZ_j@m Ez?H&?GU9>i I|OI$Rv2:%DD`=-'%JoFFֿ8%Ź$A6Lũ8TOY=NCl6) ԅGXaߝ7 jB٩hLPw/. `0C:x|F4D;>У3z|`r|$cp8PCtr
+=-os`SZ \.=eU0Bȹ@NASIx3S%a_qho
+K*{
+㕍S1Õ1T\i X8{^ 7l"Vk=M<A؊zʝ"zꏜǔ8™2Qݲ4Nm2t#,ڧ8w=o.U1pIK1ICoÕZuQ^*?CfUj YY⋖UNW_o3V |˖-8pSRvƏLiG=sTNm?
+rش@|60D$q.7WBfag[K_mkɁA.r2<8fUB|1b^/i{^.9^|)佤lS`6M/9FHn;S8r0WR)`Hq"`Eכc.>t;XӍ~ckzZ>7<'֓fN%ߔW;Yh>ȯW*z=';=Yo}CYV{ +w\zO*)ܪK%oD*l
endstream
endobj
971 0 obj
@@ -3090,20 +3053,29 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F34 637 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R /F60 834 0 R /F40 876 0 R /F39 935 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
976 0 obj
-<< /Filter /FlateDecode /Length 3010 >>
+<< /Filter /FlateDecode /Length 3012 >>
stream
x\KoWA`,_ @cYķ͞l >d/I[Y:=$]_ٖ^wowx6D`;E?ȋ8)烐@||/%<JJR-]ZkzB]>;ݑy܃x8B<</֗_7CZITk~؁ =]F.
-hN8<JQF@toGʬ;:_i߾ w" - j_t'R/Z{. 5~K&e}<fia҂b$(VDGiEzG}T&#6jbɠXVc‡^s_]I$?G>mr>pdXzDBd@`ЧL)Dz]YI 51䃱IfI Nl4(\ i\֮­F6IZT+
-DZh;pT,o0R I(<O5$\!$sZ+
-kQC"_S#mHVR,dka}V`)THHEn.YRV,vm8ɡ'8]is8:h:-24-^] >i EU Y_9AnB$BO+^ F ׏%e3-*˶YU_ʧ˘r|'8ucbA5GC}<HKbYި8\'Y6GE<fIlHГ[y< ?fSVJ4j/KlOe3) g]5R 9tG/(&ldRpFА|m 8E5`GgQZO!(r
+hN8<JQF@toGʬ;:_i߾ w" - j_t'R/Z{. 5~K&e}<ILZP@5
+~B((HOݖ6rdFM, >+jL9+?~NkCs0Ƀ(~GđOO.!u3ѹТ))SƱleV'*fM:`}*?5FCS~2 ;
+B׭p+MG#7Q/n(rR
+9pM1I3W#pyXc]OA6l$+)2eUB>+0lh$$ˋ"xB\7V,)leeM[ff6]JP[X9ki.uiw܅լ鯜 7K!j' ope[̬/SeL9>[I]RQϺ1` ɣ>$i,oT~]
+]٬}#GLSd3e6CO$X< paum)+%j5%E6ܲ賮)bΆv|Qp#JQe6s)8zhH`hVہZģ3('9(w1Dَ:(/]8Mo Te8h^lx@߄0I8-?G+8#?P^(\~=M 
d-:t% d9LJn&f$I8 'wY+)jU;lzY-Z }u5 vQ,o#5_ZD!FrcSslmQa 5w*3VM'>W|(Ex&w Zo"H胵gi{šoZu\;R,OUqґΧd[eV:z30vcV*Aq8:}
`PT=ۓ*Zf9X)k9NC(h9E\0 #2 UO+nqѕD
y_(hQΌmx~?w ŧ~Ъ7!][g
B=R
Ե۴9=jUxH{K'4ŏv=1Ɓ*h?m:rFH7#aa=gdԘRsb[˜cF݆*8׵;_0l;o|ʦK܌貵ޯ\
gnfi?ūU0G 'сr)7YqEPF#))⩨&84_O)i3 Gq-\HT ¤)i
-FJVM$$ȒӳK9 <đcnF kLFnFyD/>y>`9Aa(r]CM=V:id~(YlXZ4Sh #0,,'
-x *XG3 xP:{8c3έo+0N@+Fz#akp̭_=Aח!E@$"OL\!h ;>Ȋp FN9(臛
+FJVM$$ȒӳK9 <đcnF kLFnFyD/>y>`9Aa(r]CM=V:id~(YlXZ4Sh #0,,'
+Jzg}$ch<j_/kEW\=BOԸ!M79 dZ
+pJ *\pu^RVZX)ֹNmg<OhxuC`JWm;Lt4=44RK;`j..Cͣ
+<}Aw)ndŚ⣏vONI HΗNtHʺOG}+09Ħq :hw Jd-<=)mO=edj:&k^<Ɂ y\;;J.v(SBwJ聼hf[wgՍ;P򎾾t*<Sv}ѣaFy_
+Ł_JHGtkSZ7Q& 
+@2׋9̗ͽՠպn=k%gV^ 7z7`(%7 *z( <aвCa$jV({v6JC*{W_. C,V%N7w YE
+̪q>޻6،so*G
+LS;
+'HX\sWO|9zaQ-IS/W0Z("S-|2
endstream
endobj
975 0 obj
@@ -3122,11 +3094,12 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R /F34 637 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
980 0 obj
-<< /Filter /FlateDecode /Length 3250 >>
+<< /Filter /FlateDecode /Length 3251 >>
stream
x\Ko$ W1`E
-W64KwA <6w56}*wקďKO?SA/_3FeBϿ溜V6.rl_-6trV93yfn5bvin>hMGF'hDEE~rp_ [Vɺg50)C__.aET˄/+ל_H!YӂEߚ?GC.@l/e57IE<+!)j(*ɨ$h0&"zUfB'y Et _"g]Kczű|kJV^tvΪx=&(#Uml)kVFS͑
-̜TШؼ418|иUx#l-VZVL 8*¼y;"AKwqP*0zOymo|!B.W_xU^mEiuNMJ ڐJlLEBSa™.<GQ4fIgytY%zn_)[J4L%ҸWn8f9y N5pK0ypQaR,tpCqji$7◨ղk컞QrXfM釉|DK_0ꆌ`8Vt6!ZI]X|zJڻ1տ ko+(iG*is QKxQ897ą\b1>%wCXa݈@yyI,O5
+W64KwA <6w56}*wקďKO?SA/_3FeBϿ溜V6.rl_-6trV93yfѢ<c;Ls@h?5=2:A#*
+Ջ|'Vַu+jaRB- e]8¦3 _Vԯ9B6߳5Wۥ52"|Y\_ jnyVyCRfVQeѡUQI `-LNE2*e͘NL8!A6ǿ4 sD W2T\%cCFV,`U{o%(MQF*R֬# 9{&4Qy i|Mcq8,QHqG;#&'[3lq5;>歘p`UywD.IAiT5`h iaIC]>{ɇTw39ڊ
+xiuNMJ ڐJlLEBSa™.<GQ4fIgytY%zn_)[J4L%ҸWn8f9y N5pK0ypQaR,tpCqji$7◨ղk컞QrXfM釉|DK_0ꆌ`8Vt6!ZI]X|zJڻ1տ ko+(iG*is QKxQ897ą\b1>%wCXa݈@yyI,O5
KHqT]}sC(x &mƩ_
$ؤ;Hp%wPtb8C]@7 5jo &̀|ЉNDRv{4)jaʃZtnȥ6 +%5` Bp5$KDxsqS$DĶG]1ax
Έ {GCžH9
@@ -3140,7 +3113,7 @@ $uͳ5 i@E}0P9nyш̻<(}HF Y*y|e){jcmSV?
L]xs\ *giH[WK{,pD$Itض
`);t F#>C{4m)pH
@p|,9r3Qk^v=^[22vud@l8HM]Ek'-ZrW(O.h[+iCݐ͇rv5<PE[A \"6 d%aĉЎ5LγaS-&Z˰8 '֝M8*$3O63j8ҵkwX_
-Si/-Å3-GA׀D& $6ǝgF\_CB{WkLqp%/b 3{Ӕ9@2؁-O =˧)2u{Z@,wn g./Q@6l&K^Pgp
+Si/-Å3-GA׀D& $6ǝgF\_CB{WkLqp%/b 3{Ӕ9@2؁-O =˧)2u{Z@,wn g./Q@6l&K^Pgp/
endstream
endobj
979 0 obj
@@ -3161,27 +3134,30 @@ endobj
984 0 obj
<< /Filter /FlateDecode /Length 5355 >>
stream
-x]K8ϯaRMDpc'`"\O,ɲ* {ne>KTZ^~޽|y /_~z yQ'|_.?>I R) Ji=Hw ]5sRjGW3'n.nD|mFXяrtMO_~@ a ] &n[Z)keZU-e4lMUoQpZ-Z0t~>m>Ct<tݍ'NQB:ȨL o[6Znw8wJ PF2_5U_ z#!})JP!V
-5 <G/,9=ccnpz2c!<KMl޲ %9&-=WUz:3:do>~:UrNלA|K&: lZ!
-)
-)8յùET t
-
- +
-(r̗j€⨷C՝H}K-_w%{CX$1JTUWK"&/3N`R^qh0~Ԥ9lhsHc!(wҹ?[,1Q_umP
-=47^Um~ZgkVv( O}uV7H+zFS'M? 0&".04ӜIAA^V _"Z kݦmQb0&rƄ4cjU+Ǿ@7jǤd|@@tL4"4"
-g+s͋Sl_W(TbU 6cKid, '4Uݴu<z]Ya$aΫ?Y`5ҹq} C/} u,,ym؏/B?gx/eq+/1
- RI]VyMF(nXطy/"d
- 9 .NΌ v+B#@s6 XfiCtGGȓ]۰kM@숦8zLJ4S9\%pO o2R60VW o#k@ yPf1?P&O+WִJ!A*${a8!{ g⪩h|v| !qhyk/$N u7m!9(Jk쩰(Yysoa> JPgR' hV,8WOjDPy9aMѪ yveJE Đ4@{<>9&rFOkJS+0shJo-+`ʕ*qtOstOUϫ's2NSXܜȑsyuV3ڡ n/B󝸪''oy=2Mb؉̽rzduG-;JPwW*
-k8n2zl
-,zccRС%x05<-$agATK¼vţoݍi󪗷AK7NA*[oх<me}32"WRL&rpGRkW_vx,5He܌P/+erX +q͹0D\jr]ج{. w'8bT_ Ҫ\tC{/w6d]Zo;EiOO<:2WSS c[۶3tu*ha[tn=Ӄ<˜iB2/ b#nC]!nuzՊK
-Jo
-_r8SH'y|Č@$s+4q >
-I c<3|VqR_
-SYŽɇcܗ>O}9p_N㾜ҴCe?Ș` F0͉\ʁ~5_p5o>h͗α %Ǭy ʹ| l[p&kV= XCk~*#k~SZԾ5b͗m|5?58kMX!+|v/'咍,wU,%%b,6 s׳vFnęF {w鎍ʵV& R~ߍ^7Z3U+zj w3p*9JVFg0}U羦KU-g}69RNVuboۻSKpC RC߭FsuymI.f/F #hC)i(>BXV^F0Q:Q\4&Fƾ4#ʛ <ͯ
-hڍWoF(dqȯ6Gէ*hӗFyAZiJ!7> EuU-7.B_LY܋!yM[lH| Q-Rb)q 1JV]<2a\Wy@U:Ww_jEK}0[
-Ert&[mngz@ x;Fq-u'9O 53Xq<z",MĨζvbpvi c7WO9{ʨ15(f52cʜVF]/~_1M
-lkDyڴp"gf¤*i.2466jvMz%0 G\zRjGU*71mx\6紀)5{1ԣHrڼP=
-USa|JKgfLWq`׼Te8>]Ĭu8Pb {3?M'~
+x];ܸ+&n<jr2#|8$1ÑDCn4oyͻ~x3D`_)B^I᭽8OR)ՋWGD;9Y)+{|N{>D#oGS
+1qIdĺefI. &aCC F .+Wн_WE2&^;
+L \_n>jC#“sF,9Vp!=h?H@M$
+3?;+&WTi| UU5z9q 6WFi:?]rZ'ZlurPnh
+$` LMiNKܤ  jr m/.间H$VhZT۴#mc>J{(mB!lLH3F1!.
+w*QC;wU/GnI|WplX3cu}i5#tzDT
+TnIeFjc?/zV鶣K1
+H
+ i,g1g)<lPZРQp%a ѷՍis[Š%LW-ABFL^+G&y98dj#s5y`+9-8RY-87c}kvh-+erX +qo=/\jv!
+խQӠs]8|Lޢ'mBi )ī>l{JlAޮ>Qu踝H}Cێʎ_G$Q$Gxu? |.N-;*|$^
+գDeOৠ\`Pv'5&'W!wϓX'4Vu <
+Cx>aێxrx?b`YtxHQ#Z!9ެZŽē&7c:{f6}GwG`ݖ)N"+]0# +i8Wy5(^S^*QnM^MAנsP ޲37 EmQzBQz5/Szdױ )+s98c<8%\Gsp7kzQ~zZ~׭vai!n.Hv5vy&zGy<t( 8A*m?w>7Y[+p02ZNBcbp4IF-YaOq5cf*1p㉒+N1
+mB~' K\$(v4W4`F`< Wڎ*4\d4t׺<z\ UCp:ڞyFB74\.adn,ꑺìjd8cJXC`
+LY9
+闛sE9fgsmk k9$MSEսc1y
+zB 8^urr/qCȨ!5et xRЊ}$)q?rO
+?-K5;yJ1)ey]!̉o9/sb΢ĜӴM MO:<4q_?%re)#|CA#luo(9f[P5cd#߂3y6NSCXb{Q^F~?_z?#w!N,FTN,FXwb8eGr_6۝K'
+?ča RdkM^ם6CN'팤fҎ6h9([m|kʯ rw{+ۆx֮AWJZòmwpƷNREL[X`L_iCRՍ sQmGbwUY>obAb;9\4@"WJwQFchכarf/F #hC^)iQ|>"
+k~R;[DI<lFXqכa
+.e\OKh1fK
+UdZHθѤ\K OEM VO)K=1j>z9\Нozk^,2*'3N~qz
+UsmeNgQ=o6{-vL5d mZ8wa3aRG/gA!Lgl<k͵M]ө\} cCPwT7[ZZJoqg.дDգk5E}NU;_SU}Ul]
+m6`l]M\VSۖ.bzN㲰4tXO}Iߦ5/|kC2Q.aJ
+E6վWde+\֘H6uI۷v{MR$r}WȘb"c"A%3bVO_y$9 5d] N/_(
endstream
endobj
983 0 obj
@@ -3201,14 +3177,8 @@ endobj
stream
x[Iq0 YU܀F|7''Nd%?M\<GFH=zb-kFNׇ? M 1azA9JጙׯӏRg)EJ4Z3Og$RQ/L d:tKiBӪܗ={[7Qv{}xb6u"dԥ
-?ŐYU Nz~BiWԝpKpuPA/ZH@NW_~@ǩ_'(4!?=HUatUWul;/CkZD+@l9Jr$5 W%B
-JiA$n&r<=}"FR3pE7aAfopLpcIu&?E$e4YN2n*y@9a'IOr( +b#bk9-*V_0fV0i4Z̦w=ٴ`v$uZ w,I!k12~Ҡ7fr?:vtfqp&iΝBDaաBj=H
-Ŋ>z
-x)T%aIu+R^b>
-pL=;apN%K64v{i^DL;e-&ɘTD
-'!;A1欯%K[h\9r8U;ϵ)2yDg̫ #vgVZfZR
-TsͲ xzݸ*Dg t>q͸ m20FF͜džjѢU$|teY}4k8hFYsY_fc>oy}pFڼk4q[|3rKCۡ {v́ c'Ǣ>0c =q_:~u8s=;(・Rå//QO:z@Xs\;@F l2X_VDۣj>ۢ7=7ҸgWQ[uh2>/<;%v}Ҝ(\V={Z+;iǸsp<Uwprts\cZP[zn 2)wUpul:̥/Ko;r[cN͑8-uo-s=W% ~SYR7s]3 Đku iuRG<89ŒKt
-tLGokK~#\/1\|q^%ڛ9 u9soKuuxNgF88O͂t8mwtvy_X[*JH
-!oi qr,oMWvʓ zFÅ1`U=~(
+JiA$n&r<=}"FR3pE7aAfopLpcIu&?E$e4YN2n*y@9a'IOr( +b#bk9-*V_0fV0i4Z̦w=ٴ`v$uZ w,I!k12~Ҡ7fr?:vtfqp&iΝBDaաBj=H
+TsͲ xzݸ*Dg t>q͸ m20FF͜džjѢU$|teY}4k8hFYsY_fc>oy}pFڼk4q[|3rK9Q ܰ[yjj^:v},3֞3-_|Pwuw\W;ף=srO=>+u\=\HA
endstream
endobj
987 0 obj
@@ -3230,24 +3200,22 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F55 774 0 R /F42 792 0 R /F50 687 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
992 0 obj
-<< /Filter /FlateDecode /Length 3339 >>
-stream
-x\Kϯq}0*``o$K~nZ'[#I~Y_(yE^t7#/AV_I᭽8D?J/RRUJQ)EOh9~i^'j3#֘_Ȑ$&azqBN`hYjd@ ]JѴ-e/O __>+}7E
-Eo|E%V/y#
-!We''㏎(xyS`q$#U1P p6ЍalJ ea!Csns-焙5R.p J°:AixD'R;wNP@:^А7x<4ZugZ8vn4,}t *OH 6ڧ8ZgC튔#k6Uy%>ȳK%Y^>)%_~@yk~$&3P[C3PBkpH3U4tMI:1@M{ PyCrFޭ[ <~^
-E <Lr`涱l9Q0 HWKէ Izn-=O2>oNP
-k
-}C0syo%pꀘ({P{AS'@f11a.i-@',&tâb3L0IFgL6;zi:r7B l'UOOR*+j!zQ
-= xV%H}d9,]=ٲ*7jn.(Nn؛)Im9zmՆaH)SMV0,ScAcG‰rʠ~bVE{*l1]pz[Nzvub0PsgLI&Y?ktS*7}G͠ɐ ]dHL@Z8G(͐,!¶5֌r/4٬4m0Hh_~dAHӊia$3'PLH;2:Xo*œ2A ixY f̮I /; gd~5ބCMоNf7mRB=FX!xc3R5;@82Lh$+=laV6? nb4j*k3(~m]y.lirLТ@mj69kcf5
->x
-],z~#Sn U5}LΉG+R];R/KrVv^w@k
-u `{CvM
-:aethQeZ9qNz0=e֘UY`P>lB$"OGBəJcb>a"x]ZKZJd 4٦j (Z#$F_Q'ژTҌp/ȉw/-RsVr3QÊ4G=Pyg)Syu+.霒n=:</PCD#nȼJ\byȕ7ZoQ)҈wxiGwgjݞv[CtcRh5 1EȹByfӻvcfښ# |
-B=Pw}`)L/fy9lH(|+z`^wv`#UкFLZeEz>Gl:cvtD C(gh"_׼WV{ 9ǚ5z0f ow|CM8usw߹C7TbWb9;O -qmW~;WzD[&4f,xz6$E(V(۲N(Ny!VЎL[d@@GnWo1@L9b*7+1@J\J).;=_`Rjwr!_hF V{}N_ re: S;}|iS4TL|a_Ii-ɩ4>=ɱ[)LQt/gx
-zV
- @x@0B E_f?SE= 0=KڔzlJ;@~g&^qCyQ7+dvЊt-5'Ts^W;Z;NGE~6@iDwyn<&qbw+d93rʷBVS xL I&]yYF`i ym+bTnH#ߖ8- 94m CG;q #6Z~>nCgP ʭs ]K=Άb7gP=~b?q_tEY
-{Ma\;\dTn!YA[
-&˿JcvqfGa+ +X(:Fħitه"lVfC)N8s~`~/F5z-
+<< /Filter /FlateDecode /Length 3342 >>
+stream
+x\Kϯq}0*``o$K~nZ',I~Y_(yE^t7#/AV_I᭽8D?J/RRUJRs<~IOgF1Ͽ~!%H L3L6667ȀZi[[,_3R~}WoE
+Eo|E%V_')G
+4A4I1J4JϨjv$EF)RոʊV?Ö@(lT:?+3
+gm0>=Ł֚>B@gnWQ\Jˎh(/v)G]Z.işI)A/[
+h(8xM٥JrYp( sz Ly6lg.$9ƔG[I,oEkH~Jd}9@:J;eݪG j6ЍS ^î0W j s{s(WĄ@1,ؓĄ ":92k1 cvALkIZh789`6gĔN==-5B<#gZىSo.FNӑ7
+g`[&W<е'LzzRYQ3g ЋW)g g#h,QDs'aiDΖ OTQs;tGhtwF4NIrl㗰Ήum6\$.C>Ml߶aR <\NtS:=?-Sd
+[ފtҳ~HO^%rC?c$H7YT;ʐoMy"Cb
+pȐ8B
+9"Ǭى
+$&宩+DWsWbSgGr[fʍLEOtN\8_jڑzY[ҿev7
+GV ˡ,ؖlgoy G9aV8A5
+pnd/(;r6:
+);F}su(2!kp :e)ِ~u
+S;Μ6؇_Q ^U]
endstream
endobj
991 0 obj
@@ -3263,21 +3231,22 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R /F36 775 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
996 0 obj
-<< /Filter /FlateDecode /Length 2501 >>
-stream
-x[MoW9 C8ޒm$Y s^"%Z-K3/XzDNvy~y]ё3ݗ_NNu^\Cpkӣ*R}/ָ {{uQ1+~_~dHa )%l 3L3݋"b{u&enc|{nț3wO??BK~RXK:G,[@n B0d~~@- c.VBԸ"%?-+BizhX .  c
-
-% 6: e^<xY2y/c
-0Gsܒ0QSI)6P4bQꑏآv9^޷Qx~u=W6ǞD0f֋cN52$m2cd5Y#Vk'bO[ỵy맣ںVG
-Hͼr9帔rRJiO̶X}k$A(Qx7UqBSAXjp^H> ^XtmǠHN/ӽ;lIcvcO഼ۚVp^V`c=52{4=ە]Q# "U" {]\B!#ֵΪu$
-P&ߪh\B_z8yQ0+7znqĕL 1;Zhr>YD"R$qe;XSӪ];z0
->b*
-|o9P
-fZh [(ЌDLٹ/`Rc_~ضY-|zi%K%V[*B8"-=R/JZrbtT$^d@ .xDz&ao.g?nbeCyȾ\
-hO9U{luOXͬ])u՟M w5w08 67$ T WGHGeSJ
-HLq̈́/[3QtϗhnWBYrb_5+@M㯼b+Z 笐l|p b- U3@UtvKAO a:e<{!@C4䆫 6*ZH<)686>́}}T h%8)/d/0ى "=(P:@׼u9qO*--X'/=2S\hR(35T"]5i(T~-;νT
-5ט
-1Q0Egϵ0 * ߞ b- -DSybv+
+<< /Filter /FlateDecode /Length 2504 >>
+stream
+x[MoW9 C8ޒm$Y s^"%Z-K3/XzDNvy~y]ё3ݗ_NNu^\Cpkӣ*R}/ָ {{uQ1+~_~dHa )%l 3L3݋"b{u&enc|{nț3wO??BK~RXK:G,[@n B0 c~~@- c.VBԸ"%?-+Bi4c=<@+@\Q5@~+@&JwAA mvu8XAʼy:Y9;e^H:7aڧ,z%ao\iU;!aSl8hbG#-Estmo֣8x{8 m=`̬ǜ ke4I d?bkF֮O"fWwk?OG%uΟfy7m7].G+rq)夔T=ˋ֟YmH'%Po7观
+-2} ێAm?|_+{wؒ=$iy5 Zi FOf50,w z2?ke0h{+Fh-DDfG\1B\G%k%U~IfL4U'&=" 幠
+@qaV8o
++5H!=@jcvи| ‰EI"Gv :Uv`lt /JLe&s{TNص|nvl;z3&$emۓ]ELGF8Y
+r6&Ehq|ظ@u'{I<K2qּ6a_Dp1j/n|&H|9nH| ȏ}WO O!9ujN.,["LR(GF{qNnf{jf0POlJ0 I!a j`x:JE:-JW J(Zp &!.m
+J
+ M;3AզMkGŃ\zn& J>d 'pe~VQksЯJ HUI@ڻ['Lh}mA,pIZad5d
+b
+2imZ%
+rn`F)Ju*h(/ ,^ ɂi}l% xb(QE!-o($g"g)
+yF3PG(
+P ץHK ߤK+iN*[[;*ĭ+ 
+)B āXc1{zֱB^7@V4"
+4@@Mc@DH:o4{
endstream
endobj
995 0 obj
@@ -3296,24 +3265,20 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1000 0 obj
-<< /Filter /FlateDecode /Length 3039 >>
-stream
-x\Kc|EV  h4
-X!}}ڠ0;E?ݯOh`#FƐOU,P kBtU, muncv qZwx%t>Kl0 4
-mlݚuU@G>n )[6^kۇHkT[]CXhm(4
-I[ M)(
-PAɽՆ>W8?/༟P)b]$TI0=S ;*yL呟x
-Orad L'䪵3paS^C)#dCơ{U~lHLr$崬)ȭI/{\ ؝,td+g8+bd@YkU|} DTȌ_RQ(VWq_3K5$ ƽHa^߳>Qm $1]=ɬ0^RbH#r3+|'{fsf-Yrʹ[ <Un ]1BWRb,ȒQ<
-\R\e9#j{Xlap<I*W[ 8_u'.WcWj<~G ,%xuU%2y.`FzP$@Q dr Nn8 vW )RP
-м;'s uWVs[F1ȽhA: @R
-h);YGj AnhK W6kg#I?Jj;ռòj`gIjD~6SC=&$kl>-~+\ikg qƸ
-duqE<:GVW[s߃ @8Z|\Y\OQ[X
-
- {ގ~a~p#~- g/ZsPovJljb
-xV k$mpfyh:T^@Q5xy]v`Xf-fֵ
-<X8仢0> ;պwaRQg!'kx!f~/)B-aCgU;`A
-G DZiQƽ_fkEit+\M.)[SZO;[GF[Xa1 K Cj%-K8[%Z%٘jY<?W
-]">C+Rd Dr)X(KԽ;*KJ("Upoi;)K䊣u&Z\
+<< /Filter /FlateDecode /Length 3041 >>
+stream
+x\Mc|EVh|S;}WO7{W=VM*V#+:]ݗ_ $ᛯRg)EJRZ
+~|̸C[9ӟ׌<A" ~>=kڇ-)3QZhڧGCӓ2[7sc~dP
+C Zc^؈,1 SU qš1*}oA8H[mLTa6^/_#O@f߆qhߵ1Xhc֬kj?k^Xpj54>IZ#6\V]GZ2*b9Fk ծC@M20…lX
+rS
+vLJ1V"(׶zFl!esx"[u@L#h0uxĩ`+,SG[ ~<=2SVP˔,gM1jrogv`9IIEi\ 7~~t~?ԈB!}]ȝO/׉Mg,Ʀs5o4Ls +BnCS
+
+x82+aV[>[E*|i
+FnkD¸w>䈰¨өY^աa7 \kT簵bSYNߐ[rQL@337' 5 r_]dY$GꕡI)?m@gzk7|#mPo>G\c9uy4U?W
+D{zڐa QxB'ߔV'o-ip
+#Ɲ-hv˲ߗPos󦑊Sq'Z0vLW<$o6YpoXVޚH?IV7HQgp/&ZO ۋI^.ո3jڀ{c\5PwUdub <:unZ;38YM^ ohsegY[
+Dߨ
+yll:p5])O$)QN)$bs#xR:= İFdj-A)/&; " f;NWf!/Z{Y&v QZ&%ol 5:ovu*Kg|W\5ݟv^X]\B'TcYc'i3-ccljKo}5Xc`nz^
endstream
endobj
999 0 obj
@@ -3329,21 +3294,26 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F36 775 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1004 0 obj
-<< /Filter /FlateDecode /Length 4126 >>
-stream
-x]K W1>&UUZ&U+%?
-zu cYCףcUOG?VO2߾dQYSwcB$@=`AS$
-3$;?oXT :yˊg>Q<doW6&cFVn{/3ui:w\3HN RȮ+ˆ0*傯|e@_UKL?LaH
-`1 O 3!bVf[fZMy+2qkJ"0,@lDk6ܻ8l3xCP
-u9ާ5×=g@vnjO Rc_A >F"X?XD}<.
-}Kk+d?഑7q<^![AJAtC6MŠЮɭC+W?6qۭ9pOܛ?u0k碀CE(rYm8C18L G@ϋ2SC9@\~76w%-o1^mZjU˯?Obc1~u?ZA\%?_T8.~Йu;-&/naJXcz&\?V9Tf1/*q\{[)|\EagӜ ]bN d߅=b[-Ɔ>
-2,sFz
-3N5p1st0j=JBV1f/
- {9໷[)K.p)l У,պ-\I>)IGL Z|R>¼ ՛e3qA}s%7PeCbd\yh_32nk"@9_.8 6mF;w;D\qblu F(O;Ź)%dxvM) b3PO-m>z(uwT+EZ`DO)\}g;heҲ `1F)c}+J'8E;FA<
-Zr;>E+r<R{EZf'6s CKzͫ;4hl{qtt;FqA(oLju#,5O6#-&]6ڂJY0BI'c(99͉=z064^{|УĒʑ?8.gC)#8ҧy?? F۔F`dyK0n
-R]:1lyry(G,Put.C
-ǂ^m^9z7*Bwe@oNЫx z3ޒ_ aY b# a'u(^c_MlհrkhmT p,qݍ~+0VQ?H/Gml2[u @d]'*Bٴ_7Fӣ{Lj)v.S
-C8W14s}f>t}M9ߺ|9\m==V
+<< /Filter /FlateDecode /Length 4134 >>
+stream
+x]K W1>!U*֛*)TŇ~{3\I>fAJ_~_=~W/QE.yg }1UpCT.?}>jkm _#"A Or?E=}'~kV׿>a)(ÆF}zw@
+^߶@8*|Mk D*`ܲ8W0݉=A 7|?DƓ#HviP跴|INy -ТW߷[EflV/tlT=ޜ&rwhbPhwm}Qk4Ž v{<~α'mI$_s$96\?&ãSS_~SST9~buoV
+kWϵk`!ʬӿUe1Sxo[25Wbe
+u]cN fߕ=_b[)Ɓ<
+% . i}2n*JBDL&˜. J ތg"~Qh ']s&~`ݬh#RED\Eq9pG[9j!! ɘв*S8Ȯi#Սڷ8rD"gH-Ma2aK֖Xy IlYf{
+ uH%D}]^IkvrL'uU,
+X3K{UӒ ?}[zd}Cܺ Vf(cЍeZQalkBjsLjgE+ [˭yc/9XFR}i,xA'g9P԰"VB5ԗw 3=Ѧ̿Վ@T,^OGbvS,+z2}щG$Cl=`ؖ V`ƻ7j 8*O=4tc:}XS>
+ {Vs<7?HQt]"p=Kq-3CPTvp-R$8x,)8
+'˝$zhч.Cd[
+ZYZ@}=X,{ْbpUGR x,2^k ;eܨ~ogCuiIoyu[xkCTe缁R&ܘ 'SNyv@2wq|Cm߀!;h٩v
+aÿl@lx[Ch"߽T#@Te譽ƚH?>.H)L4j_QOzbp4nXtַ*ۓڗ63<?ĉG0S
+(a` 82Tnj9x(t Z7xKU~X0ܛxDe.yV`YV^"ܱNBR^reAkZ\Mn+6䯺i{P"Uu[*{BO\:j 5ŔYlBV4s.{Gb]71ݮ:.QK6"ؖTr n3@73V@NE
+o;}LoC*򩓫t-;Ma
+Ri]11
+c #@f!t/qnbڬk̹O^#RZDG#Ya3珀}1 ȺT5Z+9m
+9R#`prMI3Vf/6:1(拜. p-g̀.YS8@ۈ 979+['*ɢkgo牳7ٳ7
+vMݺzz/:j'@Eۍ`tdC8we.Y?إ8 1sW1,=c]:| ¸< FMdV}\)36x۾8ԇY Se%
+7E4e?V^e^kᷳ_sjYaw8y`q4V,} /&`fvULayD9f t;cܙs|54^q&՘/f֯7yփQ֛PiKNӄʉhBM{F4d&T`ډ*%-gϳ͆3I 89')҆<Uώm˟磗>Uۭ.+~xcW9Ic4O=QP褎<ڧu&co'5L[ַ5C _R\捕OBBrw#q[{5Q_?37tz>)UϿ#p1KvY?%!k_wO?#{.M<PM<k&NK_?Monu ͳ.wr=%0|ngF4,vV
endstream
endobj
1003 0 obj
@@ -3359,22 +3329,19 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F34 637 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1008 0 obj
-<< /Filter /FlateDecode /Length 2811 >>
-stream
-x\Mϯ> MVX4- 86 \SD,q$[؇ޑDVbuៃ~z!`/OnA N
-o|R·RwR~W3"yv7Ms#Q5#i1?]5@)aH86vLmQZh(KGo^Q4j 5RH ^s
-OyXzD)_  gi4BuUu TO)K63%PJ)G}{R`B"q)6$kBOƻ.Џ\{
-jbErZj:6BiV4ٵ]LT!pt{r|*K^Llh?gҜ|ǙC
-au؄K[5Kʀ%qJ(ϑ2u :;p19!\W_g՘3`
-GȠl<{8|ɟ ʴ^.0V%\ >b<v_'@4*`U>=ЪHv]^R=kSYq22Ǻ XSτFTVuaDPJx
-<\෺wr2N&̧WLvnug+6ЪčMc>BMFQG :Hf=h,Z C;zQGOFaZ2Դ#D}u! xq5&9%"S-T|O=նcCu҅^*fZ = o+,E$\drEf\.N卜FD}v3:hf
-F:ݣ),<^Ya&OUX:PK
-KjIa٢V
-/kcQt
-[Nwo-ag|i,`X1TS
-ÿGxK5? : >g gmN)Rxj{M@Ws5
-^ˁAʔq\X-<xLdgx4e#>_V]cwY c~ZN,.yMަf;fPڤYXE~ fw][tF6Q:`f&YMhXJXn읪u
-ay^WBgut'⺚ce﯍ߩ8t0#QZ*Z|Gj]
+<< /Filter /FlateDecode /Length 2822 >>
+stream
+x\M6194CVr9Y`(%Z"mH=DVbny$O?]>=}j)`ӧߞݐ'urRxkO!|9} %|+%~'HiPJwE=?#"=g\|~t_;>?5^32s%_s &O4`cA֎仁aFmUB4~ 3y.S@?,25{!@}"hAG^Ʊ@ؐ#^O?y]~~8IAa4u?0QD鿄EӴb~^LX%xJYZ49-(PL9?ޢ#7K]!<BOƻ.Џ\[
+57JOyMӢ)' PpBKBRKQ{K+R+C y-.+RQ7 WH2mSRᑸq;ʆTX0*M/hRȘja rBFPdG5zmPİ)E$mdtd
+^U$팦4.m֯LvRZthzP:*5Jŋptmd=ҬhK쉨6B,#TH<^~5,ۥ9+)32
+ҷKxH}KR}PQ#e@7er2:8`.sC.U˫1&>h.gV>vXS[:5v
+GvȠl<{8|џ ʸ^0V%\ >b<v_F@4*`U6=ЪHvM^R=kSZq#223XSOFTuaDPJx<\kT@;9yC{|v'W:[ :+qlX&ϾPB|&HazVЎ^QœQXV 5aOc1Q_DyG5Gk bFT<@7jCO혥CmfPƬFEt٨V*2Cv[
+KI#Y$\.qY<dlm&
+Šj~#Qa1Q߷݌F2zbN(,E$m
+ WaoRXCԒҁZRX֨:BdZEX+ȌLc7_sJQҝQZ{UէM>iuէFnԧ"&U:8O vI[#BPo>4OT զ>1nU:(OUM 5 WgԧgUF[;;4\XrpӗK [<KcC}>r:UU?2[j(mGv)'8msLS#nטAHWZWƌj0 pnʒє6|YinZN;,.yMަf;fPڤYXE~ dw][tF6Q:`f&YMhXJXnu
+XJ0.M5_MgVlaO*#5Gi0*uEFpuﻞ5RW;|7^N-xz~=6M2㣂"AWȄtYEeW+*@LMHG0jp.|=б1zJ˒.>.kd3wPO=k*st
+a~^XBgut'溚Ce|i~_T.Fβkl-Iv`5q Dg`{Z$ޅWZ[9Nc+} 8~3*R J"ر+D3UJD^yw| @u߰1G%T2,wȵ
+:}%&@uWO`k̘їC&1 J dҹǼ
endstream
endobj
1007 0 obj
@@ -3392,13 +3359,12 @@ endobj
1013 0 obj
<< /Filter /FlateDecode /Length 1350 >>
stream
-xڵYɎ7 W>XHj Ҟ
-gdxIJx+%RRj8~V "v7 O6ѷ⚖9j}>F.RB{À
-;d$S}~ `u4B+1BYR1Jnm#EV
-kbįH6Яd{e06xNs5 [ $s4@)X
-h$TW@tlA8:KBFP|Hpu$'Erd,~]2<hx&'<*){ 7kN27e&hA9Ժuh^M$mX.
-j<I586cV=\Yʆ`lt
-LSmT>=ШXZut/p%G_ 69'."*c|<q'%B/l|dM|%m蒯CTr}/-1NM$[L'3;ЖHUE0HPk/²<\k [=GdC"nͺē<ͼV[k9Bm "Uیiv#.hG̕)CbǕx*nc>?W6`JW#7wˮsQ^C:鑻R#垍ziwoqԻ_ 4z8dPĴ>?OկB [Ol
+xڵYˎ6 ߯2YDH .f
+dvvAV-
+AwPxƀQ`9ѐ%JVR~{9"CsaqEӁ%2ZCcdv3@F8[g~ Q-قf=y#cGLYy$S}~ `+u4B+QBYB1Jfn#EV
+kǯ]O6Яd{e06bxNs6 k $s4@)x
+7ULNyRT%!4.>]KdtMrцr>F;a52O3ڰ]KmT^@i
+jܑ p8@mǬD{rfpg)fjB;(#69<N`/bS ĦU6\!jlM:
endstream
endobj
1012 0 obj
@@ -3411,13 +3377,17 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R /F40 876 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1017 0 obj
-<< /Filter /FlateDecode /Length 2128 >>
+<< /Filter /FlateDecode /Length 2126 >>
stream
-xZKo$5W=U嗴C8\=>WvOO'ä3\\n9:;/&0=r9Jጙa4MOowR⣔꽔4?=Z34ᇧo2mYG JJ:z_hv ;ϼ;<d/y"7 YPB?bܒeш<ԑѦ.S$HXa\]UOg-ȥUΠ :?zY2ѥ~&jNiγ-1o뫧?V`݇$z7~HЄwIUatS3`lN/C#՘,[`k6 ]Be(!J0%**W6GckMoq%Ki!fg@bxp76-NޱW89+[<k\(``{ zc+¬+9OYnNb]/&&R^q ڴ&B<WHN%*ʂ}&H)E_0FGpO.f]J,#sge4#(Qt.rk
-k?OD9PXH`Ce **"
-]i$úZn)ϕ}Us]5
-%whpHCɭ P$Clsnk%BG̚kU{ch-ovY#ݐ˪NPޛvexaHST1k˼YWUn!Bxw!FI)vCt^<ں"̖L#Wetv{\kٻIIAaHj9lE
- .D+(ka!tUƅ +%?J(l>^ɾ1[Mr1]|=RQ,%W&N 6Rݓz^u
+xZKo$5W=U嗴l8 H.}ʯv힞Ne&zrIN_<=}4ƀ_&+3f24=}+%|%%>JIIJ;S>ܣ<C7~xiJ= ^VR)}ԻBӨK1ld~$˟_ |!OȂSD/Fd桎6u"dF
+ꢨJ~=kA.trmb9.4 VpJpm~\X CNOw?ğWi"BO}s'VIiO?Wfesz )@Ƥ$=fي[i*C Q
+g/񬴐dVQ6bmķ9]h|+YJ i5[6>SU?eƃ iiq}޿Y!A\@Ack+
+j ;E|8%jAڒkN% 0zse 1AS@2Jsރ4sqU}o}# ZFK>ӻ)}%F01h1>)ͺ l~KD|Tق%xn̙t]9 #s:h0,RΑ?]"}$8[@%'2[Q.٠̗Px_K< ~>V
+:x( xQVP-<Tr *#ƹ\ P!-8Tø&_W1-W)+ͻe\7(_d* u˓pC4+2p@9HB]MVܛ5PzDmlx :uJ0}_O.G4aD\mC_l*KP+F^;me7[v-8:\vcza).Vh˝NJs#GhyN!زۛK|yؙsLdd
+LE<TLfiV_<:5rkdaǐcIA3iP %>uE1W"lΨ[j#m%r !fy-@Qm›R͎i3ANI f͌ꔩ: rP]6FM`Rަ̾~d0 x %fcĚ H 6:T@a)/
+ ehiL-ϊ(QcEPzkm 1ܥ.A2{\ЮW5ו]l.\^Zh+NGJ`|f>B]e=q(kq ӳcv* Cr;õb<zDj@.w^1c7}xa]U%G%*@q-\ўE-COVٓu 
+er}N=.Kln.>l})e㼦mӔq*e
+@ E>?61F-rƨ=g\CoQ|~I
endstream
endobj
1016 0 obj
@@ -3439,18 +3409,25 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F55 774 0 R /F42 792 0 R /F50 687 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1021 0 obj
-<< /Filter /FlateDecode /Length 3760 >>
-stream
-x]I ϯx0 p*{:Uř˧$vRK~
-#[e4_AUJY|xd5En#ц^ea6+
-+a(C5SҚ4%ˤa
-G
-M(TB$|XK}W5R$#)rZ\WE *#F
-:`k$\|Ɵ4f$]޶Qg(1gFbp#oO5ݲ/u0< \1kk8#歸`CqJ@ͽZ_\?g)yv:R<|c!BZkOPW }-N
-ZIcơ8R^/Jө
-N:k+Z@P.CV="ů[QX\rdj/L" ]!ѫ0b,\MUm{<q+לjv84uSieK|: o|fjb{&I|S%6{{7_~(e\r&5|9p6sXxf x-*݆C'ߛF}ze@k2;TLz=/)QK=W.<kV/%q2x7S5([=MKbS)1dR
- 4̏Kqnvi8aqL (JCOyf=P0o'Ob>@%Ԫ8Ce j)=Ss LgVN ʖ+f^\1s`{"8 I S@xIl5~B 6| zPfϙ1T;VW>2~¼?=cXGm uvC)|Qcp.w1Voi+ϲa:_+˶۝.yREjP7ޡoC Eo5QSH;5Qld-X f1^
-Щ2NV'ҥa37.խڰ"}͙s7yNv ?O7V=6~Tʐ"&$ז"{D稅CU jM >vJJ<9hZwT > r;93ֻV:сZ0ŇX@*uDO,z/&z h Yp7Њ^]JY;cVbUR?Q;+fR}.BD)T%sV!QD gPEn2U*ᦔӗpNHjZcD&3\>H-NѓGz|+~_jBE;[)UXO24Yhc#WZ5ȕP+^\0R{b@
+<< /Filter /FlateDecode /Length 3763 >>
+stream
+x]K$ crXE,xvgoOI%?TRCoOWT'$j Oz7/q9c.y%wGε8-J)BKέoZh9|?1_kDj>+ܻ[ŏ-}~ u\Ks·{i0oEً6ЭV[زAP-y\_/?]ۧT#,]':Z1 \~O腕hbN6.K4(e
+n>?)մkXPr1A>9NC&G{o";w*b^زWc :ڳg\K^Є4v:\fʭ%FDc[@4^.eѷ|JߪAZʹw:H,}Ꙭ>yF80-[fĔ)%%3Vힹ.&Nd8`0|ySYx%,e܃f'$QcޙaOP58% GJ
+Sfob.r+Tg
+BU
+T?|xd5En#ц^ea6+
++a(C5SҚ4%ˤa
+>P"ݗIZY#H×
+-jH<%FS䴸ATF
+e_`.08ybpF[q8d •{Y~)yvxhHC"9?ZӕASMo }Jۋ8&l`+DF"-WE8d.^&" |f}ht7ϳ(F@UT‰yU
+{etФjM=I<+Јyp2ڇSFm{{ i?چ3J)CUueT6
+Q0ݟxhuXŔPg<l Nzއ5A +ݤA"QRDžJH(^V8M4A.^Kײi? ܖϽfDe gj%,%I꾯[dhvZhKNl+td+hne"[a1Ӫ9kag @7]_r}ѐVײYC"9.}rl/r|aj2 ֍b, (nS5.gH%/{1}J%m$9qXZ7pةxŜm?pK{^s^ӠiWĜWCމ9ܷJ*Yr^mh!/ѸD^gh )fh~329 {0]_>ddr4mZ)lfHN)LPRjtZ (aрddrw 66SHJ{XN!8vK>Paҁ @p:$7 (t଴ݫAtZ`tP\:X:6H{rFKJ7-!@@*j %PDAa[3uLbݑFb]|X .d;G”&JX&!`b={Au !ױNIA˔V]Y Z4= b M
+Р]7w|z
+:-3oZ?aVBH2CBd)PKL1PKE)j/ʗPu%Tp 큩6wV+PnD_0?!̐)4\j +ǬRRȐ$zUj5q6*=7
+ő>*  + S`&Z#)
+N:j+Z@P.CV9"ů[QX\rdj/L" ]!ѫ0b,\MUm{<q+לjv84uSieK|: ofjb{&I|S%6{{7~(e\r&5|9p6sXxf x-*݆C;ߛF}ze@k2=TLz=/)QK=W.<kV/%q2x7S5([=MKbS)1dR
+ 4=̏Kqnviy9aqL (JCOyf=P0o;Ob>@%Ԫ8Ce j)=Ss LgVN ʖ+f^\1s`{"8 I S@xHl5~Bx 6| zPfϙ1T;VzW^2~¼?=cXGm uvC)|Qc}q.w1Vwi#ϲa:_3Ͷ۝.yREjP7ޡoC Eo5QSH;5Qld-Xq f1^
+Щ2V'ҥa37.խ/ڰ"͙s7yNv /_O7V56~Tʐ"&$ז"{D稅CU jN ߗv}JJ<9hZwT ^ r;93ֻV:сZ0ŇX@*uDO,z/&z h Yp7Њ^]JY;cVbUR?Q;+fR}.BD)T%sV!QD gPEnw2U*ᦔӛpNHjZcD&3\>H-NѓKz+_jBE;[)/UXO04Yhc#WZ5ȕP+^\0R{b@
endstream
endobj
1020 0 obj
@@ -3466,18 +3443,25 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1025 0 obj
-<< /Filter /FlateDecode /Length 3291 >>
-stream
-x\K$ cDR/`0gg'oqfĎ8@|)JRu=wv]]>RH~bvї{/QE.}g }1UpCT?.?=h k6OZ[l/| Cy*:3 S/J grK֙q\D$K}^TźK,"m+J<Ctx/_pc~Z;M%V`?/1<wa&
-[@Ď8eN@G|vpFBD{Hn!|;0&as`XIE(=2jDqnYW"2dz6&u=ڏ@.Ő^T"g]1OwNeyi⯯zǺprfb;?֓q弅oL C32 )+,V)>*hJ/;)
-B0YٗlaЧ)'^'',^lՖ>~HI:, 
-(p"q:bqe+j]l: ňfu5{q8a /ӝy-NA-?l摌Z:>(/yHsANr8p%μ2yrj8q>/G 7Β=xk tD9ִ򕋇 d2q̓es;zYxk$XxlDz"u{w^y#}7ޝL=»sĕ#={3ʉ TXl>8<un`D=)aVl<S`\W3V8y"+4q(LoOKyqf NCe<ڳKzVUM̛V"ߡi߉MF:@lرxT %sf`8
-Whu|;TS:)>hek<8 iA$'nxJ Ntb e9\)4KVSXP6D;kN餏u$EufBGtr J#AcYfytgo9$pw,e 0K1K~m.8t'B$O(DKLc+ f–\9BO0QYBOgN_8/a'OS׌j z~
-%.'mDz`(Y1*-YGrb8)l=pQ.^<4yt:2YހWB$8|rq
-jʹywvҲ?7k~uFMi,n:#)~f`˴EH3QYgZC`^J\l}5G91nUCF>k1nr6r7дDTpA0 4Njd9`x!ܗusb sVq
-qFh-/ϢC3@^(;W،r"W-ܯ
-[]۽ 
- f96a/EPj#+'g|xs^p"+[͉V|E-S~a(:\gR̙IOsV+U|=!]|mfR@Hw*8[ W| rpN7iK2W} ;K[PzbIK2p$ż$id-2ZʝF7{&Ģ_ooWޝI
+<< /Filter /FlateDecode /Length 3295 >>
+stream
+x\Ko$ W1sDR/0--n^CIң^}quIHQ"E^zg-/^x._~Ss ͷ/RRg)գ4V燏OhzڡRҏF cw>dRQ/?q\OpN8{}^JAE[UJ^+ͭlʰR0':Go/qسY-߾݅ۤQh H.ߎṱ 3P8Y
+*
+xw_|۸&ߗG[ֆQʆ > ΖHnmoWNx7-1ȟܬX%P i>_amUd;`H>n<l p<
+㩄5Γ61:4OQ}W0j+ y) G9BO8[20oG驶UUԠ [3Y]71slu 5 d,jc~]>*ൿ`A(׸kD!Ѽ wmrآ^h uƆ=Urד /j^ٺU:x,SK0ko38}0׭[V;0CV߶͆ȱ ζuT"ףa:(0S3 éWAƤ>|SHG0dVܸv񛘕5_7h^#׌%e mr1-zߊ@@ǐtJhSf,E8固c6"/CrrL =c"6wt
+\S}X88)#S>R.\C@^
+biƛv[55Q^?ESх++W5u5Κ|7Gnlr2M%#/A)T
+M:9)ORͲ?y˃8~fh!I٤DSO^TzOjKw>ƇD
+$`k2ls@? c~ :*#N\s# bP>G9lc-_!yUsJXeƾv#9/;vnq;y[zS-? l摌p) yHsANr8pC0y0J8q>/E3Β=xkttD$9Ԯ򅋇rd2r̓es
+966
+,<kYx'zo,<qzy6_y"`=_2Ļ{/ڼ^N6L>»sĕ"={5ʉ{ +,pZQ:_7JP{˔Zl<SLW58y"" Ǎ[bEaL };w } >c`
+v(XNgt:>T&@=]5гjR^$*=5NDP \1
+`JH?&/U
+'!Ŕh; >T5x#dF
++uf@pGtJHL $<s*'pw /ԧiLK6I;Ga|0ƉF Fu"ÏEp{KƼCR@y!SR(kIBK'Nϋ΋i>l$鯩%m!SCOScIit C'G3t@hd8S1俩l=pQ..DrLp:e,+!Jqx8yy%
+)I/ЕzH#lQ)0$B3ǜSt.L,1!2s-M=P$ME-o?OV,׋zw!Cp _tWa:APfؼn&h4' SY=w6X׼u^5d:XTּyQCƷQ#y9dMFJ8POTR{r˰.4t?f]2p.H*tM0gmJz7Yqb.ިpWíWͫ֨Woǽ:|6|}T$y# oeq대W[Ai#MG1fk Y\.lm5G91nUCF>k1R6r3PDTpA0 /4
+N㪰d9Va)!ܗ5shB|5g
+5@^:~e aᅒs('r'(n~WXc6Xnn]h› Ɵc^(R//PeXm$2Wru)Nvzy 2(;k` PtXYfb̙OsV*U|=(!]|-mfNa[p4+<+wK2>.N(ɨz=$Ē-/+ɨ1+ɨZZ%\Jrg.dTX{J
endstream
endobj
1024 0 obj
@@ -3493,27 +3477,26 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F34 637 0 R /F37 793 0 R /F40 876 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1029 0 obj
-<< /Filter /FlateDecode /Length 3953 >>
-stream
-x]K#ϯ>,CV;|7ç$N K~n>AMErh&z}$/_3oQ/?= _r挹X/99Ϝ+87? 
-^Nɒ8Ѥ׻< t6))
-Ԋ
-8O)}zv@M=BHaɻ4?gi<JڱOhnHƒv@Q
-3soķYdJr0ˤw\= 3JLM&6`,>*9J>` [3VtXEL;Y
-ّ3: W&^}^mWOnuJ WKZwU0PTEB0>*!%9{#zI&?Fb
-=(%39#(ä5J _ RᙙƒFN [2m~.Qƒ%(hzqgbæ<0%́q@9`s~`Dp\4&V#pw]XqsM1I.5 ͎F_ odzi+stw a/+%:^9,\or=t3s}O['(dqormݦNrTR6 0uPSu 5ZmJsP[7㲡4- 9uZzps2]RqJiuL [z-mTi|XJTun ]׶mT⃺VRҔCʑ_
-5[ Le}a>ш<3V=ڡVoW?\?@Z<Bc0{1xp"K)ڛtlAP=aCYo({璢G4`0Y*T@|'=|N@:j|ko{:Q}MEa޵9iҞ+5S I5y hnu0&y KbrBW9l 9
-_
->R;"AS'XfqBpk; 0#BADŽxW(s Jk[(oubDCdJ7mooSm=rPXe5{0UY'l:QЦ-؛Ĥ\JduʉD;x[GQL [w<-+WS WXY)F%!6/00`GjD&Q+rNZNɹ~IJ$^X˺
-Xˑϕи
-Mu).VQhPg w晎^%_2Y/4B`T_3:N^#eבI@q謃-E( ygOʞF^?yޑIoz.Ư6Ǩ<=q])hXԳ*qOkg
-`:x1Z)gZvcjMĂ=kѣWlXGuC@rRgCxL!"gk
-FIHr5N—Ð2MKk #
-mC;kyWQyy9{XDjrv-!i{5C:A
-ϋ+*
-bTs \}J"`e 'coЙHq DS7kQC3E3
-C6&q;l hfQKJ5썦aQ1gGlY
-to=-P!ed n<ݭyXӯw9צzip(Ӛ]480!E:sWN.jG{)m_Bݠnw3#EqIunӀ֬.#g|٥Mm8S6Y9\N7geQHsؒ˙y+̟]DT"S)Ivk[פ//(:>tzg
+<< /Filter /FlateDecode /Length 3955 >>
+stream
+x]K#ϯ>,CV;|7ç$N K~n>AMErh&z}$/_3oQ/?= _r挹X/99Ϝ+87? 
+P78hZDRF@1n*r~vkaL(ȍP; >&%EOhu~h6MEW (u"inMr_R v[
+dz| :*v[ ;?6Ѥ:<4np} !^jV r-(*
+nޞ3ơdzkd>O d(&
+}C}RZ8ڦ=|]uHbwSIBS{$-g+)N4.-M{J
+ВJTHv0)6խ/b^%0ECJCe"
+}HI^uH`a7;t nD4B-JLp0)e@RȲTcxfQS-As[KdI"
+6k\+癦)LIs`b
+Yܛz[ 5hE]6B~eCV\6Ԗa"{Al1Mt CxN]jĺV7\'fL (trT\xhZ)oCV=^z[ %jVUDoEg[Cmmm;4吨rBM aj<Sh+ju8{O(w4" Ug`vh0ϧ;}F3X;DĞG%\/;9R&ۦz(%xzrؐj(A)޹ѵ|4 24LJ>P)IwO)#c)z-_枎zTm_SFwkNg/JHjEylMd)Zt[7 {;gE0qĒ`52uBNt;s(NxQuS_§Ԏh cY.kaܸ.,C9/̈PP1(
+BR(['ҍDۛT[$BυV٩tͫ^>LU :&ۧN.i>&1)5Yrv:QaOjթz!eViIEHF# <Q?IƊar_R)3ɱW/ֲ&&rds%4mS]s `C(Z!YÝayWWLi< M$m 7 y<HYlu$GP:`cK3}C^铲'ⳑ`WOwzқ }MyA=1OO\k{
+
+z(u=blB6^,?n 뤁rig<F
+虖X@?B 3jZ{Qb&<о&Sٚ~&zD\
+.RK0jsC' eQ7ym8Ӻ0К#p=:qTAz=S8SJ5IQrAN$(.ۊLЦP6#PxDu/@ayB|}َL7 .8֌BX$/ʵ-F 'mU'"mzOgmc`[ԃݚƇAl8˙U/'O*i>UTOYtygt3 CJG}JW|LZ#%ih{4R&WĜ ga ꝅ
+'L4ŅzmH wj/S ФrLu'nQJ!'l
+ 80._ˀeಚзeEಊeBpYEpـ$2\Vu l@.;GG2\6 U|pYXubݻeuLE6kOÀrR{Aa|MaL+F͈C-s͎ f9gXvMhX>,ϿbFp'#fTxBBV)~Y8dȬjDȬCAf5 Cf5C/BYTvf_igu88HHգED"j͡jZN>:.퇬i{)dK>zSYˉY=jg -j~@+>pqq
+i.(7Un \}$½|@>C1{Ȣ:X<jo)[1t&xTZziLQ ?%@txNtmNtHέMmV%_ot$٩2p]d&aT0n?A;u?UShe=YciCN1yI($̩ 8{NU W4+YKLI<mDi÷j6
+ ˢ{Yѩʉ=='˜zg]@OO5eT(J'L 'HТ_|H&|*2?_g:䘙+(5CAKrJ҄碱Bd? ĺI3u{\4ZyAԒv {)-smTLwѴ[ݫ[O kj|Y@D+ϡmw+}'j-lε)^50ʨƴAW! i>'pH;n~S9w^a7۝jHQ3zea4 5_vix[:MexV+@o8rGފ
endstream
endobj
1028 0 obj
@@ -3529,29 +3512,26 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F37 793 0 R /F40 876 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1033 0 obj
-<< /Filter /FlateDecode /Length 3524 >>
-stream
-x\K$ sXY"x<
- =;92𢽡"xٛk%ϊPu9)
- VbM
-s$/5F+J9@.ŷs|AmIu !EUOGr`CD#A#T 3X2frH{&^7!CşEFڜ ,z' y3|pq\(teGp0}_\YU#O J>l/9;d3v҇l%jقLih\jQt );[ad^q<'RNgT_WuVG 3DjFJ%@ Щ9:bb71>yӵvڮlb9M,yj)-&/
-NB*F'Ho輈Ur{UX6t) #8)e[X,frXw+rҺ ˡi=?˩f4 ˩i˩FS,ݰ $3]YjL{P=H$-R)=;YpPQr&'tpwƳUY Y=oójóQczWf()YZ1HA׎iyWDWdM,C2T@&[]p'M5C
-oRQjʞ~6r+  *H2ha1U܁t%5bR<Hd<in(5X/E|)~)|AZa
-ӽ BCz8k,77Cls-е v4
-GJE'6 3: Nĥ4Mo
-gUd?Ott~_'MaLCXsO5;@Ie F_bc#jMkR/^(kj7=YpDQ0$wE &f5f:^xMc[0AFg)Oް8%"iӒ0WJ~+%~dhJ[z+ i{FeFaa , 3ZOѱv%tB~X4EŬv4bH'ؤi}ko/2Tfo4<,Ek=@
-\njh3Q  >|E9\b7o9WKw(ڒ%=ηAlF<OXi4^[
-.PKK-X%ͳ$3P=I`HI˚wݻ|^{SωjIqG; rWcE5HՆΩfr9K*?g:@oT 2tGѬ74H6dV/LP.W'k&'Y̡n%Y;j2 fݭuRpUY]=
-qG>)ĕdVRbD1mνQ-w}WZX[4Um"Nף$:8k"ptlp$7/:,f;ùhe9˯d
-qpCB6蒜L>jrzԌxb|ݑ/U b {5A 50UWJA=T֤\YAZA(ȹPsCX
-BTLZ_pB Ta͵++_P|]AUi
-h_
-jU(ݭ A
-d+h8M[.ޫ h
-f syͻzR~I"ݵ\Sq\RNeТxх
-B\A5M vv()+ &-/4j
-Bt:)C
-2*qU|qk@ɖ5ﺊP#fW
+<< /Filter /FlateDecode /Length 3525 >>
+stream
+x\K$ sXY"x<
+vN։H)eS
+YX`Y!
+Wcl%6= 5X~,RNf_맍ًRftrT/fI^hvPkr Gʸ ,eRJ)칫9hG{j<nE Qc,?:w?
+|ꯈ)zؤMQ߀SƂ8@(2p"ӇVut02h6v<51ڤ>,U0}.
+: ^;i )v>HZK!8'OՖ=V=+Zv]vym4<MWB$9ULdn4ҕIQ@Ch`q,0܀Qk96_RR>M#r>o-]"a
+׽ BCz8k<77Cls-е v,
+Gg mMjm(A
+glR T--.KEٚ
+r:''(|%ލI(EΪz~94iGgla"OO:#$S niaϽ?a0,^
+[3h+E\բ)u| dt֒1I>qw n;ӫYr*f>- sRgLF=0 gLFk6+^! pe؜Cݷ+JFxH5,,fQb΢<bǧg-CeFOvKcR,փt@Ղ֍1 My&7J$w‡oh=gX[FS3 4gjIr@E@Zӵ'3@q<V6֨ +k~k2݅f~iy6s') )iYˮ{ :jqs
+~c W֫u;=-8!pLK!
+tIN&j59
+BjF<7_wbBXApžMP(~;LRx5)WV*V
+r TPA(P-?UA8a2S׮ C)#0_A8UAXK
+B%W $_WAhzExUj/}VҠ^b4-R{ޫ h
+†CԹ]<)$z$8D.)X}hQ^g )&r;;oKvxŗJ
+Z:!c
endstream
endobj
1032 0 obj
@@ -3567,25 +3547,25 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F34 637 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1037 0 obj
-<< /Filter /FlateDecode /Length 4138 >>
-stream
-x]Kc|X,_b
-*S
-mxvcszgPԐiX iq*>
-ճZW)y
-P[x+/?K q{+CZ]?`Ԅqc3+X#Ju=ʐmMRq0]5++{}MXGE=6&9;&Z[:ٟGgJ 4XiZ)fFӚ'ȴمIzCpljKfu`R3NvdN}PPY CS9.Oh$Mys槜ib<k~npE}ga
-h]=5Wqwxd[M+U*&9@h2 .G_\`!H]?5;ӏ<G\[$
-RK8e8=SAVk8d=d\w$dPųciMD/~ʠ䣄r$DܳX< F%yL\_ "VldVNZjRY\dD2oɬ2Q`[q SЖ]>fy$` ' 86p8a&=R* 6T|[C!ajy_
-*fT[8
-P4ߛJ^ZS^$-2#l&W-2,a&@kd%oBy5@My ayw:۠|
- eO2jE7ƤΖk9'WAdլuсhK{& L#c(a]˙F2j>z6Z|urQu(fzQZڬkEkSn6&x
-!9CQusfi Q.uR
-oH4~ɪV<;E%!YBpPO)V|E|ooKLI
-J͔L5"6nmǫ9H:cy]CeccTrָ<L e X?o&=!]F4#>REP7"'y/krӒTpfD xw3UTM3qtA]$QЬװYa%I{-O[Jf:xsi+hmdL'd %1=Lu-pZr9yO0#Ym<)-+JRil^Ӹbq_bcń3g^
-\a6ٝޱ +XRr'hrB5!zҸΒ;:CD:p>DT:QCDGo;DTc>wCC8a1n3n*c9Heqg<=n@i`yg4ȈHu-h%*ےF&\)טr#=F|5[qҒWř.Td+ k('sĸSb-~`2ܞToA9sG9SΪgjth JM¬% ͑ܥ Y
-xuFxly㋧&Z
-j1olUn}
- #V]#ԝz*n݇#SOYXOv*>[rqԓ.֮5?$]0
+<< /Filter /FlateDecode /Length 4163 >>
+stream
+x]KcrX,_bO
+[sY6T;i2[ Bt(KL:Is/#ol\ߕd
+_?u4Z$
+?>ЃXP7(`~L%MWEA)@GiygG8"gD!GRgc'_H̓*"(j]X)gBXy!/XTpz8ĭ%C FMkKA7V%8T I
+iɰzb,6GVף?^ a!H>5;ӏRB݃5g8f{(d&-.qm g뎄z|,˴pWP||1S} %,s'l@ Yeߵ< uuv+@&9@&pVE696$*䵔դE\J6"ٷdvA-8)hKnI<@ܶ 86p8c&=R* vT|[C!aky d3j[8`\N8:ܛJ^ZSb$wL SФh7 htao-Q5Ch1|"Ky=@xx
+2 BeqiDfAcrf5f ]gfֺs )t?D=73kb
+giaLw$
+oJdbiE+kB܌ M-TFr
+66sS([ylCPzC7Iyt"yS <lRc0es`io*/*S4;njI597iNE28'U K*.޽$MsqtA]1%eP|Z\Y>jB%I{OۜJ:o>v$]o3P=!cabY׭ĥm㜶'o,6l񌒷y4ZilsC}Z%-VMX8;:yL,TkvONI 2]'15%.[],[= D%ۺՍ>@ם$͙d2( ޫ\#, Kj[~9S_J}WcZI$jN}VvisQY|[qŨOL
+mi9Q  +@#
+ʁpNpGТ;m ecLn#z*aki-C]C"bUˬDŌWjwcapatg[W[ok 3T4]M,9b>/%-s8DpCK=@G{ka#*sZl:xC 5`ٿ ԬדN`yi3q(jĞi=ipK@:-X{{],#TGj7>j/Ҙ]T=l{\439ug쌏=1~ <J?> \Fu=I Cifa(廉|ڶ{Xz7w)VL<)1ŝ^݌GQA쫘/]9 iXfۜsނaהKmX}Cqwl Vv'thD>B6H{_:gI_"0Q3#Dx!:}#D-'+qߜA1m#qw2ǝǶNh( LwBvT'b]ӆK<ă7TAd40LQN#H<QSSִG{#iKK.pnj5&mP9$gƵd $
+^'C O0VӍf]J( CC bq (LA+94}x
+v>iexcb~=`ߣG0y~aP9
+T [/nfX;Dwzq\zqabJݙY\1;>B)u 7oYI{gq8IO3a=#=vnq?L4YsI.L魐hn،rD]wۦ]{[Lmnɧ̣R2T4y9Q_!`ij51%T6ZH<|Zd豊6Ń?WH^|L<Cy zrN][W[~Z hq
+Nq54zp_*S{FTgj:fNUͣjKect|(UIViI>JCm5џh'c'K3n ?̈%yzب {>w)HbIuyf׏Ž' ߛRI\4]i^A!́}_te [2WG;;%3K䇦q+b7}= a`H
+Z1lU}`7NdsLA# ~@2Et(lEs_K>'{.?/]0]Sr6Esh>e L 
+K@ˊ3|w5 l@Zl"#0VKnmox!*9^S # 7BK^oxacEEkkEo+5U$+5V'" H7wt&C#v$=] m2WH@?ϗIߥ>Bݹ~9߬W>x1Ү݇#Nd<Ҟx';^hn9?BU*kзD373
endstream
endobj
1036 0 obj
@@ -3595,37 +3575,42 @@ endobj
<< /D [ 1036 0 R /XYZ 69.866 801.979 null ] >>
endobj
302 0 obj
-<< /D [ 1036 0 R /XYZ 70.866 565.451 null ] >>
+<< /D [ 1036 0 R /XYZ 70.866 565.469 null ] >>
endobj
1035 0 obj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1041 0 obj
-<< /Filter /FlateDecode /Length 4943 >>
+<< /Filter /FlateDecode /Length 4961 >>
stream
x=ɒ,qsL/&(B7ӼI:ٖ`]
-Ujt uׯ @ /O_|ȗ _~E?־8ח|~R=4(Y_CDz€.л91RJCzG~֪e4zg}Oyv)Ў^*_Z5ό z<ː(NRf4(];QOq\/_
-?~^(Go˯$0?JɌ-
- v P~q
-̅U;8/Hjp<T\@W 򭓯Ʋ6H0@8DA$A:.3шo
-E)( NKK;Cg
-3
-vN*Pԭ
-T3@5PRj(PCk
-tqK1nLg;:B {?C0uEB%XT0:nQ$5G 5E
-Z` ӷ#BibpGI%z¸3莍v3hBV)
-/ HaI%o4%hsUSdVX;"8GowYcYc$Vhi!sC}5ՙJ]}dL$3(ah2/ƤP:Zc8s6n@EME<=!7u@rKa ahajQz"쬨CpB4BK?.Nz%S< LGPnKhy7_ "kHfmfyRboZK~–wɍLIIIϴ#+xVHIFྥ_οB8ҳ!ۜ~܈"r["Bu2\ץe^lF."#ߒ0jI]&\9 b&G!аadQį[Tv;!ZP52ZX,0 z$V* P(G1C2[Dr.*&+E`fGP&
-TWxz:h|i2}ƨ{AFY!W}B)xY?!7ŝE9B]RAXP Vmvb@-yI@e_q;>Ȇ?6ߑ_ycZT)o21}󟦞ŁL u8Fx{L> aQby8z86~N4Gm Cu$ɗh0;XLA ӖFkg56s15 ۅ h9PDYBA췰$[o.woiAO =g=mOf;zH֓!H,wC \>!iW IAhN9OSK a޳c
-WvIf  #{AIo{ ءN?Q=؂\v׸Qd7#p9(ѶKڍ2qZ|J5h3SlUm`l _(<.٥^)6sze9%D`)k5x+6scTЍD-Bm MRxFRdBfã0O32XR`f73Z}w
-$Z͒] ;;G\7Er9rEΏ 8==HEvo&i;"| 8'"ON hcYE֓{fh Ykܚ[kVB.7u8I'PjCeJڬǢ҅:fQ IvO1@\N=ܭE=C,چ#jE)n$L|I?lc[N5c͝:EMQRl
-3ghWCMЎ;I7RG5 >
- 4hEJ~MFʎjp1 a!x\8(qϧ&tR9*Z8$*_#tj H5ji0e =R^լYt
-bA - H;r3sKtKDB yxC2WZ@ξ{Qzx1֨r\=#۷F*2/|SH<SFr?,w;8A;#2uoS=˽oջ}
-q-QQ K?+;1RvWn $FoyWݨ_v5SOWsB\o!v^MyUUi`|iˢP'|PX>h|PsV> o
-zݥ޹|,d94x/)!'.D8gPDEqGh񣥻)ݿ3%$- Us}*: TOkw5jH<gi?qlC>Lh"0"A>9 V
-|U}(AC {YvC` ;z
-"y`Av2!?iШ!ׅ^F/.b拀nv\gO7uG~ܨ⋱e5t7e9uu(>XH!5XCVGkX>QSe>QTQ51gݶ£94u{.)^jڧ80KM;x3/ p rQp R[SY.+ף"zH:ߦjqv`fzS %CWQ8
-o\A{P5fZ Hdg/(>.uTij)d55'5AxH#4D"w-mʣَ6a1IJڇߐU
+Ujt u7 ܀/"_˗ߍ| "X嗿Q|Q/N
+oAHo~}W))')CJRZO;D' H91FJH/ZW>?KU+\_9*̳ JT;(eF ڵ,1EGe=~v+iԿ//^~/ڠ0_#J9]x|"I BYrMӋJ
+hZo˯$zꕓ2
+W_<ZG~\BsYt$s5:G +^\"HW 򩓯Ʋ6H0@8$A$C1ꙅo i9_lSPpn$wJH;"g*Pԭ
+T3@5RRj(Pk
+t}VK1m̉g;C:B {?C0uEB%/{T0:nQ$^kkoGҾXJ4<#q3Πfģ;6"M ̐M1ܭ8s
+9b7 Aͦ"b W r`FD=1vV!8 wQqr'i ߒ^|bPnKdy7_ &G^63yrboZK~–wɍLIIIϴE#+xV*-b$; HF"yN~+߿/ҷ; ʒbC6t- Pek…Ӡe8(
+G>`9#B;"jhqwn)ߎӮ|I#Ź0waV#/QѣWDb(qG-U5h=N4>O4>cԌ`Bf#⬐>ƟcxqgѺvs2iW=1B*  j&oj9XۢwTGlmc7EY.®T&f~OԳ8ВI65?!ՊdX@hI}(<0,!B 8?EA8~N4Gi. cu%əp;)XlAӖFkg5A6s1U ś6 ޴-HH#g%΁B"
+2dŅVA2Vm#yۊz6X fu0pOiz;DiC~nA"?49
+aXU
+wshE{6
+t\I >5PyΈ\s%ΆA
+DŽvhR*(K*64 _")<x\Av|ʏ26,+GdZ#+e/fNv,ߴ*Q2ܢL6u-$gUζI=CPI=#) zst,2v{MnIoN5ޘ{cR %Z%Z\]RӒzh O<.RSM|KB/e
+{oI-rs0.bUc|,9XrK6oPt2 <Kϓ8s^pB 3̻0ɵ<?AEѬGp
+8mf'aC_k
+zQPMaYt[{~uu ;2F߿`Zfgmj;wHQ|@֊%?[(1YFWT)
+ZOX
+[dWk#-נs"p݀6{@(^6+y7 /{@hҋ{{>YE
+8|$@mNϙ)[/uD%'=CqM:WCnӣ
+bA-/q
+vh
+; #疴9f閈icb3!o*b] (ՙ6bZJW/f3\UΟg\XHE@h{#9២7Z5(06.z)z
+Gd,~rNlf[6SG
+֓ 
+<֒/_ U{.fOnIM¡H^:Z ;Ù/4j5!oׄQS+y
+ [%#
+ v㡁8%?r^J@I=o$Fϐ ]_;JSHK
endstream
endobj
1040 0 obj
@@ -3635,37 +3620,29 @@ endobj
<< /D [ 1040 0 R /XYZ 69.866 801.979 null ] >>
endobj
306 0 obj
-<< /D [ 1040 0 R /XYZ 70.866 481.554 null ] >>
+<< /D [ 1040 0 R /XYZ 70.866 481.484 null ] >>
endobj
1039 0 obj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R /F60 834 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1045 0 obj
-<< /Filter /FlateDecode /Length 4277 >>
-stream
-x]K$ crXY [>%c >$*ԭ=tuGQ)v|xW#/A-^A.N
-o _IJYJRZO
--
- A~|!01 \@O4L=k::\2V( F;!{
-z׊{{_&᝞Z)p'Qhӈv7yhڠXp0 "<k]R g:{<#HZ/ QwᬷIGɅ&c8ncP!YmeXomA*6PJ>qQK-Fh ph zE 5VѤݨm&SCF5
-VQU0KRLki~JibFѸf?Oӄ뗞a'41ll}t/X[>7B"+r5@&y^u(y x=hc3+ck3Y~+gZ
-icuc*;Z ;Gv[S.9;nHXSQB{19F4_fGӭ;&!xȭiLd^ʖܞ|`y8'xC] Cr#h
- <b#K&GqNKv!wcA;`!aZ=[ K=4Fha)_Sb$(uJdpIB8#֒#]4N ][#$<TT8T@Z8ߣupkL }i ?ܖ@]^P~^5V|r@NPo_eCFV;U%WW3,0sqQ.<i4,:˨ 3juu9+B+?O 7,,MswnΎEaE ꔎEc1p ;Hݗ&!照Ž:~ FXk %un\ 2FjLI8iכ4IPӨ7PgiGB qC[MQXes^
-OHe7iǬ|j$s4R\&[8khҽ絡i)2c2C-g=j-tB zg9NnR{dE/ܝ0J tm\Ŗ@W"ؔ}PSF+CZ_O{] !"HW!W¾$RG!ڵJ@;QiPC#ނhG66oEEq,|7ArJdc`T'=0Y#$X(&^|KB\l4K,H2!k)P {wbdP~VmIkN[5}JB#>vji-\}B"wȃLRPյVΕ[5JJB#s%vjI?ih%=
-мNuIrT҄Х
-JhR8%Ah]+Iksj΄5
-p-)C}l^RЪymRak5ʭt%s6;11I
-^Iu*Ύ)ٙˑ)yW. _e#"ݼX<2pw.͔l.IO)b\#>J>r{WO:uܠ87l&CblH(WqnҲ\qq xNmjV`-ThwQGI*w/TWFu! 7`k?k_6MMKw>E0*re)I2&;˞N]78MZUYN_ \7KdA#7VQ3_>*UMRU2um-e}e+"]gs&VFgt+W y;+}[
-Vym3%s~w(NUxX
-`[oI,y6,V$O(GkKB?`JddEML(<.ZUכֿiÃ1jcb.Ɯ~mrh5ep4~9z. C?kfaV
-<XI\rՎۃqעk'sѦHz E\.c/V=V*jTRSxq?u4騛g:КIu$huӲA84'#zziy93rXVht{ 46( q!]•_,Ea4 @6؜Zs3E&ܘ",y"ܰs cs9 Ю
-_Jv۪*jT$PӖ;'a BC=r$l) UY0
-'`h`w(04`rXk%<G!?\caܰفPO\ 5:ͳc0hUH m;z`c,Y5xLܞ%049WXB
-5n>}
-UivVyu?'J
-ĠSV])#4dmCnعJnFHo{4U%n%Qp9XH)ÓqR -~dTj@$U"<1@҆
-Pر 8ߒjsv9yJui oIJK{T `нzHEՂJZjAhiՂn[ml[j+g9nI, ]jpSx{%dt2MWP6
-ChߩKN~ځw߮9;sܫ~I<:ۣPȒ$+ӰG iqZVDtSØuھtP9-kfC%$+%F7>#,}\됋nIu/:ZD<HcTLg) _hWu_}6^A*IWs>k'_5cۇX ҕ}x|pZ8a:7㉳'Ϡ3:cOޑ6Į cvl:Pyt$cUo<:i|ySk<YZ?S_愔)N+>w?/D
+<< /Filter /FlateDecode /Length 3609 >>
+stream
+x\Ɏ$W> EFp t<7A'ےXw\Ȭd{Ke%3>ˆv|xW#/A V_A.N
+o $7\~$%|/% zҠgE>}DDÀ._9)>rUy4>y2B;Qi$kD<Go –<gl*)Ql24JkW5G<s'l\|O=6H!khx^~>Nb!
+o IBz[$
+
+0ZXz,xz o00xQ*L#`d(مfch
+J(Zf[Vny[w\A.k<8c|v$twt҆Si梽7|ӊi<lF!ݑyWtw@iE>f>mzOќMX5 (;JA1#j)` '}I#BӚ P ^~aRow%h xAdB=$e(.v.Iv&5==ʬc,c5?q=wu5Y{T+M#m-ldŖ\4$ħ,JUgJ;t?r4q]rS/?Gf[=yo1K"TL z%ƶUM!TJ^t%lS'E,-_+
+)j|ޘCubN~K|_>Ǿ]ɰ`c{iqn%6؛(z+BQ2EIOY㥞U~ \]SDe;mģ d(Q?G]x\R<ǚɑx\s 5;!wcE'`!aoi.o?Smq\%]\Za(HKZ(;;SSVK$Pd' `ʄ.)?΃xQtn踥 G HukaqF8Ay*-9J.%EOi_a,wWorZ̊l\2%WW(I<4'24~M=m]Ͻ6T^h+i䆙DLqS9ɬQZ1q:eb5] (lFb0K,!"E:'roW4 S*U޴p,K2Wi{U$t?Jo5bR[B[q͵|u˜|i.۝U<P oli'Vteڗ4 Z|nSfOئ(iF939ĚՀ\8FT^L<
+|CnxYfÞ|l#|rw`Uq"kZH+D\PUcM"/^'{bu\e:P
+}ӄWQFSp*4:v17hǎ۴5-KXUk[Iarojʖ QʆRw-jN`MO/VlշR୩ޒ-U娃U*ъ*ZO(h
+oTpOF1di(ݭY.,G,ԄFVVMn}
+dRMqDs_>E7POmOhK*Y8bCNm+}4Q,3ŢGfW̍Wt Ė'wShd2ܹgF/ed,u6_i̘Լ`'3S_4eI un/S[2*VR܏
+B-U;v_Z"̶C?<\^*w)O.}5Fڒom(4M
+ߡhBq7"- jW)$c 7)Hm!+ZJ
+r-_yM|We{euf_d4rpG~8<rUpSp+~EZ
+w)ݭL#}w}ww݇D}zYb$}J㻇oݧowwpQoOEoS9].9~5-_E`
endstream
endobj
1044 0 obj
@@ -3675,19 +3652,21 @@ endobj
<< /D [ 1044 0 R /XYZ 69.866 801.979 null ] >>
endobj
310 0 obj
-<< /D [ 1044 0 R /XYZ 70.866 665.155 null ] >>
+<< /D [ 1044 0 R /XYZ 70.866 665.106 null ] >>
endobj
1043 0 obj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R /F48 640 0 R /F42 792 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1049 0 obj
-<< /Filter /FlateDecode /Length 2081 >>
+<< /Filter /FlateDecode /Length 2567 >>
stream
-xZM6 =DHJ`l6[ { rj@sh.l;ܱ5춇3H=>~H zG#? ^+vnFk|ڢ֎o#}}'߾ާ1VkMo:F-ǿY7ƿ. /3:3˵rY kYΙgY M9uik"(GqN##ۗam{,FDhM,*K8 (a6bkOFƼtF9C+(6Q}!*S,yʈh(t&q?a$&j}rKzfrK $C3fZK݇YcƙB uLLnlzӅr լ.`` N5be&
-R] "0Xf>a!߿?ww`(0wQ1og{-TN7 N@YLkYA 1ClҲne0 JB!H
-MXܼssJ` 7:m+a!qtRX)lnO$ uARP P
-VX]53R$chh#$Zj +0=oqs~8 dG=4)#&XI:[' ڰn
- RZIL5IVO~s. *FWSdRMT䨽 F(aM
+x[Ks W19 CjU8U{fn[{JI2%? Eijɡݶ)
+X`2.̨"
+8ҪqC{xrͤӑ.K-M
+ t/΁kqrc"70[D'r0##*b!jMޓV|T C?x~_|A+4fIϏ#KJq5a]r}Gy mD#I'3#{T*Ir(]7KUytvs)-I)bm^sUTO0]qB5?ڕ`4k>W8qZsGX5MΟď)ef}̭t%.5IߺP*Ԧnr*^%q.FRZ4x;a/TPjeTߑUf
+1JF>S݊>T7ˑg vta|zZtGҁEo.:g[[k\:ed&#a>Q)'*oWixjMo'im&s7x]U7<BnPj+|r RJw&٠K;(Z¨vѻluO;(ӭͪA`svpvPhnE{2j;84vP6^ƴ2\j;8v2&jET`%nnEěěonߝyon׫Fw%^rYh)ⓒl:4c%U@/s<[5 ,͏_]J8c4]yaa^J&{f,uf
+Xs0Pfl[uv!FЉ!*ueC6FB8O)+q%t F1 *r׾Rt}Zuv)FЉ) ue
+N:$L5"N S@[>nw齃[H썻FɡqT3u:9ւĝwuYn-rl 'Ѱfwc?øz7QtD52삕: Ԩsl'Q
endstream
endobj
1048 0 obj
@@ -3697,7 +3676,7 @@ endobj
<< /D [ 1048 0 R /XYZ 69.866 801.979 null ] >>
endobj
1047 0 obj
-<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1054 0 obj
<< /Filter /FlateDecode /Length 2152 >>
@@ -3706,8 +3685,11 @@ xZKo-9We[Ĺ n4+``$6}ʯ8ݓ\e,N:G\&=A/H
M_?;u:Ee LzÃVF;;ioYLhc Vq^PiˌhcfWnbS3ʓY#Y ߂E\vKbm?ҷ4RAmWlwz+h4y,Q_MdG v'鞷=?=-X}XFpF^I
i#^f'b}$V1MҢ?xSӭ.l GI 7B.ӵ%m"y
-wS}nKv&uveWFEmk(63o%XJuZ Y4
-B*!Iv4NXj@F|}(m=K^fD:uʉ'UE1tA7q}B}#G].l„)JaǸ/xAXqr{SMy<QBҭn[z5_’X2Q$] {ǁ3r`6 q# D4o7.o/M@0+VAtv.Kߔvww/ wJȏ^Ֆ2{5zvnn1K]p #mehsg,*
+wS}nKv&uveWFEmk(63o%XJuZ Y4
+,pK&Iʅ嬿:R,dbzjk[ /ӞbKs_nFP1V96:S\ [;l?:B4#ƌBvUMl+nQl?m.5#t[eʋJw{1'SR/nL
+%CaI,BmvU\
+u1S+9V- %N"Zg^T$3n9mfXņqKady GI4)ʇ#@G[I)js\Jw1<F5|; $ Fۛ4\َ 0[-tkƧZOכNF=wEk k.7^74,$ϟb+$=0.GC^ èFYd Kb3 9J*qlRs-Z^Xjc+=Kmz2󌑬WpŧrbW]}JA6+>R, 91lBuc罽—d35Qazo6Gn B˶B*7vBuT8wv%$bI?oĆn`)8~t z يC0AEX)udnoh"f5k!{PPDQ[
+B*!Iv4NXj@F|}(m=K^fD:uʉ'UE1tA7q}B}#G].l„)JaǸ/xAXqr{SMy<QBҭn[z5_’X2Q$] {ǁ3r`6 q# D4o7.o/M@0+VAtv.Kߔvww/ wJȏ^Ֆ2{5zvnn1K]p #mehsg,~n
endstream
endobj
1053 0 obj
@@ -3729,21 +3711,19 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F55 774 0 R /F42 792 0 R /F50 687 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1058 0 obj
-<< /Filter /FlateDecode /Length 3785 >>
-stream
-xɮ#>_}x Y0`F|37ç$v ćOqk.n%YÌ^/dkH~O?;|'ǜ-O}'?j}21qs8gr-] Ͼcǿ4X?kx!c}+T8^_-,0adW=D8CPh(FLJ{<ѠG@$R;~%.h'/\8ԗx-/\[LiqFN0Զ}E["<z@Lo~v.iT= $H˄se=^ O!`$B&M$S 9J,rɳypg[1GXxj]4˻jϫ1uF*0, @sI^<c.<*+ws# ɲ82C\7eͨMj=x6J)-8sO?zwY+xKLI<!2?O1yET+@fIYW
-!x6xȫl*ke|1d$APRY~DIڵ)GTR}z0ja=E~UЯ~f&Ū 2!Dy^cqaF-
-l+<9ZI߃ɑGbLa_?ߏȤ^cqߧHizEqٹv'F2wYрÚ6CE\(f% =^BDroY0r8 Ÿ HzC/%1)."`:8##dGY G"*ńGY'Cb0[".TrN仇H"WGH
-DZ*O _IY =#BJ J%*/n4}~ȌY3|h 5ͳ9閼u;;9D/eYVR+
-R܃n yz&HՂ1cR y7;L2)GΩ}IDZ}W4Y{d0-q[~ }\|9aCBCŜ=ru/r9'9Nfv; w{lHe6bͼIba&.Լ#8qd229Zgde/Y
-Y_QHݭiGkmϽqZsobR<ؚuv)|r,绺^ɛze-Ҡ-|Tqzߝ"ful]bT.JqmhDƎJ#y/l\V}+^+hT 0拯^+i{u'V?z=um~sU\>TFa |zݏz^ RzGO^׊ƕRPbV0h](1_AR$6aV΄c?
-V)hW#s,Y~pQ!6x8 bkb 1FSQ SnJ{\I!3MUҩEBJM&)Z)=^R(kUVOÔ \ ^^#\4)R]rKj#vZgmbbc\9Y6 KZSÛrj*8H a#^>-}o
-AoɼQIߖ^PkEZ/PH$!uf]NpUi?gTI&:H)p@3imYy(v@MtIE %?Z.eXqkQNe;r*•$z]Y. ^)ѭ'"S<=^7Wc8l'*2غO^jkH^uU4)!#THO~+tq*oC
-ROf}!RMd+{kMEs<ѷP?ܿF+S?{|za6z( xC*~ŇR(M
+<< /Filter /FlateDecode /Length 3783 >>
+stream
+xɮ#>_}x Y0`F|37ç$v ćOqk.n%YÌ^/dkH~O?;|'ǜ-O}'?j}21qs8gr-] Ͼcǿ4X?kx!c}+T8^_-,0adW=D8CPh(FLJ{<ѠG@$R;~%.h'/\8ԗx-/\[LiqFN0Զ}E["<z@Lo~v.iT= $H˄se=^ O!`$B&M$S 9J,rɳypg[1GXxj]4˻jϫ1uF*0, @sI^<c.<*+ws# ɲ82C\7eͨMj=x6J)-8sO?zwY+xKLI<!2?O1yET+@fIYW
+L<:mds?BA~D&uO>-GJ+Bh_΍;6Cg*
+2B>ISABhOް!ckb9k'}QW3;Z˝ކĻ wW6$2X|Hg R1af^$r{j^K8v32D},s" Cb\_Y>\9$c:|ٕ
+B'!'9aO4 &3Cҙ, EGm7Z2{1!1 e:g]R `\PR2蔆E֤jHZ5,EϜo3d"]
+wT-7%ʄ1]_CkUXD[v1qb;$3خsƿ,+¿Վwp"!&,دIDִ#jnj8ӌ{71LjK)dlMZ>9l]]M2\͖^fiX׸SN MX@^q1^wcz6eQcG%?^+>oW|\W4ҽa؟P{_u?9~۪K^K*euްz}TG=z}vz⣧Uo kEBODyJJ)Dg(1+Tb )PSxQYg€ks+fxv O,?ըIL<ABO rAt151#LkqgHHIr=I$ѐ&*|T"!&dK)5W*+'i~caJLlR.څhsn.y.b;6 XK1ıe.ZʥͩM9UU$ci Ѿ7Fޠd(äoK/ (IV5LI"RC-{HnZ]e$Ij6#.1(|-i٪#%0U RJ6LZ|aV~EP6ݭkR)98$*f ϭKbY(;DZSA{
+p*IeAֳKW7|tzD@0/cg؅{.+ W ZWh}m]&MzHғ_l
+2Gu[{Đl7Sc
?ij\G zH4@̶
\| Dfs)3XAՙG~%VqXA
$@(EWѺQ-e>]aꖒuهĸ 4~M֝dS3Z ~Y[P\"S*H!~{,iwHdE(
-WXvz^=hee
+WXvz^=hee
endstream
endobj
1057 0 obj
@@ -3762,25 +3742,24 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F42 792 0 R /F55 774 0 R /F48 640 0 R /F36 775 0 R /F34 637 0 R /F57 799 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1062 0 obj
-<< /Filter /FlateDecode /Length 3621 >>
-stream
-x]Kc|0êX -oOI%?UwK=̪[-fQo?}շCgn?}*8w!*﷟?jiMk w-i-_x{wg}6r_ krGں__0d YO?TT0oڹ<p֓mm]nv1 SKנ%J`rW4]#GOBuu%?U<
-wh`FJ]e)a4I`,iC
-
-8EòF&L+lEMT,ԯytF#F˼AnfGM*pmq8
-)O t}t5u=x~5,|Ѧ6FMI*]ٚRAE#~9&V뚡d
-X"S&e/XS~;L4e\TV$RLz=Ly)i$K!4 ٿ
-le=XܬҌ.b e%(0B򙬶[^G0-^&{OúzLas-vAV&J 8#JD1ǰ6Feoϳ-_n;{75t~}x$3`E`@$JM:2P[/1͹A s igR(8@Q9[C
- 6dHBg/Ap/ Xfk-G#n j~ڏ[‚ꗱӁtA| amJr(=_;1n#prB--l.QǼ
-=.G&:sz^L25
-b} Wz%@wz!0U=¿>e%ud(X֏칷c혼x~q5I3w8hq1څI;HA+h1ȟHbBVl*/I,ķvU9;6@2MʑHUy@w:G+RT'%d#]#L{ɬǪz3egY\'qU.1
-B鶈nԙ-~.l]ds2e_$!A;b8O:s#fdFmg#Flޖ!nLˊX؂w
-c57޷&i⯤zO#{7Բx12p|nk%
-5 XD60V V[ i; y^r _Ge\2|$K_neSRTXs>m>=>`g4]͓q\ܾ]|RKC  CCjS>(_#R:|d+e')_MdXyQWBvCPERr0"0t\ 446suW"ߑD7.*x&0ʱw̪YS]V2TB5eY"RH+,$M`ϮIІ5::sEsFrk%=y ~g( _-s$ՐȦpĊlr,6 3kd3v7f+&'3*)W.O8R'@AUvvږhDhv_B0wQbYK8W?W٠v6 [$f ȮdM>+mɯG~EF)9>SɆr #RWɊ)p )BIipLk41v-Ceorʒ;
-"m*{|5TFI%^P ) |$τm:[ew-go[tWcxPb=>oҝ󪣲6ŠX Ne
-W͹C[;VˈpjY)PJ 7Xe}:g,fLQq)bx~tezUCMJ2 vZ^v MA${{%O.aЃ%*M %ҽ٣.gm9W>k3Ow!ɾ =+K_aQ$Q6c}ED5Ɂa}ź i5}:2h?xY =gdzYp<
-'Y,}Kh9k^ǎltqLW|Jʳ˥N`>tjϾ
-?&1,T<a_7WfyqdCdہlrzQG4we,:0Ũe%{r[^KY>^J*)z-9%ڱ`kS֨sXZ~g6?,n:IBޛ؂>p`NA8G;
+<< /Filter /FlateDecode /Length 3619 >>
+stream
+x]Kc|0êX -oOI%?UwK=jZ-fQo?}շCgn?}*8w!*﷟?jiMk w-i["',Ox{wgm>@~/m厴u%t`嗟~`@޴sy*' 3%lں
+T+ FGc3:AKp0<i&0z#ӿrG eCN7~H ^PT
+>)NL73VDJÈ h19:6̳)ȧ7S#DeoX
+kڭ/Q   ~+ tO?"0-Er &.~[mUpFT3\V2dwo.0L 7McYLzOxW_Pš,$04fZe+nf~W;5Z%5Zu4{8hR3or.ƳY1^LUϷ,2US}*GƩOy`0IÛT^{FR+h¦t<-J{װ}R FWo7&YtfkJɎl[QkZMV+0b4fO^$E`bO2=l&qQY=H00P@/ANl`g6d+r(cqVK3fؖr@ ignyhxhwwO?-1y̱O Y{(X(a_%ot]=~Ӈ|"rXRMDr?y_Ùm GYqg
+-V@s5t0>S=[9w_
+o03c؟'"zd3$Y ]ܷ yWby߭A| [%ܣ*s]VbqYHremʞ{k>ގљ-'X^4ss;Io].Q$&dɦ"񲌐B|kXSlqCj$_Ejts>ZPArZ|/5@uYM6="ϴw8Ο̺|!;Yvub\}.$knF9ۏxeyN6'S6O2?;A,sZ.37bF&kz;b&Lmi{T`
+x-x7 mB#Ke5m!z
+8+Jg42k~@-K+/SYƿV aZMzly6;>}x"iRMЭX#갞ЁAdmb%Ő{ΐ7m%)u^&:!p%CʷA^6%EI56N#^A xO<w,0@k04;5y+ecgOR}AUJފߔN&
+q1>u5,dG@P=eYd++E:*#b aJgH(E)@Ck0WPw%yNtC)ng{GͬZQ>յh%3H%XYS^ثQB:,t]Ap` iV{v=NR6ia+4G[+Ec{=C)njќ$tD6{< Vdc)fT^#;ל'F' `$OGU5#XQ6=auQI
+x0$wy‘l=Ϸ xLwZw^׶D(Fݿ'rlC` u'fǨ\¹
+۴Y"97S^Fvu%lYImK~=+0L9J6CeGϗ*2NVM]XL*?NZmL;eBFXs;lA*{SaPiSٛGCa7ZMg/4RjkuoNa'#yx&|o
+>-gmk%(X>{ۂ8 ڶ)}[֗LWE/ƺl
+'9Z,1o]
+#Ve1êJ
+RE~ْ'K쮌aM
+GJB`{S#:7hѼyCkq{7Y YH~lDea1;f& 3{@ڟ˥`mz p}8hq-XO湗 $>N+z #b ٥TCfIcI,nZ
endstream
endobj
1061 0 obj
@@ -3793,28 +3772,20 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1066 0 obj
-<< /Filter /FlateDecode /Length 3321 >>
-stream
-x\;+&X7X@gel|}_duOszgW
-fgGXH<}=_=}yӋ EO_~@֞B"=vAJ(,%<Iio_?(sTbԡS_*}A|^^ӓϵ$秏 ڴyϑ
-z4e^G0V-4O-eAR+ӟ_O+˻.VH|{˵QhuZ
-@Hi-<Nb4t|S`0h˙;65N"uDj O-w"JUp*5eez*[JnӂJ`0Us\ nѐHѭx jK^Н3 {%r269}Vz>6GɫF FD
-o36 Yv?cS{)
-#*s <&ayVMxI-歰5bV;0bQpr>y&>RwhpB%N#End j׃82I1.W)p$8!󷁭z~z!sPTi+ѽ%09vOQSRX臇l$im qN۸VPgD/ gb99WlPIseY:dq8ć㨩$֋L~珳VZ(QkMoSO(4.3=5< SD#)ӑD?$cHLOea"d%_9T:ɵX<>Uϔk~1jRjXs^iJšbWf:*0_K;t9y:F7I ]7C͵cȍ#?_駛U.M}UqDqY0\ịɹZiՔk='}~FߦTs{J܌*
-[#W:HjQy;"xV: ^%P蠦u}L:uڨ556 Mkfl)ak81F3}V?ohcCKͲ#^m2
-`QWJɹNKXxYj[WhvF
-vhR <e ieMRb
-U $Cm<L0)b1em r
-di uss0
-W'g捺Fz?#^
-7#,$[>w5 52)i-n5 Ie0 )޻nb) h!I쉨zbXv
-P@;5TF(w4qɜ; @QtONOÌ>gB?HSRs:)cdCVf4{&5[u#`%=!فEU.N
-$#vJU4$EXu $.Z潿$%ٙ ?0$CjV %my5H x$̈ Ne kB2A2!;ssx.99t^i Mr)YEK(9 bJ}
-܍W>MdY?֋W(7#P~M5Ňve@W[p(a8GY
-f:tQnO\mu䙷w%MLZ· U &C+h#)^?]@8]ѲEE+t,p/8 {](,}y"n1tvۚ0V |#8x=y%IuNOϒrץ>2ćuz bi|A~;>c9\8{}r{_+BCvC˚醖ǠX^r؄/u6TN%qhoaN{ՐOmCD\J^aٌLYvQZ8T[Bc4
-p0z7i-
-qth2T2]D{Nۜy >kJsõdpz=>QGƮp)r)(;G1i3 W4㹃/_I' |hN5o|kpdZ;, 7nk7i >z7%m3PWD^)k  ^$f>7cfĨDR2qsWěS
-/qVe9-k`,啮%60و;lV%+6
+<< /Filter /FlateDecode /Length 3330 >>
+stream
+x\K1s.
+z4eG0VM4O-eAR+ß3l'D+??rm0Z!~6DÁސ0*@E Q5tǤ:fY5HuX$*Nc1E-<Nc1wfsz)u@R̍'"~#s\Wz\GZXVK۫2-[%=27x:r3FC"݄F7K=&-yAw7/s67Enr4|=l<Wa;
+N`e1]3pэp4Cͪe1\[cͪIm&>Qr*84ZPU(4Qp\v.״j5>?u#RC*9=%nR
+,
+ܝW>Md]X?֋W(7#P~^L5Ňv5ʀ@8P>.q3
+$O\mµ癷w%MLZWA ](LW:"` Z&{t%q ޲EE+t,pO!^!pQz]7ADbvE105}b&rH{1Bq6{J샲);>+ޖ0J|X}
+,lI -I'bp}k_tC 1f -kZ^nc={1aZmJӰ2j_!B!ۦ2+`RL❋" Hki&PqI p9+DPɽݤ<+LUχ_PSp픶9|5nתs${|}s/ -S-KkVpϥ#be9'D IrD7~=J:lCkvLշtʬp}3g,[$*h -fjq_cOK7ݙ=o1ջ((.0mUzEn;AqNBPv  SM0z[iD[M$.7w%K9lqř\
+̛r5kJQm};eN5]*,e35VL6ha?,
+b
+؄8ZJ0Ywe$?Q| Ns
+Vn`%8¨Hy?j7NZ/2n[1,.S
+4iJD ^kP4Ɨd*3j:d 䗾s0-AR
endstream
endobj
1065 0 obj
@@ -3833,32 +3804,22 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R /F48 640 0 R /F42 792 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1070 0 obj
-<< /Filter /FlateDecode /Length 4138 >>
-stream
-x]KW1:f߀W5[ 81K~jӏtnbH˿.{5Dho8)烐Hq壔)YJRZ9GO,6~ןr_ߗw kO>i3?1)~(鑖 Wy{qŒo-v15}Ze02܂ hu"2Q>>>HkK(syj}J؎*w k/$@<˝+šmV / ʪ4@NոZ 6k2T`02WG`Ild6T_ftbN6—uA -5Cy&O x' W,߼D]H>]f3Qou m3T?gX3Ӌ9Hݎ!sPRR#u\aǰ.DpF1EUQL~*F>  (]Ie?2u^ҠGVSN*Ǟ8:C:v+l+vWT%?eh,Wl6L3Ter<:&E*[R#S?|~єl
-IQ 7ڙäGʶsnI|q3KzdjкMqF,pn-
-&\8~n{%oj\X53,>ɗ$#=A-Ҏ=H`4CGq#䢮̪UW]Uu] 1FzqQ#uȊ +f +S6~gK fw
-L'=v
-sz
-ifoB-OptK9<Ɔ@s;,O%nNt7 b9MK>dB![c!/Ix J JM\Yԑ@Cf
-g[^Bbc~}~bY/6bwdYP) 񥦮y[.hqdUhZ~2O,k' wnA碌d3dxWEdY0YY*lZ[6"m2QMKՔA#_II$XTcCHM #'iA~I@GS7#J]*7GↃ qn( "Rr
-#ȇe$v$<3#iyTQ~;#
- 顧3l񠝝(G&JNpH}Og2j>64|CZRiTsHk t1Y~#^^ ;)QGKŅf=^
-_(ig>6/=
--Wdkm#iE\-;-9I%V)K?k侪. Wmf4z/?莘k߭iCkMiS
-\SWBKpaWzfsXRZN![cM1}\0mEv;h߹ȄN)8v|+NNc:42^B]_]kdU U<fT&8!oObKÌ̼`>O2ј
-ʵYͯ8LC=k[Jni z}mq_\^RmGu07 ~rB fvۧ:L:1d!S8--RXpUP 'Mjiruu`^͖mΨ1$1
- &=1(J FiLokQFk{5qVN-GVK71;c*D? ?=OpF=Od=7빢euwtVP)FHQSyr%#q_:ٖTдr{Û7k`c(+S#^IgCk#TGbwnF5l’~ݤE0*C~،n|suZ3R9*5+ښ(#PZu2
-p#8YeXBJy U+/i
- I&>jQhk= T~y7=76l*u㧜
-Pidvܢy!m[7SkTB MW -2(+
-nj˰]Ql^5YӎmZJ-Xn#y%
-Pؘ ~Tӌ= D2ir۽*h-edBkHC%X:KF%p@:;*3wTH {@L(\@>J%- B({ośNƍjo27wdJ;
-rexȆdmӳfHis7E
-"/gǟAhnF:[%GGGiץK=M~'[t;o!=f}Lyj YjJZ FAUoSn-z)1%::ID;YC7(0@L
-߻csz ͷz\ ١#^wpqx߈ 4\ :QO= ?f/eYYE-<̷ $ݓVT߁:c3.uz g35Mw~I{s >mdzN.XpJ<7Ez
-H|;hrZҿɖ72` [ @ss#ȞXD#48;
-Ta6A6rQ!xcBq~ \*  }k\ϣiE nh|ggs[
+<< /Filter /FlateDecode /Length 4140 >>
+stream
+x]KW1:&o@X-nOI%?U|5cG#F&zX,R 4x u;_XΜ1<q#=+Zrn-RJl!}k->1"wͧ}~z лƽ A=_~F&ip巇
+)3
+u'-iީӟs3THkS \LŤGsnI\v3Kza8e?K;:BG,ذ-I
+WKcv~{Eoj\7X5xݿ->kM M}AnG${0#ňOCz9fUO.1 =h38TD-c՚UDͰiNX6ˁnLJ68]
+x,De#.1<oiv|
+tWf. ޞUJ`x1hKuY"jѷ\H_h- b^{Xie.?uS "?2Bт^%e\Che!Jim%>,]%"D6TJʠX/'$@b,*Vӱ"IÄ `C݂X$ũDH&"{opC
+'rCj=ܐF0=>9ar3ФR߫Up~B@cl B M$
+GHgJm :A<0Bz:wht&99@btHK8R}C@<!Q3Rәv6ʅc`dLk/
+ߩ)O2/OY'O $"צd"9l&(^nm膘 -iCKMn lUC#c쀐K58R)_)R"YcI1m\,0mYv=Voߩ HM)0v|/ԥOc2d<B]iM[$U
+M<flTU&暸J1!nOԥbKn̼Ig.MphLDyڸrV+ %`>֖Rm?n-.%-5Fmk{+z GJis\ $5,gXray)Τ]y[M,oij"Ŗ &1fҖՁ~&N2[9-DK肘sO(&.Pcxk[g6\urTM\95 VI- D_4OPdޫ]g0܌7<<J\߯Ң~[9\`n:+/NQcyr!!q]:ɖW[CJ4o=Aa^AJB8[EZi&C*vkgڏ|uLko c_vu/
+Hjيf%#,xfƩeԽi)СOPη YULsa26iXdW(_#1sp*H0?dzG<oX`F]\.:O$O/LLJ'qˇ5T׏~ą(\ ' +:3+Ō)Yp#Qr bVoC_;. cv<W b{tu^r3 K>yT!&7UBP{U2;}v*ur+$ 2J!_X_d^]QH/"3{DS`WfM}Cۺ5Q ڷE^
+^CևZQV+󛧙8NΘ^=ڀ$+j6OݫVG6=ʓw8R1*OOW*qtŠ+5} Ƞq d|\`<0|-6uӶǾT{&QP8V˭3#g 7tL=5ۋo:~9K*RZtᗛoVKo
+I7OBJ؃7 ~~  LAJ͔Gkw_8̈́/ x&6޷cݶcy&aK8sgtGA]*-*7{d
+eak*eY:J'N4P<ݽ|œ'q.ؽ+y`SȦmewh%s9UP'4 pWDi5.Ⱦɶ<tGPO-nP7&%{xrɿĮ=hIFp.>9 _+O8Z'%YfǺ Gg! 5/I:qX߀X;d3v󩧥v~@Ι㖦[7hQ[GTp ={'M)k)4RpZF7Jrl@Hq. ْ6ko]>a8ja`m]TCXIDR!yF1v
endstream
endobj
1069 0 obj
@@ -3874,39 +3835,25 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F42 792 0 R /F48 640 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1074 0 obj
-<< /Filter /FlateDecode /Length 4385 >>
-stream
-xM~#4_Uʷ8|Jb'U!损7 /yˇ>K?P@^I᭽8zORRoTR-_>j _>:ŪL7i,s_5>6p__|MϘ~Q=TPk\r.! 8{z)e
-D̉=eY_.m VH haP_E?/?@F@ o TESCqF!c4g5ʁ#Ba?VwҷvV$f;kIyBe0кJ# l=L:6 7%v7kWK!QU娞Z۰L xK<zx۵ޱ<@Y:ђtפ =cf)-z3Diy@@.Y[{xQ
-C;@r(c
-SWa0%c
-SDYKa*T
-F0#pLiP %tM+яP.ڷWPn5
-#Ì%d>q(i 1 ۊTXvc@EhtBC
-@
-R\f?bC-_ÐYЧ2R8ڽ$! vd,ۜi SzC.g''
-p@kTz>5*@{k jpF˶0jDBwaZ:Y+OSAGy#kM琹V]my kd~5% 5 Y4O*e7mz Z<YTIz#jw#ʱ0PBFy,lk`m)mGi}jMԭ-X`p&a00" X}(D ©tje(ӘM|/‘c|{CK
-TyP]O}ϓ*mE@3B;MT|:CHnS&ƷM ?HVm;/TM<F4\ -RzDyrr儳CbW qwk3FK;P2A`^c3:װoxt4ϋ͔<ĥ7fOuqעĩϙbƆ:9IᗑBFL3|T@[>e"~! >vDIrgDfk=x SgŒ<Uz)ہy0dxal:䐙f+#EGd!Mԫy
-AY& 8-Ct}ChAsvvk@XC W`j^9pGd "WÌGyâkao:QuPԺygԺ愨
-۱ NՓb#nyx)WMTm,oNH(@aɕk1\1O
-ЌX^9`_8"OB}µ hﻵQAFɜrgW6HS67{6nl 6-1{ `;y͎ګC'̒ML
-ĉ)mV\Yŧo?דxlPc~ĭ|b0lAʚPļfɭ:Wȳ8X XG!N>0ŽUd<J!5]J]E0ݟ9n :(IֶG#y8ߙ9OAheK|՚h8zќ3`t
-y( -9v
-?Y
->fP. mHߒUּAc'nffls9IL+9Ta2`غ*b!T@D
-zT?oQMؓt>`f^leFhw/Q΅Dr5%=ݛ}yߣQĕ6
-ŘDsx@qp9 pךz'DV/7αt_\hgOWZ`rBh} B5B5,O ?,
-͋s;w 'A;p}
-#Rr*oفq/Nfw£ we]ǀY"M*piK67|F:|U0<|5
-XVb
-*aS
-'*]
-T1ygج@N,V(#HDeVć@O9ۦ"Y!i PxD"5}k`y&\Y&e8IU71 {õ;T:c)24aqwKX*w!#$FE/Dc"C9!õ)w89z1<2_9־|'T[2_MKer|*W o!2
-YtEZe~|i2ZVZU@VU!TKOUlM/΁]aCbÑ|u]0_Oij%hoS3'Y'6evĮ쎍tfҏ'w'X&|}5sp2Cl[\g.||8ǒ}t#Ӂt4B{+'ѳ[J- g=IY/bQ汯aVᔸ)O:v8Za!#hmDY[)9kXF ֌(3 T!yF(%->:Cxws
-'5sq 0:||{x}=*HQCi)cݍ(x'9C .t?G&p;a]
-A փ>}!(I"}H6sR!\&Im+d Bas,W\Dr,bA
-k$W$ؤ$v<ơ
-/\ٚv>UBHĪ 
+<< /Filter /FlateDecode /Length 4394 >>
+stream
+x]K$uX dؘF,ɶdGXL
+(m=[]O2a嗋n%`?P􅼨[{q>_/?~R-%|+zҀ
+z Efj@Fl(Iwҧl&IPOmlXO*+z@*Oұ(atoMZi7Ⴚ5j[=ӳ6 B`!8=C%O2$C~nz;` |ׅDY;ђt״=Sf)hlGpн%ot/\l={AڌIi6Wp +pAzDPM~FQ@h֭[RD^ƌ\H2GAsdp (yZ2OHӼCCh|wz{(P~?D_~c_|9\rR(0 >A $cu KSǺױRoOV\=r.oHO1"m [X'E3 Vjc?NQOS[lР;2Ê뚴%2A`G$-٪1 2V\tۍ Kt'5d3[C+@
+ 1)zk0k0gL b`*,O45 N/l0qxac8AJ״q}~ъݭzRVm:tpX@3B90Xpp T0&=1ѐP5@6&ol&c
+fKpR{q b]zXISXя`wGxgZu؍"(9ZhFxd.J5UE
+7)0 fJX7ArЎj;A06V4R5ɠnHrxq34Ib
+42 gİ&nlV3P3AX5`L0䯱/Qk'5 yWR?q~⍙%~]BEsQ,1 cB]B̗QBN L-G2$-1_8񱍶&H&{=#5i&vF'ЊUy ==
+)m SBja>Y@; zGP[w@AƯr*GdXu(
+ CGzꮧl
+14p%?O?YT_Khݒ9 h94n\ !5P^n0Īմ:x20N!p_"W(nz*^>!:C
+ zFD/hZ/wVwJN8Y5}'+j,O;YQ
+`[Y{G֞@T=3muO V_nzݪOKU}T_czRþXw~⁎ 96wB4GȜrg9 $'  +Zqu><1d|9>=L
+aG>03);.R2Ƿ9W.1},"Ḟcc+
+ܡG/\a#G+n^0Z$H#b $i$\@ZwIkƲ#55 0f@'К]T yl@NeK[$7?ˆ9 7$"<hdU1$Rk,)0K"|fEMK6QIz˒ nDb _SOF糢WƾX<GX
+ fg]WLkk&zRMq-XC2jmso?
+b
+j=*o<iQErAEÌ G=<qO&g@:xb#n4\:ܗJ>{,׍κ$3]Y!:t[AF^sUO
endstream
endobj
1073 0 obj
@@ -3916,38 +3863,31 @@ endobj
<< /D [ 1073 0 R /XYZ 69.866 801.979 null ] >>
endobj
346 0 obj
-<< /D [ 1073 0 R /XYZ 70.866 425.096 null ] >>
+<< /D [ 1073 0 R /XYZ 70.866 425.086 null ] >>
endobj
1072 0 obj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1078 0 obj
-<< /Filter /FlateDecode /Length 4269 >>
-stream
-x]Kc|X*
-ʕl?\]-sF%Q, )u|Y ^
-VG  ~G RT ArZ׷G&9R^
-\21-eNL 㧅AI(K+ ?=9=7}F9J}c>8]ɽ/^oZ;< ڹUJS:t`$*y]f2h%æ[
->]#wc7od |:a/A
-ȩ#^U_ݭ/x2 ~r}LXzw_DAG 1
-rB}<PoyܬL=+ӋL5aҢlyx/VC\z=;r޵^WW҇1fs.\g-iRriy73?̇O=N<׋<]y:գ( O3L2c? QR0 ΐn0bw5<=? ePqr0m (4l#$hzx>b 6͎:C Hn>_.t.RY4‰yg** [Oꖳs)=DRC=gDǻ}*3QudoIo#,A5$޴@LM>5*˻
-"%twpVY~wtRVsus]>v)zm>5,!_o|-mk97So2$&;2 +T:'
- -nӮm{yQEzo
-Ţ4҆^?s=81+Ƹa;6`Ml4~!ӍU4~+ hG!4
-p+qv; EMwE^"BIԑPn՛5ս0\ .Uz. esSpl ݼ}Z%u5$9N'i_I;90K%KZ?:]M{{Nz;;LXx!¹V%$Dޥ>ˡTO<-||vǐt,i~GäӤ̫ư,4RwΌ"o% (׏KV
-zBk+ nkf<:zrK~ ^ Q6Qu~QQΆ$ rwh,O;vor͚K$87pa&i5GxxE^Νߟ>N˧4w c
-A@wD#Iek޼sRds'StGY{-,-JG(ELO-#Ou
-_C5nQpmƻV=`lh7A9P-x@'Jc
-h)CQ
-tݷ
-UF`>ZkXz(J^#-]
-RqT>C ^|h|wݛԐ-ϜTi&P^
-ug%J{szGz
- g'ϒwSO->+ '?7 ?/P~Vfh@\ sGwutU wmf& pYj ȧ3,щu80
-S (@r#+4MnئM&7ya_dX˭M?j\\鿨m' # @-+zlwY`(cl+OlWnlk5%mWqdm+<_mBo{CO"nWb`noB ;g^::~Euv<_FՑr5JrlϺ߭)nkWsdcIOdG8Ǔ#ʖTY 1\ٲQ4YlH}|Jgꮆ{@==gVzxT> )ʬg`"1ջ#' N].INH
-փ yJ/yJqA6$jBȬR/RL^9@;(%Β!ywg%)l jd8o 6ٳ5DBIw|} ϓJw™"ӣPlwae?ە6RV[ϕEŝ\&vmw_ v@%|v@A
-K[b$VXb$*$:r(hS_`("* $Vg$j=@[ؑ@{S1V= t!xgFC_{q|Y5`;$ سGpcjeYiY aܧ"7{v9@ÿ~F߶G;# ><iЃg7$ή07ziv2 av̇e=a{ME
- ǖ)v!csõf='7+,
+<< /Filter /FlateDecode /Length 4284 >>
+stream
+x]Kϯc|Xd_b
+s>}qĀn~sϿ|E[h (e9*wo*¦@pnǻۺTa5&Ҙԣ ~'/O?Bx
+R<7 (@??i<}Ř?
+V omT6ƕ;^Y\*rm@EIX\NA%ӢЁ"W* f
+5Ht›6X>p zTHa`u|w+UĹ_/i"IoNkI4
+d."8 ƕΥDm-k|[F%Q4Eh)CU KWFQŦ(ZҴ7EklQW!\Jףh
+
+uZx(A)h P
+#)*㼔r4 q!}M|2ل9KR54 \(ؓr e -
+GqTfe,_N^$lQEF)ʖbzMbZӢ^K(P/++3+|<kϳ*pM\*f5Sw#,Oy0Z宼}gl\ezJ2A?b0lH31_|.Oy,Y'_ʟNY ç~L'A#Qh%X:;>ʆ||*\\Ņ<Y4 (Tʀm<o~?QΪ[Ny'Wfnv ʣJKwVwO~ΪBwT>*gɎے&. qiӺ15[v4t
+ m>5,!|-nk)7S mɒRo]vd5RmhpuVvnگ9ekP,p*n+cb68a$,xLro(AZHf>zmb~mth8{]ۇZ!<C¿[ۇUS:2z8%MAX-%^W8g i9r$J,% I u\FN7DV.ihI|V!77%؀ϋ <%_9tRr6y]5G]ls9J۔%&Jc!h6ѻ_;0K,s?=a rgts& !
+
+`kkJYl Up^%J R 4q`/:wSRI\B=lVsٜm)9\z`>J6~8@@er<;4a1Z-ɊvR`o=K߫, tƑ2sʴpt̔huyy 0)Ӏzhhq}.)kBbe;oj/}N:J;Q{0pS{syo^H\_G gCg<Gp;Xx$Hw;r͚֋D87pB܃nw$ +h97n*zǝROi5>փБ-zm*S\V  '%?Qe熻:j/ F/JGE-%G>s0G|
+@Y [ϯ$6Ws*~h
+^MƠ\-*
+[+A-|C|厄 >`ҽa 0^oiu[DB6v;~ 4_NՑbs1J@3O~ٵɳ1GXJ#nhA :%VՙC+1݇D[7dB=i<0i]K{0H2-wШ@{)0Q!ĥui#EkWSw=`AЩ&GInIX`hIPד d;3+=34BٴV(WՋҫaU,#m9-jiIӌ&Vmȧ GEFTI!h^E@$J'q%Rreދ
+%GZhCKaMUrLU%ǝ\&v1)9~'9Jfq:f
endstream
endobj
1077 0 obj
@@ -3960,35 +3900,26 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1082 0 obj
-<< /Filter /FlateDecode /Length 4262 >>
-stream
-xɎ>_`,7a
-o $Н_/?~RRHi}{ZkMOk]*?Cow6~yGw>+>}a@SgO_gT| vQ´oRQ(jN$?7e/OYQ?魿OtE
-_/h0/}˓#J9ڻp\!s-Λ 1Syoz'躦뚾VcIAo2̛OCZAӷ
-&/-)E m
-$SΏp 9hzT:aMAZȺ&nS@^O' PNwou]e捸eTEp+#beDoOl2# r#V J,`(,S@)V+DPHAxI֖5gSdTOD8'lzXv?9ɽ8BN CoQIxBkT!Њ jpwx%atO3_ltϑ5{ƥƓTQᵾkv$[#n%h֩MNYeKkd~1)Mo2#/Ucč
-GV~k<x2j)-QVϹ7&dSW+ڝWEV2E
-L:)@϶3Y|k
-55N2Lߤ5$8{C@gbY(ܭu63g<wrv qJnV|E1W5Nxx+޳z$V
-USZ|XU5%R#TPxWbu?f<7+Ȟ$lV^B41pr ѠuʖKUn 97a1f1KƧ
-0B2.:u"Uo^U5BV!|.]Oc<
-[wa,:;!Il6PY78 if9IдlQL27<2&ʶ2f:
-K\C4moZdGY+',%{d]f"Dj5'n MrEZ$@Ar{fnR42X5IrY
-n=תu-ʼn 3yv0iӵ8^I-pSJ7O@0[eq5'гRK
-o1WP!Lw۸#(؄u*8mj0[yK XI^-MN/6cWu@eD^Z
-[(:d
-a!Bz dnܛ(= ^dc{0~f.U'A"9l~wT(/7x,5c5-l<wNZm3W(<;> ɏ
-G]~fazT- ;6@H"Ybߞ@bHha9{wjṙ 0'7 8B}pկ&c  7
-Pړ vJ[Kqmq!v3m.ݮ
-tݽN
-+~j#] UĀauV2ȕr6Í5~`+C,ݰ<v޶ݹǟM/w~Kd|W+2n0"Jq
-NWo큈<
-IAp"2GSZ \  *U1 J'm&Y']7Hp޸hIx40kdP|)^,$jwRO Rc]Jc<᠞q׼/TuH$sxA`ډ@
-31¹c/۵p*nKdYZPOXh߅s|YdrЬF}SDCr_4QQ3Xk_C<
-ͩysS}Պ2@x|(T8{ŏL3H^ Wgp4z=fl%v|8:hnqJ>o`g<CCv+ +S@!d -:< :k
- xCtU3%p'_ NkS-·較y"Gb
-<5TڒBwA9&ʼny[ak"򘠝%mdВ\!5ߐ5ɹ͐| L't|jϺ!\E9r|}PO;"^`9LZk6RBtbu۪4/姻'/
-l3[%oD,) rx@*6FaZLAVc?+p>4Vm
+<< /Filter /FlateDecode /Length 4279 >>
+stream
+xˎ>_`,_bώ)
+`ezNol
+/M^(c[nkS֋Hr tšD!&?uM ܦ6 
+hc+RhO.2a!q˨
+4dR ˔TJ756=_`kY,2m'coyDt!Y#Av,QPKYQ4=S%6KY1%s%Y@²GqȼҪILkxmY0+ErlCPW$88lUytuqZMX e܁t[,A-ذ/
+
+ܐ(%emOr!!OR  u?HTO,y$}0@Y'v&o `5LNWfeۈMA:a~
+
+sم\B5o93 Gڮeܝ9_2cI y7_Rx?(yHNW+M0Rx B_5륢OU}. #AYN H6D絺/놧+;KǬ ߺ+Ao$ǜB1`Tm[Z$1--&yq5GϳV͍Qe;/@n2x=x`$㔀9aܺ;r+JaIb"l9@(#!4$,(J.aV1TH` !RfB99t
+,,{Zb[zeXɕEC+ ̯^*5v,a3a1fm1KƧ
+9=@~4ha
+sezv`V}c .I@`
+Ey$
+in xGbmax|sY36]stu&<zՍɳ34QA , YO[yxȴ@[VD4@*\ -,GqKT-<7UF^:
+31¹c/۵p*nKdYZPOXh߅s|YdrЬF}SECr_4QQ3Xk_C<
+켗^xSͫoe{P?2^&qx5\-R,"Ϙk
+m<u
+X$6+>շw>v:y'
endstream
endobj
1081 0 obj
@@ -4007,22 +3938,18 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1086 0 obj
-<< /Filter /FlateDecode /Length 2521 >>
-stream
-x\96W(\K~^_NGITKz(JTtTb)_;}ITv!5|~k)铔꽔+|~y~GD?sUw0~>Y*OcS;ҕ8g?}~|1?~&D^ 8W4aƎe f"̅~ Ꙩނ۸]w?}~j6ɉ}ӗx  I?/O1t3 HxYx& H%& i) wq1HxxwɌ6q /Ɍx_4 pqWM.!3'"Yx
-92hz5g?a.¤pWT7֨ڌW- zh鄕2hxIhcJ91ZٝrF8(gF~9[OpcdR2mDG޹ HkaD!QNiĈJ
-خe#ݵe
-%dC]>XϦ('qD*VŊx??M $ye*meG}_(˩cںʀ{ھ\T,EsK
-+6 S0H,?
-7,ҽ@);[%1Jѫ6GY ^ .m9;ik'K;qI(=NCρWɎ p~iXHX \£U28"o]0Q㈬La<"3RkʈJFȒJp dnbJ -#"<ht,Æ⨭T VdH$j
-?OG~)djxP=Jmʙ;a(%iRE ѳ0dyj%,j7jG~}7)E%7-q1!-9_hTLME"3˶FnPUݺj߁UW_s`WkDLגhh艋V9"zaQr+L\58&8Ґ6@ ۜDy=. 6Z,{,'خ]rlTaѪָMPDn/1R[zȥ@#Jȑa`壆÷]?Tpőxz
-Om,tE yA=0
-͒Wȕ^\97t]%Ȱ\NhZ8TN+t 2$G Y s%%XT@XLK$U P" HSXRa%Fi!SӦBQYT/ӆ
-V;(5%s lN#*MF$tK7Y&]s2%ɆK0ש+PC{CC `4olԊS੝yb6g`mn2-
-&R KBUMtqpXIڜXlUQz5mBZ4TcUNרP Ɇg5jMj}@
-;Flv<d0#C\Z,lXI7 ~0퉙Wt>THSܣIw"/ҪBgi4Pw]=$Jvh$=-B az2::4=yݷ'u񮞜˺0JQ.}K" ȻAnqZxdr r8J^rT8@{aiG ts:{ G4X0ذ
-ddy9/d9Z2BA5 J<qѵ(]Ix\.TZ5-f߃3ugxTw)be]4x
-(8s؝=LbQT4
+<< /Filter /FlateDecode /Length 2532 >>
+stream
+x\IoW9<*n@` oqen9%;d.(춥jW~t_buUt ݙk|J|~W֖v KOxg`4-gt?MO|WXpȃq>$JX)㥔WhQƮF/G1tc?RsMwҭ\_>w1U4緧t],++1+]^B\I*X̂YFye(TXK{#3WfT@e&3FP
+ Ƿ ʋ=rNUS5!pg{9^cɿ| ~R@(
+)iSc G^*Ө?#l <ǂ4 {
+ڗ-b=5ҥnyHj䔤PZjF*4y
+bQ
+Xsw$dj5o#;jFS\Sڹߦ`6Z4'U:]Nk=j( bN^L+69GdjFj/& IŖہ`ڙ?v I)cfpv @sz=K9{6Spo'|
+Ok
+%?jEӷ
+.4|+xgIl{Y%υ(F]pw ꂧ((K~Pv|{5gGTBb8'Szu=Ҷq_~{jYVz zeQ
+><iZV*?!%
endstream
endobj
1085 0 obj
@@ -4035,19 +3962,19 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1090 0 obj
-<< /Filter /FlateDecode /Length 2580 >>
+<< /Filter /FlateDecode /Length 2578 >>
stream
xZˎWed_@km83Jl'@fl)t3%QdaQM޾w7ZmӯOț9)7
rn)"'k}}s`c~WAڏ r\z"ΡKt3]^!6>)zK,$[K\~Urŋƫ^T#VTߪurLժ*JנͶ֧Koҿ"?/W䇜z2+䌐WRr{K gEJ4(Aahrzvg7AJFЎfDB5Ñ
xq抹b"_><[9ᔿv
-Ժ+V£>Q - ׽s0K@0Kplg3'֐+aUi|\;eOG#epjHCQ㮬AXuidcs(QN8{)a EKT(> Rcm+RdR+XJ<KljZ`(\+[mN REBMRy\.Mxq\,QC=ɫ17?^Ng~zD#U N;;tA XCo#JPQc< O K8UwrE |S3Q^(]f+e
-WY.w w6 cy(U~>/ŞyO}#lRiRz?
-toJ=]كxP?@̽˾يX.ޮfh4z<;ēwjNIs[{;Li0mfIʉoPM$! 0_An,RO^xAhqECYV?PNR^8gSN3 +>qaΘJ>CP^40{θ.wk7ߑ٘rJw;g2Ú,G!rb(/t<m[|uUdz] 28U{=W1c;9uj@eU({IL| eX0 08Σp7z2
-wP>;CvFBS/ '8m#|VG 2DB^#$tCJDؽG {<CHngZ\<mA8
- G3#!CB4+$䱏 !%$DBBc,Lj+ɦHx qN.HX=DB4{$\Q…CL0aHx޺UKnCKݧJw敷"WV0h?yGI;Ra^R|QqovQ[]:za{#T ntPWk?Tz7t
-Up^uE
- 0X#bӺ1M ᢿw%O wVÀP ..Õ(-9G1/5P+!=m?ʐuAUWRS
-5PQtE̿BK"h G{rLs^Dj;۰-b8u[o_#BYIW9}4ē6amUئ/-;y
+Ժ+V£>Q - ׽s0K@0Kplg3'֐+aUi|\;eOG#epjHCQ㮬AXuidcs(QN8{)a EKT(> Rcm+RdR+XJ<KljZ`(\+[mN REBMRy\.Mxq\,QC=ɫ3/9U|&w'xA|8ύ\`#C b56l y:$S|'!|;^٫}g155iY&
+P@ uE%K4!A_ZxOiu#]݂Pg8VJUfsd.|*Tq;әe(]Wchdi|K+<#.G0dzZͻtJfn6'),iD
+N{BQ{T:S"_d]}V6wFǂwave4GX &xSsO+$aJi ^F?5KRN}ǯo" A>Oh$4]
+rHdɗzB+,z͊rd?䐨@rtdXix [wU
+,/XM&$V-w}w;]ƬSر8ĔLWd9JyclGxi;3E'hw&[w֫ }?Xj빊ہ̩S;D5*EsObetG`(
+3?x
+<| dH>alv:} %c\!!ߥ3U =HhܫBBv;3Ji aX6WHfv> Y!!} '.!!;$d9F$D_L6MDBĻHvuA%#*.`G“&P֭ZvZ}_w >/S{0Eҵ:yEuGa;i6vǾ՝Bj7|VtSY/:*<N?x?ʘzKGY/zoDW Α[{Jzjq\\#jqWثI'C5X7k\pdwP̵Bg,7#FfΎ,Kq%L+c-ڷ6=R۽Rw>tnb72 /}'Cp^+Tg/Zf p`wUlZ7;\D)Aj\tP*?%%|2vY/0j%/_.TJJ
+"VTC*6ӾHWhi\ hOi띈T-1}a]~Egn|kxxVWH6˚?*w_=&;?šx&"/|;}
endstream
endobj
1089 0 obj
@@ -4069,18 +3996,28 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F59 833 0 R /F42 792 0 R /F50 687 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1095 0 obj
-<< /Filter /FlateDecode /Length 3209 >>
+<< /Filter /FlateDecode /Length 3250 >>
stream
-xˎ#>_04Y$$0ʬgoOIK~?U|4H0+d_$k'y+OA4O=(z!O'烐@o>~~~RRZJ[֚FX??:8z;<p7-մ}ӏ_Btq^ I3[,efYe1n;8SfnfϿҋߏ')tġOja:ORX!J9ڻp@,<)5 I&˖9r2Iݼsp
-1$qC,CTg
-vD
-x/i:8g_ x~4
-^MZN R?)Eh=Mn8edW
-d2 B
-X&TD)@Z?QEט=-GL7j=i|@ cՈ~j(m1?L[ާ,4Dh_,|nNDn~xS*JVQWq@i?2,q|;:Mlu ;
-{-݆jmg7
-<4#6WlmB
-h~ =rC5]23
+xn$ |+ pG|37ۧ$Nd%Ej MwW|F<$O;b)`ӗ'urRxkO!|= % %~R4([="{CGw~9gΔ*jZ<GF/! 1N "`pZVy2KBk7B9Δ۟{_YzI
+ 8IF#}wXDw,cdlPO2D3YJY]?sp
+mIXCTg
+'6U8^ >f T7&*7
+VI'q=BY$O{F#* 4{DFCZE1C
+7yft(gK:&k$%"+sX[?e
+iDsѩꙧщ%cZQKds`5C OArä٢BA]h
+O
+G2eMHtZc-3B^SJ ^hvݣY%Q#P[WzX-'6Ӗ) Qbk)#-ԮJUvU\(3PYڶ;K$?}/r
+11
+MN|-7#hT-.ΐ Hn?cꜭ' MrdQJ~RrwmΒ>n-Sj P
+uP
+<_ڒ$P {HNK+T.)Yx]cnZH
+-; Pigjg7 .9_S`]B¤x&UeRwuYEwhJiP]*T35<T~ʹӸU΀fe}ބl{ZKJ:4%/X(PH1mY=Ccܢ1/%)X _ (;ӥ./ ?J:Ǫd<(GG;8<^NZ dT6:*VWյٰcy_OFl&Fbʀ%*C,_S݂YlHd C} 3~^=g<LItb z7l5Wa* CO% {PTTw|P
+];Z*/tϨ*־EtGrrq~}QI[7o. W6WKvLw 澘Z^1d-Q1gwIB^\/G L,! bԖ`έId=[Q-M'qS[)pL
+p)pw8Qg
+s[\x/1c6ޘ](1dTvUy roAzJ谞U[$Ul;dq>F4\|r<e$vsSݸ;NC
+jSVgz[H6w3SX@P+~` 6r[GX*ep9
+#p&}(C+sdhW>IB^?RiHbIL;h-
+Lyt[##s@O3hn@bZͼU` {6xu+AV YOS8^awwȿZ+ZNnαF}}hݜmh5{:fo4*GAcb)ZE>(+
endstream
endobj
1094 0 obj
@@ -4099,19 +4036,27 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F36 775 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1099 0 obj
-<< /Filter /FlateDecode /Length 3651 >>
-stream
-xˎu?_e,y`L&S wd6mfl=dIxf1,"O:ӟ^>Sէ<)AI=9ORwRRW) Ji=}W/Hw{N2}x~p<ѯV_:l^~#
-3
-z-&aqO}Ǜ
-͌ 84ϡ3^LSNzi-<~#4õfs[ԄcclB6mCC6M Pjls|+TCVov٬Trɦ541;d5m(uIc8zkp
-do{d KF`rl:v}'蛌7#[Kx발jmBG_sP4>t"vL%iˊiL8$E
-F9r3542Y&x<"E l.>CE kO>nA)W>`n)C_[0_7ûo{w0n\<9m6>Rlgͤ:]Jm)C 碋!݋yR+un_MI/9 pߥnq f6ECy w~._IJ i~]HQAJ JnVjs"~ߐP!*C((U''I %Z%rVhFH)lͷզґ@xjC̝mmu(:mx!_$j ź<zdxn꭪xO1eqٷʺjT6
-hɅXE ϖ|rFG(P[7\*z9a8 kUmB]姠3O#51~=/g X5\ZxFx{xh!67 djg$wgǁWSE;BQh;S+!GHcȸs  !k0éޠOpFIӴ[nTɪr߳+ԌScTxG1:Xi`s8;u9K>Lq9A~F'-=
-mṇʓ
-RU_
-QcMNk<Q/VnsuX長L\809>'%KqSK1-Ci_0pQჿ'
-e`'PrCYYX91F%j<jw-]7Sꐏݤ~baB*UXi=:GYNpӬ$oaQ5Vˁ-~H=mdnڹTyV~@>OX$jD\ ov>FA5-uO}QݲTEޗ\zFˁXV! n|]*tOY=*)ϱ4"ieGiG{ݡNZ3Nv Hs?hxE
+<< /Filter /FlateDecode /Length 3655 >>
+stream
+xnuﯘe,ya ٵ i4f9|HJ#3[#<$O~zw#OA V yR''|N?=K I?H^4(_ "as9G߃e;? ^ÙvCZ꼲y _0Cv/;Q+zO)QZh]|Rfj3'=ߞ~x?/IF#ߞ$tR? i<~&eǚpSwDlȼ{m0 `iVhkLPH[jz)B$$]Ξ$G?t'+Co =/ІNX0^@{T֯[Ha؁B:hUx7cǏ,JIpeu*9? Qr^[YքWt/l6u ,[%9ZUH5#
+$$Ȟj?ТPϞfIGp̮;wIݭ:R<=
+RcN+T6H0yo7!
+Ʊ%tJ5fW6tE]NNiQmw.RUvlˈ!~gڧV@-Ěa811Мw f
+z-&aqO}Ǜ
+ku-)W|Hڇ;C5PL1|Ox<eUZkO{Yp [WVX9Cz|Dvq"Ğۮ1 Ji߈ڭ&=lQ
+)mU)@"˥6í
+O.P.ųuؓ 7g뜷#}o2(lM".%Urɶ
+͉BҤ\Ӎ2I-+3pFF)`+΀Иd<rxbgC_  4\.p?fp ^ynpq^ }m|Wᄀۇn r#Ha4v+v6/.t/IQM|5J#;'4+fҺJ[y20xQ Qwfs`~'*pv#Eu'(Anc'(Y ͉H E2z2Ruqr.x@Xr0ZQ"|O+1yhVjd2vN|[m<) F;~V8"Xs݆rI<≮JˣGfGު*Sp}+QYWF902khْO9ݣ_Qb F Y\#>L'cBAzP t {~&Ưl;9^ o3x-Q#&&LWDL8UuhG(J5BYbgJw1dZ
+XJ/[~p8-8k*̅}m6bknF$cz0F
+D\nXJM;d`i)m
+iPzrnFjN/ƢDՊwHתݱ
+ -}hAtQ
+4
+.ڂf^H @}2>g^yϙ7 nuf4HZ)MIdHUcFK1@<myMЙx>f_/i ^j*kq {W
+ۥM;y|əvύ
+TD~ӒF/]ǻu*DdyQJ%cn`P -7ڞKcT]b&j|zRu35MZ/v*-R5%--cs7
+OɑU8{~oUXⷌ3Fv.KnT<}LcE"O PFĵfnkD 8T#ڂQQ-KU}1ʥmtoR
+&Uizx2Mԑգ<\nK#PvFyԼ*H\!Uw X@CAG'Sd
endstream
endobj
1098 0 obj
@@ -4124,21 +4069,22 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1103 0 obj
-<< /Filter /FlateDecode /Length 3734 >>
+<< /Filter /FlateDecode /Length 3738 >>
stream
xܸ1߯
tY*tl+;_dlW_w7@
-/zXzE)ޅϓߒ BY?XOe//UvM5IL|E9!
+/zXzE)ޅϓߒ BY?X2T; D]~$iME$<>3_QN@J
+?ÖҴHgq؏ %+'1QIsF$٧
`2Bg3 y4I^<d[ GyA#2艙ři,>w (~o8y/kzBc eH|m':-_%ORr?ꨳBξ6ğ ̄}nf#4eŊ<FNǐd(x9)E:Y95Q_=oCѠ9μAeVJp;LUʒ#1dal)ɮ̚l"j/=Br']>Os(ȥ )]XHe_XhЅղ /&߀I7_'EV\;=<m"$
%6|YoDz2Q~>2cJIY xdT
-80{r7@IG(8,49U#p4}=s /rŤقn.BIQ\R9)w{ F()9jFH.k֊{QPS@m
-{5}`›%8RA' ĽғQ(zil9VXAx@GlvW8t@90ֵda(ZR N!nE’ʝ[% fp\ &(_$sҝ/KʞmG쾠D~OJ P-#"{U.ŰRH\\•77U9=B4q;1;GZ6K+NzCo@5(dzrXZ-(bh/EiHjTcȲ{ɦe=IF.[əq܄SQ9Zz:~7u_E\+PxҪ2ƾ@Q[u+oa׈+/U<a|CZ몳]֧GY~o4 RN$RIUS^X65>k> L T}yHNAu|bbMI%_Vh=V5ܯl\>/y]a*C }6j(x:KG*b<ϔz\s|G-v5WY2󔸇;UʚOuN+e?<!ު" sD?oY&&S6FxˢBOR ~昱n OAl^^6\{Pz&]nVStbQme<s<BJ%򠶔`=˃?]2Ї؊:5[l{^·07;_.wd,YNoL
-mziz3'%A':k
-`ۙPژ=MxﴡYȔ2
-I{Ĕ5uŒ).ٜIrxK
-1)iؤG( W+ 0qBy "3>ϧz3]ǣ.tArPX%)IfդtwkENyj۞QR_SweܺD짚yA1rE8qܹg+JWk/٨7-$2#qWҵĹHHs8bЮjC5KMA}[z#^?yC5(5UK;|\ik p|ҴIU\ķ$ոcSx9Ԓw6|NXvOWh
-rm]NO_ /f@Ob#tjU <y\n7agC tǏQTk==fLFV/Z17,=;6iiq-o3~եE#j̹q d*F7qfg}eڰAKm!o+hpAtנMCp]<1sc+k:}m}
-{_^]KW"5TCD7EAP߉
+80{r7@IG(8,49U#p4}=s /rŤقn.BIQ\R9)w{ F()9jFH.k֊{QPS@m
+^(4H @\+,ŠnpH Lqj
++w: pGAZXZ@u - QW@7XaI-ȅTTZ8[.|Ht^/
+t9MΗ%eO#dv_P"'cz뽪@nbX)S H.~.JHЪKRЊØ#L
+AqLs4NlңrZ{a8FC}tbvAЇ\P=ә.hQtv N
+YL:Ǡa9Jl,T$PKjReVΉ`Lݵ"<EmO(Z)2n]"DSͼW9H"s
+
+83+~mgVjlԛHBZ8e+Zi$$9@[1hJȥ߿-y\ꚪΝ}>IiGu>i ֏]ݤ*H.n[j^TyԱQ)<ZN[j;x>x,;ԧ~n+j@ 9ap*u˃vY}`7#:y'<WwZ7rPonInYiK66Fo.w􉆏Z3 çK[1LU__:JswmT{ތ<Џ03(d h`ε^Ӟ}B}3j#|ad@ 87bҢBeo2C83ɳ2mhl׌Fh4_ tkЦߡ.PP1Vޕ5>綾tr:a>O h.#s3؃Ytg]iٽ/k+ ! qޛ TD
endstream
endobj
1102 0 obj
@@ -4154,28 +4100,25 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1107 0 obj
-<< /Filter /FlateDecode /Length 4642 >>
-stream
-x]KcrXd ,p{<|'*D-z̴$֓R"./oF\o$^yqb^PxOBoW! a=-
-HJI;O|~/p_E?}1Hw;h|cG66a/6ɶ1 dwl R5TrR_>2Tfjѓ"78=Ńk4]&хIPcIKS=&dd)#ɠU}YwDDo2γpRN)Ԣs5!r/VHzðS'^ş!]CA h D8 .OVFLCg>X3)ozL$<Lڌ>I%C_
-0@; uƎ lPK"()ߥ(c8zehNI7q)6s;)i9VLbg?e<7kwW1u!ep5 rD&:5-N5N\suZVt
-{&6`Cۇwǭ:Rʒ`o逐bje'cbtgq٘hmb
-8W8*Zeևn%pP+ڡZ*ϑVjA3h ^.Xst)ag8 %.p:)F*| %s騯Mp7B\@gX}IqPt6"Z(hK>7p#Q+8F4f(UN&,7U0) *G¦F
-+uVa+^ߋW+E)b!
-&JQ ݻ 'eܮ){<";9B)0I:(G>ÉAO|w:1ЭW]yƤWQ;N,q+"૧J}m:pf`B>R(7O'.x* )
-1ЅB(SPۉ3A6:Il6P({垣h<'T3%%@L͹\b)Bu I.|΄h@6n[bp'l~cA@w0`֎['Pq侖-ʏֲX[̆s^u^1[ɰ%+fy@E3GZh4KGto^}^qE%o
-$1{)X-6LK3ɞLa5ѡ&45t?g4/Zndsv_~@ŽH 7R|k4F {.޳P
- azXT9P0 ƻqFz KjP܆%4$CN*-\Ja|GգOX2֊C^lFt,߆7;X*߀VdEzӄV7
-3
-~NX7/XSL奒y6KϯW/童;f\n1Yf2E^
-cj\U ~] E~]aUwz.rkuu
-;`д}x mO7ѳZX5_]cF=<fݵkw[kѵ+Q*83u׮4č]ͮ]Fm`ԋjbKQ(6o c}a[δ&AN-8PbKh%1k| <^PǸhm㊑u\!Ѝs+G Y uG!`hv8VNx
-'/ɏP2 L^/K9;͜zOؤvl"V`ME_|bgC?{<W
-w$5nulF>cS:6xcSXǦtlt]+cӹyFǦrx~;6UOܱig۱73rǦs-wlzMOԱmcSulzM*gwlRvl1ntA[)ɵ-Ӽ|h7)JЩŶMG伫?ӫju%nGm~43AO WouS`֭׷o-{'ƷKfWC=NF6
-1Rg5 N&4`|E&kD;3)ι*'U j=ܮx=
-ꄴZI^7αdѺgl"i!g!flb'@!'~TYRLneU(-ULThkk!jPTکnR9Œ.М?HjPBd
-_ד|ڽn|Z}Y]Ӕ.s A-w~I(„~*p>BWD{K9r
-`p#vjr~V_ 7fO%P5kfប
+<< /Filter /FlateDecode /Length 4647 >>
+stream
+x]KcrXd ,x<|7ç$Nć*D-l϶$֓R".?|xw#.a
+VY}E^$^'!ԷBBW! a=_/
+s|^W~31k?x?þŰ0y53L9YY19w#4ԓ֮~
+HJIߝ~o~/~ /E?~1HpI4)X#0Ik,iLοٝ,*T8j .qן $ѓ"78=Ńk4]&]хIPcIKS=&dd)#ɠU}YwDDo2γpRN)Ԣs5!r/VHvŰ['^Ot`~! pRe@ZD|@'TKKߢtI@W١[|W܃K=Lg&bX&mFŤ/I[1R &11$t& `R% & `RI虘4X.`ҸL* %$Hh֢9
+1܎n@Z3YEOOiZD]ULF`Y:j|M41ѩqnoprͦS%ל'm֪!-e:@jqM%|(m{@RTbJʀټønhf0 Z^9X 7,;NO: lnWwܿ6*_ kɗ'qX!
+=JPs ,C$//oLzKf)e-`=0h;Q׈FCVޭG ÝGEqf$؛g: uɘY,7'a6&z_^WS{E+D\-vòAC78JEHJ-N+f,9Ӕ3JwWV8#>wBƒ9`tԯMp7B\@gX}IqPt6"Z(hK>7p#Q+8F4f(UN&,7U0) *G¦F
++uVa+^ߋW+E)b!
+"sZFGt*Kb2VvXZ1JLQd&T
+am-5*<>E7TU+޽=)eeU{*ݐi\@;'–jҭQLkZ;°O2tvLE3 @ŮASHrfp||\+E?h sq-Q/8^mK"^|A9tL8 mk-cipת*l1 ;kv0*hkGlc$>pgn>,nꖸ~GWh2lJDP (qQFs|Haot ;@a36*6rrwB[41g
+0buVh2-${ޙ7jC-L̢:h.Yk6_Wfi_Yٛ%]wwyn h Ε0t5\gST[LSys awP*x_Sn) /KiH:T!Z8e8!ޕ:Gtea(W0 }-_qtT Fl|GjtcEtJ[nq-M"iBICR
+,c+)5s4&|I œjd7CKN8Y)9aBܼhK~Y^58nE:R;|Zc׍s?&ˬBd&kyB
+ǺxՊPFUCūnGū".^ --0ŋūӺxqN]@U<C W{6ŀ_1K@NDiWMū :ū&.^ .^PtU.^ .^wbh,wjXAl{ržYN^\{*ɡ;]^^յimcֽ{+3SJC\啮^evF6.vd8[ۗ!ݼ\ku5 rhijMcuo_Bȏ/AYk/ kZ˜<5(EkW7nd(^9dZ APhv8VNx
+~R}}4_['MZ?|bgC?{<V
+csWpةxGUװ' EP0"_Y"rBۥi+,պ j=\ 0O !I^Shݓ7z \Yz[0P _U,. 'f|6S[o&8"'K'97>=
+ :vj+ fbI"hNp E.^L6Y;a#$ }n7b1ARxQOR&~8ڡF Rږ5׍Dڬw3>m?p$5M2rrA? <]pON)(FZUD{K9r
+`p#vjr~Z`Ar)yNK
+MƐ5 $j
endstream
endobj
1106 0 obj
@@ -4185,32 +4128,34 @@ endobj
<< /D [ 1106 0 R /XYZ 69.866 801.979 null ] >>
endobj
382 0 obj
-<< /D [ 1106 0 R /XYZ 70.866 273.255 null ] >>
+<< /D [ 1106 0 R /XYZ 70.866 273.235 null ] >>
endobj
1105 0 obj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1111 0 obj
-<< /Filter /FlateDecode /Length 3581 >>
-stream
-x]KܶW19RmVMoqtsĊC|O7Ap&g̀a53$~
-];CE텰6*e{r㤏^YiSF\|S6[<>>><oZnNB?Cqdc-'-OIl>z>!` o<$q49 yp-u~sN'
-̕6sȥ\W zؘF!M=>'U(_$Ӎ;^匵(x[8_0n9(`kNE!WOaã_} P+qz#I<hn}m23i`V!ll2 qA/뵉c0u$rYM .O3WqEbmSeߤku@C4'nqڦ'(Z0Gam7A_b: 
-KݭD߆Z`.<s+)tXz]L\N9J#_,"S4'RgD, RGiYpOnK%a4A
-mmm+\>Klz3gSR4\d?Tɿ+VW~rì"1rx.q»uܕwDEwQw4t$ݑhRonU>js,0J]JL$ؚl)Y{7NSvqq}굔vK]2('YRs+¨^
-n
-Yw>8(9<-Bp.!UR9茶D%()؈5J@U+iȓZa#!3$ #L"Q]@ /H%?J`rݮT
-H/ bPړF*9CѫT9م:4ӬXl
-ζ?Ú>Q΢Uք7[%~e,qӰr>ޑ4';G. 6 (tuj$bXS7Î 둺'gCNfN]
-]֡^K2ʔm;DrHɡCS򻠽 UOyU0=*A+(mkQ`P$˧o<^).2SLj
- :יi7v]3gfbʯښ2xeNi|td`*qX&x\ $.8#-Wd4<90k[zm&DHB$
-"wQAb`&^VG~"ސrǍ2[Tw|XoX{RR "Y^ػ)vܻ!ݘ{xmF~@ }SEif[˥Z)fMCh* -Π+AWJ8o:tFСʙU<Q>
-$٩^z7 ![R
-AbKP4!EPC[pGLl>aN8,x;A*e3&w4HguN tIcD9yŠKdB
-xS
-yDvw%Dڵ$aAb%6+L>%ѝAOLM+xʢis5W{!r;6 Ze6X=)䉛X6%7nZz5?SEe5o˳Xf4*='gjΏbFThT3[M6 C X r4iZf *w`P y&~x!6,G;.Gېr=o[&[&Z}#Ѥ,0~Kn7$tǷ"UVKv9+]sﭣ:w@>` 8i`8(
-xѨI^{mX+X\X+g sy5O Χ V*SKFtI_0]K+p|c0Ve'
-*i_`Z.t mPQ`Zi֦`kS0=kS0}M lS0~s0=m%^>7hI"x=<sGLc$K
+<< /Filter /FlateDecode /Length 3600 >>
+stream
+x]KܶW19RmVMoqtsĊC|O7 pV:Iݍ$O{F>}NN
+o $Н_>H TRzקHO|?w}H}Ls-Δݵ*ݱjzyO̰b0Xs "izͭjeZv2k5x>;qguYmXs;
+G_s6lTnKS4CMS:cub1@pVxFB!LlBׄEqC'z9_U< jKzus fdLO{Y9H~BX(CP5e*!
++Ւ5!Bj= `vy0S{}@(}z'P^>c+toq;^k1Y k7liM"]^z\'b5;.@@jeSsC,ŪD:HL/1(rnQu3]a;2;JWNםpo{.JlKQ.{
+-7~JP.=y/[iE+-4֣I_21OjO ">r>!72IGM;Ҕ_E~Db:y--:@=j 3#VR¤iރ>{_~XQeA" ;K7).t7_刵(V
+) Q[sƳ/ҍO O~&
+? P
+ʼn8=$[_.ٱW }:u5̌f }͆!
+W %V\Z+0 9Ьt؈v]L\N9J][VsFTsSGmCQ<V, RCaZpOnK%a C
+h^KQ[87P
+4rG['WtdSߵd# 5 ݦO8,x,}%?ഫyL 8!(٘~y< {teVxM%cU. 뜊&
+$qQJ]*_uD\19y`]-tJwD.R}.SZ`)
+Z5rt[t=:s+y-b 7M2[QWx׸lɫRZi
+Fj/<  ㄱo
+HdV)#7S}J=e` P/hBRl`jv*(`X3*!
+zbT]5+^Y\Х.QVX44Jӣ&k5\*Nd]tB?ܭM'4[kb<3g@:f``ʤ>.hx\cyjy-qBZNԈ<6͈=Ob$l(ږ۾I10tuՑ7#'HS^xn_Rֿfڊʹ2[̻xm3mofڪi~sղV]pGG{VDn̦g{<߶߳GeաQ檼]5ڙ믽*J:O9hTv`=
+ۡV;<5aN osab%[Cbtv!g%Ɂkr;la-J+L'v1x>DD,xl;!Vd(gDT ҦC:-SHXIlSoՅ&$G9FJ{m(ٚ[UgpO})d5Ɂ,o=j.-:RޢUG:oՑ 3J Z1aZDwxJfRӄ)/(f1W]D5 f}8Ov Z%ڭX=A䉛hZbU+/nZ5?SEK
+F_Ֆ7Y/4*;$-M2aWL(3# @XN'J=B`qV`R:kiwtTrb]y?K6dtmۖ-]Z}#KjY[Pf_Wmߐ`Q/{vKͯm:j鐳kΑr
+;ZG 6wdA:
+UgtPudA0qoMy>y WGx{i^>䕃tjc E^>^=.)k Fyo^vjϼxيF/;VG6hG{.\L^vjm^ y˾9&/ۅV#`/{(򊗽Nd@*fo&HVÁxCb^ؠZiĚd?-
endstream
endobj
1110 0 obj
@@ -4231,18 +4176,20 @@ stream
xI$>&ApմJٞC':Xnɬҡ2
l;iV c<6 K »< VR:,32sC3t)_b^kOR@f0 SD`qAC>!/BG|¥QHG*8dT|Vΰ(OW)=>C|ʻf|"Œ3¹a_ c
:"aV}imWׇ5~3^Ka0{ a3Š$3 T Q#N,NزpqںP^lD:Ɋ"SEqP"8͂ST4`9/*J>bw՗s=zuXĂ:"izN\I   P9kFE&: 0s0$*4tO #pM03[#DrR_*,0bғlXQ忘$k\62
-EAHO` )!A']ald ֪,)ڶ7
--6Ҫj{ayz1OG݁u@cW8(\SN埴Fe<k=yuD!`5bM?6)LAzsDαp'=vmW7rtY&h^{
-($|  `ı.8^8G ?Oغ dʝ:vz@3=}Gyݔ~cxS-<,Qg~S_Ì
-[Wli9}:,_[[{:H?*GLCLF$=)+;}
-rrq;"ٌ4g|n_̄<xg=7i)}縠P|W~rWCJS$Z[( pa_s B~D
-wrSKE!@EKcJqE퉉H]w
-\]9|LͽXFpchV<vTϟ߶O^nqmۭIf@r,*fm;yV#gwŴ)@~;"UɌ7=+9a|>L 3#ۼM11J*I܂X[h$ 9Q|{
-!q7М1hSx(IC4<dȘ%Ɣ6ܚbS{G휙@5&_ΛM n&ENmSG&we
-mFạ
-j yjM 
-[jmp|E#E8 (g<=PĖ_xI>KŒ>Zʛ qϑtH=u9_?_qϻyBc2c<'kʯ&(G47)_z+8)P
-G`}WNr6(;?5q[6wʛyZ~7O@(xyCK?`9dN^CPwR.CytC2j^ߍ}G5HGK>sr֐m.;6%Z.q)Jo}:ɖ~ &
+EAHO` )!A']ald ֪,)ڶVU+  yd8+dFjЇju*5*9]뱴`#b iGlOa
+
+[%p8K陖YՍ<-4'}d r^"
+4w@Q/'H/ 
+0}(
+3}9."啟Ր( \rF\$#QRQ%PQbXvqGRrEQ{b~14Rl1CWzxs/>Q\Ͼ];W[ovE@G(yһ0 |hNUHٝp1lJ"0`!b?HU2MJEO%!H6o@)aSpm`d;-e#ICfN.+
+Tnj+Ls%Ħ]T;3O'Gxckn9}W/mOes8ekX=PUՔV
+5],§/cwԖrjI,|Vml2{ ^\}~*
+s#dȊj_o.2ߛF$LEYfgoYZ{Oiaf{ $Րk " ˕!#`Prʐda07#i9{@.|~!60nwnx.$}.(3P͈rLv&QG|n(iZJLߩi|\NjH_Nݢ}d6U=h~<#M9(g]j/=2B<)wʝrg[fQԡO- k%{9ήyDogkK|*#h'nFQeXVԎW
++31&d=:78hҮ֫w-_I;[R=m>7"S<l7e|
+P>S,n^;>
+UEN
+i3`W/RڈQJYC4 l WOTONpgI s/İ1k~֘5?{L5/E\jnQhm A15Uf|1;𯱾Qaؿ̼aƅا}`9nCj-`OnET"Klau[WXUܼ g%OMV q8r}lC=7
+^m"~ӸWTP E@ŽiWwcߑn e=ґRA윪5dpKwM KaA\[mc凯d
endstream
endobj
1114 0 obj
@@ -4261,19 +4208,27 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F66 1117 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1120 0 obj
-<< /Filter /FlateDecode /Length 3484 >>
+<< /Filter /FlateDecode /Length 3483 >>
stream
xn$񮯘}XxV
O}BIxҫQ鈝2H&"sMI֚FM6^ӫ/ ;
,!kDei2Q⺄ټ]I81DJYd"𹜟WقZA2aV[#1IYW`Ȳ
}LfVU$ڦjH)
c":<i)dɰ`gbmm,*EZkҺ.WfFүʊ0{GQ+|ivV1qG=I XiЙ, /s3n}kyBӞ%zpGZ݊+<Y?=;_<NA E9qOPτO{{vրnͼJ~wu>ӓ>|}\§N*;>!τG i=s֑>3:3C 5d@Y''h
-]gJ9~A.}|.|*$F:|nFjĿ +Pko*F()2}tguKD_)ip?HHmB\ K._Kc2MyS}҈#Jqq"oۣ( =:mFiXmZbB;ֵy=˷rd]77l҅ANNJX,ZR VfRSlSCu^X giTa6L`GYQY"%\9ֆ_$H$TC޽˧׽$xM"D%E]V2Ej'HCHN$\9
-9';{Ngq,&Zd;f=TQ;-tj\ =T.2rȬs JP0'>{D!{.h/# >lzawyp)AQS(u)zaý";QNaG13[te7֛ w݁XEEĘ[)
-9o(]hWw,3Dp.<鯪,U&,\E
-eyMYi
--)A E<Ƿrh2-+
-Y՟aC6<rɭ yf6]'l6(bvZk@Oi J!|q5B`0N
+]gJ9~A.}|.|*$F:|n
+C<8W@U
+P=BSd:5Ξ:*7~{S.R&:p]0d1:Gn6E ߢG!FQ2ztی( Ӱr͵\)wVw5#kt{o/n\U%nh٤ *d' 99)ahI7XٛIM9MQXya%Q'P͎0L=&BGgVDAgpYRHXNT#yP z,^5<"j1vY="cL"B" :Ep@
+AzPnF}xtt'uqYgdK0DWJVۢ1?/ւp(#JSEC+RXAyɕK:[)r厏k=(
+,| 7<$nl "CD*QTK%Um,Q.j쯬!O;5!Un_1Uj$O( //1lRԙYg#?1ť
+%^~p(<[W
+
+2&Ǥ9
+(_HˤNc$Z_t@aYR5TwPkwMPBN1a=GAz3ɸ#ƭY~ǎxK-wݳW5q=ƅ/hu,J{Ff KQ91]KC\^F$#|h RP9ZS:{;E.vA%)&@cg& n7> S)1ɷ&(SrmPx$"]Yg\y_U71?YMY.i$?*qSۄDR)e 6I9@*I;t­caoaqF13?3̪
+n;Y~v\l;ڎ[GS[DZrmB1x ةP,ʄ
+ =cߘ!lYC1IB- pW=zIW%ڃs2-H.^(e-WT"OS2UWeHFgG(V(@ 6\
+eS~/Ix8>+yđҥQ
+L;.^|4鸫6-ȭ)ŽsJ(֜)_j׭pƒ*Wߪmb!axRakQ k]'5AKij2l8aPhO *8h )z>՗Ci\\)ݚR4NlowN*mV su4d< 6WZ*T(o.8a*K~'xFnR `@mVTvJ xlU=5x򸫇{v'jYmjOZmGNPZV{ɃjsaHtP
endstream
endobj
1119 0 obj
@@ -4289,31 +4244,37 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F57 799 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1124 0 obj
-<< /Filter /FlateDecode /Length 4914 >>
-stream
-x]K$ϯ} O5􌥽y՞lڒג^ $$]3kz'+ "~=5y4O~of9sܬKOo8Og5pn_?
-=.Ajb@*'+ {|NeZȤ܈P9}+v@qKpEO컪VMvʉ,Z3ؕ4JX]?e2Y^Je+s'wmcɼ@{ܗ GkPAHs`bIn")$zg6d%2<zic2*ڬK+fZ_vN_qV%4%n\iE=rG rzm%5/;^
-'QVprk@34\m
-Xp7`sԟ])0)B|qڽ1>9Q to봭\tLUB&!L jyP?%LKtS.@SN`2ă5>AQ5}8Z}8e`Sn)KqJ7SN8e k%Nk%Nys8c)k`qJ(NySĕ8帕Wv~Ɍ)s!T,啴`M
-,Ï_[n R2۟CfM
-4L‰S(0+Q
-ה7KQz}'Вo$&xW$25+}8N";%TN i‘A2)XjQuSXbXV'E42h MX,Fvl[!v K}זq
-ej~œKZ@x3~V!0j}PL'NriAx&ztIi.0̪ճ
-ze✴No'-|ev2-e.h![f$]Tj4aTT93pu⧴ysB-sixf焊VK T(݊33dj&
-K{%v@SK=7G4k T
-ê
-hI*P'*-*Kt%Ϸy
-s啃ԮM&M!o{9WK3eO"T`HgZ|3C MyMҔ`{(y.H5F؉Dp7!K*.xN&~:-j"aQ_Km@TG{xSR^6loӦ Z6 ɏD~cbi2`)77ǝɺX>dU侑ƍG1Ay<u?ݶ'L!3PH@SHC 'K{; m
-4#2fJml:)OVwΫ +g)4Koq3;DdB6GQ!L9,]ZɎP<{*%h}LŤpWcRW4r WIkgU@kz%50ؑjQO"25y)+`
-vJ;Je'XNtᨥ\"bR'5tKd V1/]+ 9;G,%
-z"b(6D-,(NapAiWفjj0 :M)-^'J2IݮENkJ9P½y5u<MmO93%(5X2݉99h#Rr$zE+ה}{r vd"lxp3g;1ޑ7r3qm
-|Ɲf"
-o5T
-M,3 s{àxؓ*M3+lbe\hvƢTjY'qBJ˺
-AFTӮchtpLPLrzpW[UnWP^܄sT!͍ƭR']Cѹ[#9RUҊzoR҂2iAkoF/Y ox[#IuJYۂz2޺&yZNk'om\{2hRgA6Jh +Fs^)$[䥜eۂmMH԰%O޺/'5"#0pm
-rt蛹Z0_`؈sb@ݾO'=]~s|Jst_ X{
-<?v
- L󃓉U\t"ܗ>*ߌŸڞuҮ
+<< /Filter /FlateDecode /Length 4926 >>
+stream
+x]ˎ+rd T-MO <g|%_7J<^H*o OC3oQA!3g:ϸo~yG 87
+ 9ÌC\2/R}8T~, "-36A$D@fCAP"sɣGVOFW]}iŌwK߮-Ϊ$\)4+${i)&>@XJռNzS.p Uzs+
+'`ksR݌<@<
+ĸt;#Oq@M)!0JIѧ0NO)1nes 1qԶrWɾ71tZZ63=e~?[œtk%Z
+\2ăx\;E `{MyG
+_}orO:̃hgm>eQSF8z Zq'EpiCF<f$)'~5egR^s  5>L N%Pd簅$W82} ~ Z2[]0SX'M4dh^ MX,1h7Ec߷}0~2@XWZ Iq73-
+Qb3y@ht['&*2Ҿ22VZf+轖Ys2;].v{̮ۖlm`iètC rf0pu憅Zl@e@%(݊2dj26[{%~gģb< ZnCig:a$;-TL5Q{\b M衜ŠaK 1fjRu12[֓zUWP >[)Hߔy~xz>c5/ <
+|O.'\/מKRc@k֚BS'?%/KY_@
+zrtл/{{n"3v 9U<@CR,IZi2p&'5vLAՖZ@&v0,'Z=_bA8}uG]_o $.w ƚNQK}C1}jb{oklDK;O-^LvBޚHmĹHuv-H}w"u9}aOhV 0(1PvL,j\N+~!
+7,I te]zFZJr@E`XUp-TjDEi1 єe>} p$G!WJnO,Tm APyCeJb-cgKɦ8X<Z2Ws{T4RT@,
+;AjWTiֻ[% z*Dt;˦ĎHZő,δ,ha.!<V)2=Q][6jp9nN(o)%C4
+U\LkuXպE8.<)_|-<DQS#l8M O@}j!&8&?9 H3ʀܘ?w2'bp)VFYyM<IX&c͐(wg)PM[aV/Azr@<4Tke$Pv<'e00u\V OjWjF<ނLKSc H<\ ߶n0BTMEJl!%- I~:F
+Z6*XV*;'_N
+A
+6L&5u*;gw*U: ӕʇT_<{߽]>%Nb$FSf <Z[۝m"Eeh״iɒi4S< G(:0e7%+ed*l=OLat
+C'lS"WVAɯ2n'>cShDg]3Ow>Ȅ2m31BirX7维ﵤx
+Uu[{%'tI!<Υh +E/64&9N IkgU@kz#50ؑjQ/"665y+خ+`
+A,Oq|R.уjuz
+ᧈ%p2[ V1/]+
+9N#n[C=4'J Q JDPUv= ~}ۻtS|:} LRkӚRNlGiMݼ#DrNJi,DCIÜUrёSw)9{i=㢕kɾ=9O26<F
+\L^3ߘv_8S6}}6OIr
+Ayʛ
+-DM;G#lj%R~G+8ahxpj͎gx+ GԒ/z9SLd+U{*}=}0zSM?P5klwMRo;kZ
+;<1ϝS5":4)q "چ4}Vn9wJY6S탧b~ PW7|rc9CnCJu}˺b9u
+gh'cYd!'QXYԤLDI#2DdJ_fq{YVL_-CoCtVIt|
+笰jrA)ɨ>j0Fa_3D6cؙhe1}˜*кGb.4`܉MwGUh?B=I7QbiyT߰jz
+0 ,\%zcK#O>.2e{F5֓[OCt! sWv <W2vŦ*'ؤ3[\Sxu6rhnlP̈V 74/kH49ϟ$\]BCoӑ
+ne=`
+ڶ7R@ H5^J'q&omh-6Ho&7!QFVHzZֈt6*a)W
endstream
endobj
1123 0 obj
@@ -4326,41 +4287,32 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F42 792 0 R /F37 793 0 R /F40 876 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1128 0 obj
-<< /Filter /FlateDecode /Length 4612 >>
-stream
-xn%xGaX
-<[Fޏgjb_b̫ Y%]M2
-b7 k.ę2qeUH,32p _gb<F3Ux >qK#xCE /
-s/ E(kຎ~gu oxN+߯%[d +)\(+aPx7$pV&A8R7 BIe8N¡f<fYB'?>(nfHE!bqte2ɧM\6l_7)w*ҳZUBjr
-I+<gBG8ٗeh<ڦ^+oן݉V?ooRoC y0(&-_ NG
- OBVA| -ϒ>k[FyJ`2jf^7TAu$(A^]V 4
-i `WiSv8:U#Oc0c0@ٯkYBq5ZT-*3\vFFi[1몼Հ*o^  &o%aʴM'[vk]*o׎,UT)t*ObU;*Ph t_'B˞q=Z/S -G j=, aӂ&+ =p h Vtp[Z,Hr`-DAweG^f5
-X!vD3 Xcݮl$k<GvlHJ
-fur(s
-L&cH^1>,)oQ2vH:2=A &Z4,"y˜?6jf[c'{+!wz!: tHal<i. Cs2OԪYmĒ5iaB)YSgu/[&NmB ¡ |VX jff-MgW_Odh7=nn9Ub_:"P`%͞e&8әтۙ/8jM9. /Fؚe.U8h!ƫ6OkBJք6Ok;p<m9O X\-*V0<Ld&Kޝ(&в{R# b
-JhkVཱི7
-" /h3Ai蟚-;~M|h:cLrJmsP.3'$ۖh*?B(UcpvZ6IUQ5-:nk" jߴaݣKSC/a1N.9Vκgk
- By1$O8CFmφX
-2[ d>u|qw$PDZ.d<TYM3&Em}_~qX,ضK:'-Ђ%A4s)&-ɚJaVnіl $`3V+2LQ':Mΰ-j+J }ױy\*Yڧ + *ZTՃ'm->=ҠU3-@P|TβA-klnlc,Z*Ctel.v_*6oqiLioaϖ#Apk'6|~
-&*:<QxU'\߭Eu2{ױq,?_ o
-9A -ݦOi)X׶:gHKbgmʍ0պYَ^~@'<8Q/"\*;'i$KQg|GBPTORftRK;
-̀,7SѲ+
- :vg
-`pkcYjlobyNS0Rx] fhPXtz?5À 
-OghwΪNީ| Ы7)ך6bW =j <#Lfgj|UVbQZ-׬V9j
-ɝ6^F4ڮ@Gv^]V0C*&#~8y)uS{怎w.~eq3VhJ5X ZK 5E3ViױS,{)&u,주2r v7nIp&{iǀ-X.6ՊWFU20Q
-3Kݭ5y2p9{M]
-ݓInl)b/J0-$ng
-Ras#XzZb%QˢdpEr_\n*]9YH`0ܵV
-m֛G]ǢOZDB|L E:-#B|Zke͜8kx! ;.Oݾl}uE*t&徭EM@7o]_vfU^
-,qoU:*)eI~ɷ nb+<eI~m
-55,yuYerq+лPԆJAI6 'ƟBKL)ٰGpR4x@nܖͻg<<]1
-knQG"V8jaֲA/Ģa(dfK\̠xi>p'M"%hYkI  :IO-$fb/we߸UXtF7yqr
->9nEn2t?=6 I&gmRR`ZZ I~,z]$2R(͇[^xE[4*_[)=-y`oƎ"WeD#W~TǨ/[4&J EDAfe)6S%
- 2{hs(ktOs8dTW+k-PI?t}W,
-HCT %FLSDŽ{+v1=~wHo5\@;߹n w[HK/;|PrQ>YFʻU6]x~T<tY< HZSwkRא?^ C'BMmχ.|%P>Ji4+voP%Iw!&ۧ(TشŤXnfV@r$ܪ }2 mLc_uf'#Enhu5"R^_I&>fNj٥e(/oCoZp7/4,)Z8H, w^gMݱ+_ X"K%q`o>0i\]e[.P&BQ{e<k&GXV'fݧBIU[ &6xLzb' JOJNj?V5$TgK`:,|,3
-_ =}L nMĆ
-ڹ7wE,wyڒ8v|vJtfT~gi#uC.\Z Oi[ HXI6C=IzDI_ikh:x$4twɫYW? ;
+<< /Filter /FlateDecode /Length 4610 >>
+stream
+xn%xGaX
+6uդMv+lrQ: %ٺu֎i^UiZNzE|.B`8X%4X-vS!U{N=Ƙ>WkKpJx[̾Dimq`q]dyiPNaL+H5s~Hc=핐XIM:ذV4I9ICzc'jE6b5iaB)YSg}t/[&ά}h
+ 9ΐQ 76g @Wd:אP<hBZțq>($<tBEI3`{.LP'т뙒.8jM9d. /Fتe.U8H!F6OkBJք6Ok;p<m9O X\-*Rhw1JR%NBmh=)PC1dX$BLiTd3 oOѲgFIȔߔ61a+i39
+C|K\"ϜRf[vGl
+uT) lP-ғ<!S5u_ 
+5oZ0ȌQ%bpAF|γ.@oL#*\%[&gȓ-Ȼ&'Tj#~S QV̺o5"gܸbDE~k2oր/]oש[G CBserEm
+kň(ňbD ň bR1' Ŏ:JoZ(_,F4^PV05[#I׊ ؗ"^Xs^=e/
+kS=fr=={c&(cZk=d 1y
+2HSWO')[|K2"2LXT\FP5g5ΘYZ~!a`)Y&t@ rf |FP#&-IJ!Vn $`3V+2LQ':Mΐ-jc+J }בy\*i: + *ZTՃ'm->=ҠU3-@P|TβՆKe+YRRFXYj ѕeult҈`VySK`NC--| {A X=q MY&(؝0xb7@{dS];KhbN=f9:5ahҾdyɘx)
+AGN['4dQY'seb+̯chMqG=^5r4XW[nMɿ>R2_dCj~vT/[$rKSi͔u< 7F1YhBK!¥Zb}Fz֙w iڿ`
+wxMP8" ک;-w ]I<֜'%~dL
+^C/(r,cRLQfa@C@3{wΪ)| W&$?o50_ 4_.DhlR4;}WZیj1YVZ|Mk;Z{Z뽵 pEk=ivZZk֚oZ Vuj;yQ;g}_楻[וWVC gʋ84Գ.TXmieDȩ
+dzeZh3[%9u["vF3Ea@C@^
+i=ws@w.~eq3][kj-38:;8\;ԾErE("AػЀ&GLcfHs{`1T%yK;t 0orVl2ꕁE`?HWirnw,3=)i(ߝ֙2A- 3Ҋ_H;jv1ĖuhcjQD-JbB}-sEd6d&Y:dʂZC+You%c
+9?j
+QH3QB.ZFZk2fNh5o`}`}'n_>":bo w"y&˷ˊ;\;3]~٪Rk/ò
+,q;ߪuޕSʒ '66z-jt$%qB']@aIӆf" DQXޅ66;8gsɯ8QZfJYφMl4ӗr<o 8$ڍw}DXo&mO/v
+>9nEnt?36 !giRR`ZZ
+amhRIoQf.Rrbrxy){íQ/ k-SLtJzK+%;=UYEȕ (1n? Rsm؁Lyw%
+ 2{6 A=?Q.qrYI) 03u Wg[Փ(=XPmQy 7HM=o[a=3Ig/%d!r}{
+::m7F1)'u0/lCC9c}nU
+٤Z(j 9YY39]GѨ:>T
+b0i2wu0E9ȂPdp+>*Nj?5$;TgK`2,|g3,
+Ȏx3ԓNDE>FǪArMCwʛuyS@/ oBu/?oK~9?ګ1p44f_.@
endstream
endobj
1127 0 obj
@@ -4376,30 +4328,35 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F42 792 0 R /F48 640 0 R /F55 774 0 R /F37 793 0 R /F40 876 0 R /F34 637 0 R /F39 935 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1132 0 obj
-<< /Filter /FlateDecode /Length 5579 >>
-stream
-x]K%qϯKgad_0@F ] -M~>|t7YHbtu&Hoo?}?~s-Ƿͼo!&-۟h#}6>
-A4Q(D'\1;t +pƯfNAY-"m:ZP1 <h>LL'ωo$ߏ99+=FvyJxqYE1G_-T^/=:h;5d;q}.!"U텞%pʺ` *jVaeYXYNKߏÒKK:,t}~ lR7M@y ~,(1bS"fmC HNƆg вm{h:6I~d&F{'^ %JA'\B Јt 8m_gi6g~ l"ElPt^h
-A AE(㕷QWV}!xo,I^/d{o%|-hÃ9{Lb1~|+2@8iN,i[:7MB;L[u4*Ewd--XU"^K ";qqx@@!,xQm]w D/Ҷ i0ѹ1n-:/K
--ug`!FW@neOcӪXfE
-
-M ť5Ss*ݷ3Him3IED?u`U8e篍틳by?̆z|l}S G2N|'\?BJ6*`XW0Ͷz6zi^H*HL*E;
-Ηhd"i8ֶ5_ 31
-Hqh_bJg~`mӄ1 %?UT kPvTV8UuS-wbZ
-Pt`JRL)Ru$*zBMmOռ̎`V«<\%'B6t" 4i!ᝓ`P ~ Hq_ip'B*Z3 Rv6w4(A @6B@
-ⅹ`9%dy6[MlKO7W `#
-Y{SݨS\SJ#̙;Lo1){ZQا2Zs oq<%ePd7=qG!-O5hi"zfrۙ:/JYYH,6Gr2+^*bhCS
-oKLu5_|eoyw3o썧ZNj!*p.2箢2:ڳ9}Y!M*#M bML(1եGDIN_&<oT,nu?sb]+iA#TA- o>|?WЈ &金U̶
-05'|><>)n
-M\RCgP"0ԦșnpB9JHaIG-2i\
-]'hI^NzެC;&fY֡ lY|w/̗>5d "ZA"xiVZ?( `ͨ(PR%|!cRE"\#HSqfxH3HY" D4uuW5T:ўu6\Χeiz1Rdz)u{L!dLF1RE'2MSFėVR sDR /(
-=!(QX JӴݙ†$3Ngg t
-nsm}O[S%sw(ܙ|0˲k$,4(AC8D
-X)x \5l@/tN (=INH"wg!-H[-Q iҪV!藅EH"u IqHH@ %H[G mDp@imG8_"8/B⚏Y
-ֱTכV-GݾPF;-:rg[|`oX)V%GIݥ)ܟ!_ bxQ[)H=PJ @F 0W>iMw;PցDh2<n]>۟(H s?[r㚂1Û|G* -dUTtɹ$/$ç5$M #yK麹?pi;e<8YQ[򇘖Th Q4'"o=46k^ҤҌFOwwߣ.)TMDf323 ֙NY{}v6nA3\Wg6<ٞo񤦵0ER j]rqSFq+˘_v=ٰr
-]v^m[a+w* ^꫺24,^&H;DGϬ-۴ ǂL;83a
-i&ʴ]WU_U'}U]7zwNZ g5|U1 w MˊJzjm8DkA]Y޴^Z
-WZ_Z鋵ܐ"xۂ/}.J%l6.Vg.
+<< /Filter /FlateDecode /Length 5577 >>
+stream
+x]K%qϯKgad_0@F ] -M~>|t7YHbtu&Hoo?}?~s-Ƿͼo!&-۟h#}6>
+4?NY&ZGG‹ 
+ Jɱ kwUq$8{Y
+笈іfU
+(eq ~ɷHD^k@P!z<,9
+Lc$>NVYz~)%2XYga&g:y.:,u|?K ,u/:,u?K$K~wXj1JX?4Q@{1\Yh@LjI
+,u 1w;mM 4 g3!nѨRm%֒ `V xՇ/o\y Y
+Xll_7lyR;eCdt݂}Ċ3; &%VDZc1{T`<Sw;kghpMl^h"bbbTVar/b(~!_^
+ s?B ;v0r'Sa;x BzRyh1*5`j`_<5Z#5q69jI O-# 7Jl *4m0TLϩv46"!I>z&MуTmT0J6b/Ίqxo0E@=M 6lj8Qmp)Q0ڨ]c]4<}Jy! Q2u|gex
+vP胮9hTڥ);_͋x`P[֠R~(k šI~)emoDLV.,Vi\SP5lBU"R^ZT"L܉QjZ>Ǩe K` .
+Н)JmS0*2K۷Hr2{ב 6O<U2;UT:Z lcPspŖlH
+ٔӉ7hIwNz7A}6H-#k yL~Y™Hkw'H1ڽ!?H1S] -)
+~x痐lG
+4ަ ն/=\m,;d|6-Lq: [;Ier՘Vo{pGŒm߳lTAGDZ҉lN2AZWpA% *7Pwwlgó`MLnۄќcI-x/;;_Fg)9DC7^ -%UP_{k[ޯM׶wKt>˃?t.;P2{lRpG,<y.:h{sW;3޻mݼSKV[--w x% np˕Kelɸegho{oO-E<8L7VL/noԛowFYgU!؆Y<~f"%oDdLFDsx ͮC_J9Ofd4Ժh4-%g>ZCN8YH8!%Xe#@4[[Oy۾NՖ9$Cym3  Cr<OBxfS^ =M;w1:/G9Q^=q—Z
+M#
+/a@7y t#)=÷OH=aAs1Lhrny5CD͞ S4x}L|//ےBq>_&4]F|0wȡ(_ }>/)0ogmOuNQdsO)y_hK2g
+hh298G;iIF%cVB
+ ,j=0UZ*xAi+݇hW>,Qng6(ubge#jwFDzjxU5AO)ܿ[bO,.1OO|
+IfDC$\ 7fk /Rs``ù@?ߟk e4ƪ
+i#(M"%r@qB
+D;!16''P
+oug=8Dm6WmOoPys'
+ В4w4-IX^<UAl4d^2/Gvn~bZ:FRADќxW=ǮyO`HJ3A>U'R|~P4 8.8Zg~C8e}GQVٸp-^ـnd{œ֮n{+I%MwiMYŭ.c~dÎM4Ld7v=uvjYd8\(;PK7#EmsZOnMLe~&h۠OsewPk5\8||sDgirQZ>w mW׭Hk2Ydxro;/fLC캹 A4rOwb}_l[i=\buoT#dҽ KB|fڋ\l]| -WmJN:^ NQE _Y?/ X]GH%5QѼ;M|QGҫV[)t {);mi 4xo+ze
+8Qb!R<ۻn2 @2)ꛘ+v1^W|Wă`Uu`9llh^>Ϸ'؞xU454.+*A䫵q umfzzk+ _kMjmH0/FsC_km kg()ߖڸZuv?64)H8߷@*
+e
+SRóVg9\.! 42r˧=\f*xsFm3<]3;onoDzIYcQP@jU$.^8QX
+qv˷4)ëih}߉s'(*_g(1QڷǼz#H).?{f4pJ!h gw^M׏<
endstream
endobj
1131 0 obj
@@ -4415,24 +4372,31 @@ endobj
<< /Filter /FlateDecode /Length 5323 >>
stream
x]M;nWeE/@8쒼`VL olCJ%%aU!#JX?}?|w-Ƿ_ͼo!&-}۟ߵ5Qk}
-R|Ёrz/E+' ?3qY>}3Vћ}4G@RCANU(e#Be"nqQ&b-qu :O;^jRU4Dg7_m|߰㷂0$")$ vK3 ;4a,tJfT}`kPgiLWKJ319ʳO+VEE<<{4k4z9TT5Vc:X$ؙbPNdE}RO:}/
-mG,
-<kYFyt8#Q݀h婽5pcPe 1⠼j"O&g2V`%xx[zAV3^{ՋCv." 4Ki 8]caNE'rtIn%FQޭڟyLǠ_V}X#ZY"F;.B.b@:1؋~Z
-ji^a
-l}n]I:Za*OˏZgfu#y}+BܿUXN>h -я^j0t[ =1\#ę:}= y(8ׂZy
--\>WI`bALQY]?`,wmEQM̘nь%ní]!;R> w')ޛ(Fl<F6D#V0V/uJ܍r=ϧq3L}Τ<S 3ȄHȢ":ެ7!f%zn&G`:i{'k@G nm3NYmļpCo˜cSr_qJ磃
-J藫ʹ5KQevo+9v[Hju&P0<8j";*uı/dH6yJy(D8\c"x-`D1-4M̜l`,nO&%в ۋuKQ!4N^w ʡ<?~<昝{S@yyPAQ|`^{=r7W;ZխF@]XbV6R\ĝ&!! 7 }:iТF/#*%d'_IlG\@]ctΨp^r6 <7sC>t<שqGKqĝ1P!HFCK<@i+Uӎ(pVSп>u"aBWH1S
-sh=F pb-nl JU `NfYIk"&y DwD7:=L<%:Bt"W8N
-Ў+F'Nt Qom I?9
-WQXɳ&߫Z{Ni$uA*֝udvAYp9L 7!%ۺZQ3x;K6|4IMx>\f CI2" 1v/\EVO tNL_k>|{r'6RԉOi8$'-׆HGL k#T>ͷeKF?вGރw~vhEOG cD#-ts rkEBzzM"_ϔpKfiD؝ fϟޝ lBg"s-kMnn.H'wg:ř΁ R%j5\uۮBTӵm:rVQ*$ ӰC;YٮUX:\y!O>D4{8* ]Hю̗Ch gd v\F^En὜~3rdrc}ͥ<K\?zWu\l8
-HF/,<k5^U{\@+KwVZk8+I14VT
-ю'瞇7$F88$Fm)MN-}鴯--˝
-t 4unw"듉&#>\,Ju:Hv*7wwԽMJ:JHFS?&Z4JmTj JOPK| ~v,\ EdT*Zle&2XJR14pw˵ӻzBT*'
-ctR0+Cjn;fgnPI.y?oOW؏/R<fT k Bkчq\j{$df=QI% E 4xTmӭ' F+۷.f|ТUm:I;QDR҈{Ufr$ZȕŭMƈf`bqşKjqO MXibj2:v.2V~{!A_} =y2:]>MnΤQw]Ө<!3HɯЏkF-#oMfQV(I/يS4YےO5齯o])X>CyXy\ښj˔LVݱ'vk(,\b~Tp~>?5L?4~6i.\JsO8[|f!iV 3i.Z y5g_M\u6|G,F#􆏻J^EZN}
--F9wK$7^ę3rҼ
-HPz#^*ɜi:ڼ*i)GWM|M8ojWMb6tMK:
-
-Z!0kji"L ֧h2hhgaIU޺䘱(Č틿7ME|U@q#F+;'49{aYV-c^|FP!*  _ڛ`ͯgZ'\cWJssGaX.<e"j9;MRiB.ӺfL+2MgZs# y.z1̴n~!BGVbMc;SB]9Xmۧf\-~ݦa>Knߖ <( & MI| (H:ߥa7ܥaIiثAir, l KUZWM̼?qaEGuhEpu.M$I
+R|Ёrz/E+' ?3͑$'
+܊DH$-"6<`Fݣ)Q1^mB+3^-)SD;P*V<:t(ZA9pѠ*mPQEXp/s(bi JcgC9aIa?8?Pa4@fm d8( +╭}c؄"l~=TrgrZ29:K?k,$4zy4ӏ
+@/4NXxײ.a!jqF,I S{nk(G^BQ9bAylE*)Md&"KJ5Rf\Dh $"$@qh\hNh
+6 "K s[?왎AqE6
+G$lDF0w\\O+uc<70pE +)m!&҆5~Li{e?N9{y]??9۷?_H#2yu"rO-QSw
+ȷF,
+
+IH֕4cex@{VoVZ|<"n|'"۪+o_lڊ4̿:y
+7̤۷L35p1SL,:/!R3ͪaxBk^fr:󑝖ټW{&N OKp^zoXh
+{>d̩zh0 +Ml;%wרy>:h~LZUfV>sXqnVoڭÃ/ҼoRGBo㐧QWOAيË^5[>&" VOBd RydR-
+\p@:{.Oj` R-i8b\&ZOQX˦%:H*Ck$$SY;Dwwn^C]kh% NSD7 gN
+b4,2|DEyk֟μ>w}^$qFN
+pW$u#C*BWf/>m"{W[x/gE_s))׏m{U[=:#Gf 7WI O<ɛ`#_N+t_>_Oq.ݣDqDJsR>u
++ u
+ y-+Q4{ CYN_KI'a&$!Mc>J:F~Q|\T#4,L$AD8 U,P)Z#]x-RHFIY^$&elhA#
+A-#248PDVǓº"B"Fm). OZWƁD|cU02Dj(n杕ũVJRD Mա$B ǹa8E&o`M8IiN% Qh[qJ*ugvKA:kt r?o]۝d"HOp: iD8RwRM*u]*uoӤR;NR!R$ETŏIV2ͥR8C<R1DD9&% &Hh''E3(V%AI ;ֽFT %rm*u( LR)O^Cxnww/t>՝8bKiJ2L4)hZt*)6̧͸FXO;)WB915aQ.
+cpR )U࠷Orxלj>g]oMێGnͰW)s"+R-h_$KR/ zhd] w
+ZCbJ<i"|XCпE`6_ C5*!{fzwf~ -/Caf
+岝*-su`CQ ol(إ*){Nf)RYIk"y w7:=LQ<8Bq"W8(N
+)3eئ7ܥu &MMK?1/NYpk
+2IZ~#ޡ,$#5/eJ9Fju9H܅np/d$ Zs$@_EYF`-$ta$ ֝P E(Zz-+1'8c$q4
+1cMwA_;P܈
+ M`^XGU˘%
+{Lkr"{tәB<˴} 3_ȴF.QXF;-/@Wyah@i$"q_`;hi؀Ұ۷e8Jw®IFlӰgҰa
+ҰwiMwiCAjP\x.lhl(鯖US~13OE$irZ\K)>Y
endstream
endobj
1136 0 obj
@@ -4448,18 +4412,21 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F42 792 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1141 0 obj
-<< /Filter /FlateDecode /Length 3876 >>
-stream
-x]K ϯ`+ޒS<8@rY%i cRcuE]~>zuK&˧>iB]%%p)/7/<+e~R~PJU[BkǗ7ZxM?Xix ~myc{:?߮;맟43İ8%)VŧyK-mZRU?|zo _ዿ/j9]>]^'
-Km[L^ZZXWVk=~V?o<^/f1ĵ_Lg!tF:b:â ]RrֈK{gbSY$o|hݦ<m|خlcv%hwiz``iuz96
-Bv%SG 9-.VuBXX3¦%)K-C<4"a3*-wliQ lsvHVmF'fϴ6Q\u<р,H I&$֨kK7;I׮O'|_[9ڬO!֧2`n?z ~oƝknO-هdW$@ 8VuNVg=NZg <'Fޣa,B%^;4:5lUzPKI}[.sgTj.F w-
-HӠ@kCٷ+` +[%:ݺ
-S7mG;~>N85M{'Hh1,:`7-S;p|zn@ua,!"/^de{%,$iu8(kn5jCFknۈ3ހ.\pC-"m>pS-3A`:Kpwp
-hhZۄHtS!|Pa܉H!6&[v
-fj<䶋>4|c͸~@mc&牣kXn}2޽r?ޣ$̚ +=57^ %L;n($z;v|x!UníC\74+~D./锩 Iͭ.6alFEæ!3Ih#yB(\:TIꇷr8)1Eͱ;Uxo<%y<
-,KpY/>Ky۷bttgGK2?Kyi?p-c $ ʲ쏾/tc48C\M-lv1p ݬB+[B\z&χxp0 ;.ET<8=Wf̕Ȓel2Kl[ 3c+n^_)3 93 8N&4#ePrfHWm3߯93EINSg0uF} ز&<8uj7u:Gnݩ3nHq5i]v +z=DZRgԒop:&<KXqn]%-U& "$LRl5Cn9I`v֨J8k~A@[枠lLd,qSy`Й'"_g,'Lc'9ӳf;)`ä:!ػQ RQ|' ^aAjky`њR>;FNb|'+Bi_3g+-a߀7;p;ߎN<i *s9P%a
-59B]VǞڊTMx}#ivpj;6×wl;69(UwV̋Kѝxj HVލ;Ez.޸wt]
-TSxkZ
+<< /Filter /FlateDecode /Length 3879 >>
+stream
+x]K ϯ`+ޒS<8@rY%i cRcuE]~>zuK&˧>iB]%%p)/7/<+e~R~PJU[BkǗ7ZxM?Xix ~myc{:?߮;맟43İ8%)VŧyK-mZRU?|zo _ዿ/j9]>]^'
+m՘~{()%@aٛ5kc
+ךvv oK6-&/^-[+cAxh?f7KryJl `dx3{/&:`PFf1Yaa݌t.)I9wkĥͽ3fb`x,enD7>4nSh6>lWav4id04:T E!aFLŽ֩#†+:!,`aӒ q@!~a
+q:I|˅~lvJ?@hNE)y|thmH#W<vlaEx+9DCg[`([iNctJsZ181݃{O>vFCm#a4q gb&ܷi :EeJѸz.<V_Hns8%"DDa+uŐB2Mqm6Э]mH7u-mq0؅n_ľnS}&\l[^g N-;v8{I> P4`,!Mb
+Fi;)f&toZ<n}a 'cJ}qq ?[;^>QvöbՒh:t N:RNԬs,1&<Mzd;w}#c4sk2\A]WҸ'kteb')ғ|ڼm@]𹀠kkO{>sg{&
+$@*
+/|ؚ
+m5ԕkeѽtҒT&&b iHƱܕq^e.g)oVLޒphI`)/B"S?vy`!
+fH3-' .Ui4Gy =:\6HshMӝL;>n*p]Qb :DB6c]iD1sz6l'3%luTg {W9Yj5JdaK: ?(Tm-,ZX'|'IC,rdE(:+y,8v%9s||1ߩ4;〵Te.5 R&GTkju}S[1
+϶a;}|Um&ax qF;'u<NߊyqI:O!3ʻqHo%xx.] kW[fs-%]׊K{I \4Q" 2IG@N
+J47j7
+&]OI߁7M
+K0JFRǻ*~uJ|[AUJ|[!5J@y%Jꚓ%I(dgD hMpGRp`(H#$`yQs=>*yuRLg* )ڄbˎ룃()߅(a:'QDZgN"p.˧G]18"F1x6 } 8sgML:[ۓh#D D^YYtBdE+ m?
endstream
endobj
1140 0 obj
@@ -4472,26 +4439,21 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R /F40 876 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1145 0 obj
-<< /Filter /FlateDecode /Length 3432 >>
+<< /Filter /FlateDecode /Length 3434 >>
stream
x\K$ ϯ$ ,-8 _C=X%TURw7r*=OH_z??}3oQ?? |/b9s\K|8Og5pn-{
-\'δ"Bି]t\9מYe9W9YxN߶xw<8C2< (W!w1t @Ae֋E<)8fLS({- Suwh;2$w-8]"=) Jcz'9
-pguqh'l 4}w"l6h'`H\DI71m㰬Ve5J'zm7G"OWm>d'O NR-@'Mg/ij(fq>J?uF^+вOOTqdL(>%1ئ^z N
-Jy rw a c"oe4nJk,;"Bz?5nPY،'I*qA
-+HA3W+$5D,XO䕉dc
-D{%@IT]
-f@UY=2վPΌ3*!Zls {y֐J@C&uɄY6*W(C8P)A9wмXJp.Zj*񮨫vy>R~ߋLD0$0z{1
-I!(`^EQYE֐Fz2{,v+q_ٝa-LCM]Kpl[7B'f*"+6!?
-G e0P
-ulKlf~zcFɥ*DLEu%bL#ό wZ T6!6a!L.Zb^ J"h`?X߈8A`NnG-\\t./qZIkK2Ԣ*%m+gŕ kƵ]tR1WՔ}YʬQ׿F8jX'86;mOK7p6@@wNC @ :Y(h
-Mipnl;)}n (R![7CyݥttmYqxDcJs37ᰠtT OdjoeN-<%}!1¿ywSe{;\-3 7<,ӝ_r99Lo5b+A™4
-'R$LlRt\wI.mW{fȆ_7 ` n{:Of <D*o]`G%V)_&n]~ˍ)VߛnpFզ>óM;ˮQ]-ehҪ|Lm@>}!Ihm[oN VVӓ&&CtHp^f][ ZA}2‡(0-|RĪv!DAw-DBNBlmrclmjEHk״5hUL9
-o HK z+{Z4[.ψqĞސޮA>!w=0*$P QhTZږSN~cJO(b0K&(cᕙp\H09Y '_зf7n=#rx'@ԛ𫬽ꞬŴGp5=
-'LG#fm[=:ƹ$3Kj^+"@`<gccd)%r
-Щb<<X.æbWt#q-$݇7%uF,Y p|$R2Pe:zm.7x¬<Xm $K8[K9\1V3eU+Iޥz_9AI[0ĥ6ƠBFY[ttrsi c[Pf f
-U/pWI9Mhu#Ose hۤmUzZa-DCԤP}%:]kUj^jM+U(Hy|H <8Rf&R(CHD 5 .k n۠ϔ VmZLf73: ݌#G (tEG9+jRV2z&TX:ȹiMCH΍Cntl\0iF[wtcPrhfbcA٨ <9lQp:
-nDz\䰬49l7rX 09ͅJcænl4qc
-]8l
+\'δ"Bି]t\9מYe9W<
+? Ǽ$K!\biB5Q~2oRuA6!_wL,fm`Viq@{ZH* q2iC%N<UtE)_3
+< G9
+ՙQbV:Dz{aO;]~6wR hh¤W.a<0Z
+e7eUy"(+T NE+BMEuR5uU:>u'R/{׵DSW/z/F!2I31 kh>*2UObŎy"n>#3iHq3k QwFwQE;rWd&䇕ZALJmIPbrOoLRHR:Th[ `sQ0Nj&$&l:>R3UTKwDA9 ug@'=p5lɭ0%N2IxmIFZTy嬸a͸N*jsrU0SԶۺ/K]5ZGgfgi)H3ih1~hP'5-Zi65-m's1-A:}X*$srH15 K8^[Sisn<
+d[퍕lݩ9/D0F7OnloeD紛}_.?3 rQ
+<S~h7Nvb`V5Р%cZR/-saQ=Ȫ5SI7颜ͳRJÙ4z?l3p T+A j!נ]K
+ zsدRT1}yPš LT bGe $t!2(, S^:B%HK!0$,PntRv֨,,k#tE慀~)+s>
+Por{شB шnVζq.z4ҾJ6G+Hz3'!aؘ:oFJ );
+ PזyB0iU+ƒ yt+yaG;v6)i{yqX /5)T_*xNZ-4ZӊjoU/f?R(e71_3R(C|7d58R(yBMnZণ63%gcq :9rC7Qf9
+lQG,Z;r Vres<s-n!D/30 jEQ3'Za%Xаe6j8Ot7[:C09,+EnV EvsòX[.M@ 4"-!$v!DFI[ !B: !6Bw!~tq
+!6"}B!CR]7B??A,&x0XSa)P= FدwGt0Ю!YtA ֵ2D\tQS
endstream
endobj
1144 0 obj
@@ -4504,24 +4466,23 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R /F37 793 0 R /F40 876 0 R /F60 834 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1149 0 obj
-<< /Filter /FlateDecode /Length 4142 >>
-stream
-xڽ\Id9;K*mEb'|~/š^z G|䷿w޾|7ϼn_I&n3g:87~~~\~\q%?^Rb [i6Hm$5+>[+ӈ?F,/?݊x)G[JҜ4ʒNKU/-SjꥐkŞ<sO>ן/_gһc_oJKyLl" R:o)e̵ܑgV"s9o64%l =y6/bt@ ,y RY/
-A35)9iFTX,PFGp0-8#k8aJQ3R1Қ*%{ZAu˜S,m{`Gk\<b
-%>B[:(:_bÄYn:̹BY02JOgeg mɚol+h;ͶmG'H`${=)w2t: ~U;l6U Qcˑ!|q5}`lEm
-&:6q|b[6
-=zMG9up#ִ1>ph6/",3։&?xW(mV)' 1
-Sz&@VV}{'kFO]9H` 
-RҵBz4r Ü|ntF[~6М5Q7p
-ީ2/1 Lː"K,ЂҶ~f~jФ-TY­Bϊ *m ePz,[7N`HVhPi1XLq3$*ף$%[3YGD׻Ekr
-Ur"(!9vW1[~Ո$c<,jNH2攨獟y,0h?Hߜ]j}63H{{}hPA  cg96 ܨSL!h4tB2>7$|,-by+&R|mWU6y@2GǘVIɨdld 0SLkڌhe]D4iô 3+]j$ĜApJܒM5ll&7*W p  !+OaFlui;&ڍlis9E G1[^.)Cc'6I;;ֵs6^N+UEIRZy0³g"QOxʴwSΠ%NJP"Y}Uakhs0N19E?6~oD%OPѤ(oUMf/\0J VwL6
-\7pNy,|pIb >tpv=7Il_%Aa?̢yq^{7Ϳ cNO\AO@/=Z~2+u*=O)4>:渀BF6d]3J9bɍsیN=7K %:i0ݘD5HРcr߯Az[dB~l qOkZj붼i<>_Ӛ.abk3<6!
-3"
-%کV2iU%sJS
-2cؘzk/};3XMi_sʧ)Сwr' @k @30+Vuo$(אOH W?ًkcbw\#:/ռ'~2=Cϯ]rnڡ6٭Lc<@~je?'ߟ{DQ= '׏r5cq1-w/ˌ>>1qЯCIʃ](eq7#y`}9NB,.ǡDZ9q^.P݄ )>t
-ގt^\T0 O,I)10 xU:zitb]r?"vծ ^u~]'>°Pa|wq;xtzr\]d{Lߜg7g9l
-Z+b&EwPUJB5Jd(űc*왮eitp[,Hm]kSy]M74hly)}(`Z k@q}ilSmji+UÇX,obX{&\I"EwAdX?ղ|N7E.˄='Jb.фv5rz{AըO$]hfTrbF"ܮxݿ^6Qd }{D|s#emz>D =Dtnu)afVW.(I5DlW 癊H=aƱ /9
-̙82OU~)"p[:j{: -*rz"0;=|Uwi(m'=EVcZ*|g-JN
+<< /Filter /FlateDecode /Length 4146 >>
+stream
+xڽ\Id9;K*mEb'|~/š^z G|䷿w޾|7ϼn_I&n3g:87~~~\~\q%?^Rb [i6Hm$5+>[+ӈ?F,/?݊x)G[JҜ4ʒNKU/-SjꥐkŞ<sO>ן/_gһc_oJKyLl" R:o)e̵ܑgV"sG H|KVenW}Ix6C1c:Nt )ˬԙyG~K͜4C#\*F([#^#8nbhfMG7[t7
+x9BS*&UZwCZqtO?VbS~b c5h GYD\hYXKa0+֭@9wsYu<8
+y:Jwuq92<`o FO\mh/ WD1Olkc6a['Ti5NzĚ4N-%;#Xcf:g
+m*%4v$a: R0j#Z g[5`K 5r\%5Ņ5O(mht'XzQ+,
+_ZCVY9'+,ȉ"#X$Aq/pDJ^#I )dҦqe"X3iê :vh唼T%ѓ5QhWتh1>`I%(a2ez2`B
+==z=HUHq* uqHkJ'7EHy5Yx^HxW[Uf4 J0f6Ÿz(bLת'~fǸ(aIxvl=(wޑ>ia5' (@"׵!
+ -_(nvu~Yh6W3[BvT ʣ0􇕄ZC8\!8CNS+2
+x2R
+'I@%)I{ RF$QGmgQ,vhGm97D=ocfI1G5,,A6Rcݔﳙ䏜@Ebܓ;G2gp=8Y,NfaO`o|FB`IFS?_'荐 <'s[>g}nI(X0Z08V0MޥI)ld2S1F-)QVɀoap6ִ3>˺Dwui҆i˹fV2ՔI)~9%=$j&L
+j#iW:LAKE`ѫHikў3R}`&9LC0PkFOd]d M>Vdf`uql
+ŏ'Oy)*0#)@'hGOsSfU,:w :ĵQ zG)^7_RS2aN>x1KSco (``aacOe819?S)8Cy*PZ9k -ЍIZPӁ >&ZόDu
+`0z@jkozygz)O%C,l
+N8tyʮ<مRg.{~s8b1
+F?Jٗ$"rJ4MbCH58ΥKs 9r4i 뉡[ǚJ'%S+RiWxZ
+zN镊j_gLlN~R+ E*Fw7G''EUMdi xvs?J'95hO_ŕ] %7ŹRpj--nR~Q}W?_{)~T $QSD[;žZF'QL: ρЕ_f:$zCHOsVWه&:qv חvA =06ڪMBYU8|I5&Wnb%$2\tDS-tSLS|?.vMxnǙ[#7_ɨ[*zIҵh-IU!.f(jeE ǸL:ܿ~L77RЦ7샿-A$0#}@DfA\1fnu2T^kLV|%poгf;
endstream
endobj
1148 0 obj
@@ -4597,18 +4558,17 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F42 792 0 R /F66 1117 0 R /F34 637 0 R /F36 775 0 R /F39 935 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1162 0 obj
-<< /Filter /FlateDecode /Length 3700 >>
+<< /Filter /FlateDecode /Length 3696 >>
stream
xɎc>_c|40fgnOI%*-RA,^Ţ w/+|址/E\gڋq v# ʹQ[yFSe{>1
Ϝk ~TF8;b^~="WKgVfľ$I,IdƻiYAԧwX93 X`eqÅP:`sj(FMnB43iB
-%\7sKO e1C1.}Iys'{j_R/XuO0"Q3jDz B͕WV'u}KsS x7>-S2p>Qp_"Ӭ|}ޠks|8RpG5 _" yLIR2"yrF6-&ӧ[eXwZZ01vM2m[EIX;A6k,RCK=1<>Q>JP8r 8ƒU)YIR+mI[ h!qqNf2(Eި$u s|Q}Ȋ ɗu9 w[ }rK''DZy'AFȬE"rdwHIY z4bd6](0MG?8Sr"| HQ,ɶyVT 1"Wd;kF4ީw[AL$d`eqWiJwLjV9 E]ܽV$*?3 ܻ0ȣ+FnУA{iDBZRNC4Cd5E^ V2L^ET붢7$er7}bQ̫XIUcƌp&7 ![<:L@B=/uNBd72-&#31R\ 7<SC qIƝ!Ij$I:?-wBx7$+z=ݾ&hrI5iK2δ6]H(X.2,2JB*d
-B$
-AIŒMėnY&ϯf+5xsm9K`@t{\3D1SH2mAG2=eK5ϕ .-a8,<@0x&efn2VP]%q]Pdlx3&6)MP:x8A7ނHy쯍v^[~ƊY҆\S ŖA/I2}hoO fׯt| =)u ict`Д2*7Ja
-Ӂbz2QZˬ0:lZ-Gn)#zňљl8iJ}2E/| ]NZŻO"5)kEmZNt4:)璉?B$s,DA<,jb%3դ24 6IŸTB0Aţ[6HN*$>HG(iMFmZ陑fcb`@<0(+[K FgZ%Fͬs#^;ctdNOHH?^#P'|
-c' !7LL퉋*V&h!iwTg5:R5=Uͣ4Y4(ꯉ h7i+E ǂ.ݩ9
-ɨԟǻih"aR?1r.6eb1~ a,d>I؞ Ԛ0IINy]<~n#=v6C-FvrO*
-V_\bڤ{f
-_&jJ%{ Qgɩ{%c1]rvDźm2Nc.7eRO -!; Znlpa4^Κ"كЖ x4̺ճwЁgS{۝aKibi.l)y[8gQo97e<XXC$NNW|h~*' HZ7/Kޏ(җ.Eiyys^Fjٗ $х4 P]?Pj;Ҧn rqkK>;r|s%]ձUз֧;WNvΰN&ӈpk+^2+_lA &YJKDFx|
+%\7sKO e1C1.}Iys'{j_R/XuO0"Q3jDz B͕WV'u}KsS x7>-S2p>Qp_"Ӭ|}ޠks|8RpG5 _" yLIR2"yrF6-&ӧ[eXwZZ01vM2m[EIX;A6k,RCK=1<>Q>JP8r 8ƒU)YIR+mI[ h!qqNf2(Eި$u s|Q}Ȋ ɗu9 w[ }rK''DZy'AFȬE"rdwHIY z4bd6](0MG?8Sr"| HQ,ɶyVT 1"Wd;kF4ީw[AL$d`eqWiJwLjV9 E]ܽV$*?3 ܻ0ȣ+FnУA{iDBZRNC4Cd5E^ V2L^ET붢7$er7}bQ̫XIUcƌp&7 ![<:L@B=/u%0 \t) ņU)_r!ي`JLOmv$ N5$͈v|t<bnBT4״%bgZShЮ $tX,Kz`HILWb%!wCGi
+VKy .Y)G~#KLṔ:w\u0Z]$,F\~w?<4&!MhځԖg.0kv03ɍC+昞HŴu%2Z.5
+3byJ9ZnS
+%0Zyn _C=.[f_Vr )$V6 #{FFJl0i@L fi<2L37+e箎PP2kol&fn<\mwmoA$j<s;-?cE,iC)߅bˠ GB'3{:AS@>x j0hLcHqsZ0@Qa][(ke
+^|t%C#<õ&cF~<h2V)NTnw!ۑ$(EH9pr}C!+?㻽0̸|hUw{la6Y9
+ ^Ǫ0wM{=}o'8bRC7ɁtObyQP5-N̚Z/:盐ˈa}jΆ->!|J*3A8s;ŶXSz&~Hah$cOQJL?ahߔ Ť`  _m  bSa]AD"Ky**F<o
+Ua jt7=đks%~/~HMBAҧ@:ly. |[q
endstream
endobj
1161 0 obj
@@ -4633,7 +4593,7 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F36 775 0 R /F48 640 0 R /F34 637 0 R /F42 792 0 R /F59 833 0 R /F71 1164 0 R /F68 1166 0 R /F72 1167 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1171 0 obj
-<< /Filter /FlateDecode /Length 4896 >>
+<< /Filter /FlateDecode /Length 4894 >>
stream
x<9~ˣxfpd ?p(6Yd7l0 G*)xxޭ|Dv
?ȇzx)sOR)W)իH?c؊l{ZK6&}H]4_m/'Vkˡ!)k,K ~QʮFY`_O)+7 FDi:I3=
@@ -4650,16 +4610,13 @@ x<9~ˣxfpd ?p(6Yd7l0 G*)xxޭ|Dv
:&ȱqʺvd3Z>D0W䋇D|nA|J1=㣕yL
͞H)kϜI`)^W*+s%jݗiTӺɶ9^jo>v1:ŎZ PNԇ[>| <>kR}J@ZZ<PCCA_ vQDGSCW \`-86̥_艪\:{RUNS{wGgpc ]P}Yl(#
#mQ5v7(ä8ͼH&.
-?g̣B{ijEnzoMG҇_!s YY=OD&5A|K@%OQN%v -(ʀH1Awc`(t2#`*/|ypuP[ΏQaUf5 fg맰4* X,)9 ܽC-nݼKtS? F7~_GWyn#\@$SP 3,AbqTbno[" zc ڔ˚"GrB(G ~9
-tWsDn6X߉^ Dz|Ґ:'WJ^εϐX Fm&OgcOV^ѻB<W98E9b-}߳c=]wHt}j&1 +|M@
-}βUx4T+ ޴rmO~(NwOFo%}uY{w%zdsE #
-6CtWgkC7zB'X1<Ehŝ&$C? V/G5}Ixz92$Y
- nP-5VQb{|S__<.m
-z &|vݯ\Zc z13e,ig[
-\n׏{jZ<L:mUd/n_<n5aiڃ?aQvF,q8F#O/"-l+Wn /ęw6z*SYst:S8,}wRZ݊,ƅ.jBg FzK
-pfƪG_؆:UoN(Nne:SjFM]`.@:$Fckm\MD0AȞiPi__O1)i'hæ2ge$"VP6*\R7NEC_:5U(BJо%)ji#YYn]׿Nj}O.S\^^ֲG
-ãux-ЕuFԤ*ӥ]4KxUaĚ})ji1}YGSp 2セaH;-(W̅jz*8׉t.d+m6dGݺ1v
-jαS\r?FkUYhcNIwQ~2[ݫG+46#r\blzMRRq\DqG,-\ja(9q v.o[\z)(gQ7SSyYvI<(a/3 "t*w 4Fr'q6!~f5'R(k1 (^ Q,ThLri_~C#Ğk^ofSJ^: ;
+?g̣B{ijEnzoMG҇_!s YY=OD&5A|K@%OQN%v -(ʀH1Awc`(t 0><zQ(-lfQ¨Gհ*{`mtOֳSX zr}
+oK{yv.|M%,D cf^iwÓ.9 Ϗp LA4{SQEͿmS. V_l_WJDkS.kW ͣ<@vg?Dg'(8] zc}'z58S;GIC"fS|H\i~(9{;>CJSc1Lyz'>u<]2rb[yYF
+2^<S刵hK}Ϯrt!Ā67GG쳨
+:E荱|6C>i[(lr~ӿ_?ªi2]We}utWD3/֔ii\Eiq>ch<?Jⷰb\t
+|vʿgqLeLoݵû3Ji9t+VoyL
+m39@o/y+™i* cYt~aV߇:E{ԋ8?%{@N1o<5YtR
++=O*"Cڗ[;䦨]H\pgeɶu]:}7?پLIskzM{ůbZ* v},^㵬BWr 0=_SLv,Uk8Ŝcedr~M6ȼ"pZ4_1f_'vӹlQ`ڠړauΊ)i':NqfF{'zMqHWu`fIKY:%V+yG%luex܎gq]6H_KqQ|ﳴp{Oƭˏ2عm-χsDL{ <[k\F(OMe!ډ&{G`ˇOJf,$w ө ̧',ӬFBM?ۄ^ٛՠxJ<uf$x}2G^cS?0ɥ}3_qNct\\{{LM)qz0(|
endstream
endobj
1170 0 obj
@@ -4675,7 +4632,7 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F42 792 0 R /F48 640 0 R /F73 1173 0 R /F34 637 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1176 0 obj
-<< /Filter /FlateDecode /Length 4662 >>
+<< /Filter /FlateDecode /Length 4661 >>
stream
xڵ<;$ Vփz1pgpQU*jft(R$E%??kio_9cy%//9W?8okŹq[ߔRBK|{f OSOwfZz& {]x7#^Z@z@qɴ^Lzg`/ևOYxW9c;v$>aKW%o#__V0jK{x! {q Zg@ߥҏ{ZoV1)2( ~O~'&<3SZwzZ@_~.S.Cs^( iN/"* }As$H^xpyxLR flĤ:
3eQuğ(9 QR1YUJ5rL q2XLwlE "44Y@h*ͳme[ێUjB~}UݲٳUo[5Gd.w$03ErnkfA%u6<E:&ӓH׾)`HqBKVõ!kn㠁g%Ì}M-Ď4wV|Rƚs,)c6ũI lԆQo4{SKxyrS5#7ްЕz) Ud 8hOW΄iK+fcִz`^!%\cp
@@ -4685,18 +4642,20 @@ xڵ<;$ Vփz1pgpQU*jft(R$E%??ki
tE-:ښf=g!:d{\'ua /ȭQ}۾bZ!_҂k<(7wxNz2mȃZdT!d
= >YZ'D?ŷ@
wfgƧ5sg>3|1:۸kjCf.qb/J\77JT6>WW>[,j40L}5hmY mĒ"FQU:&p-jE;CqF=p w*R3;8o};!As&$l< z f$3vhuۘzYc(PՕhgrӁ8y1k!Lpw@DE4_hۍAϺ"PG"L51*8jޙh[dgVѩb
-;eVQsi@+e0uh`Fh1:XC 0۲o
-2sdӯ\&4^eߢ:6C f H(G)>uBӓ\K2i&WjЬ"c1@$]2-ON-q"=(q)kHX
-lruTRmPSܨ K"l/(%vLB`*$PRR,*HF|KSr by >fgZՔK2ӈj_4 @er*hٕ~u)av;z]j!&obgw1WݔCP~:@+۳Ӯ2'D։+t [a MjA\a|LpoRLEi)PR]O9cbƑ:H ƙ>~-49g:O@cHmW9d~L%dh JwCÚP>
-]pp^23 dae<0F_Q{k5$о*.h#;bGRp"~)WJfqt(x&̫,̀
-SMLz{3s),J_[MBm!2}r8b1S sٗ/aįgK'k* śC^ GOm }w;w>*ꁎSdǣ@/'K%G#4ӝ,κW6*4>)'#\p>/TO&\LXiÏ|M9u0<#2Ex{>-ѽ؝-;zaȝk!/(PEdc-roS.j@À:GATˤ*aa<_k2њj 5C^cEZ:RvUF&L-!ju }:KI@!N՗jדVzeݧ10l{01o\
-4V6gF:(6s
-ڋj)BXeF^[/&}š8}\6^af8ƌzD7n҅*ۣ\Gsi##w|/r5^9q繿Iϙg<9Цe
-Xyvm SMB1
-%z65k,'a C\晳`;~( u[w'h\۴>03 en%^ރ
-%\帛`lIm
--ccrM1f|[soKQ`w* _)39@W+{_t8u9Iߞy4yp{%Y_._QJ̞\Y˄٥±6'X7se\
-Qs ??ޚ
+;eVQsi@+e0uh`Fh1:XC 0۲o
+d31gV{I+ZjTGÍYKe0NshrJF
+(T@֟\*lP݁t;%3$eC UE-K1g$ݧ֍`#cmzu0z`O ?z8
+ t9eW.G2no|w^
+Gҡ3NS$d#:mI%Z4Y5thVNtʱ\ V.'ظiVŔwc}aFn9źYp6)ncHEB q&@!0g\WVKM)L$~h#>ǀb9ۅ]1<Wf3-j%CQiDrg 2EO9o ÈJYJܔ0@q.7+n!(?BiWao"DB:m0&F@ 0>&7)"4Ȕ}()ٮX1MȃtgaLv3j1v|{f?Y&⒏lFC!ZaM(\pNjEbMԮ#ˎ3s?)LCsY1W(%/+4}VO% +M
+TKF=U~d;J Kem1M|<7פ,x8
+08g5iB6̤3dl~BwnC;~ee4BeW<k9ei+ bWk`*Qbbj25^^Y!n_;ᢜKKI,ɪי5-jY?Á]8T8/Jd]x~w2E2p=5L`nh_\4Y`ʑq1D
+Q#)8 ?`+EPbz 3H8e<
+TUm{v Wf~
+ǥ5ͅPAxࣧ>Ļǝ;Pp@)2Qa#ONOqg݌+wCb\[x[g.`N*C'p.W &,4GUǦ[u机qC"=^N͖~c0ѵx("nWj97)}ZY}zajp }e 0ĵ XhMN5d!^/?u-}^e*#Wͺ>^i^mK뉌I=HފG=NW}RKۘ7].+
+ 3FK#v9_CFN!NBq#/xPyUD\OAM03cF=XBBQϣ9ʹ;
+V@IS~QĞF
+n=^(j"D2hM}z;dSdx^5R%UiO}-Pf>Y_4$0<M:8T<a &cP@mawg=`;NnXun76ao. Q9UFL(:IѨ!'37=-]]i*tj&PځܻRkGrY=x/V-ٓz,mmy=J%1%"ta(<slRw!nd kPw~Zu֓zc'ff4̭ {'b­q9q}Î.ԧ#v! ;8| /'*fWӜqjʟ5==Ew-7
+}N%+e<gWvequOg.4'_:3c<;>&O.{$Kb+*^s+kv
endstream
endobj
1175 0 obj
@@ -4712,18 +4671,15 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R /F42 792 0 R /F60 834 0 R /F39 935 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1180 0 obj
-<< /Filter /FlateDecode /Length 1442 >>
+<< /Filter /FlateDecode /Length 1447 >>
stream
xYKs#'W19@ TTIVǷ=%ٽć%?<`FGuewxt " ^s> (%,~RZJyFYpq9ԋG) u:XFc3<*v-Pmkc$i2KZf,lK &mle k>{KGtX-z$t~]蝕idSiRh
-CoLJCL8Ƨ׼e4,r[&R
-jJ`1T͑e$!ZJ!dX _ -8LapMlA"3mRsbpZ*RRm}6vJ[ o2 ʖ[@Ne
-W
-H:~F/t^ 5N:kI
-@Io\0\c(oSHpT?$/һܲ.e`XOqV$x-FϚpO=%Uʰ$D a6/Joqo
-2o5Wj󢠇\b7+lDp-2`{sL89*[=5% XE-Z(FCuPb
-:D
-|?lnt5.UIZǶ̞޽#E-U )BRf,!`thFły31͏ح!&Y!YaʷTTlJI}DbPtN% YT¡P8dthM9
-G4)X"?èO'x1,:CmRk"~0}d=R=(cs L~l7)sPLʼn<{/z&rIC_4*
+CoLJC 2)5o0 ܖ
+7Th4=~?<چP/
+E~m9+lvC x5Bhőj#]#3m#5 wwE҇k՘rM\8(qu]14erLNeoS)RCS@GgЋ?B8$uK8FBqN"(yhRBoPW&d`$W
+WiSHpT?$/һܲ.e`XOqV$x-Yā|K_R KBi a֠ V{y6/
+zxϥ?-apCFM y"ƽgI8S\JSYQ2n:5b:TGI! %FwhIs"r̦<eWϸEf#rkax
+VwVWkq]wc(Vc4WDs6ǒz`Fq|qF^3Z.Rula}M;R[dޢ\%8*!eƂO9lڻ\,w?3b|KEJPfTGT*VEY !1J%</ C&J֔3JytM%3O8XJzb܏ˢC1&vi0*|G)yS267q&}RQ97 D]γgg"wl4Y_
endstream
endobj
1179 0 obj
@@ -4736,27 +4692,20 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F48 640 0 R /F36 775 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1185 0 obj
-<< /Filter /FlateDecode /Length 2831 >>
-stream
-x\Kϯ>,CV ,pϸ gnONK~/9ޝ03*~R/9>//3Aǃ;|j=i ^>M~~'Ε\;?~@ E{紷d˔yom;Υ~D1-HY>$6^܄\TFMn \ɬlJr`´(V ?=;<qN ~B$H a5nq$_:cN"Pڋ~d-b::&` Z8a)"[4LrWQ_GH\+&/`?Lfn֎Y%k<RZfA3,(B0J(K53Biη@YP셲aP%*wurt#\_ }vԌ+\18
-d].WX& DØ &]"S
-'1<(X . s"2XQ J1iM 
-5YJ%6Μxl%s)Cs kWՊJOx@SЧ
-xIW맼\߱Li"HczM]
-?љf}j trDzns)*;~CZe:&}.Ɛ#`[/0rx/_ 3?iEVWy/h ^P)Š5'K;˒ SP. ޅ'(N19y\3^}I%l.1 i$,z0 c2IY1!OiM
- FhУ'Ŗ7+t4-1y[ U6.l
-[(5 K$&Izٺ(]w]V*ڎ-lnT& ElUJ*"ulpDr]'h%Rr=-YUf=j'IEq`ԳjAԆWZnM=Ώ{Am}%%{J[JPϨ{S>DTP'W"JP.!3O.wKZ%jp_VmU?R"\|ƪgU?s`CUG僃RU?L߷W¶U=U\ց@OW+X?O+&) ʼ1 }f)Y5 RěݮJERdN4/K)_+$ؔR{>uiW4SBd,n#.4*TdHp Z$%~oL;h7
-en}#7{@骶Kd1p^FUՎG\]Yy6+Q<7ԖK8 h_ÄÞ \2F$QR=
-sC!j+ !d!GiJ5y]lrjYGkIBuճBϥbz;?Άº0C
->F&3xfo( !UlV:[W| w%`&M
-|Tn>,h_¾rW%n5kn (bpSE>V
-
-Mx4d}:<Ds-frKDv>Zu()S+NȮ߉^闼,)gЕ,ͲjVIu7rs4EcKTٖ;s>Ri5QdR9VB0BG"\Oc#4N! kdNdܚ|Pq?aܛN~RO%ÍqTvd=֧!TX'6Ugږ6*bJpD<Ss헟hr6E]ec|~R\69zIj
-ԫxXTma|UBaw `ٵ#4.`7~SS:49zщfLC+`dB[
-+C:M˛Df|&%3L[gjJv}i7(:}3wkĊvz.0َǠvZ??mdeA[;0w
-D]^XE2y9_TU
-R1d [= _.isn9F8Wi_v,~z󈹥7b.WuB'k+F-@#<Bo<T1ij2}YPqW6a.07<q\15anxy '-L'Oߢ=f!w&
-'?a sJ焹 0WM0a@4O_hy
+<< /Filter /FlateDecode /Length 2830 >>
+stream
+x\Ko6WKV 8@n-)I9l.HJ-z̡vKdzWͧ?&>xo('LkP0~'
+d8ZOCO/GsȹkGhݡ/tX`R6탓~()-?F^8&|.UJ%n0嚝$&La/wm A r/҅막3tv_$2%~􏻿qFLq_$̍NS;4h!gn
+1L2D
+Px@])i֧I'~Z(K:rR˹7uLQS I+Cm)bJ;h fz¯-GXU彠%xA/ +֜,$/K._ry]@h OaQc8ST'^g|}&,NܯeL#a_5'˅IpFÔMzΪݏ |J(nkWP\0jE ΀n==)Y15o)5LO
+mhծʶtaeY@AQk +SZ<lكӂ_Gz6L+SzHm/9E'ʗgJ}i,ޮ K n(SllJք&$`+/DCֵhEYs"RA<vwoIgs2i(bõRR%e{XU$:DE()ՔiJ"0]nQ;I**{UGP ڽ6Ԓ-@$tkYu~ j+A- TrrWzFůߛ!<uQBBPEzqxrDY_,[^WWk13V oU;#PEU?*ė4eUUخ~ʧZRmUJWՏ]UK<c2g^󰂿Z#,9%˶;R
+ZCx6U)"hY)ufeZ!ŦALcp%$\eqp|U5%CB H")|;`gz%9GS:jpǴA
+W3)2F
+v(B
+H)l!uԄa˜\dPiEN ;
+5L8˵a9pߊ-nTM%C<@:7(ּBvrF\ŖX+ƘuV[L$YW=ˡ-T+}l㾱l( XK0
+OZĺk~˒z
+],\n_dYW~#07ASd1fTMm2'̱1eVS5QH IS1G*z@]z4_~ ntH9&
endstream
endobj
1184 0 obj
@@ -4772,15 +4721,22 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F42 792 0 R /F50 687 0 R /F15 639 0 R /F36 775 0 R /F55 774 0 R /F37 793 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1189 0 obj
-<< /Filter /FlateDecode /Length 1194 >>
+<< /Filter /FlateDecode /Length 1197 >>
stream
xXMo7 б9XHȭoANmͥHhoxR"Hqp|<|rFE烕FYʇ ț'1pg 7qh  "Ynoo3Ɛ˲t_e.Dزcmݽ3~zSƃGm9OXRv ĨvE˺)-g&v#-]m
-)ʈ^}&Vɾ<3&ON#T oχ_Ny:8)Mbk
-]Q
-;}ĆI;3q3eNVI0sڧV..Dh;k5
-}
-Lc3TڱcZ9ieZ`aP Qh#$4 >^/@>DVa$YrwQ{D2o0]f܀c#sWyo`*%M22{*ccAyi# s̅ gTv*H(?D!&{ޣ?!g&:^/roƈ}C)pn|dat僦@'YC)-bPvOPhnr,"V$1A/Q ,"͖=K3u^?:Jt~f,ch zx,gzo%'kqyRv3dơUݴJ$з/'iqSu)1i7߸Og.JNP0,Q0Kr6zȟ}4vwѻ`ppBaXIs/8B+8/c [:^4&FęMƜf5 sVD7ȥ\ E؂\/KT/^\NunB́v #ʹ
-mm'nm+nK9xU8Y*\UU4iVHBaV]^U)* ^ν^2&`hKyw^֘i $0XZkb
+)ʈ^}&Vɾ<3&ON#T oχ_Ny:8)Mbk
+`AeTw@3 #Mvgf+˜Mߓ `pO2]]v<j!kIufc
+Ls/làAf5
+GHh
+Njڧ*6$UÓvc:jH ˌpvd*O LT6I&\fOe|l^{,(:/MUu!ys
+1ԮX%iB4=<դv{'DYB'e:BNxMv(%C=M񘏬7α|
+[ SE
+$3:
+Q%]rV'tS]<bY{iG!`RQہO_V`%]{ r\%Lcmd .O@.s84jV 62$m?nJ.%f9r`…V‰R
+%
+fPUO.z7 NȠ0l+i }GBhc}lt+SNjDhИ8ӸɘլƘa|*ChT"\y#[ +qŋ˩ UM9naDVMB$b xU4jg:k[뷊sW&23
+I(*\+2E>ҹ׋}B mv2΋}t4?d
+=
endstream
endobj
1188 0 obj
@@ -4801,12 +4757,12 @@ dNIQjv*yvOKKjf 58buUjӈEd0ڳ.DjT:U=5
(dF-1܇~:m
,O˒1W6
Wia&e込ܢ)T~xeL[v8~ӫASVT2o%ğ'zSP wI>=@b)*8S; P"Ue{{gpHuɨҞ9vnޝk>D$ԯ15o@
-t-0:ڗXJQ
+t-0:ڗXJQ
+a3;/qTZ=$ؘG֨krvFWMpBֶu`16о'#⒙dd DӬ@DtHvQˇU\hCCjsg:VF~bll-Xh!+jChz>saԝ{G 80^FscXr֧:@_vܣ*m%[SIna\)|eK;}Ľ'\G{IUZF3wB/-ǵC0j^vz<95IhC0՝$6{P3%v<
=?8a:@F>>pVm"sU o-uuʰM9[pt:)L SXBT)ű}66gB}ҏCpV-+A gHoxNz}қNzsқ'%G&r(=߶&':++?)i_BzWʈ݉J4nVm#Q c{~DA FE
-`QP(%q3Q"JOP8uOn,R43HFK)ߍӔm&ff5jFL }vdr H FE5Nv"́k?׃Sy͘]W95;r NA EiFh_ qAєZCL^gNZ?L"lk-(CИF9kyPy?Sy%k`C}}J$VbW^ИLL?≂ZwFmNPn^&ӱ_䃼}TV!|{X`EcݫJ%fI7ك $͚_4d $NWYcªʳH C I3A&56g>~:6#(hWi柸"Wvo;U=!MVǮ[~:DMoFQUqKd"96 ' = ^oc}`CdcAh#_N
-qQKNL{fx|qbҴ!rF
-§Đ$0ȘmXmԧ<^{@&2eyJ瑶Z5“b}\˯Bs? ]Z.
-<8!Nեdf4=y|x:xfck<O/3JB"dB1f̦X"H؄b യf}.w 1qK>F%;sgO}.hX\2WA-![.0;%c iz;/{pz?ǣΌ=VRz|1HODБSC_SZaոvmi ? ;btc\a'F6SIG.z /$-
+`QP(%q3Q"JOP8uOn,R43HFK)ߍӔm&ff5jFL }vdr H FE5Nv"́k?׃Sy͘]W95;r NA EiFh_ qAєZCL^gNZ?L"lk-(CИF9kyPy?Sy%k`C}}J$VbW^ИLL?≂ZwFmNPn^&ӱ_䃼}TV!|{X`EcݫJ%fI7ك $͚_4d $NWYcªʳH C I3A&56g>~:6#(hWi柸"Wvo;U=!MVǮ[~:DMoFQUqKd"96 ' = ^oc}`CdcAh#_N
+89| 0BQ3X@OZlC+׫5΋ Kgf.GLJ!,M"g` zjC16 =9io8fC<jwN֝NUI%8 7 յB& ѽk.Z;YLW5ymRjgwi;O־{Ɍuxot1lJܜhqxb)*\TTm*~…<}XV/'{'hΥmnH ?u$8Z=,IpF^ F$ߦ
+ ; ͷjdn@?B:굟URvfNuPia}Y9m5x
endstream
endobj
1193 0 obj
@@ -4833,20 +4789,22 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F42 792 0 R /F50 687 0 R /F55 774 0 R /F36 775 0 R /F59 833 0 R /F39 935 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1199 0 obj
-<< /Filter /FlateDecode /Length 3211 >>
+<< /Filter /FlateDecode /Length 3214 >>
stream
xڵ[IWQB d7=O
†pퟗ_1~g&:@xC25(^8`G©q0
-at
?,D
-`AaDDN@G@66QS>yeR֨~Q#`a0WKIGfM<( y^͎6 cH[C<h(j'Q V=} p`<>U9FCU'՚MW}<ZY^l[qV+ 9j[&)".@"= Sx2#op Y^vQBV,8jEoA2Z:ǟ?lK
- yU58L*CѨ({g4| #(`{ ODq7,Ǎ='Q<q0]Q<nZ?sA7G Q!;G2,c_♂s(gDx gnE|3-_Gx(޲( obeJ{zPu!P=κaIݼkTxe$4~Dpmj5oJș;< Um EUJ X:>J<) #S94"Hťs|0:UU5B媥S ̛ Ta }Mܕ A+wZe}Ϛm#8fbQZ) Rv5xq66YVuv/c!dn2"W9Q^ĸF=F[G#B/PU1Ag<eD;IJ)}/<
-RN="p箮8!j|DQF@9/-4b,Br
-SZ3+[qHO=c͛1AI׺mU͡>4H,[٠{j9='CV>SitXޟճ?hAeJףG! B}qE}"LWx[9dzl1ae C,~jFIj'ϓ?"49qx֬΂1ۭd7̳su/UJmf_?eYsꕝHM3[$C:!Jy͵õ6ud7vWziaHϛqI,\6^dCtVŭeQy>^(([.˲Oev7ק<)wϫz2=8nk*T-V_ϑl_^1YT8s63T␂“.n :gPb%k4wNk؋7n;^er
-8Nus!7"*+c99bYt} jlݬ@*=rUj!壝t|7솨^V Œe(k"^VrM~VumC%:B*}Fʀpgl|J5,fEI!CGx@ aq'pЬL-Rv{*i[-
-6>n&8#e3BSxx\M7͌dTqbU&w^ۂlI<NyOfjMy}Lt=$V*x++?5ܧZ:uj`]<-q5ztYeX yµ8ʠK#ǝip\&(Eu&AX
-^zI+DN>Oon*<T_2pZٗy
-ű如2G9i+${9)=Ѱ+9:oshn) 8%  d>;s+W
+ !/"!"|GG@66QS>yeR֨~Q#`a0dqx%㓎^5y1QnfGRt1~T4(u+qKuJ8sgo0E|x#tMW!ߪjͦ+>,x/bu
+ZQj4yPM8Owaoې9y{m´ZOfVDZV.g}
+.?DAG`S<_0yKCr޾f(ס׿㷣L_{qCnlx3Y%gׇG9=n~d˾gVKp7aShho 7 e¼eTiTڜFF;<[~&Ϥag,'x<{(NA[x$YgQ<n(8ۇQ|qע 7,9m
+yǼ#()8~IO"ΡxQ?7x(~-ob:(?[$wP UwU{d HǑ;ZFRnO#GQߊ전 3i8(9ZeݖQP}PT5#ē;!
+92CփjBdeS_EL։鲰[aH`4> ?@5^eT3ּtxvZCIJH. zR>,oYc<?FY یQ=T{;^}=p ,XigZDg,"t%^Ga1>X*yp<vV0Ēꧦa4vR<#K3#g:,8@kJv<;'XRffE}S0^ىԱ y|<EK8wҨto`\;1\{hSGvql'y>wvLiK6! OgUZ㵉B1,Tv`{}y}ʓr詇(ӃcKVfL%NiΘݲhJ0j3C%{{.)(<so}Fy]!f^FC.|W*Խ6z^ xFZ[cY& T7HZb]~s(2S .FxE'͠6
+Ѓ(Wn(:
+.ȿbI
+m\g_ں/
+L*k}c٭E6gyi]8{+#XTgSOQ,-77=#gsOpSۧ#CwgꇎP^MI Ԗ ߲zUs˫
+ mدJ(vBxS Q/5}JOI׻3 [ԉŨFjpԻ ٗE~o%99GvZR+.NGbt`VX>_;SUnVTϫsJ<n5jF2hRjT4 <2NVsNrwq+)'s}/u-o[QuR^mC>[?M8W/?O{ |<Nȝ BnkA>]&+y %P-:ͬ集rʝC#ߎoܒiZ<>fuJ܎dZ lBLތ`դܽnRt0Ro#rԢPjhDpɗ6V6H#ʌ4ą%e4Z v[գv1M T8|Y}w {!5xqV:]j83x:,ѽ>c6}FZ8fj4|pQx1C
endstream
endobj
1198 0 obj
@@ -4859,7 +4817,7 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F55 774 0 R /F39 935 0 R /F36 775 0 R /F48 640 0 R /F42 792 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1203 0 obj
-<< /Filter /FlateDecode /Length 3375 >>
+<< /Filter /FlateDecode /Length 3377 >>
stream
x\9\Wt D lo̶F66`v}<65:YUOۍ?>$ހ3A?^of8Zߴ&}zs̹|p.~\!wOIE#~sZ`R6-5HѦ5C;]Os$cVq 4n9 'r(D+$m0 %=wZN}H?{a-
aXex\ďbҤ ~Y?? 
@@ -4869,14 +4827,13 @@ O SD{~yw@[[#%8jM!SXGKX| ä̻#оy Ww\
Rb}ê -2<TSe"USY;#Oi9#["/ҽ<!Ebcױ>%IP<K݅Βx)4#6櫇L֣pA(K{5 LԥF
9ʕFy T#]FR8<m`\&Eގ~kGLlB+#NjIj"HƍߥuR|BP\0!L
=Iil6w#6Ten2ip=؇,f@
-c9#,pQv] jlsSWZ:%<+m`1 w?;ePGT5 L9{{ 1N`ڊ3AmV5ۿ]xv݂8eM6T6^"n[n%B2W˙A>Ѻ|˭ACڿ1 Jn=?}yȩt o__~~;|L_ +CRΔ!B!5nI-YF<NaS&۾{Fn(úAHgT/Br0:C!lLiUF_v56}
-rc4N9>73{T6GJÄH0ᬳѫi⸾FIfSG30mah(:SN,5J=R<PvMa_( )͠45qcf5Io|ɜA4rՎ[,$Ó+s.$ƶK6jc"(+G뼮
-#m9\؄R YmV> 5ΐ (&$ھ
-fтRISW#s^׹)""8,Qޕ% Ŝ+ẘ 5 PkЅ!1LؙTϭ^I{`ݵ-S
-_p$
-&D%ŒL3j&S6oj"U!v>ܛc>5'i,^ 1W_)Č_ 1!f !cZ%] 1+"3P`Y5WB̂9Č^1+R9ĬȔB@艽JL5:rw;}nec#P@v#Hg,(a`!8$-ˁrn$?L
-L#,oVT+9O_XlU{{W摫Q;~ipOy7 ܒyF!qԚ\W1pC9`!n
-'A+qPD@[
+c9#,pQv] jlsSWZ:%<+m`1 w?;ePGT5 L9{{ 1N`ڊ3AmV5ۿ]xv݂8eM6T6^"n[n%B2W˙A>Ѻ|˭ACڿ1 Jn=?}yȩt o__~~;|L_ +CRΔ!B!5nI-YF<Na)f ~m=\#@SYi7a `FN!
+9 c6|g#/;ˌry; hd`T 'ޙ=r #C̀atN $pUx4pq\_zr`$ #unakSj0 )xm'mcpb1O!԰zSzs=J#E7jJs3'42F qYd6F_2eDdP;pVj8#J\0 ,7 9ҫخ<GF:+lI/1sv1Dj4Yb3}aQm^D_Xt歈xorv[f`͑!}|&? l|_k(i&q4`)Z2}Q%Yg2=&}D!BӶcCa#ybBJ')sL3rpbTCYF5  }Q53`{6N[p[ɉ KSd6禇~蛍`ӴYR35=k|6\_mLG
+V0
+.pc;ASm /br]%#xk߭⾰Tjs7Z7FtӳjP6=ƂCzpCh/Kbp" 7z!T$$ G&P؀*lN?>Qg[}6-s/'>?k#@{j4+aۼF6 W)V
+l$Kw/r| H1'b&qBnMB
+1BL;b}cbFIC̊) ?bD!f+ a1C̊T!Ĭ9j1+23zbSb͠Af,iHf!Ԥ1Pvu~@裡R8 5!nX5,brj-\ AR3JqnI6\KR)EI <CD">I{w^Q?J TkD%-hɬ;N=k_?hH(˸o?&5dݹI8SJg[fH&v Nx~Z3bjs[ZCBB!2fEOY.F?e 1zEwՆpD|{F6~~s7Jalo4$߾g׾/|MђpzD)bktQڸZzU+T+6΁wXy-Azm4WrR9byHRuԣn
+&cHCl;ZΜ*Ӕl=_{m {sHhhlB9f\$/14pnvry쏓3JUto9\e֦XfDBQ>˰h>_3$ ;ES#?^
endstream
endobj
1202 0 obj
@@ -4895,12 +4852,12 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F42 792 0 R /F50 687 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1207 0 obj
-<< /Filter /FlateDecode /Length 751 >>
+<< /Filter /FlateDecode /Length 752 >>
stream
-xڭW;o0+4C:. S>fhD{dS<}HWX}쎛*A]u!{U!z_
-oaQ`u.iAԹ'egj 8e֭.3/l`a.f Nn=Yd\p^QND:Y!bdKMmeUș ?A~<h  Rvk)
->Ud}˔faq5,+r+q/o۷z3dJ)J65rh}PNO{4K*\%)
-Ol?,Sg[.Po|Rmv]1P:UM;htq͖50{),.HR ԵO۲us;
+xڭWn@,“QdpDA .&Y^&(Z*JμcX}7oɳmC
+1=y!{DCD?VDlcuvGT멟붏\B+"B-k{,F&(oE9LM YHVrxwyx_$o=R'T
+E
+&CXϭrO)rjlcj(4 ҪyFYH<$Ա< d Q7?ޜԃ٭LPj#zdс蘦]x!k|Ki
endstream
endobj
1206 0 obj
@@ -4913,17 +4870,18 @@ endobj
<< /Font << /F50 687 0 R /F58 798 0 R /F15 639 0 R /F48 640 0 R /F55 774 0 R /F42 792 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1211 0 obj
-<< /Filter /FlateDecode /Length 2740 >>
+<< /Filter /FlateDecode /Length 2752 >>
stream
-x[Kϯ1>,C`흴)
-DhnMnYC@jMqsU_߉~jjDIAw*E(**/֝% Ayr!c=}Is)1q]&g>3J_wRO$lH鬟~< b} ULPHj+q\2=xQvM#k ""Sro><SRIheD/ݗ瓨$fT"Ze^yqZJj)+Mx^$`;+P<Q!@c
-VDBvteH63R-/ٍׅlP2IƋKm VggE줤|A["4<u ."d\RR(=Kd)CcIjY RCs [I-DzLigdRiMEx񞲖e46P%PR-jl%,_ڰ,
-R%;S.&VBSQWL2b դ63
-gYrzfu2ݴ< 8ajܢHõedL Gu(Z%eF=ҖU26an!gӤxKߦ%(ڔ(-q,m pnE]LZc>vx?4JXdjQ+Ił.H _`JMrR짿ԥ]\j x9ȪiչU(GҼđTWw[
-kps)9|p8svIL۹\´'v=R
-Kf+ \0ٽ8pcf}IHR -BgǣhM zw}:YZ}4Z;)(6߇kqn!z Qz%3Pi CXw
-d,R8NAyBPAv38Hw%Rmg`/" Ǿb~fdǺ^py{ܰn=rx=-ZPƌl߁-u[ikpQ#v:x&LMo*Y{:Uz3Rl F:|N;f:Yf@;k^%iJ-POH?|s8}HQCZä>i[}߃9
-# d* Lo"DUT׆)û#<v̊hz*!&蠊[ ԯG#B,BBaB,˷}kX-r
+x[Ko#W= C/00G -{JI!{OQlM=n39ؒZd=?byAO `ۃoAڃ _Rꓔꋔ>ʧOa'|"Nlϲ ɶYR"P"Tr^(4ׅ^6 P P+)<KCʼn?^)U](16H|B9f=>)U1YKi<.>P'6[y賤hMRʷ %6T]4aMoF Iq:ur ETc 99itKNRnqʱ$$.҈l+Ӈ~}WoA
+ih=/+v@Е"O)M+:NIT2,d򨊦iirYM&@ !0#bTIrVJ$~6lbPExHUTj57XչCJk/mB<<0 hna El r,&.o
+֓<Sj4 hzoJPAJ&)_.~ xr7YJڤWT_gB_vsC&Qr-2G=$4T_tU",LʉX26EJhT8NΚ$R]}}!bf;\Bb,
+WKKݺB5<iJbZѯdtk%@j0-ҋ_JO+oYND28HO&c;k*[kc32;%`ְ/˾m.FB-x2DʲTdeVVGWh0#j!1xXyXoy2ykMEEmil:4]H$QՔ:ڱ"6CNXV&.!fVΒJSh.,PhU[F8F{RQMސjpVWM ބH˯4z6ɾ-dqj_OEQB;80Pǹ'/K'@6/i}9OM5%`ؔ4F׶jt*>tr}__;K<@]OR:nrBRiCTcUo0,0xar:RGwxlP/{ =Y벅U]*O\#`m^HW2w[
+vSYed,?t&`0= ]uVy&~ˎK{}mvZ# -7^R=' ?F^VC axMqPc=C*mnbkōH ;aqm`%qP}6HalrRTX9T:+W r Aoo`iZשWk,l
+=("5P%ZK<#pV%)T:f@X׏}wi;z?k.s2^tm5%ʸWB#nsbݙq+[wmCALu
+=)ĭjkl\?f+KUTw3$vʍRgm`"ju6wml{iĉַX W*{
+0hhz1 a'l檭: p9
+vdD0401l]^&<nZ.DkhުB
+O={S'Í]$App Ry!2l3A/6wb f6?3wdƃ;2oodl}33eCm.xtgf<xf|Cf!3!3m@df<}}{1c"s2x/W?2{ #3FCU3V@
endstream
endobj
1210 0 obj
@@ -4945,22 +4903,17 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F50 687 0 R /F42 792 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1215 0 obj
-<< /Filter /FlateDecode /Length 3095 >>
-stream
-x\Kϯh̐70 - H d%?_Z""գf{F-^_f"/}ç?js!)#KO>)#/]\ ||YJUJ)EMx/joq_Z>xi֦ emZCZ]Y%[>w΢Y͒MؔL à]#7XK򘲗(#g6Lx5A\HnMWdsҦR~sdM~G=_(;o_xMO uAh!.%6륌D㳇l8i' XY]VSvJF
-Ǯ55NuJ2[䥢8+IJ )ww Ud~RSB!<wMD6$0NM>ф,QZ4>#/kZŒp37qLKHg3b-HlHa먗ވ([u\Sc6d7\2,4դkJ(@]u=E'\<)0]^T:| o,2[PSϮDЬX{$"P
-Y-x4Ѻ@~T)+6U4w8^%/*jgF”2E;׻1wDJ?⍟ptgI-ߗ<I
-< R_Hm\{))DsSqt
-v:Z 8t_ xC
-ܶ
-kGEt[[pP:Lvr%W맺F
-ov- ƸJszfȩyh^KVkQ L1l1jG_jw1.Z\geQt01s-lze΍˝$Csbdi]p><Cṯ:JJ^1ҵ#0uF!]6q@ sHdl<tGǜ)dVq
-6dt>v+pCtBłUhʤ5F Cu0~\%6unMƁLP8PKG:յ4ͪ~jGTET}՛ S+B-H̟\lك l#Ǿ)dQRO ¹#DFP|'ԥGD&V%ZoFy04gM:Rh^u_"nKw7Wl7)NݘS4W%F|jغ;`(":Ef |d#%
-ՍXU,{ظ(Z<HZ>=Gl07Jg|T
-mN ׺eOQ)]fP
-CCЯqeQ\-/zW}Mtv! #OuO:: ǵSz"OsZd糭 xS9HxIm gu*[uP3J䯃1O*ިUSp,47)NP|xءVNߠ8igCqbS'۳-flKqz!Mc0I뵖]=y#'6l)Gq:LgJP6қDb0yMTi37Lc%C6[Nm|\k~zpF^KR7FjDSJ'yO린p-5.
-M*(j)-߅U"[.1lrQvGvva;WMx;/a ބsY,k DL Z$yz ]7F|쫒C:@$aߵC|1\+PWJ +wGʣ) /yLILX
-C O
+<< /Filter /FlateDecode /Length 3098 >>
+stream
+x\Mϯh̐o`0@6 [>%qb {/y%jTT=Zb}*Vf"/~^ΑOO
+ȋx)sHh.o_.?<KIRJ$5R [-K߾kთvkm
+P6>? ޕuYUsz,8,لM0> 5B{%|-){":rftWTyȅJ~AV>'m+7MwH~ve״Ty0i?KXZRRj^ʸJ4>{ƋvBHe5iׯdqZSA\D eJ^*踩{Đr~W}
+V Vc%\N"Q %Nv0 ɎWN JR2oj_9Mcޭ\0zwU&y&]a$L),sy]ksOc|&RL߿<#~V.n:5򷧿<IPi :>H\bnדٖ]D&Wk3BX<Ϳs[ )h-d}p *"p*#9^HmylAt?0ɕNh^
+t(< صN*3ӷ2"My-![͞>D;0DNǨ}m
+6dt>v+hM^(TXP
+3 ^Fs0zۨ: ҡ}u
+\VFI<CF`0F &%&1(Ec8lPU8;DF-8;2?б-xl[&v?@gku#:ldŸT}Pj"ɳkE(1=SqT;yq/L_i>+FgvjBp-p>&Z;QIG
+QD?Hyԙf>$| kinR֩雨u4乀V_
endstream
endobj
1214 0 obj
@@ -4976,7 +4929,7 @@ endobj
<< /Font << /F34 637 0 R /F48 640 0 R /F15 639 0 R /F59 833 0 R /F39 935 0 R /F57 799 0 R /F55 774 0 R /F42 792 0 R /F50 687 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1219 0 obj
-<< /Filter /FlateDecode /Length 1874 >>
+<< /Filter /FlateDecode /Length 1873 >>
stream
x[n6+aHY$ ǁoAS.Ch!ٖZ#ك`rk#BA_d=
fR j=q@X|R^TRZ#%+~g KWo#w^XKSߠK_?:G/*R|򰲒R
@@ -4986,12 +4939,15 @@ zl|
)`bbŲ qDZA+;c
liJ9|
qWZos:[ةĜqdSAa0}ZBa^sEt(sg䂠D ":kXq* r]H&R&кW*F- DA5NMс3G:eH@( 4wdQ)T_
- sBŶ.sU-X:+ )ƽb¬֪՞mj jw4xAǝP'Sc<Ʈph(;5IfMCh@ v6jL9ƎT
-} Mdp0 I&`V X
-VYDs$K[9c6;h.=W@ b/5#AV 󸩁@?M]9snC+$W%S
-u4EXfe#MU/ib>h& iN*!`v ԵA.겪$51u5ʄN:"Ja<"ߠ{ TkWݩ/o՗#I)K:".A[Ă2+1#N+eR:alZ;P-buIG$_s{k)۞1Y]k_ZOɍ%Z~NZ)y̺֐W]0#%&zD[xKA\rHZHNd9H57,ٳdԒIscL(x[Φe ^ ]OynZ(ͽ GYlSʹZ KjDqkh'˻-:I/iiy,ʫ[6[7Oz#Z$pFHO6BU9v$BŎ$Ϧr#C'jV(~,KoG{ꈎ i*E0}*Zjvc#BoԞViwW2J:߲!ฝTJ#=[.B>f ÆL
-($SݛsxzǥN)Uy=+Є@sġӱVgN7Q*oo{9+¹r 44B*Ś%5voU5v/:B
-Dg4>r?M8
+ sBŶ.sU-X:+ )ƽb¬֪՞mj jw4xAǝP'Sc<?BC
+C4I;5IfMCpD
+&c{Z\ iiq:qY궎D.aDY/0U̻bj+V(\oU<z'PB%#ʉ9Ƙs-l]h{C*+ ECҶx1ؼt<8}-l.VΘ
+Im sxBz݀;<rV}fH{KZO(fZ$%J]BEG=um⦷$wf m 2&εR!{7ޟlZsgw>ttFRRj DPV*J̈JY>k/+cKX]G(^,Z
+'aLVt=~SrcӲVJD|޲-5bLzwF-Qw/RPrk;>\*Ҹ%YRlM'K,dq:ܘ7S>w,ޖiق<n%DWSh^,
+gso9QT3m’ nN xZtZv^b9Vb (刹I2\Q7ғꧦ AqU P#'#$ųH: ⇚Je.Kۑ:#Cڄnuv)cLX<HgUݕηl8n'Hϖ lư!*텩n1%T' q|JuU6D/>d^ki
+4!>y>qto=řmwTʛe^
+pne  G
+:olI(8d你yqM݋PRFs%ܻx}{E}`
endstream
endobj
1218 0 obj
@@ -5070,16 +5026,20 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1232 0 obj
-<< /Filter /FlateDecode /Length 2638 >>
+<< /Filter /FlateDecode /Length 2643 >>
stream
-x\Ɏ6W
-/B)|RʮJN29;$P*i~IkKQ?7ĕwO׏(5Z"J{4p%v#/.t,H 5?=1
-)@ ݦP\N{6;qt/ܧkn ׷VEx!,aTT5cڽqn$R^ % $ׄɆ^eT{MQE2 ڜ+!ɦ2 <h:k
->Iۘfx9Zc9Y:6:}vlEgl1-Тk?vCawxe,~/vZq2UႢSX)/tսK#.)ݥ<m >'oq`}.9
-g PqbeXd+ѹԾ]# Ql݇x W9-f m;/BL!tTz 92l1=uRq~Jn <{o@WZN}(PǸ۾-#ژmjJ
-3pQ^gm!q;=nHחx廚|6z98*xaasHS]TѺ 6]Z{8B\`u>uCFT8;a^gtcXz#WsWմS+毳{tޝyӣiGu DrV%Q@<ncQ$$;m3fr
-Q빎|`ՆdF` 뫲4_wƔRF[[Ih[AZטU\.\m,d }I[R8z
-y`z.oB}WQ\ Y\a\Űq4.m8urGhK v*>[3QSzy%Dr\x\.[w`xdkD>10 Ha"{)Zk8h,s:*i(nLᆹOPG
+x\͒#SCVk#|t*Aۇ%/Ih~/ϼ.C/E\,gΘuq9Oŕs-97 ߤ +vf=}3|.Ƅop|G~|" {w*t 枩i~m4FuF013cLp]g!Hp`
+͆2ӏ n6{2|zU
+3Y ʐ stl
+]
+Uӵ!K̃bޗȤU 2AEzKK۞\eIyzZ}gay1.b4Eu* u f#2oSTGu*aXGSz ˽mbUe|&VyAS.͟WߘLsPIJm=Tv$VyIJ`5l$FEW
+=rvyU͔~Vq|XO$J[慮̇HHJGaLnØ3Bmo^Q#rf1dhR.7׆4)faT7)˷ 2J0ᶘB Y{ָx!f߲1qâg(׾\$()1DntM^h?iW2]VT4}oOLhX3I~C8%+-L:}}rG_\JQsa?U9PY ̴q闷w*8FN %"e`(UǮ1cG(U4? %#UtO`bdнdl:fnDVۋ[[#̬<sZ[MxNJ
+ͥpXX.?qKЏv a*mϸr\
+?Su%uf ~->8X`pxAާφx>5O-Cb 5wyk&t:೫bhm4=Qp;8.!0L YcΤT1-mUWWy8t2|! Ldd]7Uj1_T
+КU݌#< Zۮ]Z/(Kpv ^]1V*k9;jjg񹘾O73<^ =іgkI-Q\9  죸@Oan ~ cʟw
+ﵫ
+^1G/R^ =nl4_|S}«0sIDPlݯhT*O:&K)DKwO4ㅎfh\;[\R^蹟.r2̻/ Kd]Qȓ˿B6|xŀk_OǢrq]K ƋB˙5rJ͸w)~[w6YJA]v}>VIW=
+k
endstream
endobj
1231 0 obj
@@ -5092,25 +5052,18 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1236 0 obj
-<< /Filter /FlateDecode /Length 2396 >>
-stream
-x\ˮ6+aı"fMѡD1%Jѵ-qμqׅ_~|CgހQs3??p8wŕs-97 ;Z%s{Lx{$pGx~@.3# 8Ki9FvF01vkF3ṿ '/>
-Pmx]}1}YLPϲ#niqKnHF5lY
-PE\=$O\DeBoD .R:{)O$[4Z `?'TntM.]C͸9?/@)ӕ&W(X!EpU/ݕGSv3 NH6&㬌q\av
-/
-ޯb\Z˚{Ӳ$BI@b;vq[)C#yla,E*msTiSꂧCIq7RMcMڿ_E0V}B#H.rΔV1
-JpLu[GV*+&`KKɼgoTkԸH`^w-~8X+5ҮfWc?LVŃ^o~2c
-GP0l
-j@Pi
-%E)5S(fd9*ę5['Q VEeEYńJ|]ٯ 0亇Pm8dc}+
-&kս@:#(T
-1r'g
-souG0ySO5Mڦ:=yD&W zoDMw𫱱#.NI'SױԴf\8C[CLRUExi
-1MvYrp帖ko2m/ 3`5LDTO
-k3l &1[ޒ3ccFGr
-&-$PCNNmD
-ᘅgɇc l{y D89ax@s]GAq9_</6rLkSLȬ[M?GUd5xܳQVStQ"2V[65YwL!BUC'Ы4pgZX^RPS[͔U9_/W9 e1Uv̫{zRRZOLۼSJrY&@jUr6+. H8w% <)^-)oU'PӇv gq+m-W
-0OGDd)F}^8?4ml;8}V;N|qh*TfF̣8Iڽ}7ausLs{sӎhڵ+p2(غkkIX5_yb{jJKU2iਢ,_X*nm"oje6l74AT5pZNUn8gO42l ߿Q+8}<'SՖ6CUaTtl<`z2IV8z׋Fᶪf)arBR613Un`B#"K^SŚ
+<< /Filter /FlateDecode /Length 2397 >>
+stream
+x\ˮ6+au.+mVJCZdJptmK3΋˯ t}]gހQ> _r挹X_8o7ŕs-97 ;Z%KIpi.s@.3# 8Ki9FvF01vkF3ṿ '/>c
+Q(H1-? (NսH5Q.J#7Zg?)a׈;` ![>$<%~ AMȟ<UGeBG<ns2?7GA/
+}`SOȦIs>>ujd=EdŽ;d}Pax0eϡ$Zy)nj%f-W2A'IY@U<:9%L
+k@ -A/Ets /ѷMBkBq4y^cj֪LZ]%0 tNdk =R9+ȸ [mɎ_?};8'
+]Ԭ Rp}Roͥ5Z
+SE+>^Fq{Ia9hJ/3<Z}*sa6'rTlm9nQ'؜^]ku?nQB|X#Tp #.­!JR`e)™kGPJ`1i׺WᴶA]+,O2<2:^_!v'7:lt-
+'
+cEYў"n  :x&#)zk݋mɰH gOw|W&>|r[[ҢYZvLK[brsi2Ozӫ1d^K}Ht+vo<
+-3y˹#ySO9Mڦ:=yDet tD qͩ4OϘXfB/)O),lZmluL;b>-Kif]TcJiִKd*[HɃ2q1mPecU0Patmrc'y_77]gs = 4t'?>+6(7Ln@ǹUQbn>7>Է!†' pJ<D (xtP֓S@=8mkq1675ƱQzx[@vOgAOgKT7lWݐNC \$DNob"+O9U)T?qЫ4];j))
+$V3eUדG1V_SJ͸==)qNw)'&mӍ| EGA9nY %Gj׀_6+9. H8w% <H-&'`3 #=~o?”\<o.ǚ#y='zuL8ˀ˵ǝ$ѭi,'j:oc,
endstream
endobj
1235 0 obj
@@ -5123,19 +5076,17 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1240 0 obj
-<< /Filter /FlateDecode /Length 2295 >>
+<< /Filter /FlateDecode /Length 2307 >>
stream
-x\n#7 SJ?X M1ȭ=? X-xL~$I ?s⧟_߿3o_~Od9sƜ~ϯs̹ |7)%ޡswh7kxK/c78~_ .I>
-w@BjʑG<Zk^b쵟`(IW-NGo?j
-ɘ[l8f3L/uѳI"]ZI4
- 43yj~-\MT
-S<_G%AQ="8?+J JrFFI=goJv3 xnܰ0 ˚sP0l U8żYY[N5]e;ַiE>&1NזqxYNP]\ko3ǝVk+K\K%!y苦b}3L^[S斶D0ดA2ty;e
-A0
-N v}a0SoP*ݔucyK& 3^M9/^⾐>`ܧN}bw Az}3<
-_ %Oՙ]K)>`,~<X<o#|;Kel>&E:צRR"=\PN۔dikL|
-~%oدdv ٯp_6Wcw:nEdG9f؈y;sN>Hڼ+Xzt=6jV[J/3DSxy2774f޹_-Gii`Q-<bh `9ƃ5o(9k+@cjomMA(P5GY "c`n#(9:Gdw4򦠊Ƒj &pvkZ1Ƙh1.>~cpmwUϜ2On*4Gx*;]5DF _b~_e`'ډ>u@۸_FJsU~]lՙ]KIeVq:e m/i4 FT~+VOmܟ3Cuw&~f&>įO}=_&>iKshR(>V!0ciлFV>.̈Gy/XjY~SfZmefb
-3<
-3q#mDq:e m/itk O%*q.oewvg% `ܧN}bw I?X#gx*qUDwq+;q_6Oՙ]ы> }w;Owj9C}=NSOP ܹNIN85NY}|2 yk;„~k$Liwyw!h)Xzt=>^An" QyΣ%r=1Nn w2{Y`[Mgv n8j5x<qxfMK)ێ<`:h{Xg㠳:ЁGu;N9OF(}}y?voՁ
+x]=6WCRi*MD֐kR2)+[fk(/?s⧟_^?v7`/'q9cNy7sιx\K΍ߟR8Wxv߿Zkkux1 .Y\>+`﯏%{rGxI7#c5!d{ahI?~^
+rOBK_oԷI).0x߅A8^oK|<7, VJ"h0\ά7
+b5c+Xzߥ%fʪ.']?$sGܪ;Ly% $p$~" }@{2To;:D4V5}|Dp`(2!ٵw & zD -IpJϗ}S&]SCRy7] &hloĴ&qlb}%/z*c,cY*$%0r>"T&GtdνɬqZ5IhB ac(p-"G;ZkW[jkQޮ_<;+Ik| *~NjZ`>_NѦߧ.7MΣ%?mV
+pv^^A鱤=Y+:PHzdqjD
+ֆkfm6;&%j;-4ajH.#UO>>ݤR!v>֦!_GOl'fCQ#be}kw]Ƹc^z${Gc=2{WV ;_!^d2^]+W4Nn-J0n_cFwZX|A5W`z{̳Xou%3DCrxy2sx
+G_IgI)
+{"k[2Tq1|b{e"oDbKa"vɴOQw ;G5jDׅ*i!/mL䍈EJ/j_z~~ڧ_*ڧڴ?$RQ+C_C_?"VIJ/iSn~11'W$kIXL"04OUz<j;U.kǯULKvfk>=K5JL*f̨q | ؟\km1^ciSfy-?'2D#V1
+m!HBPŅG LW^ҾL_KO}'۴_( |
+Q#".TIDii{eD._UzQ‡*O>>ݤR!NS`mگ!zDX%+}g}ɴOQwB F폈TP%W=}۴? V*}7d;n!Wlީzd; ݼCUzr{:`Nƫ:eB &wcqH
endstream
endobj
1239 0 obj
@@ -5148,21 +5099,15 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1244 0 obj
-<< /Filter /FlateDecode /Length 2634 >>
-stream
-x휻}~Ӽ_
-5O<բk-fIȟ.51Y!P ׵K!C 'B/c>-
-W8e
-v>R yo"{';&ɑfcSeiR+q\uv/̴xӸce (6 Mz>JEJٯ(~:vd_?V]݋3AkO^|TYq7m4F'T)BUs=Oވk#~|6{yƽ(Gy17I#aϨTľT]cGk#B6$GY7q7H#YmϨRL=ȧCo&')շȻ1D(3KOr[ޭk4SM,G5x >s8MUKp(جevV@`Ö*ɶwgnR׊r쭈4gw"=w"pVCnDϿ$PgsՆgl\4%/Q 樛}(^#`Pnhm̃q֒ظ\:J3O<s-G
-sl; JUʴ5%{aUȶ140UՒD<J! L9(Zmv28*X< }sćf/zkLXŭ8VukfV||,A#N-甏>s cg+
-V-&OLŐV[O¹3v Up|"y眲jY3 oWXKj`#JY)zkY\(X'f-.m&–Wep7 2y!7Gc)* TX;[+[x.,Q Ƽ,!7
- p(.gEwtФ<,Jk
-k\Gcwfj[vu/N
-'O^}\주/4i1 kdF"}Wb?Ә7V] K'agŽYQƱnbԤ<,)
-w*_S}4vEoF"}݋[a=4E>ʻIMzXX#3*+Udh؝&^d:἟ƽ(Gy7iS kdF"}Wb?Ӯ7V]݋+K;἟ƽ(Gy_h>JEJٯ(~:WmO~W"R.O8q4f4뢱;̺5U{̺3ͺ
-L5z! Gu]7kɂOJFp{aW2ia&
-;KΨU׽Ⱦ^}\주/4ig kdF"}Wb?ӳ;V]݋k>἟ƽ(Gy_hh.JEJٯ(~:vgwF6W8sy?{1qQnc?op.JEJٯ(~:vgwF6Pvy?{1qQnc?op.JEJٯ(~:vgwF6P}Q܋2}w&baϨTdT]cwzvgjc{}
-_3X%J3_Ŵ`9ٴT 525}Züd UfT*\?EUfRIU!ΎL[ka?շ8ɶO06깦OPǗ{e
+<< /Filter /FlateDecode /Length 2649 >>
+stream
+x˒&~TuOO*R&l$mI,zܶe9|=~qkyoJ7cWJ ;R%(3pJ8B_~2| |co'-oGg~PJBuDJi"pգp5# /6ID% 5/Ux_-#<ik0SMhc`*-{2Ljw%@ @Aw+x_C}TR;@uX0RN䡢
+$hSYOR+Mzv!4oۈ EaK}FqғlVMpCz3a"mQQkp-7†MSp(,evf@`Ö2eؤ'Gm^2`{low!k?hR'[i-M+gl\4 QvUDK99jM{ q('\Ev \|Xo.^La-Z?{1`Ũ1ciXYR5(Xy=jPdT=VLa/-0D3+ǤG)Ԃm3a.nˤ`qhܶ_o,kLX--m{YQnx}y 2<8%p/&sw<ϚЦ]go}ڼ++I֚xrG*'pI*E8z>sNYjQ?uu竴[q^Jrb.ݎOjR(alN
+֤֊Y |Iq;א:9ɐ:А0MQ G*sFVG5]= {Az`rA\}ts}q{8B򰰶)
+
+5E{vQ۝ּ+ӾE-~I>BFFgd*ߗ~E.Ӷ;y3rU><2uy?b d~HzXX#32KUdhi۝6^d_Y:἟{1qRnc?/pLERٯ(~vQoF6ٗzߋ2}wyFgd*ߗ~E.Ӷ;-{3rUȾ[}<ic'e (6 ERGٟ~_"EO ^dsh~,⁆]vajaza][۠gТߟDN0fq ?Y}I,y {aWX1L
+5?ϰ+4J]İ 5"=`369uŴ p)]K§MVwܟTɞ]bg)۷zkk?u?HZfPcJ[;EUVBIUReK6#qrkurk7 ukڝ*\TS h+qŠZyU1uk7kUqAWVïQϒ2n'ݴ_(p.ֶ?%Sa'3Ua'hN>jӵ;#Wq'z}E3{1qRncPѮ],*_QN\mwU//~I>BFvFgd*ߗ~E.Ӷ;]3rU>7prE^}죸ϋ4ܵ5?#STE+vڝEX^}죸ϋ4ܵ5?#STE+vڝE LpO8)Gq_(h.LERٯ(~vkwF6_@>ZgI>R`6d*ߙ~MQU/o>@~@>jñ_SDZs=ӱ_T>mkC{PY\C {8ƨs 002|5?ϱϘEHP~!+kSK`ő\5S4õo$e
+v8Rڿk/~tkOE ͚S6P%\딕6d_g_5l*V?CSJRAc_ߑx
endstream
endobj
1243 0 obj
@@ -5175,28 +5120,20 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1248 0 obj
-<< /Filter /FlateDecode /Length 2897 >>
-stream
-x]ˮW 
-EO5~S(>PDWMZ}xs|J8t_H'T?$>+xH>ozUoRP]qC;ǔ;~'vL񔔁'~i~#Hf F`
-eG꾂h*ߴ)WڷχK?3f' ~u
-]^|զ \j_ f@k?H@!j~Y.]eu-
-$wRJHtWE9md@)be% }#bޚ#ҺQא5G_
-LxA}oY~=sLxQY[G쵉Ŭ'
-lyZCų=uҒym?U>iϸsKMŖDt~B&k)NK!M
-2Yum+3¶6w0ڊt0Pi}Ts]j_#0dbPE"HZo}UW<ַӷ$1(Ⱦ%t_M5,ʸher
-;%4f26Q}4Pym ݹ_{F9א\0+7\1Nsuv|PA3
-N=I۝rfpi_P.w7>%em 9Xg0
-_AKy۝rfpj+z}Jq?fڧ >MA+k P}T+vi?osk VwE-^0vL'~i 9Xg0
-_AKy۝sfpj+z}xvL'~i :Xg0
-_AKy۝tfpj+z})C쾙))OnFFoԡ?)~U
-]ܨ3U]C hѽ`))OnFF֡?)~U
-]ܲ3U]KW3-~A8Sv(6Oa*i='mwnڙj/z}oi2P6A}Q3BQگ ڥmԾ٦ \jiP 
-n#mwlثڳar=sS7Qڒ&XakȚ ܯ_ g/Xnf(Ym[K5
-Lny[)&[[6<}v%u*Ҧm4X Ez/NKu W>p7e<;4mtp$n )J,#gs/
-Չ7vv
-PoYX1tފ-< dӺs5# eh6\(
-enaT^wG^VڕĻ[C
+<< /Filter /FlateDecode /Length 2844 >>
+stream
+xݝˮ6~px
+ L+7D$&reyi.x)Zv)\5j
+[D87]=OJ
+6A>͈N< GCO5R?S}]m#F_wE/oJϻ}/KƁOn~#@'ڨ}={ϛ^h"~!NpzO2ybweT =H O!}B+vF_wEٷG?'.~nuE}. ^B܄?ֳ xFx? y y7#:e 67dFCO5R?S}]m|F_wEׂ`p~ߌ}ꔁ> O!}B+v؟૕!20c^p}3SOnc R'ٟ)dU~E.jcV Lxq?X_
+>XHD":`R@|jH:ކh<i2ڒf>z(ŭr}5G]Cj6tŬ?~">,=sLx4s HmgR,i=ܢ1/սWu3\"S^Kt$֏^":fLn 3Lei r,:ژ'/hy}]-Zd^۪OMgܹSMg R&5J LP(:-0S reǸku)Y1n1xxB&dxfյXsmUOX GWԠgD+@HEg/\Q]uM/&6,&8z<c8I lY8rl;7ӦO,X _RQhV U3ܦeNp&ymt0sN^ 0uvǂ)ҹL^y;1u]y1u‚®!'_raH~rL} S]Чv7]U9TX)J;].O\3W83-W~ߌ}ꔁ9TX#3<
+ٯ(~vZ4~O2}bwAB
+kd>W!E\3W+]CT)q<yo>u@mAP
+kd>W!E\3W+]C^p}3SOnc :TX#3<
+ٯ(~v璝Z^b_ϴ<O}/ cVF/ڡ؟~5E{'mw.ڙ+d/zȾs g?اN> ^C5?S~]mw.ڙ᫕!N/8)'v_i*B\Wb?os _wEٷsCyHo>u@mA> O!}B+vmO~W} fXX;p^rBNJ,}<s^a%z]mI<臂^',+R5J*5)sX/1y꼼y<f K_FI|ꧦHi 6-,Xg= 
+:̇p3:WhTL-r+]T.\YV5&:ÎQf[V ^[[wr鼮fssFʄi
+@!(5D pWqfeè,uKџv%-/dм$%rfeè,uK}ˊ]XזTP2kh^aRHy0*/Kݻ?/+vKb][^RAɬyIKsb3u{]yٟv%-/ |ȼ$¦r"/IrCޝ5%)/ AɬyIKxzeJ/sܹtcLiyӴ%DT }҆ئUOݷL 햻`*,0PUY@iFZM{pi/7>M."< n:}O9nn}5Zd7f72n3>{:}ޜTW
+{ths$,bmpS70.a "JZW雽I8F&NIE֬)wx34v8Z8-NeuXf'[9,2*kȻD?5/
endstream
endobj
1247 0 obj
@@ -5209,14 +5146,14 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1252 0 obj
-<< /Filter /FlateDecode /Length 2059 >>
+<< /Filter /FlateDecode /Length 2140 >>
stream
-x\͒(SBURgTqkn[{ݜr?l6$ [9x<nZ?ގo?84h<|& ~Ù`c_?s_99GΕ\[,ӗORJ:CHg(1s<?/޿+&3'L'Tqp/)<jL{j^ͽW&3;߬<P9׏B
-ܒ.pĄ8v(k^B9'㤛
-'}5A߻$c>p%7)q׊d”Ã, J,|BwI4}S a]+&Zg-݈ȸOdY-&8
-3ץ~TV0Oc)1vwUkfMb1RYQx: W2Vaz_GĎd,̩2Vc5ggs,$ᮑ pf b56A\)RDV䂑jF٫ůԵ~oa^}BvAq'Ԑ@-F@mCj"CY녈 r0wO tq4/3ۋ <})iv \/3+mKM2p |o;fQ71/wHߘg;4  T$f LRS yՎbN20[`
-":Ni+ϓZSQ u>̫
-NZe2㝢4l2|[';gE>^d +Y&qjiխTa(0/(6W4L+|k<^~v܍oj~&h8^.1@oVPcP \z]"$ǘu ++߿A=
+x\K&ϯXMڪxrL-kr%m@6iaF$n$~O?Οo]?94h<}&?j}21tӟ_9řs%9ז |EJIw(e}1||=G%
+5TqǰFq?)ïyUՂԈ69PkLr48GFNڭ we'}_ iR$hǹ/0\GpĶk RБz>S礄LIp-n
+ ;xB
+p<JBH$hN+Q(L)۔mo$GֳBVH[Қgv,bj׈`BK)܎ぞҮJ>L:Ya)4ǬۻP*-lqԲkZbؐjLv؈NGR :X+(T(K(?]Gޕ]߲ϗ6Qok(徆caNZ_mGGO54o:FyYEFa%x<fLr…:LR#$kzPi\y7*
+Jݳ=9j˦ǢJ]6=> pDJ ;2g_'H߼g7ve8iZU6e?wp̰I&~|U':e֦>LwmzWӰU -^"jo׍]+M5{8R
+`Iu<~|/
endstream
endobj
1251 0 obj
@@ -5229,25 +5166,22 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1256 0 obj
-<< /Filter /FlateDecode /Length 2114 >>
-stream
-x\n6+%g..p8Ȯ]u_t(5d$Z!m/z Aۻ ( B]w)᧔xR4(]oHwR9=6>!uz||#~w_Pej@ BH#LfM]B-JaA
-\@.K:7$Оv);}^rB
-J#7Rmn|0Wdv+3|m?$9\Kd8?<Jgt
-2~
-F85,
-P-^49I
-xb<ayR{O$N Rp0<)Q {YaOAed)?OFF=x¬0'J #Rp0<)Q ㉿O?CGE޴;y-:M#e&rccع{H?լoe(w5n+)`68Q\S]i7
-F,-A…a빘
-'n5v o
-M( 9q%Lvj
-a1THH H
-ppZ62@ GXҁY
-K
-b5>kXJwy9Vܸ -}dXJ[kiHX
-ij8ڙ’
-A(;1’rJ{nZkUѰɅV"%+DBr/5޷vz^d7d08R/ŷUE#ZVY#|>|
-)xr$SiiÕ@@o+ݶõbLaewV}?S?S!ݗ!`a sKJtpO33#oioWsmӮQbDd\l}\.AtMyKi\t Va?Ĵ  o
+<< /Filter /FlateDecode /Length 2108 >>
+stream
+x\( Wjҝ=nmkVؐĂIfX< 'ah93w+ j4/nIMN
+89tRRQJu҂鷢?
+\
+dNj czSFg܄A(c
+o7!A'l0.G|j\m͢[qyti)"@' Qf*JX˗9B
+.QLFS6L;4vTa۪ fC :VA|m֥<htJi
+Dڣ&R.z$Ҕ垱"/_b(q++`sPȊH+8͐(U+Z9OVč )5_3!Ϙ__&5RjXfط'R fpaMσ΃Tˢ
+C&p*jCK%02В|ckC nBNU0p7QFRٳpM'뷥p]
+`~^+׭;54a ݾVZ!+ߵ&T(dkηWu߳$>hng7je^硏CgR;Ul &ukSg[
+* TG.057=v\\bX\/,-4-U)2_#HDЍJVq;&Ҵ\sYw9H5VT|'Skj+P.B]9,gSŒ8S[#z:pt)2+JA@
+D8"OJT=Ya9"OJT=Ya6 'xTP ?V'88*vhRGC+m $JcY'T 1+kEYg;.ϖKBK]X+hzdYѮR1\n֍xď9n<z7Cѕ*ӽ"c~ض.&4%A޿:Jr&܍XVAo-\0\;GRBiB0,88U-w wa>̕J
+a5U[B QNķ1NhcuV2~Z2Yޣ%kfgt=+w=t6R ?YBqh-~-)f@ҋZzU4l
+! I
+Q?;Y bm[Lv `0񍴪G=VםT7zgJ!!}(gB@E n]Y n@HteV,ל)lLm Omt(BMY >.'|z$#`,|db2}o;L_l:U$g㸶?~yB
endstream
endobj
1255 0 obj
@@ -5260,20 +5194,28 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1260 0 obj
-<< /Filter /FlateDecode /Length 2509 >>
-stream
-x\K)W-FH{r[us/wCa&ĞvAGA~/\%=Yb(q;iJR'm,{RF))Reoﯯ_9xJ!WKݗQ_7$ɷ;_PI-[BoӨ1+U $DL%R{~שr mL9njh'EpsԂśi
-(An*]i KU
-۹HcjRlo/rYTk]tU
-c ٥'-a:bUhw .D5zrR L1dA5h%G
-B~2/P  dso˒&2O+_E%9s!iJtfvn"[ }Ư=ti9Q+>D".kȣ+(SMRY@՟"WA[I0Bq8
-[WOr
-УZ xZEYlT) an f
-
-t*m/1;Os:;l磌tV Ms
-\ӕ}Y=F^BΪa?HEg?zvy߽}'8iq=\tAep)d#Mv@&?ɟ !垓f)sc7xzt+{l=֊9ƪ7cWohLONlLL
-O LŹyo0cGC+~D!{-usf) "dzۗX^{12ZA?-]U
-wuCD֕F,Cʍs0<o1Z*92F :c;kBvAJQ=Ni礴Sߌňi⛥cnH
+<< /Filter /FlateDecode /Length 2729 >>
+stream
+x\ˎWZh0U 0Aw{g5KٔcSRI;CR%_~f%`՗&~Ǚ|`\/^sɹx(έ ~{;\ƿ}w{>}1=)}jy#/!OTsItaz#쓉e.UeTeh4
+0w7at~?P"$9mb;x)O#ovuۆeJ#|^gcFj=ܵOɏ]I:
+_3Ɠzy^Ȫ5Kc?I5X@{D qMlBoaDi8oy1'Rte=*T&h_Ay !֏ݞEl+oocFhH'zƓ9nipmBf)}(#vWKȣsc(t|GZAX
+n8"P?AQB^:Y5T>(@ 5 tЃM$*-E2^޶mEv
+ڻīy}?o߁s\=|.oߕ3i^$ /W?t ~U-wIӁ֔J"ސ%n.<m.@/ Zyл@OzQsȘ.ZO)8
+WQs3eۑ anDveh
+)[ܶVj 5 P
+:$ @.PV$Fh;H|\I*жRsS cȶCju?Wu
+LjŪ&EcbHE\"E\Zow-*FɋdiȚV*C#iYS|zd-aΩN;L
+aô C쭼fևRs
+>Y&YQXt!Vž!ƚhmǩqvDX8"ULhDcZŶ͏J7H\ōu^t2/pL8}ЁP)S1EjS X5 . x1jp
+= n;I!Ѫv/mdz=pr@n(zHm+mU3!p,'40~Rm, |KSОv'Mɶ/(zd:=(GMEv=j8=HO=F;=µ{aZgg,50=-X> ,RXZ(i`HK
+`(i~#fF^d&A}w]G_{An٠alT
+RUXj85N|oxE
+ZB1NV'lS|(ԫ]z\5iCqVqC1ia)%!N1$ms1E\㦤
+eH'JRΧSbiP=K'tKm d]:U\ƃJ9To_8"t@sɻiOhӎЂ-rJMc6R
+RՊiStujJaxkH:j}LN"v{æM
+K5J= mQTo
+^2/_ݶ>ǯŠ0]W|
+3; TH=ww>я D}#
endstream
endobj
1259 0 obj
@@ -5283,21 +5225,30 @@ endobj
<< /D [ 1259 0 R /XYZ 69.866 801.979 null ] >>
endobj
494 0 obj
-<< /D [ 1259 0 R /XYZ 70.866 522.658 null ] >>
+<< /D [ 1259 0 R /XYZ 70.866 499.496 null ] >>
endobj
498 0 obj
-<< /D [ 1259 0 R /XYZ 70.866 286.072 null ] >>
+<< /D [ 1259 0 R /XYZ 70.866 148.749 null ] >>
endobj
1258 0 obj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1264 0 obj
-<< /Filter /FlateDecode /Length 2138 >>
-stream
-x[˒&W <*3UYޚ]*dMF
-9ז }yED*sI%}5Ƽ2\*߇7&c ϗޟ_BU1Yk^Kqueqw/O}jÛJ͙J FFSI27)~#3/7K %T>|qDп3jl*kQy z@2IB i8,IMhPߗPWZ|۠,|27r3=_/De$dԧUwn\8|Sg h1acklh׫އ)`& y zJR}SNz61 : cBikG@"YBP
-NT" ;5sDtS-o3Dzg帘"?dBC mkitu{i/PYuJI#I9'L'R3lv ςiꖂ7LR=FD!Kѳb%Ay01&nM (oӔxi>Z>R>^G0vDx5ݴE\6d3uTR2g>r;cmE[<Dn&J;fme~k
-]Jn
+<< /Filter /FlateDecode /Length 2016 >>
+stream
+x[ˎ6W|9s r͞rҔH"iŝ-KV0|˷˯7/9 Z^>~j}11??pq+
+9ז | "
+8t_1| ׼5: 6Z^0TP%RC{0̓ő e9XR97**-JtC ( rZH aGEQ'hs͟u'"
+(/ד!' dfY1u
+PV0oD+bBÄ[Lw no 5\q:3+}?o!C_ :;ԺЪt v+G)&$R9Q;uC.OkAf[r0s̐8
+p8Dǵ6+('f|Wz] LtjW%JIκi( &A) T
+;C(ɔQwt3ω
+"rm{0: Ichmˇ3sWgvyF;lM? (*,F}=E! ~尞5k)]K /SR'5 kkN]ҿq;jv.MgLV=u陛Agp*Ȥ(aD9ôj5 Rzx;,r%.s<jQy xݙ *FZ ݚ/j!0h+u8
+e޷3+ڊz4SoOl(P5"ȓ0fm0ە8 J#_{ʆ҂YnG|R>p~}5R3p]Ċq:S*Sz-DŠ*ѝw;e{}8.sgbԐ#C[z/&j< I6@eBsr^\Wu?V0EDF̐N2Ga߉ -806oE0I
+gFD S0[^
+=h (??,
+͊zӚHW50ae5%յuњ؛p&rwcA Yp\,=˂<k?Rf؎|[" b,[fy׹(W(30h"iyloм'tȬ,2 DN1c@%iߥ76LsǗnh,]9Ib\`̓у J!N a}$饄0@'R3-
+*}oAZQa+י
endstream
endobj
1263 0 obj
@@ -5306,26 +5257,22 @@ endobj
1265 0 obj
<< /D [ 1263 0 R /XYZ 69.866 801.979 null ] >>
endobj
-502 0 obj
-<< /D [ 1263 0 R /XYZ 70.866 245.158 null ] >>
-endobj
1262 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1269 0 obj
-<< /Filter /FlateDecode /Length 2773 >>
+<< /Filter /FlateDecode /Length 2399 >>
stream
-x\KhCji9iލf{n_LaS6N I"ǎzQU_^/_~~ ,Xi[{q>0.?s;sq(έ_RH50s[jap>)=b 9Ϗ?Pa5<0]Sc`<c
-a'Og^8ŋRޅ_c K52x,摪@ȇLp E
-**6_-Z2lHߡgprc 1"&T܉(5'!m
-fHe-Q9s\i??m7L h
-9js?2%L1]Q6|`&:|l]nlF&<jml=gkJ9f p}fFP+`@Z3x`87>W}{OBC76 eh1+tI^zp{:daqt“m|3AmqwLvuwlp(B2].N8pUtpNAޔ ܂5a۾NK&uN&&
-Ϝ%ޞ3r8kJ VvxMiD&Q+@vK()']eB
-0ME@$u>
-+T5_ .v/pl֤Ld3kPS?'kF)eF,{h J8!wm>E:oXP
-[Vo@PZpA\YxX
-74Q.
-5,+WZ2޵v&"zGKu!DD8CD BO̹a>\4'"rZX'W_md3xifϲnX4'9#J3k.(nuЈ9 ˛vI"ji 4dt815i8$v:ň6}HkP| ZKچ4 nN]>OCCh lZmFQ#$YIƨ%=4z񚤍d!6L=˿~-
+x[Ɏ6WCi;@&\7"iC-K*ZYE eMҋ%Vq%.?(uο?(Q
+WJDJko_
+ۖbh:\rψ@Bac
+xrXx=j;tߝ=xc92qbxڗ$k1M0(K.UX\7lK~Łi%GK)iK `w4d,ߛRS|\&!Ő0K7C,# }M5-rc
+_L -vZ;V8e2h)!Yp=T-1̜U`:H0"慰YZ\+e _V<37v3c&#{-N,1
+Oj{)p⑖Бv68^`֣@=87
+UuvglK.3OYfө+._%Әvxd!lnZkȝB5>BRy9`o 8#{I%FYO[G#+HPt8J2l"ŪB7sq
+`O"J!N_hf^ q%Xִ̑)I(.Mr[Ɣ  gk<4f'eHVʕmz%q~{jI| )3`ŋz@"A۴hU
+#Pr@["ԦoڲiQ8`-򗉖k8cEZhK1kE뺝 BT#_q=D Ʒud]i9ҳL}B|H)={R%OK0*O3t黗@ۆ PZ5\ ^)p&"Em=D*[?Vh"ݷ=/饟9~jm7{ub1ꉉagܗRFW->^2E]6eP ^ɮfk¤<Q\C3]Xuś9>GڱxQ
+,hދhq?)EaI1ޘEg⬆|wm}Ur>+a$S9Xj]O*IX5.,[=3$1uxgqC>5y{8ـ_ 8"gmc RL xU<nw-M +-Oble1aH5tB25Kdc!ׂMQ[=ǭqܙI tVC?p٦D<Q"ΊHf
endstream
endobj
1268 0 obj
@@ -5334,26 +5281,27 @@ endobj
1270 0 obj
<< /D [ 1268 0 R /XYZ 69.866 801.979 null ] >>
endobj
-506 0 obj
-<< /D [ 1268 0 R /XYZ 70.866 433.219 null ] >>
+502 0 obj
+<< /D [ 1268 0 R /XYZ 70.866 771.024 null ] >>
endobj
-510 0 obj
-<< /D [ 1268 0 R /XYZ 70.866 263.688 null ] >>
+506 0 obj
+<< /D [ 1268 0 R /XYZ 70.866 266.613 null ] >>
endobj
1267 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1273 0 obj
-<< /Filter /FlateDecode /Length 2660 >>
+<< /Filter /FlateDecode /Length 3091 >>
stream
-x\ˎW hOd.U6EiEI$RmYb*՛%/o84|A/b(Z_ur_?(OJٕR%(>3]g(N3}nsp%i?O
->B)߄(v3MG~A딂ĨR ~ijB}`KӴWuM0z꧅.0S GGg!9_')
-m-շ7'<b'gTl^37$3HdِjJJLbra,.%p,"$S)BǞ+n{Og2,C+ҍ̅r}{`TWyvfI=_K#9G}_!}9җLBT< N~ x$`ҭWSӾ@ψToRYÞp3nMP(!+\
-dh醾n``:2€nzS!M#`<q&XwGؚR7i WvKm;<P3scAS}Aj u>Ss[`E:튒
-B>3נv-q*fErˮqF܀vrY'ʼn
-Ga6LED:#$~rq0"dgjyt YxG5vGhɗ唾_@szDc8 NIAnIi"+͆VsQb*]EM9HZ3'/鱪wA(K(97meDp؄(8qk, En*y DWy<q( c`~a_FU6ԽעRkD VѮʭm,UFQm+_u_Zω%m>U0*vW99Kh|R==DZX,x;X*ℚܖTAz7FLNl{r9Pj6>CdYDqxRQAá\M4c3ϳ˻é\Ns# dNa}98ZͩD/ !k4'9mU2
-l4{h40<Bw+t˓%_e4'߆yfDn) x":!qVߥO5<kni]D9dN \$FtjM)߲~v!u>!LּɍyޚwF1S!a4tSkg%B#0=m õEROZӰʒC<S2<ר^ʄj)ogfTH}-:Cu[S=i؅hɵz̏CYuƜ^cPLרo$Q0(bX>.ᷜ|l:ZɅ4W
-]fF4
+x]˒WgDGE&.'zwc3/&HY,v/\$L/_/ן_~7ҨϿ/b9s\K89ŕs }
+g jSWX|N/ϱ5C3n5>g ̈Lkvƃ 0`d۷Ja""q<mw0*3* -Q_.۽o-٨</Y<Dƨ/EG[Cܷ L5Hlo 4~`cT9Ds+zcmnE㴚yJngnAv'6EYRUd)!2YC1@xUb!>J^dk2lz&lD N3QE):-q':a>ۢ*'R?oa)lld}q!j 6Sj!Fax`'CңJY:ʶ85mmGn!!Ѡm0O
+_HtLdKڃ4Juk
+rp)슾*Cީ炙l&PIkX@W\Y9tloLͦyC=m%=9=.q~^=& RȜ˶Ɯ@Ded:z^1(>2#N*lr[lAٌNekt9m+HEftǼd3
+fDQبtGB#>Gc
+eFOHf3Ke,S?hVLXw(,Ce5ꂨJgeRJ1Ǖ!)-یx8--0DAx+sn)cnk19TLn))`ni2-A֘[,!k- AsKwٛ3K ^5ѥ+gGFDAhcP+[+G)1%
+|wq`]Z])ʞ ewU=jSk[|W"Z[kהz,\w#]#ئ|^C]^]^gMNqF6$=mr!C;懽-=AT*L" X67)S궏̲<$mf~) |y6+n;lZy) F]}'KbcشLW`rnJέ+*]E#e7
+هcM 7n>`G>=rq1Ba?;iﲧ/d^][?OՓ^ނeY:Dms {!3U9(rUlv- 2mР g6HnH5TgH4ۑ! M)]]'ۛaS<ImS<A9<œTR2$]ex2Y8S_'k>q|*qW -W`Ti(7Nc$eLʼnmL)mv O׵tJzۈT>6"B0m5Ш[8<?)'R<(coUJ5*P*~C)˚C1͡eIa-u8:<LAh^[>ghsr՛$Bq;ɬmklIxVhS |0nSҘߋ7 I<]"[jZ
+;%hW#zW4QlM^iimu/
endstream
endobj
1272 0 obj
@@ -5362,26 +5310,26 @@ endobj
1274 0 obj
<< /D [ 1272 0 R /XYZ 69.866 801.979 null ] >>
endobj
+510 0 obj
+<< /D [ 1272 0 R /XYZ 70.866 771.024 null ] >>
+endobj
514 0 obj
-<< /D [ 1272 0 R /XYZ 70.866 571.933 null ] >>
+<< /D [ 1272 0 R /XYZ 70.866 366.239 null ] >>
endobj
1271 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1277 0 obj
-<< /Filter /FlateDecode /Length 2249 >>
+<< /Filter /FlateDecode /Length 2043 >>
stream
-xڽ\Ɏ(W4 .Z96i. lMLpP1Eؐυ_~}~}3oq9c.y{sx\~p.kɹqYϟߥB
-[h%R6 .B *P=S%Ҁ J駳yxe2+=W2 Y4H^gZmg6Is#O^c0ڜ>WS?v>8~*.;U8Hy&Ybk4cyr_M{4c}x!g+,<fEiZDoKga$I;w3ɲKݷV
-Q_VI4 ǹ<^۾ 3[>*Lh=&CeQ)`N1c]TwQI#
-jB"~V~ëAӄ 4Ntcaͦq\dlUaeܳlZl%( n>Mf9}hOlcRWD+:L`<9@15HLs&)<
-de`0J3%u\/M Cp)eMd!de>2oDtɚn~SK&S~MG^s$<R5T,it&jJ34.UҬQ*`j5 @G+p1$bZÞӅhfjTPUFbEPdMfaS>- ژpE%HfZy4e2)[9GŒ55f|AK%&ѢXWOܦ~o7kH8]mg ЙݒǜsbI4׵ 3QstS[fb-3龢YD/M|g4Bp'*: I
-c;_,“22Z gkސ̙H CYNW(ZcwM/ A|]0˻or0]Fדd^l{ #;(my ʜ<I!~rtg`>jO,A\;^<c,0̓Qw^1M"&<TDԳH5i2 {FoDiFk"&Ȟ1J,k
-X[
- XmY%4;钗힛; Bz6k9:QzBs#;&J@xP@G%<@( %j8# ? +=bfU`%Z a'(=Oѻ1} {-d{&pFG%"g@a{-nԠA`>M;}"<mn
-3<EVO(2d
-oG J|ۄ߂fJ=-GɷT{{ԍ|K?ՏwF,1[X]Z Fi_8n;䷅*tOg Sc/eF!\m:hHIRQ J+n%Lm
-3:@0
+x\Ko#)W-Eq<G{4E6$s*z~9ϧIgހQϿ^q9cy{sx\~p.&ε8<,;4p^/鞏p_DŽ'8~'e;Q
+TsT40R4OzO]#B[ LgB!^8y8rt<0ke
+( "OQ 0 ٠P'Gtq>V΅{0O >v ,V
+9u T8
+nE!V-Wx=j0I 4|c2qM"k.㵵y'ׁ\(Escts|>fB4j
+-3V6qݾF֭ߢ恘q!|&ivJעa?T-V^T c-ݖ,6Jrފ(l1!KDrUcb "t3wP j_a_3gS)EsCV\?_E N3/.AÆ>gB+5q<Dn>x0!HfjJf DZ/|,4_ rj^8]pD965eʖ%pI%&ɴ~m&EŚE2(}4kk+`ԵUÅ2saUy%*3R2cP)Ǹޚi.0F]o[#= -ݑN_0{Tt>e\+ts m=Ln WWk|%(×8Qn=
+6<v++}RaJ5")`<ޠ
+ٕx3 9'yFIz e[6z\S~==>;;\vؼY" Q` R#^koWoyb6!ѫ/9.ʤfR7iYZ2_k4wK;)_r5<sD)q ڶ[#bUYi_5m`8»΁3-~4F5Ue+?` qLd4B+i{~5[-- ǖι3իszs&[sb9S;e6La>nOLNN^#-i1U?60ux[1@|dOl+Jo kbaq\a3;2L/3хѥXFx_n`dyωa@ďxΪNt[-z;]6{zoyNMY ]4iR4@s*))7:4" 9azJ.^(Tکf镺4:"eJ~3Ny=ک-c3>nNC?Q^}nA}tʣZ@GAuicC%iyYUɸ[^Kp~9 rӴZ I%1+5%pAķQ2L7*MTR(ّJfmTRC7P;嬤vj۹#Q)_D%dTNJJwKSzRWS kKI k!$S^ 0C6JY#}T=Dkٷ
endstream
endobj
1276 0 obj
@@ -5391,26 +5339,23 @@ endobj
<< /D [ 1276 0 R /XYZ 69.866 801.979 null ] >>
endobj
518 0 obj
-<< /D [ 1276 0 R /XYZ 70.866 662.516 null ] >>
+<< /D [ 1276 0 R /XYZ 70.866 431.382 null ] >>
endobj
1275 0 obj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1281 0 obj
-<< /Filter /FlateDecode /Length 3016 >>
-stream
-x]M(oPDGG6b}i.H@[2CeG&dy&or'oX?_!oB\_}RҼKR:#o7c |i)-|oϼϕ o7u,-OO{O
-D2cH7!\ǠOM6S\A>rlDFkldeaysu jN'B0\/Q5E&1ϽE7MS1uy 6y͡K&"n. /D*zu "(&x7:^qF;İ"Zޭw;^D/L`ۦTuK$̧,W 羪{{N6ع}rr /d<2lJ<%^k&@fsjU2A4~N<lT0p^siD!ǻadc6p͝&Ei1,W
-Și
-;UDX2B}KUPLǾmJQMUZ||rt ?s_*W@pTE4SԱoR:zԉB| U:XAH O&.c}rU:Np-NZ!7챐'X]OnMopNcOXc]0b=w h=J:D0Td,<GCU+X6\(Ҵ5Үːˀ/ q[NTY.2/?
-(؏6m~@bYh%G!u>㫤nhWY)%
-gqoDwjlzh=V&,:2
-(VիV}o+N?vIfzRpݠE-" € i98+kgż!O]dPcWNe.?
-9'[+sd͛Ӣ߷uћc˭L-JC6`aѾmTfA9OLdQ"X6 ,d Bc.IR :8D#mn5L
-N`۶^NJF̲iV!"e`D6c (8خGÁLy].z8??uDž˴9;./r*Gլ| Ct
-H#WlzVZabs0AGw(Or:" @z ig@tiXgNnNvN}ۈU#T-h`MΜ3m6pnŜ?c*;?eck bȻ,|2ke^, :+ 26Z-MZaY,V}$W(~yT?%oGK;D!e^d8Rx6xlN;l ɦprJ8.!:N6<z(&aܗ͕/aܗzRna Yc 譱#m0KK,%ڸX] "a*4ײo/Lˮʦ7 `Ot:aRעƕu~aQqaX|d}ȠR;!f*vAm|9Q[tTo`20BCrdTd`
-oZXNA%kE
-Y%h  ȸc1aяL7q7xkpLA%ͱIfVb9pj ;u^+2-ޛ2q0=_ _$ %S~7$,+f n\YthU/uAt
+<< /Filter /FlateDecode /Length 2872 >>
+stream
+x]ˎW h#] MVwsqmj,OA2)E^߮%䵷_SK"z 1 ^!~ҼKR:#nO8-O{9ߐ:}SGl|"??
+şZX8'!䕥DŽPB'}e B9vGXB)-ob$bB'&}-u/BhBY@8FaŮyE-L`2&bJ4%9*<n i). 脱fPB ~ O ^l`olB!VPʠAo_OW 5Z4ȟW+x(\a7u/*hc 8Q+4xytb^p ֽP
+_ ``ByűU/BhB8Y+c/Bh?VP8^(o\h8ByKAVe-t"O>yJ箟 6!=80F[#I"H56)nHGZaT`ΆMq"8*'c"D g-PosR[$V-E$rɥt,GYyJN`vre0 3״\ ـLg1/Ҳ™¢FYhM{<$ڗW}ERӗ{-@BN͚hD]D1!̘F@s6vi3?r׍o 5ir3:l)P:l0O:+[+X}+F˕D&DPy90Dwh6kfӎ6^cfCsl:OMzljDh6KBƖ8gejgPQw2o YHjsU@mbˀ-D<#NZY(7 "H)eT)E%r%*m`~9RTJ5"ΨT!J 3J+QUQTb D!Һ3*lJlcTc/
+c89nYȗdfu
+?1KmzM)|7ߙ($_0}ۘ^)>7! Ž9<{#а>imf
+aۦtuF_o) PN?,ӠǍq{F_CP|b下s>>J.8ɪiJ#i0+IR#K=8X/.B{1.vދp^b }WX "cJ=mS:FhRc is_\c ;7X/A}qW-|uuۦuj!CuF8| :X/AXWH+Sy[-ϱ_&=V 8ªaE3`=vRC " &e, 
+6ǕQJXϱ*UqF (C}*;gXhF`:@nS;F]! 4ꍱՒ<PdNIcS[93X;% B^ΪP OIl9%M<̰Vɓex7CGCUfdX¬im$6@8[ vA$weYo<+(LED<a餧^Z! ;PxPC-֥a=ShǪG\ja-88bg<!J]m[բAep̪k^!P7KL˕˝+>h3Tkc*v+@ OUgA|y_G$1t`0*ۧo[8_dS溾}VôZmL8nPe4d`s,TYE9l ;a@~2/::/:?K̰K߽K@fcM#x]AkTVT9ƺѹ0PPܑ(G"p'flcl_fH6kX)Bj~c ")tYIU0`nytRU͏lʫzڡ(ݖb晥ےi5(ݖ|j{ cCu([2z7uV##rgb8of[ɀԲ ZnKO%MDܐT"
+xUhCf<˜h{S!F|13:'Kez܎^zt`A_& _/9izc7mQfK[#[2 WO ,9N׽ rz؄)rә,?9j͎C3!/Y,ì!uaf݊^v<gx4w
+1%W!TH@EVIĢ@p:S.u라׷-_
endstream
endobj
1280 0 obj
@@ -5420,23 +5365,26 @@ endobj
<< /D [ 1280 0 R /XYZ 69.866 801.979 null ] >>
endobj
522 0 obj
-<< /D [ 1280 0 R /XYZ 70.866 771.024 null ] >>
+<< /D [ 1280 0 R /XYZ 70.866 485.719 null ] >>
endobj
1279 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1285 0 obj
-<< /Filter /FlateDecode /Length 2436 >>
-stream
-x]Ɏ8<6(е5ƻ :sS6EKU^PfZJ^{?~ۗ$^~燂E]KIH )RO)՛H#ןxRZx?C/=}?!a|RGy{G+C?r{@L¶H3([>-K{W >G5_P*11ᥝc>*atk_]MBI_cM%.&Z DN-<`:>,C&ְ{ٷP
-tn `^^B&YOu;vmvWR m#  @ {])-lFλy&O< c@緘cc>s s-4R0zeRBz[k- ,LjDmLjRFD&
-x"~Ad) fvF$dӐOR› l fo3JA{Ue+3P"z0
-yX\4U;;m1Uә,*qϬcUPN˪5ZWK@>c*S;C hm<u\_+c^*.1O$VQ4", Dv:oI\Wu脱lA> Өk4⚂-SJKDŽPVM3Ðt;|;T+9`d 4ՙJPi\?ilg iW#LczX4 K봰 i9gap /ZN.g`q~:K8d :b2 ML+xN[Eo<Fġ3S'eB$zر@˂x1D YVV+'\l=L.GdׯG|JQ_D^vI=|u`}vL2g91G,8} o]}2cq&sY蚴8 ``[Lvm\clcBi|A9R<<3vi+&yZ$<- ",1DӲ *v,ϴi(zZ⊧#=|)IIcEQcP]Cp|YxZ2DO#O ڈ>8}J1# "c`_@tIJ=|\d$|mXL4S,' 쀥sBp?m<6E?6V
- ]imN˗%RQ2 *#X ˑ~Ǚh$낔QF.x| T5
-E؃|Sgfnj5%3%#?UvUG%~mڌ+#cw\&c
-S5.=tJjYU W* Wi|Cmz(&NJQ; ~Y:.HAĨLaWhER`}Ҥ!yc
-u1Kc9;Pp'P _(GYzNX{+؏:R
-SX+`zkSZtVgo$rOn[Av9o) }J1@V0LǻopgطV0Nj\Gv"s^chSne[!Le&|_G<:vwȟ3v<_sK(_?[
+<< /Filter /FlateDecode /Length 2952 >>
+stream
+x]nޟ ?E($8nU7}EGIZ3IG&7h}/{נ/Yh뛁苹$/iJ[?Mky:8ןspEZ{",R^Rkb'#oWvܟ?
+T6Uy
+ =O"i QGYb\֛Zd+د&tuNi`nQsٞÜ
+v1XT^[R^AoߢA."jZD o MʀP.Bt (Eh 1"czɔrZy[6*- a|YnC۾Y~7ן zZm[ƕ߷_3bκ:]Z ьDvn
+ E;!^JKC!S 8kz@Ry7TaSٍIp*ȸ#n@:ɸ:[T2Fru "Ʃ7^fFR%O#8:OU^l^K~ǰ yt>WKhEmz-D9I EH=1%™s+JJ+մvw`fM|ȃ<u'} ̙-2Dtu H@!L@{ qʿxe9?n,ʏpӸ`}*"eQdi!2I]yyLj%Nd ⛱Pk+r*8;hq!>3pVNMvÏ;<Gxxr}b
+Ùf # "F.%,%]mlmIm;]YX2`Qf-ty2AB}?єz0.-""\J6}f.#ElLŸ;v쏰[[`?w Kq
+, 4VK
+9]Յ~sa28 y{9y`(s`{Zrv"؃X!6ps5NhF(^l**{=|*2`n- r,2{ ktDDlhM2D[$Ï}
+gY>M[aD&ywdkk{k|[n$l]hc[ُ=) }'2%'nskeYچfľGv(m\CZ+bZW-V\ -E}&;D
+f\F/G!T #:2O(]3j{53"#T "CdjC"rc&I=~X9`1ZYbE&NTD|;Fcݎ#]U8F"D$!s $*[:GBh>Mswa0mXW0N J6NQ3}R hR-2mɑ0ؖD%0j8eg6utUSJDϯEl<[r$Ys uT"̸)X~? u1}GI[9Q뱾z̏3d{
+2A>1ۙ I.Tl ~ۜ5NIf8uY^C# __ JAb!sur~/- W*m|7pm!R9m炉۰|_' %_xz>XSc|]Q&ՙYf|YKk;%Ys _T"̸,9 /׭'E:AדC1ac>@mOF܃}f"[jo .ScnM2Yv[´}?{Q(MNJYq)Dh:h +mmpm)m?%M'xiz1Et~-"MoEtzK B>zj7egHlκՆ:*)%n4]M?vV&.HSαt @HӧՌkrRK;c /Gӯ~c>;5eE^[,5Ia٥5gD *wPc @!"I~?q7x ĝLqW7:Z{i*ɕ蒱HFBC*J@e"!SA\{?`'_9Hp&VěqJb`=²K%ގ/d0RD 
+٫~Ļ‡~IRNT0Ƭz"v0ɹDǒ)_4ƾw}蝄pB
endstream
endobj
1284 0 obj
@@ -5445,29 +5393,32 @@ endobj
1286 0 obj
<< /D [ 1284 0 R /XYZ 69.866 801.979 null ] >>
endobj
-526 0 obj
-<< /D [ 1284 0 R /XYZ 70.866 216.189 null ] >>
-endobj
1283 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1289 0 obj
-<< /Filter /FlateDecode /Length 3045 >>
-stream
-x]M8Weҝ
-L%m&0 FeG
-~LmY,[)(g v
-E*8aIQqiOz?mѾ[߃{wrg-lDBX3FbFbRܔb#jcQ :5V)Q\5#;$dU>;YTJxϲ)#Ϻ7;c^?_Jl7kLs
-%
-F,OAsn%hn?Hױ\vgpG5yNJFRDCnѬYP
-j#>[!nޢ}4Em)aE.+n@ttfݏ"Bvڴe;Qd9E4" @N]'di^ǑH *m`t@PGE4R"du$b+Ԯ}B]:lpjvZtݏ_Hݘl.L>O6UlT^<wM@xX`R<TLWN(xg!s<,GF eg\Ւl:VΕ[*cKL~k#jS_{?4E璊&ŢVM>Fd<uHfuleP%sA
-EYB4s
-e ;a[, р|a` W51TkarGQ.*DyTrP@'v
-Ky 2/PT X;
-+^Bt9̧oO*3$ˌSVT@8@</]ܧ;:/]"bKFL\r?P*?|`+30c/'S {cAd`G7"gf-W>"}G2%A 
-Lm=ke~_AfӅw\ڄO<u}W4dBy`Ĥs'u=+G :θ
- 3' نĻC4@>P ;b {-DO0/+IbQd9!=G9DmkATz={!5pbl  >Ĭor}dx9 i|TAf(!ցrYOI;Oz>NZ|&)E
-3\ B^p8\=)#m~$DL+H2r?6<}d>fCrXs,!m|R-&ik26@lR|P y@kx"bmL}’@P|񥇢ϼ%}+}+6{+nԻ)ر!/Ck'Fi\!M]^*nd#ZQ
+<< /Filter /FlateDecode /Length 3092 >>
+stream
+x]ˎ:WZWo@[ ̲ѻlf3U$EwRrxD7yo;y[⵷_nA-EH OR?4oRg)G]?cNKi.BxʯyK /;uđ+oz{߿~*wEieyj˭<Ds߷grJi* 
+?AXN%tBE ,kp)[JUЮH㇠]@{I*y^i  0ҿk`\3kq\SH1"%mMsRPCRS]`k;'\) H9E
+RQ&RТ]7<{
+ØtR-Rp뱦@ ) H=^\Gni[ZiR@ehFiaɆkZQFiᚽaQ /#%mMd@RS]`빆"\) H
+Z2†:J)E
+)8\@H)E
+aZȻt|[|ہm 6=@#wasm~YOBqG5x?p+S ЩV$̦a
++9jZ<3"OA9a Θf"CF!ʂ1+yR[ۊ [yL1A>0 w0^
+ x:V+`
+U(y Dz 2Ec=DR
+~XˤzD
+G$-XW^%S! LZd49
+8<έ<ۅ5Ύ,MZ@]&
+YKT~+#jc%q=Xkoqe\K9J[SNDS)x0qE2
+2y
+c5==OhGiz1Si#kn䁤aSǜZZ5c-x_y
+JW|+4/1
+(amkR^n<*׼8X݈9KCbtTRoV6k3)B
+]=ԴyB6 Lƫ5:FÃj "D/LD{`[IyE9u~˶FwrsXZWC ADKlNGi2uj[΅j4Uwvo 2ǟ T#wPrhyo6MYR5@QYxʍKSZ@[2g}a fEbE_X!QZl'kJDx7p_9Q#C1D yF6Vh't0l~ڥDVThjKv!'.-õX~Re?H58 c "]f@y¯
+aj> Ce3=?|@#\^Y>ю-40.#`P#;qۻʃXo;\{-jj艭Uuu,x'YVYxs+,l֍EGR2ݶ-Nk#qcz/l < 7kC}rPlKo#eZi|W8Pm^<vǬ^o}~VF"=mg:-O7x=^Օ?Yqwzw[^X2o) [١@>x
endstream
endobj
1288 0 obj
@@ -5476,39 +5427,35 @@ endobj
1290 0 obj
<< /D [ 1288 0 R /XYZ 69.866 801.979 null ] >>
endobj
+526 0 obj
+<< /D [ 1288 0 R /XYZ 70.866 635.439 null ] >>
+endobj
1287 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1293 0 obj
-<< /Filter /FlateDecode /Length 3320 >>
-stream
-x]M ϯ?e{1[kr%LzʔDڢ1FtWIϤG*7ח_ls|/b͔[fc}ᛵSB}G4[)wxϷ}|׏'#oXïW.Mv6EeO[^p\
-6% WuuݯC1LG |l ?m51~a;N&ϳQ
-f:R]0k.3A#}k^ P |HI'3ϓ%[>Z+&0œU~j&~_aI4LWsM^ϑ-TnkV?>ʯŮVW\#MJa*R(ՖeuZCUh +xVym˕䳷&sRS
-ϯ#@ RΊ<%ZĐyb*Je-RJj?4_H媅cH )2SH5( )@H=V埬`=b2ױ css-,?
-knpc쭹mh^e>W]O1ku| ƚw}e fo[oc*fHds0.&dBI]+lm+n,Iٞf\u"·㥴ԒE uIKSmd3CNXngxmǖK-NB"(`E.^\L.Q@
-
-dl~_!U*n@c
-ωKv-cz
-ꜩ M\) J=Gֻ3hDp+nGT*K<B6+[lVt[6':6lj~bFVA9k,b&OQmhp6EZm}!dLuIm!z""RLu@fN8U;aa b;r@D0!yASEf?<ӤFO+#~lAVX՚mr\yFK[eU ]\m?6
-8OJBT$X_]7+2@}u`D_oծigǕԒڇ V(B^^AV1Ze{mmEUc@mEkjmڊV aڊj{hg]{6Uf#ct8RչhWƻWu$%]VX9W&1<f>*ND<Qi\0EmxW̃EXdTF'C@]CP;g 'Dm:cUӏív;xyJdkQo)2VS5
-Z3xl{zˉR%pG|6h[}d3G =-I~[fPQi0?!L[L
-OLlIE*`l/RAۉxF
-,%:=F:Z7SY%X3.3iWaO OXBh<D7iXgƳS46Ym!<Uŭܑ2\ZpK#L$ܺҀj;[
-h ΀{ۉ(d f0>S .ht<K5F~ Rd3UI-j/5ԁϝ4x'e፩mh>!dlֆ5ݩ\5+ȋ<<#Wf滲~٫k<tc>;e)uqڗ
-"ͬBiG ˣ
-\rum3
-60VHW@s/9Fyz,b^"+_cB|
-OE+*cDX+Aj y2Ȅq$G=R(\:n27JQHYa5sUB+
-pC:)-
-N8Թ"6;Mj/y0k讽b26 Nn9Q[@9h@zhd]uwEF%yER<% RPOjpJT$^.(Q@
-%d$y~ĨHjJT"*+J-P*<AnuUAn"Z
-UHyq»(mdBo.yfrG%|ER<% RPOpJT(J.(Q@ʈC%:8TG<%|EJTn9Q[@9hD
-D[J\F&L\ѭX׃'xJ%HJ""a?ζ( Spoam`39uÙA>ee=H{t!s)0e.c6^dAO[`dFlV:fݫ+%%"C T<D#[LrwJfYvvA)KfvH|P,!Bt*^Qn=w۝:j6, w'9
-^?d!dl!*r89d|Ce+Ж t Di<Dʅu~Bk
-yі ;)'y>Q<#N\4xCZW w6(=Z_ГgX{8âb8iXwD(9E9J8e R׬tHRϤ.,
-xL
-<cF၄1 ~Ӈ8
+<< /Filter /FlateDecode /Length 2977 >>
+stream
+x]Ɏ8WF4l` :}ahK Sΐd<"3h!oo/[kooMnA-$ww)w)ͫEJgWcNKi.[s|C:'O'
+N`)P.9JmRwSZBdR]8^
+˓11 ~qt¨J%kw^' 5j
+"" Obp$@J
+x4Q*F@/U$|J< vP <CB
+ aj zj?H0.
+gQyP+ND+|
+T'(2xgI_f>k֎n\ky^Z*`baIxX*٭*RX_h"ɁM+}0K5b
+>FZ9`TN)H !-']F,Ʋ@&*OЧmFµ~^HeXcp1ZXnd%YYu nxA
+gY8x:tͲ@ffشf
+V<cSp~fSE0u}Գk2`q@&CRzImqW("Y_˅V|_T`]r/VOlwvLKנm!:DG3֐4k-ckDZQ72dA G^^cцN@P/8<к r<ЂuMp,m^AĪR||b;LLlwtYUlCo;%ps<bia>3Y}Wc^!zO2:xlA &eaB;Loeq!OS鐝}O[k_Sף+4}/-]$$aEeK ա䊎ߵ2RHnkbmdc)r ʻrBʙeWN#';;;dX; `7! FC X;%_Efk
+z?ߎn{Ͻw歃37=4n[-gNP}'B*D ?)®` -؉>h  9`
+Ҩc:kpz6-1t1R &NOvtrq]=tU؎*EXt9vLXSm|B94ɃU
+/1()Ή qq+LL3'&[ U'tĄsbR61xLL-^a=-θ=pej ՙ3}>pvZ'3;`gjg1spK[gjaIՠˈe3X8 f,e~1L#2Z<đj4G,w"qsUX%,.K]>We[ Z;D
+~ܩ2?c1#qxceSa_%]Pg* M3cR =x>
+/DHLd;ޓzWT=-t- -5
+4H s=]?̏]8Rձ 3[1 01|
+w1kg6:t
+xJ03>rFOz3s=^X9ނaf^W}aW|cf^)[#CQjݗD<#]fݚtq`&]u'~t3e+EU~5៹4wCh&/DJu<p$Ƿz+asBt
+ $XlI
endstream
endobj
1292 0 obj
@@ -5521,23 +5468,16 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1297 0 obj
-<< /Filter /FlateDecode /Length 3239 >>
-stream
-x]n#W7@` plU6Z]ɶHa[XsXTK__?GЗr_~\VKd-˟jmjkmZu\w?<#X=<#,R}}='?BWޟ>nPo8uro7ߕ:_oRQv<Ra
-ZDW.d`12LE\%*f~6ys4&CXqDdY 9H'afL['غ'-<a^Mx@m԰jk@ڇ"5D-QN[ۨQ):D.<[T`U5EqնU~~^y<񬎰l3}q֪S>UVӶgms .A9cgpY/1mڸxd>iy摃WT ,s\9pdl A͓%0 !˰x@e{Dv
- S]e]|p!DE4}_,,M>kKjPs`=m0t{X-Z 39긫}TL'^Kۉ8TJq/y?Sal1]3C R3sw/wLcu{0-Be+ {ٛfL` Ԫ!WtV6Wr4N1X\S,5nnR,-*qRT-Gq˖9
-IO]LAҙr`?%]d.XejEm/ K˵zW0\dmQ36 I !b11'^b5L؞ˀ}FK#©a]H{ܡpe $͖lAi$ &OVQ%# 3%
-`?+JF$e>[a]07Xmޡ|ǧkN nrYAj9ӑNSe~jNڷ10m@jg$|،%&6*fJl p`6_l}ɚb9]Yl!)//Xk=_Uk8kmюٺ]"w8ԑtw"ۃm-P„nX(aˏ
-K2%
-KbXAM*˕ZW5KAGv(Wvٺy򄊦ÙQmAtg
-jcIc=W)/?X`ILTҏfS(YT09Chq(ǒsT:nwzl?
-oSR xT=niTTq=Tg@=DJ*J#DJ*-^UlckrkByyjrcʹ fuj=\& BLPb7t>&nq i3݉uڠnq&B6 *X+TFhV4En3pY,|/L
-'߆Ųm/Wz=TOQwr ~G0q'5_o5]M}RQ.O2)u6;{ͭ-_Z"XanUf۔tu۔"$"g[rȁ
-\s0CuJn“xXW܎Goi}&N'*|HΥ~A`7N""쳘./5\*~(eM<G.c$ Sr%1QUiXJ8W݅]偰(yrfENe,": K9Xn'edi̝3ۓM'4?psD4&Sm7Z ⵔIdJ=LD
-
-VIDz- T\j90Im#/UT8g|6_MVzo(AuHGy1@(S1mYBL:@GNb_PSGd;RzЦW3m9Tf=uqK5Hۖ~oNj
-G;
-sHœ9<% _'Y@ ?Gv3 SaR2b0N%%`;pO/L9
+<< /Filter /FlateDecode /Length 3105 >>
+stream
+xŝˎ6E!>]4zgvb]
+dD墑UYԉ+2*h}o|y_^vۏ|1fnQ-]i߿jmjkm^N&/ι o'|3ߏg _ݿi\?qv|ž?3=PwGx9X%U]:!H`TJe!~Ao9`=e9^}~߅7a? 
+vs9tZ]EؾvZ֌Yް>o3hS&蜉r=3q3%?w%u}?G`Z|<tPǼtQ؄P'Ҁ}omT1fSZ'"T795yeg#Lt9i#3fU3y^LTiikewVX"$h~dY!XcʼnXJqŪ{(ɶD%m>2RGEBK:@!Zg#,X3 Vp.) `ۖkg-xoy؎zo봔iTC)kÓ.CSh1h4b$x$Ah8Ȗ==Ӎ\ 8H[7[aesׅNN|8|Hm]{gL38wR)>3DTKVeJUfUVʀvU+ױIb,/4% 38ʲ*lO-Wβ~ZՖ^+Yx3s8\3К5pmHEN$Vt0q]LStG+EwN?(B(x9vPT\7"Z9&2-S)XH:?$BTDgoA,,4KW1<K-I'^``gKÜ֘<6;d^9[gqvL 4w;Cʬ\'fV Y.)YaVY]2b^=q1ľ֒v1ddG)^SK񕀳%Υq&3;g4YL
+uxbLl0Rү\vkm\skRRw:Lw@B'(H'bw@sD; T
+ l9 y0ZNl,D-eq3151t05; t0ɬiRf O3+ Y4<febV/ CBWhľ
+۔Mbݢቅ3^DTxKwJZxUm=2 ]mJ FRAFOD9K'vxPԘ9KjPMNLG#0pٵ^AK1I.ؙkJ05f &R0Rܓ I[Nb Ov 4<nbk/ XCkGtĽrO{ Y(y* F:y#"&yNO&S< 3~062HGX;* |:i,ǀz~TM8E3>GEK^\'f| .)aV$}]H_֬FRvRu[r=bPhNh] СqX{
+W0YH+ Iׄhj7wh#͝/?g$\JÁš1pD}4-J FI &3SQ[>ڜڰjݞ-$QLLp%ml,ZӁQ\j/ܖ5
+cdH4Dokl"j֤T 2utHQ$(X2ȆpЄ۟3`ZHc[CL-5EFZg^guA(
endstream
endobj
1296 0 obj
@@ -5550,21 +5490,23 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1301 0 obj
-<< /Filter /FlateDecode /Length 2984 >>
-stream
-x]ˎ:+ lgVw3Ē-RHJY$mQQQby׷?nN^H^{{o
-~!/_BLBjߗR)R]tFJ
-~nO8-O{GW~oHx#|"+B
-¨"XbI !&VBjԾ^Azm<!z)Ҝwk{TGk3ɟ﫝:vꩢ;_/z +Lվ l=e9ޙPlщd\lVp\q&SR 8m l/6n lk!" *b|?3ޙ'8`,FQs0lbN_g ͌e2&S/1&< jc"35.
-gy#f|)qԨ:(4<5j<уYhQ=d5}̦F ֈ'-XCF&+fB."*]OpJjWT'7+o0̄u#&46c$eginj;-@iqD˟f%h}5₰HVyUo%UIǰWm©B8K!~NP .w\f-.tOW<d[躆6>k3A n+눧+A¤Qފd8 utpRαh&z@ɂxADc *s,cg:L
-oAM $-&=qh0軆.%OQ!Ѣ@ɂX1DBS@.'ԭg4umLc^nz3wѺC
-B D@'
-4R,C pn|FY%b4HU3^1Uƽ8O{]lx@XFҭƣW/:e=|4nS䰩3Uuhkfhc{Pe*}AtF3#ŀ"c7D[B-mzh|,@v q B74"tCCy!D[IO<<%i2z!r']:0Q0Z@^hv-p*uR+L܌(PjCm. ɸ =H;܎fԏԦsshʧ܏79wr>\L8{rwv67O
-3/8{?\9qw4lb؈C;/=%HƢԓH2hI3Rf=eʴ1`L%|I;FَSfBhIa;EY3QIC&W[_ecNH2tDsNH+ 8e'JÌsb񬺆dYN(>q &O)bֺҥ0a6b$]{7mix'iD2FS'Ja2qҟeC?qzoy:f3);1>/+"6(sfq_w fI$6M4礈32d5e4Lugti 'QsfSvܞrNYD#m ӹE"w )mz&hce34p27G5;WzlGYDsNh):*W3QJrB|#5fn%yB*sRDF)j2E&b.y?^
-oZ9`wx+EDUMO43rg(K5alĐ NDX=AYDY;ɗb?nHm
-٠[x_M:\([5hs=*zmVOW7`9q q=NʯS8 <p͜PrQ Gy`܎;<39(SZo!<|X_Y:Kr<@}\/@"<<"
-&E \75Znp rQ.?b6_䂜E.)G!PXL'-#fF'䄣<"/@N9C姘 CP L&3sf==E pqA偞q̳<x^m*T_ %v%j6
- qV8X=w
+<< /Filter /FlateDecode /Length 2656 >>
+stream
+x͝n6 U-(
+lI^cSHO&OZ3G_˯_^-ˢh|닁苹$r-?imj^6/Zuo?OO)g^g߮i3bn~￁PZB^:"obquTfe?dwK]]* =_!eh;}o> .?[ߋi
+0)(<U&LGZ%[]5 lsmsm `âLgr9tMqjzp.e~۱ +}Eުcy)ǯ JiCùV(ljכ`>6:RtW(|sYvFxXrKdpFfYY;[w06|sEC5[SAgl3I9*sk
+>ulR)}U.+YAz^|VqY*JjZ
+uNi]T9 ERv'vp zm uZ"&:3&X s<b6׫d;9\=˅|Jw%? X&0\ٮPecqn
+ًqbT:'r-k=_/-1Nf1$ԝcd
+x,@7%s^g\ڪ2 /bFUw.H"JTfs~-^H_kx)?b!Q)ș<El{2DzI콦ZE9:KdEP,L*¼Jfr|BRٺOWD #_5lz(8W1/4$SzU=W"/snDX
+n,p5W ً t.58(7R|H0rcG)n"1j/rqwn$QBsJ}
+aFnZk;7#vF3S^ܹ݋;7#sT(qJ]'qVA$H0rcm<2%? lXԂb3Պ8u$l(=M2Oa%Y$<ēs,~{_}J>|Ud.zpפq{_E&"rU=]"
+wM*ڸ|5DϾ֐#K"wyq/dؽ1. G"wͅr]s0:l02 wKgᮣN5N X_3慆|J2z~]H_G Ź[<TbqN+I*|_WدH\:jغciHJ%7R=||'E ڋL(EFzEbRV4Cr#ZCnXF3EǜAp#BQDQ9EwCV!9b
+Fjlٺ34v{Fk:q|(@Šv֊n TXXX8 $!8I ^n4XUSs8jbb-~KFmilG6O6>,pK#]".i(NDJ%S=|(|fӘb /ox % U="
+O*P\D(uV؝![o{!|ApȮ`# s0f # 2>lF oٻi۳kƌАOImOǚ"0;w±xk%#:~ d'nRqs,DZn݋b U:3o=U{D#u49/"{vE.{D I(
+`NQ
+M3=e{'Ýwk+ 8yo*8vޓ73.4A=k.G0^Nv`>׉٬3,mמ3mWtZ)lRCmbR66~ V$n}}955BJoR"] kۢ9oc^dAT8=ͧ69/b{xËL .Žt!@\DQIE@|n_f .C9'"{A`q G qAauP[$
+<{ݞ]3f|J26^{O/Q=x4^_TP rEGߩ5lmͩ1=-׎3HM*rl2hY'o/ݜ
endstream
endobj
1300 0 obj
@@ -5573,26 +5515,26 @@ endobj
1302 0 obj
<< /D [ 1300 0 R /XYZ 69.866 801.979 null ] >>
endobj
-530 0 obj
-<< /D [ 1300 0 R /XYZ 70.866 479.203 null ] >>
-endobj
1299 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1305 0 obj
-<< /Filter /FlateDecode /Length 2974 >>
-stream
-x]ˎ8߯FhV[ ̲qwNf3*S1DT,(ʕHI#Ɏ}ї?/Eh7sIZ/)-翗y:8c o9xGZ{xGRg}'Ohx}~flW}]>_& (EZqڊ~Z77]..s?3WE|s]u
-ukHL^+$Km.AXI9nsq3cN[&O͢kXFF3 /|>aVBKfLK(F{ :Ez^!u1a̵e1U1F:$1ȇxc|{-"v2*j[~4$UpÈAX#.+_o"XDۃ@T1䷇85>>9u&2\v
-ZD %H޺yAc`X?K{)zv싞v'5:x,Qļ ;3{"%Fu]Ku<rQI?':t xusVݘDxo\A֑ B$tyk" $銙sɴD!y "Y E&'|f`N̝J>K Ҽ@sp'lDcǣmJmz[ a~B)#O3)Lr%\g2nTNq
->qf68 J11b
-/20CCǫқCptIlly) ڢi#JߢcARsw$:r6cW=ĸ@X ']'MA
-nKMAJB97=(
-pBU&$ry0QqYh[7/Y|ʸڒ&j;fͫ-=p#[1ok`h>is5EJ2Y,!H<Td BecDB:%@ǀ%C^L<P#4t86㌛'_ksBQcq~#^::o#/D c<A4u8Ҕ،n^"
-#PZˑu<dA\e Ȥei/ J;N"14D0upUҢiz6vr{YO"msRՑfsJ|2j[O4-Fmh<K|7HI{KI2h<QzH ;?#雦9+h0ƈ "B`b&{ Ir:TϺ6QG{]Puz6}GlԳlDh* Ji BeX
-y2$l]td2͗Y"ڙn%1e4E<zf~\Юh"gAȮ&zlbZ:@Fu-ZXBMU/{.. UN77,cDcuo_wFIN 5{LdϨ4.:|:SNsUu[.EE9? 0$b7 WL۳'\e*i}܎=h.L@K G\-1
-u;rs4떺gӑNV42K
-˚31,qNwJUtgՄcnS:\C5X\XOK8!qCy7JxfrRŕ1ODžKxd /6*z֭w ~
+<< /Filter /FlateDecode /Length 3063 >>
+stream
+x]Mo8hIA` {%lIJEe8ի*If?~?> Ll~Ǚĸsssu\\97swH5ߝso=>| ;w/
+5" 1gvzŦ1Bfbv *ĬUI&ipc˜NLy3E'5&{HL8NX5v
+mYMx<]Ud'vXzbofݖ
+S*~}ym*mml>(lo ?M8)Н[U3>Zҿ#b+Lmz@91;^X$s<tsb 98'`SdhN"Ή99q8'v"Zڍ!OgqNΉɊ-#DzqN|4s"ؗ8'>DXq
+Y2LW7%Z 5e'cbpN܈sm}?cN3of 4;WaBSXf36A<?RN6 tAz(d07LepL~1|yWz+GI7|ex
+CW8|ѳ.Y_k"k8|u /r y
+R1) -67yJh2FOx|8M6̎R8>BϸY? \mZ#^b;$ҙC7M~oȰjFc}a4۫-P5h
+u),fDː.L
+%yrت?2q[em&ѯ@N8= ;VQz99cr]pϜE0]FvAN8E=pW g| r.(?eP>=-Lfsv a@Oxz£=0?hg큞qzʣ=P~ʰ!!RttPW{ 'rW{ g|zvP~ʰ!eQ{vx.5?ۣNqUpL#ljOo8crW`mm
+/+ eV]]Y<yWΛ.PCp g ji !! 49cNoZKS[X>կaeqme,Q|\S6}\)!#X-+n
+@On
+.J;w2Eb2E626G5cBRa!In)ojyЈH;Ukxc Sk+" m
+ܖ=Vǿ޴[9ZVGU)q^Tr<Xz)o̕kY3/ٺ‘\m8΍d[ֽN>Ƥ
+#SRtǐ4 cik:WXr cqlƒo2%
endstream
endobj
1304 0 obj
@@ -5601,25 +5543,24 @@ endobj
1306 0 obj
<< /D [ 1304 0 R /XYZ 69.866 801.979 null ] >>
endobj
+530 0 obj
+<< /D [ 1304 0 R /XYZ 70.866 570.859 null ] >>
+endobj
1303 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1310 0 obj
-<< /Filter /FlateDecode /Length 3520 >>
-stream
-x]Mo6ϯ?ߔ 1bS.KUrT7*a{n"+_?j6|3fnI)[fm?y:8oϟ˯Vk_I)_w}}W35hг-G̭ķ"n+3}~ UUѨFr.s.J_Əeοf!`Y9kbڿk U([0.񿗟gɿI/xw㛻6iܔP۞Tm|(85P;|8i [=@P ;!& f6Y
-'h;lQinQ\ZgI5mmZ:,?繦GIs^њImUXlya<kUM~Ȓ> PǟcmUkuXt&n&QR Yl{q&O ZZtb; iaSZO]T/MenR'@hK"T3pr(8h `L
-3<P M?o<]Yd4+>f {X͍2o^kpywU7߭Sřia[|-xzbk}d[շRWR A=\Tuv|,?W0O)ADnƖ
-'/IEecQy}Q^Y5w}dv2^ZS|GCH-BSZ^Y Bv(eRK\X>HN52/A/O5tl Y&I!C阋/›3Fsj 0јm8F} 7"l;Hf=<'|k48P Ч@EuADpAjn"os (3Qxr 艈n;iy6
-qq7rt=I]_ 9#Ur8]wRSin3sZX_2dnY︇,UBwY!KV]q2w"Aܬ6eZy.;.NYWy"iY&-% ,T
-{c>N}YQņbPHTF.R7F;^\Z/}*3jV6*B
-*AB4L;Q0 sP
-0w}ޏSbuII|ǘĚ%ʷj" "<Pӊ
-NZ>[=+2 T<<$<"Ʃ^m;`6#n[Uz*DUZ!#V\aU:*/{mfڙT9Jǘê91ZXU*V1UD}#UOCj P!<xCخ/NMcxTV>|ݡ&֢{4eN2@;SU|m'3a[ٌJΧOU-Ԝ)D5cǂG I.{^oڣ[ƨKq+MQeRz֬j֚5'Tx5DD8 T?@%*q cġ"x4T+NÝ,N2(YlhSAd1(5HTcx@]ʹ1ܘpnlAh8LP*63Wq6G!L^# "ˡPVAʶcCw␸oX+ێCGb{Oܫj~ZOxr'sDU;6 m.6:1D8 oAp7NQ*~87X+
-u$:@ƿKB!qr.g"^?ă=_H_ꔺ_$].w<)pKnm
- a[L[,tHjnP<.M<uDa QAOW9}oְcwós,ii# YZjgɇ xy㕭K*+=o_I{<$oo1٤.q<xm[lQ
-kbOW'ʔɍk'SN(B<LqU}S!E%bߗ\ՈQF3g9e
-@|EXGH%ӱ erMvL|#;cm"[1щ^*$ғj4w(}*<?~~`#%
+<< /Filter /FlateDecode /Length 2809 >>
+stream
+x]n#9SF`0@3}[u4}òDDT8vl#ER(ѷo痗_~} VT6ۏ~1}3UrQ_7Ww͋i3<78j!KJ=qo'mFw,ϖws
+*Mz
+&{eA@پZkG
+(B(0_ۏ U{"[ۋf,8X S1[g:^]`!Dj,$F2-K˃|{_HCW3`Jodsj  Ts:B{QSI:2ATcq}q} F\\ g*V&&K1A,x"&  \>|YTq/CfrVP^OkSx q:{:<laZʆ
+Ei\iVt-"fLo)/G%{<&䥩pFd泉
+T=Fˑ<$_Du%_>oEVx^soݮὲaClD3I@b۹5LD1rA$YK.dq3,L=pJCt}o0}^۶U%$@ԮS_s-!ϻ= ;u$;mE hsƼWjVĽx2g,X/sue-1sLG{د#kӵA$@ã bN_+)I%|Q|bKd=TW_:Bn: fmk\O80Fc 9>XI;{μK"jt|OĎ,'y!ݗBu)B</1xT quQY/b Ǐ,fǭn^4T(c8uњ6q+W<
+uH}%ym#{I7JdOP7O,lg#8d<#8s?SZžĉGez;'YpvP;B_5Wa<%N\PnE]y  X׃<0~R#x$QbƑZ>#l>+].誧$l]OIQ?Dj ?U'F~_~Zf
+r$^W6Hv#7NjuULrϤggQ> $j;CϻMR@r$xpݥXZG+7l D?꠺r7sXX@rJtVJX1@I੄n(dmz[(9NO z;;vAGjG5a^7 "-Z./mOLdMT߮᷾򺭥ڨ5M ydDuTOs-R:&$(Hy"xU\؋ɥHI2'$'񘄲A9PR<o}I~;yLkcQVO+Jz||6zu`
+П?vnJYW''=~RFtmP:ƈi6W:)D^#PxAYkRr'$?V0
endstream
endobj
1309 0 obj
@@ -5632,19 +5573,17 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1314 0 obj
-<< /Filter /FlateDecode /Length 2827 >>
+<< /Filter /FlateDecode /Length 3325 >>
stream
-x]Mo8?0Z}t:8b?,eNL9dɡR.D[?Џ?=Yh7y$iJ[ǿ~~<iq^sVkGRJ1?qtL,c]ha? g@H <ok x4HLq@ZʓsKʏG'}(g1GL`3Y Z7ȲQiY$ r<x8禜1so|— -xR3RۨY}z;vTK/G>Fer&ɠVPŧQ9^uG ~z n)]-8]eZ
-A ri8;D9B|kvO[M3) _/٠<KCM Jg >tfSY_(syxҶJ%v|e6&kQ̐FclrD`Y0FT[6Avd.vsz .kef*i_6aA20fvݱLˡCbayn
-.-D{xz14 s[(`q-z3k<ck̺|8B/BFe[9v#B\&-È杌8Ni8I\XTpRO tuixRI-޼.Rŷ-^\"29u ` Z<(4J0T-u]NlD y8؈/oDunq,np&zY*
-J;b2TT JxaqG|DZGG-x D7G} 0ec>o(>jf
-wPw D$>@-˕鎶K)  Cj!HLmW4z[w8eLHf($v"4"Zt)*r#ɹ/PlĦ@2-Sc3B5G tJ
- Ojb`Hy{H unMi|eDk9s68K*Rt`gMw.sجc[..lUd+B5y8F9TQʦe
-!oc1A}5Dx"*+r"`f(Nl:y^Bi`*D=;/@`5A.@w*j#|OyFԵ]eĞDgqzvluZͶhn=I[Y}lM=qg'Þ
-W>fz2nY1jJS]N9=P+ɫ0]q>U6+,$j2゚9iP7ƍ38gމ1{[#5Ю%Ė6srb N3`m rZУ f=ؗkAH>WN›VtQv$mby@lh>3\
-1(3G!\37a7k5&dSϏD
-[PD |aQ [f6p
-1(l3Ga[37cK=򾮑"ZQ/ ؗ ӌ
+x]M ϯ?%f1[krK!-˔EdUeˏ"Hn7ۯomRSѿ7_71<)m᛿]kSks:8c~7lRJm~m⼇˞6ב-Ov_@M8|tײ.+sQ
+ q*vwxt PB63
+hlz Cij*$V?"4'yktSϪSδД&Ra:W75)_42U*N,UK)AZY_+Ѿ3;$ݥI0;{'Mʃgzv(-oDZ ?6
+Ϳ'i\Hk; _.]"?/ <`
+!.OZ"4x_P2kZ9? AρRt*tm3~֭
+"WyYM|A6KuyY[_4X 7D
+P 딤R0L\)I=WR5XSͲ{%^$YI0YS5kCcEx*kA^^Z^a'>Ze+ BOl{B?qoq\]=WQ`hq|PhtK
+kglgAkf຦1D57I *O/!Pq*t#ړU
+v;jaӳDhi`K #ՔT~xTBYGldײAiK#EDdswvlCM>a^Glh01Ä$خi8`4p&ֶtAVJ5֔{Q3 "%)M :G 4<Q `Llb
endstream
endobj
1313 0 obj
@@ -5657,18 +5596,17 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1318 0 obj
-<< /Filter /FlateDecode /Length 3564 >>
+<< /Filter /FlateDecode /Length 2792 >>
stream
-xڽ]ˎ8W7%`L{\mם\KYE̤C\6 %#QM_?j6~3fnI%[ZVm߷]kCkupZ%n?˟Vk?¦~>7t~M`o'gjBhЫ- G\_?ܨսG!{cra/o֖5ױՕRf&~{6'}
->e=B*ʬz׭6&BxuݢsYqcC]߷w?]Xɥ/ԵtDsJ+گx ;[;^]21x_TmɅ 5&Ž1O)/Ff>-myUgQHDZ4g#nK %5_A-(4+Z8C{Qc24[(|<ZtQhhBLҡq34C#|>rж'@ kJGr*4и&|r*+>U-pQ-!嫫 !~j#\B%Z!
-nÚ<qȌqrK`-^e&?sC*E+ ǂbyy;(섣< xvƋ<S@<^"Q@Cpff\f, ǮQ5/N8?d7t?$/x~ oP\"F8'-mdvQs섣\r1f8E./rN9Ka]DU0<t
-'ʣ#i;ڋ{tC>_\ҋan ;ܚ}Ԯ!GJZS)hkmq9[:DtaQ%"ۖ6ے^5Ծ\Wt*&rqtP[mK^YNxV*6f9Da%
-9сԈ$-HA$(2+6 3>DbD+NbE:ыH0fdIp#me#ghH0$-J#$S2W<@S2]"%$D o fȗT1N;^{[:FϬ #i]A$MvQYalw?Z;q2C.d:.7 2&';]ɚM$oUM,7VY{(G$|=}%]ƜΡ2t? }*DDM! O{cmޤm+obۤIs&#gLj9I4g"Bx9Ͱ^q<m蝘3x)⊛ag8N|ɶ < 'z %Ó>3{N7umΨݤ q`fl:lxfp&Fo%6:9D$#!pIf*t%}cZ#4#Es5 [kFN*,PK6HL;/Nu;k4RWoh
-! IP^h1BWPzg
- ʛ Gt))w:P
-6{T݉o/iߖ`x[>X6%= O8:BH BABđW64ж9 DXyEL e 1XBIkb ")
-Y"=X+qñO'F\
-+5'Wh` v'[CDXԡGю8
+x]M8%o-bUb2CՉ#=>$M?ނ-j6ۯ|3[*xKyQ+wwO͋i3o會3![Jzr;4G(+g}O
+;
+s|y#NlrP y$
+ V挟5O<}_[;z4CmkV}l?qb N8P@ )X(vWx iAi㺘b,VA+"v*s (Et]HP'"uAT7&Յ,9@m[Psf!A'kB-pe0ɢsIEX -[gt((1!$kdA a>1^IjIH#N흀)Ikv`daϜ'6ViܳLZ{Ԋ^G:NqM% Y$Dp~L+poYF&aGO|H5102*:OadA֠daa"&Y"LEtE&&"0zL "l&D
+˪$#*:&&׵R&Hܝǹ3%-uk͂l=I`Q:a[cBΦ91Zu!|,_L)-*}AI0YC1ZE`,bjY},ZNcՔ"@Tg3TRIPuS*]U=}8M*E
+o2&Ï; "u1^VݑIzkccZ"x%s7^mcW z¶humIr2ߠ$oPIrO0_,bgK"$`q/1I.JID$I9?P^} p|D,$ Xy$UJr@U!ח&?dxAQnUD (ou`GDo1s6Qc&Ǻ 6 s" {
+9?P+Qb5G"JZ~Q~<V*i%*iY]I_o-{:Q_+_>d)~B/wU{Pʾ~y]hOY2_uR:@L{U>L0;/nEXZaru\F:t|[GR ұgb֐v*$珓=16^Ih뤪qhb>%kFmR~ikU0iL ؅|`j' Bʰ)b#$t(#6
+A÷A|ee`BidA``?Sv
+Ⲋgq– +a; ,; {)_,bc\ gCpo3
endstream
endobj
1317 0 obj
@@ -5677,32 +5615,24 @@ endobj
1319 0 obj
<< /D [ 1317 0 R /XYZ 69.866 801.979 null ] >>
endobj
-534 0 obj
-<< /D [ 1317 0 R /XYZ 70.866 771.024 null ] >>
-endobj
1316 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1322 0 obj
-<< /Filter /FlateDecode /Length 2841 >>
-stream
-x]Ɏ8W} TfU60Fs>e0A![AIJ !EHIM?>%?!oBLBjx翷..)z)}oRZB|g~oH~_^_u2 [#8|n3޿-oLW4}9ןU`*[\fpc
-2pcO7w*)њ[f-;+{vX`8}+|,~[+-d Mg|*_Đ῞¨m_#Z8l> ^5҉W6
-Ҩ0$vI ^?|=KFy6a[0H!,OV"iG۶J0F Kt 3Lg _5m{9vlCV\ЪIUۭ•J|U#9KWZB|ZȐe4S-KܳR9j" uQz.:
-gFx#gkHi p}ڄ$5mS GM[ ZirDֺ -䧲/X !<dM2^1m|[%}!MT5;v<˚
-@f iCl%nԺB4rWt Xb6)k绔uͶ l3Ͷi@uJېtΉ=yԹU CW}3U0xU8ħD( r"t,V=3=Vκ(XX2B8qV{Pc%`#o&6G ]"x-$M;v|N ~}f"~R!b~BuNLAFh"7E$|X>"(b թ%1裈-D)NNP|x=(#9!#!>n;^N *DzOB<ܑ2ϕrd ,@ 5Ote JVfmRerL
-Y۱al^ڨ{r"}d"z의O! ¾
-Bu&gi (d q
-Mcy\}{{׹=x#57cAU*E!9)$z袐,
- )0.L@3dM >\ $,"xMؘN<5a04kgn0Ii66AA.ەLzHwxZoa=O-W)b'(b6I5QoL&|jM ImPSԚĠZ7uNQk<IC 1$!+'>[gAa(VY0=|uG8\8\8\/.e:
-fm|D56L uQo -hhaRd]Ő%Sl@ƃAqBi!i{P4}8-ɉ=Z?Ǥ!Zc1FZcԧ}QcYp~!-Ⱥ#gB"-8um|n`n{I k;)*C躃A [P}01Ā"+;ۥoHNQdI! =@
-[ΐB>RBt)9J21#)1¾ٻPh]aQوlWq܈0qBGoG} wr7N\Q߸cՄ+X]no0U
-Jіv/N/߹ uNj+>ǝFǕƾB
-v S\^?ں۩%
-jͥp \ICv F*(ە>ɩ:2EpNrB>W*.Cd<.jZoe0(sӱEQc?TתPI'P,"a\y^ɞNͳ](
-VbY)8<]+<]F,
-E0%?y
-G'>֞6C\x MyLF1Hgnz[),V
+<< /Filter /FlateDecode /Length 3093 >>
+stream
+xŝn:~ ;I<`3/$dMҪr[>*R,/o?tD˟SK"z 1 ^&)R]tFJn-.Bx|L6~CyOui ?
+D>\>>1!ov9{R>.OoK7q7DPI"wߵHZ }.l30_ _EmϘ5x\坐hB
+j9,X(}l<&
+i?m41§T,_mNK •:7L>;;d111GEXܠs.u*L)JƕU#ZA5ڦ9I!oIői5TPK/+Zi!chLݵUt!D/2c9r1oLyкA۔Яxd
+(h+:8Li5se ZOC(AE{lbs'MIĆEMAŵqԍD 6!"l@;\o.>&>zK J 7U\;t08x:-+lOc/B`~ă{sj7ɲL
+eh۟Krv<4JWƝXa^.س(q̿ 4Mb jTh9j^5wB>/~f{%ρV윙8oju PQ [[|fFPL:
+{ɤ핅ޞ'+Z$Z*C^p yOŵV@ Aq-2&BKkSr J3}t
+Jа6J
++8 Ĩ։CuWf[{ť[P[XV&xnَTŶ`˺ | qQքa`(DeID`+Lkb@h*m>|Kŧiu?95@NSc٠>y}}gɳYYOe7 «*λV,l+E؅jsIsmMu-ܧVS6A@,} %J1%qu<XJo4,K$L()퀲;)IFX㱱h,8l֮{."
+5S_v
+4.]šC,IJfO/^-HdFǠ]DO'!]J'~uXu[7"~Q{pF^OX9BfV0G8 3CKF(Be"KtJYw Y+4Q 7*6tuiM4?_ԭaq0sjUf1R{X j51U2 x>K9}1N -eA@h)ֺc3XF8~?bW$ؤZgTIw"bM,3X&VLTF1-3FpL?4<P4ӣou-xOɓ#_-gEn{aAQ }Rױ'tuݚ!M{Gr5inmqR}0+"JR '$}tQ|(FAC6Ɛ~ puۘ3,i/;Pqu1]*|Ulq,>\S-t}'%kaA.jD'\.F]MWt rj ju]F(<FxTFxf4f,4.{d i\<z7_H{*;Rf6c(Ɍf}sJ
+sj:&rC|mt 'ߟvǟoC
endstream
endobj
1321 0 obj
@@ -5711,36 +5641,25 @@ endobj
1323 0 obj
<< /D [ 1321 0 R /XYZ 69.866 801.979 null ] >>
endobj
+534 0 obj
+<< /D [ 1321 0 R /XYZ 70.866 634.62 null ] >>
+endobj
1320 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1326 0 obj
-<< /Filter /FlateDecode /Length 3300 >>
-stream
-x]ˎ8+4 8mם\⣊d)ծ#Cd)J痷__0%`/Exqyk_K?/~\~\\qnR
->a$>aιs}xr~
-jx`FqX85۷yze"rx_g<
-TD. *
-1)!4WB+ξiZ{dʛP
-xMVM0* !Q#jX¨W1*"R=w ާܘ`l٦QũG#;w#AʥȀ&P> ѫgg\<JԟudcLqx:f PlۚtRAc*rն?Vo0.T
-1AՊVߕ]"a
-OpKv [bQ㘗FÏ0 zZV4a1 [e4{xqduڂQI@9~%3K%ϝrI=Do㼛nw7ch-TsR]N5hfN8532QPJ%]"tXLrID
-$i}
-U9DS*Pd
-:DL"JQ<sgFQT_TPg8y
-7ƒc zʍwpcc"UOn(D諦u=RV3n,Y&
-Xi=qZqgZ&c5Ue@jZ&
-Dh20M3MYBXUg"`pVSi9sZwkKItVSUqx&
-DA3#gqƕNn懧c
-N7~ӭ;x/C{;$>s ^|
--ɏP(kAQL~1ohZHˡλ7[ &ZEUx+ZEeTeV6U.LO UEGuA\ij.?_aU;Y .aEsϏ~RʧXK;,X3:qEꠊn236f7~h:s]kr]xNkzc v=sX5s Q[L%X wCk>$pTB ݑGqϡ+ ްGi7;#~uIF^xo/H-:.w+9L
-q}ll1)k$
-BsZZZ9˶PmeA+$eyk+%L# 옄)0A S"01 boc%<<$L#'$cbtۢ0Si|H
-Q\v05٤fCp}H >$LlR 36J
-Q !Z!a@s,LJ Sxf@00A S"'aVJ}oE x
-qZy++SƿHKЎǝZhSABT<&'*S\yo2Eji7y2E ې,u
-䭬LT)H70^6mOn: VVA2+T~PZNT#hIHю>M ŋtd bt<
-<+rB*X}{>Hv@Moe܇f9>sb9ץ<rqum緇<?}?
+<< /Filter /FlateDecode /Length 3125 >>
+stream
+x͝n8~0` A{9e%XEvXX>NXhE۟_߾=ۢh}7sKZo)/J[oUkupZ ?_s`%kyuǷ_ڌ#XZ_a -Рkҕ#(1<ZW,z_
+*SM=`0iv
+jf=}w^Ϧþ6wu9%qwfj;#)|<e}IJg*;4MIʮ{I oWv +ڂ-e븲X%ܘNژQUvc.N֨ƀPIcMPvq-30Q3Lمl:Dtr BC~JA;
+bC#:%Rx҄b
+ Sx,Gi(7f?Tx
+aA u>۔5QyyU%Rk*oktn%GX;8eDަm]^$*JL(c$Q~Bw$>/^jι'Z%hsÅuxa1A[|N,<6x9d\?.&J1ӱ?_BJvY[ )m3q*|$=;u}F8[</j磻H#/)R"L3[n ' `3趕 afYr:ԉ5m;<Lݮ&ngR8ʾ=2m5(GNN.eq-;} '(G^NG#ԇ#$I4Hɼ3"ocn(yY|NZfsz:#*%E
+"gFR{e:̬^[.{R4yC\c\a 53WS;~:R2^(a+lmUZc/JZuWrjT)84Y,-b IۮίLGIN.t`s0w[+J땫6v+BxCVi{DmOx Jr K D!:U;JY:ͪ&^"`/8Dq?LL[)H0s^2R,W΍Z2;ܗ7!g&nJ4AOOK
+O{E;W.^.^I/^y܄IT^ ޘ)ߊS.i9K = @('H$p8.Ec:ǰ6|l=ѿʀukh+' ֘~lR.HX/ Z\bZ(MG7bxORH؜VN+H!bW<!BTNAf\_3[88w:^pf敂K8 !d};ȦYvXdՐ \9sdɬ'y۬荾_MQk~|d쾭~Du?8Y5 g،Wi{TW>F >#:߆Oy]:{$kk*k{/5hӰgpέ$cmlƈPKa 0㻼x)'{K%xGŷONEɧ >ePQ1ɩr V [cni)aˠWf։xbjαFzبf<^+v2<e{$ݱ'h'kǡڵӕn؟׬uxj7ZseiV;FM`uO#]X. r|۰!mس턧oOHÞW+V?9iXa<Dz%*`f}ʿ
+{yejܡrBphQY0b8<O}t$$-y@V(jGuE5ya =sS"$XssƉuFly!nB܀gx j  q`]zbU/U)r*ʻ}:1ɛ [mKkל-ۧ=+GL)1V[Y韗qx ]{y||AӉϔDZ W,0kD1*Pzw RRS^OBjFy<|I 8~73.`R鄠]#H
+kM*Y{T^JY%cc{؏1>:ǔ*!cb1<pDb$h㲘8/=@yzݖ1ýf[k9cr TD@(+MLf`&0B5{`ӼGuE5Iy Vkm9pDbq`|Q4I1^6 !*blB|CB$<υ{ X_<2qXu *qxAYk@\W !3em=(鈬κ9NJzIZDY;\0Z!N{== i;LW-?OvxZr־?!9+fWŬꢖ%IY d toC2VP{XE ;i¤oBE8zG~
endstream
endobj
1325 0 obj
@@ -5749,33 +5668,25 @@ endobj
1327 0 obj
<< /D [ 1325 0 R /XYZ 69.866 801.979 null ] >>
endobj
-538 0 obj
-<< /D [ 1325 0 R /XYZ 70.866 226.69 null ] >>
-endobj
1324 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1330 0 obj
-<< /Filter /FlateDecode /Length 3521 >>
-stream
-x]ˮ(W4,ZUYj77iJe;E)ޛ C<N
-Z+eZm4w
-\U28
-H.o '( ;P@u x!: 6 CK}I
-(BdDjKP͜<湄JKD1OvOeNum
-Y8Fp6pu!YRF++cejK7Pg":\BF=\Vl - [~Ř9Xcֳhl2$?&T.Ef_0~GN єŲD?h"
-nA" [%\Mixeni|n{s,~1K|:РKH5"HɔypSY
-W-IW1؝6eV m 9哉.s2d
-!S̱uX*T2x\ľL$ 0|ƶbڧҶ ?AQ̩!͎ q锡-YĒXDtQ)(2+{FGqLqh#̗HGjDzB#e=2GY#vzcvmELV9qEt##,cH밤zdz#=zd*=`eE!=
-qщZz##qL?Ʊ]
-` #W6j9 b$4ɦX($cr7=M@]ʁ9UʣEMu Y]LW;KI'TC%JbQIEQ"xC9%V }$`s1D ĈHD$K{%8~&J+ޡIF,Ԩq$ "E!n,v(2@t" mELVd 9qEtY$aa cZ\$/T=="I$rpd.`eE!Á
-ѫIǻȾ7J=ҎhsK$r"IR䓋5
-+9s\eCntr:6wdgrC0,3[0aMxH1PdaŋϾ/3 8΋>Sx@_1)kI(@YMyeFnqxsƭ 0_Z!P#WjDx{BFP~p~+ycpg q꧈+I;̽㕹=q8? <mcb*I/Cr69DYp
-Y1WpCU.\_=mY>עPF̒xrVF:>I r|1_֣8!n\gNrLzUf" {7Rr3~rOUm#1:in0&$u 
-W -dݎ8fa._C;\ ec@WOܝސxO% Hv1)8_01%MMhIS MQ)ckgejFQx†<q9LjPһsB'zJzd'j*ɩօ:#Z2{0]\Dg]ա);=a"B[!2F(g> ,* [KObzjADYT@Է=p`s\%)i m6FC$bײ40CLw[WF:(aNm'V-,G8|N: "ש^+\Koen{VV=Jp4:sıHNis6 ᕃm!N%uzenSaF;, T*dTޜ*kIz۩=ET;|*B۷֤ CEɺ]wUQFv;84MG(q˦ "C# ;+Q(F*d5n~ZƤdPk284!ƺ ʗ~۾lxu%g=oy=W[.lNq.[G6]Ξ#TWVk9֌_珍̙3E9r/$d1 q{uKw.0s(aP,lIDyQ>oxB޿mx@÷1y߆9.÷ѻ|.$6|E"PR1]<_\*B]NaG[lU`^9'_ŝo(yvj8Hx%q^;<)K}3%
-ueQ
-'KMUPTq9u%"z@C&'
-
+<< /Filter /FlateDecode /Length 3019 >>
+stream
+x]r8߯GUWW%&]5˩7E@H$%¹ĉ-Ç-no?݊[\S~M޼Xs7"߿ ^oBW!_+6w-]G׸w@-oW*?? @=jE\L4pЊ3Z\=.2x3>r
+Bㄻ8TVl5¤"c^EXȫC(I#Ͻ,O#0Ev[~OѝRD|yFڏ(+ /5lQN@Zì~(md^MTƬ TUFCMD' hLgul1}~]K =zsC;,=Z-:{|Ї)`_EU#j!%yo۰X=;.,1ƸfQ#ƵibD|Z(ə6V-.k_|N|اŷzq FƜv0FӕE;\rmDVٵKH2cWDH(1f'
+0m+p]6l[4'F5: l4k`
+  Glke wT%QpwIu96U 2OÃr&16=IDLciRb1MBΒ{BL {RL
+!aF 6XBܾ/]ja?>$d,*u_r 97xzMmD,7߳+L ?Oi"]s+Y~ҵ'aHD#v&=?D4йJ.6T{3nm}η`HWRQ9/zT  ZYXР
+} V$=>lA;oD\t&b!6"s FEצ\O.B+xv+ e"ϷҔTM&S8}5ߋZHnyqG<h!BeqWqE*.j
+:6A;m,6DDerlhoɂ+
+im"ԝ!K8ݢ@7W,S- .2l.-hs`\胝Y@u
+mow=df{Nz`x0zfSw̞GֲH>)s,& o#C*i~#g?T6niyI v<'Ӝ1@c1h[D/.:)
+=w<6*Zq9J[Y\-.O(jHD !
+}Ú%E}: Lq̛)}"ϠI(.
+;y,,kp$ Fa OΨ=瘣^h,*~ =j|C7|5e<# 
+jw#t𞉮CB`f0R\|%z|-WƞUASJ1˘IU6@;?Edu}C \)!eh9tE^Xtr#?]Diɏ-#X6J(_Q۲$ CDŽ 1( czE3|t["N0xvu&{Xs-C8HRDݷe \Y
endstream
endobj
1329 0 obj
@@ -5788,17 +5699,26 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1334 0 obj
-<< /Filter /FlateDecode /Length 2832 >>
-stream
-x]r W /ߏ*T325T*"D-PnjBn
-VM ͦ":|fBP
-5"u2h[X! 3i^قb|-Qoh~MIqTDvϿ/>&?V??+EW%gV]q~WPÉր-KHR$K՗Cklն5 Fj d Lh<'iO'/yC|=1u!Um&mz6/d98!x( hG4>b'xqPLqxAXgOxuA$X¨)F>Im$'b޲6l<Ƭ\T?cN$όBFZQ aX~[
-/ J=":h/I7r2|bH([)-Db5'ݏ"d6e|R=1\Ҏe| 9߹w-mҷ,lzQ)Yz,d&X(}"fmk`Dl$[WĶuZh/mcdoMɤ6hJ
-}RGBZ!'͔:(u6KƭMi`|JR":aW0de>ұnR2|!mHg>Bt^:/9iXp/JE1(uw9`UP E "*RQ:cRg~|iF(ucآԹ"Q\(u"  E!J*dJ}|Rǁ;yծm9c'ujGݪR:<R"XYJHOSGpXs8Z[# w"Y&u
-$=l4Wx*“tSxŸxAc%~2yʽkF-e<JyG+B1S58ۘ `wlk6H0p]
-K.,Eh)NЬMO1P
-( >>>`T!cǧf
-N`k&LG*Jdv&%j:wlk]M7b8`RV}1E꒹a,2B2ֺ-.qCaY XPԡ@ R "*GkXܙ5gxf9j>D d8P 1|ZKu R_F<1xփQ91K
+<< /Filter /FlateDecode /Length 3342 >>
+stream
+xŝ˲(~#ErWD:z۽ͼb@"Ȁi/\> $?d~/|ۧᗕVZ}qq-^ܲ2.;^\~\\\97s 緯J) #9f9?3|>c7}\ _´@ _I e<W<A!օGV
+斥<,3dd8Y}9\;*SWAnk%lU޷ciKH㌯<W2Vҟ!;{n[*,{u~F)SµT1J1ΗĀT )b@/̮d @>Q #1 .-Iz;}AL'|p*9ζTRҶc]xl BuRџ5լx5 *ꖊ?(:w[DZ<N` TL $MXi OAƟ&o xMAlSMxNEh*BU MXД865%S,{865
+"V, XYDg(ztE.G!;)DZuo:"P )[Hn0JFA[+8]Ɍv[9V2+ETewr/&yRBWR~I[`Iw4[,3UDX|-:=\՘'gE6)Ra^3יY@8
+\OᓣSl!
+>}]>mhr F-^</tާ4t*X *Xg_HǺn#_?/~
+xW*WI
+U/i|t+/~~Lh_`:אH+?*6h(
+~jگ)"P;ٯWCmR56/
+~ a/o_9xoi `ЙSP59f0=u5ޒ1«j#i¸s SΎڱ ͎4ӳa}KS3KT4=kb&ˏEhɢ*ֱd`(ZmKjJdN6jäCCmK96Q[D}UClRmu:5,<$SƖ+2Cn̾Co_ા)g }ڶpPn.rc'x[+v_T^G+|ʨ(/GO9T@ ٺU+DANDFކr-OyD'kqbEyQ־}8ьCbeTh?r ˍA nkwX>EIQ0ábw^'BBT8kæo
+!غg(aRoyr0c3+FAmQ%=&Q0C2B|E(ke y}(e#m(GA Q10_#A u/gP:D`HͿ %-fzi
+*p
+JTTtJRT0KZTuJZT0%O3- r* EL5mL%tz:TS*@M ְ=TS*T ujPN XeL`-dUe
+2CR<9R Rΐu03(ΌEEA{=5JPr
+BW.l]G.Z* {Ȭ*ġ֫(U<C+ᵯl7"lZ;QHfi"Wȷ dXh$
+D#qPm&$:aeV =n6+۶j4w) Q->Ecۨ+&m%9zOmzK-Y XlM"˛SUa /mELIAoVL}dՀR7ڄDY'uldEfEL.VcD.X9j׭WoH5ЙSh0sЀ:̧PA=J"JUy,-}T+/~cLhAXSkJL "P1y)Ǫ˟X7ciNjQՂXIXa]Q""XByz
+1% XydBX XS%.`X "P1y!OzpfȖ'V͍)Ԇ^cz
+3cDVcUȾi
+hQx/(E
endstream
endobj
1333 0 obj
@@ -5807,26 +5727,33 @@ endobj
1335 0 obj
<< /D [ 1333 0 R /XYZ 69.866 801.979 null ] >>
endobj
-542 0 obj
-<< /D [ 1333 0 R /XYZ 70.866 264.903 null ] >>
+538 0 obj
+<< /D [ 1333 0 R /XYZ 70.866 574.007 null ] >>
endobj
1332 0 obj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1338 0 obj
-<< /Filter /FlateDecode /Length 2741 >>
-stream
-xڽώ'~yCK%{c[kr%LKh35TaM~|oN6yT["z qR{滔꫔HcY~hIpZJ^!Ou5>C;u,-?W}= U'MVid-wKq{4\DWjH
-v<Es[8:ٔ1N.qf[z|K4vKcJGa[HY
-ɘ]ew21,TCE)ktϷ<B/=K,(ELE'6fKBy\9fk5d}}i._3P;Fbv[dǴhzI=j/S8i^I{=~^7۾@XTn2jt3]ᱢ-5kmN`&^-yf^hc't`4N DE%_h
-}6
-mXme$ VF37/U]Ҩo wO/u/[6{zWZϐǐA*T+4[k?59uH;>X; \˝ mc|@d:`ɖRrnESA*ER4<(V*LHkdhx#=+dB ]STc^E+|SS"tVctɥ:iH}e7x C#+
-V4K<R@unXE˜NV#xVP&Tx&\M<)']^k+~gRRZ:re*VgZRTs;V`+X ]WZ+5zQ0\Rۂrjbq~gT,Ǩbq@PYcQղZhib[8\QQ7OV\*yur)59F繎o8^&c/ s-{0^Fz{AmO{aq `h^XA<J< 7ŗ- <V[;ɗ<NMq龲㌕vE+ v̰2°[J^s- <lBnK^nX'Fγ[Ƿ ۤsn u`E`9Fz΁۝ Qn VDxL&. hE0"=E TKOu|f=Po 3GV~m#W +q[
-Qe D;ɡܕ3J -˕+@ݹr#e w(Td!()*)=m|<k'u
-Bc9y*N
-^V^`,ݐ@(^A~ԽYV=|
-*Jۦ|ͿYk{$cl[tO~+mek>o&XzO-4}kE%1|?+<F,gg'l
-xy|Oqy!mJ+p%]5O8+sk(- i)ZjTʸ*'TTG[$BX)E 4hëBӓ^Me%Vuٖcq&OjMg#u6%ǵ,i}n]͢4MъYmezjQm]JKORJLOXʧ':ӜW%=-eGz2L#i73bf!%6% g*>oj)CT4E+ҀIzJuo+@;J)n$9%swª=sK H %0lMz[hgl&(#6G}2oIwpiHJl+]a{Qo+];*)8frEj=-bE+ ,RH7d9J]>ӎۙij28y)'
+<< /Filter /FlateDecode /Length 3196 >>
+stream
+x]n8W /0oؤĔ-&K̪>]|D)Y۟^~~o B-jB4+m7Mk o會OLVk/y˟τ 7m‘OO{O
+V&a! ѕT?'=>Rʲ1oQ_aFV|LVGI:5LVG1 cu V׀{uocu  [㵟 Xqcu,+bukɳ:27&6GXYڢ؅Iغ><$
+5xBR7"`MtYЁ:-:"ok\R{_,z?6@
+UdxM,ȊXNS"+_Ȟ1Ud%,Egrfr-G^W$cm kg&&.g֙e:%Kg/9-eWІbF=G{)2)3PF'nsv w9{nrD40WY9ZZ%tje׈y`dfmqO BՇЏ 4g`
+$my^&&/pFW9)G cXN
+Z/P4
+ /?zd(Z>~huZL-`2>Mi?9>rs˺wv}m0
+6dlFGjBu!*ݑ0{żtӻXdk"5X_fhB*^sB:.'".'~߸Y1>qw6H66Ƕ֋Q?$dUHao:#Ƀߺ(I}t*lL
+g&1n]PY%.=SgOy, vXؾ5܇^ihy}ȵ!/AOƉ~x`zyZ`_Wlt#~@uI5`
+ gmy/OʓIkɤƽfT(p
+YVa"Pt&E6bb<l_6q@;|LFA|
+FꌇR] If`4bncxz3^UJ gǹ`^h8y ^@#o,6/ALܓyB mu* Cw+؟'xW
+k-DڊO=,Ob7r8FGY["ʖvx >O>ܠ>?E5Idq&-W! _H>A H[[s6^0bj`fOAx)@^Mш~x&3 NrH.H6P]"d $=%y׌h/oۿq+g Zh=^(!͗@b+7?<w66K66&dv2myTlor+GڥѾQaRf^NxO}`A0P}17l_حc 0>`0^h$K
+4
+PCCx?<Os@#aCP]ht x~VZc@__hcZ΍'D]Z'"D(7
+F|($bZl@X[hmhmh}ME!B&rM'->M^#
+e+̿4?ʢ
+0 Q/q2ރP_7V7 fb{~tK,n,"ojKOy)>>y!_a#ē6*Xj??3%RbE!LfYty#,]"DtK1ZMaugbv.7ٹ<C0tٗ<Z.m]. -$
endstream
endobj
1337 0 obj
@@ -5839,25 +5766,19 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1342 0 obj
-<< /Filter /FlateDecode /Length 3424 >>
-stream
-x]ˎ#W7~,17WIUfĤYCg-2IF,uQ?\ۗWeZ ?4@]%ieR~?Wʼ)e?WU* 7k-7J9 ?[w{;!C;L-o~ìϿPk@Z&W"M8T\nV8\oKϨ
-zmT9a.
-vAmeqdDͳjv6hH};gWy3ى8-vE;:r.Ȱ=;PwMx /?tvqaIY'mn{^Yf%”4t!ԴKDwm
-#+y  ~'@o40J=<)e{nzw4yH[V "#µaV)/}xL*%ë
-3VIg#] $y%0.7/YD*- LZ1% iAw(tX*m#[ h{C
- 4F
-3hIiWٰGj]=9Cy?S;?s@;Pq(ʬ#҉Awt7 ?>Ц/AOmtA;^4;%2A4g #Yga/p HRy9磁X ~(kQv/_Zpp7V0\s<.^EhUľy0 H _@ (;` աbS-DJNp`z=řf]>D$sU1'$sA9Ǒ*7TvTg!m2p@ = t^$޴Kڗ*p!RԎjp&T8cx|np}#>. >
--qN y~ҳt̺c11kC:Py xұuXɉtL9Kݷ%bL{1D8xX0 z8(;xAI>qnK7>o%{pF}ӝLF_5- q"RT0cT޾y9\
-:=roi{@e=n~ۓ|ٷc{ٞ,L@t9:/o;ƛf{X1d{JdmO66`lO"=tf{f{5B}oG7]ߛf{NTߛ骦HM )* R*o߼3>x@SGa{|~4v4ڸ^o0Go(
-Dd*?F!=wVؘܥXd,d"u) ] g+._, ] uydfmslUOTOWvFH@ԃD n Kaѽq={-hf7%
-4DR(;զbD>#Ӡrb}6Czž#7E%>~6Dr#x|T度~+3fP
-7fP D$Cf"]y ቶ!j2@8w,@SRD?*дż
-(Rt$#=Wt-I^^CDԾy9!<mTt6q\a f^0j>6r<Q ;xHYE
-M{r`Nȁm0&hr`-ƼR*ݜט
-_(_tᡅ%C's`# Y9D%sM6uH9ț$єԇ& Dxݗi3<piLqx
-.ILrIT+}LV`
-
+<< /Filter /FlateDecode /Length 2881 >>
+stream
+x]ˎ:+4fy`sW_LQb6)ʙE:uz(y/|8yI"y׿(xC^%H.|R\TR:#\߾cNKi.~Bx+g|7uđOgz޿~*dEq$eH˷ey*tKտTGTy%*
+BcadhUpRjѵ,L Jl"&rjlglR"XdwY f.c=ۿcTZZ NVAՌ9M{ IA
+d}XZ gcُ.{6cY|<絉m $!VzlwK8Fv \$V:XrkQ kHN`z 8;JfYQ
+;dl0 sq9S;H|-ә] 3%pJy?T]9u=*XPPClt}sawV;j(sb|x Lt#+4XS2ZX)9-X6}09ócUzgKXP{"QJү"H(C?kAYD%Ro0 @\jQ lFΓ`
+\Eh(uTx6;縀;`ў3fd
+O
+] qi"S#{SYĢWfUuV=ywգ<hR6Qߠd"uA lձzHBt~SkUODW8怆.9"
+, 5X~^fUDc &CĈg3[x fz TchRYa:PP L :k析 Z@Ox 􄗠0qY8z14S^ /&JaCt؍K6bMA} dcd \q r[Xf{
+KP8NKqZ~-s* gɲ Ub#T"=VlAa>la}F;KCF"*J|F6ear5YGk6}dnB"U(7)Zl:G-R
+ƈ2Ga/a<Gl')M b1@ nQe t'nQrLJ5M1ہjv DeADXr ’"@UۈT ϷQoXVЎm ȏƞ}1CK;h{q!\hDXoF8:@m۸~P HP+,Q Ztvp^&iθ?=-ڍg3b)8!&Hֺs"X3b)o:_%Jev`רyE죤8
+ Q}VedHº31DŝG(?rCpF=0BrCksz/.6tR"9f
endstream
endobj
1341 0 obj
@@ -5866,25 +5787,24 @@ endobj
1343 0 obj
<< /D [ 1341 0 R /XYZ 69.866 801.979 null ] >>
endobj
+542 0 obj
+<< /D [ 1341 0 R /XYZ 70.866 534.994 null ] >>
+endobj
1340 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1346 0 obj
-<< /Filter /FlateDecode /Length 2631 >>
-stream
-xڽ]ˎ9+
-?WJ-wĿr~@i5<0]#8T۫yoB3lk9ڿ7.kxߕ@
-nr $5 8mƈx^8b:vw߃wVN#k46xd"p;["_<+V(`a;ny $ ;кźU-kx-bx߯oԋ=zK8hG9q<-A,)Wxbs-Lh{YY45qh1ALR+PЌDcK<7D8R!ަ}??KV|zo-=#iNvYHM&˱;Z(+mNʞaY%V4v#$b0!5qT0% @9S@Q.4
-'a((WJ2 !P*
-.PVw[|u(n*^KBޭJq,xR{XY5nqŽ<rpzX5nϤW4#W (q'7b?X)ˍ7G:Sde%s\|{=\%SR-)T|u6</<56y+-}-fvX2]b
-lu
-Ux+T(gGэ9c:E街D8ۼ!-NzIЩߎ* 9;:8*l'Ppvhs33Er=W)6Eh;D֙)v$jLv}aV?vzOrE#"˨ceBBӪR8*a]v_"A ,tIz
-ϥ"L^@AiIC^` d;H!sn9m =8O}һ'=Qg<3CQp[=0@C(K^Ғ}W4%+XrC)@(pV҉n<9<FiNV:9sr;c,Rv»TEqqy#jDw)l[O%q%)a>fes;CkeN.Y
-B+S2=DL9+?Ck^dLG,M2F1o!i7& zff6,!m&A9/gμ-zo%M .V+0vd th.s8RdidNMEҦd<$f"t@Áӭ#$5uDuD#؉t 11
-b0±! 3n57?
-wˁkˁ@sp9Ata9P6x٤`S K 홅 O'OcG*I\PNB %$d.m.@)D8 OI61ӹ6v݋L[BVGѷl׶{t"&EHCbRyŻr7- CcHXMCEcN)K>.YBgW3v<}]ٜ%`r)ZC#()_NR>4KXHXfuz.Y(
-X00/17rchS;3<O',mS,9mySCs9IIGp:ӗ7OpPHVjrTZ;e=W6Jce"
-Ck ,9ƒZ^zKjS7|N&_P }(TQMhqʇ_&д M&LGsNH Z0y0QUޖwpxy+}Q1*}QbJ;!S<]_I7(
+<< /Filter /FlateDecode /Length 3057 >>
+stream
+x͝ˮ~
+0 s,e]mMňd[,vF^utuT[s?||oN6y(["z qROW)RCJg~pZJ p_B3>o#OO
+ŘGo2|T}=t~m&5&[yfG}"۔1,<Ik ^,ۯ/镵Bn_`Ncݍ=rV87&7rXY1Y-dk{tjST藼ZzgVZ&-UF jȂ,fSV?)@){s:Xb`Y?с~h \S{ y.lg m7e–HMҰɀ'kc;;DJAf<D Mi%6xtʹI"&2_ݪӕy@1`cN3'U5%T>*_'l-
+9"D(0MxuI  ƼQb4 %^I0y.b~5f1lg09vD#gC"W7sADmxGs_8ZjWV\88,c΂8[ǁ[ő|Άt|>΢;4":տfЌMQSNg!4ryge~8X}>έ\Yr?IЁMXMa^zxFeb oU5JϭRe^B<'461OKoӝsЀ$U[-YbVXcx G9(_ OU,Dؔv ږAق%`ar>۳C>SX됆3x{?ϛ頻x$Ŗv_#tr'kvfYljdסbDIJ)k=V:IVl76![Xg#ybjE-`1sd(Ës%lTYYk;-|(^ i&XY0UsCS39Qq9w53¼fZNLKFS3,jfVfx  QLZ1o1X1klt [:RJ)zlJ3a<XѰk)SZ
+.\ъkg V~na圥p9s`^) '@ uh) r
+ J]cྎaD?#=_\+;gE,SXr)BJx7ͺ9rW <+x;WMzs"ϩIz}#5fK&h, qVeuV JXΩSE$gzh}^-$_[Mn ¤}0%NdqoϱVz*Ixt{#Z)>rh|p
+9[ד{QTr6
+]t@?HFT=fmw;v,118]LD-7c0x` ,
+fԃdt|zh=r995g|z?ǚoX-kiiG:_$ͷ{Z2R0l OS 額FEn\'P f>#+-PhDt:#isN7|8 &5>Mc!؜͝^-Nx8<:9qxc},sUB3*W|XC㶖,E,F˹K:_#+N[rڑӎiKF r zxZ sۭ4J؟x7P3 M jc816vt}<@ϔIއy޷ Qiϳ`YJ)(_U\E}޿K
endstream
endobj
1345 0 obj
@@ -5893,28 +5813,23 @@ endobj
1347 0 obj
<< /D [ 1345 0 R /XYZ 69.866 801.979 null ] >>
endobj
-546 0 obj
-<< /D [ 1345 0 R /XYZ 70.866 771.024 null ] >>
-endobj
-550 0 obj
-<< /D [ 1345 0 R /XYZ 70.866 698.641 null ] >>
-endobj
1344 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1351 0 obj
-<< /Filter /FlateDecode /Length 2640 >>
+<< /Filter /FlateDecode /Length 3287 >>
stream
-x]n8W 0`-{aS.%fRb
->eWH2HY?Џ?נEhy$r>㟿kmj~hm^NosVkWo)5?|C6coW,-W{
-4>!U\p $Mٌ( hՙ:H
-n.: \̪Q,"kl&-P
-
-Ceq׊}r^g m9W^fyoiN4k_P}A9o_Phos7E"WĈA2dO6.O`\'R6GeK9K 6_;u1 'z.e?>awPoۜ%9 o܂!߸og1 c,q D;'%|'χ "}׌هzr_t4Y9fJ6t|܋!&Ed-4fmqDGر R<OEa*T TdDIP=TWT$!:"rbTE.-}C2GUV%DfX[hE=c 3./$d L2RT
-2W%&#NV*&PRtHw[$Mq5:SŶ*n&^i7KSDO,^z
-|H<mS⊍Q#vޔϳO󦤚O`''R6>-Kpm4P iP=H6`jZtbnP]yˁ9[Z@KmRi:kᩞGPFc
-Fb)tDuWF+N5zSHV|\x
-ۢӕ2mhN$0V(vc Nuxb>NzәvɬH_o sW7%y\׿hXL!<Ϭ٤'׮
+x]ˎ8W(4Юr E{9eIH$%{u2d&#(旿.o|~ ,Xi x_q歽8/z\\8W΍z3\{Kyxp|_>)=ϐ
+j׶Drd"Hda|wAn@I|=OA.Pg'nYy $$5^mxLp!yпf<M֔:رC{Jsi(;(X5~፠AS7r⺗4
+Dw7'?҄7r}/<S;';MC]Ej+NCQywC)W2Gyx38֝,*[%_ɛ/umk}f#_]t b lc`,~Rt$Cc 4Dc_]sQ@9mQ!3oQ̢ iQŴPaqҢ9ED)”*MYZT?pQa~0E\Txs(L
+cɁ
+$Ң"qd *W5Ofƛ߸5C0s>+cZi7|(kXoǰbm`=4g+rk#V(ߣ:Ƀa_Rk,n} μeƸѬ ˃wyVGލl?$A8Ǔ
+LVfPp]$ՂFq9Gre"\yl}^v]Iu((F
+Qzئ^l'EvR_}&/% 8W`|-ipLǼ
+9I0y>G<} )9>9Nc9ir,C3Ֆd(!>YI*Z,,6L (^6ޝM#P\ &7
+ӢCmI1Q6Q6,uc_r2'zN[gHN[g#SY a)- .[;S߳C[vWai@~Wμ,?j+/,E\A5ur:ۘM`e ;m[M/??v Uf|!d +Fkql%A,}DEP"4U&
+A&^Z6~1 zl`jTa_7p S+ohH|ro9ҙLe_k ,6h-4ˁ, L#{RL1D~)[b_6% ZXq:(_~ir57>BGyzVc>FngL0-e_af(dV鸷A9VбbtPW鸷AF9Vбbt0n_Y1c&PJ&֋NQc ;Sh}B\LGT(Ou
+ g a_`b(LPQc ;SݩLLDj
endstream
endobj
1350 0 obj
@@ -5923,30 +5838,29 @@ endobj
1352 0 obj
<< /D [ 1350 0 R /XYZ 69.866 801.979 null ] >>
endobj
+546 0 obj
+<< /D [ 1350 0 R /XYZ 70.866 243.248 null ] >>
+endobj
+550 0 obj
+<< /D [ 1350 0 R /XYZ 70.866 164.993 null ] >>
+endobj
1349 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1355 0 obj
-<< /Filter /FlateDecode /Length 3389 >>
-stream
-x]ˎ Wl`0@L
- ^k @#\}0uj\r&%$Glw07;f_b+K+WKY7aڗ?Hc
-o,q1}jvyomfټLYM5} /w͕Epo>\kJ+86g qZIi;VzK)%Gecs&tPt&j8mBmܳ,L'@oeqћ%R
-#h7t
-cY@3Ye!SZ!e'`Z7 +rM宯e#C| &O%?_L) CEɘ*r+?KPqyF^ Q3XZ2PkcRrOPIr'FI x(&Z@9 Pzr۴--H^rqܚa䛶%TfSݧTڥ{:]L"F6
-"ncA)}ʽMXt<鸧 [H1ӉDCh!dMZyEIK&{IZ9c}X;Ro!2$H2a
-1]a
-nt[+{PW_\@AEo:( >D6Cox= NDk jV?TfH=< -lU2`SQRt$?D"|:XgxgJq2DAhBOkxx=ٞ61ћHL{2˯}RdhB19N߲AEՀG)6$wd~'?%C y V4_:tYےaOsy6%-j 51dS ь^ZcLkGi-|eN
-?8]A$#dվ#G(I&J<yق_,K "Nzk91APFk805m +uP-P}2GWιhn^-oT`njchX}n~>-|UpC\'37=0N"ƾyŔjb~SJ63rNuh<;2”ڢڧTti8[DJwY ŏjqW
-PI<4+h7h;ڎJ8ߢS1k+Ef#!U{Yr#U7EѺpJ3
-"W;τ0'D̀OFaythç
-*<:tg1as$dִ|{OX#tvk^`qEDft kf$|&:xHu(A$1ɫݒÚi^=!훖$H&na RrAxNn#"ӓ-9[r4P=ckGȢ;o#‹@s|7\"/XEۘ
-mCXu!NBC\H钜C[TPx-@Hw\M+옯ꪆi5u UEJVZWd8.Vm&lJKJVɀ<ܫ]2NŔ5jJO*'JֶW<쳋px%O+x%sWvʞWx%k{WjzJ+{JG\6TmR+B!x@:~Wj8:CRCR
-[T]ʾJ%^%n# ML"١lwidjIO8j<k<9e ǂ>]>?UABJJ4r8!TаA:yGÝw{:9sY>hiޢm<yWħjLyU.R 57bdɔ9>L2<.ZHaLQ˖DFŅP\Ԝ5/8qNO0q>qℵ-8q 2&NX‰崉G0qW~>jO++KU4s&h4|T.* ADZ4Θ|w o?t VNK#MKwx:=.O1TQP^7ȕ Yo3R+Wo67YJ`j!W∈#ip%PIMEgTjٝyRokfFnW]q䰟tZz<qnt:᧬ʜXc~O[V)h~P8]mD*VE %R:dĂّ:0Y4!hL"o'zp/ptۣ z|V((h;5khcG
-
--w$ri
-L\4W>Yn)
-B54 u <./CG
+<< /Filter /FlateDecode /Length 2919 >>
+stream
+x͝n$7@p_
+t{'jُDqt Tw̓!~Fn%ȯr0u9{
+dq9f$vm#D~]¾cxK71P|g5TGW`i¬ 0<ϸa-w^>%% ڔcHɰ؂hm^ n٦4 leysf4XϬM:2_1`|]1QBTElWJbi)p
+ۃI] %c8Lp]6#,XshG:s`Dt,V6)x=50 iΧیi&XzF]L(z~ i2-OEFbDoV6/UhU`Ui&u D|Gy>~IˆP\M5N - ")G*'O56G¯ٗcd."
+G05'l-X1auER3
+bhsu1)XlYVYҼ\sE\ki܈x1b?H7Fr*VJi֬M)J aRB͙[GKlGITP,J*T@#!"LsvÄ`8Sg+p^BT5sy ˙48BtݳL'-WfM,De?GeF;ҧ^R,>&XG[5|=nje|NKM;17[xni\jagƀ9SMsEMii͈xArJVshs8":i5kOtZ,zwZbwZf+mnlޯtZ,j*pn%qa:#t-E5աI
+T_Xvr+s{tI/ϕUhv!vkVU
+;+nMK >ul!^X<a.bka%lK`(`;կSynEVHĀP5h4-%#JXk(
+FL]Sü`1B;W,hglO))f8ٕ߱4Q٬5/O٬9lVfF+Aza9e3(xZKY;U:z3,lwd+nϾޘO+,5zn,1ˍ<L%{/ZBfQrmf@
+J&mԓJ' =FI Kl72@hM=
+8nG[vOVmX d8Ta}TMb3:T;f
endstream
endobj
1354 0 obj
@@ -5959,18 +5873,20 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1359 0 obj
-<< /Filter /FlateDecode /Length 2644 >>
-stream
-x]M7 WD7z,r+zmOJyY5kI3sXx3kKo$9E^~|ۛ$^~IE]KIH )7)ͫ*3RVxRZx_?{|ח'uđwws*$l40)>-իPI.;W]+E`wY0
-ŘbD}
-m[LjLS#ʶBHsI()oIIxO+S{+LdC!NT8zh%v 3NʹĽ։_t _ȂMFj/[3sYi/-I֗2J_}<ҘmV `-6xb:-|FH F(:o`Ol3c}l.
-mjslB[ݢ³mu$\ U-QWE'F
-ԲFG5t93<]Zit)[CƼ:d%_-Ǻ*ϡ]2Dݱ5ϒpф-N<F'3Y5
-/ut[fRg;|' Cu)1viDO jeJ+-d MTX|k$/q/ Ж$"M$;ZqCbz]3MZZ=gRVt*)Юqމ
-i_*I 0Ri;|_`!!dPP<J@Q+ ;|ߎ3bF .žXvcԲ`CJU2<ZCW~K%|]1B[ Xk!|.*׺4@qanJAOՆڒ [
-dMb*+-T-%w g7ٮ{d㖬[} ~+I>ț_
-'vp"CQDe "4\ΌfF(R7Xgfhՠp?5y-, Ac06&SApzv1ߎ2uVdx>z+ 5HmQKdxӀp=Tm?@>B<7[:-$*3vA2|0Vx9F6׈G1pWgj;_>2ӫ~4}s@u<S(^ek|mUB2߃nɃU0q\eN UHM(3! Ҝ\;*L~~nO(VZe$lJ"ȁI{0;0w '4ܓwdv"3OO;65TRt˔٨-g7SᙹS:
-+kt;?BR:r!VScK9rK9-TgwRN 񥜝|)qr!1ALXp".P}K9,$DT4ni3m3?PR\ḟ39TF=<ɲ3Xy4Hw6 ϨG@JKvzjmSXۊ3_AQﵩNF`_,q2|Вp$*<1}Tb6mBNt ]eJΪs-唕#j[ST ^< ydJN(z]j`Hk&YByT~4Y|Yw-<W z%<W:ϝ8^^]˹,J1zۉǢƢ<AlIF M9;,=)iQ'2X^, ">"B̉\:O*
+<< /Filter /FlateDecode /Length 2735 >>
+stream
+x]ˎ8߯Zh s^6n0ۙlC٢+|#SRqP"s,Y%o۟~|[koo?MnA-$o{oR껔滔MJg>+_1pRZ8 !Vs|?_ꈖ3|^P厀:mf&kY<w3w
+9GidcY[xAW[B ny[?c}t}[9>kpRƮր#K )dߏWm۾yFSAH{[aĨIx+S<"\ԃYFi
+DX}"e"6%BXcP "`teށVkDz=g罭Ybwo*8m`'H{Q/E}x;c#}
+r 5՟W{''<}N'-災j\97iɧ 1Q.5 Ȓ!Er<.#}ȟ%K4G\OߤQs<PvzAe0jb/dbˤHu=iPN"5ߵ@e"GlϧS
+Mƀlye_|U;>SmS8w:EܰT}I7z!:'홒 mNZDY@DaFP2FD~XoD!7Oч9 'Ϻ r,}mהuчoܛ.D\!H|G)7UPnyp =NS@^xҀ bRdJ<;QLTq|"9l'h'''j<'r.<=Qp&Q=TҪ8,HY#hz@N
+F6h<Qpt=J`Ċ aSBBD:G0N%Ѳ 6.mh5`:~ښ+rk<׈BRd4?WWi|F 17.tD>]٦iCH
+I}xӝ'tj2L^y͞tP*yO 7K<yzemu8eD7(QCg-g)#쾎Wli+ѺTFZE_ B
+IP@4
++@Y|Q
+TJl>TiBRCPظdu/ $'
++ >mCt~KƶNў/k9W>;VQ~*Zs UQDeX$| /F!nZw"
+m-j<KۘB|:{|YO"{LdT|e*}|ӡʞ=D{:iY^eȖdSlykgmtxٴKu=KrڴK$?"+q&Th5)7SZA9X
endstream
endobj
1358 0 obj
@@ -5983,22 +5899,23 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1363 0 obj
-<< /Filter /FlateDecode /Length 2827 >>
-stream
-x]ˎW 0e0noVl]\- YTwK:<HJ_7y/;yK"y(@-H߷?IHiޤT/R:#߿5NKi
- !|+׼!:b|^P厀:mf&O\-ſ{SV^FVcߝK«}nT'{`/= S*|'qp]G-.7;{p~*T鶽DsdYL֘YlsgjD;Fz
-V}i#6k3cv'l-2z-1` \;#a \$0 q#q11Pn@&Qҥ
-a~Dy7<OZ5sVCO0pv\a:<L@<@X4Gox<3s:3׈.g2НW%/Lr 7yN8|EN0rPM3|ENP!>z0_.`r9hвE /r1"O$\gb>E.(?%, A ϓp܉dA' GyN8dM3tQ?%^8}lGtQC.pdc>M3|ENPdXK;o׾|X+d` IlX6osY
-B>Gp6paI !re22x6"xeT̰&K*KLn߾GhO
-ȱ -&G4gvBDvf]k#[_qwM:Q5rO
-DShWxJ\vqUtiӕ:ɑƛDOyva=}+5&'i#2kޮX03sԗow2Wd>W=(&tt 
-u
-&^1֝,KVq_| !W3({j3`^uIޚ㽭J*p*jv_ԇł O%_<ɿ"(<JhEp`Զj/ IHHZ(XDbQD8geWGT&xP~X$f iٴos.N.5Kt]]Zh 2Sk3F")1 F E CU0iy0E9h*\H́'Gh3lދp~Yx*cg `A
-c#- #E3tRRcAdvT0а*KLP*>)mz6ر;CZaSUj*5ZO+o1D?ID#gU%ɥ<1qҢo\`rCLbCt%CXxBxtaAT+N[󛃁%Fk"RIDǭ$",J"2V}aQ"0m0qvRұ咔TF;3+ys64@&ѾybX'60uNu5a]u]ZhaPQ-b7{N ۦw<V<r *e`q+1Z;lc)0`RhDX<8n1 FuFh *ⱑ20ȕb
- L2,)0:r.
-g\GJ॓_x`j/>ϺmbFu`}F<X;ˍՋ=_w,OFY!=.QUq,5@ea,c"7/q?/ ϥ7[?ڽZyA3K5^a y>de uA$'XruG<ua Ǖ
-UHۧiͼ-/`!D%XPI }|g=5mbv` L{ _vAte~jJ6-,g;oc)H}}?c5O̱9V>TzZUG̱r5|mygώ3.(TmSr(>T@zGХ;<ϳ@ʀY , ΟW98# <6c6>'
-Yw61nxt/_$RA~9;vcvj<1^_4Im[&/T
+<< /Filter /FlateDecode /Length 3298 >>
+stream
+x]Mo8?0Z}
+!oBLBjo]J}|RH錔>
+~7c ᴔpBc1>B׷OX-Gzܿ*dEq?Ӳxܼ
+d/_PB
+BA`dSd59lJJ
+)Ud\ՠݨInTBzb^d>ҋ}pS
+.nROVG+U[)r2fgi)`xˮ+"0b Fĸ1#Q'Dr|h38 ͽRNJ~Z^hdl![]y ŎXMh@հ)
+ WcQR|͙2@iM-P'EHSXȇ+٦l,UeT#]Re
+WGYv9Yω:#2'Cp,Ȃ^1Fg@10mDמݚLӷ..;PQ?Q! ]Ƿyz{`_\45q6 z8FJ+
+Kyڳy(^BlO=;0uj9$*qNmm+U][):,F${`Y]Z 6Pe%څ*TgELgv n"NAH)(?&$aOBh!$@>&N溕bUoVM"HA73d`]V>p`Hn}dw|K"&d"!%%Zǖ<M$M[$"q|HF"x#JdqBFhN
+"^\GSU-&8`Io4ϩg4aMd1MO*Ed!".8Us`*zxT90~@)bAhR!U O'?.=H yS:X([K{[q~uUWnBiWa<
+弑?'aE`\t<˯+L=N GU:9^0&h"\ېmE)JWTuط+ri#qMboþnc vѹumyǫv.V'X[&Deaoyi_( f(UO*f0w[(41h5TR3a/R[Gs "<Ѷ1v }Xŷel}&8h#
+ d{27=$zA>߶+iSz̕0߯a.e
+EiAnhWa$wV$ǗGɟ<iA m`( t>PrC
+ɔ<q USh|{o/_^ډG[uQk)kVsѹ>_k(4D?$jn'<NĺN"mQm$D+Xs|L٣YJ6T+rtߗ7 _VOR " q1B3sy"Ø?fDⷓ_)N>\ ٞzk_ҵI!2XW66D`ITtD%u?S* ܅:ܗzS WĀ68HBF"I)$&tNH*!HWT*=Zʎ}Dꃇk~<[Fm .%4>o ؀
endstream
endobj
1362 0 obj
@@ -6007,24 +5924,21 @@ endobj
1364 0 obj
<< /D [ 1362 0 R /XYZ 69.866 801.979 null ] >>
endobj
-554 0 obj
-<< /D [ 1362 0 R /XYZ 70.866 771.024 null ] >>
-endobj
1361 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1367 0 obj
-<< /Filter /FlateDecode /Length 2708 >>
+<< /Filter /FlateDecode /Length 2583 >>
stream
-x]ˎ+a~
-gθ?f:Ƥ\Ne}VYi6> <4AIr6rw޴|uLuxk^տg}^d%9u:n.amR).#oSZspYķNlYŲ|S v69crewJ u*C  (z!D%@T4TRsR4 T.dYȲD{kS"ۨeY*ۄ 4wX/3Iv*fZ)hǬ\
-2:"B2 2ěM^Ih(1 .^5nJے?SͣCط%wZN'obg-m^`쨊kUWUVWT2U0H }uu
-[H%ʊX
-@o+=`G'(Č;#Q.U`tc6kcJ崓wmvڱv
-Խ3S+/wA$Zq#
-*F iS-8P g:I7n SI|Z
-3PHjL
-n"o@N['1W7(S<O_t^3YC/ԛ@Z6cc.y<TȬc XHv[TDQǡ8q~+8?.xqxtt 1w75<Q75,1ڨd($;n֭wя_Li;
+x\ˎ8߯Fh U^6n0ۙlCŢ+TuTbKH#ɖ\o/?Kko/?M.A%$_{R꫔MJ"3R+o8i)-~/p|]#g *dEq}ղX Gz%
+`L ?G%u."/ -
+J2]C4;4IcƂk%h=*j)kLz&fprnyPl޲IQa4+;}gׇ6iOih5
+m\HG8Vb7 Q Ys!Bjb.v̸<cNxkf>",Эm#(lz$N$۳=W6{7"8Hi{T*Ԉf
+tt*IdnL)ITϕhcxKtJшk,Ʉ0V}X6#0QOy>Ւ&}dl= `JzJh~"32m+SgXRt75m:
+ 9c,ۂz\Yl#[{n?_[3u=D \v[ZS:94V WW"eʬoR5(ɔYN0Qf^,ʌEuH8ʬF=XehSfSfkc XCeF8,*5/2"*O"Fq8Z2cAT"N,;6Ϩ4黇~6;fVzL63օ)Fz(vDצQTy
+5\yJj~NsnjdVsF>^n6
+!mL AX"=LhU_|k{e%m@@˫8_m|zmּQ|bT J2^S#gbg"&֋DËksQao6f a:ž6Pӏ5T΢b_"*vz/"$bi;#Q*vDE!º 9Y;G@vE{Pw]MQ%Ւq ڂ Wn/n&TJSJu]צQ?=j'S3K;Q+".O u߬Q)
+`>x׼ދHZ/R)^/B=x9]CTo/ X)X/ywɋ;$N Kx+ޥ/"TKJMz@&{l}w~|?*
endstream
endobj
1366 0 obj
@@ -6037,19 +5951,21 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1371 0 obj
-<< /Filter /FlateDecode /Length 3515 >>
-stream
-x]n$9WF4n` :}ab-*C PHW:SzH>=Q!_7}˷_mbfnI-墴}ZۯZ7:f_9VkRJϼl^߿i3v~tQEpo:U:T#SE`hSj"syPio@=^0vf|QZ[LoM r*6aa}>MXb5I9C08SoAoU7m1"TJE
-wࠥA>F泊*8UܬBQ&
-Drv[fI[!JDtTI9c`ᜉ"MIfcO[ p6jZ+W17m-wMJL1N<^d`ֽa":MbAǫXJkcb0Ԛ!5m0$8XV2#Aq8#YQ`'6CDR;@zڼでi'd{/t #bm31DɠISUƙX`ɛkj:=/:l:Kl_r~Ǿ|b{}Nsyǂ)+Cr>H%Ҽa5|yl!]&E` #;LcΩH5\׈]ӭ ̤g3$u>ey 8B| ։GK"S)AJv0֖Ds,[(;:2t*«3PԻp{[I|8c>yG>}-*y#Hy3j3!r'|` 8pc3(
-IEeS4E<ر$NE;2T |L{[Ʌ8Wԃ;# fr!EĺYB
-_8rюcӆ3xVvL"e.("-E*FXA<dJR1y2BVÂܽg[ml]O`k^Wȑ T2? =hϴD3n|ݐt{kӭ*~}?؟:mN}&ST5vP ֥FJU!ҙN@A; Hc:ΜXx"lsx+q@=xS$_l: leBki>vO46Yw4?QBYhGS@I"Dz[:+ !^w=CFiSDe \RDZyA/X|5DR ۞PC2{שc\5DQSCϔ0T-)"rh,ET
-Ɏ$Zm\5e5ATׯSWsO-2Rϓi!|9\~&)T$:vaI􊴃%ҫVK"Ksp<y9鋾5*PEvdha=")Zl]")RVpbAH#sVO"/Tm~LE*ALER<*rª?"I*R#*rꌊyߢX@REұTU)hWsɧHFy2pTiU"H CyEAyUA9"E9@ ߴ!- H-REx~ḍ 1QuP81Y9<SPm9k屛 (W
-c|A銇e e.K2D.FcxX~䒴͘~̱0vP E*#TgF<lX*{<cI]XKŎE"zpJ[,'G(Emi;8lyDG(SQ/gzT~">
-E
-q˜8qN4_?Bڞ1Y#͑#F~%S*П(0ʣ^ Ej=@}b`
-X7_ ͙~ͬ0k|DU OL5Vf ĵs eqE8k$,]KSx!%(v}<i^NؔIo Og}UZXe3,GG5$󩙝"dQ4SB"XH'9}kK3'nmAUT;U|^Z n>M A'gbUwCVk;x| žXDz렒{ҧVt)ĺkUju҆F+li?/ )!/I z(jı>8Bu>5
-2
+<< /Filter /FlateDecode /Length 2987 >>
+stream
+x]r$W #bb"FW#tIAV7Pji:yH o~ ,Xi q歽9nŹz\pn~~])Wɹ+9#_kl?oJ-W2}_@9jx`Eq
+߉<k \k_軱{%>~ǘLLnWu;x=c9L+;pL|KFѨ?AaB*&\ݰu&,7 ->y`am2z> \ł" \a\aL`\)ɔ7+r/]ʯ
+
+Bq>p\C7o7Q9\)D
+JwsDZ07LCg.*/{ay_dSCCr0f-TbFl;eT\!:!>F3c|zo_n訏{}f>o|(!JrΓ/:U,<ٗORAfSNn< >%΃':M%UtN.|alU!X\6]Kߥ'?X;.\]9KۅK=N@V RySh rU)[협tQ6?)SGlMVEl5[x0b  El#S _e#IIS,g6r rDJKi ع~Q{P 8sHsX??9:5T!)W'{.WI2)&a|!Pbyt)ƜN/L* ӥۊyHNJaVqkzXOMSy
+ڡADQ#]adj~,QN0=m"SdQ"@_ԈDuL$ܕJJU=RS'7R J)dǥb5ILz)N'$3m9"A39D8 @yC75ƛ
+2,7[>7[n<"HL,g˹ /=AP[ +yTxL#$HdQ6?rH#_˛
+_k+
+`At!|m _AáT8hHA#O9hhrCA#<uNO݆hm0F
+0hd",^!9,ܯ2< O ?sQ.O\.ܓ\.\oC;
+0
+܉x78B=6{=LxL[Z[~ etxV|/pT_r/so ~WVWU۞I1^Wc!A놏ő`:V^)HMOԣ;.-Hk3l- YNsN6\ϞR
+
endstream
endobj
1370 0 obj
@@ -6058,21 +5974,29 @@ endobj
1372 0 obj
<< /D [ 1370 0 R /XYZ 69.866 801.979 null ] >>
endobj
+554 0 obj
+<< /D [ 1370 0 R /XYZ 70.866 771.024 null ] >>
+endobj
1369 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1375 0 obj
-<< /Filter /FlateDecode /Length 3081 >>
-stream
-x]n8S V
-[cl c#606on+Kxܢ@Q+
-hdGSӓ{#ӓشӓT'Y9izӓD5\ak,>e
-NYˈ !‚`ڊȽx m!M&NLx}#zϬSs[Nbë b1BZ|HIz Z'ε#lj9ײ>`nmuO3m5=Vl٢b=TgjGuYQC!R;RlFL &pZ p1e23;XRhxml2y]"k 05Uj?L'P'ݰwYVD[ܒbCؔq=jL8ْa>jȦl>*<s"1Trx)ƑufXAUS*uՙkWNY>25Ռr-bx0A c9 $\\`'dz/#
-wDg#܃,Fl{JGsy,U1"¶)BN!嘨 Z]CwcMd#cg=4=J^8譼\3'dظS(ygϝiJvx\IQ$10edyy`
-3eA=Yd%=0Y)
- N9YCufS&+ 8YI5MV [xAkc) !¢^O NhLh3'cZ='c.+Bgq"mIh=LNa<A"b,Vt׻Wy'C΍N[[T9co+33eq XΕl8 ZYMgz؟;v]"YkKwxwx2ցS.Pm_ciD]գaEՅ. }IAp1d}Á 18TȢ 'c$bZ-UI|D
-v4\KX @2
-sB% K|NsvyO3'ٜ"{j,| 2xf9E{Uۏ6ȵzKn玛7]z
+<< /Filter /FlateDecode /Length 2819 >>
+stream
+x]ˎ W\Epq;2]m&meUl݋Bu׃>HIVn׷_m_f }3UrQ;wwO͛i3o?~s''B㷔3?g ߴ-?17}.ׯP]"p7[WhC#1MBieL˩oQ&jƵL1kLOt}g8,ض/?`+Fe?.}506[> ~ۚI[ljށ/6j tnqvZƶ<pI`{c`m^2ʃ J'E)זۼX&vV㵩0އIwHXsju($0ֶ!amR)&#oSZsd qCbRzd;@5״uʕݦ.ɫ l i l/f ]gurJsJ2 T.TYDL{ LK2ۨUY*ۂH4wX/I״v*fY)CokǬ\
+2:v"Bk &`:SD
+X*_`=pcm? 77('Sږ })z(4}9P&gNδ°ߢz€L*vP};c;̑xd͑
+c
+\ H5a5G[.S-"öGEK߯v*^d@?;g~ƩڮAa> /<
+.q"`ẑD:Q኏DP_}2b#"1/GsCH*\O ^G_yCp!fPu&]}lD .PddX3/b8]_+_HCN_L@t6NM} c
+Bv vNSDu/]@$"gd8(
+q3D▙()CD>+8:MCz1/S#O@zc7aڧֶe=4n}f",Am0=YT<z =L\ 1߂ј.ۂC܂A9l 1Oܱt%?px
+uL˟cpfmé@uH)al2,˝;- skķR"]u`'e#e#O_׍<70~P£Hx QQZ^(6Jx*3n z+F ug5:p3?{okAcA;w~f-lIM^OŎ yzЁN r/7ԃ6_:>_wSnPӃSΫ֡ M 6븉H T4x}?憋:nbXo-M "N@nG6>
+FLz\HzTwIzJv+괫rʰ 3*$ro:!`n%ᴃ ~5p٪R,Ojf4h騻[oWyU^܎r/qlcG0 xL.^pZ$W;r_n\_+KHq2ݡ-!Svr=(iKqzaKk]4=)gֶ9
+3ƒB  @(=ox$#N/;Q<?F@ &+JkJBQwϼÛ Hw|en>{Wp˙=ԛȚ XY3(@^I^ Wy|b<Ҕ\ pI9gFe\7(r
+ɏ"I$>'>R ߮HsU֣:2ԝmGE!B"`
+kr
+,.C c(:ޥ$k#ַgxUPS0} mN Z-gMy&l @@fd_gaTI/0u|$^/@kgL֗c.PVLQXAiF㯧40@DV9 b̚H_Ybv$umOUx*m so;5y7v5*pE~A^#չ(Qwjx d[N'Wo{
endstream
endobj
1374 0 obj
@@ -6085,17 +6009,24 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1379 0 obj
-<< /Filter /FlateDecode /Length 2934 >>
-stream
-x]˒ܸ+؈mK>*ts=?@8
-C-H?㛔))]Jg~W_1BV#_H/uđw;ww
-dmߢΫ?1hb]ev;wן5ow~Z#-PK`]
-d^D׍m?xJaTAp6רR!*N
-11U#*|uw]d㝊LZxI6MBI_ Q C;LWJ}-\X>cK$OfHGϢ(*KȒ)A\+-d {⚅ ɀҹGד]fA~X?'L/dNHe#Sd ڲS.v
-8X^"8}N}Weohvh- dvgczUCw&oCdu~ҬLE)}hNkǞhT$7Du*%K<#D~缻y{i §\)c9hQXxrd5+]SYfi^0FyвPh`>OK ^ x-L<E@i,C8klE Ud9
-.LF1 h5k'tP%s lZT*zIEZfQd|ԉx|Qz#chx4DGޯd#zފi2 nA=i>88Ǟ"RCdI`8h>r6_T惃H4b3|BTZ N5f $~~4V;rcݎݎz%KwF"䪕z91^dd=Kqm E,}N`۱g,G1+#TgN~AF:~9fua┫vj5Fmlsq? +OI ) JO
-lMW0'f)φWKzk|sJ-'ܠeJ2mǞ鞊 @]"sYq1Lһ:"d'x=1Dx*]5zU-瓪EƋ "X7&hYrº }&Xomσ;V<8!!{ zxFgs٫w9hy,vZ
-TuAa=ԇJǁ{it\`9sS4PEw&rq .ޛfH<\\s4p10$>tP1GwuH__ Q
+<< /Filter /FlateDecode /Length 3198 >>
+stream
+x͝n$7d
+N`1oMtuk9JG_\})} >d%vm)uv|fT!CzomDZ]KU;ÇdIlJ`KFZ Btz%%B -~Bsx`B5=b>eIOO Twq/> cqGax8%߾6h-mڶy?cm2?M->sM":3j𨟪;쭟GZ\}b5-t0[|V)?'
+Bɉ .dW.7?Ya ۞
+DO=̷:j _Uv-TCy'2D0T
+t!"kׂFBM'H`}{OIrM;k) GD DWH8"Iv:'J8fZ&fB3q) ߷=#T5TT PpҼ[$ J8QI8h+#z VJx۷p][o#xq*C4/]푔'hvޓ^ncbK%}DIL$LUY/;?$ua}6IK,⠪Ѩz1Y/RK{'׻5ZE֫@Tko%֮:Z$k
+.X]6*Ј$Q.yb&Q4:Krյzjqknyb椭4@0!)Er^9,SXp6Aygg|t?[/}?sR?gKrWe wɡ U cX8c
+|$EJcB:V&&$PM @ly*؂iX#UpoUĝYkcUXK<b=ScZZ]PcRs\+*67OUz*xP㎯mOT2WD*x=j)Ug
+|
+޷=S3PmUpKET`[ Vo*ڵ
+#U0QOǞZCU Uag9j<v*amUag/
+;[<[aRO4$ e{L j
+6Q 1D
+{Py xqR{xĴP х01igiU]wQ'q10e1"n(UĘg0*~T>Wسڦ<
+TTunjXGP[Kkt,LLK}{n<>$QM8j5ky D0GL|+ U)p#Qe /<V:,[n5ӭ}t*oBj;km 9<vmog:$?1`O7㿗^I;ֳnmUcрTjhOϷUk;&$N=<mmGG &܋;2`u6}}Gה.[A#4w0;?'xڞ0:Ǻm׬#u,Nuf[ I-N[2,DeiJz?L??6>^7=pqp[[Wx:1QFx|nɘ#_Nֲ%: U"XXucMmx~{"mi[Ͻ:m R<&bxf!Ui؜}<ڃ ^qzG|;#tkᣙPfbBKE{+020M=
+㇬Q_^+Z^z~G ѸR'`RRm=aZ.`SYDmOrP5ӈm.YYVȾ|"X)mߨoh 7ﰫ%O>'>&B)M L]\8<Q12G4'exyԝSo{F6o?:%H;`}7sX hk{ V~7zO""W_-ߴv׸r[!`čiY@N_o`eY
+{9W۳R.sp.6ڏQ|m9yuZB^YgY;-<1n0Gʪe;No}Uˏ/F
endstream
endobj
1378 0 obj
@@ -6104,27 +6035,30 @@ endobj
1380 0 obj
<< /D [ 1378 0 R /XYZ 69.866 801.979 null ] >>
endobj
-558 0 obj
-<< /D [ 1378 0 R /XYZ 70.866 491.158 null ] >>
-endobj
1377 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1383 0 obj
-<< /Filter /FlateDecode /Length 3291 >>
-stream
-x]Ɏ#9WZ} dVU60As>e0 tHar<$ޤG#C!_}oRT6˯~3K*xI(m᝿/]ky:8c7|"X=|"?~K)|>ohx~4˳v~4|t`T(qLr{.;EUᙪQ MUUb8PaJ 0x1{z0ki2rֳŴրXW!gr,_U}y)f!v1G
-ًvx&EE+O'|>Y >PnfDv\
-xeS\BAY%*yPu
->z-;U\c#=</lem\"pY %Bܕ/ l]TAո:U7Ɲ렢1" ا7JY7LerKIe{V뻚mbD
-)?5)bfb}){F֎]~8k<sl-H1NhEK#LN{hY.|^Ѳ[(-'E7A ]^Y~nb36P
-(RixHL p[Q|RH+cNEEH>A`xzTMwѵ18Yf;\]jjj9d[-o[HFr&9L5<CJj/hP|~@rZ?\(Y4J<Ӡi`ێ1V}=TGڛ<;8&w4 +XZ4V(kJgK=]t
-Ǝ*h " P
-'i1A]\xKՇD6 nO!ZJ Ί>$U
- u,)שu\gSi@W|bWU
-
-ژ0eM7=jI# ~ڢzh|{N䘌OgqМ+ tʘM("pьlTdz{f˱͖>5\Ga?ro>ڒ "&
- "anSGwFYG@q4[ޙ9ͅ=hKtX~Ai МFYG`oGcj5 s1a,emADY^!LYB}>?TMO丅X_ЉyH5\KDpU j%Z|#Vcza /S1#V{My$VR.ż]axsĺSs`ʸ"0o(ΪfrUa=GCCl~6gu)@rF0jxE3l;ٶgwv<Ћ mDq] JflF6)(|K[VI7c{tzDʽ[dK%lgv41y-o}ш97 -[@Iw9Q~ϯu2coX' ]pjxAriNl3c9ZQ5j/^'15jq͠~$gC<kר'Ñc9;poQՁEr1zG~5^[An pk7`&EW$l
+<< /Filter /FlateDecode /Length 3208 >>
+stream
+x]͎8SFY`8b;NLLKTLPH%q4Ed^^|{jj9^~盃/]5KΗTc=|˿~ֿXެu֦`m^གྷ%
+i^LKb /6[Itʆ-U;c*@'hFpf=A6'7ޛ~xP},{ {JAPWKc&~ԜE {fr~ȼ/s|'|3SDg|3PrV:/SDR9`Ĝ?PHߊ
+09HgLQ_3x9_-\ig|@06yUhm= hG*<PC1yGsg_YW}WdgVl3+
+es0˜Rᑨ #mjk@u{L u]U\}vq pSU
+z*@udG
+)@zUVCL.BQ{ %x2k=.2ǒ*LK6Xle3
+.<k%!1zY7p8jkxN*5daX{ν5Pk+S{jBQo[g4a<5?Xˎg̸*|0mm)Ǒ9'fF*{? h$-Z*v2YDngYJ1RYHq\ ;8 cW-c$݉`G5Ts-w4[ZHyA&V<̲ı pNqsץ4NHcr'xsqHnmӑ" ё4PTC^xn#TG/xy,w,0ӊFڀhBձu[V0T%x+#_px$jDD,
+5
+Lf3(:8cQ#@VNDJ`i((r1dSkбvJIDX.A-WچU"^MCb&D6E ɦ{ݸlz_ v'Φiɦ)34AʚF5x_6&|6).Ȧl>9 ?MlC)Ʀ)6=
+ɍMt:¦ 6TL6=BuM<RMY@MSXlZ֍MOjlZQcsٴ|<B6͈GٴƬG6=
+pymK|')+ :Dg\ ł_Z,؊gk(Cpz;W TqIr=Ah%Gq5E)G qF<9m+E @6#l$TG6 [1
+nTh6׍kFBsYJP6^5%P,촤@c&XRx`w\G:WT-bv\Gt\y)qݳbǕ긪غ%SlݒώuBNkd3’7WD^OR4
+~-y`;PrԀa<N :[3@R Px7fRAt(Md3xN
+`s3Ց<Lg
+3pG>&z#& ǣ5&~v?M&;
+G#g?%1BOQɛ"²)TcMxEr )ϼA I{f5sǾ<~,v;1wr=\ ":\ YLrm^rd@z+OT$J1rMkN^G5=AUP5rIGkW=(k\غID\ jz.&!IH1I85r1FH5@!FH5YGrbFaT*3j7#ȵeDrMVGWjv‘GdQ-xGpT
+AsD<j;(CQ PNqAMdOPmHџw92jSrT[fV6n#%@ն,Fl-9=_JUMH06J7<emx]9D\51v<nb(#߃u=Ӄ@ GPRc
+w|jo?
endstream
endobj
1382 0 obj
@@ -6137,25 +6071,22 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1387 0 obj
-<< /Filter /FlateDecode /Length 3174 >>
-stream
-x]͎8SZ@b3EWL9d>\q#ER(Yo_~p6koo? yS E$wwUJCJ&3R1>ᴔ>ⷯ!s!}*}B/
-1%$O,6e}hC~{3K i
-D##&7-7 d.::6NmݜYp
-Ĝv5P# 1g%gXo& |ExtA)Q"<G VwF| L0 d`DGfqL߯pL
-V^G j,`5R@Z XtQRIm/ iĤʺND[%G.>m`'᜽bmd{5j&&qcՄ"lB
-7ɶƺt[4WPGNmNdj'IrX9X;D48S;!mwNjN{LdG*[[v ,KL`$wgtZ@:N: \;X;vOD{px:N}p u\vrUI[a
-f_yӀ7G4
-):FB
-(,;
-)@&e+lk-P
-)M( Ŕ\r r陴RLXAu,foAPje"[ 6!kc+,`yBdG|Z
-}]cU
-ecdGۑ ti@FeѶQj^
-6W?tw4'r)U9 <v~<gU
-Ӹ@spǣ 5,z4צ
-80a6ݑV0IW9R|dHqFj<L .nHgd|OOĪWWw2bG3uu~ʿmoxoaP9Ҙpҙ,<%iJ+<7T<p\f3VQ2T:s1,,Oa?V^,EȃI5S4۹{x/xCy=4G1~Fr[>^ojj<AukGm3zoa(,ݧeAm9a#{|39QSB;Bm3F |Y'||nTrrYe +yc)ppRíSivknW/y YB4a#xI)t"ť /6GPScHXݲyS+'֯ jPP<#YH^G\F9؞h%7 c.NZi*HmTP!D׍4 4Cq9j-ӐjCRm aJCFiH"!{Qq$ 2 qR! ùҐ.ŭ4dV念h&t9JC8! B ;%4GC4x_!4LhL%3K }H>%6a(6qNl[Hm$DIyI餅m-#8a-A>Am7-5T}%T,82
-$A5G-jNgic<~ܶ]$v~W9
+<< /Filter /FlateDecode /Length 2823 >>
+stream
+x]rWQ嚪QNUݺdMD@–,>H_y_ޜ$/
+~!/_BLBjߗHKi^TW)GYo_1} !{| .#\ߑ
+B&}?eT¡{ z`x^ }Z_𚆜CZa[ഗ07$P$ ;Zkl7}fK!ed9& X睊LZxLKBy&g`Etj3S2Yeg&Y^kX~Zhw5? E@JQ ^lU,Ww}ϭW$s'
+EZD;LR q2F
+"!{,
+g:R6Q^% 63pOp>n7Nl\ CZT>LPK(X.G*.
+gG|a/F0&>W\UǷ(CD=V-w.͇z-%&i9UtP \AR3J*~TU\76WZIܜsAX663aóY(pL޼L<AdԻ1)֘ Ĥutx{T> BSldT \JlZ~@K'z!3:GzW'NcYlCpXc
+ Z_FYhs9`|mhS:$ |=N n/.ʌAgm&Olk>O(v߫}zU&S*A[=j! 0A4u&s 4I0ŹI"ƝwXK,K<3aS{Ө';}eF,A˨PnSĔ\-N$kjv)Hy[Cwhm斉BNk؅Fqjƞh o n>߄9sd
+*.io0f%[Y=t"hwNshJB
+ȗjz]LP_kW@^+l$]R«y0ȧu6lm݆v i̗ ti qsW+mǦ(P6Q{oK2f;7-0Ŋ{,Wǂ=tQG:=I>00e"tlǦuKrt*Wޞvtp_*)؎M)=Ln.4Kg<ECtF8?&%e} U:XAJ IVL]vlJ)Q+i1u!,W)!Jɘ*%,W)!Jg`d0!yc;6t[
+3t0_*ܟ40W`J9U:&0u4cJL!yE:pǀ=J=n3Qz:@4#ı2#~[7'-
+Pu)y@!cS7nfm]Ei)QjORrE6] We }U51[^5,R78}Fڎ=!x;`/sFOfG'\@(}dQ3[9AnHf5GW׷x(%f+L%OE0TNDgޕeb๘is
+^r=Ƌ ѵ8Z۹lן_"Y
+
endstream
endobj
1386 0 obj
@@ -6164,23 +6095,24 @@ endobj
1388 0 obj
<< /D [ 1386 0 R /XYZ 69.866 801.979 null ] >>
endobj
-562 0 obj
-<< /D [ 1386 0 R /XYZ 70.866 189.217 null ] >>
+558 0 obj
+<< /D [ 1386 0 R /XYZ 70.866 311.831 null ] >>
endobj
1385 0 obj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1392 0 obj
-<< /Filter /FlateDecode /Length 2730 >>
+<< /Filter /FlateDecode /Length 2901 >>
stream
-x]ˎ#W
-}#ot|
-"À"Xcr90nT$#M=;v(o<caQ^ʣy B[kTST6*P<
-ģw"tol1}%t2:_Scy[1*L.~y|m Ǣ]|$wm @ZЉ IWcRtNmq 4x%"V_6d]Yyxc3Vޔ\ ]TijZ}_3 ޮxQ"Z :x ןsy@|L|Xg璊<wނ9/]p -F܅sJq4ϱ-bp;`sdgFslvڢqRa3󡂷AynF1Bjߠ>H$\2qSу j:hMj_ջ%EƯ{:B)GS)YYK|䕵]ebK#۴N.AO8X&TP=KBfXU;aH+^n=FD3Im(2^+%J R N}y1jIyg0Hx[47ldk9Xb 'ڲ͠rƟfR{''uZis}UK<8F:$:T'᫵t^̏ڄX=O,vlN$Bn8$6vԸu/THu0E4ĸR'eܔ𘯐GrppnASzcUC'v.95<7֕v݌!: rog;vt?@,
-E*1DPvb6mKlGj:(y
-gǑ?J@-Q}
-XT@
- e%OPTlGlUFVl瘭~zQ[5t!IjT҇XS> OWk=-*{< G ?g͒gW/Bwxo
+x]ˎW
+޿1ᴔ?~)^.G#/C
+d_mU垩+Ue@
+^
+
+(OCf͂+EZ[E2v*b@kTo$ *L;^ZN-TXt&z6Y7,nﲸ#e'V2VqB8O<փ*ƝOpR:%`rְ A#c{Ŷ
+3(¾ !!W8drS;B. ''dXY\R?x'h{@@ ԉ}V1a;>L0e @݃}Q{Qႈܚ#" xM +"& *& @΢Ša1rdx>L,?9lU({DVܲ),{ T xKC)G]T&ޡB
+aUQ3e>äd۱4K2^/ä(1L^a-Y<l=C k'9BXSYmN!¾Rz <=}qgǭ p{Mt}1,^*)
+$Ƿp{;z~_[ȓ
endstream
endobj
1391 0 obj
@@ -6193,16 +6125,32 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1396 0 obj
-<< /Filter /FlateDecode /Length 2496 >>
+<< /Filter /FlateDecode /Length 3484 >>
stream
-xڽMo#)!Fr2H{i/[L(NS"']OcLE^~<<>%䵷B^%H/}R_4RG)GY/߾cNKi.~B_󼽮o!:^Br@L¶nq_o-GLh.tcݳ+,߀MD&l;<_~|;= tlFkܛ_ֲ9Ǿi,\Ǿi0/=.G[- 8ŭ`L i>}QԴ9#iɏ  }ʦo\2CI>)AE pKL&TؤDw%mСI=OU]YBK/ȝJ CᆲִP-If?ۧ0˾lutߧ Bh|(<n(kۥnGsa;faϔ
-XZurX!z ?cvX`X&1mjc](`vqlf1v/ϪjvqӮo^2Z :Q0Nu2eF j>m.a̺{}'ECi~dĂNH' 5d331"e#QR{8]Q4cp;|>}WRUpk*]<#mCZEuo3!lwJg)cM<թq4h
-xN)o`aYfnm96AvgvD
-|3{</[2Ez=^/ym'FNcmtSgod+8RP!
-4P4HE :O65g D^:EmVգD q#3|cmrϒ<vY(lաnqZhl{9vtLhg8w &f[)1m5ТTln8(̳n ߬K ȞQvj2qՙ5d_OaiOd@.WZIH$XVoԱ (L+u|cam"tLCzk$ `4i"Z98bҸ2Q j9v:FDAmQTg0_N89X sX2 ʎ|$@Ɯ% 1
-K]j\;hN#O,6iN3҂qBeP6::>M s9+"} h)ilnpap l$<<@JDJXLJKIZv)Qۜh33h=U4 (7p+2 u`]E;c5j)ᨷqՈf aE$VkZj8`8
-N 8Fj.VY<հRNVC}Fc5KIZv)QۜvF^a~d@f%Y
-NȀc
+x]ˎ,)߯h7j)ުfٺlW_ɀ
+C%&GE)Ac)oo/?[koo?MnA[X_KRW)ՋH_?~3''o!g^g|oꥴ}">?r-NFak +2[\=
+em[տLr\
+)reg\pOY+dԃSi55*s?n)>O?Z g`
+w}~
+*+{a@xJuNͮ{|" Z*EcVIETV;p+ҵ[E:q[
+tʝ"H) [R?@IKz=*D_(Vʹ\4FSZ_Ȉ
+Oy,<BŊ5:*)Hײ}L*'؎E>+7Dǹw(H[2(TUۄCd"WZ}
+, nd3.ӶjBJ:FVbD~<GVZi|;i[ R{DȪ` d=+u\RG0Gն=Qxt[7x =ţb"ˆQ1GY|<j<GaLxBsGu"sQN}#<"$U{G!ۈ<!6
+84OdVs kzf`4eBt6S.mjp.lÍ~{8t׿}n:eQ><mm ڽ11b@|f{ 
+T3ȪgGʯS g$S6e}?{ΐZ_ϑLؔl )G )Dwҭ,1Vh%c'g6s0C3V@'XzzW~,Z).bfS
+KfRaCKڛ+ ovjQ
+Z |}<M0qvG@D"j.b?rJ@#i"sHEņg'Q$!cz%,.{dLBZPm#dw~,XY%!<YrLe:Ă(_vEe1EmEf"tu$Y*'сn0d
+ aꃎV
+@ ۞ @Ļ8m9p3FL*D
+@1m;)]D&*:vg_Am?:mN]* =Ook~~[qJ5="<tJ$ѧ2W[F|zx^gÀ =ܾ<G""\7gd0mľ;~Sw."\7mg)l^Y YyFa 3ݮuv
+aO|7i'w.m<M!Dxe~2|ƃڦk<CV2]T(< >gdz;{MQ{$CuLɁOI
+ev 1D:+ni]Zu1yU9Ɋҳ
+j{`} 笰4<ĂmpV@W@ -P
+5K9٥7rQKƼjoo|Q)6%>)d<J~L@Uyzfҝ64_@t{ӰǰSshEXiK"}pyYir-7웧ɤ_(D'
+Ώ+'r
+όH۹үt6`~]eFͿ^q'oJd`;R6ºCi;MKUVm;DӲ͌`*
+&n6/~yp·r39d#
+B<Xd951<3 Uz(Ɗ3=Ɗ3}Ч) y,]GiR+)HzmuFG΁'6“+$`on޷ޙ}]+
endstream
endobj
1395 0 obj
@@ -6215,21 +6163,22 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1400 0 obj
-<< /Filter /FlateDecode /Length 2540 >>
-stream
-xڽKo7a~
-~pZJ p—u5~ nc
-_?Cdtl3ˬGr`^ć@
-/R(cbHO0:ᵯΏ&Trf79βDO- 7_ǰ{}{_]/Goo?߷LJj"\$РhB&5߉J ۾mq*ah3Au!GI#=|Oi25co(|J<1H+) Mzu&Ӌ}*3}[o={K[8vhgP9֩Xo{ESW(uB~(Vh{'Okj=>`<dm,RF3k::^[OkQ\z"<aT368*=F?=09A=#rҪG D@cQ<I&E@X}0rpd W%GCUhf6=x
-ڌ@6A [LK($#WBUƻ mFQѦ<mfdDXk# K"OCh$2t<6"=UF'
-nfMGǴuqk2Fg&- 2`i %'t[n֩'[!Nf,{F@)L29 n/et<;\@:q㈀\2;
-1oӑy1Ys|f2@G[&r~*1آ8`Q9Ӏ
-J{i 3K^R:fvn#o%%!u,yk'"l `Ӌ
-<aF6El9-c&Ea140țd* /[lG+-sx@
-o6vF> +e'>K쐴$]p<<@ ns3yeX;wۥQF SFѯqQ~&oGG7eD(8Uk V=}~`#-pc˖zx" gR=S>0,jzhG`ئ3۷YR^l0`aZY ]!ax '퓂×}ΦdlflU S=Vq@HǠWdς ܑ35`iHl7JBz,&6M4ɹI,H:e'46w ndՙl<s_@x}k m(g=\I&.|mU}}XD[χ+ktZ+hڥ3ȂИh!`i H/bZIR qQ#m&cUZZR FSKDjሁRW@r(JwKz;9E9d\E-l3ulh9mH'k,Zyk|
-l9-%S=<`nK) y[N#ohl-2i:S~k}ʛ#y]WK
-$m80m(9y2E%pzΎ7<QB\] χv4Dd c9VohZy9Uސ"O/yk?PZyIlF)Z5IR8X؁K+b]im1fv)E+]JSmzt:;3mgΤOͣFWH p2jgI a@ӉZbQ//iYQ̄ &S25hP7Vs^X{J <8\x:iZhpy+)Ze!|ق>ߚϲV
-Ǐ??Z
+<< /Filter /FlateDecode /Length 3111 >>
+stream
+x]ˎ8W(4`-saIɲHIZ>eK CL_r7/+/8^.~\~\r.Źw~U)_a$:o_s/5u;#W+W*Li¡ҙn#n3xo^]׿LT{TYbh*Ob?#!KƠu XE`NFpE~[w߫{`DLXSߏl
+_XvoZ<4wN3oAsƽơP30c^7 { o"QV1g}
+jrl{?: ʴU!i1Kˣ <ߒ8Oq.M9G %$xy96T}ӰIf1[øPCGMjʢ3EMbyuEy݋#1K,<nӭ?5)8$,JYjP{\D3*"Kq-kf ȵXA8aE4$#dʛEUs+,JKb]/Wm<
+S4E A$,b̻Bw#:Dg(GaFiر
+ 9cǴj4ql g!W(A5GϨf~N5D`e<-Nu* Q>glZZUdz7v+<c r5ou Utj!g
+֨ . lp[xw-\-K5-K%R E0T,  Z%A "w:[Ǜ[[E4A1ۘvkLR|/{miJ-P*g^DwsVyO|-s'gg1xa#|ہ5..杺+| d[|,gDD}Y<·ފM#vߗ nY8+P3>0M.20 ä0uw慧0ţ^iQ2ދx^cwx^ă">U<`AJJ8S<ZꊷqE<y/1ʃ"d@罈]ydixπ)-3+7x^"Xy^ă"+v!N<3 G{Zƥ֌t-Z5nuI-cJ6.XO82pf$;fqHr]tL0>Lrxq&98$G-a?Wɭgx?
+vπ-aǓ7ơ$98$o?5uݱte58fjB؈щ8OHGt۷śo}"u2أv(nKJՎ}h%Vpe6ELE AAdu< GO6NG UU`'J1ErCdʉ#Lnc릥Φ9F[DY DB<)5"Fy
+TQjP5UkWyeSǀSs+<̢ݍ|
+tpۊnR霵{±~tJu/iXze,3νקvu k<w&ҩ|}]vbxSP#TiianBot "Wq۠
+</"34 5V5_3P9ugabuqϪseT\W9<?|"flw<:S*1h*֮[On ww-Vq <}*XN]kQX=
+@|@")8S(wn3Q+B;W58=xĦIU;#dq,Ds}8 mz LڥVK;s,iD=s&|DzD9u7e:uoq`-$|t55 Szlnc*>=`ck:-'ʟ3[$d\Sݙqv'ZT\N"Bby?q. EغvI ;\-`ݭca?59ma6_dSW#3u$\eSU6unjzsԠ>C3}s#%: 94Xr~D)ml_QZ6_-~![CkvjaF&`IUϸ2MV lЫF(=9]5|u.:Rj%maLMDgNMGSSiH>xtt#
+jz$=_D}{(Zs E_eG0p`E"lG~P8 .\&A/
+ˆ Nn`:+)om'l@`x45F4[g3e0N<gt)dgsK9K5z%SpK EgmJq-n
+-mz+f @ח3
endstream
endobj
1399 0 obj
@@ -6238,23 +6187,22 @@ endobj
1401 0 obj
<< /D [ 1399 0 R /XYZ 69.866 801.979 null ] >>
endobj
+562 0 obj
+<< /D [ 1399 0 R /XYZ 70.866 610.71 null ] >>
+endobj
1398 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1404 0 obj
-<< /Filter /FlateDecode /Length 2467 >>
+<< /Filter /FlateDecode /Length 2665 >>
stream
-xڽn7 y}
-PF:-=0GnY\\WiJ?xjp/G%yƏB%n/䞺tTu$/rnpP8w? ~N׆bƽu;/C9+CC]/nᦫǬ~MjϿI(|JSMH51}oE638kp Ar|Cm~jvo mR"Ĉ;9b>P룸=c~籬0*WIJٮ7k_@kKHR$_M_Ay>i~߇q0
-QvJ;]Tl
-'ᵚCѩ޷*:o'=a/uT Ԝxžeiؤ>m% t\aH9eMd}2~!]{JN̘m%i%v1a.e טj[2P'F BX%
-+f&)pH>o9] |oNr@kQ=0BX,PjG\F7`ٓ1`fY]koc 9m'uD8W]oZce.p@9/+HǀsƋC)k3iX'M;~.nbKi fk$^YfDn;Y' |%
-_lgLFH 3Vb@ɝǷdk6D˥оYiYJ<*
-c=i'#dQ3>\xD7"&>4%?6H[ -xޮy6Ig~H>iI5l 5G &6BZ0-wa3se7VD^gЖS
-LN;q6O/7}`a3Q.Xr9 ]1N
-e}N>/%EHlDLGOMTz[e#'{4]X^ƢH'{v<%|B cZRm4L^/NV; Oj9OD}NdvN;]Ul>OWN9v'KeC'|W/oF9#J Io
-H3)y@m%(t\uOZ)YfXۥ=D&66 u)v*j*l:YƏ6urGQۤá2MϬ 4ׁ̍NseG mR1Rjv
-,maXR`_r%I0hk qbBql1*o|CmXm2oBT[>NQ'cYu>`=k#%M?G5-P>,x鸄u.j3P!ӨyFaM؅7mo+fc[3iWi# 6h' iCJ9a#ߐj'4ini;⎨NJi>7. ?+7!P@?o8"͎x{oNE@{\`Kmn.ݏV^ŲyqWDh]b{
+xŝnax
+rBtB0rۿ2Άn B9` d8te*h)嶶:0Oę0&`8-vk<| hNDo&:"&`ch*p`MK()Pe9@5e`Q ?︠`Z:*3$e)_z<UPRF}3R_)d {XY7K>kE`e﵍VH3e=s{5Qs^.C{ ́
+]HW{y/A3xIkXB}
+cD}u%e-L]`ve+.:1 ^ށ 0ulY5χF&Da3EΡ}
+Si 4.
+WV}W :̥#X!‚GbF(뺈PCA22/O53j9
+'Gt%ۡeAK&msl}]'ME/\GtT:$l8}F988z8wؗdp-
endstream
endobj
1403 0 obj
@@ -6267,15 +6215,22 @@ endobj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1408 0 obj
-<< /Filter /FlateDecode /Length 2107 >>
-stream
-x\n6 +$ tYdWtۮ/JR2KF$M; zx}q5X~qqyk/%' sʹQ[|>?*`#9װϏι[/c[>[#~{@ijx`4ơ5<!f  F
-ǔp5lU+"-֛oJ)ѕm}Rsߍ3xU砝
-%2`_;f 涓m`oKSV3ՆAS
-8"_͈4PC}d(.* HG699" ۢֆ)Q9$۪Lm9lC6ن ɶ^ȶ/T+nT=YX#6 ZElDbkJlBCn+0;0k*"n+9,',AWvt=Ud:ӕNd:J_L1]'GaCQ
-[|@>?*g_N<o9觤j+v:)-,/(clö/*pwv%e@yi8g]SbtZ,R
-ӧK5_$c|LrU?焼n7LOH
-(7oE7;$e:4qTqn7r~К#Zy]=73JX3KHKtpDPYM$Lx>9@x= G#*,d~\JO<99DxU 9Fx'FZv#"#l <y[K'U"o3 Q_]/ CP P`c="ӎle2?Hx0#W6 '<P׉
+<< /Filter /FlateDecode /Length 2746 >>
+stream
+xŝn7 y}
+/xRZxB\-ߐ:V˷w;{Un䨓I쇁,A'+U#>)HT/Đ.f>*atoMWMBIo*tD}gI#D[079ki{OQ'}/W{kZzR$?"N}9s+zHhk S9t06
+(u2C0'|^NE5OD'd@gE$ 0/0,KR0)6|hGhCSEv?HC:
+OvmԬ3}Ԩ3٘r)Kqo,R30ЌsQ8ٞF{@+z}Y)PnHZi)U40cZ h#`@
+ rW@
+>aՍuj+M@8%eA16`o+Yk!`sU:ykIAȃ48eڀe,w58
+MTy|)ug8q:}C%`y)u1`e_hYP&6ja̬ %/,H)K.h,>>&(K+ :6&`&H?m%&)P6A`ݗkzLkH^giJ 5:inL! E@=:HǴb;bњ:IX YHRN Ec)FRh =%Hҝހt#@:OR (@zJ DH@!`#WAy'B2ORB h;C:o}kM^ӱ]9 izh
+$l4ZT!*}ъ3<P1f@m1%@jI,{EӬ@v7 7Uv3]Q nuI_
+
++ m;<6
+HH i%)PVՃl: uOEagŭyFeI8zzmpnv5rm9CړI;sHCgTBLPJ2O9 \8G<I^syup9qnVH8ǒ΍p%
+Ν`Ź}P:jqkOOց0+[575Vzu6*AM=H
+[lzFt ΟЭ`|!|5O:cg~b;&, i4at?SXzaAH`{/C}e>g|Hs{'DDۙ]ma|5χ:܌<XmþbmK6~3{%b=GM46^aOI^;:5y/A8+w=#Va)dn>|7 
+с|,GNw&@9Mr|`5Fю(hkޭy>ALoXHٝG{Rn%nRzg=SYy"x{ ZD;X|z' Y-~~}V4
endstream
endobj
1407 0 obj
@@ -6284,20 +6239,26 @@ endobj
1409 0 obj
<< /D [ 1407 0 R /XYZ 69.866 801.979 null ] >>
endobj
-566 0 obj
-<< /D [ 1407 0 R /XYZ 70.866 295.89 null ] >>
-endobj
1406 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1412 0 obj
-<< /Filter /FlateDecode /Length 1856 >>
-stream
-xڽ\n8+
-R,l" #)pA*&r S1)bă䙘ewSu[1:
-@3Π2R(Z!^[VG-o5 X`K( ~]5/ۨKH,dc#ؔ܆әVxy5cM6\d-R Ey+r˙ز3" f$VI!>:a,BPx`IV׎q0܉FP|n9[s,*>ݶiWDM9𬣸^U㯃uǟh(ySt@n׎6z[w2t|NybDs? 0^.Z6(3!n l9LD8.8@tQ|0/Pzg f
-QIvPm $8B4D/\q~D{/ČH^bB DԆM/mx:`y r ;yq/\ H{pD;cT/YiPR|n3zB(/lG=-/<s r9cVĈN00Vlk.4Q %AN`xb4!:+y+EJ#nL(4o_qir|nyZh(DMkhj/ϒ\0q84s“ܸC>ny HӊRi O@A:1u~r5Xl085i$'=C*XCa'Bq۞ZaT`v!ٮ[mƑxvUӐoEi P& EMtyq<2#.\͈˙ubEK*mt<k^4ȩ<8is%ok5 Nڅ&$l){P|UKb1AR:BRމ `xSmtF_WVh3}U;v#gĵUwj ElJi|]'jhjOO;{ǰFcԘvdޗސKĵ|ޫ)y/mG<N3=5fC;Di$!VDFy;jUW򶧫ޮ^hRbviɞUػjLUtյA9$[#L_ƂY~P'A>Ìh/lb|*wۧ_Mp/5ٗR~Ren˕A^'n- DXq+?v6YcRcқ`̂qiP&+gAiNX|TEX`fxE&WKkU.Ui Y둔9gX|K]@lt
-(
+<< /Filter /FlateDecode /Length 2766 >>
+stream
+xŝɎ$ #k_
+1YYj8]TDBjMஉOgXzEK#w KWWKrס%-lAbe5/]ި
+6p5|{V0NI bF,
+Func5,"|?\'yXҨR!iVjK59hW$/і}Y`wP)8 voTrU5/Fb_F+Ѩv;bky@9<C hz
+RQ>tgyѯi媡?c*xZ\h3QIGaE9TPD*{
+>D[bDh+d`RcF)8 0Y#ɀuIa
+,:h:0jM+/qS2:N t,ξѮx&Ӂpxe3MgiхpJ= x4AhypCS҈$zhNB8j%ᔴ%TNE]hp:$uY(
+d@ADX`Ma/7δzJ8m=X +1r:z:TD‰b!;a^@!!JT bg
+&m*'6ՊѮyEo
+bH9LpR"!/H 77 sX8yh;k`DnG}a%v:T{8odw%+oFvb^nr
++׶*p_U}bc0;sU8 ]Av]qOty +wOk&5H NsmjTyumz dn &1 TZ&#o%CK$@c" s7x e
+kW指D5xDr⑍*GWߘR9bť5d= 0뵍ȮwvLlx2ī3{u<eC^4!/"Pvd
+{?9sz)XRyÔϴ9휪vy$y:+ JGt8C9{;ͱ]rG9V|_%mRSajK]hI%ѮA%v{b}baw$=@x'WZ,dH}% d^,4dز\~0<qD9s5U;sr'GG0
+VXyt0mȰc0TîNɳۦď&x']KDK}%W@zIϬ?%}]^硋oύ~? mA
endstream
endobj
1411 0 obj
@@ -6306,23 +6267,25 @@ endobj
1413 0 obj
<< /D [ 1411 0 R /XYZ 69.866 801.979 null ] >>
endobj
-570 0 obj
-<< /D [ 1411 0 R /XYZ 70.866 188.294 null ] >>
-endobj
1410 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1416 0 obj
-<< /Filter /FlateDecode /Length 2395 >>
-stream
-x]n#7+p_
-UiQ(]D r7;[/|%jsrj>Xܓ0,+d+V0*%<>}K+cX#x7f I]'&, V3&vu;X H<`*yCa(( (<irzIEe*NFI1r'MZ.5_gt9ඊݤvZPn\UrְƊWRG=|zW!i7Pkc}ٱ\/)^l)fuZ봆3XJ{Ô&kEhx:Ʊ8:][mNvC_A;iØNc<u+m8uh6PJ]9JF8bjvf0|.!v\QjcMuV)<xUO&@Ep'G*Nrɹ^Z6q^YO3R=4>T5Sjcnlج P11a!]wxU=&0&4A̛&Eh/bG % jQiyJ ,H/ɯ6,}-7׻v}jjlݜc1 Ku?38V:±J~Pe\8bݯ} x#At@[ގ8Xԧ7e=E}Qu,E}jA(57d(.\Crm_( PQ] ܁ubJtJ[ %dPj':z|!7^N NjP5x 8V:pɤ+z1Cd*䐡j
-jZAÏ*KkPCPacvC۱#'ÆbX^cP,jCS2T$\gCuPM  P!*O=:.NqN͟)%icÈLB7IZdT>hfNbU9f0 XD,Vេ@Y ?!ځ_Xt֫;ʭgd`0¶ c|)d[I44lKDŽ1Jou<>P-p
-d!9~49~K3؂>ңAuyYB8sq LC?E4o5pެPfuАt`.y`B;Q<ԹUUP̣.Mv[%Big bD+ok6Ȇ<`L~l-aknd}H`5a_cDQm*+5flK"ul=(`nr>H؆O}[,T0KXf?_*J)jR_RvyUw
- 0d͗~ vTԗm9w>5RYvr\|ضwBxwL@ vyom['-ָur8X-m]}Z
-6˦e;6(7I9I-9~+eߴP4
-ǿ)&ue0+$/qq
-} FN_8?8Wv$ 0-LtُǦ  Ow$x`ngQ{G;yE,wҷ;.R>綃uȎ|LhRq7Pl=ئjC}TAYSn(աPfcIL$G6R/{IoJjKdSj젊zNtj[et9"NEN-[&'|Ża Lvۗ\뼒F;9?>i
+<< /Filter /FlateDecode /Length 2567 >>
+stream
+x͝Ko8  H;
+~pZJ pۗ}=~ǧ'u,XZޡ'8\Q'f\>-PI!NgXBn+!0h
+z y߼B_[|q@'lOmz-1kA\w}iճ<cM='bУѩ;>8`L i>(RjlGSyD}V+an<7=.&"6?b}zǷ)1Aޛ]^_.#{yL<hQwﱬkKh R$sLۧߎp˾, c0އ#l&
+ቶ5.1ѶQzv0`{+LCK??v
+'ɀX݋I `$pa[
+zbcjeʈ7~=4 DZqoQ+VLa#"V3ҙ`j5.Z̀fi\
+XZE(3,"<\D8X&R6
+h$O!u&J#|ICc'L6 XR`LZdɀ.xHNXVJgܖy'B2l6χs:xGCLĹY87)|mפm9CZIہsX 91X%b+!y"eAps<j[pn.CgŹ68p#2uq#
+ܦ (u&l
+|6ψs 8W{0ZmVt}eAG߼+F }h)xwD|v3/e;HE&+`pdx6jd<4zy`#{F! 6j>| x.XD2 ai#ƻKzϤ, 01*e@#e+.;
+oG|߄`b9{<ci?ߑ?eM%! פz83ImˀRp\.:#OYg<U{0ZmyjcN<jS21ҸJ"Oa))+<}jD7MՃ|6!ISH9+McFAT+JS Ph(4Չ
+g(IU{0Zm31xF_db%VIn(2Sdg dqCAF͌ 7TF=?n m4{n7ȀƦ (F4_5IaU6wɆ/{mkp yW@MH#m?A!i
+QΏϯ}*
endstream
endobj
1415 0 obj
@@ -6331,25 +6294,23 @@ endobj
1417 0 obj
<< /D [ 1415 0 R /XYZ 69.866 801.979 null ] >>
endobj
-574 0 obj
-<< /D [ 1415 0 R /XYZ 70.866 275.965 null ] >>
-endobj
1414 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1420 0 obj
-<< /Filter /FlateDecode /Length 2434 >>
+<< /Filter /FlateDecode /Length 2080 >>
stream
-x\ˎ+)߯\RzY5Uod ,Jvi8qNI~og+OQD9/IQH}EJ&%|Iޥ ן
-?@jeFp@HX_l1k@xߦ);IO/
-E@+34ZvϣW^ %Ags l1iCܚa `t0s%4KHJ0g0n\jՃ>LRf.(ɌLiz^EkTا4Ys?+ [,Ԋ
-r$ 舥yRNzXA]ފǚk !E.E)("Bj
-g <vTWL,ǩ8鋽,lr)l|V}(x4l5
--Т -zۗV*.B#Bk>Eh=aSh@I8M WLz)j;huja~(Ԯ/PD-5StZy_(#o=iSuI-t̪kɱ孶*ꈚ4Eye5D,aQ^ Oy El]8ؾ'}s5L+g!/1az-; 0)ts=p"ƛze:pp4gGheI|2[2w9c71;FS[w-gH<la[dX!*wz"'V
-%׍ZlJ8|ƍtro/m99Ynkdy~Q8~nxԶ_l6U-DGpǧj3o*,e2H\ cV;-Da%첏-ϢLzOxh@"ǃ%x5Ȃ
-d#ET8RAھSP'N I}uQ(`~Vd"6UXIu&i'J=BudU#Uka с)//Oq.yjyči)ᗥd^(ϖ=I|+ʡX'=O\߳iO+4/8LzdշT!y>?S"G犟m}C+k^A:]8}%9_G #:I*9UF>oHm5k%a
-C4qUWC-gF00W¯fK0x wtDY"wvʶuΘ-4:ZM`RV
-ĕG݈Kd.[|FD,ϥCT&XmiQH}?x
+xŜn8E
+@~
+~'u
+RDO!&!5G)YJ*z)}
+>=}3NKia :yu!O5򷼆^ TP'ҬĬoY]e+ >ܾ@R$_?^71h Ɋ~,w݂e{y,Ο_WaZBl#gk*7cbHvimu>e D^^B&Y.[f)5v +. {&׊g+S3",3H K|JPommzwf{jC$<*atᑦo&e^#PkhYz̔9*w'T~D@t_kK||JqYj+5p$`Pes[ao(G#h/ᥳXLMBaz%[L'lXAAK ]v[%0lA z0&z K=gRhaZ|Lo+ZD[EK(sQ8eSm_0aj( [&/Zi8ȥWwnwA-#Rq8L=# NJe-W7s
+֔O\4_R*w:;ΤV,:v1Fб҇>C`+:$Ѝ X z#T@)O}
+t幪V46_Un/:R@7\>ڀ}0/C^&GKrMܢQDIrihM<d9y~Gh̷NHrx#EI`~=QD3 Şvy UBT3R\GaJ
+()zkJG-).;QoDqgLRjb0y:(1aas=Aya_OOR^Z|=kٔ|N}SuGIS^U_aBo#πIutP8S%m`o*iBu&w"f%#?s|zd͵K|?GwcxAw,Hz# ./;:g
+(IzD+'se}ϙ?hM+b=6tV_/r8V⣍!N|x#E./;}s 8seJ|&ys') D\/CnZ9+g+adz9r_v "J$kd/N`zA~@Ȍz#T)O"
++)juEt%;At
+DQޥg}޲:`?j,1
endstream
endobj
1419 0 obj
@@ -6358,23 +6319,27 @@ endobj
1421 0 obj
<< /D [ 1419 0 R /XYZ 69.866 801.979 null ] >>
endobj
-578 0 obj
-<< /D [ 1419 0 R /XYZ 70.866 299.875 null ] >>
+566 0 obj
+<< /D [ 1419 0 R /XYZ 70.866 722.291 null ] >>
endobj
1418 0 obj
<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
1424 0 obj
-<< /Filter /FlateDecode /Length 1532 >>
-stream
-x͚n6 y
-@)Qf
-XV=?I,;cil{xҟ4I1 ?~?}Z
-lAg
-P;
-'+m[3y^ޏPePyÍF\`#bwP`v6MmbJRܺμ9Q ҦOZJ@1-#}9/FE xuk iO$%;k)Wnjsf fa9dY\>+M3+$!M[JiFG#9ty aUŒnR _QlA9:G9V\^T1M L3`J;>pe>&p<Ϥ/5!WF6}c[cG*GK_?ƐB+SηDrRz%a1r-uXIOgl|)Z#[ՍoոP]gO\ר'z8ƔCYyR=)w@%0g$[rMZ9ZFPm_QQ^(͇6x,lBŊ-PG[YJ5.bP
-띴,
- b_
+<< /Filter /FlateDecode /Length 2186 >>
+stream
+xŜn#)y
+@h(R'4VvNz3￘K8B Uōv9W4?>χogO+> ~'Ǚ|`\;N?q.s8/Źo?RpkGS-^_OJ[\y
+jx`VuXh…<9<.O^}jg܊
+.Qi@Lk0@k,^]
++?eϙ-Tg
+Kޢ#zM(iogr(%k(UwaPmlÅHK浭z~z
+q{-p(/7I-kȅOmA0=9okG'<B]/waMmqB"XB'&-"<eX|=`Pq_=ޤ{Wy=ƥpL G&ms}H[yi+ L<CVQ?t@$6#ROWUگ>+r4݆*hNbC):>v3P=9뱚4
+It F=2VtժlivV3+ՈbGeYV:_J< ŠH|~T<ęby~砟> eGs#rMdri52`D6`"5o;7#ݨ<ߞZ1mCS?['|{p ԉwLl0d3jg<T5?f?9E gItVIgXFDNcXߠHU*zr=-1 FI^z\ ^Uy}# 0!!R{å@'tFfN2j<4TQ= G~]2R4NfV66EzG6{ƅ$YpτxN:I` Nbz/PA%Uٲ+:NYð-fވRe2nȪjT" R0TުY| TZTTz
+v1*"PƦLҝA͏YRALJDP@h?4lJ&PH8XS@uE *d@e\@W Ak)τ*~ջND,?JOUI`MJ5`R*HޠǰD o>&A >I1$O$uzM Y H<2){k F(rN,IO67
+U6O"Jsf"0R;N#Kn[3Bs4l=O6U>sp])j$Be.0fXDt dl~]eNRK,zg R</E
+Ei#e,{6v5pf݀:Au^)"iR=A䶴3DR!r\5l}('H@'D
+fBdG0ӥ44<yROx: DbE "Q6?&H$OHx "{Cd#c!"c!OH9DbkcIuZ)$I!r[")MQ1O5OK94LȆ.D< tOI=ey:DV!++1D DJv"NfA$>"A(:
endstream
endobj
1423 0 obj
@@ -6383,22 +6348,80 @@ endobj
1425 0 obj
<< /D [ 1423 0 R /XYZ 69.866 801.979 null ] >>
endobj
-582 0 obj
-<< /D [ 1423 0 R /XYZ 70.866 771.024 null ] >>
+570 0 obj
+<< /D [ 1423 0 R /XYZ 70.866 634.62 null ] >>
endobj
1422 0 obj
-<< /Font << /F50 687 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+endobj
+1428 0 obj
+<< /Filter /FlateDecode /Length 2866 >>
+stream
+x]Mo#7 X $@ފ^S/R3dK!ı'|4cy$O}yۇE,^{{'u
+RDO!.BjϿ?K_4RW)G[?cNKi.Bއ?O-ߑJ;
+}&~ o箭:J!fa_G'eҗ5К [d&|آ/Q#
+ F & "`{/=TTm`PYa׵":
+m#ҏel:_Wr@%?)(xy~o Εu7#nOkN};uɧ~Z_ئUoaNoE-6ٮ4ֈ o9Q|bt%WVV`S
+ )#f ~c oa>'B0B@CTFuAo%I c-#Nj+fMnQG.Dpa,[2Cpy'*fI E_lٟeBq<l|Ƈ>֗fqk1Q4?Qk%M"cɫe8]+^C64wpdiJ%ȩ~BmC#G
+#:ZB}&%58Hke2ZJ -h1ȢZrutf rfc[*:UULwW 'ny™0HFY=CW1޷ݓG皇&L7J Nxa|\ŗ}񅢜_{}|ygq8˘}״t1
+WL竁9k` h=)])n[`)@@޲@N- -,S`}>A|.az_̥*H4tT8+LX8pH_3j[_ጅkHlz,?^8Оy]6kC Qa,->CR:k7|Юdr0sqmMDžcQ tJ:6o/iik?1i!&&-7l;.5;6YmTeӡk~*
+D7`$l1}Np,qr<Ʀ1t”Lcy =1,l<fG1Q#?.+kenc&0!|i
+5*Z1RCzmWϋok
+6r6.6`(/x-il& '/]yu|bB
+,q00gȳ(gZqż(ů OiG_8I'*m5^a}E?ŧG<qlsm&)1Q>jF~̱cdM9`q.K&NN pS·j\Gs}jl
+ZϮqFY7b~+<5.rA3Cc wiʶ\C%]A {ZЏQo+>_ D3鹑@ַSvsH"]H'}nObppY7H$L$M%+k~/zM}wK=+_
+endstream
+endobj
+1427 0 obj
+<< /Type /Page /Contents 1428 0 R /Resources 1426 0 R /MediaBox [ 0 0 595.276 841.89 ] /Parent 1430 0 R >>
+endobj
+1429 0 obj
+<< /D [ 1427 0 R /XYZ 69.866 801.979 null ] >>
+endobj
+574 0 obj
+<< /D [ 1427 0 R /XYZ 70.866 724.916 null ] >>
endobj
1426 0 obj
+<< /Font << /F50 687 0 R /F15 639 0 R /F55 774 0 R /F34 637 0 R >> /ProcSet [ /PDF /Text ] >>
+endobj
+1433 0 obj
+<< /Filter /FlateDecode /Length 2174 >>
+stream
+x\͎&S , UJw#-5{%Ha tlp0᫢>_~^巗כǜ-/z/b8Z_u=7;ιrsm鳠o_Z(\R e_c6]l?7ƞo{}N@*U1#84u<H"$C$lYС|B9=to(<P ik$Q'JV")޿+}{-^I\p]˿?/x-(l2LA^Epq
+{ &4󟕜; 4ߢd{Om93\(rEsC0Vi*n߫*P$?o^^Iyi:ߟ<<'hiox:uU&2n̦&$^s2qL4
+IGYSTHLYU
+e`99|_4
+BMiN,g1b那0@&pzĢL߇ʄDtܶH<=O$1C!w%)bgJfA +k,J:Z*ϫ?sq RH,p -]u_}7p"NMt[Tk6 !QT <Mu Ş])"[yn`ޥhmZ4(Gh1e;kl!J>j KZTD<ޙn "i8w2eJK*m Z 5*1c)R,"PhzQRǢܛ6Ve)"Fc QȻUzT}t`؏P2G#|+%'iqc{ =POw,k(ONtd9=gYK㍙x]",72DX<^^. ݰ
+3*&$ב'$h5&O0
+'OHqsyJƫ$On)s<c1E
+HΖGx4@dqjBh[i"9Ct=SF<1q
+endstream
+endobj
+1432 0 obj
+<< /Type /Page /Contents 1433 0 R /Resources 1431 0 R /MediaBox [ 0 0 595.276 841.89 ] /Parent 1430 0 R >>
+endobj
+1434 0 obj
+<< /D [ 1432 0 R /XYZ 69.866 801.979 null ] >>
+endobj
+578 0 obj
+<< /D [ 1432 0 R /XYZ 70.866 771.024 null ] >>
+endobj
+582 0 obj
+<< /D [ 1432 0 R /XYZ 70.866 572.141 null ] >>
+endobj
+1431 0 obj
+<< /Font << /F50 687 0 R /F15 639 0 R /F34 637 0 R /F55 774 0 R >> /ProcSet [ /PDF /Text ] >>
+endobj
+1435 0 obj
[ 28 [ 525 ] 50 [ 525 ] 75 [ 525 ] 77 [ 525 ] 96 [ 525 ] 112 [ 525 ] ]
endobj
-1428 0 obj
+1437 0 obj
<< /Filter /FlateDecode /Length 23 >>
stream
xc````P``a`h`h
endstream
endobj
-1429 0 obj
+1438 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 1180 >>
stream
x}[Pew]YҎg/hǒ`/cҖB@MJ/$@B*
@@ -6406,31 +6429,31 @@ x}[Pew]YҎg/hǒ`/cҖB@MJ/$@B*
zM΀Q jmD[Fee VՆљ҇Ref ,m| u4UH҅:uy .(*"=u~E٫Ptt<)E$Agv=BitCCKa&焤>/xTu bݤVDD7](s~sgg,F.. Cx/Yb`N2%@* ۡN0TzZxbnA5½waI?OͿ1(
endstream
endobj
-1427 0 obj
-<< /Type /FontDescriptor /FontName /ULKPUD+LMMonoLt10-BoldOblique /Flags 4 /FontBBox [ -480 -308 789 1039 ] /Ascent 1039 /CapHeight 611 /Descent -308 /ItalicAngle -10 /StemV 175 /XHeight 431 /FontFile3 1429 0 R /CIDSet 1428 0 R >>
+1436 0 obj
+<< /Type /FontDescriptor /FontName /ULKPUD+LMMonoLt10-BoldOblique /Flags 4 /FontBBox [ -480 -308 789 1039 ] /Ascent 1039 /CapHeight 611 /Descent -308 /ItalicAngle -10 /StemV 175 /XHeight 431 /FontFile3 1438 0 R /CIDSet 1437 0 R >>
endobj
-1430 0 obj
+1439 0 obj
<< /Filter /FlateDecode /Length 394 >>
stream
xڍ]k0+.wQMA0BNc&Gh.M/KR0ҧ=_oyXoW<(lRfLYI:D@i96Z`ۢ4MR)̣5Vh'!o; > ˥ja"LTW\|P&9] +~I>U۹"enMBr}n f.䟬2Xx +~G4G- w'm]98Gz3$6*3ݹD{XC50+&(8m}iW':SOϓfӰixA4\:/VVe۟w7:Zo*
endstream
endobj
1173 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /ULKPUD+LMMonoLt10-BoldOblique /DescendantFonts [ 1431 0 R ] /ToUnicode 1430 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /ULKPUD+LMMonoLt10-BoldOblique /DescendantFonts [ 1440 0 R ] /ToUnicode 1439 0 R >>
endobj
-1431 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /ULKPUD+LMMonoLt10-BoldOblique /FontDescriptor 1427 0 R /W 1426 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1440 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /ULKPUD+LMMonoLt10-BoldOblique /FontDescriptor 1436 0 R /W 1435 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1432 0 obj
+1441 0 obj
[ 28 [ 531 ] 35 [ 531 531 ] 43 [ 531 531 ] 80 [ 531 ] 85 [ 531 531 ] 92 [ 531 ] ]
endobj
-1434 0 obj
+1443 0 obj
<< /Filter /FlateDecode /Length 18 >>
stream
xc```
endstream
endobj
-1435 0 obj
+1444 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 1228 >>
stream
xmTmLSg-ع: nS
@@ -6439,10 +6462,10 @@ xmTmLSg-ع: nS
-zؓf 9!GHjTzerB'7G`̊h65N;?Oq)(n{J̭*;3%7g;Evl~ofd}`;3h]; p֥ WϦQY1󕼌?`#?=K+44z(}x/Libj#ɿ-ΆH(Gs_klG{y83rno++ M#Nng] ?N@!;dz`w8zdhrpJƯ-Ƙ0Vk"Xg/srbpJ/tryhcwo(*Xb^|nbh'w-@ur"bmCo
endstream
endobj
-1433 0 obj
-<< /Type /FontDescriptor /FontName /LHFHNR+LMMono8-Regular /Flags 4 /FontBBox [ -456 -320 743 1014 ] /Ascent 1014 /CapHeight 611 /Descent -320 /ItalicAngle 0 /StemV 177 /XHeight 431 /FontFile3 1435 0 R /CIDSet 1434 0 R >>
+1442 0 obj
+<< /Type /FontDescriptor /FontName /LHFHNR+LMMono8-Regular /Flags 4 /FontBBox [ -456 -320 743 1014 ] /Ascent 1014 /CapHeight 611 /Descent -320 /ItalicAngle 0 /StemV 177 /XHeight 431 /FontFile3 1444 0 R /CIDSet 1443 0 R >>
endobj
-1436 0 obj
+1445 0 obj
<< /Filter /FlateDecode /Length 402 >>
stream
x}]k0+.
@@ -6453,21 +6476,21 @@ x}]k0+.
endstream
endobj
1167 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /LHFHNR+LMMono8-Regular /DescendantFonts [ 1437 0 R ] /ToUnicode 1436 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /LHFHNR+LMMono8-Regular /DescendantFonts [ 1446 0 R ] /ToUnicode 1445 0 R >>
endobj
-1437 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /LHFHNR+LMMono8-Regular /FontDescriptor 1433 0 R /W 1432 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1446 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /LHFHNR+LMMono8-Regular /FontDescriptor 1442 0 R /W 1441 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1438 0 obj
+1447 0 obj
[ 28 [ 531 ] 43 [ 472 ] 47 [ 590 ] 50 [ 472 ] 59 [ 531 ] 63 [ 590 354 ] 66 [ 295 ] 72 [ 295 ] 75 [ 885 ] 77 [ 590 ] 81 [ 531 ] 84 [ 590 ] 88 [ 295 ] 96 [ 414 ] 98 [ 419 295 ] 104 [ 767 413 ] 109 [ 590 ] 112 [ 561 ] 116 [ 561 ] 499 [ 502 502 ] ]
endobj
-1440 0 obj
+1449 0 obj
<< /Filter /FlateDecode /Length 27 >>
stream
xc```T\0ţaÑҀ
endstream
endobj
-1441 0 obj
+1450 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 2715 >>
stream
xڝW TW
@@ -6483,31 +6506,31 @@ EFOɱp7
MYecWoؠZHMZbĕLv"< *w[ԙG!>Mjh(RU}@督)<އ;¸# \4xwY}do7hh"kqnׂŬmΖ
endstream
endobj
-1439 0 obj
-<< /Type /FontDescriptor /FontName /WEHDSH+LMRoman8-Regular /Flags 4 /FontBBox [ -456 -292 1497 1125 ] /Ascent 1125 /CapHeight 683 /Descent -292 /ItalicAngle 0 /StemV 98 /XHeight 431 /FontFile3 1441 0 R /CIDSet 1440 0 R >>
+1448 0 obj
+<< /Type /FontDescriptor /FontName /WEHDSH+LMRoman8-Regular /Flags 4 /FontBBox [ -456 -292 1497 1125 ] /Ascent 1125 /CapHeight 683 /Descent -292 /ItalicAngle 0 /StemV 98 /XHeight 431 /FontFile3 1450 0 R /CIDSet 1449 0 R >>
endobj
-1442 0 obj
+1451 0 obj
<< /Filter /FlateDecode /Length 475 >>
stream
x}M0=d,+mj{ @-;rٕR$;aqu`u5bQv@
endstream
endobj
1166 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /WEHDSH+LMRoman8-Regular /DescendantFonts [ 1443 0 R ] /ToUnicode 1442 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /WEHDSH+LMRoman8-Regular /DescendantFonts [ 1452 0 R ] /ToUnicode 1451 0 R >>
endobj
-1443 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /WEHDSH+LMRoman8-Regular /FontDescriptor 1439 0 R /W 1438 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1452 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /WEHDSH+LMRoman8-Regular /FontDescriptor 1448 0 R /W 1447 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1444 0 obj
+1453 0 obj
[ 82 [ 611 ] ]
endobj
-1446 0 obj
+1455 0 obj
<< /Filter /FlateDecode /Length 12 >>
stream
xc`
endstream
endobj
-1447 0 obj
+1456 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 510 >>
stream
xuQoP~/1 RRQ HAh!iH/ kDjXR!
@@ -6516,10 +6539,10 @@ kE>D<y*Q,#ϓ1lj$B;r
$m2NFF( x 9#rnŹ\nZȷEev]T(¢e:\f&ҚbTUAвefVӾ"\mh3A2UjSpђ tQӦؔBq%ii"4hl#/;,gK\yiNt:PeQto\fVC1lTj:TDPcaa;niη(Ww{7?nBaj| =gԊCwc/= OK_Ѝ"¹'=5`ݭ^,U rhh{=xMӿ1
endstream
endobj
-1445 0 obj
-<< /Type /FontDescriptor /FontName /JHITRX+LMRoman6-Regular /Flags 4 /FontBBox [ -515 -298 1647 1125 ] /Ascent 1125 /CapHeight 683 /Descent -298 /ItalicAngle 0 /StemV 117 /XHeight 431 /FontFile3 1447 0 R /CIDSet 1446 0 R >>
+1454 0 obj
+<< /Type /FontDescriptor /FontName /JHITRX+LMRoman6-Regular /Flags 4 /FontBBox [ -515 -298 1647 1125 ] /Ascent 1125 /CapHeight 683 /Descent -298 /ItalicAngle 0 /StemV 117 /XHeight 431 /FontFile3 1456 0 R /CIDSet 1455 0 R >>
endobj
-1448 0 obj
+1457 0 obj
<< /Filter /FlateDecode /Length 361 >>
stream
x}Qk0+
@@ -6528,21 +6551,21 @@ nF(`N)5 oTeOB ȝ  =YeIߴXE2Wd,VzFOQ Y$]
endstream
endobj
1164 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /JHITRX+LMRoman6-Regular /DescendantFonts [ 1449 0 R ] /ToUnicode 1448 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /JHITRX+LMRoman6-Regular /DescendantFonts [ 1458 0 R ] /ToUnicode 1457 0 R >>
endobj
-1449 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /JHITRX+LMRoman6-Regular /FontDescriptor 1445 0 R /W 1444 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1458 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /JHITRX+LMRoman6-Regular /FontDescriptor 1454 0 R /W 1453 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1450 0 obj
+1459 0 obj
[ 43 [ 591 ] 50 [ 558 ] 66 [ 302 ] 81 [ 636 ] 84 [ 558 ] 96 [ 602 ] 98 [ 458 ] 116 [ 613 ] ]
endobj
-1452 0 obj
+1461 0 obj
<< /Filter /FlateDecode /Length 21 >>
stream
xc`
endstream
endobj
-1453 0 obj
+1462 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 1428 >>
stream
x}T{LSW1jk+و29AĄ{yHiᶼUۖ"+zA0ahfp?q;dpY-;'_;EEجyyʼ>CSk|=9i@A6c$8p(qD0G
@@ -6553,10 +6576,10 @@ u9_cTV]IyYEY*S,7Ф2itFok4tRzSIA!H1R!`^J
VE-QCOu~PǓ kǷd^nvN` ζ_Lu./\Bra~(cSw8UʋI<2:~(u֞ [ĺ}>/96Ό(-wX' XdnhY0,H 3qk/8쳹%-&䗧o n‘1/o.L}Kbf뇆O} b?5^{P^ݓ]g?0=9-nE;cm&T`R3X|.8C^xOXjN;xJ4[9~
endstream
endobj
-1451 0 obj
-<< /Type /FontDescriptor /FontName /EPLNLQ+LMRomanCaps10-Regular /Flags 4 /FontBBox [ -496 -290 1501 1100 ] /Ascent 1100 /CapHeight 683 /Descent -290 /ItalicAngle 0 /StemV 106 /XHeight 514 /FontFile3 1453 0 R /CIDSet 1452 0 R >>
+1460 0 obj
+<< /Type /FontDescriptor /FontName /EPLNLQ+LMRomanCaps10-Regular /Flags 4 /FontBBox [ -496 -290 1501 1100 ] /Ascent 1100 /CapHeight 683 /Descent -290 /ItalicAngle 0 /StemV 106 /XHeight 514 /FontFile3 1462 0 R /CIDSet 1461 0 R >>
endobj
-1454 0 obj
+1463 0 obj
<< /Filter /FlateDecode /Length 404 >>
stream
xڍ_k0)PVN0BS{lRoi'!+{I;}~KUk-+HXֈy[-'Պ<}M8RslUfx&@bZރN噜gE`փ.j0'7u)@ԣ *.IؘIHp Q \!dI6ey*OLEYH樅<CQ#EqAk
@@ -6566,33 +6589,33 @@ xڍ_k0)PVN0BS{lRoi'!+{I;}~KUk-+H
endstream
endobj
1117 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /EPLNLQ+LMRomanCaps10-Regular /DescendantFonts [ 1455 0 R ] /ToUnicode 1454 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /EPLNLQ+LMRomanCaps10-Regular /DescendantFonts [ 1464 0 R ] /ToUnicode 1463 0 R >>
endobj
-1455 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /EPLNLQ+LMRomanCaps10-Regular /FontDescriptor 1451 0 R /W 1450 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1464 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /EPLNLQ+LMRomanCaps10-Regular /FontDescriptor 1460 0 R /W 1459 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1456 0 obj
+1465 0 obj
[892.9 0 0 0 0 0 0 0 0 0 0 0 0 0 585.3 ]
endobj
-1457 0 obj
+1466 0 obj
[570 0 0 0 0 0 0 0 0 466.3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 277.8 277.8 777.8 500 777.8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 828.5 580.6 0 0 0 0 0 0 0 528.6 429.2 432.8 520.5 0 0 0 0 344.5 0 0 0 878 600.2 0 0 0 451.2 0 361.1 0 0 0 571.5 490.3 465 ]
endobj
-1458 0 obj
+1467 0 obj
[339.3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 404.2 0 0 0 0 706.2 0 0 0 0 0 0 0 0 0 0 579.4 ]
endobj
-1459 0 obj
+1468 0 obj
[525 ]
endobj
-1460 0 obj
+1469 0 obj
[ 27 [ 843 ] 82 [ 569 ] ]
endobj
-1462 0 obj
+1471 0 obj
<< /Filter /FlateDecode /Length 15 >>
stream
xc```
endstream
endobj
-1463 0 obj
+1472 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 639 >>
stream
xuROav
@@ -6602,10 +6625,10 @@ xuROav
+s$ۚAWך-2Vk U&o[q|{Zej[]Hp$ɶX
endstream
endobj
-1461 0 obj
-<< /Type /FontDescriptor /FontName /QGDJTQ+LMRoman7-Regular /Flags 4 /FontBBox [ -483 -292 1562 1124 ] /Ascent 1124 /CapHeight 683 /Descent -292 /ItalicAngle 0 /StemV 108 /XHeight 431 /FontFile3 1463 0 R /CIDSet 1462 0 R >>
+1470 0 obj
+<< /Type /FontDescriptor /FontName /QGDJTQ+LMRoman7-Regular /Flags 4 /FontBBox [ -483 -292 1562 1124 ] /Ascent 1124 /CapHeight 683 /Descent -292 /ItalicAngle 0 /StemV 108 /XHeight 431 /FontFile3 1472 0 R /CIDSet 1471 0 R >>
endobj
-1464 0 obj
+1473 0 obj
<< /Filter /FlateDecode /Length 367 >>
stream
x}R]k0}ϯ{(n k Db|/Ik cx<\={d W{ C
@@ -6614,21 +6637,21 @@ x}R]k0}ϯ{(n k Db|/Ik cx<\={d W{ C
endstream
endobj
833 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /QGDJTQ+LMRoman7-Regular /DescendantFonts [ 1465 0 R ] /ToUnicode 1464 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /QGDJTQ+LMRoman7-Regular /DescendantFonts [ 1474 0 R ] /ToUnicode 1473 0 R >>
endobj
-1465 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /QGDJTQ+LMRoman7-Regular /FontDescriptor 1461 0 R /W 1460 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1474 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /QGDJTQ+LMRoman7-Regular /FontDescriptor 1470 0 R /W 1469 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1466 0 obj
+1475 0 obj
[ 28 [ 481 ] 42 [ 639 444 ] 50 [ 444 ] 54 [ 569 306 ] 59 [ 500 ] 66 [ 239 ] 72 [ 239 ] 77 [ 517 ] 81 [ 500 ] 84 [ 517 ] 96 [ 342 ] 98 [ 383 ] 105 [ 361 500 ] 109 [ 517 ] 116 [ 461 ] ]
endobj
-1468 0 obj
+1477 0 obj
<< /Filter /FlateDecode /Length 23 >>
stream
xc```0PPh`X
endstream
endobj
-1469 0 obj
+1478 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 1832 >>
stream
xuU}PSW$<[ =VowX%
@@ -6640,10 +6663,10 @@ xuU}PSW$<[ =VowX%
XGƒU\q5,/K+8 'Zݩt]pM\{
endstream
endobj
-1467 0 obj
-<< /Type /FontDescriptor /FontName /SVBQKK+LMSans10-Regular /Flags 4 /FontBBox [ -420 -309 1431 1154 ] /Ascent 1154 /CapHeight 694 /Descent -309 /ItalicAngle 0 /StemV 93 /XHeight 444 /FontFile3 1469 0 R /CIDSet 1468 0 R >>
+1476 0 obj
+<< /Type /FontDescriptor /FontName /SVBQKK+LMSans10-Regular /Flags 4 /FontBBox [ -420 -309 1431 1154 ] /Ascent 1154 /CapHeight 694 /Descent -309 /ItalicAngle 0 /StemV 93 /XHeight 444 /FontFile3 1478 0 R /CIDSet 1477 0 R >>
endobj
-1470 0 obj
+1479 0 obj
<< /Filter /FlateDecode /Length 447 >>
stream
x}Ao0$zHJ
@@ -6653,21 +6676,21 @@ E*HQ۠jXKĎ_ۓRU)/yl&?^A[op ]FF=#
endstream
endobj
799 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /SVBQKK+LMSans10-Regular /DescendantFonts [ 1471 0 R ] /ToUnicode 1470 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /SVBQKK+LMSans10-Regular /DescendantFonts [ 1480 0 R ] /ToUnicode 1479 0 R >>
endobj
-1471 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /SVBQKK+LMSans10-Regular /FontDescriptor 1467 0 R /W 1466 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1480 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /SVBQKK+LMSans10-Regular /FontDescriptor 1476 0 R /W 1475 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1472 0 obj
+1481 0 obj
[ 28 [ 525 ] 34 [ 525 ] 42 [ 525 ] 46 [ 525 ] 49 [ 525 525 ] 54 [ 525 ] 58 [ 525 525 ] 65 [ 525 ] 69 [ 525 ] 71 [ 525 ] 74 [ 525 525 525 525 ] 80 [ 525 ] 83 [ 525 ] 90 [ 525 ] 95 [ 525 525 525 ] 104 [ 525 525 ] 108 [ 525 ] 115 [ 525 525 ] ]
endobj
-1474 0 obj
+1483 0 obj
<< /Filter /FlateDecode /Length 23 >>
stream
xc``PPJ2px
endstream
endobj
-1475 0 obj
+1484 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 3424 >>
stream
xڍX XWڞ3 %JedVxw낥UAB07 2!!^zNn}V+v{n?>Los}"BC)D2juq+'ũ YٺS&Tng%kDW_sHJ%F`$lIQṲ^p/=$G#?0W31+ t%FQSK +!-|=eʌ<M4bڔ)%^g+D+'oTj3٩ъh
@@ -6690,10 +6713,10 @@ aPeկ`
k|?죘'0IQ"gmBדA2J Vgߥ:EX*MdKA{%^ĺxlzF bRXpq[o'"]呉4="'zJ%ȋIJN=ЗtK^8"wFx}Kյb
endstream
endobj
-1473 0 obj
-<< /Type /FontDescriptor /FontName /VLFCMR+LMMonoSlant10-Regular /Flags 4 /FontBBox [ -477 -316 786 1016 ] /Ascent 1016 /CapHeight 611 /Descent -316 /ItalicAngle -10 /StemV 175 /XHeight 431 /FontFile3 1475 0 R /CIDSet 1474 0 R >>
+1482 0 obj
+<< /Type /FontDescriptor /FontName /VLFCMR+LMMonoSlant10-Regular /Flags 4 /FontBBox [ -477 -316 786 1016 ] /Ascent 1016 /CapHeight 611 /Descent -316 /ItalicAngle -10 /StemV 175 /XHeight 431 /FontFile3 1484 0 R /CIDSet 1483 0 R >>
endobj
-1476 0 obj
+1485 0 obj
<< /Filter /FlateDecode /Length 486 >>
stream
xڍQk@+>!uME5*-* n$gB̙3}"ԑ#g;jTK
@@ -6703,30 +6726,30 @@ xڍQk@+>!uME5*-* n$gB̙3}"ԑ#g;jTK
endstream
endobj
798 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /VLFCMR+LMMonoSlant10-Regular /DescendantFonts [ 1477 0 R ] /ToUnicode 1476 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /VLFCMR+LMMonoSlant10-Regular /DescendantFonts [ 1486 0 R ] /ToUnicode 1485 0 R >>
endobj
-1477 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /VLFCMR+LMMonoSlant10-Regular /FontDescriptor 1473 0 R /W 1472 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1486 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /VLFCMR+LMMonoSlant10-Regular /FontDescriptor 1482 0 R /W 1481 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1478 0 obj
+1487 0 obj
[446.4 446.4 0 0 0 0 0 0 0 569.4 569.4 569.4 569.4 569.4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 323.4 0 0 0 0 631 0 0 0 0 452.6 ]
endobj
-1479 0 obj
+1488 0 obj
[777.8 277.8 0 500 0 0 777.8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 388.9 388.9 277.8 0 0 0 0 0 833.3 ]
endobj
-1480 0 obj
+1489 0 obj
[555.6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 277.8 0 0 0 0 777.8 0 388.9 388.9 0 777.8 0 0 0 0 500 500 500 500 500 500 500 500 500 500 277.8 0 0 777.8 0 472.2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 500 555.6 444.4 555.6 444.4 305.6 500 0 277.8 0 0 277.8 833.3 555.6 500 555.6 0 391.7 394.4 388.9 555.6 0 0 527.8 ]
endobj
-1481 0 obj
+1490 0 obj
[ 27 [ 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 ] 155 [ 525 ] 275 [ 525 ] ]
endobj
-1483 0 obj
+1492 0 obj
<< /Filter /FlateDecode /Length 23 >>
stream
xc``
endstream
endobj
-1484 0 obj
+1493 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 8419 >>
stream
xڵzy@WD2F1c޺׭
@@ -6762,10 +6785,10 @@ Pۦ#t
W5E
endstream
endobj
-1482 0 obj
-<< /Type /FontDescriptor /FontName /DCBFXU+LMMono10-Regular /Flags 4 /FontBBox [ -451 -316 731 1016 ] /Ascent 1016 /CapHeight 611 /Descent -316 /ItalicAngle 0 /StemV 175 /XHeight 431 /FontFile3 1484 0 R /CIDSet 1483 0 R >>
+1491 0 obj
+<< /Type /FontDescriptor /FontName /DCBFXU+LMMono10-Regular /Flags 4 /FontBBox [ -451 -316 731 1016 ] /Ascent 1016 /CapHeight 611 /Descent -316 /ItalicAngle 0 /StemV 175 /XHeight 431 /FontFile3 1493 0 R /CIDSet 1492 0 R >>
endobj
-1485 0 obj
+1494 0 obj
<< /Filter /FlateDecode /Length 753 >>
stream
x}Kk@FE Y(48CC NK4v$$y|S(M 9ǽշMP.xu]}jsMtuUs+.ݽxi|zq=_/U*?
@@ -6774,21 +6797,21 @@ wI3/?S8ͽNjl#XWuįn:l8VDG"lӵ]YW"My} h,
endstream
endobj
774 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /DCBFXU+LMMono10-Regular /DescendantFonts [ 1486 0 R ] /ToUnicode 1485 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /DCBFXU+LMMono10-Regular /DescendantFonts [ 1495 0 R ] /ToUnicode 1494 0 R >>
endobj
-1486 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /DCBFXU+LMMono10-Regular /FontDescriptor 1482 0 R /W 1481 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1495 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /DCBFXU+LMMono10-Regular /FontDescriptor 1491 0 R /W 1490 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1487 0 obj
+1496 0 obj
[ 27 [ 750 500 ] 34 [ 708 556 ] 42 [ 722 444 ] 46 [ 764 556 ] 49 [ 681 444 500 ] 54 [ 653 306 500 500 785 500 ] 62 [ 750 556 333 361 278 ] 69 [ 778 528 625 278 ] 74 [ 917 833 750 556 500 ] 80 [ 778 500 500 681 556 389 389 ] 88 [ 278 ] 90 [ 778 528 ] 95 [ 736 392 556 394 ] 100 [ 500 500 ] 104 [ 722 389 500 500 750 556 ] 111 [ 750 528 1028 722 750 528 750 528 ] 120 [ 444 500 ] 125 [ 556 556 ] 317 [ 500 ] ]
endobj
-1489 0 obj
+1498 0 obj
<< /Filter /FlateDecode /Length 29 >>
stream
xc``00.|߿o;ƀ
endstream
endobj
-1490 0 obj
+1499 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 8142 >>
stream
xڝz XS x1^lYkg,2O2L$!a!L:UKն޶Mx|gg'{wwի%<\b#¼ׇzL( XsvNPK;Жw'mյJW(Jph
@@ -6821,10 +6844,10 @@ v9Q:_ vĠ*:,
HdnFcIps qJ)m11n-g"ODN,$x<NG2@|3܄l
endstream
endobj
-1488 0 obj
-<< /Type /FontDescriptor /FontName /UGLMJS+LMRomanSlant10-Regular /Flags 4 /FontBBox [ -457 -290 1446 1127 ] /Ascent 1127 /CapHeight 683 /Descent -290 /ItalicAngle -10 /StemV 93 /XHeight 431 /FontFile3 1490 0 R /CIDSet 1489 0 R >>
+1497 0 obj
+<< /Type /FontDescriptor /FontName /UGLMJS+LMRomanSlant10-Regular /Flags 4 /FontBBox [ -457 -290 1446 1127 ] /Ascent 1127 /CapHeight 683 /Descent -290 /ItalicAngle -10 /StemV 93 /XHeight 431 /FontFile3 1499 0 R /CIDSet 1498 0 R >>
endobj
-1491 0 obj
+1500 0 obj
<< /Filter /FlateDecode /Length 642 >>
stream
xڍKk0FE!]SjKy  ul%cHdc;}i e 9WGW.û0īcWpXż)m'+]xr1+S6ye']m>R\1zӿßÇP0Czw]oc']eS]_7VWQ S͚[s-lkSu NDU<7x}}XmL&bl+Н
@@ -6832,21 +6855,21 @@ xڍKk0FE!]SjKy  ul%cHdc;}i e 9WGW.û0īcWp
endstream
endobj
687 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /UGLMJS+LMRomanSlant10-Regular /DescendantFonts [ 1492 0 R ] /ToUnicode 1491 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /UGLMJS+LMRomanSlant10-Regular /DescendantFonts [ 1501 0 R ] /ToUnicode 1500 0 R >>
endobj
-1492 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /UGLMJS+LMRomanSlant10-Regular /FontDescriptor 1488 0 R /W 1487 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1501 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /UGLMJS+LMRomanSlant10-Regular /FontDescriptor 1497 0 R /W 1496 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1493 0 obj
+1502 0 obj
[ 27 [ 525 525 ] 34 [ 525 525 525 ] 42 [ 525 525 ] 46 [ 525 525 ] 49 [ 525 525 ] 54 [ 525 525 ] 58 [ 525 525 ] 62 [ 525 525 ] 65 [ 525 525 525 525 525 525 525 525 ] 74 [ 525 525 525 525 ] 80 [ 525 525 ] 83 [ 525 525 ] 90 [ 525 525 ] 95 [ 525 525 525 525 ] 104 [ 525 525 ] 108 [ 525 525 ] 111 [ 525 525 525 525 525 525 ] 118 [ 525 525 525 ] ]
endobj
-1495 0 obj
+1504 0 obj
<< /Filter /FlateDecode /Length 24 >>
stream
xc``0N6s
endstream
endobj
-1496 0 obj
+1505 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 5120 >>
stream
xڕYy\ڞ 30Fo3홴V-"Zi֭պ  &HX.I B6A\pm]nkm[L{~ߙ~ g>ۛcn\~WW\RVhM~[o-$ &_=Gp 8űøf_zwXk !(~{ S/⿞=;˄Ћc_o:-0(hZ%Jϔ(Y& U%ib%RedYded* _LP)%a2T)QEJ6I4x$*^L Gk$IX )dR,BKrd$UJdEtLI&OH42DժgMM
@@ -6875,32 +6898,32 @@ U&x-bs|
!=Jm= fs8A&CE9F‰dUDSؒ;dddC?`x5VAM$_Q%QK?_@${ɺ/t\0
endstream
endobj
-1494 0 obj
-<< /Type /FontDescriptor /FontName /SWTUXA+LMMonoLt10-Bold /Flags 4 /FontBBox [ -454 -308 734 1039 ] /Ascent 1039 /CapHeight 611 /Descent -308 /ItalicAngle 0 /StemV 175 /XHeight 431 /FontFile3 1496 0 R /CIDSet 1495 0 R >>
+1503 0 obj
+<< /Type /FontDescriptor /FontName /SWTUXA+LMMonoLt10-Bold /Flags 4 /FontBBox [ -454 -308 734 1039 ] /Ascent 1039 /CapHeight 611 /Descent -308 /ItalicAngle 0 /StemV 175 /XHeight 431 /FontFile3 1505 0 R /CIDSet 1504 0 R >>
endobj
-1497 0 obj
+1506 0 obj
<< /Filter /FlateDecode /Length 574 >>
stream
x}K0YdpB#4/ -ĆF;J‚_fF"q}#&*7KSx`aYYkU쵱Fwl8_/֦\ڔ}>V3VǛ۟%<ٓ_ os"-/ݴ5,眻?FٗF#JQ >(Iʎ(g'xsm;}^&6zsb5א]4zin*sd)ͥOڧxTLywlk_+VM\֚[ZzWfg:MVSDڨ/:ǪGRgۈ,)4Ј@b"r ž9ZZAh($4" #" eD~D/P_N$@,'Bf:lFDy.@'z-A h @:'B.$D$B'AA`b9"P\F&ID~$?"$Q}yIt^`Fyi7>pSqKӸsp9-j[U$Tg
endstream
endobj
640 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /SWTUXA+LMMonoLt10-Bold /DescendantFonts [ 1498 0 R ] /ToUnicode 1497 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /SWTUXA+LMMonoLt10-Bold /DescendantFonts [ 1507 0 R ] /ToUnicode 1506 0 R >>
endobj
-1498 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /SWTUXA+LMMonoLt10-Bold /FontDescriptor 1494 0 R /W 1493 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1507 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /SWTUXA+LMMonoLt10-Bold /FontDescriptor 1503 0 R /W 1502 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1499 0 obj
+1508 0 obj
[ 27 [ 750 500 ] 34 [ 708 556 500 278 500 500 278 278 722 444 278 278 764 556 ] 49 [ 681 444 500 778 278 653 306 500 500 785 500 ] 62 [ 750 556 333 361 278 514 306 778 528 625 278 ] 74 [ 917 833 750 556 500 ] 80 [ 778 500 500 681 556 389 389 ] 88 [ 278 778 778 528 ] 95 [ 736 392 556 394 278 500 500 500 ] 104 [ 722 389 500 500 750 556 ] 111 [ 750 528 1028 722 750 528 750 528 611 444 500 583 833 ] 125 [ 556 556 ] 199 [ 778 ] 251 [ 444 ] 280 [ 670 ] 284 [ 500 ] 499 [ 472 472 278 278 ] ]
endobj
-1501 0 obj
+1510 0 obj
<< /Filter /FlateDecode /Length 37 >>
stream
xc``_
!
endstream
endobj
-1502 0 obj
+1511 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 8649 >>
stream
xڵzxG
@@ -6937,10 +6960,10 @@ K@`cyrڭ2vo}}ZC} P2E,΍/.(x&$Aj! >),Е _Ujj,uEYV|
endstream
endobj
-1500 0 obj
-<< /Type /FontDescriptor /FontName /XEVVKE+LMRoman10-Regular /Flags 4 /FontBBox [ -430 -290 1417 1127 ] /Ascent 1127 /CapHeight 683 /Descent -290 /ItalicAngle 0 /StemV 93 /XHeight 431 /FontFile3 1502 0 R /CIDSet 1501 0 R >>
+1509 0 obj
+<< /Type /FontDescriptor /FontName /XEVVKE+LMRoman10-Regular /Flags 4 /FontBBox [ -430 -290 1417 1127 ] /Ascent 1127 /CapHeight 683 /Descent -290 /ItalicAngle 0 /StemV 93 /XHeight 431 /FontFile3 1511 0 R /CIDSet 1510 0 R >>
endobj
-1503 0 obj
+1512 0 obj
<< /Filter /FlateDecode /Length 750 >>
stream
xڅ_o0)J%T Hh+M 
@@ -6952,21 +6975,21 @@ xڅ_o0)J%T Hh+M 
endstream
endobj
639 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /XEVVKE+LMRoman10-Regular /DescendantFonts [ 1504 0 R ] /ToUnicode 1503 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /XEVVKE+LMRoman10-Regular /DescendantFonts [ 1513 0 R ] /ToUnicode 1512 0 R >>
endobj
-1504 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /XEVVKE+LMRoman10-Regular /FontDescriptor 1500 0 R /W 1499 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1513 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /XEVVKE+LMRoman10-Regular /FontDescriptor 1509 0 R /W 1508 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1505 0 obj
+1514 0 obj
[ 27 [ 869 559 ] 35 [ 639 ] 42 [ 831 511 ] 46 [ 882 639 ] 49 [ 756 527 575 ] 54 [ 724 351 575 575 ] 59 [ 575 ] 63 [ 639 ] 65 [ 436 319 ] 70 [ 607 692 319 ] 74 [ 1092 958 900 639 575 ] 80 [ 864 575 575 786 639 447 447 ] 90 [ 864 607 ] 95 [ 863 474 639 454 ] 100 [ 575 575 ] 104 [ 800 447 575 575 885 639 ] 112 [ 607 ] 114 [ 831 ] 116 [ 607 ] 118 [ 607 ] 121 [ 575 ] 284 [ 575 ] ]
endobj
-1507 0 obj
+1516 0 obj
<< /Filter /FlateDecode /Length 28 >>
stream
xc``0.?0
endstream
endobj
-1508 0 obj
+1517 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 5745 >>
stream
x}YXڞw 2,Y,c"쨨Hݳ,)"JUF-xcj4$\ hLafΞ~~+$ݜhyD87Y[LO<Dh,8q%\7mb K}{!2!}äC)J3,-Fnj1Pʎb'HIǺM6a:E9krЈxrX墱 n)"\!0&e&W2.&0:F<VLU-1ʸhelpc
@@ -6991,10 +7014,10 @@ u&H^
#|&d?DP` 񦩃ȍ=7h+G"k0m hu
endstream
endobj
-1506 0 obj
-<< /Type /FontDescriptor /FontName /DJGMOY+LMRoman10-Bold /Flags 4 /FontBBox [ -486 -295 1607 1133 ] /Ascent 1133 /CapHeight 686 /Descent -295 /ItalicAngle 0 /StemV 106 /XHeight 444 /FontFile3 1508 0 R /CIDSet 1507 0 R >>
+1515 0 obj
+<< /Type /FontDescriptor /FontName /DJGMOY+LMRoman10-Bold /Flags 4 /FontBBox [ -486 -295 1607 1133 ] /Ascent 1133 /CapHeight 686 /Descent -295 /ItalicAngle 0 /StemV 106 /XHeight 444 /FontFile3 1517 0 R /CIDSet 1516 0 R >>
endobj
-1509 0 obj
+1518 0 obj
<< /Filter /FlateDecode /Length 591 >>
stream
x}[o0+H!ʼnVVJ
@@ -7004,21 +7027,21 @@ m%*>f_u7xlc&:fUq9۽ETt?]Ζ\6Is,W
endstream
endobj
638 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /DJGMOY+LMRoman10-Bold /DescendantFonts [ 1510 0 R ] /ToUnicode 1509 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /DJGMOY+LMRoman10-Bold /DescendantFonts [ 1519 0 R ] /ToUnicode 1518 0 R >>
endobj
-1510 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /DJGMOY+LMRoman10-Bold /FontDescriptor 1506 0 R /W 1505 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1519 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /DJGMOY+LMRoman10-Bold /FontDescriptor 1515 0 R /W 1514 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1511 0 obj
+1520 0 obj
[ 27 [ 850 547 ] 34 [ 800 625 ] 42 [ 813 500 313 313 862 625 ] 49 [ 738 513 563 ] 54 [ 707 344 563 563 884 563 ] 63 [ 625 ] 65 [ 419 313 ] 70 [ 594 676 313 ] 74 [ 1067 938 880 625 563 ] 80 [ 845 563 563 769 625 438 438 ] 88 [ 313 ] 90 [ 845 594 ] 95 [ 839 460 625 444 ] 100 [ 563 563 ] 104 [ 782 438 563 563 865 625 ] 111 [ 850 594 1162 813 ] 116 [ 594 ] 118 [ 594 ] 121 [ 563 ] 125 [ 625 ] ]
endobj
-1513 0 obj
+1522 0 obj
<< /Filter /FlateDecode /Length 25 >>
stream
xc``0/7_
endstream
endobj
-1514 0 obj
+1523 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 6279 >>
stream
xڕy \DH213Qu [qO}" dߑMEDV[^{[vV;ɜ9YD"5nۖ,nCX*t[ӗ{10V$pBiX\ۇc$SXR #?ٌ
@@ -7051,10 +7074,10 @@ O5,_'Kbp
/%XhqiqaWD")>X]CRBh5:;dsip{,NHJO*&#M g@J b<m6/1ITk&$o/D3(Q&#ꕤB=!qu}3B3Fr[f%d^k.i5!耝'U<C*qY^neVdD' #J02% AN);ME8 !YQP"BB})j6H]ZG4W@&\p{Zv+mt`v_+sMʳf鞙| dMpL1㞅'<Iڋ[QL33}8H]۹&a ~{b'5<XIc)Z`ۤ**pk6 F6CL ҔuwmlK s6COFG4J
endstream
endobj
-1512 0 obj
-<< /Type /FontDescriptor /FontName /BJFYAB+LMRoman12-Bold /Flags 4 /FontBBox [ -476 -289 1577 1137 ] /Ascent 1137 /CapHeight 686 /Descent -289 /ItalicAngle 0 /StemV 104 /XHeight 444 /FontFile3 1514 0 R /CIDSet 1513 0 R >>
+1521 0 obj
+<< /Type /FontDescriptor /FontName /BJFYAB+LMRoman12-Bold /Flags 4 /FontBBox [ -476 -289 1577 1137 ] /Ascent 1137 /CapHeight 686 /Descent -289 /ItalicAngle 0 /StemV 104 /XHeight 444 /FontFile3 1523 0 R /CIDSet 1522 0 R >>
endobj
-1515 0 obj
+1524 0 obj
<< /Filter /FlateDecode /Length 613 >>
stream
x}[0+sѱmdfz
@@ -7065,21 +7088,21 @@ u)h:@.0?2H" T ZH5i<H )֗b yK#K
endstream
endobj
637 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /BJFYAB+LMRoman12-Bold /DescendantFonts [ 1516 0 R ] /ToUnicode 1515 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /BJFYAB+LMRoman12-Bold /DescendantFonts [ 1525 0 R ] /ToUnicode 1524 0 R >>
endobj
-1516 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /BJFYAB+LMRoman12-Bold /FontDescriptor 1512 0 R /W 1511 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1525 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /BJFYAB+LMRoman12-Bold /FontDescriptor 1521 0 R /W 1520 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1517 0 obj
+1526 0 obj
[ 50 [ 435 ] 72 [ 230 ] 84 [ 502 ] 106 [ 490 ] 116 [ 448 ] ]
endobj
-1519 0 obj
+1528 0 obj
<< /Filter /FlateDecode /Length 19 >>
stream
xc`
endstream
endobj
-1520 0 obj
+1529 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 835 >>
stream
xuSmhSg~$mBjiڛ}isSX'j4*$-$FhǘusCu݆3(S }ؽz9L&
@@ -7091,10 +7114,10 @@ JM$p*M )<r
dOݟs?O}5cBݕooܗfگ'vQǑRR/^X#lz]u@`vPPif-BdoZ&[[F2ڐV4a! -h )_Oplm,kOW*: }\б vfO
endstream
endobj
-1518 0 obj
-<< /Type /FontDescriptor /FontName /QKURIC+LMSans12-Regular /Flags 4 /FontBBox [ -411 -308 1407 1154 ] /Ascent 1154 /CapHeight 694 /Descent -308 /ItalicAngle 0 /StemV 91 /XHeight 444 /FontFile3 1520 0 R /CIDSet 1519 0 R >>
+1527 0 obj
+<< /Type /FontDescriptor /FontName /QKURIC+LMSans12-Regular /Flags 4 /FontBBox [ -411 -308 1407 1154 ] /Ascent 1154 /CapHeight 694 /Descent -308 /ItalicAngle 0 /StemV 91 /XHeight 444 /FontFile3 1529 0 R /CIDSet 1528 0 R >>
endobj
-1521 0 obj
+1530 0 obj
<< /Filter /FlateDecode /Length 385 >>
stream
x}R]k0}ϯ{6~H ec֍6)i$
@@ -7102,21 +7125,21 @@ cғs͹'m=boAsUj^N2j-+S#o|;XhIQt8RrlT,]bρ
endstream
endobj
595 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /QKURIC+LMSans12-Regular /DescendantFonts [ 1522 0 R ] /ToUnicode 1521 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /QKURIC+LMSans12-Regular /DescendantFonts [ 1531 0 R ] /ToUnicode 1530 0 R >>
endobj
-1522 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /QKURIC+LMSans12-Regular /FontDescriptor 1518 0 R /W 1517 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1531 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /QKURIC+LMSans12-Regular /FontDescriptor 1527 0 R /W 1526 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1523 0 obj
+1532 0 obj
[ 28 [ 515 ] 35 [ 515 ] 43 [ 515 515 ] 55 [ 515 ] 59 [ 515 ] 63 [ 515 ] 66 [ 515 ] 68 [ 515 ] 71 [ 515 515 ] 75 [ 515 ] 77 [ 515 ] 81 [ 515 ] 84 [ 515 ] 88 [ 515 ] 96 [ 515 ] 98 [ 515 ] 102 [ 515 ] 105 [ 515 ] 109 [ 515 ] 112 [ 515 ] ]
endobj
-1525 0 obj
+1534 0 obj
<< /Filter /FlateDecode /Length 23 >>
stream
xc```ԜѰȥ
endstream
endobj
-1526 0 obj
+1535 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 2165 >>
stream
xڅV TWdB52z3@v
@@ -7134,10 +7157,10 @@ y+a
mQAeAt6~
endstream
endobj
-1524 0 obj
-<< /Type /FontDescriptor /FontName /EIMLXZ+LMMono12-Regular /Flags 4 /FontBBox [ -444 -311 715 1019 ] /Ascent 1019 /CapHeight 611 /Descent -311 /ItalicAngle 0 /StemV 172 /XHeight 431 /FontFile3 1526 0 R /CIDSet 1525 0 R >>
+1533 0 obj
+<< /Type /FontDescriptor /FontName /EIMLXZ+LMMono12-Regular /Flags 4 /FontBBox [ -444 -311 715 1019 ] /Ascent 1019 /CapHeight 611 /Descent -311 /ItalicAngle 0 /StemV 172 /XHeight 431 /FontFile3 1535 0 R /CIDSet 1534 0 R >>
endobj
-1527 0 obj
+1536 0 obj
<< /Filter /FlateDecode /Length 464 >>
stream
x}k0+B(f[m2MN{5c]ҟ;_m 䆒7`8nlЀݓWz2/edmŕAYG$n2{6O§F+ é6!u];ٟw!UrJ_07RbD.Ɣ$rfJ.x3"$G߼rsCS ٕeכO}D/FH2Zvh<EAs
@@ -7145,72 +7168,69 @@ x}k0+B(f[m2MN{5c]ҟ;_m 䆒7`8n
endstream
endobj
594 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /EIMLXZ+LMMono12-Regular /DescendantFonts [ 1528 0 R ] /ToUnicode 1527 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /EIMLXZ+LMMono12-Regular /DescendantFonts [ 1537 0 R ] /ToUnicode 1536 0 R >>
endobj
-1528 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /EIMLXZ+LMMono12-Regular /FontDescriptor 1524 0 R /W 1523 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1537 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /EIMLXZ+LMMono12-Regular /FontDescriptor 1533 0 R /W 1532 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1529 0 obj
-[ 27 [ 734 490 ] 33 [ 762 ] 35 [ 544 ] 43 [ 435 ] 45 [ 272 ] 47 [ 544 ] 50 [ 435 ] 54 [ 639 299 490 490 ] 59 [ 490 ] 63 [ 544 326 353 272 503 299 ] 70 [ 517 612 272 ] 75 [ 816 734 544 ] 81 [ 490 490 ] 84 [ 544 381 381 ] 88 [ 272 ] 96 [ 381 ] 98 [ 386 ] 101 [ 490 ] 104 [ 707 381 490 490 ] 109 [ 544 ] 111 [ 734 517 1006 707 734 ] 118 [ 517 ] 121 [ 490 ] ]
+1538 0 obj
+[ 27 [ 734 490 ] 33 [ 762 ] 35 [ 544 ] 43 [ 435 ] 45 [ 272 ] 47 [ 544 ] 50 [ 435 ] 55 [ 299 490 ] 58 [ 768 490 ] 63 [ 544 326 353 272 503 299 ] 70 [ 517 612 272 ] 75 [ 816 734 544 ] 81 [ 490 490 ] 84 [ 544 381 381 ] 88 [ 272 ] 96 [ 381 ] 98 [ 386 ] 101 [ 490 ] 104 [ 707 381 490 490 ] 109 [ 544 ] 111 [ 734 517 1006 707 734 ] 118 [ 517 ] 121 [ 490 ] ]
endobj
-1531 0 obj
+1540 0 obj
<< /Filter /FlateDecode /Length 24 >>
stream
-xc``U{N^Ò
+xc``U{N^Ò
endstream
endobj
-1532 0 obj
-<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 5207 >>
-stream
-xڭX TW.H e;Zeh4j-. Ԩ"H(tCwC]}oh+.%D#Q'Q$w /g݂d;/3^>}onK D2|7j&2P=s:UhLDVq0RxBx["N*(#/W1=2+${ $eok?-m]¥!!, KɓyiazS&)Wܭ1v+&)Wk n=Z
- QjB*eN)C(ݸIJ߰pҠVO*BS+c*RRzU.ըJ*N8QԩT0>j>&tF<"<&.]wr%/+C4ZeJ?65 `Z'!F#Qb"Ax3,b1X@,$^bb)M,#V>*b-% ?"TDN"v" -#bx)N~ybR~4JiPY
-W]enF~_,r~KtIU
-ꇊ 1uD8WB/¶0|V55GB^Sm̉US$f?sM-o;`C2UK̳qv|
-mR V
-Jᄒ*$N*`Z)4y#\q=eMt^fZ@^nǔx1hR@O Ñp Q!p8\DVόI"9A:z6\޹eU5y"?''7pOZ!!8`MԳAµJ.>ɘMX`K<*ax{C' T`
-HM|[,IRK7s=OdUYHQ/X e# ;#61~aM ܾ*]N ZZlels1i9 rn(8 NIS'~O*j5'1~~pwGN\% ]yBMl4`(䎆0FϹhA,@J)hR\m VDG9bK s9lV
-v+[{EC CnO+D6h8WRd@.nCH8ĉ#y"dզi}ٞꚲ->Ar<g_ֿ5)9YDp'I 6Y (q$b~0T[P[+8jmUz
-# 'kN36'qU
-lg1
-ܳA1h`[[s™;WD$rVW9[~gu`|>[sp5 .fQ tC_BX,5pn(e&_ cbpV-- l:N$o^{ ;>Ԉ7w .]/S0Ceq?W309վSg
-/!^xh9tؘhgL]wR;?
-Is8T'-Z/fv8~aVR(@zn/ülSN Y|u?=c@5~ O܅VjztkeJB2Ɗ0M^\yr_PcKڄxݖ7>3G6q?<ԉeK0c" h1@u#/ɱ̪LIC4NA?95Yn-JCbȄXuqŹn:y&'Xq\m;gڀ( k0_#Qȋ&Cd>ۈkC=1QIx]"/ @[x:%0s/t$u_D.F}Z .x/ƒwпjNs0U8ry_b-W,k)5e}%h`|
-$z!ʊS1 \O+[H9K$y4, Ӛ۲mpɧ;G;-),5H]h
-p*\#Eb7Awv~" nlS1!\q-٣ ʚ֏ۀOIh`m\
-T3Sd(ݦь> s=d9i*Y d
- t*,v[}Lf+w,"G_СhybWlݧdbI 9han}2$]b_%$:dRd[B9;z8 ᆓp>~[cW7i4E]Q͖9a )pzBg]MfLFKXc.Yh6lEsp`SRPݒ]|Ƴv_!]i$Ч]QҪ zmdm\u\).km}g}65MQ ;f=2X+)ѿWjY$nS+y6`fL{2huurYeeq=^0zV
-0 )EǮlE.9J>WJr&Eش\{Y)iq1lmDDn
-] Z¸C'R'k .{c4햩˷aMV-&`f1C# 3`VUsekK(g~>{6 \b_5G%wܥ' ppy9Ͷ,7Dssr/I8
-$ǔՖgUgf(
-5@U߱P)Tq*v64a'y*KKi|Hx)[6ݮ`"0_}vG=Uآw<dN9,oLEq$=Ó q Xp|(9e<8<E]i桏ǫ1N8Im`c|I/u`7x\ƒp$Fbb։&] XCH僗npN <ոqӏ)n~Cߞuq؅`Ҫ [`?xqq\d@9B]4&k*b w-K&?xm235G)F; \2[E'<.RR*^b'%|۟|}<yJ.VXsBouX*y}Wj\Wp9 _vt~o1UUWz!ΡI q*36/\CQL'HH|\l\$}/S"H4uy3/^0x /ɡ*ڸ9t)?
-n NǞ)0.;59;+ɷgٹj3Y$cr/NٽDڽ:Ф.xp[y ipdDsGź:ٔ-F *3grtIUYs/sZҗ[U\\dI9EGvaMm_m9]hgX@FYNjD''[EyW=`])T[̽E0w3E\[babEv5I1% Дo]ތ3?^|b1zSȄ(v&"p)+g҄pȹ G/qp0Ovdq 9 7wB;{A^B8O*Ds5/f^םe>{oٞ]) cv8.}|U1{LEtWĿ 똷 /V ^PSW%gWFx
+1541 0 obj
+<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 5169 >>
+stream
+xڭX TWm
+P*SfqePqA6@7t74tf+*h2FQQKbfndmyesTߪ~}EСH$cr6+#g˃T/W w+L wD;DĂl(rڿ QFwBT6[]ۗ޷^BD'X97Ys]qy֬93 d+e”ZuXO([((ۨ⫡)J_$S<^h\ё꩎2PLTJ.Seъ@J \=xV+[h\fΔr,D\䤉vTS 7me-5YR% kBՎcQ _ +48b1xN$gC#b!XJ,#+b%p% 7bp'<Ob+E!B=DA(H"Pj"/GѺ%C$ΐmC Y)hg I~d6uڇG qfvoF0j(èщ|k[8xy) A x ^ZQX\&pHg#)0$0 ^OQ&Ii`x/SUH
+dПVW
+LjQs}_,L#i@b'ٕўƅp\3pA_]_[c)ᯭ: s|91?L8 s$Z={EХR eH/Ǵ*b"-M6+
+)0u=@' QA6"9aVb0D6Ԩhi?x gL@_ĔJ&n4$;KZ`Z4
+s,5Wpa1y ֖m#*y/UTб:t:;;10MZ-0l_[R,gfq]TQO)ͪ<km(8yK^<fcq)*< ?
+}UCjkA03f`y˒3tItBAbY^EKid1-oxKSAC]Iz&i8H~i?Zْ|p%`.g?ڂ7! [B*d4jm
+Pf^zVUp}vkГ'H|%^Y{ KTŰnvbO| wX>\/8 䑬l5ocP$$QsjvVrH铗
+S_p;5=
+\+Y)C:{qITB D%'!g5^>p8Pt}+-Pr%H4Z|Oz$-̂=@SR<K9M PeU|zgWԹ.?(̾~o8lxuppT!nK+d]cz<*/R 4,7쥵1qE2$B I}`\+OF^b%1I t\.:40LpC̗FLNޏ(̵1dۄBnT7pÅ*`38+EW#0s? #HZkp9M?l`oS^j7f#m*gɆz>ȼA?ue0VܷfQ[Qn(O_KB8Ř͠
+cu o#{c;sp 5d^*0'
+tq \&ߔm$N=eO?쓫Z6HtO͘h;/C8t`KC(ovrW ]֡"O/}B`5/kf> lnA=v*}u8'Z83djHYsԟ+`}6VC/8:<t>U7,FɎ9nzI'XVo2X4upEEjjU6Zd$I9aien: "]c^'hEϺk!rv-pSp>L g )љ2/pQs qN"Kbc30?=phBt'1:C.ȗF["K&l.wY{H@;ٽb!mTZ*.\)޵A˸s5MMNm(ѿGf4JPlWy&`fS3GҊ<gAa tC'` 1RҮ=S9kl#rV|J:8\sj ҤFu9a # pNO*im+G+i_9kwf3*&@g2I8MNW3\U9k2[.P|gIIʿjރGK<w|4ye2@8 ҒaplLIѥu9ٹ!)Dn÷,u}=y
+r 2^`wݩ
+`".Tp)7;-Ͽ;eA`/mO8"vJZkԒj\F`*'CAT6@
+r|093e<XKIJ@MSwt5PM3h=H_+xRCp"&bBm3j} +.ߴ&Gv4EpcX]c'M<$soN/g]5}gio\R̲UM%`Գ~}Sc[\O>hK]K: *ؓ6߶v ٱsA͟%#x4$>RJ;?Z,%W4|pXVꑼ6%<`PZ[5>2.{NCrWm]:K6Z)E[Nv3ߞ[4rڍb$jAD_`.~@oΕ{S,
+2‹8z=0YcN69U<yQkA5
+ m}teϴ.4p2 Ni̠V{W8`]#lQ6̽M9aB+.G 8+11 z1% ДG}34 t?g"0dfc+
+-/Y>(
endstream
endobj
-1530 0 obj
-<< /Type /FontDescriptor /FontName /QVISVK+LMRoman12-Regular /Flags 4 /FontBBox [ -422 -280 1394 1127 ] /Ascent 1127 /CapHeight 683 /Descent -280 /ItalicAngle 0 /StemV 91 /XHeight 431 /FontFile3 1532 0 R /CIDSet 1531 0 R >>
+1539 0 obj
+<< /Type /FontDescriptor /FontName /FTJAXF+LMRoman12-Regular /Flags 4 /FontBBox [ -422 -280 1394 1127 ] /Ascent 1127 /CapHeight 683 /Descent -280 /ItalicAngle 0 /StemV 91 /XHeight 431 /FontFile3 1541 0 R /CIDSet 1540 0 R >>
endobj
-1533 0 obj
-<< /Filter /FlateDecode /Length 569 >>
+1542 0 obj
+<< /Filter /FlateDecode /Length 564 >>
stream
-xڅ[0+s1=%3< sXD`ӒM3찂wz7op! {Jvk]pRdnʡRH1F'r/{2]m[Uw&y 拉T3!Ӄ<nᏗ]S*Ý BԖjIL|&Qj)g%VMm삙Jfsjj=ϲ6neU&L^ߜ`ԕW"M~h۫ y6OE-:&Z/,:ZIb$][R"d1<J:&a1T.m-M#J(wr@q% Աv@RGI @ =#Q3AA~ƒbU?tO!]R<A[,F)1O^g` Z- 0,(3Lѓa[s`q ]PA?2}6J|Oq ^gtO/épΰFq4F [qqAksku7މJɏ6ro0KYz
+xڅKk0E ];%!AnKb"~$a=<vW=0d/vԕ 7ef۶)S$or nSpgwBNYNZK>S2?8X}۔*ýRԖjIL|&/U$?ش]^(YLϵګ%'=b"j~Ƹe~N`$ 3}sūRB_4I
+"4s"6>$ Nh=ܾx$G\B]YI] ea>y +NQu:Mt)T.mM#J(wqAq% uo@b$1PG0/ |G)ż-<Auy5RByp)}awb $az?؈AK c6=38%u  \':l!}g{~ w%Z<k2la Zytϟ}t98*ը9'`OAyV{L%KEOW
endstream
endobj
593 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /QVISVK+LMRoman12-Regular /DescendantFonts [ 1534 0 R ] /ToUnicode 1533 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /FTJAXF+LMRoman12-Regular /DescendantFonts [ 1543 0 R ] /ToUnicode 1542 0 R >>
endobj
-1534 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /QVISVK+LMRoman12-Regular /FontDescriptor 1530 0 R /W 1529 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1543 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /FTJAXF+LMRoman12-Regular /FontDescriptor 1539 0 R /W 1538 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1535 0 obj
+1544 0 obj
[ 28 [ 451 ] 43 [ 418 ] 50 [ 418 ] 54 [ 535 287 ] 59 [ 470 ] 65 [ 259 223 ] 71 [ 509 223 ] 75 [ 745 ] 77 [ 484 ] 81 [ 470 ] 83 [ 600 ] 96 [ 320 ] 104 [ 641 340 ] 107 [ 470 ] 109 [ 484 ] 112 [ 432 ] 115 [ 625 ] ]
endobj
-1537 0 obj
+1546 0 obj
<< /Filter /FlateDecode /Length 23 >>
stream
xc```PHpe
endstream
endobj
-1538 0 obj
+1547 0 obj
<< /Subtype /CIDFontType0C /Filter /FlateDecode /Length 1752 >>
stream
xumPwniPbrf-(RED ]1hH@H lZ›u*(TJQZ[CyWSps?3=Ϟg@86])1id}),0USlZbg؍ͮ 8KXeQĿ&,)k=^>fo}5E;70(z0[m~Ɩp^ 6Y 96&$8xfoFdڬ|ݚo`&V2IJ&l&lb2Zc6cf4טbber,B JFk2v%QuLI0\=G2lL!Ko@LVd+Q-9Ak$k7/pWJ&01>:&yOVjcFi F8l)tL}Nolecl+mâ0a Xۃe`
@@ -7223,10 +7243,10 @@ XpmhXɷW>CQqɩ/ۤ'{O?P@ip-9y|6}4
UD>wFǩ昱Nzq=a ?ݑ I]%a#wt^輰|O~EI/ҟ m]ٹwB҈P<-R[v2IJ:HIEmHtTE|<U:۹lDʪdJ)I.;nl?j[6BTC< 2A$F(
endstream
endobj
-1536 0 obj
-<< /Type /FontDescriptor /FontName /YBCNUY+LMSans17-Regular /Flags 4 /FontBBox [ -395 -305 1355 1159 ] /Ascent 1159 /CapHeight 694 /Descent -305 /ItalicAngle 0 /StemV 87 /XHeight 431 /FontFile3 1538 0 R /CIDSet 1537 0 R >>
+1545 0 obj
+<< /Type /FontDescriptor /FontName /YBCNUY+LMSans17-Regular /Flags 4 /FontBBox [ -395 -305 1355 1159 ] /Ascent 1159 /CapHeight 694 /Descent -305 /ItalicAngle 0 /StemV 87 /XHeight 431 /FontFile3 1547 0 R /CIDSet 1546 0 R >>
endobj
-1539 0 obj
+1548 0 obj
<< /Filter /FlateDecode /Length 459 >>
stream
x}n0<g)]P $V҄44JZMľX
@@ -7237,12 +7257,12 @@ wˎڞϝef[r{gwMH<}lݱ~!K/
endstream
endobj
592 0 obj
-<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /YBCNUY+LMSans17-Regular /DescendantFonts [ 1540 0 R ] /ToUnicode 1539 0 R >>
+<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /YBCNUY+LMSans17-Regular /DescendantFonts [ 1549 0 R ] /ToUnicode 1548 0 R >>
endobj
-1540 0 obj
-<< /Type /Font /Subtype /CIDFontType0 /BaseFont /YBCNUY+LMSans17-Regular /FontDescriptor 1536 0 R /W 1535 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
+1549 0 obj
+<< /Type /Font /Subtype /CIDFontType0 /BaseFont /YBCNUY+LMSans17-Regular /FontDescriptor 1545 0 R /W 1544 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >>
endobj
-1542 0 obj
+1551 0 obj
<< /Length1 1733 /Length2 9941 /Length3 0 /Filter /FlateDecode /Length 11060 >>
stream
xڍTo6tRݡ ,KtwwwtJHw+R};{\3=3Y4Ya`.
@@ -7284,10 +7304,10 @@ WSÎ3j*_$jn~_U9­zZo9Y}.''J CuY/ɗUz
M+1i)jX<Gt69شhDf׊ƍ+54,aǹ<78Z+Axʼn&{3TIgrNbAg:
endstream
endobj
-1541 0 obj
-<< /Type /FontDescriptor /FontName /REYKIW+CMMI10 /Flags 4 /FontBBox [ -32 -250 1048 750 ] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 72 /XHeight 431 /CharSet( /X /Y /a /b /c /comma /d /epsilon /greater /i /less /m /n /period /pi /r /slash /t /x /y /z) /FontFile 1542 0 R >>
+1550 0 obj
+<< /Type /FontDescriptor /FontName /REYKIW+CMMI10 /Flags 4 /FontBBox [ -32 -250 1048 750 ] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 72 /XHeight 431 /CharSet( /X /Y /a /b /c /comma /d /epsilon /greater /i /less /m /n /period /pi /r /slash /t /x /y /z) /FontFile 1551 0 R >>
endobj
-1544 0 obj
+1553 0 obj
<< /Length1 1456 /Length2 6674 /Length3 0 /Filter /FlateDecode /Length 7664 >>
stream
xڍtTk6)"]21CHw
@@ -7317,10 +7337,10 @@ FɉT-\e>6J,f4_֣R1NNUԧZZABt35UKJ
?l.";g4ڭ0۬EG>Y>z%[pYrzP.I{A@O3qԦLH|*jhA>Sh<etE̓M
endstream
endobj
-1543 0 obj
-<< /Type /FontDescriptor /FontName /ZVYJSD+CMMI7 /Flags 4 /FontBBox [ -1 -250 1171 750 ] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 81 /XHeight 431 /CharSet( /i /n /period /y) /FontFile 1544 0 R >>
+1552 0 obj
+<< /Type /FontDescriptor /FontName /ZVYJSD+CMMI7 /Flags 4 /FontBBox [ -1 -250 1171 750 ] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 81 /XHeight 431 /CharSet( /i /n /period /y) /FontFile 1553 0 R >>
endobj
-1546 0 obj
+1555 0 obj
<< /Length1 1983 /Length2 14698 /Length3 0 /Filter /FlateDecode /Length 15930 >>
stream
xڍTk gۘζm{ynd5ir56'<{?[}Wk<N'(IUELR FV&>GV
@@ -7392,10 +7412,10 @@ AL430ˏyk߄8}w Zpzia=zQhK:>'T*w ^a1CI1 :B
.t[D389i&l5[ \XnUL.-֜^ćcpTv_BJY,I\;~w¹q<R-mblk {K{ RA}6{6h=֙wK8A8+fB !3Xr#lv|(lh9m~q;gUo(ʢ1{aS}sZ3#FK20;?=Y!uy};fG5^u^"Rk dOOG,˳Zc_DAh{.酥`ɫzJCۈNu&t"kL
endstream
endobj
-1545 0 obj
-<< /Type /FontDescriptor /FontName /TSASKS+CMR10 /Flags 4 /FontBBox [ -40 -250 1009 750 ] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 69 /XHeight 431 /CharSet( /a /ampersand /b /c /colon /d /e /eight /equal /exclam /f /five /fl /four /g /i /l /m /n /nine /o /one /p /parenleft /parenright /plus /question /r /s /seven /six /t /three /two /u /x /zero) /FontFile 1546 0 R >>
+1554 0 obj
+<< /Type /FontDescriptor /FontName /TSASKS+CMR10 /Flags 4 /FontBBox [ -40 -250 1009 750 ] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 69 /XHeight 431 /CharSet( /a /ampersand /b /c /colon /d /e /eight /equal /exclam /f /five /fl /four /g /i /l /m /n /nine /o /one /p /parenleft /parenright /plus /question /r /s /seven /six /t /three /two /u /x /zero) /FontFile 1555 0 R >>
endobj
-1548 0 obj
+1557 0 obj
<< /Length1 1537 /Length2 7420 /Length3 0 /Filter /FlateDecode /Length 8440 >>
stream
xڍvT\.243 -5 1C H
@@ -7434,10 +7454,10 @@ yhҠ$jJH8b\<Dxԧ14E|=F7{l5Tw?A3:OJjc
s{cH 1:
endstream
endobj
-1547 0 obj
-<< /Type /FontDescriptor /FontName /XLNFQO+CMR7 /Flags 4 /FontBBox [ -27 -250 1122 750 ] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 79 /XHeight 431 /CharSet( /five /four /i /n /one /parenleft /parenright /s /three /two) /FontFile 1548 0 R >>
+1556 0 obj
+<< /Type /FontDescriptor /FontName /XLNFQO+CMR7 /Flags 4 /FontBBox [ -27 -250 1122 750 ] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 79 /XHeight 431 /CharSet( /five /four /i /n /one /parenleft /parenright /s /three /two) /FontFile 1557 0 R >>
endobj
-1550 0 obj
+1559 0 obj
<< /Length1 1588 /Length2 7008 /Length3 0 /Filter /FlateDecode /Length 8070 >>
stream
xڍxT6š@wH@H݊ShqZHqZܵXBҞ{{gfyf'+Lz
@@ -7469,10 +7489,10 @@ M iv*iKv]jsřyp{);5TK;6 CTX{% wg}hshWshq
?Ӹ''YʡOoG hÐ4g|t
endstream
endobj
-1549 0 obj
-<< /Type /FontDescriptor /FontName /EZAGZL+CMSY10 /Flags 4 /FontBBox [ -29 -960 1116 775 ] /Ascent 750 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 40 /XHeight 431 /CharSet( /angbracketleft /angbracketright /asteriskmath /bar /infinity /minus /periodcentered /plusminus /radical) /FontFile 1550 0 R >>
+1558 0 obj
+<< /Type /FontDescriptor /FontName /EZAGZL+CMSY10 /Flags 4 /FontBBox [ -29 -960 1116 775 ] /Ascent 750 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 40 /XHeight 431 /CharSet( /angbracketleft /angbracketright /asteriskmath /bar /infinity /minus /periodcentered /plusminus /radical) /FontFile 1559 0 R >>
endobj
-1552 0 obj
+1561 0 obj
<< /Length1 1416 /Length2 6133 /Length3 0 /Filter /FlateDecode /Length 7101 >>
stream
xڍtT[5(0 -H 
@@ -7513,10 +7533,10 @@ _ "CQdy)YO()nRTII)2]Q7BfCw;/+ , m<8l
H)dEhl)Kv=#F8dml<yΩ? Xoj[wxf&/l9-6h_ITBo_giC/EI&3lӻwz?N(Haqf\mc&pݲTDkdl
endstream
endobj
-1551 0 obj
-<< /Type /FontDescriptor /FontName /DEGAOD+CMSY7 /Flags 4 /FontBBox [ -15 -951 1251 782 ] /Ascent 750 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 49 /XHeight 431 /CharSet( /minus /openbullet) /FontFile 1552 0 R >>
+1560 0 obj
+<< /Type /FontDescriptor /FontName /DEGAOD+CMSY7 /Flags 4 /FontBBox [ -15 -951 1251 782 ] /Ascent 750 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 49 /XHeight 431 /CharSet( /minus /openbullet) /FontFile 1561 0 R >>
endobj
-1554 0 obj
+1563 0 obj
<< /Length1 1401 /Length2 5895 /Length3 0 /Filter /FlateDecode /Length 6849 >>
stream
xڍtTS6EABtHMzB^ҀPH""UDti M:~~Zߙgfgfcf!:4N ,RjC `$ AaЊ"8M #
@@ -7542,88 +7562,91 @@ l/:diAxmiQgwm*ΓC7ˋH<K !O ^v1|k?Ncpvt.:>jsMg}fh
A>Egi(  oJ*h!cVBԔL4i3$?hA2
endstream
endobj
-1553 0 obj
-<< /Type /FontDescriptor /FontName /DGBCZV+CMTT10 /Flags 4 /FontBBox [ -4 -233 537 696 ] /Ascent 611 /CapHeight 611 /Descent -222 /ItalicAngle 0 /StemV 69 /XHeight 431 /CharSet( /visiblespace) /FontFile 1554 0 R >>
+1562 0 obj
+<< /Type /FontDescriptor /FontName /DGBCZV+CMTT10 /Flags 4 /FontBBox [ -4 -233 537 696 ] /Ascent 611 /CapHeight 611 /Descent -222 /ItalicAngle 0 /StemV 69 /XHeight 431 /CharSet( /visiblespace) /FontFile 1563 0 R >>
endobj
935 0 obj
-<< /Type /Font /Subtype /Type1 /BaseFont /REYKIW+CMMI10 /FontDescriptor 1541 0 R /FirstChar 25 /LastChar 122 /Widths 1457 0 R >>
+<< /Type /Font /Subtype /Type1 /BaseFont /REYKIW+CMMI10 /FontDescriptor 1550 0 R /FirstChar 25 /LastChar 122 /Widths 1466 0 R >>
endobj
876 0 obj
-<< /Type /Font /Subtype /Type1 /BaseFont /ZVYJSD+CMMI7 /FontDescriptor 1543 0 R /FirstChar 58 /LastChar 121 /Widths 1458 0 R >>
+<< /Type /Font /Subtype /Type1 /BaseFont /ZVYJSD+CMMI7 /FontDescriptor 1552 0 R /FirstChar 58 /LastChar 121 /Widths 1467 0 R >>
endobj
775 0 obj
-<< /Type /Font /Subtype /Type1 /BaseFont /TSASKS+CMR10 /FontDescriptor 1545 0 R /FirstChar 13 /LastChar 120 /Widths 1480 0 R >>
+<< /Type /Font /Subtype /Type1 /BaseFont /TSASKS+CMR10 /FontDescriptor 1554 0 R /FirstChar 13 /LastChar 120 /Widths 1489 0 R >>
endobj
793 0 obj
-<< /Type /Font /Subtype /Type1 /BaseFont /XLNFQO+CMR7 /FontDescriptor 1547 0 R /FirstChar 40 /LastChar 115 /Widths 1478 0 R >>
+<< /Type /Font /Subtype /Type1 /BaseFont /XLNFQO+CMR7 /FontDescriptor 1556 0 R /FirstChar 40 /LastChar 115 /Widths 1487 0 R >>
endobj
792 0 obj
-<< /Type /Font /Subtype /Type1 /BaseFont /EZAGZL+CMSY10 /FontDescriptor 1549 0 R /FirstChar 0 /LastChar 112 /Widths 1479 0 R >>
+<< /Type /Font /Subtype /Type1 /BaseFont /EZAGZL+CMSY10 /FontDescriptor 1558 0 R /FirstChar 0 /LastChar 112 /Widths 1488 0 R >>
endobj
964 0 obj
-<< /Type /Font /Subtype /Type1 /BaseFont /DEGAOD+CMSY7 /FontDescriptor 1551 0 R /FirstChar 0 /LastChar 14 /Widths 1456 0 R >>
+<< /Type /Font /Subtype /Type1 /BaseFont /DEGAOD+CMSY7 /FontDescriptor 1560 0 R /FirstChar 0 /LastChar 14 /Widths 1465 0 R >>
endobj
834 0 obj
-<< /Type /Font /Subtype /Type1 /BaseFont /DGBCZV+CMTT10 /FontDescriptor 1553 0 R /FirstChar 32 /LastChar 32 /Widths 1459 0 R >>
+<< /Type /Font /Subtype /Type1 /BaseFont /DGBCZV+CMTT10 /FontDescriptor 1562 0 R /FirstChar 32 /LastChar 32 /Widths 1468 0 R >>
endobj
596 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 586 0 R 633 0 R 684 0 R 731 0 R 766 0 R 771 0 R 777 0 R 781 0 R 785 0 R 789 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 586 0 R 633 0 R 684 0 R 731 0 R 766 0 R 771 0 R 777 0 R 781 0 R 785 0 R 789 0 R ] >>
endobj
800 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 795 0 R 802 0 R 806 0 R 810 0 R 814 0 R 818 0 R 822 0 R 826 0 R 830 0 R 836 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 795 0 R 802 0 R 806 0 R 810 0 R 814 0 R 818 0 R 822 0 R 826 0 R 830 0 R 836 0 R ] >>
endobj
843 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 840 0 R 845 0 R 849 0 R 853 0 R 857 0 R 861 0 R 865 0 R 869 0 R 873 0 R 878 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 840 0 R 845 0 R 849 0 R 853 0 R 857 0 R 861 0 R 865 0 R 869 0 R 873 0 R 878 0 R ] >>
endobj
885 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 882 0 R 887 0 R 891 0 R 895 0 R 899 0 R 903 0 R 907 0 R 911 0 R 915 0 R 919 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 882 0 R 887 0 R 891 0 R 895 0 R 899 0 R 903 0 R 907 0 R 911 0 R 915 0 R 919 0 R ] >>
endobj
926 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 923 0 R 928 0 R 932 0 R 937 0 R 941 0 R 945 0 R 949 0 R 953 0 R 957 0 R 961 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 923 0 R 928 0 R 932 0 R 937 0 R 941 0 R 945 0 R 949 0 R 953 0 R 957 0 R 961 0 R ] >>
endobj
969 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 966 0 R 971 0 R 975 0 R 979 0 R 983 0 R 987 0 R 991 0 R 995 0 R 999 0 R 1003 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 966 0 R 971 0 R 975 0 R 979 0 R 983 0 R 987 0 R 991 0 R 995 0 R 999 0 R 1003 0 R ] >>
endobj
1010 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 1007 0 R 1012 0 R 1016 0 R 1020 0 R 1024 0 R 1028 0 R 1032 0 R 1036 0 R 1040 0 R 1044 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 1007 0 R 1012 0 R 1016 0 R 1020 0 R 1024 0 R 1028 0 R 1032 0 R 1036 0 R 1040 0 R 1044 0 R ] >>
endobj
1051 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 1048 0 R 1053 0 R 1057 0 R 1061 0 R 1065 0 R 1069 0 R 1073 0 R 1077 0 R 1081 0 R 1085 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 1048 0 R 1053 0 R 1057 0 R 1061 0 R 1065 0 R 1069 0 R 1073 0 R 1077 0 R 1081 0 R 1085 0 R ] >>
endobj
1092 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 1089 0 R 1094 0 R 1098 0 R 1102 0 R 1106 0 R 1110 0 R 1114 0 R 1119 0 R 1123 0 R 1127 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 1089 0 R 1094 0 R 1098 0 R 1102 0 R 1106 0 R 1110 0 R 1114 0 R 1119 0 R 1123 0 R 1127 0 R ] >>
endobj
1134 0 obj
-<< /Type /Pages /Parent 1555 0 R /Count 10 /Kids [ 1131 0 R 1136 0 R 1140 0 R 1144 0 R 1148 0 R 1152 0 R 1156 0 R 1161 0 R 1170 0 R 1175 0 R ] >>
+<< /Type /Pages /Parent 1564 0 R /Count 10 /Kids [ 1131 0 R 1136 0 R 1140 0 R 1144 0 R 1148 0 R 1152 0 R 1156 0 R 1161 0 R 1170 0 R 1175 0 R ] >>
endobj
1182 0 obj
-<< /Type /Pages /Parent 1556 0 R /Count 10 /Kids [ 1179 0 R 1184 0 R 1188 0 R 1193 0 R 1198 0 R 1202 0 R 1206 0 R 1210 0 R 1214 0 R 1218 0 R ] >>
+<< /Type /Pages /Parent 1565 0 R /Count 10 /Kids [ 1179 0 R 1184 0 R 1188 0 R 1193 0 R 1198 0 R 1202 0 R 1206 0 R 1210 0 R 1214 0 R 1218 0 R ] >>
endobj
1225 0 obj
-<< /Type /Pages /Parent 1556 0 R /Count 10 /Kids [ 1222 0 R 1227 0 R 1231 0 R 1235 0 R 1239 0 R 1243 0 R 1247 0 R 1251 0 R 1255 0 R 1259 0 R ] >>
+<< /Type /Pages /Parent 1565 0 R /Count 10 /Kids [ 1222 0 R 1227 0 R 1231 0 R 1235 0 R 1239 0 R 1243 0 R 1247 0 R 1251 0 R 1255 0 R 1259 0 R ] >>
endobj
1266 0 obj
-<< /Type /Pages /Parent 1556 0 R /Count 10 /Kids [ 1263 0 R 1268 0 R 1272 0 R 1276 0 R 1280 0 R 1284 0 R 1288 0 R 1292 0 R 1296 0 R 1300 0 R ] >>
+<< /Type /Pages /Parent 1565 0 R /Count 10 /Kids [ 1263 0 R 1268 0 R 1272 0 R 1276 0 R 1280 0 R 1284 0 R 1288 0 R 1292 0 R 1296 0 R 1300 0 R ] >>
endobj
1307 0 obj
-<< /Type /Pages /Parent 1556 0 R /Count 10 /Kids [ 1304 0 R 1309 0 R 1313 0 R 1317 0 R 1321 0 R 1325 0 R 1329 0 R 1333 0 R 1337 0 R 1341 0 R ] >>
+<< /Type /Pages /Parent 1565 0 R /Count 10 /Kids [ 1304 0 R 1309 0 R 1313 0 R 1317 0 R 1321 0 R 1325 0 R 1329 0 R 1333 0 R 1337 0 R 1341 0 R ] >>
endobj
1348 0 obj
-<< /Type /Pages /Parent 1556 0 R /Count 10 /Kids [ 1345 0 R 1350 0 R 1354 0 R 1358 0 R 1362 0 R 1366 0 R 1370 0 R 1374 0 R 1378 0 R 1382 0 R ] >>
+<< /Type /Pages /Parent 1565 0 R /Count 10 /Kids [ 1345 0 R 1350 0 R 1354 0 R 1358 0 R 1362 0 R 1366 0 R 1370 0 R 1374 0 R 1378 0 R 1382 0 R ] >>
endobj
1389 0 obj
-<< /Type /Pages /Parent 1556 0 R /Count 10 /Kids [ 1386 0 R 1391 0 R 1395 0 R 1399 0 R 1403 0 R 1407 0 R 1411 0 R 1415 0 R 1419 0 R 1423 0 R ] >>
+<< /Type /Pages /Parent 1565 0 R /Count 10 /Kids [ 1386 0 R 1391 0 R 1395 0 R 1399 0 R 1403 0 R 1407 0 R 1411 0 R 1415 0 R 1419 0 R 1423 0 R ] >>
endobj
-1555 0 obj
-<< /Type /Pages /Parent 1557 0 R /Count 100 /Kids [ 596 0 R 800 0 R 843 0 R 885 0 R 926 0 R 969 0 R 1010 0 R 1051 0 R 1092 0 R 1134 0 R ] >>
+1430 0 obj
+<< /Type /Pages /Parent 1565 0 R /Count 2 /Kids [ 1427 0 R 1432 0 R ] >>
endobj
-1556 0 obj
-<< /Type /Pages /Parent 1557 0 R /Count 60 /Kids [ 1182 0 R 1225 0 R 1266 0 R 1307 0 R 1348 0 R 1389 0 R ] >>
+1564 0 obj
+<< /Type /Pages /Parent 1566 0 R /Count 100 /Kids [ 596 0 R 800 0 R 843 0 R 885 0 R 926 0 R 969 0 R 1010 0 R 1051 0 R 1092 0 R 1134 0 R ] >>
endobj
-1557 0 obj
-<< /Type /Pages /Count 160 /Kids [ 1555 0 R 1556 0 R ] >>
+1565 0 obj
+<< /Type /Pages /Parent 1566 0 R /Count 62 /Kids [ 1182 0 R 1225 0 R 1266 0 R 1307 0 R 1348 0 R 1389 0 R 1430 0 R ] >>
endobj
-1558 0 obj
+1566 0 obj
+<< /Type /Pages /Count 162 /Kids [ 1564 0 R 1565 0 R ] >>
+endobj
+1567 0 obj
<< /Type /Outlines /First 3 0 R /Last 479 0 R /Count 19 >>
endobj
583 0 obj
@@ -7705,10 +7728,10 @@ endobj
<< /Title 484 0 R /A 481 0 R /Parent 479 0 R /Next 519 0 R /First 487 0 R /Last 515 0 R /Count -8 >>
endobj
479 0 obj
-<< /Title 480 0 R /A 477 0 R /Parent 1558 0 R /Prev 475 0 R /First 483 0 R /Last 583 0 R /Count -18 >>
+<< /Title 480 0 R /A 477 0 R /Parent 1567 0 R /Prev 475 0 R /First 483 0 R /Last 583 0 R /Count -18 >>
endobj
475 0 obj
-<< /Title 476 0 R /A 473 0 R /Parent 1558 0 R /Prev 463 0 R /Next 479 0 R >>
+<< /Title 476 0 R /A 473 0 R /Parent 1567 0 R /Prev 463 0 R /Next 479 0 R >>
endobj
471 0 obj
<< /Title 472 0 R /A 469 0 R /Parent 463 0 R /Prev 467 0 R >>
@@ -7717,22 +7740,22 @@ endobj
<< /Title 468 0 R /A 465 0 R /Parent 463 0 R /Next 471 0 R >>
endobj
463 0 obj
-<< /Title 464 0 R /A 461 0 R /Parent 1558 0 R /Prev 455 0 R /Next 475 0 R /First 467 0 R /Last 471 0 R /Count -2 >>
+<< /Title 464 0 R /A 461 0 R /Parent 1567 0 R /Prev 455 0 R /Next 475 0 R /First 467 0 R /Last 471 0 R /Count -2 >>
endobj
459 0 obj
<< /Title 460 0 R /A 457 0 R /Parent 455 0 R >>
endobj
455 0 obj
-<< /Title 456 0 R /A 453 0 R /Parent 1558 0 R /Prev 447 0 R /Next 463 0 R /First 459 0 R /Last 459 0 R /Count -1 >>
+<< /Title 456 0 R /A 453 0 R /Parent 1567 0 R /Prev 447 0 R /Next 463 0 R /First 459 0 R /Last 459 0 R /Count -1 >>
endobj
451 0 obj
<< /Title 452 0 R /A 449 0 R /Parent 447 0 R >>
endobj
447 0 obj
-<< /Title 448 0 R /A 445 0 R /Parent 1558 0 R /Prev 443 0 R /Next 455 0 R /First 451 0 R /Last 451 0 R /Count -1 >>
+<< /Title 448 0 R /A 445 0 R /Parent 1567 0 R /Prev 443 0 R /Next 455 0 R /First 451 0 R /Last 451 0 R /Count -1 >>
endobj
443 0 obj
-<< /Title 444 0 R /A 441 0 R /Parent 1558 0 R /Prev 391 0 R /Next 447 0 R >>
+<< /Title 444 0 R /A 441 0 R /Parent 1567 0 R /Prev 391 0 R /Next 447 0 R >>
endobj
439 0 obj
<< /Title 440 0 R /A 437 0 R /Parent 391 0 R /Prev 411 0 R >>
@@ -7771,7 +7794,7 @@ endobj
<< /Title 396 0 R /A 393 0 R /Parent 391 0 R /Next 399 0 R >>
endobj
391 0 obj
-<< /Title 392 0 R /A 389 0 R /Parent 1558 0 R /Prev 359 0 R /Next 443 0 R /First 395 0 R /Last 439 0 R /Count -6 >>
+<< /Title 392 0 R /A 389 0 R /Parent 1567 0 R /Prev 359 0 R /Next 443 0 R /First 395 0 R /Last 439 0 R /Count -6 >>
endobj
387 0 obj
<< /Title 388 0 R /A 385 0 R /Parent 359 0 R /Prev 383 0 R >>
@@ -7795,7 +7818,7 @@ endobj
<< /Title 364 0 R /A 361 0 R /Parent 359 0 R /Next 367 0 R >>
endobj
359 0 obj
-<< /Title 360 0 R /A 357 0 R /Parent 1558 0 R /Prev 315 0 R /Next 391 0 R /First 363 0 R /Last 387 0 R /Count -7 >>
+<< /Title 360 0 R /A 357 0 R /Parent 1567 0 R /Prev 315 0 R /Next 391 0 R /First 363 0 R /Last 387 0 R /Count -7 >>
endobj
355 0 obj
<< /Title 356 0 R /A 353 0 R /Parent 315 0 R /Prev 351 0 R >>
@@ -7828,7 +7851,7 @@ endobj
<< /Title 320 0 R /A 317 0 R /Parent 315 0 R /Next 323 0 R >>
endobj
315 0 obj
-<< /Title 316 0 R /A 313 0 R /Parent 1558 0 R /Prev 275 0 R /Next 359 0 R /First 319 0 R /Last 355 0 R /Count -10 >>
+<< /Title 316 0 R /A 313 0 R /Parent 1567 0 R /Prev 275 0 R /Next 359 0 R /First 319 0 R /Last 355 0 R /Count -10 >>
endobj
311 0 obj
<< /Title 312 0 R /A 309 0 R /Parent 275 0 R /Prev 307 0 R >>
@@ -7858,7 +7881,7 @@ endobj
<< /Title 280 0 R /A 277 0 R /Parent 275 0 R /Next 283 0 R >>
endobj
275 0 obj
-<< /Title 276 0 R /A 273 0 R /Parent 1558 0 R /Prev 239 0 R /Next 315 0 R /First 279 0 R /Last 311 0 R /Count -9 >>
+<< /Title 276 0 R /A 273 0 R /Parent 1567 0 R /Prev 239 0 R /Next 315 0 R /First 279 0 R /Last 311 0 R /Count -9 >>
endobj
271 0 obj
<< /Title 272 0 R /A 269 0 R /Parent 239 0 R /Prev 267 0 R >>
@@ -7885,7 +7908,7 @@ endobj
<< /Title 244 0 R /A 241 0 R /Parent 239 0 R /Next 247 0 R >>
endobj
239 0 obj
-<< /Title 240 0 R /A 237 0 R /Parent 1558 0 R /Prev 203 0 R /Next 275 0 R /First 243 0 R /Last 271 0 R /Count -8 >>
+<< /Title 240 0 R /A 237 0 R /Parent 1567 0 R /Prev 203 0 R /Next 275 0 R /First 243 0 R /Last 271 0 R /Count -8 >>
endobj
235 0 obj
<< /Title 236 0 R /A 233 0 R /Parent 203 0 R /Prev 231 0 R >>
@@ -7912,7 +7935,7 @@ endobj
<< /Title 208 0 R /A 205 0 R /Parent 203 0 R /Next 211 0 R >>
endobj
203 0 obj
-<< /Title 204 0 R /A 201 0 R /Parent 1558 0 R /Prev 163 0 R /Next 239 0 R /First 207 0 R /Last 235 0 R /Count -8 >>
+<< /Title 204 0 R /A 201 0 R /Parent 1567 0 R /Prev 163 0 R /Next 239 0 R /First 207 0 R /Last 235 0 R /Count -8 >>
endobj
199 0 obj
<< /Title 200 0 R /A 197 0 R /Parent 163 0 R /Prev 195 0 R >>
@@ -7942,7 +7965,7 @@ endobj
<< /Title 168 0 R /A 165 0 R /Parent 163 0 R /Next 171 0 R >>
endobj
163 0 obj
-<< /Title 164 0 R /A 161 0 R /Parent 1558 0 R /Prev 123 0 R /Next 203 0 R /First 167 0 R /Last 199 0 R /Count -9 >>
+<< /Title 164 0 R /A 161 0 R /Parent 1567 0 R /Prev 123 0 R /Next 203 0 R /First 167 0 R /Last 199 0 R /Count -9 >>
endobj
159 0 obj
<< /Title 160 0 R /A 157 0 R /Parent 123 0 R /Prev 155 0 R >>
@@ -7972,7 +7995,7 @@ endobj
<< /Title 128 0 R /A 125 0 R /Parent 123 0 R /Next 131 0 R >>
endobj
123 0 obj
-<< /Title 124 0 R /A 121 0 R /Parent 1558 0 R /Prev 83 0 R /Next 163 0 R /First 127 0 R /Last 159 0 R /Count -9 >>
+<< /Title 124 0 R /A 121 0 R /Parent 1567 0 R /Prev 83 0 R /Next 163 0 R /First 127 0 R /Last 159 0 R /Count -9 >>
endobj
119 0 obj
<< /Title 120 0 R /A 117 0 R /Parent 83 0 R /Prev 115 0 R >>
@@ -8002,7 +8025,7 @@ endobj
<< /Title 88 0 R /A 85 0 R /Parent 83 0 R /Next 91 0 R >>
endobj
83 0 obj
-<< /Title 84 0 R /A 81 0 R /Parent 1558 0 R /Prev 55 0 R /Next 123 0 R /First 87 0 R /Last 119 0 R /Count -9 >>
+<< /Title 84 0 R /A 81 0 R /Parent 1567 0 R /Prev 55 0 R /Next 123 0 R /First 87 0 R /Last 119 0 R /Count -9 >>
endobj
79 0 obj
<< /Title 80 0 R /A 77 0 R /Parent 55 0 R /Prev 75 0 R >>
@@ -8023,7 +8046,7 @@ endobj
<< /Title 60 0 R /A 57 0 R /Parent 55 0 R /Next 63 0 R >>
endobj
55 0 obj
-<< /Title 56 0 R /A 53 0 R /Parent 1558 0 R /Prev 43 0 R /Next 83 0 R /First 59 0 R /Last 79 0 R /Count -6 >>
+<< /Title 56 0 R /A 53 0 R /Parent 1567 0 R /Prev 43 0 R /Next 83 0 R /First 59 0 R /Last 79 0 R /Count -6 >>
endobj
51 0 obj
<< /Title 52 0 R /A 49 0 R /Parent 43 0 R /Prev 47 0 R >>
@@ -8032,7 +8055,7 @@ endobj
<< /Title 48 0 R /A 45 0 R /Parent 43 0 R /Next 51 0 R >>
endobj
43 0 obj
-<< /Title 44 0 R /A 41 0 R /Parent 1558 0 R /Prev 27 0 R /Next 55 0 R /First 47 0 R /Last 51 0 R /Count -2 >>
+<< /Title 44 0 R /A 41 0 R /Parent 1567 0 R /Prev 27 0 R /Next 55 0 R /First 47 0 R /Last 51 0 R /Count -2 >>
endobj
39 0 obj
<< /Title 40 0 R /A 37 0 R /Parent 27 0 R /Prev 35 0 R >>
@@ -8044,7 +8067,7 @@ endobj
<< /Title 32 0 R /A 29 0 R /Parent 27 0 R /Next 35 0 R >>
endobj
27 0 obj
-<< /Title 28 0 R /A 25 0 R /Parent 1558 0 R /Prev 3 0 R /Next 43 0 R /First 31 0 R /Last 39 0 R /Count -3 >>
+<< /Title 28 0 R /A 25 0 R /Parent 1567 0 R /Prev 3 0 R /Next 43 0 R /First 31 0 R /Last 39 0 R /Count -3 >>
endobj
23 0 obj
<< /Title 24 0 R /A 21 0 R /Parent 3 0 R /Prev 19 0 R >>
@@ -8062,1627 +8085,1636 @@ endobj
<< /Title 8 0 R /A 5 0 R /Parent 3 0 R /Next 11 0 R >>
endobj
3 0 obj
-<< /Title 4 0 R /A 1 0 R /Parent 1558 0 R /Next 27 0 R /First 7 0 R /Last 23 0 R /Count -5 >>
+<< /Title 4 0 R /A 1 0 R /Parent 1567 0 R /Next 27 0 R /First 7 0 R /Last 23 0 R /Count -5 >>
endobj
-1559 0 obj
+1568 0 obj
<< /Names [ (Doc-Start) 591 0 R (Hfootnote.1) 1165 0 R (chapter*.1) 636 0 R (chapter.1) 2 0 R (chapter.10) 274 0 R (chapter.11) 314 0 R (chapter.12) 358 0 R (chapter.13) 390 0 R (chapter.14) 442 0 R (chapter.15) 446 0 R (chapter.16) 454 0 R (chapter.17) 462 0 R (chapter.18) 474 0 R (chapter.19) 478 0 R (chapter.2) 26 0 R (chapter.3) 42 0 R (chapter.4) 54 0 R (chapter.5) 82 0 R (chapter.6) 122 0 R (chapter.7) 162 0 R (chapter.8) 202 0 R (chapter.9) 238 0 R (page.1) 590 0 R (page.10) 791 0 R (page.100) 1177 0 R (page.101) 1181 0 R (page.102) 1186 0 R (page.103) 1190 0 R (page.104) 1195 0 R (page.105) 1200 0 R (page.106) 1204 0 R (page.107) 1208 0 R ] /Limits [ (Doc-Start) (page.107) ] >>
endobj
-1560 0 obj
+1569 0 obj
<< /Names [ (page.108) 1212 0 R (page.109) 1216 0 R (page.11) 797 0 R (page.110) 1220 0 R (page.111) 1224 0 R (page.112) 1229 0 R (page.113) 1233 0 R (page.114) 1237 0 R (page.115) 1241 0 R (page.116) 1245 0 R (page.117) 1249 0 R (page.118) 1253 0 R (page.119) 1257 0 R (page.12) 804 0 R (page.120) 1261 0 R (page.121) 1265 0 R (page.122) 1270 0 R (page.123) 1274 0 R (page.124) 1278 0 R (page.125) 1282 0 R (page.126) 1286 0 R (page.127) 1290 0 R (page.128) 1294 0 R (page.129) 1298 0 R (page.13) 808 0 R (page.130) 1302 0 R (page.131) 1306 0 R (page.132) 1311 0 R (page.133) 1315 0 R (page.134) 1319 0 R (page.135) 1323 0 R (page.136) 1327 0 R ] /Limits [ (page.108) (page.136) ] >>
endobj
-1561 0 obj
-<< /Names [ (page.137) 1331 0 R (page.138) 1335 0 R (page.139) 1339 0 R (page.14) 812 0 R (page.140) 1343 0 R (page.141) 1347 0 R (page.142) 1352 0 R (page.143) 1356 0 R (page.144) 1360 0 R (page.145) 1364 0 R (page.146) 1368 0 R (page.147) 1372 0 R (page.148) 1376 0 R (page.149) 1380 0 R (page.15) 816 0 R (page.150) 1384 0 R (page.151) 1388 0 R (page.152) 1393 0 R (page.153) 1397 0 R (page.154) 1401 0 R (page.155) 1405 0 R (page.156) 1409 0 R (page.157) 1413 0 R (page.158) 1417 0 R (page.159) 1421 0 R (page.16) 820 0 R (page.160) 1425 0 R (page.17) 824 0 R (page.18) 828 0 R (page.19) 832 0 R (page.2) 635 0 R (page.20) 838 0 R ] /Limits [ (page.137) (page.20) ] >>
+1570 0 obj
+<< /Names [ (page.137) 1331 0 R (page.138) 1335 0 R (page.139) 1339 0 R (page.14) 812 0 R (page.140) 1343 0 R (page.141) 1347 0 R (page.142) 1352 0 R (page.143) 1356 0 R (page.144) 1360 0 R (page.145) 1364 0 R (page.146) 1368 0 R (page.147) 1372 0 R (page.148) 1376 0 R (page.149) 1380 0 R (page.15) 816 0 R (page.150) 1384 0 R (page.151) 1388 0 R (page.152) 1393 0 R (page.153) 1397 0 R (page.154) 1401 0 R (page.155) 1405 0 R (page.156) 1409 0 R (page.157) 1413 0 R (page.158) 1417 0 R (page.159) 1421 0 R (page.16) 820 0 R (page.160) 1425 0 R (page.161) 1429 0 R (page.162) 1434 0 R (page.17) 824 0 R (page.18) 828 0 R (page.19) 832 0 R ] /Limits [ (page.137) (page.19) ] >>
endobj
-1562 0 obj
-<< /Names [ (page.21) 842 0 R (page.22) 847 0 R (page.23) 851 0 R (page.24) 855 0 R (page.25) 859 0 R (page.26) 863 0 R (page.27) 867 0 R (page.28) 871 0 R (page.29) 875 0 R (page.3) 686 0 R (page.30) 880 0 R (page.31) 884 0 R (page.32) 889 0 R (page.33) 893 0 R (page.34) 897 0 R (page.35) 901 0 R (page.36) 905 0 R (page.37) 909 0 R (page.38) 913 0 R (page.39) 917 0 R (page.4) 733 0 R (page.40) 921 0 R (page.41) 925 0 R (page.42) 930 0 R (page.43) 934 0 R (page.44) 939 0 R (page.45) 943 0 R (page.46) 947 0 R (page.47) 951 0 R (page.48) 955 0 R (page.49) 959 0 R (page.5) 768 0 R ] /Limits [ (page.21) (page.5) ] >>
+1571 0 obj
+<< /Names [ (page.2) 635 0 R (page.20) 838 0 R (page.21) 842 0 R (page.22) 847 0 R (page.23) 851 0 R (page.24) 855 0 R (page.25) 859 0 R (page.26) 863 0 R (page.27) 867 0 R (page.28) 871 0 R (page.29) 875 0 R (page.3) 686 0 R (page.30) 880 0 R (page.31) 884 0 R (page.32) 889 0 R (page.33) 893 0 R (page.34) 897 0 R (page.35) 901 0 R (page.36) 905 0 R (page.37) 909 0 R (page.38) 913 0 R (page.39) 917 0 R (page.4) 733 0 R (page.40) 921 0 R (page.41) 925 0 R (page.42) 930 0 R (page.43) 934 0 R (page.44) 939 0 R (page.45) 943 0 R (page.46) 947 0 R (page.47) 951 0 R (page.48) 955 0 R ] /Limits [ (page.2) (page.48) ] >>
endobj
-1563 0 obj
-<< /Names [ (page.50) 963 0 R (page.51) 968 0 R (page.52) 973 0 R (page.53) 977 0 R (page.54) 981 0 R (page.55) 985 0 R (page.56) 989 0 R (page.57) 993 0 R (page.58) 997 0 R (page.59) 1001 0 R (page.6) 773 0 R (page.60) 1005 0 R (page.61) 1009 0 R (page.62) 1014 0 R (page.63) 1018 0 R (page.64) 1022 0 R (page.65) 1026 0 R (page.66) 1030 0 R (page.67) 1034 0 R (page.68) 1038 0 R (page.69) 1042 0 R (page.7) 779 0 R (page.70) 1046 0 R (page.71) 1050 0 R (page.72) 1055 0 R (page.73) 1059 0 R (page.74) 1063 0 R (page.75) 1067 0 R (page.76) 1071 0 R (page.77) 1075 0 R (page.78) 1079 0 R (page.79) 1083 0 R ] /Limits [ (page.50) (page.79) ] >>
+1572 0 obj
+<< /Names [ (page.49) 959 0 R (page.5) 768 0 R (page.50) 963 0 R (page.51) 968 0 R (page.52) 973 0 R (page.53) 977 0 R (page.54) 981 0 R (page.55) 985 0 R (page.56) 989 0 R (page.57) 993 0 R (page.58) 997 0 R (page.59) 1001 0 R (page.6) 773 0 R (page.60) 1005 0 R (page.61) 1009 0 R (page.62) 1014 0 R (page.63) 1018 0 R (page.64) 1022 0 R (page.65) 1026 0 R (page.66) 1030 0 R (page.67) 1034 0 R (page.68) 1038 0 R (page.69) 1042 0 R (page.7) 779 0 R (page.70) 1046 0 R (page.71) 1050 0 R (page.72) 1055 0 R (page.73) 1059 0 R (page.74) 1063 0 R (page.75) 1067 0 R (page.76) 1071 0 R (page.77) 1075 0 R ] /Limits [ (page.49) (page.77) ] >>
endobj
-1564 0 obj
-<< /Names [ (page.8) 783 0 R (page.80) 1087 0 R (page.81) 1091 0 R (page.82) 1096 0 R (page.83) 1100 0 R (page.84) 1104 0 R (page.85) 1108 0 R (page.86) 1112 0 R (page.87) 1116 0 R (page.88) 1121 0 R (page.89) 1125 0 R (page.9) 787 0 R (page.90) 1129 0 R (page.91) 1133 0 R (page.92) 1138 0 R (page.93) 1142 0 R (page.94) 1146 0 R (page.95) 1150 0 R (page.96) 1154 0 R (page.97) 1158 0 R (page.98) 1163 0 R (page.99) 1172 0 R (section.1.1) 6 0 R (section.1.2) 10 0 R (section.1.3) 14 0 R (section.1.4) 18 0 R (section.1.5) 22 0 R (section.10.1) 278 0 R (section.10.2) 282 0 R (section.10.3) 286 0 R (section.10.4) 290 0 R (section.10.5) 294 0 R ] /Limits [ (page.8) (section.10.5) ] >>
+1573 0 obj
+<< /Names [ (page.78) 1079 0 R (page.79) 1083 0 R (page.8) 783 0 R (page.80) 1087 0 R (page.81) 1091 0 R (page.82) 1096 0 R (page.83) 1100 0 R (page.84) 1104 0 R (page.85) 1108 0 R (page.86) 1112 0 R (page.87) 1116 0 R (page.88) 1121 0 R (page.89) 1125 0 R (page.9) 787 0 R (page.90) 1129 0 R (page.91) 1133 0 R (page.92) 1138 0 R (page.93) 1142 0 R (page.94) 1146 0 R (page.95) 1150 0 R (page.96) 1154 0 R (page.97) 1158 0 R (page.98) 1163 0 R (page.99) 1172 0 R (section.1.1) 6 0 R (section.1.2) 10 0 R (section.1.3) 14 0 R (section.1.4) 18 0 R (section.1.5) 22 0 R (section.10.1) 278 0 R (section.10.2) 282 0 R (section.10.3) 286 0 R ] /Limits [ (page.78) (section.10.3) ] >>
endobj
-1565 0 obj
-<< /Names [ (section.10.6) 298 0 R (section.10.7) 302 0 R (section.10.8) 306 0 R (section.10.9) 310 0 R (section.11.1) 318 0 R (section.11.10) 354 0 R (section.11.2) 322 0 R (section.11.3) 326 0 R (section.11.4) 330 0 R (section.11.5) 334 0 R (section.11.6) 338 0 R (section.11.7) 342 0 R (section.11.8) 346 0 R (section.11.9) 350 0 R (section.12.1) 362 0 R (section.12.2) 366 0 R (section.12.3) 370 0 R (section.12.4) 374 0 R (section.12.5) 378 0 R (section.12.6) 382 0 R (section.12.7) 386 0 R (section.13.1) 394 0 R (section.13.2) 398 0 R (section.13.3) 402 0 R (section.13.4) 406 0 R (section.13.5) 410 0 R (section.13.6) 438 0 R (section.15.1) 450 0 R (section.16.1) 458 0 R (section.17.1) 466 0 R (section.17.2) 470 0 R (section.19.1) 482 0 R ] /Limits [ (section.10.6) (section.19.1) ] >>
+1574 0 obj
+<< /Names [ (section.10.4) 290 0 R (section.10.5) 294 0 R (section.10.6) 298 0 R (section.10.7) 302 0 R (section.10.8) 306 0 R (section.10.9) 310 0 R (section.11.1) 318 0 R (section.11.10) 354 0 R (section.11.2) 322 0 R (section.11.3) 326 0 R (section.11.4) 330 0 R (section.11.5) 334 0 R (section.11.6) 338 0 R (section.11.7) 342 0 R (section.11.8) 346 0 R (section.11.9) 350 0 R (section.12.1) 362 0 R (section.12.2) 366 0 R (section.12.3) 370 0 R (section.12.4) 374 0 R (section.12.5) 378 0 R (section.12.6) 382 0 R (section.12.7) 386 0 R (section.13.1) 394 0 R (section.13.2) 398 0 R (section.13.3) 402 0 R (section.13.4) 406 0 R (section.13.5) 410 0 R (section.13.6) 438 0 R (section.15.1) 450 0 R (section.16.1) 458 0 R (section.17.1) 466 0 R ] /Limits [ (section.10.4) (section.17.1) ] >>
endobj
-1566 0 obj
-<< /Names [ (section.19.10) 550 0 R (section.19.11) 554 0 R (section.19.12) 558 0 R (section.19.13) 562 0 R (section.19.14) 566 0 R (section.19.15) 570 0 R (section.19.16) 574 0 R (section.19.17) 578 0 R (section.19.18) 582 0 R (section.19.2) 518 0 R (section.19.3) 522 0 R (section.19.4) 526 0 R (section.19.5) 530 0 R (section.19.6) 534 0 R (section.19.7) 538 0 R (section.19.8) 542 0 R (section.19.9) 546 0 R (section.2.1) 30 0 R (section.2.2) 34 0 R (section.2.3) 38 0 R (section.3.1) 46 0 R (section.3.2) 50 0 R (section.4.1) 58 0 R (section.4.2) 62 0 R (section.4.3) 66 0 R (section.4.4) 70 0 R (section.4.5) 74 0 R (section.4.6) 78 0 R (section.5.1) 86 0 R (section.5.2) 90 0 R (section.5.3) 94 0 R (section.5.4) 98 0 R ] /Limits [ (section.19.10) (section.5.4) ] >>
+1575 0 obj
+<< /Names [ (section.17.2) 470 0 R (section.19.1) 482 0 R (section.19.10) 550 0 R (section.19.11) 554 0 R (section.19.12) 558 0 R (section.19.13) 562 0 R (section.19.14) 566 0 R (section.19.15) 570 0 R (section.19.16) 574 0 R (section.19.17) 578 0 R (section.19.18) 582 0 R (section.19.2) 518 0 R (section.19.3) 522 0 R (section.19.4) 526 0 R (section.19.5) 530 0 R (section.19.6) 534 0 R (section.19.7) 538 0 R (section.19.8) 542 0 R (section.19.9) 546 0 R (section.2.1) 30 0 R (section.2.2) 34 0 R (section.2.3) 38 0 R (section.3.1) 46 0 R (section.3.2) 50 0 R (section.4.1) 58 0 R (section.4.2) 62 0 R (section.4.3) 66 0 R (section.4.4) 70 0 R (section.4.5) 74 0 R (section.4.6) 78 0 R (section.5.1) 86 0 R (section.5.2) 90 0 R ] /Limits [ (section.17.2) (section.5.2) ] >>
endobj
-1567 0 obj
-<< /Names [ (section.5.5) 102 0 R (section.5.6) 106 0 R (section.5.7) 110 0 R (section.5.8) 114 0 R (section.5.9) 118 0 R (section.6.1) 126 0 R (section.6.2) 130 0 R (section.6.3) 134 0 R (section.6.4) 138 0 R (section.6.5) 142 0 R (section.6.6) 146 0 R (section.6.7) 150 0 R (section.6.8) 154 0 R (section.6.9) 158 0 R (section.7.1) 166 0 R (section.7.2) 170 0 R (section.7.3) 174 0 R (section.7.4) 178 0 R (section.7.5) 182 0 R (section.7.6) 186 0 R (section.7.7) 190 0 R (section.7.8) 194 0 R (section.7.9) 198 0 R (section.8.1) 206 0 R (section.8.2) 210 0 R (section.8.3) 214 0 R (section.8.4) 218 0 R (section.8.5) 222 0 R (section.8.6) 226 0 R (section.8.7) 230 0 R (section.8.8) 234 0 R (section.9.1) 242 0 R ] /Limits [ (section.5.5) (section.9.1) ] >>
+1576 0 obj
+<< /Names [ (section.5.3) 94 0 R (section.5.4) 98 0 R (section.5.5) 102 0 R (section.5.6) 106 0 R (section.5.7) 110 0 R (section.5.8) 114 0 R (section.5.9) 118 0 R (section.6.1) 126 0 R (section.6.2) 130 0 R (section.6.3) 134 0 R (section.6.4) 138 0 R (section.6.5) 142 0 R (section.6.6) 146 0 R (section.6.7) 150 0 R (section.6.8) 154 0 R (section.6.9) 158 0 R (section.7.1) 166 0 R (section.7.2) 170 0 R (section.7.3) 174 0 R (section.7.4) 178 0 R (section.7.5) 182 0 R (section.7.6) 186 0 R (section.7.7) 190 0 R (section.7.8) 194 0 R (section.7.9) 198 0 R (section.8.1) 206 0 R (section.8.2) 210 0 R (section.8.3) 214 0 R (section.8.4) 218 0 R (section.8.5) 222 0 R (section.8.6) 226 0 R (section.8.7) 230 0 R ] /Limits [ (section.5.3) (section.8.7) ] >>
endobj
-1568 0 obj
-<< /Names [ (section.9.2) 246 0 R (section.9.3) 250 0 R (section.9.4) 254 0 R (section.9.5) 258 0 R (section.9.6) 262 0 R (section.9.7) 266 0 R (section.9.8) 270 0 R (subsection.13.5.1) 414 0 R (subsection.13.5.2) 418 0 R (subsection.13.5.3) 422 0 R (subsection.13.5.4) 426 0 R (subsection.13.5.5) 430 0 R (subsection.13.5.6) 434 0 R (subsection.19.1.1) 486 0 R (subsection.19.1.2) 490 0 R (subsection.19.1.3) 494 0 R (subsection.19.1.4) 498 0 R (subsection.19.1.5) 502 0 R (subsection.19.1.6) 506 0 R (subsection.19.1.7) 510 0 R (subsection.19.1.8) 514 0 R ] /Limits [ (section.9.2) (subsection.19.1.8) ] >>
+1577 0 obj
+<< /Names [ (section.8.8) 234 0 R (section.9.1) 242 0 R (section.9.2) 246 0 R (section.9.3) 250 0 R (section.9.4) 254 0 R (section.9.5) 258 0 R (section.9.6) 262 0 R (section.9.7) 266 0 R (section.9.8) 270 0 R (subsection.13.5.1) 414 0 R (subsection.13.5.2) 418 0 R (subsection.13.5.3) 422 0 R (subsection.13.5.4) 426 0 R (subsection.13.5.5) 430 0 R (subsection.13.5.6) 434 0 R (subsection.19.1.1) 486 0 R (subsection.19.1.2) 490 0 R (subsection.19.1.3) 494 0 R (subsection.19.1.4) 498 0 R (subsection.19.1.5) 502 0 R (subsection.19.1.6) 506 0 R (subsection.19.1.7) 510 0 R (subsection.19.1.8) 514 0 R ] /Limits [ (section.8.8) (subsection.19.1.8) ] >>
endobj
-1569 0 obj
-<< /Kids [ 1559 0 R 1560 0 R 1561 0 R 1562 0 R 1563 0 R 1564 0 R 1565 0 R 1566 0 R 1567 0 R 1568 0 R ] /Limits [ (Doc-Start) (subsection.19.1.8) ] >>
+1578 0 obj
+<< /Kids [ 1568 0 R 1569 0 R 1570 0 R 1571 0 R 1572 0 R 1573 0 R 1574 0 R 1575 0 R 1576 0 R 1577 0 R ] /Limits [ (Doc-Start) (subsection.19.1.8) ] >>
endobj
-1570 0 obj
-<< /Dests 1569 0 R >>
+1579 0 obj
+<< /Dests 1578 0 R >>
endobj
-1571 0 obj
-<< /Type /Catalog /Pages 1557 0 R /Outlines 1558 0 R /Names 1570 0 R /PageMode/UseOutlines /OpenAction 585 0 R >>
+1580 0 obj
+<< /Type /Catalog /Pages 1566 0 R /Outlines 1567 0 R /Names 1579 0 R /PageMode/UseOutlines /OpenAction 585 0 R >>
endobj
-1572 0 obj
-<< /Author()/Title()/Subject()/Creator(LaTeX with hyperref)/Keywords() /Producer (LuaTeX-1.15.0) /CreationDate (D:20220514164802+08'00') /ModDate (D:20220514164802+08'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (MiKTeX 22.3 Portable)) >>
+1581 0 obj
+<< /Author()/Title()/Subject()/Creator(LaTeX with hyperref)/Keywords() /Producer (LuaTeX-1.15.0) /CreationDate (D:20220522125721+08'00') /ModDate (D:20220522125721+08'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (MiKTeX 22.3 Portable)) >>
endobj
xref
-0 1573
+0 1582
0000000000 65535 f
0000000020 00000 n
-0000071182 00000 n
-0000816754 00000 n
+0000071191 00000 n
+0000825484 00000 n
0000000065 00000 n
0000000198 00000 n
-0000071243 00000 n
-0000816684 00000 n
+0000071252 00000 n
+0000825414 00000 n
0000000245 00000 n
0000000449 00000 n
-0000071303 00000 n
-0000816600 00000 n
+0000071312 00000 n
+0000825330 00000 n
0000000496 00000 n
0000000663 00000 n
-0000075042 00000 n
-0000816514 00000 n
+0000075049 00000 n
+0000825244 00000 n
0000000711 00000 n
0000000903 00000 n
-0000078516 00000 n
-0000816428 00000 n
+0000078548 00000 n
+0000825158 00000 n
0000000951 00000 n
0000001105 00000 n
-0000078578 00000 n
-0000816355 00000 n
+0000078610 00000 n
+0000825085 00000 n
0000001153 00000 n
0000001292 00000 n
-0000084490 00000 n
-0000816230 00000 n
+0000084556 00000 n
+0000824960 00000 n
0000001338 00000 n
0000001518 00000 n
-0000084552 00000 n
-0000816156 00000 n
+0000084618 00000 n
+0000824886 00000 n
0000001566 00000 n
0000001776 00000 n
-0000088861 00000 n
-0000816069 00000 n
+0000088934 00000 n
+0000824799 00000 n
0000001824 00000 n
0000002044 00000 n
-0000088923 00000 n
-0000815995 00000 n
+0000088996 00000 n
+0000824725 00000 n
0000002092 00000 n
0000002317 00000 n
-0000091665 00000 n
-0000815869 00000 n
+0000091722 00000 n
+0000824599 00000 n
0000002363 00000 n
0000002503 00000 n
-0000091727 00000 n
-0000815795 00000 n
+0000091784 00000 n
+0000824525 00000 n
0000002551 00000 n
0000002662 00000 n
-0000091789 00000 n
-0000815721 00000 n
+0000091846 00000 n
+0000824451 00000 n
0000002710 00000 n
0000002801 00000 n
-0000096843 00000 n
-0000815595 00000 n
+0000096906 00000 n
+0000824325 00000 n
0000002847 00000 n
0000003012 00000 n
-0000096905 00000 n
-0000815521 00000 n
+0000096968 00000 n
+0000824251 00000 n
0000003060 00000 n
0000003242 00000 n
-0000096967 00000 n
-0000815434 00000 n
+0000097030 00000 n
+0000824164 00000 n
0000003290 00000 n
0000003416 00000 n
-0000100302 00000 n
-0000815347 00000 n
+0000100372 00000 n
+0000824077 00000 n
0000003464 00000 n
0000003646 00000 n
-0000100364 00000 n
-0000815260 00000 n
+0000100434 00000 n
+0000823990 00000 n
0000003694 00000 n
0000003805 00000 n
-0000104551 00000 n
-0000815173 00000 n
+0000104636 00000 n
+0000823903 00000 n
0000003853 00000 n
0000004012 00000 n
-0000108988 00000 n
-0000815099 00000 n
+0000108994 00000 n
+0000823829 00000 n
0000004060 00000 n
0000004227 00000 n
-0000115707 00000 n
-0000814971 00000 n
+0000115718 00000 n
+0000823701 00000 n
0000004273 00000 n
0000004393 00000 n
-0000115769 00000 n
-0000814897 00000 n
+0000115780 00000 n
+0000823627 00000 n
0000004441 00000 n
0000004641 00000 n
-0000119206 00000 n
-0000814810 00000 n
+0000119216 00000 n
+0000823540 00000 n
0000004689 00000 n
0000004879 00000 n
-0000122261 00000 n
-0000814723 00000 n
+0000122269 00000 n
+0000823453 00000 n
0000004927 00000 n
0000005056 00000 n
-0000122323 00000 n
-0000814634 00000 n
+0000122331 00000 n
+0000823364 00000 n
0000005104 00000 n
0000005282 00000 n
-0000126185 00000 n
-0000814543 00000 n
+0000126195 00000 n
+0000823273 00000 n
0000005331 00000 n
0000005443 00000 n
-0000134673 00000 n
-0000814451 00000 n
+0000134684 00000 n
+0000823181 00000 n
0000005492 00000 n
0000005734 00000 n
-0000138852 00000 n
-0000814359 00000 n
+0000138866 00000 n
+0000823089 00000 n
0000005783 00000 n
0000005941 00000 n
-0000143153 00000 n
-0000814267 00000 n
+0000143192 00000 n
+0000822997 00000 n
0000005990 00000 n
0000006140 00000 n
-0000157319 00000 n
-0000814189 00000 n
+0000157367 00000 n
+0000822919 00000 n
0000006189 00000 n
0000006352 00000 n
-0000166043 00000 n
-0000814057 00000 n
+0000166099 00000 n
+0000822787 00000 n
0000006399 00000 n
0000006502 00000 n
-0000166106 00000 n
-0000813978 00000 n
+0000166162 00000 n
+0000822708 00000 n
0000006551 00000 n
0000006729 00000 n
-0000169067 00000 n
-0000813885 00000 n
+0000169123 00000 n
+0000822615 00000 n
0000006778 00000 n
0000006946 00000 n
-0000169130 00000 n
-0000813792 00000 n
+0000169186 00000 n
+0000822522 00000 n
0000006995 00000 n
0000007102 00000 n
-0000172720 00000 n
-0000813699 00000 n
+0000172777 00000 n
+0000822429 00000 n
0000007151 00000 n
0000007306 00000 n
-0000176849 00000 n
-0000813606 00000 n
+0000176910 00000 n
+0000822336 00000 n
0000007355 00000 n
0000007520 00000 n
-0000180722 00000 n
-0000813513 00000 n
+0000180780 00000 n
+0000822243 00000 n
0000007569 00000 n
0000007788 00000 n
-0000185639 00000 n
-0000813420 00000 n
+0000185698 00000 n
+0000822150 00000 n
0000007837 00000 n
0000007972 00000 n
-0000190297 00000 n
-0000813327 00000 n
+0000190365 00000 n
+0000822057 00000 n
0000008021 00000 n
0000008148 00000 n
-0000199675 00000 n
-0000813248 00000 n
+0000199760 00000 n
+0000821978 00000 n
0000008197 00000 n
0000008337 00000 n
-0000205142 00000 n
-0000813115 00000 n
+0000205244 00000 n
+0000821845 00000 n
0000008384 00000 n
0000008492 00000 n
-0000205205 00000 n
-0000813036 00000 n
+0000205307 00000 n
+0000821766 00000 n
0000008541 00000 n
0000008724 00000 n
-0000205268 00000 n
-0000812943 00000 n
+0000205370 00000 n
+0000821673 00000 n
0000008773 00000 n
0000008979 00000 n
-0000209720 00000 n
-0000812850 00000 n
+0000209822 00000 n
+0000821580 00000 n
0000009028 00000 n
0000009188 00000 n
-0000214071 00000 n
-0000812757 00000 n
+0000214174 00000 n
+0000821487 00000 n
0000009237 00000 n
0000009410 00000 n
-0000217081 00000 n
-0000812664 00000 n
+0000217185 00000 n
+0000821394 00000 n
0000009459 00000 n
0000009571 00000 n
-0000217144 00000 n
-0000812571 00000 n
+0000217248 00000 n
+0000821301 00000 n
0000009620 00000 n
0000009780 00000 n
-0000220721 00000 n
-0000812478 00000 n
+0000220828 00000 n
+0000821208 00000 n
0000009829 00000 n
0000009974 00000 n
-0000225317 00000 n
-0000812385 00000 n
+0000225423 00000 n
+0000821115 00000 n
0000010023 00000 n
0000010155 00000 n
-0000229470 00000 n
-0000812306 00000 n
+0000229581 00000 n
+0000821036 00000 n
0000010204 00000 n
0000010349 00000 n
-0000234677 00000 n
-0000812173 00000 n
+0000234785 00000 n
+0000820903 00000 n
0000010396 00000 n
0000010575 00000 n
-0000234740 00000 n
-0000812094 00000 n
+0000234848 00000 n
+0000820824 00000 n
0000010624 00000 n
0000010845 00000 n
-0000240662 00000 n
-0000812001 00000 n
+0000240769 00000 n
+0000820731 00000 n
0000010894 00000 n
0000011138 00000 n
-0000245260 00000 n
-0000811908 00000 n
+0000245367 00000 n
+0000820638 00000 n
0000011187 00000 n
0000011385 00000 n
-0000248814 00000 n
-0000811815 00000 n
+0000248923 00000 n
+0000820545 00000 n
0000011434 00000 n
0000011645 00000 n
-0000248877 00000 n
-0000811722 00000 n
+0000248986 00000 n
+0000820452 00000 n
0000011694 00000 n
0000011844 00000 n
-0000252632 00000 n
-0000811629 00000 n
+0000252742 00000 n
+0000820359 00000 n
0000011893 00000 n
0000012091 00000 n
-0000252695 00000 n
-0000811536 00000 n
+0000252805 00000 n
+0000820266 00000 n
0000012140 00000 n
0000012323 00000 n
-0000258555 00000 n
-0000811457 00000 n
+0000258665 00000 n
+0000820187 00000 n
0000012372 00000 n
0000012527 00000 n
-0000261481 00000 n
-0000811324 00000 n
+0000261591 00000 n
+0000820054 00000 n
0000012574 00000 n
0000012692 00000 n
-0000261544 00000 n
-0000811245 00000 n
+0000261654 00000 n
+0000819975 00000 n
0000012741 00000 n
0000012934 00000 n
-0000261607 00000 n
-0000811152 00000 n
+0000261717 00000 n
+0000819882 00000 n
0000012983 00000 n
0000013120 00000 n
-0000265425 00000 n
-0000811059 00000 n
+0000265538 00000 n
+0000819789 00000 n
0000013169 00000 n
0000013352 00000 n
-0000268431 00000 n
-0000810966 00000 n
+0000268547 00000 n
+0000819696 00000 n
0000013401 00000 n
0000013523 00000 n
-0000268494 00000 n
-0000810873 00000 n
+0000268610 00000 n
+0000819603 00000 n
0000013572 00000 n
0000013742 00000 n
-0000272028 00000 n
-0000810780 00000 n
+0000272146 00000 n
+0000819510 00000 n
0000013791 00000 n
0000013946 00000 n
-0000276652 00000 n
-0000810687 00000 n
+0000276778 00000 n
+0000819417 00000 n
0000013995 00000 n
0000014137 00000 n
-0000279964 00000 n
-0000810608 00000 n
+0000280101 00000 n
+0000819338 00000 n
0000014186 00000 n
0000014341 00000 n
-0000284393 00000 n
-0000810475 00000 n
+0000284528 00000 n
+0000819205 00000 n
0000014389 00000 n
0000014578 00000 n
-0000284457 00000 n
-0000810396 00000 n
+0000284592 00000 n
+0000819126 00000 n
0000014628 00000 n
0000014829 00000 n
-0000284521 00000 n
-0000810303 00000 n
+0000284656 00000 n
+0000819033 00000 n
0000014879 00000 n
0000015070 00000 n
-0000288756 00000 n
-0000810210 00000 n
+0000288894 00000 n
+0000818940 00000 n
0000015120 00000 n
0000015250 00000 n
-0000292535 00000 n
-0000810117 00000 n
+0000292677 00000 n
+0000818847 00000 n
0000015300 00000 n
0000015430 00000 n
-0000297002 00000 n
-0000810024 00000 n
+0000297146 00000 n
+0000818754 00000 n
0000015480 00000 n
0000015620 00000 n
-0000301040 00000 n
-0000809931 00000 n
+0000301185 00000 n
+0000818661 00000 n
0000015670 00000 n
0000015917 00000 n
-0000305679 00000 n
-0000809838 00000 n
+0000305849 00000 n
+0000818568 00000 n
0000015967 00000 n
0000016110 00000 n
-0000311110 00000 n
-0000809745 00000 n
+0000311298 00000 n
+0000818475 00000 n
0000016160 00000 n
0000016318 00000 n
-0000315888 00000 n
-0000809666 00000 n
+0000315408 00000 n
+0000818396 00000 n
0000016368 00000 n
0000016518 00000 n
-0000321020 00000 n
-0000809532 00000 n
+0000321026 00000 n
+0000818262 00000 n
0000016566 00000 n
0000016740 00000 n
-0000321084 00000 n
-0000809453 00000 n
+0000321090 00000 n
+0000818183 00000 n
0000016790 00000 n
0000016978 00000 n
-0000321148 00000 n
-0000809360 00000 n
+0000321154 00000 n
+0000818090 00000 n
0000017028 00000 n
0000017206 00000 n
-0000325408 00000 n
-0000809267 00000 n
+0000325412 00000 n
+0000817997 00000 n
0000017256 00000 n
0000017373 00000 n
-0000325472 00000 n
-0000809174 00000 n
+0000325476 00000 n
+0000817904 00000 n
0000017423 00000 n
0000017540 00000 n
-0000333352 00000 n
-0000809081 00000 n
+0000333363 00000 n
+0000817811 00000 n
0000017590 00000 n
0000017717 00000 n
-0000333416 00000 n
-0000808988 00000 n
+0000333427 00000 n
+0000817718 00000 n
0000017767 00000 n
0000018001 00000 n
-0000338054 00000 n
-0000808895 00000 n
+0000338067 00000 n
+0000817625 00000 n
0000018051 00000 n
0000018181 00000 n
-0000342927 00000 n
-0000808802 00000 n
+0000342949 00000 n
+0000817532 00000 n
0000018231 00000 n
0000018424 00000 n
-0000352357 00000 n
-0000808709 00000 n
+0000352411 00000 n
+0000817439 00000 n
0000018474 00000 n
0000018619 00000 n
-0000352421 00000 n
-0000808630 00000 n
+0000352475 00000 n
+0000817360 00000 n
0000018670 00000 n
0000018807 00000 n
-0000358421 00000 n
-0000808497 00000 n
+0000358484 00000 n
+0000817227 00000 n
0000018855 00000 n
0000019001 00000 n
-0000358485 00000 n
-0000808418 00000 n
+0000358548 00000 n
+0000817148 00000 n
0000019051 00000 n
0000019239 00000 n
-0000358549 00000 n
-0000808325 00000 n
+0000358612 00000 n
+0000817055 00000 n
0000019289 00000 n
0000019495 00000 n
-0000362246 00000 n
-0000808232 00000 n
+0000362350 00000 n
+0000816962 00000 n
0000019545 00000 n
0000019690 00000 n
-0000362309 00000 n
-0000808139 00000 n
+0000362413 00000 n
+0000816869 00000 n
0000019740 00000 n
0000019885 00000 n
-0000370619 00000 n
-0000808046 00000 n
+0000370731 00000 n
+0000816776 00000 n
0000019935 00000 n
0000020161 00000 n
-0000375749 00000 n
-0000807953 00000 n
+0000375866 00000 n
+0000816683 00000 n
0000020211 00000 n
0000020384 00000 n
-0000379818 00000 n
-0000807874 00000 n
+0000379954 00000 n
+0000816604 00000 n
0000020434 00000 n
0000020599 00000 n
-0000384090 00000 n
-0000807741 00000 n
+0000384226 00000 n
+0000816471 00000 n
0000020647 00000 n
0000020823 00000 n
-0000384154 00000 n
-0000807662 00000 n
+0000384290 00000 n
+0000816392 00000 n
0000020873 00000 n
0000021048 00000 n
-0000388101 00000 n
-0000807569 00000 n
+0000388236 00000 n
+0000816299 00000 n
0000021098 00000 n
0000021268 00000 n
-0000398565 00000 n
-0000807476 00000 n
+0000398710 00000 n
+0000816206 00000 n
0000021318 00000 n
0000021546 00000 n
-0000410418 00000 n
-0000807383 00000 n
+0000410561 00000 n
+0000816113 00000 n
0000021596 00000 n
0000021781 00000 n
-0000423243 00000 n
-0000807251 00000 n
+0000423395 00000 n
+0000815981 00000 n
0000021831 00000 n
0000022014 00000 n
-0000423307 00000 n
-0000807172 00000 n
+0000423459 00000 n
+0000815902 00000 n
0000022069 00000 n
0000022239 00000 n
-0000426982 00000 n
-0000807079 00000 n
+0000427134 00000 n
+0000815809 00000 n
0000022294 00000 n
0000022497 00000 n
-0000427046 00000 n
-0000806986 00000 n
+0000427198 00000 n
+0000815716 00000 n
0000022552 00000 n
0000022674 00000 n
-0000430937 00000 n
-0000806893 00000 n
+0000431089 00000 n
+0000815623 00000 n
0000022729 00000 n
0000022987 00000 n
-0000435354 00000 n
-0000806800 00000 n
+0000435502 00000 n
+0000815530 00000 n
0000023042 00000 n
0000023182 00000 n
-0000440870 00000 n
-0000806721 00000 n
+0000441016 00000 n
+0000815451 00000 n
0000023237 00000 n
0000023331 00000 n
-0000446047 00000 n
-0000806642 00000 n
+0000446192 00000 n
+0000815372 00000 n
0000023381 00000 n
0000023572 00000 n
-0000451245 00000 n
-0000806548 00000 n
+0000451394 00000 n
+0000815278 00000 n
0000023620 00000 n
0000023791 00000 n
-0000457372 00000 n
-0000806415 00000 n
+0000457524 00000 n
+0000815145 00000 n
0000023839 00000 n
0000023990 00000 n
-0000457436 00000 n
-0000806350 00000 n
+0000457588 00000 n
+0000815080 00000 n
0000024040 00000 n
0000024137 00000 n
-0000464973 00000 n
-0000806217 00000 n
+0000465130 00000 n
+0000814947 00000 n
0000024185 00000 n
0000024283 00000 n
-0000465037 00000 n
-0000806152 00000 n
+0000465194 00000 n
+0000814882 00000 n
0000024333 00000 n
0000024488 00000 n
-0000469414 00000 n
-0000806019 00000 n
+0000469584 00000 n
+0000814749 00000 n
0000024536 00000 n
0000024644 00000 n
-0000469478 00000 n
-0000805940 00000 n
+0000469648 00000 n
+0000814670 00000 n
0000024694 00000 n
0000024801 00000 n
-0000469542 00000 n
-0000805861 00000 n
+0000469712 00000 n
+0000814591 00000 n
0000024851 00000 n
0000024973 00000 n
-0000473112 00000 n
-0000805767 00000 n
+0000473285 00000 n
+0000814497 00000 n
0000025021 00000 n
0000025182 00000 n
-0000475500 00000 n
-0000805647 00000 n
+0000475672 00000 n
+0000814377 00000 n
0000025230 00000 n
0000025340 00000 n
-0000475564 00000 n
-0000805529 00000 n
+0000475736 00000 n
+0000814259 00000 n
0000025390 00000 n
0000025652 00000 n
-0000475628 00000 n
-0000805450 00000 n
+0000475800 00000 n
+0000814180 00000 n
0000025707 00000 n
0000025872 00000 n
-0000482478 00000 n
-0000805357 00000 n
+0000482650 00000 n
+0000814087 00000 n
0000025927 00000 n
0000026163 00000 n
-0000505073 00000 n
-0000805264 00000 n
+0000505520 00000 n
+0000813994 00000 n
0000026218 00000 n
0000026406 00000 n
-0000505137 00000 n
-0000805171 00000 n
+0000505584 00000 n
+0000813901 00000 n
0000026461 00000 n
0000026677 00000 n
-0000507724 00000 n
-0000805078 00000 n
+0000510820 00000 n
+0000813808 00000 n
0000026732 00000 n
0000026955 00000 n
-0000510946 00000 n
-0000804985 00000 n
+0000510884 00000 n
+0000813715 00000 n
0000027010 00000 n
0000027239 00000 n
-0000511010 00000 n
-0000804892 00000 n
+0000514424 00000 n
+0000813622 00000 n
0000027294 00000 n
0000027525 00000 n
-0000514119 00000 n
-0000804813 00000 n
+0000514488 00000 n
+0000813543 00000 n
0000027580 00000 n
0000027814 00000 n
-0000516817 00000 n
-0000804720 00000 n
+0000516980 00000 n
+0000813450 00000 n
0000027864 00000 n
0000028086 00000 n
-0000520282 00000 n
-0000804627 00000 n
+0000520301 00000 n
+0000813357 00000 n
0000028136 00000 n
0000028383 00000 n
-0000523167 00000 n
-0000804534 00000 n
+0000527166 00000 n
+0000813264 00000 n
0000028433 00000 n
0000028635 00000 n
-0000537320 00000 n
-0000804441 00000 n
+0000540532 00000 n
+0000813171 00000 n
0000028685 00000 n
0000028869 00000 n
-0000551770 00000 n
-0000804348 00000 n
+0000554116 00000 n
+0000813078 00000 n
0000028919 00000 n
0000029108 00000 n
-0000558732 00000 n
-0000804255 00000 n
+0000564794 00000 n
+0000812985 00000 n
0000029158 00000 n
0000029418 00000 n
-0000565905 00000 n
-0000804162 00000 n
+0000571692 00000 n
+0000812892 00000 n
0000029468 00000 n
0000029667 00000 n
-0000575894 00000 n
-0000804069 00000 n
+0000578857 00000 n
+0000812799 00000 n
0000029717 00000 n
0000029959 00000 n
-0000575958 00000 n
-0000803976 00000 n
+0000578921 00000 n
+0000812706 00000 n
0000030010 00000 n
0000030280 00000 n
-0000589023 00000 n
-0000803883 00000 n
+0000595380 00000 n
+0000812613 00000 n
0000030331 00000 n
0000030586 00000 n
-0000602826 00000 n
-0000803790 00000 n
+0000608993 00000 n
+0000812520 00000 n
0000030637 00000 n
0000030864 00000 n
-0000610112 00000 n
-0000803697 00000 n
+0000619682 00000 n
+0000812427 00000 n
0000030915 00000 n
0000031172 00000 n
-0000624389 00000 n
-0000803604 00000 n
+0000634442 00000 n
+0000812334 00000 n
0000031223 00000 n
0000031475 00000 n
-0000626693 00000 n
-0000803511 00000 n
+0000637077 00000 n
+0000812241 00000 n
0000031526 00000 n
0000031758 00000 n
-0000629537 00000 n
-0000803418 00000 n
+0000640391 00000 n
+0000812148 00000 n
0000031809 00000 n
0000031988 00000 n
-0000632420 00000 n
-0000803325 00000 n
+0000643014 00000 n
+0000812055 00000 n
0000032039 00000 n
0000032228 00000 n
-0000634401 00000 n
-0000803246 00000 n
+0000643078 00000 n
+0000811976 00000 n
0000032279 00000 n
0000032516 00000 n
-0000033762 00000 n
-0000033928 00000 n
-0000034240 00000 n
+0000033759 00000 n
+0000033925 00000 n
+0000034237 00000 n
0000032568 00000 n
-0000034114 00000 n
-0000034177 00000 n
-0000730856 00000 n
-0000727513 00000 n
-0000720461 00000 n
-0000716678 00000 n
-0000800246 00000 n
-0000033899 00000 n
-0000036463 00000 n
-0000036615 00000 n
-0000036770 00000 n
-0000036925 00000 n
-0000037080 00000 n
-0000037234 00000 n
-0000037387 00000 n
-0000037538 00000 n
-0000037693 00000 n
-0000037848 00000 n
-0000038003 00000 n
-0000038155 00000 n
-0000038310 00000 n
-0000038465 00000 n
-0000038617 00000 n
-0000038771 00000 n
-0000038925 00000 n
-0000039079 00000 n
-0000039232 00000 n
-0000039387 00000 n
-0000039541 00000 n
-0000039693 00000 n
-0000039848 00000 n
-0000040002 00000 n
-0000040157 00000 n
-0000040312 00000 n
-0000040467 00000 n
-0000040622 00000 n
-0000040777 00000 n
-0000040932 00000 n
-0000043777 00000 n
-0000043929 00000 n
-0000044083 00000 n
-0000044238 00000 n
-0000041213 00000 n
-0000036065 00000 n
-0000034351 00000 n
-0000041087 00000 n
-0000041150 00000 n
-0000714487 00000 n
-0000706287 00000 n
-0000698648 00000 n
-0000687829 00000 n
-0000036202 00000 n
-0000044393 00000 n
-0000044547 00000 n
-0000044701 00000 n
-0000044854 00000 n
-0000045009 00000 n
-0000045164 00000 n
-0000045318 00000 n
-0000045470 00000 n
-0000045625 00000 n
-0000045780 00000 n
-0000045935 00000 n
-0000046089 00000 n
-0000046244 00000 n
-0000046399 00000 n
-0000046553 00000 n
-0000046708 00000 n
-0000046863 00000 n
-0000047015 00000 n
-0000047170 00000 n
-0000047324 00000 n
-0000047478 00000 n
-0000047633 00000 n
-0000047788 00000 n
-0000047943 00000 n
-0000048097 00000 n
-0000048252 00000 n
-0000048404 00000 n
-0000048559 00000 n
-0000048712 00000 n
-0000048867 00000 n
-0000049021 00000 n
-0000049176 00000 n
-0000049331 00000 n
-0000049485 00000 n
-0000049640 00000 n
-0000049793 00000 n
-0000049948 00000 n
-0000050101 00000 n
-0000053047 00000 n
-0000053203 00000 n
-0000053359 00000 n
-0000050318 00000 n
-0000043283 00000 n
-0000041324 00000 n
-0000050255 00000 n
-0000680863 00000 n
-0000043420 00000 n
-0000053513 00000 n
-0000053668 00000 n
-0000053823 00000 n
-0000053977 00000 n
-0000054129 00000 n
-0000054284 00000 n
-0000054440 00000 n
-0000054596 00000 n
-0000054752 00000 n
-0000054908 00000 n
-0000055064 00000 n
-0000055220 00000 n
-0000055376 00000 n
-0000055532 00000 n
-0000055689 00000 n
-0000055841 00000 n
-0000055996 00000 n
-0000056152 00000 n
-0000056308 00000 n
-0000056464 00000 n
-0000056620 00000 n
-0000056776 00000 n
-0000056931 00000 n
-0000057083 00000 n
-0000057239 00000 n
-0000057395 00000 n
-0000057551 00000 n
-0000057707 00000 n
-0000057863 00000 n
-0000058025 00000 n
-0000058187 00000 n
-0000058348 00000 n
-0000058509 00000 n
-0000058671 00000 n
-0000058832 00000 n
-0000058988 00000 n
-0000059140 00000 n
-0000059291 00000 n
-0000062029 00000 n
-0000062182 00000 n
-0000062337 00000 n
-0000059507 00000 n
-0000052561 00000 n
-0000050429 00000 n
-0000059444 00000 n
-0000052698 00000 n
-0000062490 00000 n
-0000062646 00000 n
-0000062802 00000 n
-0000062955 00000 n
-0000063108 00000 n
-0000063263 00000 n
-0000063425 00000 n
-0000063587 00000 n
-0000063749 00000 n
-0000063911 00000 n
-0000064072 00000 n
-0000064233 00000 n
-0000064395 00000 n
-0000064556 00000 n
-0000064712 00000 n
-0000064868 00000 n
-0000065024 00000 n
-0000065180 00000 n
-0000065336 00000 n
-0000065492 00000 n
-0000065648 00000 n
-0000065804 00000 n
-0000065961 00000 n
-0000066118 00000 n
-0000066274 00000 n
-0000066429 00000 n
-0000066585 00000 n
-0000066741 00000 n
-0000066898 00000 n
-0000067055 00000 n
-0000067275 00000 n
-0000061607 00000 n
-0000059618 00000 n
-0000067212 00000 n
-0000061744 00000 n
-0000071365 00000 n
-0000070998 00000 n
-0000067386 00000 n
-0000071119 00000 n
-0000670739 00000 n
-0000799524 00000 n
-0000075104 00000 n
-0000074858 00000 n
-0000071502 00000 n
-0000074979 00000 n
-0000078640 00000 n
-0000078332 00000 n
-0000075215 00000 n
-0000078453 00000 n
-0000080554 00000 n
-0000080370 00000 n
-0000078764 00000 n
-0000080491 00000 n
-0000084614 00000 n
-0000084306 00000 n
-0000080665 00000 n
-0000084427 00000 n
-0000799813 00000 n
-0000799669 00000 n
-0000088985 00000 n
-0000088677 00000 n
-0000084764 00000 n
-0000088798 00000 n
-0000659374 00000 n
-0000654298 00000 n
-0000800399 00000 n
-0000091851 00000 n
-0000091481 00000 n
-0000089161 00000 n
-0000091602 00000 n
-0000093498 00000 n
-0000093314 00000 n
-0000091988 00000 n
-0000093435 00000 n
-0000097029 00000 n
-0000096659 00000 n
-0000093648 00000 n
-0000096780 00000 n
-0000100426 00000 n
-0000100118 00000 n
-0000097166 00000 n
-0000100239 00000 n
-0000104613 00000 n
-0000104367 00000 n
-0000100589 00000 n
-0000104488 00000 n
-0000109050 00000 n
-0000108804 00000 n
-0000104776 00000 n
-0000108925 00000 n
-0000112287 00000 n
-0000112103 00000 n
-0000109213 00000 n
-0000112224 00000 n
-0000115831 00000 n
-0000115523 00000 n
-0000112424 00000 n
-0000115644 00000 n
-0000650917 00000 n
-0000800101 00000 n
-0000119268 00000 n
-0000119022 00000 n
-0000115968 00000 n
-0000119143 00000 n
-0000122385 00000 n
-0000122077 00000 n
-0000119431 00000 n
-0000122198 00000 n
-0000800552 00000 n
-0000126248 00000 n
-0000126001 00000 n
-0000122548 00000 n
-0000126122 00000 n
-0000130522 00000 n
-0000130338 00000 n
-0000126424 00000 n
-0000130459 00000 n
-0000134736 00000 n
-0000134489 00000 n
-0000130672 00000 n
-0000134610 00000 n
-0000138915 00000 n
-0000138668 00000 n
-0000134912 00000 n
-0000138789 00000 n
-0000143216 00000 n
-0000142969 00000 n
-0000139078 00000 n
-0000143090 00000 n
-0000148389 00000 n
-0000148205 00000 n
-0000143366 00000 n
-0000148326 00000 n
-0000154054 00000 n
-0000153870 00000 n
-0000148552 00000 n
-0000153991 00000 n
-0000157382 00000 n
-0000157135 00000 n
-0000154217 00000 n
-0000157256 00000 n
-0000799379 00000 n
-0000161176 00000 n
-0000160992 00000 n
-0000157558 00000 n
-0000161113 00000 n
-0000162798 00000 n
-0000162614 00000 n
-0000161339 00000 n
-0000162735 00000 n
-0000800705 00000 n
-0000166169 00000 n
-0000165859 00000 n
-0000162922 00000 n
-0000165980 00000 n
-0000169193 00000 n
-0000168883 00000 n
-0000166306 00000 n
-0000169004 00000 n
-0000172783 00000 n
-0000172536 00000 n
-0000169343 00000 n
-0000172657 00000 n
-0000176912 00000 n
-0000176665 00000 n
-0000172946 00000 n
-0000176786 00000 n
-0000180785 00000 n
-0000180538 00000 n
-0000177062 00000 n
-0000180659 00000 n
-0000185702 00000 n
-0000185455 00000 n
-0000180948 00000 n
-0000185576 00000 n
-0000190359 00000 n
-0000190113 00000 n
-0000185865 00000 n
-0000190234 00000 n
-0000196238 00000 n
-0000196054 00000 n
-0000190522 00000 n
-0000196175 00000 n
-0000199738 00000 n
-0000199491 00000 n
-0000196388 00000 n
-0000199612 00000 n
-0000202823 00000 n
-0000202639 00000 n
-0000199914 00000 n
-0000202760 00000 n
-0000800858 00000 n
-0000205331 00000 n
-0000204958 00000 n
-0000202986 00000 n
-0000205079 00000 n
-0000209783 00000 n
-0000209536 00000 n
-0000205468 00000 n
-0000209657 00000 n
-0000799233 00000 n
-0000214134 00000 n
-0000213887 00000 n
-0000209972 00000 n
-0000214008 00000 n
-0000217207 00000 n
-0000216897 00000 n
-0000214310 00000 n
-0000217018 00000 n
-0000220784 00000 n
-0000220537 00000 n
-0000217383 00000 n
-0000220658 00000 n
-0000225380 00000 n
-0000225133 00000 n
-0000220947 00000 n
-0000225254 00000 n
-0000229533 00000 n
-0000229286 00000 n
-0000225543 00000 n
-0000229407 00000 n
-0000232480 00000 n
-0000232296 00000 n
-0000229709 00000 n
-0000232417 00000 n
-0000234803 00000 n
-0000234493 00000 n
-0000232643 00000 n
-0000234614 00000 n
-0000799958 00000 n
-0000240725 00000 n
-0000240478 00000 n
-0000234953 00000 n
-0000240599 00000 n
-0000801011 00000 n
-0000245323 00000 n
-0000245076 00000 n
-0000240966 00000 n
-0000245197 00000 n
-0000248940 00000 n
-0000248630 00000 n
-0000245538 00000 n
-0000248751 00000 n
-0000252758 00000 n
-0000252448 00000 n
-0000249116 00000 n
-0000252569 00000 n
-0000258618 00000 n
-0000258371 00000 n
-0000252934 00000 n
-0000258492 00000 n
-0000261670 00000 n
-0000261297 00000 n
-0000258807 00000 n
-0000261418 00000 n
-0000265488 00000 n
-0000265241 00000 n
-0000261820 00000 n
-0000265362 00000 n
-0000268557 00000 n
-0000268247 00000 n
-0000265664 00000 n
-0000268368 00000 n
-0000272091 00000 n
-0000271842 00000 n
-0000268720 00000 n
-0000271964 00000 n
-0000276716 00000 n
-0000276463 00000 n
-0000272254 00000 n
-0000276587 00000 n
-0000280028 00000 n
-0000279774 00000 n
-0000276880 00000 n
-0000279899 00000 n
-0000801165 00000 n
-0000281828 00000 n
-0000281638 00000 n
-0000280205 00000 n
-0000281763 00000 n
-0000284585 00000 n
-0000284203 00000 n
-0000281992 00000 n
-0000284328 00000 n
-0000288820 00000 n
-0000288566 00000 n
-0000284723 00000 n
-0000288691 00000 n
-0000292599 00000 n
-0000292345 00000 n
-0000288971 00000 n
-0000292470 00000 n
-0000297066 00000 n
-0000296812 00000 n
-0000292776 00000 n
-0000296937 00000 n
-0000301104 00000 n
-0000300850 00000 n
-0000297243 00000 n
-0000300975 00000 n
-0000305743 00000 n
-0000305489 00000 n
-0000301268 00000 n
-0000305614 00000 n
-0000311174 00000 n
-0000310920 00000 n
-0000305894 00000 n
-0000311045 00000 n
-0000315952 00000 n
-0000315698 00000 n
-0000311338 00000 n
-0000315823 00000 n
-0000318457 00000 n
-0000318267 00000 n
-0000316103 00000 n
-0000318392 00000 n
-0000801329 00000 n
-0000321212 00000 n
-0000320830 00000 n
-0000318595 00000 n
-0000320955 00000 n
-0000325536 00000 n
-0000325218 00000 n
-0000321350 00000 n
-0000325343 00000 n
-0000329607 00000 n
-0000329417 00000 n
-0000325713 00000 n
-0000329542 00000 n
-0000333479 00000 n
-0000333162 00000 n
-0000329758 00000 n
-0000333287 00000 n
-0000338118 00000 n
-0000337864 00000 n
-0000333643 00000 n
-0000337989 00000 n
-0000342991 00000 n
-0000342737 00000 n
-0000338269 00000 n
-0000342862 00000 n
-0000347684 00000 n
-0000347494 00000 n
-0000343142 00000 n
-0000347619 00000 n
-0000352485 00000 n
-0000352167 00000 n
-0000347822 00000 n
-0000352292 00000 n
+0000034111 00000 n
+0000034174 00000 n
+0000739486 00000 n
+0000736143 00000 n
+0000729138 00000 n
+0000725355 00000 n
+0000808876 00000 n
+0000033896 00000 n
+0000036460 00000 n
+0000036612 00000 n
+0000036767 00000 n
+0000036922 00000 n
+0000037077 00000 n
+0000037231 00000 n
+0000037384 00000 n
+0000037535 00000 n
+0000037690 00000 n
+0000037845 00000 n
+0000038000 00000 n
+0000038152 00000 n
+0000038307 00000 n
+0000038462 00000 n
+0000038614 00000 n
+0000038768 00000 n
+0000038922 00000 n
+0000039076 00000 n
+0000039229 00000 n
+0000039384 00000 n
+0000039538 00000 n
+0000039690 00000 n
+0000039845 00000 n
+0000039999 00000 n
+0000040154 00000 n
+0000040309 00000 n
+0000040464 00000 n
+0000040619 00000 n
+0000040774 00000 n
+0000040929 00000 n
+0000043774 00000 n
+0000043926 00000 n
+0000044080 00000 n
+0000044235 00000 n
+0000041210 00000 n
+0000036062 00000 n
+0000034348 00000 n
+0000041084 00000 n
+0000041147 00000 n
+0000723164 00000 n
+0000714964 00000 n
+0000707325 00000 n
+0000696506 00000 n
+0000036199 00000 n
+0000044390 00000 n
+0000044544 00000 n
+0000044698 00000 n
+0000044851 00000 n
+0000045006 00000 n
+0000045161 00000 n
+0000045315 00000 n
+0000045467 00000 n
+0000045622 00000 n
+0000045777 00000 n
+0000045932 00000 n
+0000046086 00000 n
+0000046241 00000 n
+0000046396 00000 n
+0000046550 00000 n
+0000046705 00000 n
+0000046860 00000 n
+0000047012 00000 n
+0000047167 00000 n
+0000047321 00000 n
+0000047475 00000 n
+0000047630 00000 n
+0000047785 00000 n
+0000047940 00000 n
+0000048094 00000 n
+0000048249 00000 n
+0000048401 00000 n
+0000048556 00000 n
+0000048709 00000 n
+0000048864 00000 n
+0000049018 00000 n
+0000049173 00000 n
+0000049328 00000 n
+0000049482 00000 n
+0000049637 00000 n
+0000049790 00000 n
+0000049945 00000 n
+0000050098 00000 n
+0000053044 00000 n
+0000053200 00000 n
+0000053356 00000 n
+0000050315 00000 n
+0000043280 00000 n
+0000041321 00000 n
+0000050252 00000 n
+0000689540 00000 n
+0000043417 00000 n
+0000053510 00000 n
+0000053665 00000 n
+0000053820 00000 n
+0000053974 00000 n
+0000054126 00000 n
+0000054281 00000 n
+0000054437 00000 n
+0000054593 00000 n
+0000054749 00000 n
+0000054905 00000 n
+0000055061 00000 n
+0000055217 00000 n
+0000055373 00000 n
+0000055529 00000 n
+0000055686 00000 n
+0000055838 00000 n
+0000055993 00000 n
+0000056149 00000 n
+0000056305 00000 n
+0000056461 00000 n
+0000056617 00000 n
+0000056773 00000 n
+0000056928 00000 n
+0000057080 00000 n
+0000057236 00000 n
+0000057392 00000 n
+0000057548 00000 n
+0000057704 00000 n
+0000057860 00000 n
+0000058022 00000 n
+0000058184 00000 n
+0000058345 00000 n
+0000058506 00000 n
+0000058668 00000 n
+0000058829 00000 n
+0000058985 00000 n
+0000059137 00000 n
+0000059288 00000 n
+0000062026 00000 n
+0000062179 00000 n
+0000062334 00000 n
+0000059504 00000 n
+0000052558 00000 n
+0000050426 00000 n
+0000059441 00000 n
+0000052695 00000 n
+0000062487 00000 n
+0000062643 00000 n
+0000062799 00000 n
+0000062952 00000 n
+0000063105 00000 n
+0000063260 00000 n
+0000063422 00000 n
+0000063584 00000 n
+0000063746 00000 n
+0000063908 00000 n
+0000064069 00000 n
+0000064230 00000 n
+0000064392 00000 n
+0000064553 00000 n
+0000064709 00000 n
+0000064865 00000 n
+0000065021 00000 n
+0000065177 00000 n
+0000065333 00000 n
+0000065489 00000 n
+0000065645 00000 n
+0000065801 00000 n
+0000065958 00000 n
+0000066115 00000 n
+0000066271 00000 n
+0000066426 00000 n
+0000066582 00000 n
+0000066738 00000 n
+0000066895 00000 n
+0000067052 00000 n
+0000067272 00000 n
+0000061604 00000 n
+0000059615 00000 n
+0000067209 00000 n
+0000061741 00000 n
+0000071374 00000 n
+0000071007 00000 n
+0000067383 00000 n
+0000071128 00000 n
+0000679416 00000 n
+0000808154 00000 n
+0000075111 00000 n
+0000074865 00000 n
+0000071511 00000 n
+0000074986 00000 n
+0000078672 00000 n
+0000078364 00000 n
+0000075222 00000 n
+0000078485 00000 n
+0000080620 00000 n
+0000080436 00000 n
+0000078796 00000 n
+0000080557 00000 n
+0000084680 00000 n
+0000084372 00000 n
+0000080731 00000 n
+0000084493 00000 n
+0000808443 00000 n
+0000808299 00000 n
+0000089058 00000 n
+0000088750 00000 n
+0000084830 00000 n
+0000088871 00000 n
+0000668051 00000 n
+0000662975 00000 n
+0000809029 00000 n
+0000091908 00000 n
+0000091538 00000 n
+0000089234 00000 n
+0000091659 00000 n
+0000093553 00000 n
+0000093369 00000 n
+0000092045 00000 n
+0000093490 00000 n
+0000097092 00000 n
+0000096722 00000 n
+0000093703 00000 n
+0000096843 00000 n
+0000100496 00000 n
+0000100188 00000 n
+0000097229 00000 n
+0000100309 00000 n
+0000104698 00000 n
+0000104452 00000 n
+0000100659 00000 n
+0000104573 00000 n
+0000109056 00000 n
+0000108810 00000 n
+0000104861 00000 n
+0000108931 00000 n
+0000112300 00000 n
+0000112116 00000 n
+0000109219 00000 n
+0000112237 00000 n
+0000115842 00000 n
+0000115534 00000 n
+0000112437 00000 n
+0000115655 00000 n
+0000659594 00000 n
+0000808731 00000 n
+0000119278 00000 n
+0000119032 00000 n
+0000115979 00000 n
+0000119153 00000 n
+0000122393 00000 n
+0000122085 00000 n
+0000119441 00000 n
+0000122206 00000 n
+0000809182 00000 n
+0000126258 00000 n
+0000126011 00000 n
+0000122556 00000 n
+0000126132 00000 n
+0000130534 00000 n
+0000130350 00000 n
+0000126434 00000 n
+0000130471 00000 n
+0000134747 00000 n
+0000134500 00000 n
+0000130684 00000 n
+0000134621 00000 n
+0000138929 00000 n
+0000138682 00000 n
+0000134923 00000 n
+0000138803 00000 n
+0000143255 00000 n
+0000143008 00000 n
+0000139092 00000 n
+0000143129 00000 n
+0000148431 00000 n
+0000148247 00000 n
+0000143405 00000 n
+0000148368 00000 n
+0000154086 00000 n
+0000153902 00000 n
+0000148594 00000 n
+0000154023 00000 n
+0000157430 00000 n
+0000157183 00000 n
+0000154249 00000 n
+0000157304 00000 n
+0000808009 00000 n
+0000161232 00000 n
+0000161048 00000 n
+0000157606 00000 n
+0000161169 00000 n
+0000162854 00000 n
+0000162670 00000 n
+0000161395 00000 n
+0000162791 00000 n
+0000809335 00000 n
+0000166225 00000 n
+0000165915 00000 n
+0000162978 00000 n
+0000166036 00000 n
+0000169249 00000 n
+0000168939 00000 n
+0000166362 00000 n
+0000169060 00000 n
+0000172840 00000 n
+0000172593 00000 n
+0000169399 00000 n
+0000172714 00000 n
+0000176973 00000 n
+0000176726 00000 n
+0000173003 00000 n
+0000176847 00000 n
+0000180843 00000 n
+0000180596 00000 n
+0000177123 00000 n
+0000180717 00000 n
+0000185761 00000 n
+0000185514 00000 n
+0000181006 00000 n
+0000185635 00000 n
+0000190427 00000 n
+0000190181 00000 n
+0000185924 00000 n
+0000190302 00000 n
+0000196311 00000 n
+0000196127 00000 n
+0000190590 00000 n
+0000196248 00000 n
+0000199823 00000 n
+0000199576 00000 n
+0000196461 00000 n
+0000199697 00000 n
+0000202925 00000 n
+0000202741 00000 n
+0000199999 00000 n
+0000202862 00000 n
+0000809488 00000 n
+0000205433 00000 n
+0000205060 00000 n
+0000203088 00000 n
+0000205181 00000 n
+0000209885 00000 n
+0000209638 00000 n
+0000205570 00000 n
+0000209759 00000 n
+0000807863 00000 n
+0000214237 00000 n
+0000213990 00000 n
+0000210074 00000 n
+0000214111 00000 n
+0000217311 00000 n
+0000217001 00000 n
+0000214413 00000 n
+0000217122 00000 n
+0000220891 00000 n
+0000220644 00000 n
+0000217487 00000 n
+0000220765 00000 n
+0000225486 00000 n
+0000225239 00000 n
+0000221054 00000 n
+0000225360 00000 n
+0000229643 00000 n
+0000229397 00000 n
+0000225649 00000 n
+0000229518 00000 n
+0000232588 00000 n
+0000232404 00000 n
+0000229819 00000 n
+0000232525 00000 n
+0000234911 00000 n
+0000234601 00000 n
+0000232751 00000 n
+0000234722 00000 n
+0000808588 00000 n
+0000240832 00000 n
+0000240585 00000 n
+0000235061 00000 n
+0000240706 00000 n
+0000809641 00000 n
+0000245430 00000 n
+0000245183 00000 n
+0000241073 00000 n
+0000245304 00000 n
+0000249049 00000 n
+0000248739 00000 n
+0000245645 00000 n
+0000248860 00000 n
+0000252868 00000 n
+0000252558 00000 n
+0000249225 00000 n
+0000252679 00000 n
+0000258728 00000 n
+0000258481 00000 n
+0000253044 00000 n
+0000258602 00000 n
+0000261780 00000 n
+0000261407 00000 n
+0000258917 00000 n
+0000261528 00000 n
+0000265601 00000 n
+0000265354 00000 n
+0000261930 00000 n
+0000265475 00000 n
+0000268673 00000 n
+0000268363 00000 n
+0000265777 00000 n
+0000268484 00000 n
+0000272209 00000 n
+0000271960 00000 n
+0000268836 00000 n
+0000272082 00000 n
+0000276842 00000 n
+0000276589 00000 n
+0000272372 00000 n
+0000276713 00000 n
+0000280165 00000 n
+0000279911 00000 n
+0000277006 00000 n
+0000280036 00000 n
+0000809795 00000 n
+0000281965 00000 n
+0000281775 00000 n
+0000280342 00000 n
+0000281900 00000 n
+0000284720 00000 n
+0000284338 00000 n
+0000282129 00000 n
+0000284463 00000 n
+0000288958 00000 n
+0000288704 00000 n
+0000284858 00000 n
+0000288829 00000 n
+0000292741 00000 n
+0000292487 00000 n
+0000289109 00000 n
+0000292612 00000 n
+0000297210 00000 n
+0000296956 00000 n
+0000292918 00000 n
+0000297081 00000 n
+0000301249 00000 n
+0000300995 00000 n
+0000297387 00000 n
+0000301120 00000 n
+0000305913 00000 n
+0000305659 00000 n
+0000301413 00000 n
+0000305784 00000 n
+0000311362 00000 n
+0000311108 00000 n
+0000306064 00000 n
+0000311233 00000 n
+0000315472 00000 n
+0000315218 00000 n
+0000311526 00000 n
+0000315343 00000 n
+0000318463 00000 n
+0000318273 00000 n
+0000315623 00000 n
+0000318398 00000 n
+0000809959 00000 n
+0000321218 00000 n
+0000320836 00000 n
+0000318601 00000 n
+0000320961 00000 n
+0000325540 00000 n
+0000325222 00000 n
+0000321356 00000 n
+0000325347 00000 n
+0000329609 00000 n
+0000329419 00000 n
+0000325717 00000 n
+0000329544 00000 n
+0000333490 00000 n
+0000333173 00000 n
+0000329760 00000 n
+0000333298 00000 n
+0000338131 00000 n
+0000337877 00000 n
+0000333654 00000 n
+0000338002 00000 n
+0000343013 00000 n
+0000342759 00000 n
+0000338282 00000 n
+0000342884 00000 n
+0000347721 00000 n
+0000347531 00000 n
+0000343164 00000 n
+0000347656 00000 n
+0000352539 00000 n
+0000352221 00000 n
+0000347859 00000 n
+0000352346 00000 n
+0000355495 00000 n
+0000355305 00000 n
+0000352690 00000 n
0000355430 00000 n
-0000355240 00000 n
-0000352636 00000 n
-0000355365 00000 n
-0000358613 00000 n
-0000358231 00000 n
-0000355568 00000 n
-0000358356 00000 n
-0000801493 00000 n
-0000362373 00000 n
-0000362056 00000 n
-0000358764 00000 n
-0000362181 00000 n
-0000366461 00000 n
-0000366271 00000 n
-0000362537 00000 n
-0000366396 00000 n
-0000370683 00000 n
-0000370429 00000 n
-0000366612 00000 n
-0000370554 00000 n
-0000375813 00000 n
-0000375559 00000 n
-0000370834 00000 n
-0000375684 00000 n
-0000379882 00000 n
-0000379628 00000 n
-0000375964 00000 n
-0000379753 00000 n
-0000384218 00000 n
-0000383900 00000 n
-0000380033 00000 n
-0000384025 00000 n
-0000648421 00000 n
-0000388165 00000 n
-0000387911 00000 n
-0000384344 00000 n
-0000388036 00000 n
-0000393516 00000 n
-0000393326 00000 n
-0000388329 00000 n
-0000393451 00000 n
-0000398629 00000 n
-0000398375 00000 n
-0000393680 00000 n
-0000398500 00000 n
-0000404684 00000 n
-0000404494 00000 n
-0000398832 00000 n
-0000404619 00000 n
-0000801657 00000 n
-0000410482 00000 n
-0000410228 00000 n
-0000404822 00000 n
-0000410353 00000 n
-0000414782 00000 n
-0000414592 00000 n
-0000410633 00000 n
-0000414717 00000 n
-0000418651 00000 n
-0000418461 00000 n
-0000414946 00000 n
-0000418586 00000 n
-0000423371 00000 n
-0000423053 00000 n
-0000418828 00000 n
-0000423178 00000 n
-0000427110 00000 n
-0000426792 00000 n
-0000423574 00000 n
-0000426917 00000 n
-0000431001 00000 n
-0000430747 00000 n
-0000427248 00000 n
-0000430872 00000 n
-0000435135 00000 n
-0000435482 00000 n
-0000434962 00000 n
-0000431179 00000 n
-0000435289 00000 n
-0000645573 00000 n
-0000435418 00000 n
-0000643778 00000 n
-0000639422 00000 n
-0000435104 00000 n
-0000440934 00000 n
-0000440680 00000 n
-0000435701 00000 n
-0000440805 00000 n
-0000636785 00000 n
-0000446111 00000 n
-0000445857 00000 n
-0000441112 00000 n
-0000445982 00000 n
-0000448003 00000 n
-0000447813 00000 n
-0000446288 00000 n
-0000447938 00000 n
-0000801821 00000 n
-0000451309 00000 n
-0000451055 00000 n
-0000448141 00000 n
-0000451180 00000 n
-0000452940 00000 n
-0000452750 00000 n
-0000451473 00000 n
-0000452875 00000 n
-0000457133 00000 n
-0000457500 00000 n
-0000456960 00000 n
-0000453078 00000 n
-0000457307 00000 n
-0000457102 00000 n
-0000461161 00000 n
-0000460971 00000 n
-0000457677 00000 n
-0000461096 00000 n
-0000465101 00000 n
-0000464783 00000 n
-0000461325 00000 n
-0000464908 00000 n
-0000466263 00000 n
-0000466073 00000 n
-0000465239 00000 n
-0000466198 00000 n
-0000469606 00000 n
-0000469224 00000 n
-0000466401 00000 n
-0000469349 00000 n
-0000473176 00000 n
-0000472922 00000 n
-0000469744 00000 n
-0000473047 00000 n
-0000475692 00000 n
-0000475310 00000 n
-0000473353 00000 n
-0000475435 00000 n
-0000478113 00000 n
-0000477923 00000 n
-0000475791 00000 n
-0000478048 00000 n
-0000801985 00000 n
-0000482542 00000 n
-0000482288 00000 n
-0000478212 00000 n
-0000482413 00000 n
-0000485565 00000 n
-0000485375 00000 n
-0000482654 00000 n
-0000485500 00000 n
-0000488333 00000 n
-0000488143 00000 n
-0000485664 00000 n
-0000488268 00000 n
+0000358676 00000 n
+0000358294 00000 n
+0000355633 00000 n
+0000358419 00000 n
+0000810123 00000 n
+0000362477 00000 n
+0000362160 00000 n
+0000358827 00000 n
+0000362285 00000 n
+0000366569 00000 n
+0000366379 00000 n
+0000362641 00000 n
+0000366504 00000 n
+0000370795 00000 n
+0000370541 00000 n
+0000366720 00000 n
+0000370666 00000 n
+0000375930 00000 n
+0000375676 00000 n
+0000370946 00000 n
+0000375801 00000 n
+0000380018 00000 n
+0000379764 00000 n
+0000376081 00000 n
+0000379889 00000 n
+0000384354 00000 n
+0000384036 00000 n
+0000380169 00000 n
+0000384161 00000 n
+0000657098 00000 n
+0000388300 00000 n
+0000388046 00000 n
+0000384480 00000 n
+0000388171 00000 n
+0000393663 00000 n
+0000393473 00000 n
+0000388464 00000 n
+0000393598 00000 n
+0000398774 00000 n
+0000398520 00000 n
+0000393827 00000 n
+0000398645 00000 n
+0000404827 00000 n
+0000404637 00000 n
+0000398977 00000 n
+0000404762 00000 n
+0000810287 00000 n
+0000410625 00000 n
+0000410371 00000 n
+0000404965 00000 n
+0000410496 00000 n
+0000414928 00000 n
+0000414738 00000 n
+0000410776 00000 n
+0000414863 00000 n
+0000418799 00000 n
+0000418609 00000 n
+0000415092 00000 n
+0000418734 00000 n
+0000423523 00000 n
+0000423205 00000 n
+0000418976 00000 n
+0000423330 00000 n
+0000427262 00000 n
+0000426944 00000 n
+0000423726 00000 n
+0000427069 00000 n
+0000431153 00000 n
+0000430899 00000 n
+0000427400 00000 n
+0000431024 00000 n
+0000435283 00000 n
+0000435630 00000 n
+0000435110 00000 n
+0000431331 00000 n
+0000435437 00000 n
+0000654250 00000 n
+0000435566 00000 n
+0000652455 00000 n
+0000648099 00000 n
+0000435252 00000 n
+0000441080 00000 n
+0000440826 00000 n
+0000435849 00000 n
+0000440951 00000 n
+0000645462 00000 n
+0000446256 00000 n
+0000446002 00000 n
+0000441258 00000 n
+0000446127 00000 n
+0000448153 00000 n
+0000447963 00000 n
+0000446433 00000 n
+0000448088 00000 n
+0000810451 00000 n
+0000451458 00000 n
+0000451204 00000 n
+0000448291 00000 n
+0000451329 00000 n
+0000453092 00000 n
+0000452902 00000 n
+0000451622 00000 n
+0000453027 00000 n
+0000457285 00000 n
+0000457652 00000 n
+0000457112 00000 n
+0000453230 00000 n
+0000457459 00000 n
+0000457254 00000 n
+0000461316 00000 n
+0000461126 00000 n
+0000457829 00000 n
+0000461251 00000 n
+0000465258 00000 n
+0000464940 00000 n
+0000461480 00000 n
+0000465065 00000 n
+0000466421 00000 n
+0000466231 00000 n
+0000465396 00000 n
+0000466356 00000 n
+0000469776 00000 n
+0000469394 00000 n
+0000466559 00000 n
+0000469519 00000 n
+0000473349 00000 n
+0000473095 00000 n
+0000469914 00000 n
+0000473220 00000 n
+0000475864 00000 n
+0000475482 00000 n
+0000473526 00000 n
+0000475607 00000 n
+0000478285 00000 n
+0000478095 00000 n
+0000475963 00000 n
+0000478220 00000 n
+0000810615 00000 n
+0000482714 00000 n
+0000482460 00000 n
+0000478384 00000 n
+0000482585 00000 n
+0000485742 00000 n
+0000485552 00000 n
+0000482826 00000 n
+0000485677 00000 n
+0000488511 00000 n
+0000488321 00000 n
+0000485841 00000 n
+0000488446 00000 n
+0000491190 00000 n
0000491000 00000 n
-0000490810 00000 n
-0000488432 00000 n
-0000490935 00000 n
-0000494006 00000 n
-0000493816 00000 n
-0000491099 00000 n
-0000493941 00000 n
-0000497275 00000 n
-0000497085 00000 n
-0000494105 00000 n
-0000497210 00000 n
-0000499706 00000 n
-0000499516 00000 n
-0000497374 00000 n
-0000499641 00000 n
-0000502192 00000 n
-0000502002 00000 n
-0000499805 00000 n
-0000502127 00000 n
-0000505201 00000 n
-0000504883 00000 n
-0000502291 00000 n
-0000505008 00000 n
-0000507788 00000 n
-0000507534 00000 n
-0000505313 00000 n
-0000507659 00000 n
-0000802149 00000 n
-0000511074 00000 n
-0000510756 00000 n
-0000507900 00000 n
-0000510881 00000 n
-0000514183 00000 n
-0000513929 00000 n
-0000511186 00000 n
-0000514054 00000 n
-0000516881 00000 n
-0000516627 00000 n
-0000514295 00000 n
-0000516752 00000 n
-0000520346 00000 n
-0000520092 00000 n
-0000516993 00000 n
-0000520217 00000 n
-0000523231 00000 n
-0000522977 00000 n
-0000520458 00000 n
-0000523102 00000 n
-0000526661 00000 n
-0000526471 00000 n
-0000523343 00000 n
-0000526596 00000 n
-0000530353 00000 n
-0000530163 00000 n
-0000526760 00000 n
-0000530288 00000 n
-0000533964 00000 n
-0000533774 00000 n
-0000530452 00000 n
-0000533899 00000 n
-0000537384 00000 n
-0000537130 00000 n
-0000534063 00000 n
-0000537255 00000 n
-0000540743 00000 n
-0000540553 00000 n
-0000537496 00000 n
-0000540678 00000 n
-0000802313 00000 n
-0000544635 00000 n
-0000544445 00000 n
-0000540842 00000 n
-0000544570 00000 n
-0000547834 00000 n
-0000547644 00000 n
-0000544734 00000 n
-0000547769 00000 n
-0000551834 00000 n
-0000551580 00000 n
-0000547933 00000 n
-0000551705 00000 n
-0000555060 00000 n
-0000554870 00000 n
-0000551946 00000 n
-0000554995 00000 n
-0000558795 00000 n
-0000558542 00000 n
-0000555159 00000 n
-0000558667 00000 n
-0000562701 00000 n
-0000562511 00000 n
-0000558907 00000 n
-0000562636 00000 n
-0000565969 00000 n
-0000565715 00000 n
-0000562800 00000 n
-0000565840 00000 n
-0000569095 00000 n
-0000568905 00000 n
-0000566081 00000 n
-0000569030 00000 n
-0000572891 00000 n
-0000572701 00000 n
-0000569194 00000 n
-0000572826 00000 n
-0000576022 00000 n
-0000575704 00000 n
-0000572990 00000 n
-0000575829 00000 n
-0000802477 00000 n
-0000579047 00000 n
-0000578857 00000 n
-0000576134 00000 n
-0000578982 00000 n
-0000582808 00000 n
-0000582618 00000 n
-0000579146 00000 n
-0000582743 00000 n
-0000585824 00000 n
-0000585634 00000 n
-0000582907 00000 n
-0000585759 00000 n
-0000589087 00000 n
-0000588833 00000 n
-0000585923 00000 n
-0000588958 00000 n
-0000592180 00000 n
-0000591990 00000 n
-0000589199 00000 n
-0000592115 00000 n
-0000596067 00000 n
-0000595877 00000 n
-0000592279 00000 n
-0000596002 00000 n
-0000599520 00000 n
-0000599330 00000 n
-0000596166 00000 n
-0000599455 00000 n
-0000602890 00000 n
-0000602636 00000 n
-0000599619 00000 n
-0000602761 00000 n
-0000606566 00000 n
-0000606376 00000 n
-0000603002 00000 n
-0000606501 00000 n
-0000610176 00000 n
-0000609922 00000 n
-0000606665 00000 n
-0000610047 00000 n
-0000802641 00000 n
-0000613291 00000 n
-0000613101 00000 n
-0000610288 00000 n
-0000613226 00000 n
-0000616159 00000 n
-0000615969 00000 n
-0000613390 00000 n
-0000616094 00000 n
-0000619071 00000 n
-0000618881 00000 n
-0000616258 00000 n
-0000619006 00000 n
-0000621910 00000 n
-0000621720 00000 n
-0000619170 00000 n
-0000621845 00000 n
-0000624452 00000 n
-0000624199 00000 n
-0000622009 00000 n
-0000624324 00000 n
-0000626757 00000 n
-0000626503 00000 n
-0000624564 00000 n
-0000626628 00000 n
-0000629601 00000 n
-0000629347 00000 n
-0000626869 00000 n
-0000629472 00000 n
-0000632484 00000 n
-0000632230 00000 n
-0000629713 00000 n
-0000632355 00000 n
-0000634465 00000 n
-0000634211 00000 n
-0000632596 00000 n
-0000634336 00000 n
-0000634577 00000 n
-0000636059 00000 n
-0000634666 00000 n
-0000634772 00000 n
-0000636308 00000 n
-0000636950 00000 n
-0000637161 00000 n
-0000638697 00000 n
-0000637261 00000 n
-0000637362 00000 n
-0000638937 00000 n
-0000639580 00000 n
-0000639784 00000 n
-0000642979 00000 n
-0000640047 00000 n
-0000640157 00000 n
-0000643220 00000 n
-0000643937 00000 n
-0000644142 00000 n
-0000644887 00000 n
-0000644175 00000 n
-0000644270 00000 n
-0000645129 00000 n
-0000645732 00000 n
-0000645937 00000 n
-0000647687 00000 n
-0000646048 00000 n
-0000646152 00000 n
-0000647934 00000 n
-0000648585 00000 n
-0000648795 00000 n
-0000648854 00000 n
-0000649147 00000 n
-0000649312 00000 n
-0000649337 00000 n
-0000650225 00000 n
-0000649381 00000 n
-0000649479 00000 n
-0000650467 00000 n
-0000651075 00000 n
-0000651280 00000 n
-0000653527 00000 n
-0000651482 00000 n
-0000651588 00000 n
-0000653768 00000 n
-0000654456 00000 n
-0000654661 00000 n
-0000658557 00000 n
-0000654920 00000 n
-0000655026 00000 n
-0000658805 00000 n
-0000659537 00000 n
-0000659747 00000 n
-0000659958 00000 n
-0000660238 00000 n
-0000660597 00000 n
-0000669662 00000 n
-0000661030 00000 n
-0000661136 00000 n
-0000669903 00000 n
-0000670897 00000 n
-0000671102 00000 n
-0000679889 00000 n
-0000671528 00000 n
-0000671640 00000 n
-0000680138 00000 n
-0000681027 00000 n
-0000681238 00000 n
-0000686932 00000 n
-0000681598 00000 n
-0000681705 00000 n
-0000687172 00000 n
-0000687986 00000 n
-0000688190 00000 n
-0000697573 00000 n
-0000688697 00000 n
-0000688817 00000 n
-0000697815 00000 n
-0000698807 00000 n
-0000699013 00000 n
-0000705373 00000 n
-0000699410 00000 n
-0000699521 00000 n
-0000705613 00000 n
-0000706443 00000 n
-0000706646 00000 n
-0000713551 00000 n
-0000707057 00000 n
-0000707165 00000 n
-0000713791 00000 n
-0000714643 00000 n
-0000714846 00000 n
-0000715969 00000 n
-0000714925 00000 n
-0000715027 00000 n
-0000716210 00000 n
-0000716836 00000 n
-0000717041 00000 n
-0000719673 00000 n
-0000717295 00000 n
-0000717401 00000 n
-0000719914 00000 n
-0000720619 00000 n
-0000720824 00000 n
-0000726619 00000 n
-0000721198 00000 n
-0000721305 00000 n
-0000726861 00000 n
-0000727672 00000 n
-0000727878 00000 n
-0000730073 00000 n
-0000728108 00000 n
-0000728214 00000 n
-0000730314 00000 n
-0000731014 00000 n
-0000742401 00000 n
-0000731219 00000 n
-0000750502 00000 n
-0000742716 00000 n
-0000766793 00000 n
-0000750740 00000 n
-0000775765 00000 n
-0000767203 00000 n
-0000784237 00000 n
-0000776045 00000 n
-0000791788 00000 n
-0000784565 00000 n
-0000799000 00000 n
-0000792029 00000 n
-0000802805 00000 n
-0000802964 00000 n
-0000803092 00000 n
-0000803169 00000 n
-0000816863 00000 n
-0000817576 00000 n
-0000818279 00000 n
-0000818970 00000 n
-0000819609 00000 n
-0000820271 00000 n
-0000820975 00000 n
-0000821789 00000 n
-0000822581 00000 n
-0000823360 00000 n
-0000823987 00000 n
-0000824155 00000 n
-0000824195 00000 n
-0000824327 00000 n
+0000488610 00000 n
+0000491125 00000 n
+0000494211 00000 n
+0000494021 00000 n
+0000491289 00000 n
+0000494146 00000 n
+0000497427 00000 n
+0000497237 00000 n
+0000494310 00000 n
+0000497362 00000 n
+0000499939 00000 n
+0000499749 00000 n
+0000497526 00000 n
+0000499874 00000 n
+0000502419 00000 n
+0000502229 00000 n
+0000500038 00000 n
+0000502354 00000 n
+0000505648 00000 n
+0000505330 00000 n
+0000502518 00000 n
+0000505455 00000 n
+0000508049 00000 n
+0000507859 00000 n
+0000505760 00000 n
+0000507984 00000 n
+0000810779 00000 n
+0000510948 00000 n
+0000510630 00000 n
+0000508148 00000 n
+0000510755 00000 n
+0000514552 00000 n
+0000514234 00000 n
+0000511060 00000 n
+0000514359 00000 n
+0000517044 00000 n
+0000516790 00000 n
+0000514664 00000 n
+0000516915 00000 n
+0000520365 00000 n
+0000520111 00000 n
+0000517156 00000 n
+0000520236 00000 n
+0000523702 00000 n
+0000523512 00000 n
+0000520477 00000 n
+0000523637 00000 n
+0000527230 00000 n
+0000526976 00000 n
+0000523801 00000 n
+0000527101 00000 n
+0000530592 00000 n
+0000530402 00000 n
+0000527342 00000 n
+0000530527 00000 n
+0000534069 00000 n
+0000533879 00000 n
+0000530691 00000 n
+0000534004 00000 n
+0000537097 00000 n
+0000536907 00000 n
+0000534168 00000 n
+0000537032 00000 n
+0000540596 00000 n
+0000540342 00000 n
+0000537196 00000 n
+0000540467 00000 n
+0000810943 00000 n
+0000543790 00000 n
+0000543600 00000 n
+0000540708 00000 n
+0000543725 00000 n
+0000547487 00000 n
+0000547297 00000 n
+0000543889 00000 n
+0000547422 00000 n
+0000550651 00000 n
+0000550461 00000 n
+0000547586 00000 n
+0000550586 00000 n
+0000554179 00000 n
+0000553926 00000 n
+0000550750 00000 n
+0000554051 00000 n
+0000557689 00000 n
+0000557499 00000 n
+0000554291 00000 n
+0000557624 00000 n
+0000561080 00000 n
+0000560890 00000 n
+0000557788 00000 n
+0000561015 00000 n
+0000564858 00000 n
+0000564604 00000 n
+0000561179 00000 n
+0000564729 00000 n
+0000568439 00000 n
+0000568249 00000 n
+0000564970 00000 n
+0000568374 00000 n
+0000571756 00000 n
+0000571502 00000 n
+0000568538 00000 n
+0000571627 00000 n
+0000575198 00000 n
+0000575008 00000 n
+0000571868 00000 n
+0000575133 00000 n
+0000811107 00000 n
+0000578985 00000 n
+0000578667 00000 n
+0000575297 00000 n
+0000578792 00000 n
+0000582289 00000 n
+0000582099 00000 n
+0000579097 00000 n
+0000582224 00000 n
+0000585396 00000 n
+0000585206 00000 n
+0000582388 00000 n
+0000585331 00000 n
+0000589066 00000 n
+0000588876 00000 n
+0000585495 00000 n
+0000589001 00000 n
+0000592021 00000 n
+0000591831 00000 n
+0000589165 00000 n
+0000591956 00000 n
+0000595444 00000 n
+0000595190 00000 n
+0000592120 00000 n
+0000595315 00000 n
+0000598648 00000 n
+0000598458 00000 n
+0000595556 00000 n
+0000598583 00000 n
+0000602218 00000 n
+0000602028 00000 n
+0000598747 00000 n
+0000602153 00000 n
+0000605798 00000 n
+0000605608 00000 n
+0000602317 00000 n
+0000605733 00000 n
+0000609057 00000 n
+0000608803 00000 n
+0000605897 00000 n
+0000608928 00000 n
+0000811271 00000 n
+0000612343 00000 n
+0000612153 00000 n
+0000609169 00000 n
+0000612278 00000 n
+0000616199 00000 n
+0000616009 00000 n
+0000612442 00000 n
+0000616134 00000 n
+0000619745 00000 n
+0000619492 00000 n
+0000616298 00000 n
+0000619617 00000 n
+0000622795 00000 n
+0000622605 00000 n
+0000619857 00000 n
+0000622730 00000 n
+0000625913 00000 n
+0000625723 00000 n
+0000622894 00000 n
+0000625848 00000 n
+0000629051 00000 n
+0000628861 00000 n
+0000626012 00000 n
+0000628986 00000 n
+0000631990 00000 n
+0000631800 00000 n
+0000629150 00000 n
+0000631925 00000 n
+0000634506 00000 n
+0000634252 00000 n
+0000632089 00000 n
+0000634377 00000 n
+0000637140 00000 n
+0000636887 00000 n
+0000634618 00000 n
+0000637012 00000 n
+0000640455 00000 n
+0000640201 00000 n
+0000637252 00000 n
+0000640326 00000 n
+0000811435 00000 n
+0000643142 00000 n
+0000642824 00000 n
+0000640567 00000 n
+0000642949 00000 n
+0000643254 00000 n
+0000644736 00000 n
+0000643343 00000 n
+0000643449 00000 n
+0000644985 00000 n
+0000645627 00000 n
+0000645838 00000 n
+0000647374 00000 n
+0000645938 00000 n
+0000646039 00000 n
+0000647614 00000 n
+0000648257 00000 n
+0000648461 00000 n
+0000651656 00000 n
+0000648724 00000 n
+0000648834 00000 n
+0000651897 00000 n
+0000652614 00000 n
+0000652819 00000 n
+0000653564 00000 n
+0000652852 00000 n
+0000652947 00000 n
+0000653806 00000 n
+0000654409 00000 n
+0000654614 00000 n
+0000656364 00000 n
+0000654725 00000 n
+0000654829 00000 n
+0000656611 00000 n
+0000657262 00000 n
+0000657472 00000 n
+0000657531 00000 n
+0000657824 00000 n
+0000657989 00000 n
+0000658014 00000 n
+0000658902 00000 n
+0000658058 00000 n
+0000658156 00000 n
+0000659144 00000 n
+0000659752 00000 n
+0000659957 00000 n
+0000662204 00000 n
+0000660159 00000 n
+0000660265 00000 n
+0000662445 00000 n
+0000663133 00000 n
+0000663338 00000 n
+0000667234 00000 n
+0000663597 00000 n
+0000663703 00000 n
+0000667482 00000 n
+0000668214 00000 n
+0000668424 00000 n
+0000668635 00000 n
+0000668915 00000 n
+0000669274 00000 n
+0000678339 00000 n
+0000669707 00000 n
+0000669813 00000 n
+0000678580 00000 n
+0000679574 00000 n
+0000679779 00000 n
+0000688566 00000 n
+0000680205 00000 n
+0000680317 00000 n
+0000688815 00000 n
+0000689704 00000 n
+0000689915 00000 n
+0000695609 00000 n
+0000690275 00000 n
+0000690382 00000 n
+0000695849 00000 n
+0000696663 00000 n
+0000696867 00000 n
+0000706250 00000 n
+0000697374 00000 n
+0000697494 00000 n
+0000706492 00000 n
+0000707484 00000 n
+0000707690 00000 n
+0000714050 00000 n
+0000708087 00000 n
+0000708198 00000 n
+0000714290 00000 n
+0000715120 00000 n
+0000715323 00000 n
+0000722228 00000 n
+0000715734 00000 n
+0000715842 00000 n
+0000722468 00000 n
+0000723320 00000 n
+0000723523 00000 n
+0000724646 00000 n
+0000723602 00000 n
+0000723704 00000 n
+0000724887 00000 n
+0000725513 00000 n
+0000725718 00000 n
+0000728350 00000 n
+0000725972 00000 n
+0000726078 00000 n
+0000728591 00000 n
+0000729296 00000 n
+0000729501 00000 n
+0000735254 00000 n
+0000729871 00000 n
+0000729978 00000 n
+0000735496 00000 n
+0000736302 00000 n
+0000736508 00000 n
+0000738703 00000 n
+0000736738 00000 n
+0000736844 00000 n
+0000738944 00000 n
+0000739644 00000 n
+0000751031 00000 n
+0000739849 00000 n
+0000759132 00000 n
+0000751346 00000 n
+0000775423 00000 n
+0000759370 00000 n
+0000784395 00000 n
+0000775833 00000 n
+0000792867 00000 n
+0000784675 00000 n
+0000800418 00000 n
+0000793195 00000 n
+0000807630 00000 n
+0000800659 00000 n
+0000811526 00000 n
+0000811685 00000 n
+0000811822 00000 n
+0000811899 00000 n
+0000825593 00000 n
+0000826306 00000 n
+0000827009 00000 n
+0000827705 00000 n
+0000828344 00000 n
+0000829003 00000 n
+0000829700 00000 n
+0000830514 00000 n
+0000831309 00000 n
+0000832086 00000 n
+0000832757 00000 n
+0000832925 00000 n
+0000832965 00000 n
+0000833097 00000 n
trailer
-<< /Size 1573 /Root 1571 0 R /Info 1572 0 R /ID [ <E740AD79D6A306FAF6B8CBCB47499EC8> <E740AD79D6A306FAF6B8CBCB47499EC8> ] >>
+<< /Size 1582 /Root 1580 0 R /Info 1581 0 R /ID [ <685E0BB890F211700943D5537F72E4DE> <685E0BB890F211700943D5537F72E4DE> ] >>
startxref
-824611
+833381
%%EOF
diff --git a/macros/latex/contrib/functional/functional.sty b/macros/latex/contrib/functional/functional.sty
index ab012e196d..c1eb69900f 100644
--- a/macros/latex/contrib/functional/functional.sty
+++ b/macros/latex/contrib/functional/functional.sty
@@ -14,7 +14,7 @@
\NeedsTeXFormat{LaTeX2e}[2018-04-01]
\RequirePackage{expl3}
-\ProvidesExplPackage{functional}{2022-05-14}{2022F}
+\ProvidesExplPackage{functional}{2022-05-22}{2022G}
{^^JIntuitive Functional Programming Interface for LaTeX2}
\cs_generate_variant:Nn \iow_log:n { V }
@@ -169,6 +169,7 @@
}
\cs_generate_variant:Nn \__fun_new_function:Nnn { cne }
+\cs_set_eq:NN \prgNewFunction \__fun_new_function:Nnn
\cs_set_eq:NN \PrgNewFunction \__fun_new_function:Nnn
\tl_new:N \g__fun_last_result_tl
@@ -243,6 +244,7 @@
}
}
+\cs_set_eq:NN \prgNewConditional \__fun_new_conditional:Nnn
\cs_set_eq:NN \PrgNewConditional \__fun_new_conditional:Nnn
\int_new:N \g__fun_nesting_level_int
@@ -577,21 +579,30 @@
%%> \subsection{Creating Some Useful Functions}
%%% --------------------------------------------------------
-\PrgNewFunction \PrgSetEqFunction { N N }
+\NewDocumentCommand \fun@NewTwoFunctions {mmmm}
+ {
+ \prgNewFunction #1 {#3} {#4}
+ \AtBeginDocument { \cs_if_exist:NF #2 { \prgNewFunction #2 {#3} {#4} } }
+ }
+
+\NewDocumentCommand \fun@NewTwoConditionals {mmmm}
+ {
+ \prgNewConditional #1 {#3} {#4}
+ \AtBeginDocument { \cs_if_exist:NF #2 { \prgNewConditional #2 {#3} {#4} } }
+ }
+
+\fun@NewTwoFunctions \prgSetEqFunction \PrgSetEqFunction { N N }
{
\cs_set_eq:NN #1 #2
\cs_set_eq:cc { __fun_defined_ \cs_to_str:N #1 : w }
{ __fun_defined_ \cs_to_str:N #2 : w }
}
-\cs_if_exist:NF \Do { \PrgNewFunction \Do { n } { #1 } }
-\PrgNewFunction \PrgDo { n } { #1 }
+\fun@NewTwoFunctions \prgDo \Do {n} {#1}
-\cs_set_eq:NN \Break \prg_break:
-\cs_set_eq:NN \PrgBreak \prg_break:
+\cs_set_eq:NN \prgBreak \prg_break:
-\cs_set_eq:NN \BreakDo \prg_break:n
-\cs_set_eq:NN \PrgBreakDo \prg_break:n
+\cs_set_eq:NN \prgBreakDo \prg_break:n
%%% --------------------------------------------------------
%%> \subsection{Return Values and Return Processors}
@@ -603,7 +614,7 @@
}
\cs_generate_variant:Nn \__fun_put_result:n { V, e, f, o }
-\PrgNewFunction \Return { m }
+\fun@NewTwoFunctions \prgReturn \Return { m }
{
\__fun_put_result:n { #1 }
}
@@ -702,7 +713,7 @@
%%> \subsection{Printing Contents to the Input Stream}
%%% --------------------------------------------------------
-\PrgNewFunction \PrgPrint { m }
+\fun@NewTwoFunctions \prgPrint \Print { m }
{
\tl_log:n {running PrgPrint}
\int_set_eq:NN \l__fun_return_level_int \g__fun_nesting_level_int
@@ -711,35 +722,34 @@
\tl_gclear:N \gResultTl
}
-\PrgSetEqFunction \Print \PrgPrint
-
%%% --------------------------------------------------------
%%> \subsection{Filling Arguments into Inline Commands}
%%% --------------------------------------------------------
%% To make better tracing log, we want to expand the return value once,
%% but at the same time avoid evaluating the leading function in \gResultTl,
-%% therefore we need to use \tl_set:Nn command instead of \TlSet function.
+%% therefore we need to use \tl_set:Nn command instead of \tlSet function.
-\PrgNewFunction \PrgRunOneArgCode { m n }
+\fun@NewTwoFunctions \prgRunOneArgCode \PrgRunOneArgCode { m n }
{
\cs_set:Npn \__fun_one_arg_cmd:n ##1 {#2}
\exp_args:NNo \tl_set:Nn \gResultTl { \__fun_one_arg_cmd:n {#1} }
}
-\PrgNewFunction \PrgRunTwoArgCode { m m n }
+\fun@NewTwoFunctions \prgRunTwoArgCode \PrgRunTwoArgCode { m m n }
{
\cs_set:Npn \__fun_two_arg_cmd:nn ##1 ##2 {#3}
\exp_args:NNo \tl_set:Nn \gResultTl { \__fun_two_arg_cmd:nn {#1} {#2} }
}
-\PrgNewFunction \PrgRunThreeArgCode { m m m n }
+\fun@NewTwoFunctions \prgRunThreeArgCode \PrgRunThreeArgCode { m m m n }
{
\cs_set:Npn \__fun_three_arg_cmd:nnn ##1 ##2 ##3 {#4}
- \exp_args:NNo \tl_set:Nn \gResultTl { \__fun_three_arg_cmd:nnn {#1} {#2} {#3} }
+ \exp_args:NNo \tl_set:Nn \gResultTl
+ { \__fun_three_arg_cmd:nnn {#1} {#2} {#3} }
}
-\PrgNewFunction \PrgRunFourArgCode { m m m m n }
+\fun@NewTwoFunctions \prgRunFourArgCode \PrgRunFourArgCode { m m m m n }
{
\cs_set:Npn \__fun_four_arg_cmd:nnnn ##1 ##2 ##3 ##4 {#5}
\exp_args:NNo \tl_set:Nn \gResultTl
@@ -787,7 +797,8 @@
{ \prg_return_true: }
}
-\PrgNewFunction \Local { } { \bool_gset_true:N \g__fun_variable_local_bool }
+\fun@NewTwoFunctions \prgLocal \Local { }
+ { \bool_gset_true:N \g__fun_variable_local_bool }
%% We must not put an assignment inside a group
\cs_new_protected:Npn \__fun_do_assignment:Nnn #1 #2 #3
@@ -801,34 +812,38 @@
%%> \section{Interfaces for Argument Using (Use)}
%%% --------------------------------------------------------
-\PrgNewFunction \Name { m }
+\fun@NewTwoFunctions \expName \Name { m }
{
\exp_args:Nc \__fun_put_result:n { #1 }
}
-\PrgSetEqFunction \ExpName \Name
-\PrgNewFunction \Value { M }
+\fun@NewTwoFunctions \expValue \Value { M }
{
\__fun_put_result:V #1
}
-\PrgSetEqFunction \ExpValue \Value
-\PrgNewFunction \Expand { m }
+\fun@NewTwoFunctions \expWhole \Expand { m }
{
\__fun_put_result:e { #1 }
}
-\PrgSetEqFunction \ExpWhole \Expand
-\PrgNewFunction \ExpPartial { m }
+\prgNewFunction \expPartial { m }
{
\__fun_put_result:f { #1 }
}
-\PrgNewFunction \ExpOnce { m }
+\prgNewFunction \expOnce { m }
{
\__fun_put_result:o { #1 }
}
+\cs_set_eq:NN \unExpand \exp_not:n
+\cs_set_eq:NN \noExpand \exp_not:N
+\cs_set_eq:NN \onlyName \exp_not:c
+\cs_set_eq:NN \onlyValue \exp_not:V
+\cs_set_eq:NN \onlyPartial \exp_not:f
+\cs_set_eq:NN \onlyOnce \exp_not:o
+
\cs_set_eq:NN \UnExpand \exp_not:n
\cs_set_eq:NN \NoExpand \exp_not:N
\cs_set_eq:NN \OnlyName \exp_not:c
@@ -836,13 +851,13 @@
\cs_set_eq:NN \OnlyPartial \exp_not:f
\cs_set_eq:NN \OnlyOnce \exp_not:o
-\PrgNewFunction \UseOne { n } { \Return { #1 } }
+\fun@NewTwoFunctions \useOne \UseOne { n } { \prgReturn {#1} }
-\PrgNewFunction \GobbleOne { n } { \Return { } }
+\fun@NewTwoFunctions \gobbleOne \GobbleOne { n } { }
-\PrgNewFunction \UseGobble { n n } { \UseOne { #1 } }
+\fun@NewTwoFunctions \useGobble \UseGobble { n n } { \prgReturn {#1} }
-\PrgNewFunction \GobbleUse { n n } { \UseOne { #2 } }
+\fun@NewTwoFunctions \gobbleUse \GobbleUse { n n } { \prgReturn {#2} }
%%% --------------------------------------------------------
%%> \section{Interfaces for Control Structures (Bool)}
@@ -859,86 +874,87 @@
\bool_new:N \gTmpiBool \bool_new:N \gTmpjBool \bool_new:N \gTmpkBool
\bool_new:N \g@FunTmpxBool \bool_new:N \g@FunTmpyBool \bool_new:N \g@FunTmpzBool
-\PrgNewFunction \BoolNew { M } { \bool_new:N #1 }
+\fun@NewTwoFunctions \boolNew \BoolNew { M } { \bool_new:N #1 }
-\PrgNewFunction \BoolConst { M e } { \bool_const:Nn #1 {#2} }
+\fun@NewTwoFunctions \boolConst \BoolConst { M e } { \bool_const:Nn #1 {#2} }
-\PrgNewFunction \BoolSet { M e } {
+\fun@NewTwoFunctions \boolSet \BoolSet { M e } {
\__fun_do_assignment:Nnn #1
{ \bool_gset:Nn #1 {#2} } { \bool_set:Nn #1 {#2} }
}
-\PrgNewFunction \BoolSetTrue { M }
+\fun@NewTwoFunctions \boolSetTrue \BoolSetTrue { M }
{
\__fun_do_assignment:Nnn #1 { \bool_gset_true:N #1 } { \bool_set_true:N #1 }
}
-\PrgNewFunction \BoolSetFalse { M }
+\fun@NewTwoFunctions \boolSetFalse \BoolSetFalse { M }
{
\__fun_do_assignment:Nnn #1 { \bool_gset_false:N #1 } { \bool_set_false:N #1 }
}
-\PrgNewFunction \BoolSetEq { M M }
+\fun@NewTwoFunctions \boolSetEq \BoolSetEq { M M }
{
\__fun_do_assignment:Nnn #1
{ \bool_gset_eq:NN #1 #2 } { \bool_set_eq:NN #1 #2 }
}
-\PrgNewFunction \BoolLog { e } { \bool_log:n {#1} }
+\fun@NewTwoFunctions \boolLog \BoolLog { e } { \bool_log:n {#1} }
-\PrgNewFunction \BoolVarLog { M } { \bool_log:N #1 }
+\fun@NewTwoFunctions \boolVarLog \BoolVarLog { M } { \bool_log:N #1 }
-\PrgNewFunction \BoolShow { e } { \bool_show:n {#1} }
+\fun@NewTwoFunctions \boolShow \BoolShow { e } { \bool_show:n {#1} }
-\PrgNewFunction \BoolVarShow { M } { \bool_show:N #1 }
+\fun@NewTwoFunctions \boolVarShow \BoolVarShow { M } { \bool_show:N #1 }
-\PrgNewConditional \BoolIfExist { M }
+\fun@NewTwoConditionals \boolIfExist \BoolIfExist { M }
{
- \bool_if_exist:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \bool_if_exist:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \BoolVarIf { M } { \Return {#1} }
+\fun@NewTwoConditionals \boolVarIf \BoolVarIf { M } { \prgReturn {#1} }
-\PrgNewConditional \BoolVarNot { M }
+\fun@NewTwoConditionals \boolVarNot \BoolVarNot { M }
{
\bool_if:NTF #1
- { \Return { \cFalseBool } } { \Return { \cTrueBool } }
+ { \prgReturn { \cFalseBool } } { \prgReturn { \cTrueBool } }
}
-\PrgNewConditional \BoolVarAnd { M M }
+\fun@NewTwoConditionals \boolVarAnd \BoolVarAnd { M M }
{
\bool_lazy_and:nnTF {#1} {#2}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \BoolVarOr { M M }
+\fun@NewTwoConditionals \boolVarOr \BoolVarOr { M M }
{
\bool_lazy_or:nnTF {#1} {#2}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \BoolVarXor { M M }
+\fun@NewTwoConditionals \boolVarXor \BoolVarXor { M M }
{
\bool_xor:nnTF {#1} {#2}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewFunction \BoolVarDoUntil { N n }
+\fun@NewTwoFunctions \boolVarDoUntil \BoolVarDoUntil { N n }
{
\bool_do_until:Nn #1 {#2}
}
-\PrgNewFunction \BoolVarDoWhile { N n }
+\fun@NewTwoFunctions \boolVarDoWhile \BoolVarDoWhile { N n }
{
\bool_do_while:Nn #1 {#2}
}
-\PrgNewFunction \BoolVarUntilDo { N n }
+\fun@NewTwoFunctions \boolVarUntilDo \BoolVarUntilDo { N n }
{
\bool_until_do:Nn #1 {#2}
}
-\PrgNewFunction \BoolVarWhileDo { N n }
+\fun@NewTwoFunctions \boolVarWhileDo \BoolVarWhileDo { N n }
{
\bool_while_do:Nn #1 {#2}
}
@@ -959,186 +975,214 @@
\tl_new:N \gTmpiTl \tl_new:N \gTmpjTl \tl_new:N \gTmpkTl
\tl_new:N \g@FunTmpxTl \tl_new:N \g@FunTmpyTl \tl_new:N \g@FunTmpzTl
-\PrgNewFunction \TlNew { M } { \tl_new:N #1 }
+\fun@NewTwoFunctions \tlNew \TlNew { M } { \tl_new:N #1 }
-\PrgNewFunction \TlLog { m } { \tl_log:n { #1 } }
+\fun@NewTwoFunctions \tlLog \TlLog { m } { \tl_log:n { #1 } }
-\PrgNewFunction \TlVarLog { M } { \tl_log:N #1 }
+\fun@NewTwoFunctions \tlVarLog \TlVarLog { M } { \tl_log:N #1 }
-\PrgNewFunction \TlShow { m } { \tl_show:n { #1 } }
+\fun@NewTwoFunctions \tlShow \TlShow { m } { \tl_show:n { #1 } }
-\PrgNewFunction \TlVarShow { M } { \tl_show:N #1 }
+\fun@NewTwoFunctions \tlVarShow \TlVarShow { M } { \tl_show:N #1 }
-\PrgNewFunction \TlUse { M } { \Return { \Value #1 } }
+\fun@NewTwoFunctions \tlUse \TlUse { M } { \prgReturn { \expValue #1 } }
-\PrgNewFunction \TlToStr { m } { \Expand { \tl_to_str:n { #1 } } }
+\fun@NewTwoFunctions \tlToStr \TlToStr { m }
+ { \expWhole { \tl_to_str:n { #1 } } }
-\PrgNewFunction \TlVarToStr { M } { \Expand { \tl_to_str:N #1 } }
+\fun@NewTwoFunctions \tlVarToStr \TlVarToStr { M }
+ { \expWhole { \tl_to_str:N #1 } }
-\PrgNewFunction \TlConst { M m } { \tl_const:Nn #1 { #2 } }
+\fun@NewTwoFunctions \tlConst \TlConst { M m } { \tl_const:Nn #1 { #2 } }
-\PrgNewFunction \TlSet { M m }
+\fun@NewTwoFunctions \tlSet \TlSet { M m }
{
\__fun_do_assignment:Nnn #1 { \tl_gset:Nn #1 {#2} } { \tl_set:Nn #1 {#2} }
}
-\PrgNewFunction \TlSetEq { M M }
+\fun@NewTwoFunctions \tlSetEq \TlSetEq { M M }
{
\__fun_do_assignment:Nnn #1 { \tl_gset_eq:NN #1 #2 } { \tl_set_eq:NN #1 #2 }
}
-\PrgNewFunction \TlConcat { M M M }
+\fun@NewTwoFunctions \tlConcat \TlConcat { M M M }
{
\__fun_do_assignment:Nnn #1
{ \tl_gconcat:NNN #1 #2 #3 } { \tl_concat:NNN #1 #2 #3 }
}
-\PrgNewFunction \TlClear { M }
+\fun@NewTwoFunctions \tlClear \TlClear { M }
{
\__fun_do_assignment:Nnn #1 { \tl_gclear:N #1 } { \tl_clear:N #1 }
}
-\PrgNewFunction \TlClearNew { M }
+\fun@NewTwoFunctions \tlClearNew \TlClearNew { M }
{
\__fun_do_assignment:Nnn #1 { \tl_gclear_new:N #1 } { \tl_clear_new:N #1 }
}
-\PrgNewFunction \TlPutLeft { M m }
+\fun@NewTwoFunctions \tlPutLeft \TlPutLeft { M m }
{
\__fun_do_assignment:Nnn #1
{ \tl_gput_left:Nn #1 {#2} } { \tl_put_left:Nn #1 {#2} }
}
-\PrgNewFunction \TlPutRight { M m }
+\fun@NewTwoFunctions \tlPutRight \TlPutRight { M m }
{
\__fun_do_assignment:Nnn #1
{ \tl_gput_right:Nn #1 {#2} } { \tl_put_right:Nn #1 {#2} }
}
-\PrgNewFunction \TlVarReplaceOnce { M m m }
+\fun@NewTwoFunctions \tlVarReplaceOnce \TlVarReplaceOnce { M m m }
{
\__fun_do_assignment:Nnn #1
{ \tl_greplace_once:Nnn #1 {#2} {#3} } { \tl_replace_once:Nnn #1 {#2} {#3} }
}
-\PrgNewFunction \TlVarReplaceAll { M m m }
+\fun@NewTwoFunctions \tlVarReplaceAll \TlVarReplaceAll { M m m }
{
\__fun_do_assignment:Nnn #1
{ \tl_greplace_all:Nnn #1 {#2} {#3} } { \tl_replace_all:Nnn #1 {#2} {#3} }
}
-\PrgNewFunction \TlVarRemoveOnce { M m }
+\fun@NewTwoFunctions \tlVarRemoveOnce \TlVarRemoveOnce { M m }
{
\__fun_do_assignment:Nnn #1
{ \tl_gremove_once:Nn #1 {#2} } { \tl_remove_once:Nn #1 {#2} }
}
-\PrgNewFunction \TlVarRemoveAll { M m }
+\fun@NewTwoFunctions \tlVarRemoveAll \TlVarRemoveAll { M m }
{
\__fun_do_assignment:Nnn #1
{ \tl_gremove_all:Nn #1 {#2} } { \tl_remove_all:Nn #1 {#2} }
}
-\PrgNewFunction \TlTrimSpaces { m } { \Expand { \tl_trim_spaces:n { #1 } } }
+\fun@NewTwoFunctions \tlTrimSpaces \TlTrimSpaces { m }
+ { \expWhole { \tl_trim_spaces:n { #1 } } }
-\PrgNewFunction \TlVarTrimSpaces { M }
+\fun@NewTwoFunctions \tlVarTrimSpaces \TlVarTrimSpaces { M }
{
- \__fun_do_assignment:Nnn #1 { \tl_gtrim_spaces:N #1 } { \tl_trim_spaces:N #1 }
+ \__fun_do_assignment:Nnn #1
+ { \tl_gtrim_spaces:N #1 } { \tl_trim_spaces:N #1 }
}
-\PrgNewFunction \TlCount { m } { \Expand { \tl_count:n { #1 } } }
+\fun@NewTwoFunctions \tlCount \TlCount { m }
+ { \expWhole { \tl_count:n { #1 } } }
-\PrgNewFunction \TlVarCount { M } { \Expand { \tl_count:N #1 } }
+\fun@NewTwoFunctions \tlVarCount \TlVarCount { M }
+ { \expWhole { \tl_count:N #1 } }
-\PrgNewFunction \TlHead { m } { \Expand { \tl_head:n { #1 } } }
+\fun@NewTwoFunctions \tlHead \TlHead { m }
+ { \expWhole { \tl_head:n { #1 } } }
-\PrgNewFunction \TlVarHead { M } { \Expand { \tl_head:N #1 } }
+\fun@NewTwoFunctions \tlVarHead \TlVarHead { M }
+ { \expWhole { \tl_head:N #1 } }
-\PrgNewFunction \TlTail { m } { \Expand { \tl_tail:n { #1 } } }
+\fun@NewTwoFunctions \tlTail \TlTail { m }
+ { \expWhole { \tl_tail:n { #1 } } }
-\PrgNewFunction \TlVarTail { M } { \Expand { \tl_tail:N #1 } }
+\fun@NewTwoFunctions \tlVarTail \TlVarTail { M }
+ { \expWhole { \tl_tail:N #1 } }
-\PrgNewFunction \TlItem { m m } { \Expand { \tl_item:nn {#1} {#2} } }
+\fun@NewTwoFunctions \tlItem \TlItem { m m }
+ { \expWhole { \tl_item:nn {#1} {#2} } }
-\PrgNewFunction \TlVarItem { M m } { \Expand { \tl_item:Nn #1 {#2} } }
+\fun@NewTwoFunctions \tlVarItem \TlVarItem { M m }
+ { \expWhole { \tl_item:Nn #1 {#2} } }
-\PrgNewFunction \TlRandItem { m } { \Expand { \tl_rand_item:n {#1} } }
+\fun@NewTwoFunctions \tlRandItem \TlRandItem { m }
+ { \expWhole { \tl_rand_item:n {#1} } }
-\PrgNewFunction \TlVarRandItem { M } { \Expand { \tl_rand_item:N #1 } }
+\fun@NewTwoFunctions \tlVarRandItem \TlVarRandItem { M }
+ { \expWhole { \tl_rand_item:N #1 } }
-\PrgNewFunction \TlVarCase { M m } { \tl_case:Nn {#1} {#2} }
-\PrgNewFunction \TlVarCaseT { M m n } { \tl_case:NnT {#1} {#2} {#3} }
-\PrgNewFunction \TlVarCaseF { M m n } { \tl_case:NnF {#1} {#2} {#3} }
-\PrgNewFunction \TlVarCaseTF { M m n n } { \tl_case:NnTF {#1} {#2} {#3} {#4} }
+\fun@NewTwoFunctions \tlVarCase \TlVarCase { M m }
+ { \tl_case:Nn {#1} {#2} }
+\fun@NewTwoFunctions \tlVarCaseT \TlVarCaseT { M m n }
+ { \tl_case:NnT {#1} {#2} {#3} }
+\fun@NewTwoFunctions \tlVarCaseF \TlVarCaseF { M m n }
+ { \tl_case:NnF {#1} {#2} {#3} }
+\fun@NewTwoFunctions \tlVarCaseTF \TlVarCaseTF { M m n n }
+ { \tl_case:NnTF {#1} {#2} {#3} {#4} }
-\PrgNewFunction \TlMapInline { m n }
+\fun@NewTwoFunctions \tlMapInline \TlMapInline { m n }
{
\tl_map_inline:nn {#1} {#2}
}
-\PrgNewFunction \TlVarMapInline { M n }
+\fun@NewTwoFunctions \tlVarMapInline \TlVarMapInline { M n }
{
\tl_map_inline:Nn #1 {#2}
}
-\PrgNewFunction \TlMapVariable { m M n }
+\fun@NewTwoFunctions \tlMapVariable \TlMapVariable { m M n }
{
\tl_map_variable:nNn {#1} #2 {#3}
}
-\PrgNewFunction \TlVarMapVariable { M M n }
+\fun@NewTwoFunctions \tlVarMapVariable \TlVarMapVariable { M M n }
{
\tl_map_variable:NNn #1 #2 {#3}
}
-\PrgNewConditional \TlIfExist { M }
+\fun@NewTwoConditionals \tlIfExist \TlIfExist { M }
{
- \tl_if_exist:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_exist:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \TlIfEmpty { m }
+\fun@NewTwoConditionals \tlIfEmpty \TlIfEmpty { m }
{
- \tl_if_empty:nTF {#1} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_empty:nTF {#1}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \TlVarIfEmpty { M }
+\fun@NewTwoConditionals \tlVarIfEmpty \TlVarIfEmpty { M }
{
- \tl_if_empty:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_empty:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \TlIfBlank { m }
+\fun@NewTwoConditionals \tlIfBlank \TlIfBlank { m }
{
- \tl_if_blank:nTF {#1} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_blank:nTF {#1}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \TlIfEq { m m }
+\fun@NewTwoConditionals \tlIfEq \TlIfEq { m m }
{
- \tl_if_eq:nnTF {#1} {#2} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_eq:nnTF {#1} {#2}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \TlVarIfEq { M M }
+\fun@NewTwoConditionals \tlVarIfEq \TlVarIfEq { M M }
{
- \tl_if_eq:NNTF #1 #2 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_eq:NNTF #1 #2
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \TlIfIn { m m }
+\fun@NewTwoConditionals \tlIfIn \TlIfIn { m m }
{
- \tl_if_in:nnTF {#1} {#2} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_in:nnTF {#1} {#2}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \TlVarIfIn { M m }
+\fun@NewTwoConditionals \tlVarIfIn \TlVarIfIn { M m }
{
- \tl_if_in:NnTF #1 {#2} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_in:NnTF #1 {#2}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \TlIfSingle { m }
+\fun@NewTwoConditionals \tlIfSingle \TlIfSingle { m }
{
- \tl_if_single:nTF {#1} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_single:nTF {#1}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \TlVarIfSingle { M }
+\fun@NewTwoConditionals \tlVarIfSingle \TlVarIfSingle { M }
{
- \tl_if_single:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \tl_if_single:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
%%% --------------------------------------------------------
@@ -1167,175 +1211,192 @@
\str_new:N \gTmpiStr \str_new:N \gTmpjStr \str_new:N \gTmpkStr
\str_new:N \g@FunTmpxStr \str_new:N \g@FunTmpyStr \str_new:N \g@FunTmpzStr
-\PrgNewFunction \StrNew { M } { \str_new:N #1 }
+\fun@NewTwoFunctions \strNew \StrNew { M } { \str_new:N #1 }
-\PrgNewFunction \StrLog { m } { \str_log:n { #1 } }
+\fun@NewTwoFunctions \strLog \StrLog { m } { \str_log:n { #1 } }
-\PrgNewFunction \StrVarLog { M } { \str_log:N #1 }
+\fun@NewTwoFunctions \strVarLog \StrVarLog { M } { \str_log:N #1 }
-\PrgNewFunction \StrShow { m } { \str_show:n { #1 } }
+\fun@NewTwoFunctions \strShow \StrShow { m } { \str_show:n { #1 } }
-\PrgNewFunction \StrVarShow { M } { \str_show:N #1 }
+\fun@NewTwoFunctions \strVarShow \StrVarShow { M } { \str_show:N #1 }
-\PrgNewFunction \StrUse { M } { \Return { \Value #1 } }
+\fun@NewTwoFunctions \strUse \StrUse { M } { \prgReturn { \expValue #1 } }
-\PrgNewFunction \StrConst { M m } { \str_const:Nn #1 {#2} }
+\fun@NewTwoFunctions \strConst \StrConst { M m } { \str_const:Nn #1 {#2} }
-\PrgNewFunction \StrSet { M m }
+\fun@NewTwoFunctions \strSet \StrSet { M m }
{
\__fun_do_assignment:Nnn #1 { \str_gset:Nn #1 {#2} } { \str_set:Nn #1 {#2} }
}
-\PrgNewFunction \StrSetEq { M M }
+\fun@NewTwoFunctions \strSetEq \StrSetEq { M M }
{
- \__fun_do_assignment:Nnn #1 { \str_gset_eq:NN #1 #2 } { \str_set_eq:NN #1 #2 }
+ \__fun_do_assignment:Nnn #1
+ { \str_gset_eq:NN #1 #2 } { \str_set_eq:NN #1 #2 }
}
-\PrgNewFunction \StrConcat { M M M }
+\fun@NewTwoFunctions \strConcat \StrConcat { M M M }
{
\__fun_do_assignment:Nnn #1
{ \str_gconcat:NNN #1 #2 #3 } { \str_concat:NNN #1 #2 #3 }
}
-\PrgNewFunction \StrClear { M }
+\fun@NewTwoFunctions \strClear \StrClear { M }
{
\__fun_do_assignment:Nnn #1 { \str_gclear:N #1 } { \str_clear:N #1 }
}
-\PrgNewFunction \StrClearNew { M }
+\fun@NewTwoFunctions \strClearNew \StrClearNew { M }
{
\__fun_do_assignment:Nnn #1 { \str_gclear_new:N #1 } { \str_clear_new:N #1 }
}
-\PrgNewFunction \StrPutLeft { M m }
+\fun@NewTwoFunctions \strPutLeft \StrPutLeft { M m }
{
\__fun_do_assignment:Nnn #1
{ \str_gput_left:Nn #1 {#2} } { \str_put_left:Nn #1 {#2} }
}
-\PrgNewFunction \StrPutRight { M m }
+\fun@NewTwoFunctions \strPutRight \StrPutRight { M m }
{
\__fun_do_assignment:Nnn #1
{ \str_gput_right:Nn #1 {#2} } { \str_put_right:Nn #1 {#2} }
}
-\PrgNewFunction \StrVarReplaceOnce { M m m }
+\fun@NewTwoFunctions \strVarReplaceOnce \StrVarReplaceOnce { M m m }
{
\__fun_do_assignment:Nnn #1
- { \str_greplace_once:Nnn #1 {#2} {#3} } { \str_replace_once:Nnn #1 {#2} {#3} }
+ { \str_greplace_once:Nnn #1 {#2} {#3} }
+ { \str_replace_once:Nnn #1 {#2} {#3} }
}
-\PrgNewFunction \StrVarReplaceAll { M m m }
+\fun@NewTwoFunctions \strVarReplaceAll \StrVarReplaceAll { M m m }
{
\__fun_do_assignment:Nnn #1
- { \str_greplace_all:Nnn #1 {#2} {#3} } { \str_replace_all:Nnn #1 {#2} {#3} }
+ { \str_greplace_all:Nnn #1 {#2} {#3} }
+ { \str_replace_all:Nnn #1 {#2} {#3} }
}
-\PrgNewFunction \StrVarRemoveOnce { M m }
+\fun@NewTwoFunctions \strVarRemoveOnce \StrVarRemoveOnce { M m }
{
\__fun_do_assignment:Nnn #1
{ \str_gremove_once:Nn #1 {#2} } { \str_remove_once:Nn #1 {#2} }
}
-\PrgNewFunction \StrVarRemoveAll { M m }
+\fun@NewTwoFunctions \strVarRemoveAll \StrVarRemoveAll { M m }
{
\__fun_do_assignment:Nnn #1
{ \str_gremove_all:Nn #1 {#2} } { \str_remove_all:Nn #1 {#2} }
}
%% Avoid naming confict with xstring package
-\cs_if_exist:NF \StrCount
- { \PrgNewFunction \StrCount { m } { \Expand { \str_count:n { #1 } } } }
+\fun@NewTwoFunctions \strCount \StrCount { m }
+ { \expWhole { \str_count:n { #1 } } }
%% Provide another name for \StrCount function
-\PrgNewFunction \StrSize { m } { \Expand { \str_count:n { #1 } } }
+\prgNewFunction \StrSize { m } { \expWhole { \str_count:n { #1 } } }
-\PrgNewFunction \StrVarCount { M } { \Expand { \str_count:N #1 } }
+\fun@NewTwoFunctions \strVarCount \StrVarCount { M }
+ { \expWhole { \str_count:N #1 } }
-\PrgNewFunction \StrHead { m } { \Expand { \str_head:n { #1 } } }
+\fun@NewTwoFunctions \strHead \StrHead { m }
+ { \expWhole { \str_head:n { #1 } } }
-\PrgNewFunction \StrVarHead { M } { \Expand { \str_head:N #1 } }
+\fun@NewTwoFunctions \strVarHead \StrVarHead { M }
+ { \expWhole { \str_head:N #1 } }
-\PrgNewFunction \StrTail { m } { \Expand { \str_tail:n { #1 } } }
+\fun@NewTwoFunctions \strTail \StrTail { m }
+ { \expWhole { \str_tail:n { #1 } } }
-\PrgNewFunction \StrVarTail { M } { \Expand { \str_tail:N #1 } }
+\fun@NewTwoFunctions \strVarTail \StrVarTail { M }
+ { \expWhole { \str_tail:N #1 } }
-\PrgNewFunction \StrItem { m m } { \Expand { \str_item:nn {#1} {#2} } }
+\fun@NewTwoFunctions \strItem \StrItem { m m }
+ { \expWhole { \str_item:nn {#1} {#2} } }
-\PrgNewFunction \StrVarItem { M m } { \Expand { \str_item:Nn #1 {#2} } }
+\fun@NewTwoFunctions \strVarItem \StrVarItem { M m }
+ { \expWhole { \str_item:Nn #1 {#2} } }
-\PrgNewFunction \StrCase { m m } { \str_case:nn {#1} {#2} }
-\PrgNewFunction \StrCaseT { m m n } { \str_case:nnT {#1} {#2} {#3} }
-\PrgNewFunction \StrCaseF { m m n } { \str_case:nnF {#1} {#2} {#3} }
-\PrgNewFunction \StrCaseTF { m m n n } { \str_case:nnTF {#1} {#2} {#3} {#4} }
+\fun@NewTwoFunctions \strCase \StrCase { m m }
+ { \str_case:nn {#1} {#2} }
+\fun@NewTwoFunctions \strCaseT \StrCaseT { m m n }
+ { \str_case:nnT {#1} {#2} {#3} }
+\fun@NewTwoFunctions \strCaseF \StrCaseF { m m n }
+ { \str_case:nnF {#1} {#2} {#3} }
+\fun@NewTwoFunctions \strCaseTF \StrCaseTF { m m n n }
+ { \str_case:nnTF {#1} {#2} {#3} {#4} }
-\PrgNewFunction \StrMapInline { m n }
+\fun@NewTwoFunctions \strMapInline \StrMapInline { m n }
{
\str_map_inline:nn {#1} {#2}
}
-\PrgNewFunction \StrVarMapInline { M n }
+\fun@NewTwoFunctions \strVarMapInline \StrVarMapInline { M n }
{
\str_map_inline:Nn #1 {#2}
}
-\PrgNewFunction \StrMapVariable { m M n }
+\fun@NewTwoFunctions \strMapVariable \StrMapVariable { m M n }
{
\str_map_variable:nNn {#1} #2 {#3}
}
-\PrgNewFunction \StrVarMapVariable { M M n }
+\fun@NewTwoFunctions \strVarMapVariable \StrVarMapVariable { M M n }
{
\str_map_variable:NNn #1 #2 {#3}
}
-\PrgNewConditional \StrIfExist { M }
+\fun@NewTwoConditionals \strIfExist \StrIfExist { M }
{
- \str_if_exist:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \str_if_exist:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \StrVarIfEmpty { M }
+\fun@NewTwoConditionals \strVarIfEmpty \StrVarIfEmpty { M }
{
- \str_if_empty:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \str_if_empty:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \StrIfEq { m m }
+\fun@NewTwoConditionals \strIfEq \StrIfEq { m m }
{
- \str_if_eq:nnTF {#1} {#2} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \str_if_eq:nnTF {#1} {#2}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \StrVarIfEq { M M }
+\fun@NewTwoConditionals \strVarIfEq \StrVarIfEq { M M }
{
- \str_if_eq:NNTF #1 #2 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \str_if_eq:NNTF #1 #2
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \StrIfIn { m m }
+\fun@NewTwoConditionals \strIfIn \StrIfIn { m m }
{
- \str_if_in:nnTF {#1} {#2} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \str_if_in:nnTF {#1} {#2}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \StrVarIfIn { M m }
+\fun@NewTwoConditionals \strVarIfIn \StrVarIfIn { M m }
{
- \str_if_in:NnTF #1 {#2} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \str_if_in:NnTF #1 {#2}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
%% Avoid naming confict with xstring package
-\cs_if_exist:NF \StrCompare
+\fun@NewTwoConditionals \strCompare \StrCompare { m N m }
{
- \PrgNewConditional \StrCompare { m N m }
- {
- \str_compare:nNnTF {#1} #2 {#3}
- { \Return { \cTrueBool } }
- { \Return { \cFalseBool } }
- }
+ \str_compare:nNnTF {#1} #2 {#3}
+ { \prgReturn { \cTrueBool } }
+ { \prgReturn { \cFalseBool } }
}
%% Provide another name for \StrCompare function
-\PrgNewConditional \StrIfCompare { m N m }
+\prgNewConditional \StrIfCompare { m N m }
{
\str_compare:nNnTF {#1} #2 {#3}
- { \Return { \cTrueBool } }
- { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } }
+ { \prgReturn { \cFalseBool } }
}
%%% --------------------------------------------------------
@@ -1356,139 +1417,157 @@
\int_new:N \gTmpiInt \int_new:N \gTmpjInt \int_new:N \gTmpkInt
\int_new:N \g@FunTmpxInt \int_new:N \g@FunTmpyInt \int_new:N \g@FunTmpzInt
-\PrgNewFunction \IntEval { e } { \Expand { \int_eval:n {#1} } }
+\fun@NewTwoFunctions \intEval \IntEval { e } { \expWhole { \int_eval:n {#1} } }
-\PrgNewFunction \IntMathAdd { e e } { \Expand { \int_eval:n { (#1) + (#2) } } }
+\fun@NewTwoFunctions \intMathAdd \IntMathAdd { e e }
+ { \expWhole { \int_eval:n { (#1) + (#2) } } }
-\PrgNewFunction \IntMathSub { e e } { \Expand { \int_eval:n { (#1) - (#2) } } }
+\fun@NewTwoFunctions \intMathSub \IntMathSub { e e }
+ { \expWhole { \int_eval:n { (#1) - (#2) } } }
-\PrgNewFunction \IntMathMult { e e } { \Expand { \int_eval:n { (#1) * (#2) } } }
+\fun@NewTwoFunctions \intMathMult \IntMathMult { e e }
+ { \expWhole { \int_eval:n { (#1) * (#2) } } }
-\PrgNewFunction \IntMathDiv { e e } { \Expand { \int_div_round:nn {#1} {#2} } }
+\fun@NewTwoFunctions \intMathDiv \IntMathDiv { e e }
+ { \expWhole { \int_div_round:nn {#1} {#2} } }
-\PrgNewFunction \IntMathDivTruncate { e e }
+\fun@NewTwoFunctions \intMathDivTruncate \IntMathDivTruncate { e e }
{
- \Expand { \int_div_truncate:nn {#1} {#2} }
+ \expWhole { \int_div_truncate:nn {#1} {#2} }
}
-\PrgNewFunction \IntMathSign { e } { \Expand { \int_sign:n {#1} } }
+\fun@NewTwoFunctions \intMathSign \IntMathSign { e }
+ { \expWhole { \int_sign:n {#1} } }
-\PrgNewFunction \IntMathAbs { e } { \Expand { \int_abs:n {#1} } }
+\fun@NewTwoFunctions \intMathAbs \IntMathAbs { e }
+ { \expWhole { \int_abs:n {#1} } }
-\PrgNewFunction \IntMathMax { e e } { \Expand { \int_max:nn {#1} {#2} } }
+\fun@NewTwoFunctions \intMathMax \IntMathMax { e e }
+ { \expWhole { \int_max:nn {#1} {#2} } }
-\PrgNewFunction \IntMathMin { e e } { \Expand { \int_min:nn {#1} {#2} } }
+\fun@NewTwoFunctions \intMathMin \IntMathMin { e e }
+ { \expWhole { \int_min:nn {#1} {#2} } }
-\PrgNewFunction \IntMathMod { e e } { \Expand { \int_mod:nn {#1} {#2} } }
+\fun@NewTwoFunctions \intMathMod \IntMathMod { e e }
+ { \expWhole { \int_mod:nn {#1} {#2} } }
-\PrgNewFunction \IntMathRand { e e } { \Expand { \int_rand:nn {#1} {#2} } }
+\fun@NewTwoFunctions \intMathRand \IntMathRand { e e }
+ { \expWhole { \int_rand:nn {#1} {#2} } }
-\PrgNewFunction \IntNew { M } { \int_new:N #1 }
+\fun@NewTwoFunctions \intNew \IntNew { M } { \int_new:N #1 }
-\PrgNewFunction \IntConst { M e } { \int_const:Nn #1 { #2 } }
+\fun@NewTwoFunctions \intConst \IntConst { M e } { \int_const:Nn #1 { #2 } }
-\PrgNewFunction \IntLog { e } { \int_log:n { #1 } }
+\fun@NewTwoFunctions \intLog \IntLog { e } { \int_log:n { #1 } }
-\PrgNewFunction \IntVarLog { M } { \int_log:N #1 }
+\fun@NewTwoFunctions \intVarLog \IntVarLog { M } { \int_log:N #1 }
-\PrgNewFunction \IntShow { e } { \int_show:n { #1 } }
+\fun@NewTwoFunctions \intShow \IntShow { e } { \int_show:n { #1 } }
-\PrgNewFunction \IntVarShow { M } { \int_show:N #1 }
+\fun@NewTwoFunctions \intVarShow \IntVarShow { M } { \int_show:N #1 }
-\PrgNewFunction \IntUse { M } { \Return { \Value #1 } }
+\fun@NewTwoFunctions \intUse \IntUse { M } { \prgReturn { \expValue #1 } }
-\PrgNewFunction \IntSet { M e }
+\fun@NewTwoFunctions \intSet \IntSet { M e }
{
\__fun_do_assignment:Nnn #1 { \int_gset:Nn #1 {#2} } { \int_set:Nn #1 {#2} }
}
-\PrgNewFunction \IntZero { M }
+\fun@NewTwoFunctions \intZero \IntZero { M }
{
\__fun_do_assignment:Nnn #1 { \int_gzero:N #1 } { \int_zero:N #1 }
}
-\PrgNewFunction \IntZeroNew { M }
+\fun@NewTwoFunctions \intZeroNew \IntZeroNew { M }
{
\__fun_do_assignment:Nnn #1 { \int_gzero_new:N #1 } { \int_zero_new:N #1 }
}
-\PrgNewFunction \IntSetEq { M M }
+\fun@NewTwoFunctions \intSetEq \IntSetEq { M M }
{
- \__fun_do_assignment:Nnn #1 { \int_gset_eq:NN #1 #2 } { \int_set_eq:NN #1 #2 }
+ \__fun_do_assignment:Nnn #1
+ { \int_gset_eq:NN #1 #2 } { \int_set_eq:NN #1 #2 }
}
-\PrgNewFunction \IntIncr { M }
+\fun@NewTwoFunctions \intIncr \IntIncr { M }
{
\__fun_do_assignment:Nnn #1 { \int_gincr:N #1 } { \int_incr:N #1 }
}
-\PrgNewFunction \IntDecr { M }
+\fun@NewTwoFunctions \intDecr \IntDecr { M }
{
\__fun_do_assignment:Nnn #1 { \int_gdecr:N #1 } { \int_decr:N #1 }
}
-\PrgNewFunction \IntAdd { M e }
+\fun@NewTwoFunctions \intAdd \IntAdd { M e }
{
\__fun_do_assignment:Nnn #1 { \int_gadd:Nn #1 {#2} } { \int_add:Nn #1 {#2} }
}
-\PrgNewFunction \IntSub { M e }
+\fun@NewTwoFunctions \intSub \IntSub { M e }
{
\__fun_do_assignment:Nnn #1 { \int_gsub:Nn #1 {#2} } { \int_sub:Nn #1 {#2} }
}
%% Command \prg_replicate:nn yields its result after two expansion steps
-\PrgNewFunction \IntReplicate { e m }
+\fun@NewTwoFunctions \intReplicate \IntReplicate { e m }
{
- \exp_args:NNo \exp_args:No \Return { \prg_replicate:nn {#1} {#2} }
+ \exp_args:NNo \exp_args:No \prgReturn { \prg_replicate:nn {#1} {#2} }
}
-\PrgNewFunction \IntStepInline { e e e n }
+\fun@NewTwoFunctions \intStepInline \IntStepInline { e e e n }
{
\int_step_inline:nnnn {#1} {#2} {#3} {#4}
}
-\PrgNewFunction \IntStepOneInline { e e n }
+\fun@NewTwoFunctions \intStepOneInline \IntStepOneInline { e e n }
{
\int_step_inline:nnn {#1} {#2} {#3}
}
-\PrgNewFunction \IntStepVariable { e e e M n }
+\fun@NewTwoFunctions \intStepVariable \IntStepVariable { e e e M n }
{
\int_step_variable:nnnNn {#1} {#2} {#3} #4 {#5}
}
-\PrgNewFunction \IntStepOneVariable { e e M n }
+\fun@NewTwoFunctions \intStepOneVariable \IntStepOneVariable { e e M n }
{
\int_step_variable:nnNn {#1} {#2} #3 {#4}
}
-\PrgNewConditional \IntIfExist { M }
+\fun@NewTwoConditionals \intIfExist \IntIfExist { M }
{
- \int_if_exist:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \int_if_exist:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \IntIfOdd { e }
+\fun@NewTwoConditionals \intIfOdd \IntIfOdd { e }
{
- \int_if_odd:nTF { #1 } { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \int_if_odd:nTF { #1 }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \IntIfEven { e }
+\fun@NewTwoConditionals \intIfEven \IntIfEven { e }
{
- \int_if_even:nTF { #1 } { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \int_if_even:nTF { #1 }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \IntCompare { e N e }
+\fun@NewTwoConditionals \intCompare \IntCompare { e N e }
{
\int_compare:nNnTF {#1} #2 {#3}
- { \Return { \cTrueBool } }
- { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } }
+ { \prgReturn { \cFalseBool } }
}
-\PrgNewFunction \IntCase { e m } { \int_case:nn {#1} {#2} }
-\PrgNewFunction \IntCaseT { e m n } { \int_case:nnT {#1} {#2} {#3} }
-\PrgNewFunction \IntCaseF { e m n } { \int_case:nnF {#1} {#2} {#3} }
-\PrgNewFunction \IntCaseTF { e m n n } { \int_case:nnTF {#1} {#2} {#3} {#4} }
+\fun@NewTwoFunctions \intCase \IntCase { e m }
+ { \int_case:nn {#1} {#2} }
+\fun@NewTwoFunctions \intCaseT \IntCaseT { e m n }
+ { \int_case:nnT {#1} {#2} {#3} }
+\fun@NewTwoFunctions \intCaseF \IntCaseF { e m n }
+ { \int_case:nnF {#1} {#2} {#3} }
+\fun@NewTwoFunctions \intCaseTF \IntCaseTF { e m n n }
+ { \int_case:nnTF {#1} {#2} {#3} {#4} }
%%% --------------------------------------------------------
%%> \section{Interfaces for Floating Point Numbers (Fp)}
@@ -1511,88 +1590,97 @@
\fp_new:N \gTmpiFp \fp_new:N \gTmpjFp \fp_new:N \gTmpkFp
\fp_new:N \g@FunTmpxFp \fp_new:N \g@FunTmpyFp \fp_new:N \g@FunTmpzFp
-\PrgNewFunction \FpEval { e } { \Expand { \fp_eval:n {#1} } }
+\fun@NewTwoFunctions \fpEval \FpEval { e } { \expWhole { \fp_eval:n {#1} } }
-\PrgNewFunction \FpMathAdd { e e } { \Expand { \fp_eval:n { (#1) + (#2) } } }
+\fun@NewTwoFunctions \fpMathAdd \FpMathAdd { e e }
+ { \expWhole { \fp_eval:n { (#1) + (#2) } } }
-\PrgNewFunction \FpMathSub { e e } { \Expand { \fp_eval:n { (#1) - (#2) } } }
+\fun@NewTwoFunctions \fpMathSub \FpMathSub { e e }
+ { \expWhole { \fp_eval:n { (#1) - (#2) } } }
-\PrgNewFunction \FpMathMult { e e } { \Expand { \fp_eval:n { (#1) * (#2) } } }
+\fun@NewTwoFunctions \fpMathMult \FpMathMult { e e }
+ { \expWhole { \fp_eval:n { (#1) * (#2) } } }
-\PrgNewFunction \FpMathDiv { e e } { \Expand { \fp_eval:n { (#1) / (#2) } } }
+\fun@NewTwoFunctions \fpMathDiv \FpMathDiv { e e }
+ { \expWhole { \fp_eval:n { (#1) / (#2) } } }
-\PrgNewFunction \FpMathSign { e } { \Expand { \fp_sign:n {#1} } }
+\fun@NewTwoFunctions \fpMathSign \FpMathSign { e }
+ { \expWhole { \fp_sign:n {#1} } }
-\PrgNewFunction \FpMathAbs { e } { \Expand { \fp_abs:n {#1} } }
+\fun@NewTwoFunctions \fpMathAbs \FpMathAbs { e }
+ { \expWhole { \fp_abs:n {#1} } }
-\PrgNewFunction \FpMathMax { e e } { \Expand { \fp_max:nn {#1} {#2} } }
+\fun@NewTwoFunctions \fpMathMax \FpMathMax { e e }
+ { \expWhole { \fp_max:nn {#1} {#2} } }
-\PrgNewFunction \FpMathMin { e e } { \Expand { \fp_min:nn {#1} {#2} } }
+\fun@NewTwoFunctions \fpMathMin \FpMathMin { e e }
+ { \expWhole { \fp_min:nn {#1} {#2} } }
-\PrgNewFunction \FpNew { M } { \fp_new:N #1 }
+\fun@NewTwoFunctions \fpNew \FpNew { M } { \fp_new:N #1 }
-\PrgNewFunction \FpConst { M e } { \fp_const:Nn #1 {#2} }
+\fun@NewTwoFunctions \fpConst \FpConst { M e } { \fp_const:Nn #1 {#2} }
-\PrgNewFunction \FpUse { M } { \Expand { \fp_use:N #1 } }
+\fun@NewTwoFunctions \fpUse \FpUse { M } { \expWhole { \fp_use:N #1 } }
-\PrgNewFunction \FpLog { e } { \fp_log:n {#1} }
+\fun@NewTwoFunctions \fpLog \FpLog { e } { \fp_log:n {#1} }
-\PrgNewFunction \FpVarLog { M } { \fp_log:N #1 }
+\fun@NewTwoFunctions \fpVarLog \FpVarLog { M } { \fp_log:N #1 }
-\PrgNewFunction \FpShow { e } { \fp_show:n {#1} }
+\fun@NewTwoFunctions \fpShow \FpShow { e } { \fp_show:n {#1} }
-\PrgNewFunction \FpVarShow { M } { \fp_show:N #1 }
+\fun@NewTwoFunctions \fpVarShow \FpVarShow { M } { \fp_show:N #1 }
-\PrgNewFunction \FpSet { M e }
+\fun@NewTwoFunctions \fpSet \FpSet { M e }
{
\__fun_do_assignment:Nnn #1 { \fp_gset:Nn #1 {#2} } { \fp_set:Nn #1 {#2} }
}
-\PrgNewFunction \FpSetEq { M M }
+\fun@NewTwoFunctions \fpSetEq \FpSetEq { M M }
{
\__fun_do_assignment:Nnn #1 { \fp_gset_eq:NN #1 #2 } { \fp_set_eq:NN #1 #2 }
}
-\PrgNewFunction \FpZero { M }
+\fun@NewTwoFunctions \fpZero \FpZero { M }
{
\__fun_do_assignment:Nnn #1 { \fp_gzero:N #1 } { \fp_zero:N #1 }
}
-\PrgNewFunction \FpZeroNew { M }
+\fun@NewTwoFunctions \fpZeroNew \FpZeroNew { M }
{
\__fun_do_assignment:Nnn #1 { \fp_gzero_new:N #1 } { \fp_zero_new:N #1 }
}
-\PrgNewFunction \FpAdd { M e }
+\fun@NewTwoFunctions \fpAdd \FpAdd { M e }
{
\__fun_do_assignment:Nnn #1 { \fp_gadd:Nn #1 {#2} } { \fp_add:Nn #1 {#2} }
}
-\PrgNewFunction \FpSub { M e }
+\fun@NewTwoFunctions \fpSub \FpSub { M e }
{
\__fun_do_assignment:Nnn #1 { \fp_gsub:Nn #1 {#2} } { \fp_sub:Nn #1 {#2} }
}
-\PrgNewFunction \FpStepInline { e e e n }
+\fun@NewTwoFunctions \fpStepInline \FpStepInline { e e e n }
{
\fp_step_inline:nnnn {#1} {#2} {#3} {#4}
}
-\PrgNewFunction \FpStepVariable { e e e M n }
+\fun@NewTwoFunctions \fpStepVariable \FpStepVariable { e e e M n }
{
\fp_step_variable:nnnNn {#1} {#2} {#3} #4 {#5}
}
-\PrgNewConditional \FpIfExist { M }
+\fun@NewTwoConditionals \fpIfExist \FpIfExist { M }
{
- \fp_if_exist:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \fp_if_exist:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \FpCompare { e N e }
+\fun@NewTwoConditionals \fpCompare \FpCompare { e N e }
{
\fp_compare:nNnTF {#1} #2 {#3}
- { \Return { \cTrueBool } }
- { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } }
+ { \prgReturn { \cFalseBool } }
}
%%% --------------------------------------------------------
@@ -1610,124 +1698,130 @@
\dim_new:N \gTmpiDim \dim_new:N \gTmpjDim \dim_new:N \gTmpkDim
\dim_new:N \g@FunTmpxDim \dim_new:N \g@FunTmpyDim \dim_new:N \g@FunTmpzDim
-\PrgNewFunction \DimEval { m }
+\fun@NewTwoFunctions \dimEval \DimEval { m }
{
- \Return { \Expand { \dim_eval:n { #1 } } }
+ \prgReturn { \expWhole { \dim_eval:n { #1 } } }
}
-\PrgNewFunction \DimMathAdd { m m }
+\fun@NewTwoFunctions \dimMathAdd \DimMathAdd { m m }
{
\dim_set:Nn \l@FunTmpxDim { \dim_eval:n { (#1) + (#2) } }
- \Return { \Value \l@FunTmpxDim }
+ \prgReturn { \expValue \l@FunTmpxDim }
}
-\PrgNewFunction \DimMathSub { m m }
+\fun@NewTwoFunctions \dimMathSub \DimMathSub { m m }
{
\dim_set:Nn \l@FunTmpxDim { \dim_eval:n { (#1) - (#2) } }
- \Return { \Value \l@FunTmpxDim }
+ \prgReturn { \expValue \l@FunTmpxDim }
}
-\PrgNewFunction \DimMathSign { m }
+\fun@NewTwoFunctions \dimMathSign \DimMathSign { m }
{
- \Return { \Expand { \dim_sign:n { #1 } } }
+ \prgReturn { \expWhole { \dim_sign:n { #1 } } }
}
-\PrgNewFunction \DimMathAbs { m }
+\fun@NewTwoFunctions \dimMathAbs \DimMathAbs { m }
{
- \Return { \Expand { \dim_abs:n { #1 } } }
+ \prgReturn { \expWhole { \dim_abs:n { #1 } } }
}
-\PrgNewFunction \DimMathMax { m m }
+\fun@NewTwoFunctions \dimMathMax \DimMathMax { m m }
{
- \Return { \Expand { \dim_max:nn { #1 } { #2 } } }
+ \prgReturn { \expWhole { \dim_max:nn { #1 } { #2 } } }
}
-\PrgNewFunction \DimMathMin { m m }
+\fun@NewTwoFunctions \dimMathMin \DimMathMin { m m }
{
- \Return { \Expand { \dim_min:nn { #1 } { #2 } } }
+ \prgReturn { \expWhole { \dim_min:nn { #1 } { #2 } } }
}
-\PrgNewFunction \DimMathRatio { m m }
+\fun@NewTwoFunctions \dimMathRatio \DimMathRatio { m m }
{
- \Return { \Expand { \dim_ratio:nn { #1 } { #2 } } }
+ \prgReturn { \expWhole { \dim_ratio:nn { #1 } { #2 } } }
}
-\PrgNewFunction \DimNew { M } { \dim_new:N #1 }
+\fun@NewTwoFunctions \dimNew \DimNew { M } { \dim_new:N #1 }
-\PrgNewFunction \DimConst { M m } { \dim_const:Nn #1 {#2} }
+\fun@NewTwoFunctions \dimConst \DimConst { M m } { \dim_const:Nn #1 {#2} }
-\PrgNewFunction \DimUse { M } { \Return { \Value #1 } }
+\fun@NewTwoFunctions \dimUse \DimUse { M } { \prgReturn { \expValue #1 } }
-\PrgNewFunction \DimLog { m } { \dim_log:n { #1 } }
+\fun@NewTwoFunctions \dimLog \DimLog { m } { \dim_log:n { #1 } }
-\PrgNewFunction \DimVarLog { M } { \dim_log:N #1 }
+\fun@NewTwoFunctions \dimVarLog \DimVarLog { M } { \dim_log:N #1 }
-\PrgNewFunction \DimShow { m } { \dim_show:n { #1 } }
+\fun@NewTwoFunctions \dimShow \DimShow { m } { \dim_show:n { #1 } }
-\PrgNewFunction \DimVarShow { M } { \dim_show:N #1 }
+\fun@NewTwoFunctions \dimVarShow \DimVarShow { M } { \dim_show:N #1 }
-\PrgNewFunction \DimSet { M m }
+\fun@NewTwoFunctions \dimSet \DimSet { M m }
{
\__fun_do_assignment:Nnn #1 { \dim_gset:Nn #1 {#2} } { \dim_set:Nn #1 {#2} }
}
-\PrgNewFunction \DimSetEq { M M }
+\fun@NewTwoFunctions \dimSetEq \DimSetEq { M M }
{
- \__fun_do_assignment:Nnn #1 { \dim_gset_eq:NN #1 #2 } { \dim_set_eq:NN #1 #2 }
+ \__fun_do_assignment:Nnn #1
+ { \dim_gset_eq:NN #1 #2 } { \dim_set_eq:NN #1 #2 }
}
-\PrgNewFunction \DimZero { M }
+\fun@NewTwoFunctions \dimZero \DimZero { M }
{
\__fun_do_assignment:Nnn #1 { \dim_gzero:N #1 } { \dim_zero:N #1 }
}
-\PrgNewFunction \DimZeroNew { M }
+\fun@NewTwoFunctions \dimZeroNew \DimZeroNew { M }
{
\__fun_do_assignment:Nnn #1 { \dim_gzero_new:N #1 } { \dim_zero_new:N #1 }
}
-\PrgNewFunction \DimAdd { M m }
+\fun@NewTwoFunctions \dimAdd \DimAdd { M m }
{
\__fun_do_assignment:Nnn #1 { \dim_gadd:Nn #1 {#2} } { \dim_add:Nn #1 {#2} }
}
-\PrgNewFunction \DimSub { M m }
+\fun@NewTwoFunctions \dimSub \DimSub { M m }
{
\__fun_do_assignment:Nnn #1 { \dim_gsub:Nn #1 {#2} } { \dim_sub:Nn #1 {#2} }
}
-\PrgNewFunction \DimStepInline { m m m n }
+\fun@NewTwoFunctions \dimStepInline \DimStepInline { m m m n }
{
\dim_step_inline:nnnn { #1 } { #2 } { #3 } { #4 }
}
-\PrgNewFunction \DimStepVariable { m m m M n }
+\fun@NewTwoFunctions \dimStepVariable \DimStepVariable { m m m M n }
{
\dim_step_variable:nnnNn { #1 } { #2 } { #3 } #4 { #5 }
}
-\PrgNewConditional \DimIfExist { M }
+\fun@NewTwoConditionals \dimIfExist \DimIfExist { M }
{
- \dim_if_exist:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \dim_if_exist:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \DimCompare { m N m }
+\fun@NewTwoConditionals \dimCompare \DimCompare { m N m }
{
\dim_compare:nNnTF {#1} #2 {#3}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewFunction \DimCase { m m } { \dim_case:nn {#1} {#2} }
-\PrgNewFunction \DimCaseT { m m n } { \dim_case:nnT {#1} {#2} {#3} }
-\PrgNewFunction \DimCaseF { m m n } { \dim_case:nnF {#1} {#2} {#3} }
-\PrgNewFunction \DimCaseTF { m m n n } { \dim_case:nnTF {#1} {#2} {#3} {#4} }
+\fun@NewTwoFunctions \dimCase \DimCase { m m }
+ { \dim_case:nn {#1} {#2} }
+\fun@NewTwoFunctions \dimCaseT \DimCaseT { m m n }
+ { \dim_case:nnT {#1} {#2} {#3} }
+\fun@NewTwoFunctions \dimCaseF \DimCaseF { m m n }
+ { \dim_case:nnF {#1} {#2} {#3} }
+\fun@NewTwoFunctions \dimCaseTF \DimCaseTF { m m n n }
+ { \dim_case:nnTF {#1} {#2} {#3} {#4} }
%%% --------------------------------------------------------
%%> \section{Interfaces for Sorting Functions (Sort)}
%%% --------------------------------------------------------
-\cs_set_eq:NN \SortReturnSame \sort_return_same:
-\cs_set_eq:NN \SortReturnSwapped \sort_return_swapped:
+\cs_set_eq:NN \sortReturnSame \sort_return_same:
+\cs_set_eq:NN \sortReturnSwapped \sort_return_swapped:
%%% --------------------------------------------------------
%%> \section{Interfaces for Comma Separated Lists (Clist)}
@@ -1745,203 +1839,217 @@
\clist_set_eq:NN \cEmptyClist \c_empty_clist
-\PrgNewFunction \ClistNew { M } { \clist_new:N #1 }
+\fun@NewTwoFunctions \clistNew \ClistNew { M } { \clist_new:N #1 }
-\PrgNewFunction \ClistLog { m } { \clist_log:n { #1 } }
+\fun@NewTwoFunctions \clistLog \ClistLog { m } { \clist_log:n { #1 } }
-\PrgNewFunction \ClistVarLog { M } { \clist_log:N #1 }
+\fun@NewTwoFunctions \clistVarLog \ClistVarLog { M } { \clist_log:N #1 }
-\PrgNewFunction \ClistShow { m } { \clist_show:n { #1 } }
+\fun@NewTwoFunctions \clistShow \ClistShow { m } { \clist_show:n { #1 } }
-\PrgNewFunction \ClistVarShow { M } { \clist_show:N #1 }
+\fun@NewTwoFunctions \clistVarShow \ClistVarShow { M } { \clist_show:N #1 }
-\PrgNewFunction \ClistVarJoin { M m }
+\fun@NewTwoFunctions \clistVarJoin \ClistVarJoin { M m }
{
- \Expand { \clist_use:Nn #1 { #2 } }
+ \expWhole { \clist_use:Nn #1 { #2 } }
}
-\PrgNewFunction \ClistVarJoinExtended { M m m m }
+\fun@NewTwoFunctions \clistVarJoinExtended \ClistVarJoinExtended { M m m m }
{
- \Expand { \clist_use:Nnnn #1 { #2 } { #3 } { #4 } }
+ \expWhole { \clist_use:Nnnn #1 { #2 } { #3 } { #4 } }
}
-\PrgNewFunction \ClistJoin { m m }
+\fun@NewTwoFunctions \clistJoin \ClistJoin { m m }
{
- \Expand { \clist_use:nn { #1 } { #2 } }
+ \expWhole { \clist_use:nn { #1 } { #2 } }
}
-\PrgNewFunction \ClistJoinExtended { m m m m }
+\fun@NewTwoFunctions \clistJoinExtended \ClistJoinExtended { m m m m }
{
- \Expand { \clist_use:nnnn { #1 } { #2 } { #3 } { #4 } }
+ \expWhole { \clist_use:nnnn { #1 } { #2 } { #3 } { #4 } }
}
-\PrgNewFunction \ClistConst { M m } { \clist_const:Nn #1 { #2 } }
+\fun@NewTwoFunctions \clistConst \ClistConst { M m }
+ { \clist_const:Nn #1 { #2 } }
-\PrgNewFunction \ClistSet { M m }
+\fun@NewTwoFunctions \clistSet \ClistSet { M m }
{
\__fun_do_assignment:Nnn #1
{ \clist_gset:Nn #1 {#2} } { \clist_set:Nn #1 {#2} }
}
-\PrgNewFunction \ClistSetEq { M M }
+\fun@NewTwoFunctions \clistSetEq \ClistSetEq { M M }
{
\__fun_do_assignment:Nnn #1
{ \clist_gset_eq:NN #1 #2 } { \clist_set_eq:NN #1 #2 }
}
-\PrgNewFunction \ClistSetFromSeq { M M }
+\fun@NewTwoFunctions \clistSetFromSeq \ClistSetFromSeq { M M }
{
\__fun_do_assignment:Nnn #1
{ \clist_gset_from_seq:NN #1 #2 } { \clist_set_from_seq:NN #1 #2 }
}
-\PrgNewFunction \ClistConcat { M M M }
+\fun@NewTwoFunctions \clistConcat \ClistConcat { M M M }
{
\__fun_do_assignment:Nnn #1
{ \clist_gconcat:NNN #1 #2 #3 } { \clist_concat:NNN #1 #2 #3 }
}
-\PrgNewFunction \ClistClear { M }
+\fun@NewTwoFunctions \clistClear \ClistClear { M }
{
\__fun_do_assignment:Nnn #1 { \clist_gclear:N #1 } { \clist_clear:N #1 }
}
-\PrgNewFunction \ClistClearNew { M }
+\fun@NewTwoFunctions \clistClearNew \ClistClearNew { M }
{
- \__fun_do_assignment:Nnn #1 { \clist_gclear_new:N #1 } { \clist_clear_new:N #1 }
+ \__fun_do_assignment:Nnn #1
+ { \clist_gclear_new:N #1 } { \clist_clear_new:N #1 }
}
-\PrgNewFunction \ClistPutLeft { M m }
+\fun@NewTwoFunctions \clistPutLeft \ClistPutLeft { M m }
{
\__fun_do_assignment:Nnn #1
{ \clist_gput_left:Nn #1 {#2} } { \clist_put_left:Nn #1 {#2} }
}
-\PrgNewFunction \ClistPutRight { M m }
+\fun@NewTwoFunctions \clistPutRight \ClistPutRight { M m }
{
\__fun_do_assignment:Nnn #1
{ \clist_gput_right:Nn #1 {#2} } { \clist_put_right:Nn #1 {#2} }
}
-\PrgNewFunction \ClistVarRemoveDuplicates { M }
+\fun@NewTwoFunctions \clistVarRemoveDuplicates \ClistVarRemoveDuplicates { M }
{
\__fun_do_assignment:Nnn #1
{ \clist_gremove_duplicates:N #1 } { \clist_remove_duplicates:N #1 }
}
-\PrgNewFunction \ClistVarRemoveAll { M m }
+\fun@NewTwoFunctions \clistVarRemoveAll \ClistVarRemoveAll { M m }
{
\__fun_do_assignment:Nnn #1
{ \clist_gremove_all:Nn #1 {#2} } { \clist_remove_all:Nn #1 {#2} }
}
-\PrgNewFunction \ClistVarReverse { M }
+\fun@NewTwoFunctions \clistVarReverse \ClistVarReverse { M }
{
\__fun_do_assignment:Nnn #1 { \clist_greverse:N #1 } { \clist_reverse:N #1 }
}
-\PrgNewFunction \ClistVarSort { M m }
+\fun@NewTwoFunctions \clistVarSort \ClistVarSort { M m }
{
\__fun_do_assignment:Nnn #1
{ \clist_gsort:Nn #1 {#2} } { \clist_sort:Nn #1 {#2} }
}
-\PrgNewFunction \ClistCount { m } { \Expand { \clist_count:n { #1 } } }
+\fun@NewTwoFunctions \clistCount \ClistCount { m }
+ { \expWhole { \clist_count:n { #1 } } }
-\PrgNewFunction \ClistVarCount { M } { \Expand { \clist_count:N #1 } }
+\fun@NewTwoFunctions \clistVarCount \ClistVarCount { M }
+ { \expWhole { \clist_count:N #1 } }
-\PrgNewFunction \ClistGet { M M }
+\fun@NewTwoFunctions \clistGet \ClistGet { M M }
{
\clist_get:NN #1 #2
\__fun_quark_upgrade_no_value:N #2
}
-\PrgNewFunction \ClistGetT { M M n } { \clist_get:NNT #1 #2 {#3} }
-\PrgNewFunction \ClistGetF { M M n } { \clist_get:NNF #1 #2 {#3} }
-\PrgNewFunction \ClistGetTF { M M n n } { \clist_get:NNTF #1 #2 {#3} {#4} }
+\fun@NewTwoFunctions \clistGetT \ClistGetT { M M n }
+ { \clist_get:NNT #1 #2 {#3} }
+\fun@NewTwoFunctions \clistGetF \ClistGetF { M M n }
+ { \clist_get:NNF #1 #2 {#3} }
+\fun@NewTwoFunctions \clistGetTF \ClistGetTF { M M n n }
+ { \clist_get:NNTF #1 #2 {#3} {#4} }
-\PrgNewFunction \ClistPop { M M }
+\fun@NewTwoFunctions \clistPop \ClistPop { M M }
{
\__fun_do_assignment:Nnn #1
{ \clist_gpop:NN #1 #2 } { \clist_pop:NN #1 #2 }
\__fun_quark_upgrade_no_value:N #2
}
-\PrgNewFunction \ClistPopT { M M n }
+\fun@NewTwoFunctions \clistPopT \ClistPopT { M M n }
{
\__fun_do_assignment:Nnn #1
{ \clist_gpop:NNT #1 #2 {#3} } { \clist_pop:NNT #1 #2 {#3} }
}
-\PrgNewFunction \ClistPopF { M M n }
+\fun@NewTwoFunctions \clistPopF \ClistPopF { M M n }
{
\__fun_do_assignment:Nnn #1
{ \clist_gpop:NNF #1 #2 {#3} } { \clist_pop:NNF #1 #2 {#3} }
}
-\PrgNewFunction \ClistPopTF { M M n n }
+\fun@NewTwoFunctions \clistPopTF \ClistPopTF { M M n n }
{
\__fun_do_assignment:Nnn #1
{ \clist_gpop:NNTF #1 #2 {#3} {#4} } { \clist_pop:NNTF #1 #2 {#3} {#4} }
}
-\PrgNewFunction \ClistPush { M m }
+\fun@NewTwoFunctions \clistPush \ClistPush { M m }
{
\__fun_do_assignment:Nnn #1
{ \clist_gpush:Nn #1 {#2} } { \clist_push:Nn #1 {#2} }
}
-\PrgNewFunction \ClistItem { m m } { \Expand { \clist_item:nn {#1} {#2} } }
+\fun@NewTwoFunctions \clistItem \ClistItem { m m }
+ { \expWhole { \clist_item:nn {#1} {#2} } }
-\PrgNewFunction \ClistVarItem { M m } { \Expand { \clist_item:Nn #1 {#2} } }
+\fun@NewTwoFunctions \clistVarItem \ClistVarItem { M m }
+ { \expWhole { \clist_item:Nn #1 {#2} } }
-\PrgNewFunction \ClistRandItem { m } { \Expand { \clist_rand_item:n {#1} } }
+\fun@NewTwoFunctions \clistRandItem \ClistRandItem { m }
+ { \expWhole { \clist_rand_item:n {#1} } }
-\PrgNewFunction \ClistVarRandItem { M } { \Expand { \clist_rand_item:N #1 } }
+\fun@NewTwoFunctions \clistVarRandItem \ClistVarRandItem { M }
+ { \expWhole { \clist_rand_item:N #1 } }
-\PrgNewFunction \ClistMapInline { m n }
+\fun@NewTwoFunctions \clistMapInline \ClistMapInline { m n }
{
\clist_map_inline:nn {#1} {#2}
}
-\PrgNewFunction \ClistVarMapInline { M n }
+\fun@NewTwoFunctions \clistVarMapInline \ClistVarMapInline { M n }
{
\clist_map_inline:Nn #1 {#2}
}
-\PrgNewFunction \ClistMapVariable { m M n }
+\fun@NewTwoFunctions \clistMapVariable \ClistMapVariable { m M n }
{
\clist_map_variable:nNn {#1} #2 {#3}
}
-\PrgNewFunction \ClistVarMapVariable { M M n }
+\fun@NewTwoFunctions \clistVarMapVariable \ClistVarMapVariable { M M n }
{
\clist_map_variable:NNn #1 #2 {#3}
}
-\cs_set_eq:NN \ClistMapBreak \clist_map_break:
+\cs_set_eq:NN \clistMapBreak \clist_map_break:
-\PrgNewConditional \ClistIfExist { M }
+\fun@NewTwoConditionals \clistIfExist \ClistIfExist { M }
{
- \clist_if_exist:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \clist_if_exist:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \ClistIfEmpty { m }
+\fun@NewTwoConditionals \clistIfEmpty \ClistIfEmpty { m }
{
- \clist_if_empty:nTF {#1} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \clist_if_empty:nTF {#1}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \ClistVarIfEmpty { M }
+\fun@NewTwoConditionals \clistVarIfEmpty \ClistVarIfEmpty { M }
{
- \clist_if_empty:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \clist_if_empty:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \ClistIfIn { m m }
+\fun@NewTwoConditionals \clistIfIn \ClistIfIn { m m }
{
\clist_if_in:nnTF {#1} {#2}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \ClistVarIfIn { M m }
+\fun@NewTwoConditionals \clistVarIfIn \ClistVarIfIn { M m }
{
\clist_if_in:NnTF #1 {#2}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
%%% --------------------------------------------------------
@@ -1958,236 +2066,251 @@
\seq_set_eq:NN \cEmptySeq \c_empty_seq
-\PrgNewFunction \SeqNew { M } { \seq_new:N #1 }
+\fun@NewTwoFunctions \seqNew \SeqNew { M } { \seq_new:N #1 }
-\PrgNewFunction \SeqVarLog { M } { \seq_log:N #1 }
+\fun@NewTwoFunctions \seqVarLog \SeqVarLog { M } { \seq_log:N #1 }
-\PrgNewFunction \SeqVarShow { M } { \seq_show:N #1 }
+\fun@NewTwoFunctions \seqVarShow \SeqVarShow { M } { \seq_show:N #1 }
-\PrgNewFunction \SeqVarJoin { M m }
+\fun@NewTwoFunctions \seqVarJoin \SeqVarJoin { M m }
{
- \Expand { \seq_use:Nn #1 { #2 } }
+ \expWhole { \seq_use:Nn #1 { #2 } }
}
-\PrgNewFunction \SeqVarJoinExtended { M m m m }
+\fun@NewTwoFunctions \seqVarJoinExtended \SeqVarJoinExtended { M m m m }
{
- \Expand { \seq_use:Nnnn #1 { #2 } { #3 } { #4 } }
+ \expWhole { \seq_use:Nnnn #1 { #2 } { #3 } { #4 } }
}
-\PrgNewFunction \SeqJoin { m m }
+\fun@NewTwoFunctions \seqJoin \SeqJoin { m m }
{
- \Expand { \seq_use:nn { #1 } { #2 } }
+ \expWhole { \seq_use:nn { #1 } { #2 } }
}
-\PrgNewFunction \SeqJoinExtended { m m m m }
+\fun@NewTwoFunctions \seqJoinExtended \SeqJoinExtended { m m m m }
{
- \Expand { \seq_use:nnnn { #1 } { #2 } { #3 } { #4 } }
+ \expWhole { \seq_use:nnnn { #1 } { #2 } { #3 } { #4 } }
}
-\PrgNewFunction \SeqConstFromClist { M m } { \seq_const_from_clist:Nn #1 { #2 } }
+\fun@NewTwoFunctions \seqConstFromClist \SeqConstFromClist { M m }
+ { \seq_const_from_clist:Nn #1 { #2 } }
-\PrgNewFunction \SeqSetFromClist { M m }
+\fun@NewTwoFunctions \seqSetFromClist \SeqSetFromClist { M m }
{
\__fun_do_assignment:Nnn #1
{ \seq_gset_from_clist:Nn #1 {#2} } { \seq_set_from_clist:Nn #1 {#2} }
}
-\PrgNewFunction \SeqSetEq { M M }
+\fun@NewTwoFunctions \seqSetEq \SeqSetEq { M M }
{
\__fun_do_assignment:Nnn #1
{ \seq_gset_eq:NN #1 #2 } { \seq_set_eq:NN #1 #2 }
}
-\PrgNewFunction \SeqSetSplit { M m m }
+\fun@NewTwoFunctions \seqSetSplit \SeqSetSplit { M m m }
{
\__fun_do_assignment:Nnn #1
{ \seq_gset_split:Nnn #1 {#2} {#3} } { \seq_set_split:Nnn #1 {#2} {#3} }
}
-\PrgNewFunction \SeqConcat { M M M }
+\fun@NewTwoFunctions \seqConcat \SeqConcat { M M M }
{
\__fun_do_assignment:Nnn #1
{ \seq_gconcat:NNN #1 #2 #3 } { \seq_concat:NNN #1 #2 #3 }
}
-\PrgNewFunction \SeqClear { M }
+\fun@NewTwoFunctions \seqClear \SeqClear { M }
{
\__fun_do_assignment:Nnn #1 { \seq_gclear:N #1 } { \seq_clear:N #1 }
}
-\PrgNewFunction \SeqClearNew { M }
+\fun@NewTwoFunctions \seqClearNew \SeqClearNew { M }
{
\__fun_do_assignment:Nnn #1 { \seq_gclear_new:N #1 } { \seq_clear_new:N #1 }
}
-\PrgNewFunction \SeqPutLeft { M m }
+\fun@NewTwoFunctions \seqPutLeft \SeqPutLeft { M m }
{
\__fun_do_assignment:Nnn #1
{ \seq_gput_left:Nn #1 {#2} } { \seq_put_left:Nn #1 {#2} }
}
-\PrgNewFunction \SeqPutRight { M m }
+\fun@NewTwoFunctions \seqPutRight \SeqPutRight { M m }
{
\__fun_do_assignment:Nnn #1
{ \seq_gput_right:Nn #1 {#2} } { \seq_put_right:Nn #1 {#2} }
}
-\PrgNewFunction \SeqVarRemoveDuplicates { M }
+\fun@NewTwoFunctions \seqVarRemoveDuplicates \SeqVarRemoveDuplicates { M }
{
\__fun_do_assignment:Nnn #1
{ \seq_gremove_duplicates:N #1 } { \seq_remove_duplicates:N #1 }
}
-\PrgNewFunction \SeqVarRemoveAll { M m }
+\fun@NewTwoFunctions \seqVarRemoveAll \SeqVarRemoveAll { M m }
{
\__fun_do_assignment:Nnn #1
{ \seq_gremove_all:Nn #1 {#2} } { \seq_remove_all:Nn #1 {#2} }
}
-\PrgNewFunction \SeqVarReverse { M }
+\fun@NewTwoFunctions \seqVarReverse \SeqVarReverse { M }
{
\__fun_do_assignment:Nnn #1 { \seq_greverse:N #1 } { \seq_reverse:N #1 }
}
-\PrgNewFunction \SeqVarSort { M m }
+\fun@NewTwoFunctions \seqVarSort \SeqVarSort { M m }
{
\__fun_do_assignment:Nnn #1
{ \seq_gsort:Nn #1 {#2} } { \seq_sort:Nn #1 {#2} }
}
-\PrgNewFunction \SeqVarCount { M } { \Expand { \seq_count:N #1 } }
+\fun@NewTwoFunctions \seqVarCount \SeqVarCount { M }
+ { \expWhole { \seq_count:N #1 } }
-\PrgNewFunction \SeqGet { M M }
+\fun@NewTwoFunctions \seqGet \SeqGet { M M }
{
\seq_get:NN #1 #2
\__fun_quark_upgrade_no_value:N #2
}
-\PrgNewFunction \SeqGetT { M M n } { \seq_get:NNT #1 #2 {#3} }
-\PrgNewFunction \SeqGetF { M M n } { \seq_get:NNF #1 #2 {#3} }
-\PrgNewFunction \SeqGetTF { M M n n } { \seq_get:NNTF #1 #2 {#3} {#4} }
+\fun@NewTwoFunctions \seqGetT \SeqGetT { M M n }
+ { \seq_get:NNT #1 #2 {#3} }
+\fun@NewTwoFunctions \seqGetF \SeqGetF { M M n }
+ { \seq_get:NNF #1 #2 {#3} }
+\fun@NewTwoFunctions \seqGetTF \SeqGetTF { M M n n }
+ { \seq_get:NNTF #1 #2 {#3} {#4} }
-\PrgNewFunction \SeqPop { M M }
+\fun@NewTwoFunctions \seqPop \SeqPop { M M }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop:NN #1 #2 } { \seq_pop:NN #1 #2 }
\__fun_quark_upgrade_no_value:N #2
}
-\PrgNewFunction \SeqPopT { M M n }
+\fun@NewTwoFunctions \seqPopT \SeqPopT { M M n }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop:NNT #1 #2 {#3} } { \seq_pop:NNT #1 #2 {#3} }
}
-\PrgNewFunction \SeqPopF { M M n }
+\fun@NewTwoFunctions \seqPopF \SeqPopF { M M n }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop:NNF #1 #2 {#3} } { \seq_pop:NNF #1 #2 {#3} }
}
-\PrgNewFunction \SeqPopTF { M M n n }
+\fun@NewTwoFunctions \seqPopTF \SeqPopTF { M M n n }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop:NNTF #1 #2 {#3} {#4} } { \seq_pop:NNTF #1 #2 {#3} {#4} }
}
-\PrgNewFunction \SeqPush { M m }
+\fun@NewTwoFunctions \seqPush \SeqPush { M m }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpush:Nn #1 {#2} } { \seq_push:Nn #1 {#2} }
}
-\PrgNewFunction \SeqGetLeft { M M }
+\fun@NewTwoFunctions \seqGetLeft \SeqGetLeft { M M }
{
\seq_get_left:NN #1 #2
\__fun_quark_upgrade_no_value:N #2
}
-\PrgNewFunction \SeqGetLeftT { M M n } { \seq_get_left:NNT #1 #2 {#3} }
-\PrgNewFunction \SeqGetLeftF { M M n } { \seq_get_left:NNF #1 #2 {#3} }
-\PrgNewFunction \SeqGetLeftTF { M M n n } { \seq_get_left:NNTF #1 #2 {#3} {#4} }
+\fun@NewTwoFunctions \seqGetLeftT \SeqGetLeftT { M M n }
+ { \seq_get_left:NNT #1 #2 {#3} }
+\fun@NewTwoFunctions \seqGetLeftF \SeqGetLeftF { M M n }
+ { \seq_get_left:NNF #1 #2 {#3} }
+\fun@NewTwoFunctions \seqGetLeftTF \SeqGetLeftTF { M M n n }
+ { \seq_get_left:NNTF #1 #2 {#3} {#4} }
-\PrgNewFunction \SeqGetRight { M M }
+\fun@NewTwoFunctions \seqGetRight \SeqGetRight { M M }
{
\seq_get_right:NN #1 #2
\__fun_quark_upgrade_no_value:N #2
}
-\PrgNewFunction \SeqGetRightT { M M n } { \seq_get_right:NNT #1 #2 {#3} }
-\PrgNewFunction \SeqGetRightF { M M n } { \seq_get_right:NNF #1 #2 {#3} }
-\PrgNewFunction \SeqGetRightTF { M M n n } { \seq_get_right:NNTF #1 #2 {#3} {#4} }
+\fun@NewTwoFunctions \seqGetRightT \SeqGetRightT { M M n }
+ { \seq_get_right:NNT #1 #2 {#3} }
+\fun@NewTwoFunctions \seqGetRightF \SeqGetRightF { M M n }
+ { \seq_get_right:NNF #1 #2 {#3} }
+\fun@NewTwoFunctions \seqGetRightTF \SeqGetRightTF { M M n n }
+ { \seq_get_right:NNTF #1 #2 {#3} {#4} }
-\PrgNewFunction \SeqPopLeft { M M }
+\fun@NewTwoFunctions \seqPopLeft \SeqPopLeft { M M }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop_left:NN #1 #2 } { \seq_pop_left:NN #1 #2 }
\__fun_quark_upgrade_no_value:N #2
}
-\PrgNewFunction \SeqPopLeftT { M M n }
+\fun@NewTwoFunctions \seqPopLeftT \SeqPopLeftT { M M n }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop_left:NNT #1 #2 {#3} } { \seq_pop_left:NNT #1 #2 {#3} }
}
-\PrgNewFunction \SeqPopLeftF { M M n }
+\fun@NewTwoFunctions \seqPopLeftF \SeqPopLeftF { M M n }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop_left:NNF #1 #2 {#3} } { \seq_pop_left:NNF #1 #2 {#3} }
}
-\PrgNewFunction \SeqPopLeftTF { M M n n }
+\fun@NewTwoFunctions \seqPopLeftTF \SeqPopLeftTF { M M n n }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop_left:NNTF #1 #2 {#3} {#4} }
{ \seq_pop_left:NNTF #1 #2 {#3} {#4} }
}
-\PrgNewFunction \SeqPopRight { M M }
+\fun@NewTwoFunctions \seqPopRight \SeqPopRight { M M }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop_right:NN #1 #2 } { \seq_pop_right:NN #1 #2 }
\__fun_quark_upgrade_no_value:N #2
}
-\PrgNewFunction \SeqPopRightT { M M n }
+\fun@NewTwoFunctions \seqPopRightT \SeqPopRightT { M M n }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop_right:NNT #1 #2 {#3} } { \seq_pop_right:NNT #1 #2 {#3} }
}
-\PrgNewFunction \SeqPopRightF { M M n }
+\fun@NewTwoFunctions \seqPopRightF \SeqPopRightF { M M n }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop_right:NNF #1 #2 {#3} } { \seq_pop_right:NNF #1 #2 {#3} }
}
-\PrgNewFunction \SeqPopRightTF { M M n n }
+\fun@NewTwoFunctions \seqPopRightTF \SeqPopRightTF { M M n n }
{
\__fun_do_assignment:Nnn #1
{ \seq_gpop_right:NNTF #1 #2 {#3} {#4} }
{ \seq_pop_right:NNTF #1 #2 {#3} {#4} }
}
-\PrgNewFunction \SeqVarItem { M m } { \Expand { \seq_item:Nn #1 {#2} } }
+\fun@NewTwoFunctions \seqVarItem \SeqVarItem { M m }
+ { \expWhole { \seq_item:Nn #1 {#2} } }
-\PrgNewFunction \SeqVarRandItem { M } { \Expand { \seq_rand_item:N #1 } }
+\fun@NewTwoFunctions \seqVarRandItem \SeqVarRandItem { M }
+ { \expWhole { \seq_rand_item:N #1 } }
-\PrgNewFunction \SeqVarMapInline { M n }
+\fun@NewTwoFunctions \seqVarMapInline \SeqVarMapInline { M n }
{
\seq_map_inline:Nn #1 {#2}
}
-\PrgNewFunction \SeqVarMapVariable { M M n }
+\fun@NewTwoFunctions \seqVarMapVariable \SeqVarMapVariable { M M n }
{
\seq_map_variable:NNn #1 #2 {#3}
}
-\cs_set_eq:NN \SeqMapBreak \seq_map_break:
+\cs_set_eq:NN \seqMapBreak \seq_map_break:
-\PrgNewConditional \SeqIfExist { M }
+\fun@NewTwoConditionals \seqIfExist \SeqIfExist { M }
{
- \seq_if_exist:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \seq_if_exist:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \SeqVarIfEmpty { M }
+\fun@NewTwoConditionals \seqVarIfEmpty \SeqVarIfEmpty { M }
{
- \seq_if_empty:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \seq_if_empty:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \SeqVarIfIn { M m }
+\fun@NewTwoConditionals \seqVarIfIn \SeqVarIfIn { M m }
{
\seq_if_in:NnTF #1 {#2}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
%%% --------------------------------------------------------
@@ -2204,126 +2327,134 @@
\prop_set_eq:NN \cEmptyProp \c_empty_prop
-\PrgNewFunction \PropNew { M } { \prop_new:N #1 }
+\fun@NewTwoFunctions \propNew \PropNew { M } { \prop_new:N #1 }
-\PrgNewFunction \PropVarLog { M } { \prop_log:N #1 }
+\fun@NewTwoFunctions \propVarLog \PropVarLog { M } { \prop_log:N #1 }
-\PrgNewFunction \PropVarShow { M } { \prop_show:N #1 }
+\fun@NewTwoFunctions \propVarShow \PropVarShow { M } { \prop_show:N #1 }
-\PrgNewFunction \PropConstFromKeyval { M m }
+\fun@NewTwoFunctions \propConstFromKeyval \PropConstFromKeyval { M m }
{ \prop_const_from_keyval:Nn #1 { #2 } }
-\PrgNewFunction \PropSetFromKeyval { M m }
+\fun@NewTwoFunctions \propSetFromKeyval \PropSetFromKeyval { M m }
{
\__fun_do_assignment:Nnn #1
{ \prop_gset_from_keyval:Nn #1 {#2} } { \prop_set_from_keyval:Nn #1 {#2} }
}
-\PrgNewFunction \PropSetEq { M M }
+\fun@NewTwoFunctions \propSetEq \PropSetEq { M M }
{
\__fun_do_assignment:Nnn #1
{ \prop_gset_eq:NN #1 #2 } { \prop_set_eq:NN #1 #2 }
}
-\PrgNewFunction \PropClear { M }
+\fun@NewTwoFunctions \propClear \PropClear { M }
{
\__fun_do_assignment:Nnn #1 { \prop_gclear:N #1 } { \prop_clear:N #1 }
}
-\PrgNewFunction \PropClearNew { M }
+\fun@NewTwoFunctions \propClearNew \PropClearNew { M }
{
\__fun_do_assignment:Nnn #1 { \prop_gclear_new:N #1 } { \prop_clear_new:N #1 }
}
-\PrgNewFunction \PropConcat { M M M }
+\fun@NewTwoFunctions \propConcat \PropConcat { M M M }
{
\__fun_do_assignment:Nnn #1
{ \prop_gconcat:NNN #1 #2 #3 } { \prop_concat:NNN #1 #2 #3 }
}
-\PrgNewFunction \PropPut { M m m }
+\fun@NewTwoFunctions \propPut \PropPut { M m m }
{
\__fun_do_assignment:Nnn #1
{ \prop_gput:Nnn #1 {#2} {#3} } { \prop_put:Nnn #1 {#2} {#3} }
}
-\PrgNewFunction \PropPutIfNew { M m m }
+\fun@NewTwoFunctions \propPutIfNew \PropPutIfNew { M m m }
{
\__fun_do_assignment:Nnn #1
{ \prop_gput_if_new:Nnn #1 {#2} {#3} } { \prop_put_if_new:Nnn #1 {#2} {#3} }
}
-\PrgNewFunction \PropPutFromKeyval { M m }
+\fun@NewTwoFunctions \propPutFromKeyval \PropPutFromKeyval { M m }
{
\__fun_do_assignment:Nnn #1
{ \prop_gput_from_keyval:Nn #1 {#2} } { \prop_put_from_keyval:Nn #1 {#2} }
}
-\PrgNewFunction \PropVarRemove { M m }
+\fun@NewTwoFunctions \propVarRemove \PropVarRemove { M m }
{
\__fun_do_assignment:Nnn #1
{ \prop_gremove:Nn #1 {#2} } { \prop_remove:Nn #1 {#2} }
}
-\PrgNewFunction \PropVarCount { M } { \Expand { \prop_count:N #1 } }
+\fun@NewTwoFunctions \propVarCount \PropVarCount { M }
+ { \expWhole { \prop_count:N #1 } }
-\PrgNewFunction \PropVarItem { M m } { \Expand { \prop_item:Nn #1 {#2} } }
+\fun@NewTwoFunctions \propVarItem \PropVarItem { M m }
+ { \expWhole { \prop_item:Nn #1 {#2} } }
-\PrgNewFunction \PropToKeyval { M } { \Expand { \prop_to_keyval:N #1 } }
+\fun@NewTwoFunctions \propToKeyval \PropToKeyval { M }
+ { \expWhole { \prop_to_keyval:N #1 } }
-\PrgNewFunction \PropGet { M m M }
+\fun@NewTwoFunctions \propGet \PropGet { M m M }
{
\prop_get:NnN #1 {#2} #3
\__fun_quark_upgrade_no_value:N #3
}
-\PrgNewFunction \PropGetT { M m M n } { \prop_get:NnNT #1 {#2} #3 {#4} }
-\PrgNewFunction \PropGetF { M m M n } { \prop_get:NnNF #1 {#2} #3 {#4} }
-\PrgNewFunction \PropGetTF { M m M n n } { \prop_get:NnNTF #1 {#2} #3 {#4} {#5} }
+\fun@NewTwoFunctions \propGetT \PropGetT { M m M n }
+ { \prop_get:NnNT #1 {#2} #3 {#4} }
+\fun@NewTwoFunctions \propGetF \PropGetF { M m M n }
+ { \prop_get:NnNF #1 {#2} #3 {#4} }
+\fun@NewTwoFunctions \propGetTF \PropGetTF { M m M n n }
+ { \prop_get:NnNTF #1 {#2} #3 {#4} {#5} }
-\PrgNewFunction \PropPop { M m M }
+\fun@NewTwoFunctions \propPop \PropPop { M m M }
{
\__fun_do_assignment:Nnn #1
{ \prop_gpop:NnN #1 {#2} #3 } { \prop_pop:NnN #1 {#2} #3 }
\__fun_quark_upgrade_no_value:N #3
}
-\PrgNewFunction \PropPopT { M m M n }
+\fun@NewTwoFunctions \propPopT \PropPopT { M m M n }
{
\__fun_do_assignment:Nnn #1
{ \prop_gpop:NnNT #1 {#2} #3 {#4} } { \prop_pop:NnNT #1 {#2} #3 {#4} }
}
-\PrgNewFunction \PropPopF { M m M n }
+\fun@NewTwoFunctions \propPopF \PropPopF { M m M n }
{
\__fun_do_assignment:Nnn #1
{ \prop_gpop:NnNF #1 {#2} #3 {#4} } { \prop_pop:NnNF #1 {#2} #3 {#4} }
}
-\PrgNewFunction \PropPopTF { M m M n n }
+\fun@NewTwoFunctions \propPopTF \PropPopTF { M m M n n }
{
\__fun_do_assignment:Nnn #1
{ \prop_gpop:NnNTF #1 {#2} #3 {#4} {#5} }
{ \prop_pop:NnNTF #1 {#2} #3 {#4} {#5} }
}
-\PrgNewFunction \PropVarMapInline { M n }
+\fun@NewTwoFunctions \propVarMapInline \PropVarMapInline { M n }
{
\prop_map_inline:Nn #1 {#2}
}
-\cs_set_eq:NN \PropMapBreak \prop_map_break:
+\cs_set_eq:NN \propMapBreak \prop_map_break:
-\PrgNewConditional \PropIfExist { M }
+\fun@NewTwoConditionals \propIfExist \PropIfExist { M }
{
- \prop_if_exist:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \prop_if_exist:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \PropVarIfEmpty { M }
+\fun@NewTwoConditionals \propVarIfEmpty \PropVarIfEmpty { M }
{
- \prop_if_empty:NTF #1 { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \prop_if_empty:NTF #1
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \PropVarIfIn { M m }
+\fun@NewTwoConditionals \propVarIfIn \PropVarIfIn { M m }
{
\prop_if_in:NnTF #1 {#2}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
%%% --------------------------------------------------------
@@ -2340,263 +2471,263 @@
\regex_new:N \l@FunTmpyRegex \regex_new:N \g@FunTmpyRegex
\regex_new:N \l@FunTmpzRegex \regex_new:N \g@FunTmpzRegex
-\PrgNewFunction \RegexNew { M } { \regex_new:N #1 }
+\fun@NewTwoFunctions \regexNew \RegexNew { M } { \regex_new:N #1 }
-\PrgNewFunction \RegexSet { M m }
+\fun@NewTwoFunctions \regexSet \RegexSet { M m }
{
\__fun_do_assignment:Nnn #1
{ \regex_gset:Nn #1 {#2} } { \regex_set:Nn #1 {#2} }
}
-\PrgNewFunction \RegexConst { M m } { \regex_const:Nn #1 {#2} }
+\fun@NewTwoFunctions \regexConst \RegexConst { M m } { \regex_const:Nn #1 {#2} }
-\PrgNewFunction \RegexLog { m } { \regex_log:n {#1} }
+\fun@NewTwoFunctions \regexLog \RegexLog { m } { \regex_log:n {#1} }
-\PrgNewFunction \RegexVarLog { M } { \regex_log:N #1 }
+\fun@NewTwoFunctions \regexVarLog \RegexVarLog { M } { \regex_log:N #1 }
-\PrgNewFunction \RegexShow { m } { \regex_show:n {#1} }
+\fun@NewTwoFunctions \regexShow \RegexShow { m } { \regex_show:n {#1} }
-\PrgNewFunction \RegexVarShow { M } { \regex_show:N #1 }
+\fun@NewTwoFunctions \regexVarShow \RegexVarShow { M } { \regex_show:N #1 }
-\PrgNewConditional \RegexMatch { m m }
+\fun@NewTwoConditionals \regexMatch \RegexMatch { m m }
{
\regex_match:nnTF {#1} {#2}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewConditional \RegexVarMatch { M m }
+\fun@NewTwoConditionals \regexVarMatch \RegexVarMatch { M m }
{
\regex_match:NnTF #1 {#2}
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewFunction \RegexCount { m m M }
+\fun@NewTwoFunctions \regexCount \RegexCount { m m M }
{
\regex_count:nnN {#1} {#2} #3
}
-\PrgNewFunction \RegexVarCount { M m M }
+\fun@NewTwoFunctions \regexVarCount \RegexVarCount { M m M }
{
\regex_count:NnN #1 {#2} #3
}
-\PrgNewFunction \RegexMatchCase { m m }
+\fun@NewTwoFunctions \regexMatchCase \RegexMatchCase { m m }
{
\regex_match_case:nn {#1} {#2}
}
-\PrgNewFunction \RegexMatchCaseT { m m n }
+\fun@NewTwoFunctions \regexMatchCaseT \RegexMatchCaseT { m m n }
{
\regex_match_case:nnT {#1} {#2} {#3}
}
-\PrgNewFunction \RegexMatchCaseF { m m n }
+\fun@NewTwoFunctions \regexMatchCaseF \RegexMatchCaseF { m m n }
{
\regex_match_case:nnF {#1} {#2} {#3}
}
-\PrgNewFunction \RegexMatchCaseTF { m m n n }
+\fun@NewTwoFunctions \regexMatchCaseTF \RegexMatchCaseTF { m m n n }
{
\regex_match_case:nnTF {#1} {#2} {#3} {#4}
}
-\PrgNewFunction \RegexExtractOnce { m m M }
+\fun@NewTwoFunctions \regexExtractOnce \RegexExtractOnce { m m M }
{
\regex_extract_once:nnN {#1} {#2} #3
}
-\PrgNewFunction \RegexExtractOnceT { m m M n }
+\fun@NewTwoFunctions \regexExtractOnceT \RegexExtractOnceT { m m M n }
{
\regex_extract_once:nnNT {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexExtractOnceF { m m M n }
+\fun@NewTwoFunctions \regexExtractOnceF \RegexExtractOnceF { m m M n }
{
\regex_extract_once:nnNF {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexExtractOnceTF { m m M n n }
+\fun@NewTwoFunctions \regexExtractOnceTF \RegexExtractOnceTF { m m M n n }
{
\regex_extract_once:nnNTF {#1} {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexVarExtractOnce { M m M }
+\fun@NewTwoFunctions \regexVarExtractOnce \RegexVarExtractOnce { M m M }
{
\regex_extract_once:NnN #1 {#2} #3
}
-\PrgNewFunction \RegexVarExtractOnceT { M m M n }
+\fun@NewTwoFunctions \regexVarExtractOnceT \RegexVarExtractOnceT { M m M n }
{
\regex_extract_once:NnNT #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarExtractOnceF { M m M n }
+\fun@NewTwoFunctions \regexVarExtractOnceF \RegexVarExtractOnceF { M m M n }
{
\regex_extract_once:NnNF #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarExtractOnceTF { M m M n n }
+\fun@NewTwoFunctions \regexVarExtractOnceTF \RegexVarExtractOnceTF { M m M n n }
{
\regex_extract_once:NnNTF #1 {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexExtractAll { m m M }
+\fun@NewTwoFunctions \regexExtractAll \RegexExtractAll { m m M }
{
\regex_extract_all:nnN {#1} {#2} #3
}
-\PrgNewFunction \RegexExtractAllT { m m M n }
+\fun@NewTwoFunctions \regexExtractAllT \RegexExtractAllT { m m M n }
{
\regex_extract_all:nnNT {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexExtractAllF { m m M n }
+\fun@NewTwoFunctions \regexExtractAllF \RegexExtractAllF { m m M n }
{
\regex_extract_all:nnNF {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexExtractAllTF { m m M n n }
+\fun@NewTwoFunctions \regexExtractAllTF \RegexExtractAllTF { m m M n n }
{
\regex_extract_all:nnNTF {#1} {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexVarExtractAll { M m M }
+\fun@NewTwoFunctions \regexVarExtractAll \RegexVarExtractAll { M m M }
{
\regex_extract_all:NnN #1 {#2} #3
}
-\PrgNewFunction \RegexVarExtractAllT { M m M n }
+\fun@NewTwoFunctions \regexVarExtractAllT \RegexVarExtractAllT { M m M n }
{
\regex_extract_all:NnNT #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarExtractAllF { M m M n }
+\fun@NewTwoFunctions \regexVarExtractAllF \RegexVarExtractAllF { M m M n }
{
\regex_extract_all:NnNF #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarExtractAllTF { M m M n n }
+\fun@NewTwoFunctions \regexVarExtractAllTF \RegexVarExtractAllTF { M m M n n }
{
\regex_extract_all:NnNTF #1 {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexSplit { m m M }
+\fun@NewTwoFunctions \regexSplit \RegexSplit { m m M }
{
\regex_split:nnN {#1} {#2} #3
}
-\PrgNewFunction \RegexSplitT { m m M n }
+\fun@NewTwoFunctions \regexSplitT \RegexSplitT { m m M n }
{
\regex_split:nnNT {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexSplitF { m m M n }
+\fun@NewTwoFunctions \regexSplitF \RegexSplitF { m m M n }
{
\regex_split:nnNF {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexSplitTF { m m M n n }
+\fun@NewTwoFunctions \regexSplitTF \RegexSplitTF { m m M n n }
{
\regex_split:nnNTF {#1} {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexVarSplit { M m M }
+\fun@NewTwoFunctions \regexVarSplit \RegexVarSplit { M m M }
{
\regex_split:NnN #1 {#2} #3
}
-\PrgNewFunction \RegexVarSplitT { M m M n }
+\fun@NewTwoFunctions \regexVarSplitT \RegexVarSplitT { M m M n }
{
\regex_split:NnNT #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarSplitF { M m M n }
+\fun@NewTwoFunctions \regexVarSplitF \RegexVarSplitF { M m M n }
{
\regex_split:NnNF #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarSplitTF { M m M n n }
+\fun@NewTwoFunctions \regexVarSplitTF \RegexVarSplitTF { M m M n n }
{
\regex_split:NnNTF #1 {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexReplaceOnce { m m M }
+\fun@NewTwoFunctions \regexReplaceOnce \RegexReplaceOnce { m m M }
{
\regex_replace_once:nnN {#1} {#2} #3
}
-\PrgNewFunction \RegexReplaceOnceT { m m M n }
+\fun@NewTwoFunctions \regexReplaceOnceT \RegexReplaceOnceT { m m M n }
{
\regex_replace_once:nnNT {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexReplaceOnceF { m m M n }
+\fun@NewTwoFunctions \regexReplaceOnceF \RegexReplaceOnceF { m m M n }
{
\regex_replace_once:nnNF {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexReplaceOnceTF { m m M n n }
+\fun@NewTwoFunctions \regexReplaceOnceTF \RegexReplaceOnceTF { m m M n n }
{
\regex_replace_once:nnNTF {#1} {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexVarReplaceOnce { M m M }
+\fun@NewTwoFunctions \regexVarReplaceOnce \RegexVarReplaceOnce { M m M }
{
\regex_replace_once:NnN #1 {#2} #3
}
-\PrgNewFunction \RegexVarReplaceOnceT { M m M n }
+\fun@NewTwoFunctions \regexVarReplaceOnceT \RegexVarReplaceOnceT { M m M n }
{
\regex_replace_once:NnNT #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarReplaceOnceF { M m M n }
+\fun@NewTwoFunctions \regexVarReplaceOnceF \RegexVarReplaceOnceF { M m M n }
{
\regex_replace_once:NnNF #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarReplaceOnceTF { M m M n n }
+\fun@NewTwoFunctions \regexVarReplaceOnceTF \RegexVarReplaceOnceTF { M m M n n }
{
\regex_replace_once:NnNTF #1 {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexReplaceAll { m m M }
+\fun@NewTwoFunctions \regexReplaceAll \RegexReplaceAll { m m M }
{
\regex_replace_all:nnN {#1} {#2} #3
}
-\PrgNewFunction \RegexReplaceAllT { m m M n }
+\fun@NewTwoFunctions \regexReplaceAllT \RegexReplaceAllT { m m M n }
{
\regex_replace_all:nnNT {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexReplaceAllF { m m M n }
+\fun@NewTwoFunctions \regexReplaceAllF \RegexReplaceAllF { m m M n }
{
\regex_replace_all:nnNF {#1} {#2} #3 {#4}
}
-\PrgNewFunction \RegexReplaceAllTF { m m M n n }
+\fun@NewTwoFunctions \regexReplaceAllTF \RegexReplaceAllTF { m m M n n }
{
\regex_replace_all:nnNTF {#1} {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexVarReplaceAll { M m M }
+\fun@NewTwoFunctions \regexVarReplaceAll \RegexVarReplaceAll { M m M }
{
\regex_replace_all:NnN #1 {#2} #3
}
-\PrgNewFunction \RegexVarReplaceAllT { M m M n }
+\fun@NewTwoFunctions \regexVarReplaceAllT \RegexVarReplaceAllT { M m M n }
{
\regex_replace_all:NnNT #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarReplaceAllF { M m M n }
+\fun@NewTwoFunctions \regexVarReplaceAllF \RegexVarReplaceAllF { M m M n }
{
\regex_replace_all:NnNF #1 {#2} #3 {#4}
}
-\PrgNewFunction \RegexVarReplaceAllTF { M m M n n }
+\fun@NewTwoFunctions \regexVarReplaceAllTF \RegexVarReplaceAllTF { M m M n n }
{
\regex_replace_all:NnNTF #1 {#2} #3 {#4} {#5}
}
-\PrgNewFunction \RegexReplaceCaseOnce { m M }
+\fun@NewTwoFunctions \regexReplaceCaseOnce \RegexReplaceCaseOnce { m M }
{
\regex_replace_case_once:nN {#1} #2
}
-\PrgNewFunction \RegexReplaceCaseOnceT { m M n }
+\fun@NewTwoFunctions \regexReplaceCaseOnceT \RegexReplaceCaseOnceT { m M n }
{
\regex_replace_case_once:nN {#1} #2 {#3}
}
-\PrgNewFunction \RegexReplaceCaseOnceF { m M n }
+\fun@NewTwoFunctions \regexReplaceCaseOnceF \RegexReplaceCaseOnceF { m M n }
{
\regex_replace_case_once:nN {#1} #2 {#3}
}
-\PrgNewFunction \RegexReplaceCaseOnceTF { m M n n }
+\fun@NewTwoFunctions \regexReplaceCaseOnceTF \RegexReplaceCaseOnceTF { m M n n }
{
\regex_replace_case_once:nN {#1} #2 {#3} {#4}
}
-\PrgNewFunction \RegexReplaceCaseAll { m M }
+\fun@NewTwoFunctions \regexReplaceCaseAll \RegexReplaceCaseAll { m M }
{
\regex_replace_case_all:nN {#1} #2
}
-\PrgNewFunction \RegexReplaceCaseAllT { m M n }
+\fun@NewTwoFunctions \regexReplaceCaseAllT \RegexReplaceCaseAllT { m M n }
{
\regex_replace_case_all:nN {#1} #2 {#3}
}
-\PrgNewFunction \RegexReplaceCaseAllF { m M n }
+\fun@NewTwoFunctions \regexReplaceCaseAllF \ { m M n }
{
\regex_replace_case_all:nN {#1} #2 {#3}
}
-\PrgNewFunction \RegexReplaceCaseAllTF { m M n n }
+\fun@NewTwoFunctions \regexReplaceCaseAllTF \RegexReplaceCaseAllTF { m M n n }
{
\regex_replace_case_all:nN {#1} #2 {#3} {#4}
}
@@ -2605,113 +2736,113 @@
%%> \section{Interfaces for Token Manipulation (Token)}
%%% --------------------------------------------------------
-\PrgNewFunction \CharLowercase { M }
+\fun@NewTwoFunctions \charLowercase \CharLowercase { M }
{
- \Expand { \char_lowercase:N #1 }
+ \expWhole { \char_lowercase:N #1 }
}
-\PrgNewFunction \CharUppercase { M }
+\fun@NewTwoFunctions \charUppercase \CharUppercase { M }
{
- \Expand { \char_uppercase:N #1 }
+ \expWhole { \char_uppercase:N #1 }
}
-\PrgNewFunction \CharTitlecase { M }
+\fun@NewTwoFunctions \charTitlecase \CharTitlecase { M }
{
- \Expand { \char_titlecase:N #1 }
+ \expWhole { \char_titlecase:N #1 }
}
-\PrgNewFunction \CharFoldcase { M }
+\fun@NewTwoFunctions \charFoldcase \CharFoldcase { M }
{
- \Expand { \char_foldcase:N #1 }
+ \expWhole { \char_foldcase:N #1 }
}
-\PrgNewFunction \CharStrLowercase { M }
+\fun@NewTwoFunctions \charStrLowercase \CharStrLowercase { M }
{
- \Expand { \char_str_lowercase:N #1 }
+ \expWhole { \char_str_lowercase:N #1 }
}
-\PrgNewFunction \CharStrUppercase { M }
+\fun@NewTwoFunctions \charStrUppercase \CharStrUppercase { M }
{
- \Expand { \char_str_uppercase:N #1 }
+ \expWhole { \char_str_uppercase:N #1 }
}
-\PrgNewFunction \CharStrTitlecase { M }
+\fun@NewTwoFunctions \charStrTitlecase \CharStrTitlecase { M }
{
- \Expand { \char_str_titlecase:N #1 }
+ \expWhole { \char_str_titlecase:N #1 }
}
-\PrgNewFunction \CharStrFoldcase { M }
+\fun@NewTwoFunctions \charStrFoldcase \CharStrFoldcase { M }
{
- \Expand { \char_str_foldcase:N #1 }
+ \expWhole { \char_str_foldcase:N #1 }
}
-\PrgNewFunction \CharSetLccode { m m }
+\fun@NewTwoFunctions \charSetLccode \CharSetLccode { m m }
{
\char_set_lccode:nn {#1} {#2}
}
-\PrgNewFunction \CharValueLccode { m }
+\fun@NewTwoFunctions \charValueLccode \CharValueLccode { m }
{
- \Expand { \char_value_lccode:n {#1} }
+ \expWhole { \char_value_lccode:n {#1} }
}
-\PrgNewFunction \CharSetUccode { m m }
+\fun@NewTwoFunctions \charSetUccode \CharSetUccode { m m }
{
\char_set_uccode:nn {#1} {#2}
}
-\PrgNewFunction \CharValueUccode { m }
+\fun@NewTwoFunctions \charValueUccode \CharValueUccode { m }
{
- \Expand { \char_value_uccode:n {#1} }
+ \expWhole { \char_value_uccode:n {#1} }
}
%%% --------------------------------------------------------
%%> \section{Interfaces for Text Processing (Text)}
%%% --------------------------------------------------------
-\PrgNewFunction \TextExpand { m }
+\fun@NewTwoFunctions \textExpand \TextExpand { m }
{
- \Expand { \text_expand:n {#1} }
+ \expWhole { \text_expand:n {#1} }
}
-\PrgNewFunction \TextLowercase { m }
+\fun@NewTwoFunctions \textLowercase \TextLowercase { m }
{
- \Expand { \text_lowercase:n {#1} }
+ \expWhole { \text_lowercase:n {#1} }
}
-\PrgNewFunction \TextUppercase { m }
+\fun@NewTwoFunctions \textUppercase \TextUppercase { m }
{
- \Expand { \text_uppercase:n {#1} }
+ \expWhole { \text_uppercase:n {#1} }
}
-\PrgNewFunction \TextTitlecase { m }
+\fun@NewTwoFunctions \textTitlecase \TextTitlecase { m }
{
- \Expand { \text_titlecase:n {#1} }
+ \expWhole { \text_titlecase:n {#1} }
}
-\PrgNewFunction \TextTitlecaseFirst { m }
+\fun@NewTwoFunctions \textTitlecaseFirst \TextTitlecaseFirst { m }
{
- \Expand { \text_titlecase_first:n {#1} }
+ \expWhole { \text_titlecase_first:n {#1} }
}
-\PrgNewFunction \TextLangLowercase { m m }
+\fun@NewTwoFunctions \textLangLowercase \TextLangLowercase { m m }
{
- \Expand { \text_lowercase:nn {#1} {#2} }
+ \expWhole { \text_lowercase:nn {#1} {#2} }
}
-\PrgNewFunction \TextLangUppercase { m m }
+\fun@NewTwoFunctions \textLangUppercase \TextLangUppercase { m m }
{
- \Expand { \text_uppercase:nn {#1} {#2} }
+ \expWhole { \text_uppercase:nn {#1} {#2} }
}
-\PrgNewFunction \TextLangTitlecase { m m }
+\fun@NewTwoFunctions \textLangTitlecase \TextLangTitlecase { m m }
{
- \Expand { \text_titlecase:nn {#1} {#2} }
+ \expWhole { \text_titlecase:nn {#1} {#2} }
}
-\PrgNewFunction \TextLangTitlecaseFirst { m m }
+\fun@NewTwoFunctions \textLangTitlecaseFirst \TextLangTitlecaseFirst { m m }
{
- \Expand { \text_titlecase_first:nn {#1} {#2} }
+ \expWhole { \text_titlecase_first:nn {#1} {#2} }
}
%%% --------------------------------------------------------
@@ -2720,52 +2851,53 @@
\msg_new:nnn { functional } { file-not-found } { File ~ "#1" ~ not ~ found! }
-\PrgNewFunction \FileInput { m }
+\fun@NewTwoFunctions \fileInput \FileInput { m }
{
\file_get:nnN {#1} {} \l@FunTmpxTl
\quark_if_no_value:NTF \l@FunTmpxTl
{ \msg_error:nnn { functional } { file-not-found } { #1 } }
- { \TlUse \l@FunTmpxTl }
+ { \tlUse \l@FunTmpxTl }
}
-\PrgNewFunction \FileIfExistInput { m }
+\fun@NewTwoFunctions \fileIfExistInput \FileIfExistInput { m }
{
\file_get:nnN {#1} {} \l@FunTmpxTl
- \quark_if_no_value:NF \l@FunTmpxTl { \TlUse \l@FunTmpxTl }
+ \quark_if_no_value:NF \l@FunTmpxTl { \tlUse \l@FunTmpxTl }
}
-\PrgNewFunction \FileIfExistInputF { m n }
+\fun@NewTwoFunctions \fileIfExistInputF \FileIfExistInputF { m n }
{
\file_get:nnN {#1} {} \l@FunTmpxTl
- \quark_if_no_value:NTF \l@FunTmpxTl { #2 } { \TlUse \l@FunTmpxTl }
+ \quark_if_no_value:NTF \l@FunTmpxTl { #2 } { \tlUse \l@FunTmpxTl }
}
-\cs_set_eq:NN \FileInputStop \file_input_stop:
+\cs_set_eq:NN \fileInputStop \file_input_stop:
-\PrgNewFunction \FileGet { m m M }
+\fun@NewTwoFunctions \fileGet \FileGet { m m M }
{
\file_get:nnN {#1} {#2} #3
\__fun_quark_upgrade_no_value:N #3
}
-\PrgNewFunction \FileGetT { m m M n }
+\fun@NewTwoFunctions \fileGetT \FileGetT { m m M n }
{
\file_get:nnNT {#1} {#2} #3 {#4}
}
-\PrgNewFunction \FileGetF { m m M n }
+\fun@NewTwoFunctions \fileGetF \FileGetF { m m M n }
{
\file_get:nnNF {#1} {#2} #3 {#4}
}
-\PrgNewFunction \FileGetTF { m m M n n }
+\fun@NewTwoFunctions \fileGetTF \FileGetTF { m m M n n }
{
\file_get:nnNTF {#1} {#2} #3 {#4} {#5}
}
-\PrgNewConditional \FileIfExist { m }
+\fun@NewTwoConditionals \fileIfExist \FileIfExist { m }
{
- \file_if_exist:nTF {#1} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \file_if_exist:nTF {#1}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
%%% --------------------------------------------------------
@@ -2779,34 +2911,35 @@
\quark_if_no_value:NT #1 { \tl_set_eq:NN #1 \qNoValue }
}
-\PrgNewConditional \QuarkVarIfNoValue { M }
+\fun@NewTwoConditionals \quarkVarIfNoValue \QuarkVarIfNoValue { M }
{
\tl_if_eq:NNTF \qNoValue #1
- { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
%%% --------------------------------------------------------
%%> \section{Interfaces to Legacy Concepts (Legacy)}
%%% --------------------------------------------------------
-\PrgNewConditional \LegacyIf { m }
+\fun@NewTwoConditionals \legacyIf \LegacyIf { m }
{
- \legacy_if:nTF {#1} { \Return { \cTrueBool } } { \Return { \cFalseBool } }
+ \legacy_if:nTF {#1}
+ { \prgReturn { \cTrueBool } } { \prgReturn { \cFalseBool } }
}
-\PrgNewFunction \LegacyIfSetTrue { m }
+\fun@NewTwoFunctions \legacyIfSetTrue \LegacyIfSetTrue { m }
{
\__fun_do_assignment:Nnn \c@name
{ \legacy_if_gset_true:n {#1} } { \legacy_if_set_true:n {#1} }
}
-\PrgNewFunction \LegacyIfSetFalse { m }
+\fun@NewTwoFunctions \legacyIfSetFalse \LegacyIfSetFalse { m }
{
\__fun_do_assignment:Nnn \c@name
{ \legacy_if_gset_false:n {#1} } { \legacy_if_set_false:n {#1} }
}
-\PrgNewFunction \LegacyIfSet { m m }
+\fun@NewTwoFunctions \legacyIfSet \LegacyIfSet { m m }
{
\__fun_do_assignment:Nnn \c@name
{ \legacy_if_gset:nn {#1} {#2} } { \legacy_if_set:nn {#1} {#2} }
diff --git a/macros/latex/contrib/functional/functional.tex b/macros/latex/contrib/functional/functional.tex
index d5bc913ba6..4bed65559a 100644
--- a/macros/latex/contrib/functional/functional.tex
+++ b/macros/latex/contrib/functional/functional.tex
@@ -3,7 +3,7 @@
\documentclass[oneside]{book}
\usepackage[a4paper,margin=2.5cm]{geometry}
-\newcommand*{\myversion}{2022F}
+\newcommand*{\myversion}{2022G}
\newcommand*{\mydate}{Version \myversion\ (\the\year-\mylpad\month-\mylpad\day)}
\newcommand*{\mylpad}[1]{\ifnum#1<10 0\the#1\else\the#1\fi}
@@ -162,13 +162,13 @@ We will compare our first example with a similar \verb!Lua! example:
\begin{minipage}{0.55\textwidth}
\begin{codehigh}
\IgnoreSpacesOn
-\PrgNewFunction \MathSquare { m } {
- \IntSet \lTmpaInt {\IntEval {#1 * #1}}
- \Return {\Value \lTmpaInt}
+\prgNewFunction \mathSquare { m } {
+ \intSet \lTmpaInt {\intEval {#1 * #1}}
+ \prgReturn {\expValue \lTmpaInt}
}
\IgnoreSpacesOff
-\MathSquare{5}
-\MathSquare{\MathSquare{5}}
+\mathSquare{5}
+\mathSquare{\mathSquare{5}}
\end{codehigh}
\end{minipage}%
\begin{minipage}{0.45\textwidth}
@@ -185,23 +185,23 @@ print(MathSquare(MathSquare(5)))
\end{minipage}
%\IgnoreSpacesOn
-%\PrgNewFunction \MathSquare { m }{
-% \IntSet \lTmpaInt { \IntEval { #1 * #1 } }
-% \Return { \Value \lTmpaInt }
+%\prgNewFunction \mathSquare { m }{
+% \intSet \lTmpaInt { \intEval { #1 * #1 } }
+% \prgReturn { \expValue \lTmpaInt }
%}
%\IgnoreSpacesOff
-%\MathSquare{5}
-%\MathSquare{\MathSquare{5}}
+%\mathSquare{5}
+%\mathSquare{\mathSquare{5}}
%\IgnoreSpacesOn
-%\PrgNewFunction \MathCubic { m }
+%\prgNewFunction \mathCubic { m }
% {
-% \IntSet \lTmpaInt { \IntEval { #1 * #1 * #1 } }
-% \Return { \Value \lTmpaInt }
+% \intSet \lTmpaInt { \intEval { #1 * #1 * #1 } }
+% \prgReturn { \expValue \lTmpaInt }
% }
%\IgnoreSpacesOff
-%\MathCubic{2}
-%\MathCubic{\MathCubic{2}}
+%\mathCubic{2}
+%\mathCubic{\mathCubic{2}}
Both examples calculate first the square of $5$ and produce $25$,
then calculate the square of $25$ and produce $625$.
@@ -210,11 +210,11 @@ does evaluation of functions from inside to outside,
which means composition of functions works like othe programming languages
such as \verb!Lua! or \verb!JavsScript!.
-You can define new functions with \cs{PrgNewFunction} command.
+You can define new functions with \cs{prgNewFunction} command.
To make composition of functions work as expected,
every function \emph{must not} insert directly any token to the input stream.
Instead, a function \emph{must} pass the result (if any) to \verb!functional! package
-with \cs{Return} command. And \verb!functional! package is responsible for
+with \cs{prgReturn} command. And \verb!functional! package is responsible for
inserting result tokens to the input stream at the appropriate time.
To remove space tokens inside function code in defining functions,
@@ -224,21 +224,21 @@ you'd better put function definitions inside \verb!\IgnoreSpacesOn! and
At the end of this section,
we will compare our factorial example with a similar \verb!Lua! example:
-\begin{minipage}{0.65\textwidth}
+\begin{minipage}{0.68\textwidth}
\begin{codehigh}
\IgnoreSpacesOn
-\PrgNewFunction \Fact { m } {
- \IntCompareTF {#1} = {0} {
- \Return {1}
+\prgNewFunction \mathFact { m } {
+ \intCompareTF {#1} = {0} {
+ \prgReturn {1}
}{
- \Return {\IntEval{#1*\Fact{\IntEval{#1-1}}}}
+ \prgReturn {\intEval{#1*\mathFact{\intEval{#1-1}}}}
}
}
\IgnoreSpacesOff
-\Fact{4}
+\mathFact{4}
\end{codehigh}
\end{minipage}%
-\begin{minipage}{0.35\textwidth}
+\begin{minipage}{0.32\textwidth}
\begin{code}
-- define a function --
function Fact (n)
@@ -254,11 +254,11 @@ print(Fact(4))
\end{minipage}
%\IgnoreSpacesOn
-%\PrgNewFunction \Factorial { m } {
-% \IntCompareTF {#1} = {0} {
-% \Return {1}
+%\prgNewFunction \Factorial { m } {
+% \intCompareTF {#1} = {0} {
+% \prgReturn {1}
% }{
-% \Return { \IntMathMult {#1} { \Factorial { \IntMathSub{#1}{1} } } }
+% \prgReturn { \intMathMult {#1} { \Factorial { \intMathSub{#1}{1} } } }
% }
%}
%\IgnoreSpacesOff
@@ -277,19 +277,19 @@ and you can make every function become a group by setting
\begin{codehigh}
\Functional{scoping=true}
\IgnoreSpacesOn
-\IntSet \lTmpaInt {1}
-\IntVarLog \lTmpaInt % ---- 1
-\PrgNewFunction \SomeFun { } {
- \IntSet \lTmpaInt {2}
- \IntVarLog \lTmpaInt % ---- 2
- \IntCompareTF {1} > {0} {
- \IntSet \lTmpaInt {3}
- \IntVarLog \lTmpaInt % ---- 3
+\intSet \lTmpaInt {1}
+\intVarLog \lTmpaInt % ---- 1
+\prgNewFunction \someFun { } {
+ \intSet \lTmpaInt {2}
+ \intVarLog \lTmpaInt % ---- 2
+ \intCompareTF {1} > {0} {
+ \intSet \lTmpaInt {3}
+ \intVarLog \lTmpaInt % ---- 3
}{ }
- \IntVarLog \lTmpaInt % ---- 2
+ \intVarLog \lTmpaInt % ---- 2
}
-\SomeFun
-\IntVarLog \lTmpaInt % ---- 1
+\someFun
+\intVarLog \lTmpaInt % ---- 1
\IgnoreSpacesOff
\end{codehigh}
\end{minipage}%
@@ -319,7 +319,7 @@ while names of global variables \emph{must} start with \verb!g!.
The difference is that \verb!functional! package provides only one function for setting
both local and global varianbles of the same type,
by checking leading letters of their names. So for integer variables, you can write
-\verb!\IntSet\lTmpaInt{1}! and \verb!\IntSet\gTmpbInt{2}!.
+\verb!\intSet\lTmpaInt{1}! and \verb!\intSet\gTmpbInt{2}!.
The previous example will produce different result
if we change variable from \verb!\lTmpaInt! to \verb!\gTmpaInt!.
@@ -328,19 +328,19 @@ if we change variable from \verb!\lTmpaInt! to \verb!\gTmpaInt!.
\begin{codehigh}
\Functional{scoping=true}
\IgnoreSpacesOn
-\IntSet \gTmpaInt {1}
-\IntVarLog \gTmpaInt % ---- 1
-\PrgNewFunction \SomeFun { } {
- \IntSet \gTmpaInt {2}
- \IntVarLog \gTmpaInt % ---- 2
- \IntCompareTF {1} > {0} {
- \IntSet \gTmpaInt {3}
- \IntVarLog \gTmpaInt % ---- 3
+\intSet \gTmpaInt {1}
+\intVarLog \gTmpaInt % ---- 1
+\prgNewFunction \someFun { } {
+ \intSet \gTmpaInt {2}
+ \intVarLog \gTmpaInt % ---- 2
+ \intCompareTF {1} > {0} {
+ \intSet \gTmpaInt {3}
+ \intVarLog \gTmpaInt % ---- 3
}{ }
- \IntVarLog \gTmpaInt % ---- 3
+ \intVarLog \gTmpaInt % ---- 3
}
-\SomeFun
-\IntVarLog \gTmpaInt % ---- 3
+\someFun
+\intVarLog \gTmpaInt % ---- 3
\IgnoreSpacesOff
\end{codehigh}
\end{minipage}%
@@ -376,48 +376,48 @@ For example, the tracing log of the first example in this chapter will be the fo
% FIXME: spaces at the first line will be removed
%\begin{codehigh}[]
-% [I] \MathSquare{5}
-% [I] \IntEval{5*5}
-% [I] \Expand{\int_eval:n {5*5}}
+% [I] \mathSquare{5}
+% [I] \intEval{5*5}
+% [I] \expWhole{\int_eval:n {5*5}}
% [O] 25
-% [I] \Return{25}
+% [I] \prgReturn{25}
% [O] 25
% [O] 25
-% [I] \IntSet\lTmpaInt {25}
+% [I] \intSet\lTmpaInt {25}
% [O]
-% [I] \Value\lTmpaInt
+% [I] \expValue\lTmpaInt
% [O] 25
-% [I] \Return{25}
+% [I] \prgReturn{25}
% [O] 25
% [O] 25
%\end{codehigh}
\begin{codehigh}[]
-[I] \MathSquare{5}
- [I] \IntEval{5*5}
- [I] \Expand{\int_eval:n {5*5}}
+[I] \mathSquare{5}
+ [I] \intEval{5*5}
+ [I] \expWhole{\int_eval:n {5*5}}
[O] 25
- [I] \Return{25}
+ [I] \prgReturn{25}
[O] 25
[O] 25
- [I] \IntSet{\lTmpaInt }{25}
+ [I] \intSet{\lTmpaInt }{25}
[O]
- [I] \Value{\lTmpaInt }
+ [I] \expValue{\lTmpaInt }
[O] 25
- [I] \Return{25}
+ [I] \prgReturn{25}
[O] 25
[O] 25
-[I] \MathSquare{25}
- [I] \IntEval{25*25}
- [I] \Expand{\int_eval:n {25*25}}
+[I] \mathSquare{25}
+ [I] \intEval{25*25}
+ [I] \expWhole{\int_eval:n {25*25}}
[O] 625
- [I] \Return{625}
+ [I] \prgReturn{625}
[O] 625
[O] 625
- [I] \IntSet{\lTmpaInt }{625}
+ [I] \intSet{\lTmpaInt }{625}
[O]
- [I] \Value{\lTmpaInt }
+ [I] \expValue{\lTmpaInt }
[O] 625
- [I] \Return{625}
+ [I] \prgReturn{625}
[O] 625
[O] 625
\end{codehigh}
@@ -444,8 +444,8 @@ which is good for power users.
\end{code}
\end{minipage}
-Within \verb!functional! package, there is only one command (\cs{PrgNewFunction})
-for defining new functions, which is good for normal users.
+Within \verb!functional! package, there is only one command (\cs{prgNewFunction})
+for defining new functions, which is good for regular users.
The created functions are always protected and accept \verb!\par! in their arguments.
Since \verb!functional! package gets the results of functions by evaluation
@@ -481,45 +481,45 @@ and many expansion functions for expanding them, which are necessary for power u
Within \verb!functional! package, there are only three variants
(\verb!c!, \verb!e!, \verb!V!) are provided, and these variants are defined
-as functions (\cs{Name}, \cs{Expand}, \cs{Value}, respetively),
-which are easier to use for normal users.
+as functions (\cs{expName}, \cs{expWhole}, \cs{expValue}, respetively),
+which are easier to use for regular users.
\begin{demohigh}
\newcommand\test{uvw}
-\Name{test}
+\expName{test}
\end{demohigh}
\begin{demohigh}
\newcommand\test{uvw}
-\Expand{111\test222}
+\expWhole{111\test222}
\end{demohigh}
\begin{demohigh}
-\IntSet\lTmpaInt{123}
-\Value\lTmpaInt
+\intSet\lTmpaInt{123}
+\expValue\lTmpaInt
\end{demohigh}
The most interesting feature is that you can compose these functions.
For example, you can easily get the \verb!v! variant of \verb!expl3! by
-simply composing \cs{Name} and \cs{Value} functions:
+simply composing \cs{expName} and \cs{expValue} functions:
\begin{demohigh}
-\IntSet\lTmpaInt{123}
-\Value{\Name{lTmpaInt}}
+\intSet\lTmpaInt{123}
+\expValue{\expName{lTmpaInt}}
\end{demohigh}
\chapter{Functional Progarmming (\texttt{Prg})}
\section{Defining Functions and Conditionals}
-\begin{function}{\PrgNewFunction}
+\begin{function}{\prgNewFunction}
\begin{syntax}
-\cs{PrgNewFunction} \meta{function} \Arg{argument specification} \Arg{code}
+\cs{prgNewFunction} \meta{function} \Arg{argument specification} \Arg{code}
\end{syntax}
Creates protected \meta{function} for evaluating the \meta{code}.
Within the \meta{code}, the parameters (\verb|#1|, \verb|#2|,
\emph{etc.}) will be replaced by those absorbed by the function.
-The returned value \emph{must} be passed with \cs{Return} function.
+The returned value \emph{must} be passed with \cs{prgReturn} function.
The definition is global and an error results if the
\meta{function} is already defined.\par
The \Arg{argument specification} in a list of letters,
@@ -534,103 +534,103 @@ where each letter is one of the following argument specifiers
%\hline
\end{tabular}\par}
The argument manipulation for argument type \texttt{M} or \texttt{m}
-is: if the argument starts with a function defined with \cs{PrgNewFunction},
+is: if the argument starts with a function defined with \cs{prgNewFunction},
the argument will be evaluated and replaced with the returned value.
\end{function}
-\begin{function}{\PrgSetEqFunction}
+\begin{function}{\prgSetEqFunction}
\begin{syntax}
-\cs{PrgSetEqFunction} \meta{function_1} \meta{function_2}
+\cs{prgSetEqFunction} \meta{function_1} \meta{function_2}
\end{syntax}
Sets \meta{function_1} as an alias of \meta{function_2}.
\end{function}
-\begin{function}{\PrgNewConditional}
+\begin{function}{\prgNewConditional}
\begin{syntax}
-\cs{PrgNewConditional} \meta{function} \Arg{argument specification} \Arg{code}
+\cs{prgNewConditional} \meta{function} \Arg{argument specification} \Arg{code}
\end{syntax}
Creates protected conditional \meta{function} for evaluating the \meta{code}.
The returned value of the \meta{function} \emph{must} be either |\cTrueBool|
-or |\cFalseBool| and be passed with \cs{Return} function..
+or |\cFalseBool| and be passed with \cs{prgReturn} function..
The definition is global and an error results if the \meta{function} is already defined.
\par
-Assume the \meta{function} is |\FooIfBar|, then another three functions
-are also created at the same time: |\FooIfBarT|, |\FooIfBarF|, and |\FooIfBarTF|.
+Assume the \meta{function} is |\fooIfBar|, then another three functions
+are also created at the same time: |\fooIfBarT|, |\fooIfBarF|, and |\fooIfBarTF|.
They have extra arguments which are \Arg{true code} or/and \Arg{false code}.
For example, if you write
\begin{codehigh}
-\PrgNewConditional \FooIfBar {Mm} {code with return value \cTrueBool or \cFalseBool}
+\prgNewConditional \fooIfBar {Mm} {code with return value \cTrueBool or \cFalseBool}
\end{codehigh}
Then the following four functions are created:
\begin{itemize}
- \item |\FooIfBar| \meta{arg_1} \Arg{arg_2}
- \item |\FooIfBarT| \meta{arg_1} \Arg{arg_2} \Arg{true code}
- \item |\FooIfBarF| \meta{arg_1} \Arg{arg_2} \Arg{false code}
- \item |\FooIfBarTF| \meta{arg_1} \Arg{arg_2} \Arg{true code} \Arg{false code}
+ \item |\fooIfBar| \meta{arg_1} \Arg{arg_2}
+ \item |\fooIfBarT| \meta{arg_1} \Arg{arg_2} \Arg{true code}
+ \item |\fooIfBarF| \meta{arg_1} \Arg{arg_2} \Arg{false code}
+ \item |\fooIfBarTF| \meta{arg_1} \Arg{arg_2} \Arg{true code} \Arg{false code}
\end{itemize}
\end{function}
\section{Returning Values and Printing Tokens}
-Just like \LuaTeX, \pkg{functional} package also provides \cs{Return} and \cs{Print} functions.
+Just like \LuaTeX, \pkg{functional} package also provides \cs{prgReturn} and \cs{prgPrint} functions.
-\begin{function}{\Return}
+\begin{function}{\prgReturn}
\begin{syntax}
-\cs{Return} \Arg{tokens}
+\cs{prgReturn} \Arg{tokens}
\end{syntax}
Returns \meta{tokens} as result of current function or conditional.
-This function is normally used in the \meta{code} of \cs{PrgNewFunction}
-or \cs{PrgNewConditional}, and it \emph{must} be the last function evaluated in the \meta{code}.
+This function is normally used in the \meta{code} of \cs{prgNewFunction}
+or \cs{prgNewConditional}, and it \emph{must} be the last function evaluated in the \meta{code}.
If it is missing, the return value of the last function evaluated in the \meta{code}
is returned. Therefore, the following two examples produce the same output:
\begin{codehigh}
\IgnoreSpacesOn
-\PrgNewFunction \MathSquare { m } {
- \IntSet \lTmpaInt {\IntEval {#1 * #1}}
- \Return {\Value \lTmpaInt}
+\prgNewFunction \mathSquare { m } {
+ \intSet \lTmpaInt {\intEval {#1 * #1}}
+ \prgReturn {\expValue \lTmpaInt}
}
\IgnoreSpacesOff
-\MathSquare{5}
+\mathSquare{5}
\end{codehigh}
\begin{codehigh}
\IgnoreSpacesOn
-\PrgNewFunction \MathSquare { m } {
- \IntSet \lTmpaInt {\IntEval {#1 * #1}}
- \Value \lTmpaInt
+\prgNewFunction \mathSquare { m } {
+ \intSet \lTmpaInt {\intEval {#1 * #1}}
+ \expValue \lTmpaInt
}
\IgnoreSpacesOff
-\MathSquare{5}
+\mathSquare{5}
\end{codehigh}
\pkg{Functional} package takes care of return values,
and only print them to the input stream if the outer most functions are evaluated.
\end{function}
-\begin{function}{\Print}
+\begin{function}{\prgPrint}
\begin{syntax}
-\cs{Print} \Arg{tokens}
+\cs{prgPrint} \Arg{tokens}
\end{syntax}
Prints \meta{tokens} directly to the input stream.
-If there is no function defined with \cs{PrgNewFunction} in \meta{tokens},
-you can omit \cs{Print} and write only \meta{tokens}.
-But if there is any function defined with \cs{PrgNewFunction} in \meta{tokens},
-you \emph{have to} use \cs{Print} function.
+If there is no function defined with \cs{prgNewFunction} in \meta{tokens},
+you can omit \cs{prgPrint} and write only \meta{tokens}.
+But if there is any function defined with \cs{prgNewFunction} in \meta{tokens},
+you \emph{have to} use \cs{prgPrint} function.
\end{function}
\section{Running Code with Anonymous Functions}
-\begin{function}{\Do}
+\begin{function}{\prgDo}
\begin{syntax}
-\cs{Do} \Arg{code}
+\cs{prgDo} \Arg{code}
\end{syntax}
Treats \meta{code} as an anonymous function without arguments and evaluates it.
\end{function}
-\begin{function}{\PrgRunOneArgCode,\PrgRunTwoArgCode,\PrgRunThreeArgCode,\PrgRunFourArgCode}
+\begin{function}{\prgRunOneArgCode,\prgRunTwoArgCode,\prgRunThreeArgCode,\prgRunFourArgCode}
\begin{syntax}
-\cs{PrgRunOneArgCode} \Arg{arg_1} \Arg{code}
-\cs{PrgRunTwoArgCode} \Arg{arg_1} \Arg{arg_2} \Arg{code}
-\cs{PrgRunThreeArgCode} \Arg{arg_1} \Arg{arg_2} \Arg{arg_3} \Arg{code}
-\cs{PrgRunFourArgCode} \Arg{arg_1} \Arg{arg_2} \Arg{arg_3} \Arg{arg_4} \Arg{code}
+\cs{prgRunOneArgCode} \Arg{arg_1} \Arg{code}
+\cs{prgRunTwoArgCode} \Arg{arg_1} \Arg{arg_2} \Arg{code}
+\cs{prgRunThreeArgCode} \Arg{arg_1} \Arg{arg_2} \Arg{arg_3} \Arg{code}
+\cs{prgRunFourArgCode} \Arg{arg_1} \Arg{arg_2} \Arg{arg_3} \Arg{arg_4} \Arg{code}
\end{syntax}
Treats \meta{code} as an anonymous function with one to four arguments respectively,
and evaluates it. In evaluating the \meta{code}, \pkg{functional} package first evaluates
@@ -642,9 +642,9 @@ with the return values respectively.
\section{Expanding Tokens}
-\begin{function}{\Name}
+\begin{function}{\expName}
\begin{syntax}
-\cs{Name} \Arg{control sequence name}
+\cs{expName} \Arg{control sequence name}
\end{syntax}
Expands the \meta{control sequence name} until only characters
remain, then converts this into a control sequence and returns it.
@@ -660,28 +660,28 @@ when exhaustively expanded.%
%\end{texnote}
\end{function}
-\begin{function}{\Value}
+\begin{function}{\expValue}
\begin{syntax}
-\cs{Value} \meta{variable}
+\cs{expValue} \meta{variable}
\end{syntax}
Recovers the content of a \meta{variable} and returns the value.
An error is raised if the variable does not exist or if it is invalid.
-Note that it is the same as \cs{TlUse} for \meta{tl var}, or \cs{IntUse} for \meta{int var}.
+Note that it is the same as \cs{tlUse} for \meta{tl var}, or \cs{intUse} for \meta{int var}.
\end{function}
-\begin{function}{\Expand}
+\begin{function}{\expWhole}
\begin{syntax}
-\cs{Expand} \Arg{tokens}
+\cs{expWhole} \Arg{tokens}
\end{syntax}
Expands the \meta{tokens} exhaustively and returns the result.
\end{function}
-\begin{function}{\UnExpand}
+\begin{function}{\unExpand}
\begin{syntax}
-\cs{UnExpand} \Arg{tokens}
+\cs{unExpand} \Arg{tokens}
\end{syntax}
-Prevents expansion of the \meta{tokens} inside the argument of \cs{Expand} function.
-The argument of \cs{UnExpand} \emph{must} be surrounded by braces.
+Prevents expansion of the \meta{tokens} inside the argument of \cs{expWhole} function.
+The argument of \cs{unExpand} \emph{must} be surrounded by braces.
%\begin{texnote}
%This is the \eTeX{} \tn{unexpanded} primitive. In an
%|x|-expanding definition (\cs{cs_new:Npx}), \cs{exp_not:n}~|{#1}|
@@ -692,14 +692,14 @@ The argument of \cs{UnExpand} \emph{must} be surrounded by braces.
%\end{texnote}
\end{function}
-\begin{function}{\OnlyName}
+\begin{function}{\onlyName}
\begin{syntax}
-\cs{OnlyName} \Arg{tokens}
+\cs{onlyName} \Arg{tokens}
\end{syntax}
Expands the \meta{tokens} until only characters remain, and then
converts this into a control sequence.
Further expansion of this control sequence is then inhibited
-inside the argument of \cs{Expand} function.
+inside the argument of \cs{expWhole} function.
%\begin{texnote}
%Protected macros that appear in a \texttt{c}-type argument are
%expanded despite being protected; \cs{exp_not:n} also has no
@@ -709,45 +709,45 @@ inside the argument of \cs{Expand} function.
%\end{texnote}
\end{function}
-\begin{function}{\OnlyValue}
+\begin{function}{\onlyValue}
\begin{syntax}
-\cs{OnlyValue} \meta{variable}
+\cs{onlyValue} \meta{variable}
\end{syntax}
Recovers the content of the \meta{variable}, then prevents expansion
-of this material inside the argument of \cs{Expand} function.
+of this material inside the argument of \cs{expWhole} function.
\end{function}
\section{Using Tokens}
-\begin{function}{\UseOne,\GobbleOne}
+\begin{function}{\useOne,\gobbleOne}
\begin{syntax}
-\cs{UseOne} \Arg{argument}
-\cs{GobbleOne} \Arg{argument}
+\cs{useOne} \Arg{argument}
+\cs{gobbleOne} \Arg{argument}
\end{syntax}
-The function \cs{UseOne} absorbs one argument and returns it.
+The function \cs{useOne} absorbs one argument and returns it.
%\begin{texnote}
%The \cs{UseOne} function is equivalent to \LaTeXe{}'s \tn{@firstofone}.
%\end{texnote}
-\cs{GobbleOne} absorbs one argument and returns nothing.
+\cs{gobbleOne} absorbs one argument and returns nothing.
%\begin{texnote}
%These are equivalent to \LaTeXe{}'s \tn{@gobble}, \tn{@gobbbletwo},
%\emph{etc.}
%\end{texnote}
For example
\begin{demohigh}
-\UseOne{abc}\GobbleOne{ijk}\UseOne{xyz}
+\useOne{abc}\gobbleOne{ijk}\useOne{xyz}
\end{demohigh}
\end{function}
-\begin{function}{\UseGobble,\GobbleUse}
+\begin{function}{\useGobble,\gobbleUse}
\begin{syntax}
-\cs{UseGobble} \Arg{arg_1} \Arg{arg_2}
-\cs{GobbleUse} \Arg{arg_1} \Arg{arg_2}
+\cs{useGobble} \Arg{arg_1} \Arg{arg_2}
+\cs{gobbleUse} \Arg{arg_1} \Arg{arg_2}
\end{syntax}
These functions absorb two arguments.
-The function \cs{UseGobble} discards the second argument,
+The function \cs{useGobble} discards the second argument,
and returns the content of the first argument.
-\cs{GobbleUse} discards the first argument,
+\cs{gobbleUse} discards the first argument,
and returns the content of the second argument.
%\begin{texnote}
%These are equivalent to \LaTeXe{}'s \tn{@firstoftwo} and
@@ -755,7 +755,7 @@ and returns the content of the second argument.
%\end{texnote}
For example
\begin{demohigh}
-\UseGobble{abc}{uvw}\GobbleUse{abc}{uvw}
+\useGobble{abc}{uvw}\gobbleUse{abc}{uvw}
\end{demohigh}
\end{function}
@@ -767,8 +767,8 @@ For example
Constants that represent \verb|true| and \verb|false|, respectively. Used to
implement predicates. For example
\begin{demohigh}
-\BoolVarIfTF \cTrueBool {\Return{True!}} {\Return{False!}}
-\BoolVarIfTF \cFalseBool {\Return{True!}} {\Return{False!}}
+\boolVarIfTF \cTrueBool {\prgReturn{True!}} {\prgReturn{False!}}
+\boolVarIfTF \cFalseBool {\prgReturn{True!}} {\prgReturn{False!}}
\end{demohigh}
\end{variable}
@@ -800,13 +800,13 @@ prefix~\verb|!| with their usual precedences (namely, \verb|&&| binds
more tightly than \verb"||"). In addition to this, parentheses can be
used to isolate sub-expressions. For example,
\begin{codehigh}
-\IntCompare {1} = {1} &&
+\intCompare {1} = {1} &&
(
- \IntCompare {2} = {3} ||
- \IntCompare {4} < {4} ||
- \StrIfEq {abc} {def}
+ \intCompare {2} = {3} ||
+ \intCompare {4} < {4} ||
+ \strIfEq {abc} {def}
) &&
-! \IntCompare {2} = {4}
+! \intCompare {2} = {4}
\end{codehigh}
is a valid boolean expression.
@@ -816,200 +816,200 @@ operand is enough to determine the result.
\section{Creating and Setting Booleans}
-\begin{function}{\BoolNew}
+\begin{function}{\boolNew}
\begin{syntax}
-\cs{BoolNew} \meta{boolean}
+\cs{boolNew} \meta{boolean}
\end{syntax}
Creates a new \meta{boolean} or raises an error if the
name is already taken. The declaration is global. The
\meta{boolean} is initially \texttt{false}.
\end{function}
-\begin{function}{\BoolConst}
+\begin{function}{\boolConst}
\begin{syntax}
-\cs{BoolConst} \meta{boolean} \Arg{boolexpr}
+\cs{boolConst} \meta{boolean} \Arg{boolexpr}
\end{syntax}
Creates a new constant \meta{boolean} or raises an error if the name
is already taken. The value of the \meta{boolean} is set globally to
the result of evaluating the \meta{boolexpr}.
For example
\begin{codehigh}
-\BoolConst \cFooSomeBool {\IntCompare{3}>{2}}
-\BoolVarLog \cFooSomeBool
+\boolConst \cFooSomeBool {\intCompare{3}>{2}}
+\boolVarLog \cFooSomeBool
\end{codehigh}
\end{function}
-\begin{function}{\BoolSet}
+\begin{function}{\boolSet}
\begin{syntax}
-\cs{BoolSet} \meta{boolean} \Arg{boolexpr}
+\cs{boolSet} \meta{boolean} \Arg{boolexpr}
\end{syntax}
Evaluates the \meta{boolean expression} and sets the \meta{boolean} variable to
the logical truth of this evaluation.
For example
\begin{codehigh}
-\BoolSet \lTmpaBool {\IntCompare{3}<{4}}
-\BoolVarLog \lTmpaBool
+\boolSet \lTmpaBool {\intCompare{3}<{4}}
+\boolVarLog \lTmpaBool
\end{codehigh}
\begin{codehigh}
-\BoolSet \lTmpaBool {\IntCompare{3}<{4} && \StrIfEq{abc}{uvw}}
-\BoolVarLog \lTmpaBool
+\boolSet \lTmpaBool {\intCompare{3}<{4} && \strIfEq{abc}{uvw}}
+\boolVarLog \lTmpaBool
\end{codehigh}
\end{function}
-\begin{function}{\BoolSetTrue}
+\begin{function}{\boolSetTrue}
\begin{syntax}
-\cs{BoolSetTrue} \meta{boolean}
+\cs{boolSetTrue} \meta{boolean}
\end{syntax}
Sets \meta{boolean} logically \texttt{true}.
\end{function}
-\begin{function}{\BoolSetFalse}
+\begin{function}{\boolSetFalse}
\begin{syntax}
-\cs{BoolSetFalse} \meta{boolean}
+\cs{boolSetFalse} \meta{boolean}
\end{syntax}
Sets \meta{boolean} logically \texttt{false}.
\end{function}
-\begin{function}{\BoolSetEq}
+\begin{function}{\boolSetEq}
\begin{syntax}
-\cs{BoolSetEq} \meta{boolean_1} \meta{boolean_2}
+\cs{boolSetEq} \meta{boolean_1} \meta{boolean_2}
\end{syntax}
Sets \meta{boolean_1} to the current value of \meta{boolean_2}.
For example
\begin{codehigh}
-\BoolSetTrue \lTmpaBool
-\BoolSetEq \lTmpbBool \lTmpaBool
-\BoolVarLog \lTmpbBool
+\boolSetTrue \lTmpaBool
+\boolSetEq \lTmpbBool \lTmpaBool
+\boolVarLog \lTmpbBool
\end{codehigh}
\end{function}
\section{Viewing Booleans}
-\begin{function}{\BoolLog}
+\begin{function}{\boolLog}
\begin{syntax}
-\cs{BoolLog} \Arg{boolean expression}
+\cs{boolLog} \Arg{boolean expression}
\end{syntax}
Writes the logical truth of the \meta{boolean expression} in the log file.
\end{function}
-\begin{function}{\BoolVarLog}
+\begin{function}{\boolVarLog}
\begin{syntax}
-\cs{BoolVarLog} \meta{boolean}
+\cs{boolVarLog} \meta{boolean}
\end{syntax}
Writes the logical truth of the \meta{boolean} in the log file.
\end{function}
-\begin{function}{\BoolShow}
+\begin{function}{\boolShow}
\begin{syntax}
-\cs{BoolShow} \Arg{boolean expression}
+\cs{boolShow} \Arg{boolean expression}
\end{syntax}
Displays the logical truth of the \meta{boolean expression} on the terminal.
\end{function}
-\begin{function}{\BoolVarShow}
+\begin{function}{\boolVarShow}
\begin{syntax}
-\cs{BoolVarShow} \meta{boolean}
+\cs{boolVarShow} \meta{boolean}
\end{syntax}
Displays the logical truth of the \meta{boolean} on the terminal.
\end{function}
\section{Booleans and Conditionals}
-\begin{function}{\BoolIfExist,\BoolIfExistT,\BoolIfExistF,\BoolIfExistTF}
+\begin{function}{\boolIfExist,\boolIfExistT,\boolIfExistF,\boolIfExistTF}
\begin{syntax}
-\cs{BoolIfExist} \meta{boolean}
-\cs{BoolIfExistT} \meta{boolean} \Arg{true code}
-\cs{BoolIfExistF} \meta{boolean} \Arg{false code}
-\cs{BoolIfExistTF} \meta{boolean} \Arg{true code} \Arg{false code}
+\cs{boolIfExist} \meta{boolean}
+\cs{boolIfExistT} \meta{boolean} \Arg{true code}
+\cs{boolIfExistF} \meta{boolean} \Arg{false code}
+\cs{boolIfExistTF} \meta{boolean} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{boolean} is currently defined. This does not
check that the \meta{boolean} really is a boolean variable.
For example
\begin{demohigh}
-\BoolIfExistTF \lTmpaBool {\Return{Yes}} {\Return{No}}
-\BoolIfExistTF \lFooUndefinedBool {\Return{Yes}} {\Return{No}}
+\boolIfExistTF \lTmpaBool {\prgReturn{Yes}} {\prgReturn{No}}
+\boolIfExistTF \lFooUndefinedBool {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\BoolVarIf,\BoolVarIfT,\BoolVarIfF,\BoolVarIfTF}
+\begin{function}{\boolVarIf,\boolVarIfT,\boolVarIfF,\boolVarIfTF}
\begin{syntax}
-\cs{BoolVarIf} \meta{boolean}
-\cs{BoolVarIfT} \meta{boolean} \Arg{true code}
-\cs{BoolVarIfF} \meta{boolean} \Arg{false code}
-\cs{BoolVarIfTF} \meta{boolean} \Arg{true code} \Arg{false code}
+\cs{boolVarIf} \meta{boolean}
+\cs{boolVarIfT} \meta{boolean} \Arg{true code}
+\cs{boolVarIfF} \meta{boolean} \Arg{false code}
+\cs{boolVarIfTF} \meta{boolean} \Arg{true code} \Arg{false code}
\end{syntax}
Tests the current truth of \meta{boolean}, and continues evaluation
based on this result. For example
\begin{demohigh}
-\BoolSetTrue \lTmpaBool
-\BoolVarIfTF \lTmpaBool {\Return{True!}} {\Return{False!}}
-\BoolSetFalse \lTmpaBool
-\BoolVarIfTF \lTmpaBool {\Return{True!}} {\Return{False!}}
+\boolSetTrue \lTmpaBool
+\boolVarIfTF \lTmpaBool {\prgReturn{True!}} {\prgReturn{False!}}
+\boolSetFalse \lTmpaBool
+\boolVarIfTF \lTmpaBool {\prgReturn{True!}} {\prgReturn{False!}}
\end{demohigh}
\end{function}
-\begin{function}{\BoolVarNot,\BoolVarNotT,\BoolVarNotF,\BoolVarNotTF}
+\begin{function}{\boolVarNot,\boolVarNotT,\boolVarNotF,\boolVarNotTF}
\begin{syntax}
-\cs{BoolVarNot} \meta{boolean}
-\cs{BoolVarNotT} \meta{boolean} \Arg{true code}
-\cs{BoolVarNotF} \meta{boolean} \Arg{false code}
-\cs{BoolVarNotTF} \meta{boolean} \Arg{true code} \Arg{false code}
+\cs{boolVarNot} \meta{boolean}
+\cs{boolVarNotT} \meta{boolean} \Arg{true code}
+\cs{boolVarNotF} \meta{boolean} \Arg{false code}
+\cs{boolVarNotTF} \meta{boolean} \Arg{true code} \Arg{false code}
\end{syntax}
Evaluates \meta{true code} if \meta{boolean} is \verb!false!,
and \meta{false code} if \meta{boolean} is \verb!true!.
For example
\begin{demohigh}
-\BoolVarNotTF {\IntCompare{3}>{2}} {\Return{Yes}} {\Return{No}}
+\boolVarNotTF {\intCompare{3}>{2}} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\BoolVarAnd,\BoolVarAndT,\BoolVarAndF,\BoolVarAndTF}
+\begin{function}{\boolVarAnd,\boolVarAndT,\boolVarAndF,\boolVarAndTF}
\begin{syntax}
-\cs{BoolVarAnd} \meta{boolean_1} \meta{boolean_2}
-\cs{BoolVarAndT} \meta{boolean_1} \meta{boolean_2} \Arg{true code}
-\cs{BoolVarAndF} \meta{boolean_1} \meta{boolean_2} \Arg{false code}
-\cs{BoolVarAndTF} \meta{boolean_1} \meta{boolean_2} \Arg{true code} \Arg{false code}
+\cs{boolVarAnd} \meta{boolean_1} \meta{boolean_2}
+\cs{boolVarAndT} \meta{boolean_1} \meta{boolean_2} \Arg{true code}
+\cs{boolVarAndF} \meta{boolean_1} \meta{boolean_2} \Arg{false code}
+\cs{boolVarAndTF} \meta{boolean_1} \meta{boolean_2} \Arg{true code} \Arg{false code}
\end{syntax}
Implements the \enquote{And} operation between two booleans,
hence is \texttt{true} if both are \texttt{true}.
%Contrarily to the infix operator \verb|&&|,
%The \meta{boolean_2} is only evaluated if it is needed to determine the result of
-%\cs{BoolVarAnd}.
+%\cs{boolVarAnd}.
For example
\begin{demohigh}
-\BoolVarAndTF {\IntCompare{3}>{2}} {\IntCompare{3}>{4}} {\Return{Yes}} {\Return{No}}
+\boolVarAndTF {\intCompare{3}>{2}} {\intIfOdd{6}} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\BoolVarOr,\BoolVarOrT,\BoolVarOrF,\BoolVarOrTF}
+\begin{function}{\boolVarOr,\boolVarOrT,\boolVarOrF,\boolVarOrTF}
\begin{syntax}
-\cs{BoolVarOr} \meta{boolean_1} \meta{boolean_2}
-\cs{BoolVarOrT} \meta{boolean_1} \meta{boolean_2} \Arg{true code}
-\cs{BoolVarOrF} \meta{boolean_1} \meta{boolean_2} \Arg{false code}
-\cs{BoolVarOrTF} \meta{boolean_1} \meta{boolean_2} \Arg{true code} \Arg{false code}
+\cs{boolVarOr} \meta{boolean_1} \meta{boolean_2}
+\cs{boolVarOrT} \meta{boolean_1} \meta{boolean_2} \Arg{true code}
+\cs{boolVarOrF} \meta{boolean_1} \meta{boolean_2} \Arg{false code}
+\cs{boolVarOrTF} \meta{boolean_1} \meta{boolean_2} \Arg{true code} \Arg{false code}
\end{syntax}
Implements the \enquote{Or} operation between two booleans,
hence is \texttt{true} if either one is \texttt{true}.
%Contrarily to the infix operator \verb"||",
%The \meta{boolean_2} is only evaluated if it is needed to determine the result of
-%\cs{BoolVarOr}.
+%\cs{boolVarOr}.
For example
\begin{demohigh}
-\BoolVarOrTF {\IntCompare{3}>{2}} {\IntCompare{3}>{4}} {\Return{Yes}} {\Return{No}}
+\boolVarOrTF {\intCompare{3}>{2}} {\intIfOdd{6}} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\BoolVarXor,\BoolVarXorT,\BoolVarXorF,\BoolVarXorTF}
+\begin{function}{\boolVarXor,\boolVarXorT,\boolVarXorF,\boolVarXorTF}
\begin{syntax}
-\cs{BoolVarXor} \meta{boolean_1} \meta{boolean_2}
-\cs{BoolVarXorT} \meta{boolean_1} \meta{boolean_2} \Arg{true code}
-\cs{BoolVarXorF} \meta{boolean_1} \meta{boolean_2} \Arg{false code}
-\cs{BoolVarXorTF} \meta{boolean_1} \meta{boolean_2} \Arg{true code} \Arg{false code}
+\cs{boolVarXor} \meta{boolean_1} \meta{boolean_2}
+\cs{boolVarXorT} \meta{boolean_1} \meta{boolean_2} \Arg{true code}
+\cs{boolVarXorF} \meta{boolean_1} \meta{boolean_2} \Arg{false code}
+\cs{boolVarXorTF} \meta{boolean_1} \meta{boolean_2} \Arg{true code} \Arg{false code}
\end{syntax}
Implements an \enquote{exclusive or} operation between two booleans.
For example
\begin{demohigh}
-\BoolVarXorTF {\IntCompare{3}>{2}} {\IntCompare{3}>{4}} {\Return{Yes}} {\Return{No}}
+\boolVarXorTF {\intCompare{3}>{2}} {\intIfOdd{6}} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
@@ -1017,9 +1017,9 @@ For example
Loops using either boolean expressions or stored boolean values.
-\begin{function}{\BoolVarDoUntil}
+\begin{function}{\boolVarDoUntil}
\begin{syntax}
-\cs{BoolVarDoUntil} \meta{boolean} \Arg{code}
+\cs{boolVarDoUntil} \meta{boolean} \Arg{code}
\end{syntax}
Places the \meta{code} in the input stream for \TeX{} to process,
and then checks the logical value of the \meta{boolean}. If it is
@@ -1028,22 +1028,22 @@ stream again and the process loops until the \meta{boolean} is
\texttt{true}.
\begin{demohigh}
\IgnoreSpacesOn
-\BoolSetFalse \lTmpaBool
-\IntZero \lTmpaInt
-\ClistClear \lTmpaClist
-\BoolVarDoUntil \lTmpaBool {
- \IntIncr \lTmpaInt
- \ClistPutRight \lTmpaClist {\Value\lTmpaInt}
- \IntCompareT {\lTmpaInt} = {10} {\BoolSetTrue \lTmpaBool}
+\boolSetFalse \lTmpaBool
+\intZero \lTmpaInt
+\clistClear \lTmpaClist
+\boolVarDoUntil \lTmpaBool {
+ \intIncr \lTmpaInt
+ \clistPutRight \lTmpaClist {\expValue\lTmpaInt}
+ \intCompareT {\lTmpaInt} = {10} {\boolSetTrue \lTmpaBool}
}
-\ClistVarJoin \lTmpaClist {:}
+\clistVarJoin \lTmpaClist {:}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\BoolVarDoWhile}
+\begin{function}{\boolVarDoWhile}
\begin{syntax}
-\cs{BoolVarDoWhile} \meta{boolean} \Arg{code}
+\cs{boolVarDoWhile} \meta{boolean} \Arg{code}
\end{syntax}
Places the \meta{code} in the input stream for \TeX{} to process,
and then checks the logical value of the \meta{boolean}. If it is
@@ -1052,22 +1052,22 @@ stream again and the process loops until the \meta{boolean} is
\texttt{false}.
\begin{demohigh}
\IgnoreSpacesOn
-\BoolSetTrue \lTmpaBool
-\IntZero \lTmpaInt
-\ClistClear \lTmpaClist
-\BoolVarDoWhile \lTmpaBool {
- \IntIncr \lTmpaInt
- \ClistPutRight \lTmpaClist {\Value\lTmpaInt}
- \IntCompareT {\lTmpaInt} = {10} {\BoolSetFalse \lTmpaBool}
+\boolSetTrue \lTmpaBool
+\intZero \lTmpaInt
+\clistClear \lTmpaClist
+\boolVarDoWhile \lTmpaBool {
+ \intIncr \lTmpaInt
+ \clistPutRight \lTmpaClist {\expValue\lTmpaInt}
+ \intCompareT {\lTmpaInt} = {10} {\boolSetFalse \lTmpaBool}
}
-\ClistVarJoin \lTmpaClist {:}
+\clistVarJoin \lTmpaClist {:}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\BoolVarUntilDo}
+\begin{function}{\boolVarUntilDo}
\begin{syntax}
-\cs{BoolVarUntilDo} \meta{boolean} \Arg{code}
+\cs{boolVarUntilDo} \meta{boolean} \Arg{code}
\end{syntax}
This function firsts checks the logical value of the \meta{boolean}.
If it is \texttt{false} the \meta{code} is placed in the input stream
@@ -1076,22 +1076,22 @@ of the \meta{boolean} is re-evaluated. The process then loops
until the \meta{boolean} is \texttt{true}.
\begin{demohigh}
\IgnoreSpacesOn
-\BoolSetFalse \lTmpaBool
-\IntZero \lTmpaInt
-\ClistClear \lTmpaClist
-\BoolVarUntilDo \lTmpaBool {
- \IntIncr \lTmpaInt
- \ClistPutRight \lTmpaClist {\Value\lTmpaInt}
- \IntCompareT {\lTmpaInt} = {10} {\BoolSetTrue \lTmpaBool}
+\boolSetFalse \lTmpaBool
+\intZero \lTmpaInt
+\clistClear \lTmpaClist
+\boolVarUntilDo \lTmpaBool {
+ \intIncr \lTmpaInt
+ \clistPutRight \lTmpaClist {\expValue\lTmpaInt}
+ \intCompareT {\lTmpaInt} = {10} {\boolSetTrue \lTmpaBool}
}
-\ClistVarJoin \lTmpaClist {:}
+\clistVarJoin \lTmpaClist {:}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\BoolVarWhileDo}
+\begin{function}{\boolVarWhileDo}
\begin{syntax}
-\cs{BoolVarWhileDo} \meta{boolean} \Arg{code}
+\cs{boolVarWhileDo} \meta{boolean} \Arg{code}
\end{syntax}
This function firsts checks the logical value of the \meta{boolean}.
If it is \texttt{true} the \meta{code} is placed in the input stream
@@ -1100,15 +1100,15 @@ of the \meta{boolean} is re-evaluated. The process then loops
until the \meta{boolean} is \texttt{false}.
\begin{demohigh}
\IgnoreSpacesOn
-\BoolSetTrue \lTmpaBool
-\IntZero \lTmpaInt
-\ClistClear \lTmpaClist
-\BoolVarWhileDo \lTmpaBool {
- \IntIncr \lTmpaInt
- \ClistPutRight \lTmpaClist {\Value\lTmpaInt}
- \IntCompareT {\lTmpaInt} = {10} {\BoolSetFalse \lTmpaBool}
+\boolSetTrue \lTmpaBool
+\intZero \lTmpaInt
+\clistClear \lTmpaClist
+\boolVarWhileDo \lTmpaBool {
+ \intIncr \lTmpaInt
+ \clistPutRight \lTmpaClist {\expValue\lTmpaInt}
+ \intCompareT {\lTmpaInt} = {10} {\boolSetFalse \lTmpaBool}
}
-\ClistVarJoin \lTmpaClist {:}
+\clistVarJoin \lTmpaClist {:}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
@@ -1119,13 +1119,13 @@ until the \meta{boolean} is \texttt{false}.
functions to deal with lists of tokens. Token lists may be present
directly in the argument to a function:
\begin{codehigh}
-\TlFoo {a collection of \tokens}
+\tlFoo {a collection of \tokens}
\end{codehigh}
or may be stored in a so-called \enquote{token list variable}, which
have the suffix \texttt{Tl}: a token list variable can also be used as
the argument to a function, for example
\begin{codehigh}
-\TlVarFoo \lSomeTl
+\tlVarFoo \lSomeTl
\end{codehigh}
In both cases, functions are available to test and manipulate the lists
of tokens, and these have the module prefix \texttt{Tl}.
@@ -1136,7 +1136,7 @@ together here.
A token list (explicit, or stored in a variable) can be seen either
as a list of \enquote{items},
-or a list of \enquote{tokens}. An item is whatever \cs{UseOne} would
+or a list of \enquote{tokens}. An item is whatever \cs{useOne} would
grab as its argument: a single non-space token or a brace group,
with optional leading explicit space characters (each item is thus
itself a token list). A token is either a normal \texttt{N} argument,
@@ -1171,7 +1171,7 @@ Constant that is always empty.
%will \emph{not} match the simple text input \verb|-NoValue-|, \emph{i.e.}
%that
%\begin{demohigh}
-%\TlIfEqTF {\TlUse\cNoValueTl} {-NoValue-} {Result{Yes}} {\Return{No}}
+%\tlIfEqTF {\tlUse\cNoValueTl} {-NoValue-} {Result{Yes}} {\prgReturn{No}}
%\end{demohigh}
%The \cs{cNoValueTl} marker is intended for
%use in creating document-level interfaces, where it serves as an indicator
@@ -1195,53 +1195,53 @@ code and so should only be used for short-term storage.
\section{Creating and Using Token Lists}
-\begin{function}{\TlNew}
+\begin{function}{\tlNew}
\begin{syntax}
-\cs{TlNew} \meta{tl var}
+\cs{tlNew} \meta{tl var}
\end{syntax}
Creates a new \meta{tl var} or raises an error if the
name is already taken. The declaration is global. The
\meta{tl~var} is initially empty.
\begin{codehigh}
-\TlNew \lFooSomeTl
+\tlNew \lFooSomeTl
\end{codehigh}
\end{function}
-\begin{function}{\TlConst}
+\begin{function}{\tlConst}
\begin{syntax}
-\cs{TlConst} \meta{tl var} \Arg{token list}
+\cs{tlConst} \meta{tl var} \Arg{token list}
\end{syntax}
Creates a new constant \meta{tl var} or raises an error
if the name is already taken. The value of the
\meta{tl var} is set globally to the \meta{token list}.
\begin{codehigh}
-\TlConst \cFooSomeTl {abc}
+\tlConst \cFooSomeTl {abc}
\end{codehigh}
\end{function}
-\begin{function}{\TlUse}
+\begin{function}{\tlUse}
\begin{syntax}
-\cs{TlUse} \meta{tl~var}
+\cs{tlUse} \meta{tl~var}
\end{syntax}
Recovers the content of a \meta{tl~var} and returns the value.
An error is raised if the variable
does not exist or if it is invalid. Note that it is possible to use
a \meta{tl~var} directly without an accessor function.
\begin{codehigh}
-\TlUse \lTmpbTl
+\tlUse \lTmpbTl
\end{codehigh}
\end{function}
-\begin{function}{\TlToStr}
+\begin{function}{\tlToStr}
\begin{syntax}
-\cs{TlToStr} \Arg{token list}
+\cs{tlToStr} \Arg{token list}
\end{syntax}
Converts the \meta{token list} to a \meta{string}, returning the
resulting character tokens. A \meta{string}
is a series of tokens with category code $12$ (other) with the exception
of spaces, which retain category code $10$ (space).
\begin{demohigh}
-\TlToStr {12\abc34}
+\tlToStr {12\abc34}
\end{demohigh}
%This function requires only a single expansion.
%Its argument \emph{must} be braced.
@@ -1274,52 +1274,52 @@ of spaces, which retain category code $10$ (space).
%\end{texnote}
\end{function}
-\begin{function}{\TlVarToStr}
+\begin{function}{\tlVarToStr}
\begin{syntax}
-\cs{TlVarToStr} \meta{tl var}
+\cs{tlVarToStr} \meta{tl var}
\end{syntax}
Converts the content of the \meta{tl var} to a string, returning the
resulting character tokens. A \meta{string}
is a series of tokens with category code $12$ (other) with the exception
of spaces, which retain category code $10$ (space).
\begin{demohigh}
-\TlSet \lTmpaTl {12\abc34}
-\TlVarToStr \lTmpaTl
+\tlSet \lTmpaTl {12\abc34}
+\tlVarToStr \lTmpaTl
\end{demohigh}
\end{function}
\section{Viewing Token Lists}
-\begin{function}{\TlLog}
+\begin{function}{\tlLog}
\begin{syntax}
-\cs{TlLog} \Arg{token list}
+\cs{tlLog} \Arg{token list}
\end{syntax}
Writes the \meta{token list} in the log file. See also
-\cs{TlShow} which displays the result in the terminal.
+\cs{tlShow} which displays the result in the terminal.
\begin{codehigh}
-\TlLog {123\abc456}
+\tlLog {123\abc456}
\end{codehigh}
\end{function}
-\begin{function}{\TlVarLog}
+\begin{function}{\tlVarLog}
\begin{syntax}
-\cs{TlVarLog} \meta{tl var}
+\cs{tlVarLog} \meta{tl var}
\end{syntax}
Writes the content of the \meta{tl var} in the log file. See also
-\cs{TlVarShow} which displays the result in the terminal.
+\cs{tlVarShow} which displays the result in the terminal.
\begin{codehigh}
-\TlSet \lTmpaTl {123\abc456}
-\TlVarLog \lTmpaTl
+\tlSet \lTmpaTl {123\abc456}
+\tlVarLog \lTmpaTl
\end{codehigh}
\end{function}
-\begin{function}{\TlShow}
+\begin{function}{\tlShow}
\begin{syntax}
-\cs{TlShow} \Arg{token list}
+\cs{tlShow} \Arg{token list}
\end{syntax}
Displays the \meta{token list} on the terminal.
\begin{codehigh}
-\TlShow {123\abc456}
+\tlShow {123\abc456}
\end{codehigh}
%\begin{texnote}
%This is similar to the \eTeX{} primitive \tn{showtokens}, wrapped
@@ -1327,14 +1327,14 @@ Displays the \meta{token list} on the terminal.
%\end{texnote}
\end{function}
-\begin{function}{\TlVarShow}
+\begin{function}{\tlVarShow}
\begin{syntax}
-\cs{TlVarShow} \meta{tl var}
+\cs{tlVarShow} \meta{tl var}
\end{syntax}
Displays the content of the \meta{tl var} on the terminal.
\begin{codehigh}
-\TlSet \lTmpaTl {123\abc456}
-\TlVarShow \lTmpaTl
+\tlSet \lTmpaTl {123\abc456}
+\tlVarShow \lTmpaTl
\end{codehigh}
%\begin{texnote}
%This is similar to the \TeX{} primitive \tn{show}, wrapped to a
@@ -1344,91 +1344,91 @@ Displays the content of the \meta{tl var} on the terminal.
\section{Setting Token List Variables}
-\begin{function}{\TlSet}
+\begin{function}{\tlSet}
\begin{syntax}
-\cs{TlSet} \meta{tl~var} \Arg{tokens}
+\cs{tlSet} \meta{tl~var} \Arg{tokens}
\end{syntax}
Sets \meta{tl~var} to contain \meta{tokens},
removing any previous content from the variable.
\begin{demohigh}
-\TlSet \lTmpiTl {\IntMathMult{4}{5}}
-\TlUse \lTmpiTl
+\tlSet \lTmpiTl {\intMathMult{4}{5}}
+\tlUse \lTmpiTl
\end{demohigh}
\end{function}
-\begin{function}{\TlSetEq}
+\begin{function}{\tlSetEq}
\begin{syntax}
-\cs{TlSetEq} \meta{tl var_1} \meta{tl var_2}
+\cs{tlSetEq} \meta{tl var_1} \meta{tl var_2}
\end{syntax}
Sets the content of \meta{tl var_1} equal to that of \meta{tl var_2}.
\begin{demohigh}
-\TlSet \lTmpaTl {abc}
-\TlSetEq \lTmpbTl \lTmpaTl
-\TlUse \lTmpbTl
+\tlSet \lTmpaTl {abc}
+\tlSetEq \lTmpbTl \lTmpaTl
+\tlUse \lTmpbTl
\end{demohigh}
\end{function}
-\begin{function}{\TlClear}
+\begin{function}{\tlClear}
\begin{syntax}
-\cs{TlClear} \meta{tl~var}
+\cs{tlClear} \meta{tl~var}
\end{syntax}
Clears all entries from the \meta{tl~var}.
\begin{demohigh}
-\TlSet \lTmpjTl {One}
-\TlClear \lTmpjTl
-\TlSet \lTmpjTl {Two}
-\TlUse \lTmpjTl
+\tlSet \lTmpjTl {One}
+\tlClear \lTmpjTl
+\tlSet \lTmpjTl {Two}
+\tlUse \lTmpjTl
\end{demohigh}
\end{function}
-\begin{function}{\TlClearNew}
+\begin{function}{\tlClearNew}
\begin{syntax}
-\cs{TlClearNew} \meta{tl var}
+\cs{tlClearNew} \meta{tl var}
\end{syntax}
Ensures that the \meta{tl var} exists globally by applying
-\cs{TlNew} if necessary, then applies \cs{TlClear} to leave
+\cs{tlNew} if necessary, then applies \cs{tlClear} to leave
the \meta{tl var} empty.
\begin{codehigh}
-\TlClearNew \lFooSomeTl
+\tlClearNew \lFooSomeTl
\end{codehigh}
\end{function}
-\begin{function}{\TlConcat}
+\begin{function}{\tlConcat}
\begin{syntax}
-\cs{TlConcat} \meta{tl var_1} \meta{tl var_2} \meta{tl var_3}
+\cs{tlConcat} \meta{tl var_1} \meta{tl var_2} \meta{tl var_3}
\end{syntax}
Concatenates the content of \meta{tl var_2} and \meta{tl var_3}
together and saves the result in \meta{tl var_1}. The \meta{tl var_2}
is placed at the left side of the new token list.
\begin{demohigh}
-\TlSet \lTmpbTl {con}
-\TlSet \lTmpcTl {cat}
-\TlConcat \lTmpaTl \lTmpbTl \lTmpcTl
-\TlUse \lTmpaTl
+\tlSet \lTmpbTl {con}
+\tlSet \lTmpcTl {cat}
+\tlConcat \lTmpaTl \lTmpbTl \lTmpcTl
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\TlPutLeft}
+\begin{function}{\tlPutLeft}
\begin{syntax}
-\cs{TlPutLeft} \meta{tl~var} \Arg{tokens}
+\cs{tlPutLeft} \meta{tl~var} \Arg{tokens}
\end{syntax}
Appends \meta{tokens} to the left side of the current content of \meta{tl~var}.
\begin{demohigh}
-\TlSet \lTmpkTl {Functional}
-\TlPutLeft \lTmpkTl {Hello}
-\TlUse \lTmpkTl
+\tlSet \lTmpkTl {Functional}
+\tlPutLeft \lTmpkTl {Hello}
+\tlUse \lTmpkTl
\end{demohigh}
\end{function}
-\begin{function}{\TlPutRight}
+\begin{function}{\tlPutRight}
\begin{syntax}
-\cs{TlPutRight} \meta{tl~var} \Arg{tokens}
+\cs{tlPutRight} \meta{tl~var} \Arg{tokens}
\end{syntax}
Appends \meta{tokens} to the right side of the current content of \meta{tl~var}.
\begin{demohigh}
-\TlSet \lTmpkTl {Functional}
-\TlPutRight \lTmpkTl {World}
-\TlUse \lTmpkTl
+\tlSet \lTmpkTl {Functional}
+\tlPutRight \lTmpkTl {World}
+\tlUse \lTmpkTl
\end{demohigh}
\end{function}
@@ -1438,9 +1438,9 @@ Within token lists, replacement takes place at the top level: there is
no recursion into brace groups (more precisely, within a group defined by
a categroy code $1$/$2$ pair).
-\begin{function}{\TlVarReplaceOnce}
+\begin{function}{\tlVarReplaceOnce}
\begin{syntax}
-\cs{TlVarReplaceOnce} \meta{tl var} \Arg{old tokens} \Arg{new tokens}
+\cs{tlVarReplaceOnce} \meta{tl var} \Arg{old tokens} \Arg{new tokens}
\end{syntax}
Replaces the first (leftmost) occurrence of \meta{old tokens} in the
\meta{tl var} with \meta{new tokens}. \meta{Old tokens}
@@ -1448,15 +1448,15 @@ cannot contain \verb|{|, \verb|}| or \verb|#|
(more precisely, explicit character tokens with category code $1$
(begin-group) or $2$ (end-group), and tokens with category code $6$).
\begin{demohigh}
-\TlSet \lTmpaTl {1{bc}2bc3}
-\TlVarReplaceOnce \lTmpaTl {bc} {xx}
-\TlUse \lTmpaTl
+\tlSet \lTmpaTl {1{bc}2bc3}
+\tlVarReplaceOnce \lTmpaTl {bc} {xx}
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\TlVarReplaceAll}
+\begin{function}{\tlVarReplaceAll}
\begin{syntax}
-\cs{TlVarReplaceAll} \meta{tl var} \Arg{old tokens} \Arg{new tokens}
+\cs{tlVarReplaceAll} \meta{tl var} \Arg{old tokens} \Arg{new tokens}
\end{syntax}
Replaces all occurrences of \meta{old tokens} in the
\meta{tl var} with \meta{new tokens}. \meta{Old tokens}
@@ -1465,32 +1465,32 @@ cannot contain \verb|{|, \verb|}| or \verb|#|
(begin-group) or $2$ (end-group), and tokens with category code $6$).
As this function
operates from left to right, the pattern \meta{old tokens}
-may remain after the replacement (see \cs{TlVarRemoveAll} for an example).
+may remain after the replacement (see \cs{tlVarRemoveAll} for an example).
\begin{demohigh}
-\TlSet \lTmpaTl {1{bc}2bc3}
-\TlVarReplaceAll \lTmpaTl {bc} {xx}
-\TlUse \lTmpaTl
+\tlSet \lTmpaTl {1{bc}2bc3}
+\tlVarReplaceAll \lTmpaTl {bc} {xx}
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\TlVarRemoveOnce}
+\begin{function}{\tlVarRemoveOnce}
\begin{syntax}
-\cs{TlVarRemoveOnce} \meta{tl var} \Arg{tokens}
+\cs{tlVarRemoveOnce} \meta{tl var} \Arg{tokens}
\end{syntax}
Removes the first (leftmost) occurrence of \meta{tokens} from the
\meta{tl var}. \meta{Tokens} cannot contain \verb|{|, \verb|}| or \verb|#|
(more precisely, explicit character tokens with category code $1$
(begin-group) or $2$ (end-group), and tokens with category code $6$).
\begin{demohigh}
-\TlSet \lTmpaTl {1{bc}2bc3}
-\TlVarRemoveOnce \lTmpaTl {bc}
-\TlUse \lTmpaTl
+\tlSet \lTmpaTl {1{bc}2bc3}
+\tlVarRemoveOnce \lTmpaTl {bc}
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\TlVarRemoveAll}
+\begin{function}{\tlVarRemoveAll}
\begin{syntax}
-\cs{TlVarRemoveAll} \meta{tl var} \Arg{tokens}
+\cs{tlVarRemoveAll} \meta{tl var} \Arg{tokens}
\end{syntax}
Removes all occurrences of \meta{tokens} from the
\meta{tl var}. \meta{Tokens} cannot contain \verb|{|, \verb|}| or \verb|#|
@@ -1500,21 +1500,21 @@ As this function
operates from left to right, the pattern \meta{tokens}
may remain after the removal, for instance,
\begin{demohigh}
-\TlSet \lTmpaTl {abbccd}
-\TlVarRemoveAll \lTmpaTl {bc}
-\TlUse \lTmpaTl
+\tlSet \lTmpaTl {abbccd}
+\tlVarRemoveAll \lTmpaTl {bc}
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\TlTrimSpaces}
+\begin{function}{\tlTrimSpaces}
\begin{syntax}
-\cs{TlTrimSpaces} \Arg{token list}
+\cs{tlTrimSpaces} \Arg{token list}
\end{syntax}
Removes any leading and trailing explicit space characters
(explicit tokens with character code $32$ and category code $10$)
from the \meta{token list} and returns the result.
\begin{demohigh}
-Foo\TlTrimSpaces { 12 34 }Bar
+Foo\tlTrimSpaces { 12 34 }Bar
\end{demohigh}
%\begin{texnote}
%The result is returned within \tn{unexpanded}, which means that the token
@@ -1523,52 +1523,52 @@ Foo\TlTrimSpaces { 12 34 }Bar
%\end{texnote}
\end{function}
-\begin{function}{\TlVarTrimSpaces}
+\begin{function}{\tlVarTrimSpaces}
\begin{syntax}
-\cs{TlVarTrimSpaces} \meta{tl var}
+\cs{tlVarTrimSpaces} \meta{tl var}
\end{syntax}
Sets the \meta{tl var} to contain the result of removing any leading
and trailing explicit space characters (explicit tokens with
character code $32$ and category code $10$) from its contents.
\begin{demohigh}
-\TlSet \lTmpaTl { 12 34 }
-\TlVarTrimSpaces \lTmpaTl
-Foo\TlUse \lTmpaTl Bar
+\tlSet \lTmpaTl { 12 34 }
+\tlVarTrimSpaces \lTmpaTl
+Foo\tlUse \lTmpaTl Bar
\end{demohigh}
\end{function}
\section{Working with the Content of Token Lists}
-\begin{function}{\TlCount}
+\begin{function}{\tlCount}
\begin{syntax}
-\cs{TlCount} \Arg{tokens}
+\cs{tlCount} \Arg{tokens}
\end{syntax}
Counts the number of \meta{items} in \meta{tokens} and returns this information.
Unbraced tokens count as one element as do each token group (\verb|{|$\cdots$\verb|}|).
-This process ignores any unprotected spaces within \meta{tokens}. %See also \cs{TlVarCount}.
+This process ignores any unprotected spaces within \meta{tokens}. %See also \cs{tlVarCount}.
%This function requires three expansions, giving an \meta{integer denotation}.
\begin{demohigh}
-\TlCount {12\abc34}
+\tlCount {12\abc34}
\end{demohigh}
\end{function}
-\begin{function}{\TlVarCount}
+\begin{function}{\tlVarCount}
\begin{syntax}
-\cs{TlVarCount} \meta{tl var}
+\cs{tlVarCount} \meta{tl var}
\end{syntax}
Counts the number of \meta{items} in the \meta{tl var} and returns this information.
Unbraced tokens count as one element as do each token group (\verb|{|$\cdots$\verb|}|).
-This process ignores any unprotected spaces within the \meta{tl var}. %See also \cs{TlCount}.
+This process ignores any unprotected spaces within the \meta{tl var}. %See also \cs{tlCount}.
%This function requires three expansions, giving an \meta{integer denotation}.
\begin{demohigh}
-\TlSet \lTmpaTl {12\abc34}
-\TlVarCount \lTmpaTl
+\tlSet \lTmpaTl {12\abc34}
+\tlVarCount \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\TlHead}
+\begin{function}{\tlHead}
\begin{syntax}
-\cs{TlHead} \Arg{token list}
+\cs{tlHead} \Arg{token list}
\end{syntax}
Returns the first \meta{item} in the \meta{token list},
discarding the rest of the \meta{token list}.
@@ -1576,17 +1576,17 @@ All leading explicit space characters
(explicit tokens with character code $32$ and category code $10$)
are discarded; for example
\begin{demohigh}
-\fbox {1\TlHead{ abc }2}
-\fbox {1\TlHead{ abc }2}
+\fbox {1\tlHead{ abc }2}
+\fbox {1\tlHead{ abc }2}
\end{demohigh}
If the \enquote{head} is a brace group, rather than a single token,
the braces are removed, and so
\begin{codehigh}
-\TlHead { { ab} c }
+\tlHead { { ab} c }
\end{codehigh}
yields \verb*| ab|.
-A blank \meta{token list} (see \cs{TlIfBlank}) results in
-\cs{TlHead} returning nothing.
+A blank \meta{token list} (see \cs{tlIfBlank}) results in
+\cs{tlHead} returning nothing.
%\begin{texnote}
%The result is returned within \cs{exp_not:n}, which means that the token
%list does not expand further when appearing in an \texttt{x}-type
@@ -1594,37 +1594,37 @@ A blank \meta{token list} (see \cs{TlIfBlank}) results in
%\end{texnote}
\end{function}
-\begin{function}{\TlVarHead}
+\begin{function}{\tlVarHead}
\begin{syntax}
-\cs{TlVarHead} \meta{tl var}
+\cs{tlVarHead} \meta{tl var}
\end{syntax}
Returns the first \meta{item} in the \meta{tl var},
discarding the rest of the \meta{tl var}.
All leading explicit space characters (explicit tokens with character code $32$
and category code $10$) are discarded.
\begin{demohigh}
-\TlSet \lTmpaTl {HELLO}
-\TlVarHead \lTmpaTl
+\tlSet \lTmpaTl {HELLO}
+\tlVarHead \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\TlTail}
+\begin{function}{\tlTail}
\begin{syntax}
-\cs{TlTail} \Arg{token list}
+\cs{tlTail} \Arg{token list}
\end{syntax}
Discards all leading explicit space characters
(explicit tokens with character code $32$ and category code $10$)
and the first \meta{item} in the \meta{token list}, and returns the
remaining tokens. Thus for example
\begin{codehigh}
-\TlTail { a {bc} d }
+\tlTail { a {bc} d }
\end{codehigh}
and
\begin{codehigh}
-\TlTail { a {bc} d }
+\tlTail { a {bc} d }
\end{codehigh}
-both return \verb*| {bc} d |. A blank \meta{token list} (see \cs{TlIfBlank})
-results in \cs{TlTail} returning nothing.
+both return \verb*| {bc} d |. A blank \meta{token list} (see \cs{tlIfBlank})
+results in \cs{tlTail} returning nothing.
%\begin{texnote}
%The result is returned within \cs{exp_not:n}, which means that the
%token list does not expand further when appearing in an \texttt{x}-type
@@ -1632,24 +1632,24 @@ results in \cs{TlTail} returning nothing.
%\end{texnote}
\end{function}
-\begin{function}{\TlVarTail}
+\begin{function}{\tlVarTail}
\begin{syntax}
-\cs{TlVarTail} \meta{tl var}
+\cs{tlVarTail} \meta{tl var}
\end{syntax}
Discards all leading explicit space characters
(explicit tokens with character code $32$ and category code $10$)
and the first \meta{item} in the \meta{tl var}, and returns the
remaining tokens.
\begin{demohigh}
-\TlSet \lTmpaTl {HELLO}
-\TlVarTail \lTmpaTl
+\tlSet \lTmpaTl {HELLO}
+\tlVarTail \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\TlItem,\TlVarItem}
+\begin{function}{\tlItem,\tlVarItem}
\begin{syntax}
-\cs{TlItem} \Arg{token list} \Arg{integer expression}
-\cs{TlVarItem} \meta{tl var} \Arg{integer expression}
+\cs{tlItem} \Arg{token list} \Arg{integer expression}
+\cs{tlVarItem} \meta{tl var} \Arg{integer expression}
\end{syntax}
Indexing items in the \meta{token list} from $1$ on the left, this
function evaluates the \meta{integer expression} and returns the
@@ -1658,7 +1658,7 @@ If the \meta{integer expression} is negative, indexing occurs from
the right of the token list, starting at $-1$ for the right-most item.
If the index is out of bounds, then the function returns nothing.
\begin{demohigh}
-\TlItem {abcd} {3}
+\tlItem {abcd} {3}
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -1668,17 +1668,17 @@ If the index is out of bounds, then the function returns nothing.
%\end{texnote}
\end{function}
-\begin{function}{\TlRandItem,\TlVarRandItem}
+\begin{function}{\tlRandItem,\tlVarRandItem}
\begin{syntax}
-\cs{TlRandItem} \Arg{token list}
-\cs{TlVarRandItem} \meta{tl var}
+\cs{tlRandItem} \Arg{token list}
+\cs{tlVarRandItem} \meta{tl var}
\end{syntax}
Selects and returns a pseudo-random item of the \meta{token list}.
If the \meta{token list} is blank, the result is empty.
%This is not available in older versions of \XeTeX{}.
\begin{demohigh}
-\TlRandItem {abcdef}
-\TlRandItem {abcdef}
+\tlRandItem {abcdef}
+\tlRandItem {abcdef}
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -1694,9 +1694,9 @@ All mappings are done at the current group level, \emph{i.e.} any
local assignments made by the \meta{function} or \meta{code} discussed
below remain in effect after the loop.
-%\begin{function}{\TlMapFunction}
+%\begin{function}{\tlMapFunction}
%\begin{syntax}
-%\cs{TlMapFunction} \Arg{token list} \meta{function}
+%\cs{tlMapFunction} \Arg{token list} \meta{function}
%\end{syntax}
%Applies \meta{function} to every \meta{item} in the \meta{token list},
%The \meta{function} receives one argument for each iteration.
@@ -1705,9 +1705,9 @@ below remain in effect after the loop.
%\texttt{n}-type arguments.
%\end{function}
%
-%\begin{function}{\TlVarMapFunction}
+%\begin{function}{\tlVarMapFunction}
%\begin{syntax}
-%\cs{TlVarMapFunction} \meta{tl var} \meta{function}
+%\cs{tlVarMapFunction} \meta{tl var} \meta{function}
%\end{syntax}
%Applies \meta{function} to every \meta{item} in the \meta{tl var}.
%The \meta{function} receives one argument for each iteration.
@@ -1716,47 +1716,47 @@ below remain in effect after the loop.
%\texttt{n}-type arguments.
%\end{function}
-\begin{function}{\TlMapInline}
+\begin{function}{\tlMapInline}
\begin{syntax}
-\cs{TlMapInline} \Arg{token list} \Arg{inline function}
+\cs{tlMapInline} \Arg{token list} \Arg{inline function}
\end{syntax}
Applies the \meta{inline function} to every \meta{item} stored within the
\meta{token list}. The \meta{inline function} should consist of code which
receives the \meta{item} as \verb|#1|.
\begin{demohigh}
\IgnoreSpacesOn
-\TlClear \lTmpaTl
-\TlMapInline {one} {
- \TlPutRight \lTmpaTl {[#1]}
+\tlClear \lTmpaTl
+\tlMapInline {one} {
+ \tlPutRight \lTmpaTl {[#1]}
}
-\TlUse \lTmpaTl
+\tlUse \lTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\TlVarMapInline}
+\begin{function}{\tlVarMapInline}
\begin{syntax}
-\cs{TlVarMapInline} \meta{tl var} \Arg{inline function}
+\cs{tlVarMapInline} \meta{tl var} \Arg{inline function}
\end{syntax}
Applies the \meta{inline function} to every \meta{item} stored within the
\meta{tl var}. The \meta{inline function} should consist of code which
receives the \meta{item} as \verb|#1|.
\begin{demohigh}
\IgnoreSpacesOn
-\TlClear \lTmpaTl
-\TlSet \lTmpkTl {one}
-\TlVarMapInline \lTmpkTl {
- \TlPutRight \lTmpaTl {[#1]}
+\tlClear \lTmpaTl
+\tlSet \lTmpkTl {one}
+\tlVarMapInline \lTmpkTl {
+ \tlPutRight \lTmpaTl {[#1]}
}
-\TlUse \lTmpaTl
+\tlUse \lTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-%\begin{function}{\TlMapTokens,\TlVarMapTokens}
+%\begin{function}{\tlMapTokens,\tlVarMapTokens}
%\begin{syntax}
-%\cs{TlMapTokens} \Arg{tokens} \Arg{code}
-%\cs{TlVarMapTokens} \meta{tl var} \Arg{code}
+%\cs{tlMapTokens} \Arg{tokens} \Arg{code}
+%\cs{tlVarMapTokens} \meta{tl var} \Arg{code}
%\end{syntax}
%Analogue of \cs{tl_map_function:NN} which maps several tokens
%instead of a single function. The \meta{code} receives each \meta{item} in
@@ -1771,9 +1771,9 @@ receives the \meta{item} as \verb|#1|.
%\cs{tl_map_inline:Nn} is typically faster but is not expandable.
%\end{function}
-\begin{function}{\TlMapVariable}
+\begin{function}{\tlMapVariable}
\begin{syntax}
-\cs{TlMapVariable} \Arg{token list} \meta{variable} \Arg{code}
+\cs{tlMapVariable} \Arg{token list} \meta{variable} \Arg{code}
\end{syntax}
Stores each \meta{item} of the \meta{token list} in turn in the
(token list) \meta{variable} and applies the \meta{code}. The
@@ -1783,18 +1783,18 @@ Its value after the loop is the last \meta{item} in the
\meta{tl var}, or its original value if the \meta{tl var} is blank.
\begin{demohigh}
\IgnoreSpacesOn
-\TlClear \lTmpaTl
-\TlMapVariable {one} \lTmpiTl {
- \TlPutRight \lTmpaTl {\Expand {[\lTmpiTl]}}
+\tlClear \lTmpaTl
+\tlMapVariable {one} \lTmpiTl {
+ \tlPutRight \lTmpaTl {\expWhole {[\lTmpiTl]}}
}
-\Return{\TlUse\lTmpaTl}
+\prgReturn{\tlUse\lTmpaTl}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\TlVarMapVariable}
+\begin{function}{\tlVarMapVariable}
\begin{syntax}
-\cs{TlVarMapVariable} \meta{tl var} \meta{variable} \Arg{code}
+\cs{tlVarMapVariable} \meta{tl var} \meta{variable} \Arg{code}
\end{syntax}
Stores each \meta{item} of the \meta{tl var} in turn in the (token
list) \meta{variable} and applies the \meta{code}. The \meta{code}
@@ -1804,19 +1804,19 @@ value after the loop is the last \meta{item} in the \meta{tl var},
or its original value if the \meta{tl var} is blank.
\begin{demohigh}
\IgnoreSpacesOn
-\TlClear \lTmpaTl
-\TlSet \lTmpkTl {one}
-\TlVarMapVariable \lTmpkTl \lTmpiTl {
- \TlPutRight \lTmpaTl {\Expand {[\lTmpiTl]}}
+\tlClear \lTmpaTl
+\tlSet \lTmpkTl {one}
+\tlVarMapVariable \lTmpkTl \lTmpiTl {
+ \tlPutRight \lTmpaTl {\expWhole {[\lTmpiTl]}}
}
-\Return{\TlUse\lTmpaTl}
+\prgReturn{\tlUse\lTmpaTl}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-%\begin{function}{\TlMapBreak}
+%\begin{function}{\tlMapBreak}
%\begin{syntax}
-%\cs{TlMapBreak}
+%\cs{tlMapBreak}
%\end{syntax}
%Used to terminate a tl map function before all
%entries in the \meta{token list variable} have been processed. This
@@ -1839,9 +1839,9 @@ or its original value if the \meta{tl var} is blank.
%\end{texnote}
%\end{function}
%
-%\begin{function}{\TlMapBreakDo}
+%\begin{function}{\tlMapBreakDo}
%\begin{syntax}
-%\cs{TlMapBreakDo} \Arg{code}
+%\cs{tlMapBreakDo} \Arg{code}
%\end{syntax}
%Used to terminate a tl map function before all
%entries in the \meta{token list variable} have been processed, inserting
@@ -1867,59 +1867,59 @@ or its original value if the \meta{tl var} is blank.
\section{Token List Conditionals}
-\begin{function}{\TlIfExist,\TlIfExistT,\TlIfExistF,\TlIfExistTF}
+\begin{function}{\tlIfExist,\tlIfExistT,\tlIfExistF,\tlIfExistTF}
\begin{syntax}
-\cs{TlIfExist} \meta{tl var}
-\cs{TlIfExistT} \meta{tl var} \Arg{true code}
-\cs{TlIfExistF} \meta{tl var} \Arg{false code}
-\cs{TlIfExistTF} \meta{tl var} \Arg{true code} \Arg{false code}
+\cs{tlIfExist} \meta{tl var}
+\cs{tlIfExistT} \meta{tl var} \Arg{true code}
+\cs{tlIfExistF} \meta{tl var} \Arg{false code}
+\cs{tlIfExistTF} \meta{tl var} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{tl var} is currently defined. This does not
check that the \meta{tl var} really is a token list variable.
\begin{demohigh}
-\TlIfExistTF \lTmpaTl {\Return{Yes}} {\Return{No}}
-\TlIfExistTF \lFooUndefinedTl {\Return{Yes}} {\Return{No}}
+\tlIfExistTF \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
+\tlIfExistTF \lFooUndefinedTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\TlIfEmpty,\TlIfEmptyT,\TlIfEmptyF,\TlIfEmptyTF}
+\begin{function}{\tlIfEmpty,\tlIfEmptyT,\tlIfEmptyF,\tlIfEmptyTF}
\begin{syntax}
-\cs{TlIfEmpty} \Arg{token list}
-\cs{TlIfEmptyT} \Arg{token list} \Arg{true code}
-\cs{TlIfEmptyF} \Arg{token list} \Arg{false code}
-\cs{TlIfEmptyTF} \Arg{token list} \Arg{true code} \Arg{false code}
+\cs{tlIfEmpty} \Arg{token list}
+\cs{tlIfEmptyT} \Arg{token list} \Arg{true code}
+\cs{tlIfEmptyF} \Arg{token list} \Arg{false code}
+\cs{tlIfEmptyTF} \Arg{token list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{token list} is entirely empty
(\emph{i.e.}~contains no tokens at all). For example
\begin{demohigh}
-\TlIfEmptyTF {abc} {\Return{Empty}} {\Return{NonEmpty}}
-\TlIfEmptyTF {} {\Return{Empty}} {\Return{NonEmpty}}
+\tlIfEmptyTF {abc} {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
+\tlIfEmptyTF {} {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
\end{demohigh}
\end{function}
-\begin{function}{\TlVarIfEmpty,\TlVarIfEmptyT,\TlVarIfEmptyF,\TlVarIfEmptyTF}
+\begin{function}{\tlVarIfEmpty,\tlVarIfEmptyT,\tlVarIfEmptyF,\tlVarIfEmptyTF}
\begin{syntax}
-\cs{TlVarIfEmpty} \meta{tl~var}
-\cs{TlVarIfEmptyT} \meta{tl~var} \Arg{true code}
-\cs{TlVarIfEmptyF} \meta{tl~var} \Arg{false code}
-\cs{TlVarIfEmptyTF} \meta{tl~var} \Arg{true code} \Arg{false code}
+\cs{tlVarIfEmpty} \meta{tl~var}
+\cs{tlVarIfEmptyT} \meta{tl~var} \Arg{true code}
+\cs{tlVarIfEmptyF} \meta{tl~var} \Arg{false code}
+\cs{tlVarIfEmptyTF} \meta{tl~var} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{token list variable} is entirely empty
(\emph{i.e.}~contains no tokens at all). For example
\begin{demohigh}
-\TlSet \lTmpaTl {abc}
-\TlVarIfEmptyTF \lTmpaTl {\Return{Empty}} {\Return{NonEmpty}}
-\TlClear \lTmpaTl
-\TlVarIfEmptyTF \lTmpaTl {\Return{Empty}} {\Return{NonEmpty}}
+\tlSet \lTmpaTl {abc}
+\tlVarIfEmptyTF \lTmpaTl {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
+\tlClear \lTmpaTl
+\tlVarIfEmptyTF \lTmpaTl {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
\end{demohigh}
\end{function}
-\begin{function}{\TlIfBlank,\TlIfBlankT,\TlIfBlankF,\TlIfBlankTF}
+\begin{function}{\tlIfBlank,\tlIfBlankT,\tlIfBlankF,\tlIfBlankTF}
\begin{syntax}
-\cs{TlIfBlank} \Arg{token list}
-\cs{TlIfBlankT} \Arg{token list} \Arg{true code}
-\cs{TlIfBlankF} \Arg{token list} \Arg{false code}
-\cs{TlIfBlankTF} \Arg{token list} \Arg{true code} \Arg{false code}
+\cs{tlIfBlank} \Arg{token list}
+\cs{tlIfBlankT} \Arg{token list} \Arg{true code}
+\cs{tlIfBlankF} \Arg{token list} \Arg{false code}
+\cs{tlIfBlankTF} \Arg{token list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{token list} consists only of blank spaces
(\emph{i.e.} contains no item). The test is \texttt{true} if
@@ -1927,62 +1927,62 @@ Tests if the \meta{token list} consists only of blank spaces
(explicit tokens with character code $32$ and category code $10$),
and is \texttt{false} otherwise.
\begin{demohigh}
-\TlIfEmptyTF { } {\Return{Yes}} {\Return{No}}
-\TlIfBlankTF { } {\Return{Yes}} {\Return{No}}
+\tlIfEmptyTF { } {\prgReturn{Yes}} {\prgReturn{No}}
+\tlIfBlankTF { } {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\TlIfEq,\TlIfEqT,\TlIfEqF,\TlIfEqTF}
+\begin{function}{\tlIfEq,\tlIfEqT,\tlIfEqF,\tlIfEqTF}
\begin{syntax}
-\cs{TlIfEq} \Arg{token list_1} \Arg{token list_2}
-\cs{TlIfEqT} \Arg{token list_1} \Arg{token list_2} \Arg{true code}
-\cs{TlIfEqF} \Arg{token list_1} \Arg{token list_2} \Arg{false code}
-\cs{TlIfEqTF} \Arg{token list_1} \Arg{token list_2} \Arg{true code} \Arg{false code}
+\cs{tlIfEq} \Arg{token list_1} \Arg{token list_2}
+\cs{tlIfEqT} \Arg{token list_1} \Arg{token list_2} \Arg{true code}
+\cs{tlIfEqF} \Arg{token list_1} \Arg{token list_2} \Arg{false code}
+\cs{tlIfEqTF} \Arg{token list_1} \Arg{token list_2} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if \meta{token list_1} and \meta{token list_2} contain the
same list of tokens, both in respect of character codes and category
-codes. See \cs{StrIfEq} if category codes are not important.
+codes. See \cs{strIfEq} if category codes are not important.
For example
\begin{demohigh}
-\TlIfEqTF {abc} {abc} {\Return{Yes}} {\Return{No}}
-\TlIfEqTF {abc} {xyz} {\Return{Yes}} {\Return{No}}
+\tlIfEqTF {abc} {abc} {\prgReturn{Yes}} {\prgReturn{No}}
+\tlIfEqTF {abc} {xyz} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
%\begin{demohigh}
-%\TlSet\lTmpaTl{abc}
-%\TlSet\lTmpbTl{abc}
-%\TlSet\lTmpcTl{xyz}
-%\TlIfEqTF{\TlUse\lTmpaTl}{\TlUse\lTmpbTl}{\Return{Yes}}{\Return{No}}
-%\TlIfEqTF{\TlUse\lTmpaTl}{\TlUse\lTmpcTl}{\Return{Yes}}{\Return{No}}
+%\tlSet\lTmpaTl{abc}
+%\tlSet\lTmpbTl{abc}
+%\tlSet\lTmpcTl{xyz}
+%\tlIfEqTF{\tlUse\lTmpaTl}{\tlUse\lTmpbTl}{\prgReturn{Yes}}{\prgReturn{No}}
+%\tlIfEqTF{\tlUse\lTmpaTl}{\tlUse\lTmpcTl}{\prgReturn{Yes}}{\prgReturn{No}}
%\end{demohigh}
\end{function}
-\begin{function}{\TlVarIfEq,\TlVarIfEqT,\TlVarIfEqF,\TlVarIfEqTF}
+\begin{function}{\tlVarIfEq,\tlVarIfEqT,\tlVarIfEqF,\tlVarIfEqTF}
\begin{syntax}
-\cs{TlVarIfEq} \meta{tl var_1} \meta{tl var_2}
-\cs{TlVarIfEqT} \meta{tl var_1} \meta{tl var_2} \Arg{true code}
-\cs{TlVarIfEqF} \meta{tl var_1} \meta{tl var_2} \Arg{false code}
-\cs{TlVarIfEqTF} \meta{tl var_1} \meta{tl var_2} \Arg{true code} \Arg{false code}
+\cs{tlVarIfEq} \meta{tl var_1} \meta{tl var_2}
+\cs{tlVarIfEqT} \meta{tl var_1} \meta{tl var_2} \Arg{true code}
+\cs{tlVarIfEqF} \meta{tl var_1} \meta{tl var_2} \Arg{false code}
+\cs{tlVarIfEqTF} \meta{tl var_1} \meta{tl var_2} \Arg{true code} \Arg{false code}
\end{syntax}
Compares the content of two \meta{token list variables} and
is logically \texttt{true} if the two contain the same list of
tokens (\emph{i.e.}~identical in both the list of characters they
contain and the category codes of those characters). For example
\begin{demohigh}
-\TlSet \lTmpaTl {abc}
-\TlSet \lTmpbTl {abc}
-\TlSet \lTmpcTl {xyz}
-\TlVarIfEqTF \lTmpaTl \lTmpbTl {\Return{Yes}} {\Return{No}}
-\TlVarIfEqTF \lTmpaTl \lTmpcTl {\Return{Yes}} {\Return{No}}
+\tlSet \lTmpaTl {abc}
+\tlSet \lTmpbTl {abc}
+\tlSet \lTmpcTl {xyz}
+\tlVarIfEqTF \lTmpaTl \lTmpbTl {\prgReturn{Yes}} {\prgReturn{No}}
+\tlVarIfEqTF \lTmpaTl \lTmpcTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
-See also \cs{StrVarIfEq} for a comparison that ignores category codes.
+See also \cs{strVarIfEq} for a comparison that ignores category codes.
\end{function}
-\begin{function}{\TlIfIn,\TlIfInT,\TlIfInF,\TlIfInTF}
+\begin{function}{\tlIfIn,\tlIfInT,\tlIfInF,\tlIfInTF}
\begin{syntax}
-\cs{TlIfIn} \Arg{token list_1} \Arg{token list_2}
-\cs{TlIfInT} \Arg{token list_1} \Arg{token list_2} \Arg{true code}
-\cs{TlIfInF} \Arg{token list_1} \Arg{token list_2} \Arg{false code}
-\cs{TlIfInTF} \Arg{token list_1} \Arg{token list_2} \Arg{true code} \Arg{false code}
+\cs{tlIfIn} \Arg{token list_1} \Arg{token list_2}
+\cs{tlIfInT} \Arg{token list_1} \Arg{token list_2} \Arg{true code}
+\cs{tlIfInF} \Arg{token list_1} \Arg{token list_2} \Arg{false code}
+\cs{tlIfInTF} \Arg{token list_1} \Arg{token list_2} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if \meta{token list_2} is found inside \meta{token list_1}.
The \meta{token list_2} cannot contain the tokens \verb|{|, \verb|}| or \verb|#|
@@ -1990,17 +1990,17 @@ The \meta{token list_2} cannot contain the tokens \verb|{|, \verb|}| or \verb|#|
(begin-group) or $2$ (end-group), and tokens with category code $6$).
The search does \emph{not} enter brace (category code $1$/$2$) groups.
\begin{demohigh}
-\TlIfInTF {hello world} {o} {\Return{Yes}} {\Return{No}}
-\TlIfInTF {hello world} {a} {\Return{Yes}} {\Return{No}}
+\tlIfInTF {hello world} {o} {\prgReturn{Yes}} {\prgReturn{No}}
+\tlIfInTF {hello world} {a} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\TlVarIfIn,\TlVarIfInT,\TlVarIfInF,\TlVarIfInTF}
+\begin{function}{\tlVarIfIn,\tlVarIfInT,\tlVarIfInF,\tlVarIfInTF}
\begin{syntax}
-\cs{TlVarIfIn} \meta{tl var} \Arg{token list}
-\cs{TlVarIfInT} \meta{tl var} \Arg{token list} \Arg{true code}
-\cs{TlVarIfInF} \meta{tl var} \Arg{token list} \Arg{false code}
-\cs{TlVarIfInTF} \meta{tl var} \Arg{token list} \Arg{true code} \Arg{false code}
+\cs{tlVarIfIn} \meta{tl var} \Arg{token list}
+\cs{tlVarIfInT} \meta{tl var} \Arg{token list} \Arg{true code}
+\cs{tlVarIfInF} \meta{tl var} \Arg{token list} \Arg{false code}
+\cs{tlVarIfInTF} \meta{tl var} \Arg{token list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{token list} is found in the content of the
\meta{tl var}. The \meta{token list} cannot contain
@@ -2008,55 +2008,55 @@ the tokens \verb|{|, \verb|}| or \verb|#|
(more precisely, explicit character tokens with category code $1$
(begin-group) or $2$ (end-group), and tokens with category code $6$).
\begin{demohigh}
-\TlSet \lTmpaTl {hello world}
-\TlVarIfInTF \lTmpaTl {o} {\Return{Yes}} {\Return{No}}
-\TlVarIfInTF \lTmpaTl {a} {\Return{Yes}} {\Return{No}}
+\tlSet \lTmpaTl {hello world}
+\tlVarIfInTF \lTmpaTl {o} {\prgReturn{Yes}} {\prgReturn{No}}
+\tlVarIfInTF \lTmpaTl {a} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\TlIfSingle,\TlIfSingleT,\TlIfSingleF,\TlIfSingleTF}
+\begin{function}{\tlIfSingle,\tlIfSingleT,\tlIfSingleF,\tlIfSingleTF}
\begin{syntax}
-\cs{TlIfSingle} \Arg{token list}
-\cs{TlIfSingleT} \Arg{token list} \Arg{true code}
-\cs{TlIfSingleF} \Arg{token list} \Arg{false code}
-\cs{TlIfSingleTF} \Arg{token list} \Arg{true code} \Arg{false code}
+\cs{tlIfSingle} \Arg{token list}
+\cs{tlIfSingleT} \Arg{token list} \Arg{true code}
+\cs{tlIfSingleF} \Arg{token list} \Arg{false code}
+\cs{tlIfSingleTF} \Arg{token list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{token list} has exactly one \meta{item}, \emph{i.e.} is
a single normal token (neither an explicit space character nor a
begin-group character) or a single brace group, surrounded by
optional spaces on both sides. In other words, such a token list has
-token count $1$ according to \cs{TlCount}.
+token count $1$ according to \cs{tlCount}.
\begin{demohigh}
-\TlIfSingleTF {a} {\Return{Yes}} {\Return{No}}
-\TlIfSingleTF {abc} {\Return{Yes}} {\Return{No}}
+\tlIfSingleTF {a} {\prgReturn{Yes}} {\prgReturn{No}}
+\tlIfSingleTF {abc} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\TlVarIfSingle,\TlVarIfSingleT,\TlVarIfSingleF,\TlVarIfSingleTF}
+\begin{function}{\tlVarIfSingle,\tlVarIfSingleT,\tlVarIfSingleF,\tlVarIfSingleTF}
\begin{syntax}
-\cs{TlVarIfSingle} \meta{tl var}
-\cs{TlVarIfSingleT} \meta{tl var} \Arg{true code}
-\cs{TlVarIfSingleF} \meta{tl var} \Arg{false code}
-\cs{TlVarIfSingleTF} \meta{tl var} \Arg{true code} \Arg{false code}
+\cs{tlVarIfSingle} \meta{tl var}
+\cs{tlVarIfSingleT} \meta{tl var} \Arg{true code}
+\cs{tlVarIfSingleF} \meta{tl var} \Arg{false code}
+\cs{tlVarIfSingleTF} \meta{tl var} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the content of the \meta{tl var} consists of a single \meta{item},
\emph{i.e.} is a single normal token (neither an explicit space
character nor a begin-group character) or a single brace group,
surrounded by optional spaces on both sides. In other words, such a
-token list has token count $1$ according to \cs{TlVarCount}.
+token list has token count $1$ according to \cs{tlVarCount}.
\begin{demohigh}
-\TlSet \lTmpaTl {a}
-\TlVarIfSingleTF \lTmpaTl {\Return{Yes}} {\Return{No}}
-\TlSet \lTmpaTl {abc}
-\TlVarIfSingleTF \lTmpaTl {\Return{Yes}} {\Return{No}}
+\tlSet \lTmpaTl {a}
+\tlVarIfSingleTF \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
+\tlSet \lTmpaTl {abc}
+\tlVarIfSingleTF \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
\section{Token List Case Functions}
-\begin{function}{\TlVarCase}
+\begin{function}{\tlVarCase}
\begin{syntax}
-\cs{TlVarCase} \meta{test token list variable}
+\cs{tlVarCase} \meta{test token list variable}
~ ~ \verb"{"
~ ~ ~ ~ \meta{token list variable case_1} \Arg{code case_1}
~ ~ ~ ~ \meta{token list variable case_2} \Arg{code case_2}
@@ -2066,28 +2066,28 @@ token list has token count $1$ according to \cs{TlVarCount}.
\end{syntax}
This function compares the \meta{test token list variable} in turn
with each of the \meta{token list variable cases}. If the two
-are equal (as described for \cs{TlVarIfEq})
+are equal (as described for \cs{tlVarIfEq})
then the associated \meta{code} is left in the input
stream and other cases are discarded. The function
does nothing if there is no match.
\begin{demohigh}
\IgnoreSpacesOn
-\TlSet \lTmpaTl {a}
-\TlSet \lTmpbTl {b}
-\TlSet \lTmpcTl {c}
-\TlSet \lTmpkTl {b}
-\TlVarCase \lTmpkTl {
- \lTmpaTl {\Return {First}}
- \lTmpbTl {\Return {Second}}
- \lTmpcTl {\Return {Third}}
+\tlSet \lTmpaTl {a}
+\tlSet \lTmpbTl {b}
+\tlSet \lTmpcTl {c}
+\tlSet \lTmpkTl {b}
+\tlVarCase \lTmpkTl {
+ \lTmpaTl {\prgReturn {First}}
+ \lTmpbTl {\prgReturn {Second}}
+ \lTmpcTl {\prgReturn {Third}}
}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\TlVarCaseT}
+\begin{function}{\tlVarCaseT}
\begin{syntax}
-\cs{TlVarCaseT} \meta{test token list variable}
+\cs{tlVarCaseT} \meta{test token list variable}
~ ~ \verb"{"
~ ~ ~ ~ \meta{token list variable case_1} \Arg{code case_1}
~ ~ ~ ~ \meta{token list variable case_2} \Arg{code case_2}
@@ -2098,31 +2098,31 @@ does nothing if there is no match.
\end{syntax}
This function compares the \meta{test token list variable} in turn
with each of the \meta{token list variable cases}. If the two
-are equal (as described for \cs{TlVarIfEq})
+are equal (as described for \cs{tlVarIfEq})
then the associated \meta{code} is left in the input
stream and other cases are discarded. If any of the
cases are matched, the \meta{true code} is also inserted into the
input stream (after the code for the appropriate case).
\begin{demohigh}
\IgnoreSpacesOn
-\TlSet \lTmpaTl {a}
-\TlSet \lTmpbTl {b}
-\TlSet \lTmpcTl {c}
-\TlSet \lTmpkTl {b}
-\TlVarCaseT \lTmpkTl {
- \lTmpaTl {\IntSet \lTmpkInt {1}}
- \lTmpbTl {\IntSet \lTmpkInt {2}}
- \lTmpcTl {\IntSet \lTmpkInt {3}}
+\tlSet \lTmpaTl {a}
+\tlSet \lTmpbTl {b}
+\tlSet \lTmpcTl {c}
+\tlSet \lTmpkTl {b}
+\tlVarCaseT \lTmpkTl {
+ \lTmpaTl {\intSet \lTmpkInt {1}}
+ \lTmpbTl {\intSet \lTmpkInt {2}}
+ \lTmpcTl {\intSet \lTmpkInt {3}}
}{
- \Return {\IntUse \lTmpkInt}
+ \prgReturn {\intUse \lTmpkInt}
}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\TlVarCaseF}
+\begin{function}{\tlVarCaseF}
\begin{syntax}
-\cs{TlVarCaseF} \meta{test token list variable}
+\cs{tlVarCaseF} \meta{test token list variable}
~ ~ \verb"{"
~ ~ ~ ~ \meta{token list variable case_1} \Arg{code case_1}
~ ~ ~ ~ \meta{token list variable case_2} \Arg{code case_2}
@@ -2133,30 +2133,30 @@ input stream (after the code for the appropriate case).
\end{syntax}
This function compares the \meta{test token list variable} in turn
with each of the \meta{token list variable cases}. If the two
-are equal (as described for \cs{TlVarIfEq})
+are equal (as described for \cs{tlVarIfEq})
then the associated \meta{code} is left in the input
stream and other cases are discarded. If none match then the \meta{false code}
is inserted into the input stream (after the code for the appropriate case).
\begin{demohigh}
\IgnoreSpacesOn
-\TlSet \lTmpaTl {a}
-\TlSet \lTmpbTl {b}
-\TlSet \lTmpcTl {c}
-\TlSet \lTmpkTl {b}
-\TlVarCaseF \lTmpkTl{
- \lTmpaTl {\Return {First}}
- \lTmpbTl {\Return {Second}}
- \lTmpcTl {\Return {Third}}
+\tlSet \lTmpaTl {a}
+\tlSet \lTmpbTl {b}
+\tlSet \lTmpcTl {c}
+\tlSet \lTmpkTl {b}
+\tlVarCaseF \lTmpkTl{
+ \lTmpaTl {\prgReturn {First}}
+ \lTmpbTl {\prgReturn {Second}}
+ \lTmpcTl {\prgReturn {Third}}
}{
- \Return {No~Match!}
+ \prgReturn {No~Match!}
}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\TlVarCaseTF}
+\begin{function}{\tlVarCaseTF}
\begin{syntax}
-\cs{TlVarCaseTF} \meta{test token list variable}
+\cs{tlVarCaseTF} \meta{test token list variable}
~ ~ \verb"{"
~ ~ ~ ~ \meta{token list variable case_1} \Arg{code case_1}
~ ~ ~ ~ \meta{token list variable case_2} \Arg{code case_2}
@@ -2168,27 +2168,27 @@ is inserted into the input stream (after the code for the appropriate case).
\end{syntax}
This function compares the \meta{test token list variable} in turn
with each of the \meta{token list variable cases}. If the two
-are equal (as described for \cs{TlVarIfEq})
+are equal (as described for \cs{tlVarIfEq})
then the associated \meta{code} is left in the input
stream and other cases are discarded. If any of the
cases are matched, the \meta{true code} is also inserted into the
input stream (after the code for the appropriate case), while if none
-match then the \meta{false code} is inserted. The function \cs{TlVarCase},
+match then the \meta{false code} is inserted. The function \cs{tlVarCase},
which does nothing if there is no match, is also available.
\begin{demohigh}
\IgnoreSpacesOn
-\TlSet \lTmpaTl {a}
-\TlSet \lTmpbTl {b}
-\TlSet \lTmpcTl {c}
-\TlSet \lTmpkTl {b}
-\TlVarCaseTF \lTmpkTl {
- \lTmpaTl {\IntSet \lTmpkInt {1}}
- \lTmpbTl {\IntSet \lTmpkInt {2}}
- \lTmpcTl {\IntSet \lTmpkInt {3}}
+\tlSet \lTmpaTl {a}
+\tlSet \lTmpbTl {b}
+\tlSet \lTmpcTl {c}
+\tlSet \lTmpkTl {b}
+\tlVarCaseTF \lTmpkTl {
+ \lTmpaTl {\intSet \lTmpkInt {1}}
+ \lTmpbTl {\intSet \lTmpkInt {2}}
+ \lTmpcTl {\intSet \lTmpkInt {3}}
}{
- \Return {\IntUse \lTmpkInt}
+ \prgReturn {\intUse \lTmpkInt}
}{
- \Return {0}
+ \prgReturn {0}
}
\IgnoreSpacesOff
\end{demohigh}
@@ -2214,7 +2214,7 @@ should be named with the suffix \texttt{Str}. Such variables
should contain characters with category code $12$ (other), except
spaces, which have category code $10$ (blank space). All the
functions in this module which accept a token list argument first
-convert it to a string using \cs{TlToStr} for internal processing,
+convert it to a string using \cs{tlToStr} for internal processing,
and do not treat a token list or the corresponding string
representation differently.
@@ -2225,7 +2225,7 @@ and for which a level of protection from unwanted expansion is suitable.
This data type simplifies comparison of variables since there are no concerns
about expansion of their contents.
-%The functions \cs{CsToStr}, \cs{TlToStr}, \cs{TlVarToStr} and
+%The functions \cs{CsToStr}, \cs{tlToStr}, \cs{tlVarToStr} and
%\cs{TokenToStr} (and variants) generate strings from the appropriate
%input: these are documented in modules \pkg{Cs}, \pkg{Tl} and \pkg{Token},
%respectively.
@@ -2253,142 +2253,142 @@ code and so should only be used for short-term storage.
\section{Creating and Using Strings}
-\begin{function}{\StrNew}
+\begin{function}{\strNew}
\begin{syntax}
-\cs{StrNew} \meta{str var}
+\cs{strNew} \meta{str var}
\end{syntax}
Creates a new \meta{str var} or raises an error if the name is
already taken. The declaration is global. The \meta{str var} is
initially empty.
\begin{codehigh}
-\StrNew \lFooSomeStr
+\strNew \lFooSomeStr
\end{codehigh}
\end{function}
-\begin{function}{\StrConst}
+\begin{function}{\strConst}
\begin{syntax}
-\cs{StrConst} \meta{str var} \Arg{token list}
+\cs{strConst} \meta{str var} \Arg{token list}
\end{syntax}
Creates a new constant \meta{str var} or raises an error if the name
is already taken. The value of the \meta{str var} is set
globally to the \meta{token list}, converted to a string.
\begin{codehigh}
-\StrConst \cFooSomeStr {12\abc34}
+\strConst \cFooSomeStr {12\abc34}
\end{codehigh}
\end{function}
-\begin{function}{\StrUse}
+\begin{function}{\strUse}
\begin{syntax}
-\cs{StrUse} \meta{str var}
+\cs{strUse} \meta{str var}
\end{syntax}
Recovers the content of a \meta{str var} and returns the value.
An error is raised if the variable
does not exist or if it is invalid. Note that it is possible to use
a \meta{str} directly without an accessor function.
\begin{codehigh}
-\StrUse \lTmpaStr
+\strUse \lTmpaStr
\end{codehigh}
\end{function}
\section{Viewing Strings}
-\begin{function}{\StrLog}
+\begin{function}{\strLog}
\begin{syntax}
-\cs{StrLog} \Arg{token list}
+\cs{strLog} \Arg{token list}
\end{syntax}
Writes \meta{token list} in the log file.
\begin{codehigh}
-\StrLog {1234\abcd5678}
+\strLog {1234\abcd5678}
\end{codehigh}
\end{function}
-\begin{function}{\StrVarLog}
+\begin{function}{\strVarLog}
\begin{syntax}
-\cs{StrVarLog} \meta{str var}
+\cs{strVarLog} \meta{str var}
\end{syntax}
Writes the content of the \meta{str var} in the log file.
\begin{codehigh}
-\StrSet \lTmpiStr {1234\abcd5678}
-\StrVarLog \lTmpiStr
+\strSet \lTmpiStr {1234\abcd5678}
+\strVarLog \lTmpiStr
\end{codehigh}
\end{function}
-\begin{function}{\StrShow}
+\begin{function}{\strShow}
\begin{syntax}
-\cs{StrShow} \Arg{token list}
+\cs{strShow} \Arg{token list}
\end{syntax}
Displays \meta{token list} on the terminal.
\begin{codehigh}
-\StrShow {1234\abcd5678}
+\strShow {1234\abcd5678}
\end{codehigh}
\end{function}
-\begin{function}{\StrVarShow}
+\begin{function}{\strVarShow}
\begin{syntax}
-\cs{StrVarShow} \meta{str var}
+\cs{strVarShow} \meta{str var}
\end{syntax}
Displays the content of the \meta{str var} on the terminal.
\begin{codehigh}
-\StrSet \lTmpiStr {1234\abcd5678}
-\StrVarShow \lTmpiStr
+\strSet \lTmpiStr {1234\abcd5678}
+\strVarShow \lTmpiStr
\end{codehigh}
\end{function}
\section{Setting String Variables}
-\begin{function}{\StrSet}
+\begin{function}{\strSet}
\begin{syntax}
-\cs{StrSet} \meta{str var} \Arg{token list}
+\cs{strSet} \meta{str var} \Arg{token list}
\end{syntax}
Converts the \meta{token list} to a \meta{string}, and stores the
result in \meta{str var}.
\begin{demohigh}
-\StrSet \lTmpiStr {\IntMathMult{4}{5}}
-\StrUse \lTmpiStr
+\strSet \lTmpiStr {\intMathMult{4}{5}}
+\strUse \lTmpiStr
\end{demohigh}
\end{function}
-\begin{function}{\StrSetEq}
+\begin{function}{\strSetEq}
\begin{syntax}
-\cs{StrSetEq} \meta{str var_1} \meta{str var_2}
+\cs{strSetEq} \meta{str var_1} \meta{str var_2}
\end{syntax}
Sets the content of \meta{str var_1} equal to that of \meta{str var_2}.
\begin{demohigh}
-\StrSet \lTmpaStr {abc}
-\StrSetEq \lTmpbStr \lTmpaStr
-\StrUse \lTmpbStr
+\strSet \lTmpaStr {abc}
+\strSetEq \lTmpbStr \lTmpaStr
+\strUse \lTmpbStr
\end{demohigh}
\end{function}
-\begin{function}{\StrClear}
+\begin{function}{\strClear}
\begin{syntax}
-\cs{StrClear} \meta{str var}
+\cs{strClear} \meta{str var}
\end{syntax}
Clears the content of the \meta{str var}. For example
\begin{demohigh}
-\StrSet \lTmpjStr {One}
-\StrClear \lTmpjStr
-\StrSet \lTmpjStr {Two}
-\StrUse \lTmpjStr
+\strSet \lTmpjStr {One}
+\strClear \lTmpjStr
+\strSet \lTmpjStr {Two}
+\strUse \lTmpjStr
\end{demohigh}
\end{function}
-\begin{function}{\StrClearNew}
+\begin{function}{\strClearNew}
\begin{syntax}
-\cs{StrClearNew} \meta{str var}
+\cs{strClearNew} \meta{str var}
\end{syntax}
Ensures that the \meta{str var} exists globally by applying
-\cs{StrNew} if necessary, then applies \cs{StrClear} to leave
+\cs{strNew} if necessary, then applies \cs{strClear} to leave
the \meta{str var} empty.
\begin{codehigh}
-\StrClearNew \lFooSomeStr
-\StrUse \lFooSomeStr
+\strClearNew \lFooSomeStr
+\strUse \lFooSomeStr
\end{codehigh}
\end{function}
-\begin{function}{\StrConcat}
+\begin{function}{\strConcat}
\begin{syntax}
-\cs{StrConcat} \meta{str var_1} \meta{str var_2} \meta{str var_3}
+\cs{strConcat} \meta{str var_1} \meta{str var_2} \meta{str var_3}
\end{syntax}
Concatenates the content of \meta{str var_2} and \meta{str var_3}
together and saves the result in \meta{str var_1}. The \meta{str var_2}
@@ -2396,60 +2396,60 @@ is placed at the left side of the new string variable.
The \meta{str var_2} and \meta{str var_3} must indeed be strings, as
this function does not convert their contents to a string.
\begin{demohigh}
-\StrSet \lTmpbStr {con}
-\StrSet \lTmpcStr {cat}
-\StrConcat \lTmpaStr \lTmpbStr \lTmpcStr
-\StrUse \lTmpaStr
+\strSet \lTmpbStr {con}
+\strSet \lTmpcStr {cat}
+\strConcat \lTmpaStr \lTmpbStr \lTmpcStr
+\strUse \lTmpaStr
\end{demohigh}
\end{function}
-\begin{function}{\StrPutLeft}
+\begin{function}{\strPutLeft}
\begin{syntax}
-\cs{StrPutLeft} \meta{str var} \Arg{token list}
+\cs{strPutLeft} \meta{str var} \Arg{token list}
\end{syntax}
Converts the \meta{token list} to a \meta{string}, and prepends the
result to \meta{str var}. The current contents of the \meta{str
var} are not automatically converted to a string.
\begin{demohigh}
-\StrSet \lTmpkStr {Functional}
-\StrPutLeft \lTmpkStr {Hello}
-\StrUse \lTmpkStr
+\strSet \lTmpkStr {Functional}
+\strPutLeft \lTmpkStr {Hello}
+\strUse \lTmpkStr
\end{demohigh}
\end{function}
-\begin{function}{\StrPutRight}
+\begin{function}{\strPutRight}
\begin{syntax}
-\cs{StrPutRight} \meta{str var} \Arg{token list}
+\cs{strPutRight} \meta{str var} \Arg{token list}
\end{syntax}
Converts the \meta{token list} to a \meta{string}, and appends the
result to \meta{str var}. The current contents of the \meta{str
var} are not automatically converted to a string.
\begin{demohigh}
-\StrSet \lTmpkStr {Functional}
-\StrPutRight \lTmpkStr {World}
-\StrUse \lTmpkStr
+\strSet \lTmpkStr {Functional}
+\strPutRight \lTmpkStr {World}
+\strUse \lTmpkStr
\end{demohigh}
\end{function}
\section{Modifying String Variables}
-\begin{function}{\StrVarReplaceOnce}
+\begin{function}{\strVarReplaceOnce}
\begin{syntax}
-\cs{StrVarReplaceOnce} \meta{str var} \Arg{old} \Arg{new}
+\cs{strVarReplaceOnce} \meta{str var} \Arg{old} \Arg{new}
\end{syntax}
Converts the \meta{old} and \meta{new} token lists to strings, then
replaces the first (leftmost) occurrence of \meta{old string} in the
\meta{str var} with \meta{new string}.
\begin{demohigh}
-\StrSet \lTmpaStr {a{bc}bcd}
-\StrVarReplaceOnce \lTmpaStr {bc} {xx}
-\StrUse \lTmpaStr
+\strSet \lTmpaStr {a{bc}bcd}
+\strVarReplaceOnce \lTmpaStr {bc} {xx}
+\strUse \lTmpaStr
\end{demohigh}
\end{function}
-\begin{function}{\StrVarReplaceAll}
+\begin{function}{\strVarReplaceAll}
\begin{syntax}
-\cs{StrVarReplaceAll} \meta{str var} \Arg{old} \Arg{new}
+\cs{strVarReplaceAll} \meta{str var} \Arg{old} \Arg{new}
\end{syntax}
Converts the \meta{old} and \meta{new} token lists to strings, then
replaces all occurrences of \meta{old string} in the
@@ -2458,70 +2458,70 @@ As this function
operates from left to right, the pattern \meta{old string}
may remain after the replacement.
\begin{demohigh}
-\StrSet \lTmpaStr {a{bc}bcd}
-\StrVarReplaceAll \lTmpaStr {bc} {xx}
-\StrUse \lTmpaStr
+\strSet \lTmpaStr {a{bc}bcd}
+\strVarReplaceAll \lTmpaStr {bc} {xx}
+\strUse \lTmpaStr
\end{demohigh}
\end{function}
-\begin{function}{\StrVarRemoveOnce}
+\begin{function}{\strVarRemoveOnce}
\begin{syntax}
-\cs{StrVarRemoveOnce} \meta{str var} \Arg{token list}
+\cs{strVarRemoveOnce} \meta{str var} \Arg{token list}
\end{syntax}
Converts the \meta{token list} to a \meta{string} then
removes the first (leftmost) occurrence of \meta{string} from the \meta{str var}.
\begin{demohigh}
-\StrSet \lTmpaStr {a{bc}bcd}
-\StrVarRemoveOnce \lTmpaStr {bc}
-\StrUse \lTmpaStr
+\strSet \lTmpaStr {a{bc}bcd}
+\strVarRemoveOnce \lTmpaStr {bc}
+\strUse \lTmpaStr
\end{demohigh}
\end{function}
-\begin{function}{\StrVarRemoveAll}
+\begin{function}{\strVarRemoveAll}
\begin{syntax}
-\cs{StrVarRemoveAll} \meta{str var} \Arg{token list}
+\cs{strVarRemoveAll} \meta{str var} \Arg{token list}
\end{syntax}
Converts the \meta{token list} to a \meta{string} then
removes all occurrences of \meta{string} from the \meta{str var}.
As this function operates from left to right,
the pattern \meta{string} may remain after the removal, for instance,
\begin{demohigh}
-\StrSet \lTmpaStr {abbccd}
-\StrVarRemoveAll \lTmpaStr {bc}
-\TlUse \lTmpaStr
+\strSet \lTmpaStr {abbccd}
+\strVarRemoveAll \lTmpaStr {bc}
+\tlUse \lTmpaStr
\end{demohigh}
\end{function}
\section{Working with the Content of Strings}
-\begin{function}{\StrCount}
+\begin{function}{\strCount}
\begin{syntax}
-\cs{StrCount} \Arg{token list}
+\cs{strCount} \Arg{token list}
\end{syntax}
Returns the number of characters in the string representation of \meta{token list},
as an integer denotation. All characters including spaces are counted.
\begin{demohigh}
-\StrCount {12\abc34}
+\strCount {12\abc34}
\end{demohigh}
-Due to naming conflict, you need to use \cs{StrSize} instead of \cs{StrCount}
+Due to naming conflict, you need to use \cs{strSize} instead of \cs{strCount}
if you want to use \verb!functional! package together with \verb!xstring! package.
\end{function}
\begin{function}{\StVarCount}
\begin{syntax}
-\cs{StrVarCount} \meta{tl var}
+\cs{strVarCount} \meta{tl var}
\end{syntax}
Returns the number of characters in the string representation of the \meta{tl var},
as an integer denotation. All characters including spaces are counted.
\begin{demohigh}
-\StrSet \lTmpaStr {12\abc34}
-\StrVarCount \lTmpaStr
+\strSet \lTmpaStr {12\abc34}
+\strVarCount \lTmpaStr
\end{demohigh}
\end{function}
-\begin{function}{\StrHead}
+\begin{function}{\strHead}
\begin{syntax}
-\cs{StrHead} \Arg{token list}
+\cs{strHead} \Arg{token list}
\end{syntax}
Converts the \meta{token list} into a \meta{string}.
The first character in the \meta{string} is then returned,
@@ -2529,13 +2529,13 @@ with category code \enquote{other}. If the first character is a space,
it returns a space token with category code $10$ (blank space).
If the \meta{string} is empty, then nothing is returned.
\begin{demohigh}
-\StrHead {HELLO}
+\strHead {HELLO}
\end{demohigh}
\end{function}
-\begin{function}{\StrVarHead}
+\begin{function}{\strVarHead}
\begin{syntax}
-\cs{StrVarHead} \meta{tl var}
+\cs{strVarHead} \meta{tl var}
\end{syntax}
Converts the \meta{tl var} into a \meta{string}.
The first character in the \meta{string} is then returned,
@@ -2543,14 +2543,14 @@ with category code \enquote{other}. If the first character is a space,
it returns a space token with category code $10$ (blank space).
If the \meta{string} is empty, then nothing is returned.
\begin{demohigh}
-\StrSet \lTmpaStr {HELLO}
-\StrVarHead \lTmpaStr
+\strSet \lTmpaStr {HELLO}
+\strVarHead \lTmpaStr
\end{demohigh}
\end{function}
-\begin{function}{\StrTail}
+\begin{function}{\strTail}
\begin{syntax}
-\cs{StrTail} \Arg{token list}
+\cs{strTail} \Arg{token list}
\end{syntax}
Converts the \meta{token list} to a \meta{string}, removes the first
character, and returns the remaining characters (if any)
@@ -2559,13 +2559,13 @@ If the first character is a space, it only trims that space.
If the \meta{token list} is empty,
then nothing is left on the input stream.
\begin{demohigh}
-\StrTail {HELLO}
+\strTail {HELLO}
\end{demohigh}
\end{function}
-\begin{function}{\StrVarTail}
+\begin{function}{\strVarTail}
\begin{syntax}
-\cs{StrVarTail} \meta{tl var}
+\cs{strVarTail} \meta{tl var}
\end{syntax}
Converts the \meta{tl var} to a \meta{string}, removes the first
character, and returns the remaining characters (if any)
@@ -2574,14 +2574,14 @@ If the first character is a space, it only trims that space.
If the \meta{token list} is empty,
then nothing is left on the input stream.
\begin{demohigh}
-\StrSet \lTmpaStr {HELLO}
-\StrVarTail \lTmpaStr
+\strSet \lTmpaStr {HELLO}
+\strVarTail \lTmpaStr
\end{demohigh}
\end{function}
-\begin{function}{\StrItem}
+\begin{function}{\strItem}
\begin{syntax}
-\cs{StrItem} \Arg{token list} \Arg{integer expression}
+\cs{strItem} \Arg{token list} \Arg{integer expression}
\end{syntax}
Converts the \meta{token list} to a \meta{string},
and returns the character in position \meta{integer expression} of
@@ -2591,13 +2591,13 @@ If the \meta{integer expression} is negative,
characters are counted from the end of the \meta{string}. Hence,
$-1$ is the right-most character, \emph{etc.}
\begin{demohigh}
-\StrItem {abcd} {3}
+\strItem {abcd} {3}
\end{demohigh}
\end{function}
-\begin{function}{\StrVarItem}
+\begin{function}{\strVarItem}
\begin{syntax}
-\cs{StrVarItem} \meta{tl var} \Arg{integer expression}
+\cs{strVarItem} \meta{tl var} \Arg{integer expression}
\end{syntax}
Converts the \meta{tl var} to a \meta{string},
and returns the character in position \meta{integer expression} of
@@ -2607,8 +2607,8 @@ If the \meta{integer expression} is negative,
characters are counted from the end of the \meta{string}. Hence,
$-1$ is the right-most character, \emph{etc.}
\begin{demohigh}
-\StrSet \lTmpaStr {abcd}
-\StrVarItem \lTmpaStr {3}
+\strSet \lTmpaStr {abcd}
+\strVarItem \lTmpaStr {3}
\end{demohigh}
\end{function}
@@ -2618,20 +2618,20 @@ All mappings are done at the current group level, \emph{i.e.} any
local assignments made by the \meta{function} or \meta{code} discussed
below remain in effect after the loop.
-%\begin{function}{\StrMapFunction,\StrVarMapFunction}
+%\begin{function}{\strMapFunction,\strVarMapFunction}
%\begin{syntax}
-%\cs{StrMapFunction} \Arg{token list} \meta{function}
-%\cs{StrVarMapFunction} \meta{str var} \meta{function}
+%\cs{strMapFunction} \Arg{token list} \meta{function}
+%\cs{strVarMapFunction} \meta{str var} \meta{function}
%\end{syntax}
%Converts the \meta{token list} to a \meta{string} then
%applies \meta{function} to every \meta{character} in the
%\meta{string} including spaces.
%\end{function}
-\begin{function}{\StrMapInline,\StrVarMapInline}
+\begin{function}{\strMapInline,\strVarMapInline}
\begin{syntax}
-\cs{StrMapInline} \Arg{token list} \Arg{inline function}
-\cs{StrVarMapInline} \meta{str var} \Arg{inline function}
+\cs{strMapInline} \Arg{token list} \Arg{inline function}
+\cs{strVarMapInline} \meta{str var} \Arg{inline function}
\end{syntax}
Converts the \meta{token list} to a \meta{string} then
applies the \meta{inline function} to every \meta{character} in the
@@ -2640,31 +2640,31 @@ The \meta{inline function} should consist of code which
receives the \meta{character} as \verb|#1|.
\begin{demohigh}
\IgnoreSpacesOn
-\StrClear \lTmpaStr
-\StrMapInline {one} {
- \StrPutRight \lTmpaStr {[#1]}
+\strClear \lTmpaStr
+\strMapInline {one} {
+ \strPutRight \lTmpaStr {[#1]}
}
-\StrUse \lTmpaStr
+\strUse \lTmpaStr
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-%\begin{function}{\StrMapTokens, \StrVarMapTokens}
+%\begin{function}{\strMapTokens, \strVarMapTokens}
%\begin{syntax}
-%\cs{StrMapTokens} \Arg{token list} \Arg{code}
-%\cs{StrVarMapTokens} \meta{str var} \Arg{code}
+%\cs{strMapTokens} \Arg{token list} \Arg{code}
+%\cs{strVarMapTokens} \meta{str var} \Arg{code}
%\end{syntax}
%Converts the \meta{token list} to a \meta{string} then applies
%\meta{code} to every \meta{character} in the \meta{string} including spaces.
%The \meta{code} receives each character as a trailing brace group.
-%This is equivalent to \cs{StrMapFunction} if the
+%This is equivalent to \cs{strMapFunction} if the
%\meta{code} consists of a single function.
%\end{function}
-\begin{function}{\StrMapVariable,\StrMapVariable}
+\begin{function}{\strMapVariable,\strMapVariable}
\begin{syntax}
-\cs{StrMapVariable} \Arg{token list} \meta{variable} \Arg{code}
-\cs{StrVarMapVariable} \meta{str var} \meta{variable} \Arg{code}
+\cs{strMapVariable} \Arg{token list} \meta{variable} \Arg{code}
+\cs{strVarMapVariable} \meta{str var} \meta{variable} \Arg{code}
\end{syntax}
Converts the \meta{token list} to a \meta{string} then stores each
\meta{character} in the \meta{string} (including spaces) in turn in
@@ -2676,18 +2676,18 @@ the (string or token list) \meta{variable} and applies the
\meta{string} is empty.
\begin{demohigh}
\IgnoreSpacesOn
-\StrClear \lTmpaStr
-\StrMapVariable {one} \lTmpiStr {
- \StrPutRight \lTmpaStr {\Expand {[\lTmpiStr]}}
+\strClear \lTmpaStr
+\strMapVariable {one} \lTmpiStr {
+ \strPutRight \lTmpaStr {\expWhole {[\lTmpiStr]}}
}
-\StrUse \lTmpaStr
+\strUse \lTmpaStr
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-%\begin{function}{\StrMapBreak}
+%\begin{function}{\strMapBreak}
%\begin{syntax}
-%\cs{StrMapBreak}
+%\cs{strMapBreak}
%\end{syntax}
%Used to terminate a string map function before all
%characters in the \meta{string} have been processed. This
@@ -2699,7 +2699,7 @@ the (string or token list) \meta{variable} and applies the
%Do something useful
%}
%\end{verbatim}
-%See also \cs{StrMapBreakDo}.
+%See also \cs{strMapBreakDo}.
%Use outside of a string map scenario leads to low
%level \TeX{} errors.
%\begin{texnote}
@@ -2710,9 +2710,9 @@ the (string or token list) \meta{variable} and applies the
%\end{texnote}
%\end{function}
%
-%\begin{function}{\StrMapBreakDo}
+%\begin{function}{\strMapBreakDo}
%\begin{syntax}
-%\cs{StrMapBreakDo} \Arg{code}
+%\cs{strMapBreakDo} \Arg{code}
%\end{syntax}
%Used to terminate a string map function before all
%characters in the \meta{string} have been processed, inserting
@@ -2738,44 +2738,44 @@ the (string or token list) \meta{variable} and applies the
\section{String Conditionals}
-\begin{function}{\StrIfExist,\StrIfExistT,\StrIfExistF,\StrIfExistTF}
+\begin{function}{\strIfExist,\strIfExistT,\strIfExistF,\strIfExistTF}
\begin{syntax}
-\cs{StrIfExist} \meta{str var}
-\cs{StrIfExistT} \meta{str var} \Arg{true code}
-\cs{StrIfExistF} \meta{str var} \Arg{false code}
-\cs{StrIfExistTF} \meta{str var} \Arg{true code} \Arg{false code}
+\cs{strIfExist} \meta{str var}
+\cs{strIfExistT} \meta{str var} \Arg{true code}
+\cs{strIfExistF} \meta{str var} \Arg{false code}
+\cs{strIfExistTF} \meta{str var} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{str var} is currently defined. This does not
check that the \meta{str var} really is a string.
\begin{demohigh}
-\StrIfExistTF \lTmpaStr {\Return{Yes}} {\Return{No}}
-\StrIfExistTF \lFooUndefinedStr {\Return{Yes}} {\Return{No}}
+\strIfExistTF \lTmpaStr {\prgReturn{Yes}} {\prgReturn{No}}
+\strIfExistTF \lFooUndefinedStr {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\StrVarIfEmpty,\StrVarIfEmptyT,\StrVarIfEmptyF,\StrVarIfEmptyTF}
+\begin{function}{\strVarIfEmpty,\strVarIfEmptyT,\strVarIfEmptyF,\strVarIfEmptyTF}
\begin{syntax}
-\cs{StrVarIfEmpty} \meta{str var}
-\cs{StrVarIfEmptyT} \meta{str var} \Arg{true code}
-\cs{StrVarIfEmptyF} \meta{str var} \Arg{false code}
-\cs{StrVarIfEmptyTF} \meta{str var} \Arg{true code} \Arg{false code}
+\cs{strVarIfEmpty} \meta{str var}
+\cs{strVarIfEmptyT} \meta{str var} \Arg{true code}
+\cs{strVarIfEmptyF} \meta{str var} \Arg{false code}
+\cs{strVarIfEmptyTF} \meta{str var} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{string variable} is entirely empty
(\emph{i.e.} contains no characters at all).
\begin{demohigh}
-\StrSet \lTmpaStr {abc}
-\StrVarIfEmptyTF \lTmpaStr {\Return{Empty}} {\Return{NonEmpty}}
-\StrClear \lTmpaStr
-\StrVarIfEmptyTF \lTmpaStr {\Return{Empty}} {\Return{NonEmpty}}
+\strSet \lTmpaStr {abc}
+\strVarIfEmptyTF \lTmpaStr {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
+\strClear \lTmpaStr
+\strVarIfEmptyTF \lTmpaStr {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
\end{demohigh}
\end{function}
-\begin{function}{\StrIfEq,\StrIfEqT,\StrIfEqF,\StrIfEqTF}
+\begin{function}{\strIfEq,\strIfEqT,\strIfEqF,\strIfEqTF}
\begin{syntax}
-\cs{StrIfEq} \Arg{tl_1} \Arg{tl_2}
-\cs{StrIfEqT} \Arg{tl_1} \Arg{tl_2} \Arg{true code}
-\cs{StrIfEqF} \Arg{tl_1} \Arg{tl_2} \Arg{false code}
-\cs{StrIfEqTF} \Arg{tl_1} \Arg{tl_2} \Arg{true code} \Arg{false code}
+\cs{strIfEq} \Arg{tl_1} \Arg{tl_2}
+\cs{strIfEqT} \Arg{tl_1} \Arg{tl_2} \Arg{true code}
+\cs{strIfEqF} \Arg{tl_1} \Arg{tl_2} \Arg{false code}
+\cs{strIfEqTF} \Arg{tl_1} \Arg{tl_2} \Arg{true code} \Arg{false code}
\end{syntax}
Compares the two \meta{token lists} on a character by character
basis (namely after converting them to strings),
@@ -2783,84 +2783,84 @@ and is \texttt{true} if the two \meta{strings} contain the same
characters in the same order.
%Thus for example
%\begin{codehigh}
-%\StrIfEq{abc}{\TlToStr{abc}}
+%\strIfEq{abc}{\tlToStr{abc}}
%\end{codehigh}
%is logically \texttt{true}.
-See \cs{TlIfEq} to compare
+See \cs{tlIfEq} to compare
tokens (including their category codes) rather than characters.
For example
\begin{demohigh}
-\StrIfEqTF {abc} {abc} {\Return{Yes}} {\Return{No}}
-\StrIfEqTF {abc} {xyz} {\Return{Yes}} {\Return{No}}
+\strIfEqTF {abc} {abc} {\prgReturn{Yes}} {\prgReturn{No}}
+\strIfEqTF {abc} {xyz} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
%\begin{demohigh}
-%\StrSet\lTmpaStr{abc}
-%\StrSet\lTmpbStr{abc}
-%\StrSet\lTmpcStr{xyz}
-%\StrIfEqTF{\lTmpaStr}{\lTmpbStr}{\Return{Yes}}{\Return{No}}
-%\StrIfEqTF{\lTmpaStr}{\lTmpcStr}{\Return{Yes}}{\Return{No}}
-%\StrIfEqTF{\StrUse\lTmpaStr}{\StrUse\lTmpbStr}{\Return{Yes}}{\Return{No}}
-%\StrIfEqTF{\StrUse\lTmpaStr}{\StrUse\lTmpcStr}{\Return{Yes}}{\Return{No}}
+%\strSet\lTmpaStr{abc}
+%\strSet\lTmpbStr{abc}
+%\strSet\lTmpcStr{xyz}
+%\strIfEqTF{\lTmpaStr}{\lTmpbStr}{\prgReturn{Yes}}{\prgReturn{No}}
+%\strIfEqTF{\lTmpaStr}{\lTmpcStr}{\prgReturn{Yes}}{\prgReturn{No}}
+%\strIfEqTF{\strUse\lTmpaStr}{\strUse\lTmpbStr}{\prgReturn{Yes}}{\prgReturn{No}}
+%\strIfEqTF{\strUse\lTmpaStr}{\strUse\lTmpcStr}{\prgReturn{Yes}}{\prgReturn{No}}
%\end{demohigh}
\end{function}
-\begin{function}{\StrVarIfEq,\StrVarIfEqT,\StrVarIfEqF,\StrVarIfEqTF}
+\begin{function}{\strVarIfEq,\strVarIfEqT,\strVarIfEqF,\strVarIfEqTF}
\begin{syntax}
-\cs{StrVarIfEq} \meta{str var_1} \meta{str var_2}
-\cs{StrVarIfEqT} \meta{str var_1} \meta{str var_2} \Arg{true code}
-\cs{StrVarIfEqF} \meta{str var_1} \meta{str var_2} \Arg{false code}
-\cs{StrVarIfEqTF} \meta{str var_1} \meta{str var_2} \Arg{true code} \Arg{false code}
+\cs{strVarIfEq} \meta{str var_1} \meta{str var_2}
+\cs{strVarIfEqT} \meta{str var_1} \meta{str var_2} \Arg{true code}
+\cs{strVarIfEqF} \meta{str var_1} \meta{str var_2} \Arg{false code}
+\cs{strVarIfEqTF} \meta{str var_1} \meta{str var_2} \Arg{true code} \Arg{false code}
\end{syntax}
Compares the content of two \meta{str variables} and
is logically \texttt{true} if the two contain the same characters
-in the same order. See \cs{TlVarIfEq} to compare tokens
+in the same order. See \cs{tlVarIfEq} to compare tokens
(including their category codes) rather than characters.
\begin{demohigh}
-\StrSet \lTmpaStr {abc}
-\StrSet \lTmpbStr {abc}
-\StrSet \lTmpcStr {xyz}
-\StrVarIfEqTF \lTmpaStr \lTmpbStr {\Return{Yes}} {\Return{No}}
-\StrVarIfEqTF \lTmpaStr \lTmpcStr {\Return{Yes}} {\Return{No}}
+\strSet \lTmpaStr {abc}
+\strSet \lTmpbStr {abc}
+\strSet \lTmpcStr {xyz}
+\strVarIfEqTF \lTmpaStr \lTmpbStr {\prgReturn{Yes}} {\prgReturn{No}}
+\strVarIfEqTF \lTmpaStr \lTmpcStr {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\StrIfIn,\StrIfInT,\StrIfInF,\StrIfInTF}
+\begin{function}{\strIfIn,\strIfInT,\strIfInF,\strIfInTF}
\begin{syntax}
-\cs{StrIfIn} \Arg{tl_1} \Arg{tl_2}
-\cs{StrIfInT} \Arg{tl_1} \Arg{tl_2} \Arg{true code}
-\cs{StrIfInF} \Arg{tl_1} \Arg{tl_2} \Arg{false code}
-\cs{StrIfInTF} \Arg{tl_1} \Arg{tl_2} \Arg{true code} \Arg{false code}
+\cs{strIfIn} \Arg{tl_1} \Arg{tl_2}
+\cs{strIfInT} \Arg{tl_1} \Arg{tl_2} \Arg{true code}
+\cs{strIfInF} \Arg{tl_1} \Arg{tl_2} \Arg{false code}
+\cs{strIfInTF} \Arg{tl_1} \Arg{tl_2} \Arg{true code} \Arg{false code}
\end{syntax}
Converts both \meta{token lists} to \meta{strings} and
tests whether \meta{string_2} is found inside \meta{string_1}.
\begin{demohigh}
-\StrIfInTF {hello world} {o} {\Return{Yes}}{\Return{No}}
-\StrIfInTF {hello world} {a} {\Return{Yes}}{\Return{No}}
+\strIfInTF {hello world} {o} {\prgReturn{Yes}}{\prgReturn{No}}
+\strIfInTF {hello world} {a} {\prgReturn{Yes}}{\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\StrVarIfIn,\StrVarIfInT,\StrVarIfInF,\StrVarIfInTF}
+\begin{function}{\strVarIfIn,\strVarIfInT,\strVarIfInF,\strVarIfInTF}
\begin{syntax}
-\cs{StrVarIfIn} \meta{str var} \Arg{token list}
-\cs{StrVarIfInT} \meta{str var} \Arg{token list} \Arg{true code}
-\cs{StrVarIfInF} \meta{str var} \Arg{token list} \Arg{false code}
-\cs{StrVarIfInTF} \meta{str var} \Arg{token list} \Arg{true code} \Arg{false code}
+\cs{strVarIfIn} \meta{str var} \Arg{token list}
+\cs{strVarIfInT} \meta{str var} \Arg{token list} \Arg{true code}
+\cs{strVarIfInF} \meta{str var} \Arg{token list} \Arg{false code}
+\cs{strVarIfInTF} \meta{str var} \Arg{token list} \Arg{true code} \Arg{false code}
\end{syntax}
Converts the \meta{token list} to a \meta{string} and
tests if that \meta{string} is found in the content of the \meta{str var}.
\begin{demohigh}
-\StrSet \lTmpaStr {hello world}
-\StrVarIfInTF \lTmpaStr {o} {\Return{Yes}}{\Return{No}}
-\StrVarIfInTF \lTmpaStr {a} {\Return{Yes}}{\Return{No}}
+\strSet \lTmpaStr {hello world}
+\strVarIfInTF \lTmpaStr {o} {\prgReturn{Yes}}{\prgReturn{No}}
+\strVarIfInTF \lTmpaStr {a} {\prgReturn{Yes}}{\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\StrCompare,\StrCompareT,\StrCompareF,\StrCompareTF}
+\begin{function}{\strCompare,\strCompareT,\strCompareF,\strCompareTF}
\begin{syntax}
-\cs{StrCompare} \Arg{tl_1} \meta{relation} \Arg{tl_2}
-\cs{StrCompareT} \Arg{tl_1} \meta{relation} \Arg{tl_2} \Arg{true code}
-\cs{StrCompareF} \Arg{tl_1} \meta{relation} \Arg{tl_2} \Arg{false code}
-\cs{StrCompareTF} \Arg{tl_1} \meta{relation} \Arg{tl_2} \Arg{true code} \Arg{false code}
+\cs{strCompare} \Arg{tl_1} \meta{relation} \Arg{tl_2}
+\cs{strCompareT} \Arg{tl_1} \meta{relation} \Arg{tl_2} \Arg{true code}
+\cs{strCompareF} \Arg{tl_1} \meta{relation} \Arg{tl_2} \Arg{false code}
+\cs{strCompareTF} \Arg{tl_1} \meta{relation} \Arg{tl_2} \Arg{true code} \Arg{false code}
\end{syntax}
Compares the two \meta{token lists} on a character by character
basis (namely after converting them to strings) in a lexicographic
@@ -2874,8 +2874,8 @@ order according to the character codes of the characters. The
\end{itemize}
For example:
\begin{demohigh}
-\StrCompareTF {ab} < {abc} {\Return{Yes}} {\Return{No}}
-\StrCompareTF {ab} < {aa} {\Return{Yes}} {\Return{No}}
+\strCompareTF {ab} < {abc} {\prgReturn{Yes}} {\prgReturn{No}}
+\strCompareTF {ab} < {aa} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
%\begin{texnote}
%This is a wrapper around the \TeX{} primitive
@@ -2885,15 +2885,15 @@ For example:
%clusters, locale, etc.
%\end{texnote}
\par
-Due to naming conflict, you need to use \cs{StrIfCompare}/\cs{StrIfCompareTF} as a replacement
+Due to naming conflict, you need to use \cs{strIfCompare}/\cs{strIfCompareTF} as a replacement
if you want to use \verb!functional! package together with \verb!xstring! package.
\end{function}
\section{String Case Functions}
-\begin{function}{\StrCase}
+\begin{function}{\strCase}
\begin{syntax}
-\cs{StrCase} \Arg{test string}
+\cs{strCase} \Arg{test string}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{string case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{string case_2} \Arg{code case_2}
@@ -2904,22 +2904,22 @@ if you want to use \verb!functional! package together with \verb!xstring! packag
Compares the \meta{test string} in turn with each
of the \meta{string cases} (all token lists are converted to strings).
If the two are equal (as described for
-\cs{StrIfEq}) then the associated \meta{code} is left in the
+\cs{strIfEq}) then the associated \meta{code} is left in the
input stream and other cases are discarded.
\begin{demohigh}
\IgnoreSpacesOn
-\StrCase {bbb} {
- {aaa} {\Return{First}}
- {bbb} {\Return{Second}}
- {ccb} {\Return{Third}}
+\strCase {bbb} {
+ {aaa} {\prgReturn{First}}
+ {bbb} {\prgReturn{Second}}
+ {ccb} {\prgReturn{Third}}
}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\StrCaseT}
+\begin{function}{\strCaseT}
\begin{syntax}
-\cs{StrCaseT} \Arg{test string}
+\cs{strCaseT} \Arg{test string}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{string case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{string case_2} \Arg{code case_2}
@@ -2931,26 +2931,26 @@ input stream and other cases are discarded.
Compares the \meta{test string} in turn with each
of the \meta{string cases} (all token lists are converted to strings).
If the two are equal (as described for
-\cs{StrIfEq}) then the associated \meta{code} is left in the
+\cs{strIfEq}) then the associated \meta{code} is left in the
input stream and other cases are discarded. If any of the
cases are matched, the \meta{true code} is also inserted into the
input stream (after the code for the appropriate case).
\begin{demohigh}
\IgnoreSpacesOn
-\StrCaseT {bbb} {
- {aaa} {\TlSet\lTmpkTl{First}}
- {bbb} {\TlSet\lTmpkTl{Second}}
- {ccb} {\TlSet\lTmpkTl{Third}}
+\strCaseT {bbb} {
+ {aaa} {\tlSet\lTmpkTl{First}}
+ {bbb} {\tlSet\lTmpkTl{Second}}
+ {ccb} {\tlSet\lTmpkTl{Third}}
}{
- \Return{\TlUse\lTmpkTl}
+ \prgReturn{\tlUse\lTmpkTl}
}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\StrCaseF}
+\begin{function}{\strCaseF}
\begin{syntax}
-\cs{StrCaseF} \Arg{test string}
+\cs{strCaseF} \Arg{test string}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{string case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{string case_2} \Arg{code case_2}
@@ -2962,25 +2962,25 @@ input stream (after the code for the appropriate case).
Compares the \meta{test string} in turn with each
of the \meta{string cases} (all token lists are converted to strings).
If the two are equal (as described for
-\cs{StrIfEq}) then the associated \meta{code} is left in the
+\cs{strIfEq}) then the associated \meta{code} is left in the
input stream and other cases are discarded. If none
match then the \meta{false code} is inserted.
\begin{demohigh}
\IgnoreSpacesOn
-\StrCaseF {bbb} {
- {aaa} {\Return{First}}
- {bbb} {\Return{Second}}
- {ccb} {\Return{Third}}
+\strCaseF {bbb} {
+ {aaa} {\prgReturn{First}}
+ {bbb} {\prgReturn{Second}}
+ {ccb} {\prgReturn{Third}}
}{
- \Return{No~Match!}
+ \prgReturn{No~Match!}
}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\StrCaseTF}
+\begin{function}{\strCaseTF}
\begin{syntax}
-\cs{StrCaseTF} \Arg{test string}
+\cs{strCaseTF} \Arg{test string}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{string case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{string case_2} \Arg{code case_2}
@@ -2993,21 +2993,21 @@ match then the \meta{false code} is inserted.
Compares the \meta{test string} in turn with each
of the \meta{string cases} (all token lists are converted to strings).
If the two are equal (as described for
-\cs{StrIfEq}) then the associated \meta{code} is left in the
+\cs{strIfEq}) then the associated \meta{code} is left in the
input stream and other cases are discarded. If any of the
cases are matched, the \meta{true code} is also inserted into the
input stream (after the code for the appropriate case), while if none
match then the \meta{false code} is inserted.
\begin{demohigh}
\IgnoreSpacesOn
-\StrCaseTF {bbb} {
- {aaa} {\TlSet\lTmpkTl{First}}
- {bbb} {\TlSet\lTmpkTl{Second}}
- {ccb} {\TlSet\lTmpkTl{Third}}
+\strCaseTF {bbb} {
+ {aaa} {\tlSet\lTmpkTl{First}}
+ {bbb} {\tlSet\lTmpkTl{Second}}
+ {ccb} {\tlSet\lTmpkTl{Third}}
}{
- \Return{\TlUse\lTmpkTl}
+ \prgReturn{\tlUse\lTmpkTl}
}{
- \Return{No~Match!}
+ \prgReturn{No~Match!}
}
\IgnoreSpacesOff
\end{demohigh}
@@ -3072,19 +3072,19 @@ of an expression or after \texttt{+}, \texttt{-}, \texttt{*},
\texttt{/} or~\texttt{(} leads to an error.
\end{itemize}
Each integer operand can be either an integer variable (with no need
-for \cs{IntUse}) or an integer denotation.
+for \cs{intUse}) or an integer denotation.
For example both of the following give the same result
because \cs{lFooSomeTl} expands to the integer denotation~$5$
while the integer variable \cs{lFooSomeInt} takes the value~$4$.
\begin{demohigh}
-\IntEval {5 + 4 * 3 - (3 + 4 * 5)}
+\intEval {5 + 4 * 3 - (3 + 4 * 5)}
\end{demohigh}
\begin{demohigh}
-\TlNew \lFooSomeTl
-\TlSet \lFooSomeTl {5}
-\IntNew \lFooSomeInt
-\IntSet \lFooSomeInt {4}
-\IntEval {\lFooSomeTl + \lFooSomeInt * 3 - (3 + 4 * 5)}
+\tlNew \lFooSomeTl
+\tlSet \lFooSomeTl {5}
+\intNew \lFooSomeInt
+\intSet \lFooSomeInt {4}
+\intEval {\lFooSomeTl + \lFooSomeInt * 3 - (3 + 4 * 5)}
\end{demohigh}
%\begin{texnote}
@@ -3100,9 +3100,9 @@ while the integer variable \cs{lFooSomeInt} takes the value~$4$.
\section{Using Integer Expressions}
-\begin{function}{\IntEval}
+\begin{function}{\intEval}
\begin{syntax}
-\cs{IntEval} \Arg{integer expression}
+\cs{intEval} \Arg{integer expression}
\end{syntax}
Evaluates the \meta{integer expression} and returns the result:
for positive results an
@@ -3110,49 +3110,49 @@ explicit sequence of decimal digits not starting with~\texttt{0},
for negative results \texttt{-}~followed by such a sequence, and
\texttt{0}~for zero. For example
\begin{demohigh}
-\IntEval {(1+4)*(2-3)/5}
+\intEval {(1+4)*(2-3)/5}
\end{demohigh}
\begin{demohigh}
-\IntEval {\StrCount{12\TeX34} - \TlCount{12\TeX34}}
+\intEval {\strCount{12\TeX34} - \tlCount{12\TeX34}}
\end{demohigh}
\end{function}
-\begin{function}{\IntMathAdd}
+\begin{function}{\intMathAdd}
\begin{syntax}
-\cs{IntMathAdd} \Arg{integer expression_1} \Arg{integer expression_2}
+\cs{intMathAdd} \Arg{integer expression_1} \Arg{integer expression_2}
\end{syntax}
Adds \Arg{integer expression_1} and \Arg{integer expression_2},
and returns the result. For example
\begin{demohigh}
-\IntMathAdd {7} {3}
+\intMathAdd {7} {3}
\end{demohigh}
\end{function}
-\begin{function}{\IntMathSub}
+\begin{function}{\intMathSub}
\begin{syntax}
-\cs{IntMathSub} \Arg{integer expression_1} \Arg{integer expression_2}
+\cs{intMathSub} \Arg{integer expression_1} \Arg{integer expression_2}
\end{syntax}
Subtracts \Arg{integer expression_2} from \Arg{integer expression_1},
and returns the result. For example
\begin{demohigh}
-\IntMathSub {7} {3}
+\intMathSub {7} {3}
\end{demohigh}
\end{function}
-\begin{function}{\IntMathMult}
+\begin{function}{\intMathMult}
\begin{syntax}
-\cs{IntMathMult} \Arg{integer expression_1} \Arg{integer expression_2}
+\cs{intMathMult} \Arg{integer expression_1} \Arg{integer expression_2}
\end{syntax}
Multiplies \Arg{integer expression_1} by \Arg{integer expression_2},
and returns the result. For example
\begin{demohigh}
-\IntMathMult {7} {3}
+\intMathMult {7} {3}
\end{demohigh}
\end{function}
-\begin{function}{\IntMathDiv}
+\begin{function}{\intMathDiv}
\begin{syntax}
-\cs{IntMathDiv} \Arg{integer expression_1} \Arg{integer expression_2}
+\cs{intMathDiv} \Arg{integer expression_1} \Arg{integer expression_2}
\end{syntax}
Evaluates the two \meta{integer expressions} as described earlier,
then divides the first value by the second, and rounds the result
@@ -3161,13 +3161,13 @@ this is identical to using \verb|/| directly in an \meta{integer expression}.
The result is returned as an \meta{integer denotation}.
For example
\begin{demohigh}
-\IntMathDiv {8} {3}
+\intMathDiv {8} {3}
\end{demohigh}
\end{function}
-\begin{function}{\IntMathDivTrancate}
+\begin{function}{\intMathDivTrancate}
\begin{syntax}
-\cs{IntMathDivTrancate} \Arg{integer expression_1} \Arg{integer expression_2}
+\cs{intMathDivTrancate} \Arg{integer expression_1} \Arg{integer expression_2}
\end{syntax}
Evaluates the two \meta{integer expressions} as described earlier,
then divides the first value by the second, and rounds the result towards zero.
@@ -3175,56 +3175,56 @@ Note that division using \verb|/| rounds to the closest integer instead.
The result is returned as an \meta{integer denotation}.
For example
\begin{demohigh}
-\IntMathDivTruncate {8} {3}
+\intMathDivTruncate {8} {3}
\end{demohigh}
\end{function}
-\begin{function}{\IntMathSign}
+\begin{function}{\intMathSign}
\begin{syntax}
-\cs{IntMathSign} \Arg{intexpr}
+\cs{intMathSign} \Arg{intexpr}
\end{syntax}
Evaluates the \meta{integer expression} then leaves $1$ or $0$ or
$-1$ in the input stream according to the sign of the result.
\end{function}
-\begin{function}{\IntMathAbs}
+\begin{function}{\intMathAbs}
\begin{syntax}
-\cs{IntMathAbs} \Arg{integer expression}
+\cs{intMathAbs} \Arg{integer expression}
\end{syntax}
Evaluates the \meta{integer expression} as described for
-\cs{IntEval} and leaves the absolute value of the result in
+\cs{intEval} and leaves the absolute value of the result in
the input stream as an \meta{integer denotation} after two
expansions.
\end{function}
-\begin{function}{\IntMathMax,\IntMathMin}
+\begin{function}{\intMathMax,\intMathMin}
\begin{syntax}
-\cs{IntMathMax} \Arg{intexpr_1} \Arg{intexpr_2}
-\cs{IntMathMin} \Arg{intexpr_1} \Arg{intexpr_2}
+\cs{intMathMax} \Arg{intexpr_1} \Arg{intexpr_2}
+\cs{intMathMin} \Arg{intexpr_1} \Arg{intexpr_2}
\end{syntax}
Evaluates the \meta{integer expressions} as described for
-\cs{IntEval} and leaves either the larger or smaller value
+\cs{intEval} and leaves either the larger or smaller value
in the input stream as an \meta{integer denotation} after two
expansions.
\end{function}
-\begin{function}{\IntMathMod}
+\begin{function}{\intMathMod}
\begin{syntax}
-\cs{IntMathMod} \Arg{intexpr_1} \Arg{intexpr_2}
+\cs{intMathMod} \Arg{intexpr_1} \Arg{intexpr_2}
\end{syntax}
Evaluates the two \meta{integer expressions} as described earlier,
then calculates the integer remainder of dividing the first
expression by the second. This is obtained by subtracting
-\cs{IntMathDivTruncate} \Arg{intexpr_1} \Arg{intexpr_2} times
+\cs{intMathDivTruncate} \Arg{intexpr_1} \Arg{intexpr_2} times
\meta{intexpr_2} from \meta{intexpr_1}. Thus, the result has the
same sign as \meta{intexpr_1} and its absolute value is strictly
less than that of \meta{intexpr_2}. The result is left in the input
stream as an \meta{integer denotation} after two expansions.
\end{function}
-\begin{function}{\IntMathRand}
+\begin{function}{\intMathRand}
\begin{syntax}
-\cs{IntMathRand} \Arg{intexpr_1} \Arg{intexpr_2}
+\cs{intMathRand} \Arg{intexpr_1} \Arg{intexpr_2}
\end{syntax}
Evaluates the two \meta{integer expressions} and produces a
pseudo-random number between the two (with bounds included).
@@ -3233,27 +3233,27 @@ pseudo-random number between the two (with bounds included).
\section{Creating and Using Integers}
-\begin{function}{\IntNew}
+\begin{function}{\intNew}
\begin{syntax}
-\cs{IntNew} \meta{integer}
+\cs{intNew} \meta{integer}
\end{syntax}
Creates a new \meta{integer} or raises an error if the name is
already taken. The declaration is global. The \meta{integer} is
initially equal to $0$.
\end{function}
-\begin{function}{\IntConst}
+\begin{function}{\intConst}
\begin{syntax}
-\cs{IntConst} \meta{integer} \Arg{integer expression}
+\cs{intConst} \meta{integer} \Arg{integer expression}
\end{syntax}
Creates a new constant \meta{integer} or raises an error if the name
is already taken. The value of the \meta{integer} is set
globally to the \meta{integer expression}.
\end{function}
-\begin{function}{\IntUse}
+\begin{function}{\intUse}
\begin{syntax}
-\cs{IntUse} \meta{integer}
+\cs{intUse} \meta{integer}
\end{syntax}
Recovers the content of an \meta{integer} and returns the value.
An error is raised if the variable does not exist or if it is invalid.
@@ -3261,148 +3261,148 @@ An error is raised if the variable does not exist or if it is invalid.
\section{Viewing Integers}
-\begin{function}{\IntLog}
+\begin{function}{\intLog}
\begin{syntax}
-\cs{IntLog} \Arg{integer expression}
+\cs{intLog} \Arg{integer expression}
\end{syntax}
Writes the result of evaluating the \meta{integer expression}
in the log file.
\end{function}
-\begin{function}{\IntVarLog}
+\begin{function}{\intVarLog}
\begin{syntax}
-\cs{IntVarLog} \meta{integer}
+\cs{intVarLog} \meta{integer}
\end{syntax}
Writes the value of the \meta{integer} in the log file.
\end{function}
-\begin{function}{\IntShow}
+\begin{function}{\intShow}
\begin{syntax}
-\cs{IntShow} \Arg{integer expression}
+\cs{intShow} \Arg{integer expression}
\end{syntax}
Displays the result of evaluating the \meta{integer expression}
on the terminal.
\end{function}
-\begin{function}{\IntVarShow}
+\begin{function}{\intVarShow}
\begin{syntax}
-\cs{IntVarShow} \meta{integer}
+\cs{intVarShow} \meta{integer}
\end{syntax}
Displays the value of the \meta{integer} on the terminal.
\end{function}
\section{Setting Integer Variables}
-\begin{function}{\IntSet}
+\begin{function}{\intSet}
\begin{syntax}
-\cs{IntSet} \meta{integer} \Arg{integer expression}
+\cs{intSet} \meta{integer} \Arg{integer expression}
\end{syntax}
Sets \meta{integer} to the value of \meta{integer expression},
-which must evaluate to an integer (as described for \cs{IntEval}).
+which must evaluate to an integer (as described for \cs{intEval}).
For example
\begin{demohigh}
-\IntSet \lTmpaInt {3+5}
-\IntUse \lTmpaInt
+\intSet \lTmpaInt {3+5}
+\intUse \lTmpaInt
\end{demohigh}
\end{function}
-\begin{function}{\IntSetEq}
+\begin{function}{\intSetEq}
\begin{syntax}
-\cs{IntSetEq} \meta{integer_1} \meta{integer_2}
+\cs{intSetEq} \meta{integer_1} \meta{integer_2}
\end{syntax}
Sets the content of \meta{integer_1} equal to that of
\meta{integer_2}.
\end{function}
-\begin{function}{\IntZero}
+\begin{function}{\intZero}
\begin{syntax}
-\cs{IntZero} \meta{integer}
+\cs{intZero} \meta{integer}
\end{syntax}
Sets \meta{integer} to $0$. For example
\begin{demohigh}
-\IntSet \lTmpaInt {5}
-\IntZero \lTmpaInt
-\IntUse \lTmpaInt
+\intSet \lTmpaInt {5}
+\intZero \lTmpaInt
+\intUse \lTmpaInt
\end{demohigh}
\end{function}
-\begin{function}{\IntZeroNew}
+\begin{function}{\intZeroNew}
\begin{syntax}
-\cs{IntZeroNew} \meta{integer}
+\cs{intZeroNew} \meta{integer}
\end{syntax}
Ensures that the \meta{integer} exists globally by applying
-\cs{IntNew} if necessary, then applies \cs{IntZero} to leave
+\cs{intNew} if necessary, then applies \cs{intZero} to leave
the \meta{integer} set to zero.
\end{function}
-\begin{function}{\IntIncr}
+\begin{function}{\intIncr}
\begin{syntax}
-\cs{IntIncr} \meta{integer}
+\cs{intIncr} \meta{integer}
\end{syntax}
Increases the value stored in \meta{integer} by $1$.
For example
\begin{demohigh}
-\IntSet \lTmpaInt {5}
-\IntIncr \lTmpaInt
-\IntUse \lTmpaInt
+\intSet \lTmpaInt {5}
+\intIncr \lTmpaInt
+\intUse \lTmpaInt
\end{demohigh}
\end{function}
-\begin{function}{\IntDecr}
+\begin{function}{\intDecr}
\begin{syntax}
-\cs{IntDecr} \meta{integer}
+\cs{intDecr} \meta{integer}
\end{syntax}
Decreases the value stored in \meta{integer} by $1$.
For example
\begin{demohigh}
-\IntSet \lTmpaInt {5}
-\IntDecr \lTmpaInt
-\IntUse \lTmpaInt
+\intSet \lTmpaInt {5}
+\intDecr \lTmpaInt
+\intUse \lTmpaInt
\end{demohigh}
\end{function}
-\begin{function}{\IntAdd}
+\begin{function}{\intAdd}
\begin{syntax}
-\cs{IntAdd} \meta{integer} \Arg{integer expression}
+\cs{intAdd} \meta{integer} \Arg{integer expression}
\end{syntax}
Adds the result of the \meta{integer expression} to the current
content of the \meta{integer}. For example
\begin{demohigh}
-\IntSet \lTmpaInt {5}
-\IntAdd \lTmpaInt {2}
-\IntUse \lTmpaInt
+\intSet \lTmpaInt {5}
+\intAdd \lTmpaInt {2}
+\intUse \lTmpaInt
\end{demohigh}
\end{function}
-\begin{function}{\IntSub}
+\begin{function}{\intSub}
\begin{syntax}
-\cs{IntSub} \meta{integer} \Arg{integer expression}
+\cs{intSub} \meta{integer} \Arg{integer expression}
\end{syntax}
Subtracts the result of the \meta{integer expression} from the
current content of the \meta{integer}. For example
\begin{demohigh}
-\IntSet \lTmpaInt {5}
-\IntSub \lTmpaInt {3}
-\IntUse \lTmpaInt
+\intSet \lTmpaInt {5}
+\intSub \lTmpaInt {3}
+\intUse \lTmpaInt
\end{demohigh}
\end{function}
\section{Integer Step Functions}
-\begin{function}{\IntReplicate}
+\begin{function}{\intReplicate}
\begin{syntax}
-\cs{IntReplicate} \Arg{integer expression} \Arg{tokens}
+\cs{intReplicate} \Arg{integer expression} \Arg{tokens}
\end{syntax}
Evaluates the \meta{integer expression} (which should be zero or positive)
and returns the resulting number of copies of the \meta{tokens}.
\begin{demohigh}
-\IntReplicate {4} {Hello}
+\intReplicate {4} {Hello}
\end{demohigh}
\end{function}
-%\begin{function}{\IntStepFunction}
+%\begin{function}{\intStepFunction}
%\begin{syntax}
-%\cs{IntStepFunction} \Arg{initial value} \Arg{step} \Arg{final value} \meta{function}
+%\cs{intStepFunction} \Arg{initial value} \Arg{step} \Arg{final value} \meta{function}
%\end{syntax}
%This function first evaluates the \meta{initial value}, \meta{step}
%and \meta{final value}, all of which should be integer expressions.
@@ -3428,9 +3428,9 @@ and returns the resulting number of copies of the \meta{tokens}.
%\end{quote}
%\end{function}
-\begin{function}{\IntStepInline}
+\begin{function}{\intStepInline}
\begin{syntax}
-\cs{IntStepInline} \Arg{initial value} \Arg{step} \Arg{final value} \Arg{code}
+\cs{intStepInline} \Arg{initial value} \Arg{step} \Arg{final value} \Arg{code}
\end{syntax}
This function first evaluates the \meta{initial value}, \meta{step}
and \meta{final value}, all of which should be integer expressions.
@@ -3441,18 +3441,18 @@ with \verb|#1| replaced by the current \meta{value}. Thus the
\meta{code} should define a function of one argument~(\verb|#1|).
\begin{demohigh}
\IgnoreSpacesOn
-\TlClear \lTmpaTl
-\IntStepInline {1} {3} {30} {
- \TlPutRight \lTmpaTl {[#1]}
+\tlClear \lTmpaTl
+\intStepInline {1} {3} {30} {
+ \tlPutRight \lTmpaTl {[#1]}
}
-\TlUse \lTmpaTl
+\tlUse \lTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\IntStepOneInline}
+\begin{function}{\intStepOneInline}
\begin{syntax}
-\cs{IntStepOneInline} \Arg{initial value} \Arg{final value} \Arg{code}
+\cs{intStepOneInline} \Arg{initial value} \Arg{final value} \Arg{code}
\end{syntax}
This function first evaluates the \meta{initial value} and \meta{final value},
all of which should be integer expressions.
@@ -3463,18 +3463,18 @@ with \verb|#1| replaced by the current \meta{value}. Thus the
\meta{code} should define a function of one argument~(\verb|#1|).
\begin{demohigh}
\IgnoreSpacesOn
-\TlClear \lTmpaTl
-\IntStepOneInline {1} {10} {
- \TlPutRight \lTmpaTl {[#1]}
+\tlClear \lTmpaTl
+\intStepOneInline {1} {10} {
+ \tlPutRight \lTmpaTl {[#1]}
}
-\TlUse \lTmpaTl
+\tlUse \lTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\IntStepVariable}
+\begin{function}{\intStepVariable}
\begin{syntax}
-\cs{IntStepVariable} \Arg{initial value} \Arg{step} \Arg{final value} \meta{tl var} \Arg{code}
+\cs{intStepVariable} \Arg{initial value} \Arg{step} \Arg{final value} \meta{tl var} \Arg{code}
\end{syntax}
This function first evaluates the \meta{initial value}, \meta{step}
and \meta{final value}, all of which should be integer expressions.
@@ -3486,19 +3486,19 @@ the \meta{code} should make use of the \meta{tl~var}.
%For example
%\begin{demohigh}
%\IgnoreSpacesOn
-%\TlClear\lTmpaTl
-%\IntStepVariable{1}{3}{30}\lTmpiTl{
-% \TlPutRight\lTmpaTl{\Value\lTmpiTl}
-% \TlPutRight\lTmpaTl{~}
+%\tlClear\lTmpaTl
+%\intStepVariable{1}{3}{30}\lTmpiTl{
+% \tlPutRight\lTmpaTl{\expValue\lTmpiTl}
+% \tlPutRight\lTmpaTl{~}
%}
-%\Return{\Value\lTmpaTl}
+%\prgReturn{\expValue\lTmpaTl}
%\IgnoreSpacesOff
%\end{demohigh}
\end{function}
-\begin{function}{\IntStepOneVariable}
+\begin{function}{\intStepOneVariable}
\begin{syntax}
-\cs{IntStepOneVariable} \Arg{initial value} \Arg{final value} \meta{tl var} \Arg{code}
+\cs{intStepOneVariable} \Arg{initial value} \Arg{final value} \meta{tl var} \Arg{code}
\end{syntax}
This function first evaluates the \meta{initial value} and \meta{final value},
all of which should be integer expressions.
@@ -3511,50 +3511,50 @@ the \meta{code} should make use of the \meta{tl~var}.
\section{Integer Conditionals}
-\begin{function}{\IntIfExist,\IntIfExistT,\IntIfExistF,\IntIfExistTF}
+\begin{function}{\intIfExist,\intIfExistT,\intIfExistF,\intIfExistTF}
\begin{syntax}
-\cs{IntIfExist} \meta{integer}
-\cs{IntIfExistT} \meta{integer} \Arg{true code}
-\cs{IntIfExistF} \meta{integer} \Arg{false code}
-\cs{IntIfExistTF} \meta{integer} \Arg{true code} \Arg{false code}
+\cs{intIfExist} \meta{integer}
+\cs{intIfExistT} \meta{integer} \Arg{true code}
+\cs{intIfExistF} \meta{integer} \Arg{false code}
+\cs{intIfExistTF} \meta{integer} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{integer} is currently defined. This does not
check that the \meta{integer} really is an integer variable.
\end{function}
-\begin{function}{\IntIfOdd,\IntIfOddT,\IntIfOddF,\IntIfOddTF}
+\begin{function}{\intIfOdd,\intIfOddT,\intIfOddF,\intIfOddTF}
\begin{syntax}
-\cs{IntIfOdd} \Arg{integer expression}
-\cs{IntIfOddT} \Arg{integer expression} \Arg{true code}
-\cs{IntIfOddF} \Arg{integer expression} \Arg{false code}
-\cs{IntIfOddTF} \Arg{integer expression} \Arg{true code} \Arg{false code}
+\cs{intIfOdd} \Arg{integer expression}
+\cs{intIfOddT} \Arg{integer expression} \Arg{true code}
+\cs{intIfOddF} \Arg{integer expression} \Arg{false code}
+\cs{intIfOddTF} \Arg{integer expression} \Arg{true code} \Arg{false code}
\end{syntax}
This function first evaluates the \meta{integer expression}
-as described for \cs{IntEval}.
+as described for \cs{intEval}.
It then evaluates if this is odd or even, as appropriate.
\end{function}
-\begin{function}{\IntIfEven,\IntIfEvenT,\IntIfEvenF,\IntIfEvenTF}
+\begin{function}{\intIfEven,\intIfEvenT,\intIfEvenF,\intIfEvenTF}
\begin{syntax}
-\cs{IntIfEven} \Arg{integer expression}
-\cs{IntIfEvenT} \Arg{integer expression} \Arg{true code}
-\cs{IntIfEvenF} \Arg{integer expression} \Arg{false code}
-\cs{IntIfEvenTF} \Arg{integer expression} \Arg{true code} \Arg{false code}
+\cs{intIfEven} \Arg{integer expression}
+\cs{intIfEvenT} \Arg{integer expression} \Arg{true code}
+\cs{intIfEvenF} \Arg{integer expression} \Arg{false code}
+\cs{intIfEvenTF} \Arg{integer expression} \Arg{true code} \Arg{false code}
\end{syntax}
This function first evaluates the \meta{integer expression}
-as described for \cs{IntEval}.
+as described for \cs{intEval}.
It then evaluates if this is even or odd, as appropriate.
\end{function}
-\begin{function}{\IntCompare,\IntCompareT,\IntCompareF,\IntCompareTF}
+\begin{function}{\intCompare,\intCompareT,\intCompareF,\intCompareTF}
\begin{syntax}
-\cs{IntCompare} \Arg{intexpr_1} \meta{relation} \Arg{intexpr_2}
-\cs{IntCompareT} \Arg{intexpr_1} \meta{relation} \Arg{intexpr_2} \Arg{true code}
-\cs{IntCompareF} \Arg{intexpr_1} \meta{relation} \Arg{intexpr_2} \Arg{false code}
-\cs{IntCompareTF} \Arg{intexpr_1} \meta{relation} \Arg{intexpr_2} \Arg{true code} \Arg{false code}
+\cs{intCompare} \Arg{intexpr_1} \meta{relation} \Arg{intexpr_2}
+\cs{intCompareT} \Arg{intexpr_1} \meta{relation} \Arg{intexpr_2} \Arg{true code}
+\cs{intCompareF} \Arg{intexpr_1} \meta{relation} \Arg{intexpr_2} \Arg{false code}
+\cs{intCompareTF} \Arg{intexpr_1} \meta{relation} \Arg{intexpr_2} \Arg{true code} \Arg{false code}
\end{syntax}
This function first evaluates each of the \meta{integer expressions}
-as described for \cs{IntEval}. The two results are then
+as described for \cs{intEval}. The two results are then
compared using the \meta{relation}:\par
{\centering\begin{tabular}{ll}
Equal & \texttt{=} \\
@@ -3563,16 +3563,16 @@ Less than & \texttt{<} \\
\end{tabular}\par}
For example
\begin{demohigh}
-\IntCompareTF {2} > {1} {\Return{Greater}} {\Return{Less}}
-\IntCompareTF {2} > {3} {\Return{Greater}} {\Return{Less}}
+\intCompareTF {2} > {1} {\prgReturn{Greater}} {\prgReturn{Less}}
+\intCompareTF {2} > {3} {\prgReturn{Greater}} {\prgReturn{Less}}
\end{demohigh}
\end{function}
\section{Integer Case Functions}
-\begin{function}{\IntCase}
+\begin{function}{\intCase}
\begin{syntax}
-\cs{IntCase} \Arg{test integer expression}
+\cs{intCase} \Arg{test integer expression}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{intexpr case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{intexpr case_2} \Arg{code case_2}
@@ -3587,9 +3587,9 @@ associated \meta{code} is left in the input stream
and other cases are discarded.
\end{function}
-\begin{function}{\IntCaseT}
+\begin{function}{\intCaseT}
\begin{syntax}
-\cs{IntCaseT} \Arg{test integer expression}
+\cs{intCaseT} \Arg{test integer expression}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{intexpr case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{intexpr case_2} \Arg{code case_2}
@@ -3607,9 +3607,9 @@ cases are matched, the \meta{true code} is also inserted into the
input stream (after the code for the appropriate case).
\end{function}
-\begin{function}{\IntCaseF}
+\begin{function}{\intCaseF}
\begin{syntax}
-\cs{IntCaseF} \Arg{test integer expression}
+\cs{intCaseF} \Arg{test integer expression}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{intexpr case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{intexpr case_2} \Arg{code case_2}
@@ -3628,7 +3628,7 @@ match then the \meta{false code} is into the input stream
For example
\begin{demohigh}
\IgnoreSpacesOn
-\IntCaseF { 2 * 5 }
+\intCaseF { 2 * 5 }
{
{ 5 } { Small }
{ 4 + 6 } { Medium }
@@ -3639,9 +3639,9 @@ For example
\end{demohigh}
\end{function}
-\begin{function}{\IntCaseTF}
+\begin{function}{\intCaseTF}
\begin{syntax}
-\cs{IntCaseTF} \Arg{test integer expression}
+\cs{intCaseTF} \Arg{test integer expression}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{intexpr case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{intexpr case_2} \Arg{code case_2}
@@ -3768,7 +3768,7 @@ towards $+\infty$ if $t>0$ and towards $-\infty$ if $t<0$.
\item Constants: \texttt{pi}, \texttt{deg} (one degree in radians).
\item Dimensions, automatically expressed in points, \emph{e.g.},
\texttt{pc} is $12$.
-\item Automatic conversion (no need for \cs{IntUse}, etc) of
+\item Automatic conversion (no need for \cs{intUse}, etc) of
integer, dimension, and skip variables to floating point numbers,
expressing dimensions in points and ignoring the stretch and
shrink components of skips.
@@ -3789,7 +3789,7 @@ A \enquote{floating point} is a floating point number or a tuple thereof.
An example of use could be the following.
\begin{demohigh}
\LaTeX{} can now compute: $ \frac{\sin(3.5)}{2} + 2\cdot 10^{-3}
-= \FpEval {sin(3.5)/2 + 2e-3} $.
+= \fpEval {sin(3.5)/2 + 2e-3} $.
\end{demohigh}
The operation \texttt{round} can be used to limit the result's
@@ -3816,9 +3816,9 @@ replacing it by \verb|+0|.
\section{Using Floating Point Expressions}
-\begin{function}{\FpEval}
+\begin{function}{\fpEval}
\begin{syntax}
-\cs{FpEval} \Arg{floating point expression}
+\cs{fpEval} \Arg{floating point expression}
\end{syntax}
Evaluates the \meta{floating point expression} and returns the
result as a decimal number with no
@@ -3827,98 +3827,98 @@ for the exponent. Non-significant trailing zeros are trimmed, and
integers are expressed without a decimal separator. The values
$\pm\infty$ and \nan{} trigger an \enquote{invalid operation}
exception.
-For a tuple, each item is converted using \cs{FpEval} and they are combined as
+For a tuple, each item is converted using \cs{fpEval} and they are combined as
\verb|(|\meta{fp_1}\verb*|, |\meta{fp_2}\verb*|, |\ldots{}\meta{fp_n}\verb|)|
if $n>1$ and \verb|(|\meta{fp_1}\verb|,)| or \verb|()| for fewer items.
%This function is identical to \cs{fp_to_decimal:n}.
For example
\begin{demohigh}
-\FpEval {(1.2+3.4)*(5.6-7.8)/9}
+\fpEval {(1.2+3.4)*(5.6-7.8)/9}
\end{demohigh}
\end{function}
-\begin{function}{\FpMathAdd}
+\begin{function}{\fpMathAdd}
\begin{syntax}
-\cs{FpMathAdd} \Arg{fpexpr_1} \Arg{fpexpr_2}
+\cs{fpMathAdd} \Arg{fpexpr_1} \Arg{fpexpr_2}
\end{syntax}
Adds \Arg{fpexpr_1} and \Arg{fpexpr_2},
and returns the result. For example
\begin{demohigh}
-\FpMathAdd {2.8} {3.7}
-\FpMathAdd {3.8-1} {2.7+1}
+\fpMathAdd {2.8} {3.7}
+\fpMathAdd {3.8-1} {2.7+1}
\end{demohigh}
\end{function}
-\begin{function}{\FpMathSub}
+\begin{function}{\fpMathSub}
\begin{syntax}
-\cs{FpMathSub} \Arg{fpexpr_1} \Arg{fpexpr_2}
+\cs{fpMathSub} \Arg{fpexpr_1} \Arg{fpexpr_2}
\end{syntax}
Subtracts \Arg{fpexpr_2} from \Arg{fpexpr_1},
and returns the result. For example
\begin{demohigh}
-\FpMathSub {2.8} {3.7}
-\FpMathSub {3.8-1} {2.7+1}
+\fpMathSub {2.8} {3.7}
+\fpMathSub {3.8-1} {2.7+1}
\end{demohigh}
\end{function}
-\begin{function}{\FpMathMult}
+\begin{function}{\fpMathMult}
\begin{syntax}
-\cs{FpMathMult} \Arg{fpexpr_1} \Arg{fpexpr_2}
+\cs{fpMathMult} \Arg{fpexpr_1} \Arg{fpexpr_2}
\end{syntax}
Multiplies \Arg{fpexpr_1} by \Arg{fpexpr_2},
and returns the result. For example
\begin{demohigh}
-\FpMathMult {2.8} {3.7}
-\FpMathMult {3.8-1} {2.7+1}
+\fpMathMult {2.8} {3.7}
+\fpMathMult {3.8-1} {2.7+1}
\end{demohigh}
\end{function}
-\begin{function}{\FpMathDiv}
+\begin{function}{\fpMathDiv}
\begin{syntax}
-\cs{FpMathDiv} \Arg{fpexpr_1} \Arg{fpexpr_2}
+\cs{fpMathDiv} \Arg{fpexpr_1} \Arg{fpexpr_2}
\end{syntax}
Divides \Arg{fpexpr_1} by \Arg{fpexpr_2},
and returns the result. For example
\begin{demohigh}
-\FpMathDiv {2.8} {3.7}
-\FpMathDiv {3.8-1} {2.7+1}
+\fpMathDiv {2.8} {3.7}
+\fpMathDiv {3.8-1} {2.7+1}
\end{demohigh}
\end{function}
-\begin{function}{\FpMathSign}
+\begin{function}{\fpMathSign}
\begin{syntax}
-\cs{FpMathSign} \Arg{fpexpr}
+\cs{fpMathSign} \Arg{fpexpr}
\end{syntax}
Evaluates the \meta{fpexpr} and returns the value
-using \cs{FpEval}\verb|{sign(|\meta{result}\verb|)}|: $+1$ for positive
+using \cs{fpEval}\verb|{sign(|\meta{result}\verb|)}|: $+1$ for positive
numbers and for $+\infty$, $-1$ for negative numbers and for
$-\infty$, $\pm 0$ for $\pm 0$. If the operand is a tuple or is
\nan{}, then \enquote{invalid operation} occurs and the result
is $0$. For example
\begin{demohigh}
-\FpMathSign {3.5}
-\FpMathSign {-2.7}
+\fpMathSign {3.5}
+\fpMathSign {-2.7}
\end{demohigh}
\end{function}
-\begin{function}{\FpMathAbs}
+\begin{function}{\fpMathAbs}
\begin{syntax}
-\cs{FpMathAbs} \Arg{floating point expression}
+\cs{fpMathAbs} \Arg{floating point expression}
\end{syntax}
Evaluates the \meta{floating point expression} as described for
-\cs{FpEval} and returns the absolute value.
+\cs{fpEval} and returns the absolute value.
If the argument is $\pm\infty$, \nan{} or a tuple,
\enquote{invalid operation} occurs. Within floating point
expressions, \verb|abs()| can be used; it accepts $\pm\infty$ and \nan{}
as arguments.
\end{function}
-\begin{function}{\FpMathMax,\FpMathMin}
+\begin{function}{\fpMathMax,\fpMathMin}
\begin{syntax}
-\cs{FpMathMax} \Arg{fp expression_1} \Arg{fp expression_2}
-\cs{FpMathMin} \Arg{fp expression_1} \Arg{fp expression_2}
+\cs{fpMathMax} \Arg{fp expression_1} \Arg{fp expression_2}
+\cs{fpMathMin} \Arg{fp expression_1} \Arg{fp expression_2}
\end{syntax}
-Evaluates the \meta{floating point expressions} as described for \cs{FpEval}
+Evaluates the \meta{floating point expressions} as described for \cs{fpEval}
and returns the resulting larger (\texttt{max}) or smaller (\texttt{min}) value.
If the argument is a tuple, \enquote{invalid operation} occurs,
but no other case raises exceptions. Within floating point expressions,
@@ -3927,32 +3927,32 @@ but no other case raises exceptions. Within floating point expressions,
\section{Creating and Using Floating Points}
-\begin{function}{\FpNew}
+\begin{function}{\fpNew}
\begin{syntax}
-\cs{FpNew} \meta{fp var}
+\cs{fpNew} \meta{fp var}
\end{syntax}
Creates a new \meta{fp var} or raises an error if the name is
already taken. The declaration is global. The \meta{fp~var} is
initially $+0$.
\end{function}
-\begin{function}{\FpConst}
+\begin{function}{\fpConst}
\begin{syntax}
-\cs{FpConst} \meta{fp var} \Arg{floating point expression}
+\cs{fpConst} \meta{fp var} \Arg{floating point expression}
\end{syntax}
Creates a new constant \meta{fp var} or raises an error if the name
is already taken. The \meta{fp var} is set globally equal to
the result of evaluating the \meta{floating point expression}.
For example
\begin{demohigh}
-\FpConst \cMyPiFp {3.1415926}
-\FpUse \cMyPiFp
+\fpConst \cMyPiFp {3.1415926}
+\fpUse \cMyPiFp
\end{demohigh}
\end{function}
-\begin{function}{\FpUse}
+\begin{function}{\fpUse}
\begin{syntax}
-\cs{FpUse} \meta{fp var}
+\cs{fpUse} \meta{fp var}
\end{syntax}
Recovers the value of the \meta{fp var} and returns the value as a
decimal number with no exponent.
@@ -3968,114 +3968,114 @@ decimal number with no exponent.
\section{Viewing Floating Points}
-\begin{function}{\FpLog}
+\begin{function}{\fpLog}
\begin{syntax}
-\cs{FpLog} \Arg{floating point expression}
+\cs{fpLog} \Arg{floating point expression}
\end{syntax}
Evaluates the \meta{floating point expression} and writes the
result in the log file.
\end{function}
-\begin{function}{\FpVarLog}
+\begin{function}{\fpVarLog}
\begin{syntax}
-\cs{FpVarLog} \meta{fp var}
+\cs{fpVarLog} \meta{fp var}
\end{syntax}
Writes the value of \meta{fp var} in the log file.
\end{function}
-\begin{function}{\FpShow}
+\begin{function}{\fpShow}
\begin{syntax}
-\cs{FpShow} \Arg{floating point expression}
+\cs{fpShow} \Arg{floating point expression}
\end{syntax}
Evaluates the \meta{floating point expression} and displays the
result in the terminal.
\end{function}
-\begin{function}{\FpVarShow}
+\begin{function}{\fpVarShow}
\begin{syntax}
-\cs{FpVarShow} \meta{fp var}
+\cs{fpVarShow} \meta{fp var}
\end{syntax}
Displays the value of \meta{fp var} in the terminal.
\end{function}
\section{Setting Floating Point Variables}
-\begin{function}{\FpSet}
+\begin{function}{\fpSet}
\begin{syntax}
-\cs{FpSet} \meta{fp var} \Arg{floating point expression}
+\cs{fpSet} \meta{fp var} \Arg{floating point expression}
\end{syntax}
Sets \meta{fp var} equal to the result of computing the
\meta{floating point expression}. For example
\begin{demohigh}
-\FpSet \lTmpaFp {4/7}
-\FpUse \lTmpaFp
+\fpSet \lTmpaFp {4/7}
+\fpUse \lTmpaFp
\end{demohigh}
\end{function}
-\begin{function}{\FpSetEq}
+\begin{function}{\fpSetEq}
\begin{syntax}
-\cs{FpSetEq} \meta{fp var_1} \meta{fp var_2}
+\cs{fpSetEq} \meta{fp var_1} \meta{fp var_2}
\end{syntax}
Sets the floating point variable \meta{fp var_1} equal to the current
value of \meta{fp var_2}.
\end{function}
-\begin{function}{\FpZero}
+\begin{function}{\fpZero}
\begin{syntax}
-\cs{FpZero} \meta{fp var}
+\cs{fpZero} \meta{fp var}
\end{syntax}
Sets the \meta{fp var} to $+0$. For example
\begin{demohigh}
-\FpSet \lTmpaFp {5.3}
-\FpZero \lTmpaFp
-\FpUse \lTmpaFp
+\fpSet \lTmpaFp {5.3}
+\fpZero \lTmpaFp
+\fpUse \lTmpaFp
\end{demohigh}
\end{function}
-\begin{function}{\FpZeroNew}
+\begin{function}{\fpZeroNew}
\begin{syntax}
-\cs{FpZeroNew} \meta{fp var}
+\cs{fpZeroNew} \meta{fp var}
\end{syntax}
Ensures that the \meta{fp var} exists globally
-by applying \cs{FpNew} if necessary, then applies
-\cs{FpZero} to leave the \meta{fp var} set to $+0$.
+by applying \cs{fpNew} if necessary, then applies
+\cs{fpZero} to leave the \meta{fp var} set to $+0$.
\end{function}
-\begin{function}{\FpAdd}
+\begin{function}{\fpAdd}
\begin{syntax}
-\cs{FpAdd} \meta{fp var} \Arg{floating point expression}
+\cs{fpAdd} \meta{fp var} \Arg{floating point expression}
\end{syntax}
Adds the result of computing the \meta{floating point expression} to
the \meta{fp var}.
This also applies if \meta{fp var} and \meta{floating point
expression} evaluate to tuples of the same size. For example
\begin{demohigh}
-\FpSet \lTmpaFp {5.3}
-\FpAdd \lTmpaFp {2.11}
-\FpUse \lTmpaFp
+\fpSet \lTmpaFp {5.3}
+\fpAdd \lTmpaFp {2.11}
+\fpUse \lTmpaFp
\end{demohigh}
\end{function}
-\begin{function}{\FpSub}
+\begin{function}{\fpSub}
\begin{syntax}
-\cs{FpSub} \meta{fp var} \Arg{floating point expression}
+\cs{fpSub} \meta{fp var} \Arg{floating point expression}
\end{syntax}
Subtracts the result of computing the \meta{floating point
expression} from the \meta{fp var}.
This also applies if \meta{fp var} and \meta{floating point
expression} evaluate to tuples of the same size. For example
\begin{demohigh}
-\FpSet \lTmpaFp {5.3}
-\FpSub \lTmpaFp {2.11}
-\FpUse \lTmpaFp
+\fpSet \lTmpaFp {5.3}
+\fpSub \lTmpaFp {2.11}
+\fpUse \lTmpaFp
\end{demohigh}
\end{function}
\section{Floating Point Step Functions}
-%\begin{function}{\FpStepFunction}
+%\begin{function}{\fpStepFunction}
%\begin{syntax}
-%\cs{FpStepFunction} \Arg{initial value} \Arg{step} \Arg{final value} \meta{function}
+%\cs{fpStepFunction} \Arg{initial value} \Arg{step} \Arg{final value} \meta{function}
%\end{syntax}
%This function first evaluates the \meta{initial value}, \meta{step}
%and \meta{final value}, each of which should be a floating point
@@ -4108,9 +4108,9 @@ expression} evaluate to tuples of the same size. For example
%\end{texnote}
%\end{function}
-\begin{function}{\FpStepInline}
+\begin{function}{\fpStepInline}
\begin{syntax}
-\cs{FpStepInline} \Arg{initial value} \Arg{step} \Arg{final value} \Arg{code}
+\cs{fpStepInline} \Arg{initial value} \Arg{step} \Arg{final value} \Arg{code}
\end{syntax}
This function first evaluates the \meta{initial value}, \meta{step}
and \meta{final value}, all of which should be floating point
@@ -4122,18 +4122,18 @@ with \verb|#1| replaced by the current \meta{value}. Thus the
\meta{code} should define a function of one argument (\verb|#1|).
\begin{demohigh}
\IgnoreSpacesOn
-\TlClear \lTmpaTl
-\FpStepInline {1} {0.1} {1.5} {
- \TlPutRight \lTmpaTl {[#1]}
+\tlClear \lTmpaTl
+\fpStepInline {1} {0.1} {1.5} {
+ \tlPutRight \lTmpaTl {[#1]}
}
-\TlUse \lTmpaTl
+\tlUse \lTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\FpStepVariable}
+\begin{function}{\fpStepVariable}
\begin{syntax}
-\cs{FpStepVariable} \Arg{initial value} \Arg{step} \Arg{final value} \meta{tl var} \Arg{code}
+\cs{fpStepVariable} \Arg{initial value} \Arg{step} \Arg{final value} \meta{tl var} \Arg{code}
\end{syntax}
This function first evaluates the \meta{initial value}, \meta{step}
and \meta{final value}, all of which should be floating point
@@ -4146,46 +4146,46 @@ the \meta{code} should make use of the \meta{tl var}.
%For example
%\begin{demohigh}
%\IgnoreSpacesOn
-%\TlClear\lTmpaTl
-%\FpStepVariable{1}{0.1}{1.5}\lTmpiTl{
-% \TlPutRight\lTmpaTl{\Value\lTmpiTl}
-% \TlPutRight\lTmpaTl{~}
+%\tlClear\lTmpaTl
+%\fpStepVariable{1}{0.1}{1.5}\lTmpiTl{
+% \tlPutRight\lTmpaTl{\expValue\lTmpiTl}
+% \tlPutRight\lTmpaTl{~}
%}
-%\Return{\Value\lTmpaTl}
+%\prgReturn{\expValue\lTmpaTl}
%\IgnoreSpacesOff
%\end{demohigh}
\end{function}
\section{Float Point Conditionals}
-\begin{function}{\FpIfExist,\FpIfExistT,\FpIfExistF,\FpIfExistTF}
+\begin{function}{\fpIfExist,\fpIfExistT,\fpIfExistF,\fpIfExistTF}
\begin{syntax}
-\cs{FpIfExist} \meta{fp var}
-\cs{FpIfExistT} \meta{fp var} \Arg{true code}
-\cs{FpIfExistF} \meta{fp var} \Arg{false code}
-\cs{FpIfExistTF} \meta{fp var} \Arg{true code} \Arg{false code}
+\cs{fpIfExist} \meta{fp var}
+\cs{fpIfExistT} \meta{fp var} \Arg{true code}
+\cs{fpIfExistF} \meta{fp var} \Arg{false code}
+\cs{fpIfExistTF} \meta{fp var} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{fp var} is currently defined. This does not
check that the \meta{fp var} really is a floating point variable.
For example
\begin{demohigh}
-\FpIfExistTF \lTmpaFp {\Return{Yes}} {\Return{No}}
-\FpIfExistTF \lMyUndefinedFp {\Return{Yes}} {\Return{No}}
+\fpIfExistTF \lTmpaFp {\prgReturn{Yes}} {\prgReturn{No}}
+\fpIfExistTF \lMyUndefinedFp {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\FpCompare,\FpCompareT,\FpCompareF,\FpCompareTF}
+\begin{function}{\fpCompare,\fpCompareT,\fpCompareF,\fpCompareTF}
\begin{syntax}
-\cs{FpCompare} \Arg{fpexpr_1} \meta{relation} \Arg{fpexpr_2}
-\cs{FpCompareT} \Arg{fpexpr_1} \meta{relation} \Arg{fpexpr_2} \Arg{true code}
-\cs{FpCompareF} \Arg{fpexpr_1} \meta{relation} \Arg{fpexpr_2} \Arg{false code}
-\cs{FpCompareTF} \Arg{fpexpr_1} \meta{relation} \Arg{fpexpr_2} \Arg{true code} \Arg{false code}
+\cs{fpCompare} \Arg{fpexpr_1} \meta{relation} \Arg{fpexpr_2}
+\cs{fpCompareT} \Arg{fpexpr_1} \meta{relation} \Arg{fpexpr_2} \Arg{true code}
+\cs{fpCompareF} \Arg{fpexpr_1} \meta{relation} \Arg{fpexpr_2} \Arg{false code}
+\cs{fpCompareTF} \Arg{fpexpr_1} \meta{relation} \Arg{fpexpr_2} \Arg{true code} \Arg{false code}
\end{syntax}
Compares the \meta{fpexpr_1} and the \meta{fpexpr_2}, and returns
\texttt{true} if the \meta{relation} is obeyed. For example
\begin{demohigh}
-\FpCompareTF {1} > {0.9999} {\Return{Greater}} {\Return{Less}}
-\FpCompareTF {1} > {1.0001} {\Return{Greater}} {\Return{Less}}
+\fpCompareTF {1} > {0.9999} {\prgReturn{Greater}} {\prgReturn{Less}}
+\fpCompareTF {1} > {1.0001} {\prgReturn{Greater}} {\prgReturn{Less}}
\end{demohigh}
Two floating points
$x$ and $y$ may obey four mutually exclusive relations:
@@ -4196,7 +4196,7 @@ any value, even another \nan{}, hence $x=x$ is not true for
a \nan{}. To test if a value is \nan{}, compare it to an arbitrary
number with the \enquote{not ordered} relation.\par
%\begin{demohigh}
-%\FpCompareTF{0/0}?{0}{\Return{Is~a~Nan}}{\Return{Isn't~a~NaN}}
+%\fpCompareTF{0/0}?{0}{\prgReturn{Is~a~Nan}}{\prgReturn{Isn't~a~NaN}}
%\end{demohigh}
Tuples are equal if they have the same number of items and items
compare equal (in particular there must be no \nan{}).
@@ -4234,13 +4234,13 @@ code and so should only be used for short-term storage.
\section{Dimension Expressions}
-\begin{function}{\DimEval}
+\begin{function}{\dimEval}
\begin{syntax}
-\cs{DimEval} \Arg{dimension expression}
+\cs{dimEval} \Arg{dimension expression}
\end{syntax}
Evaluates the \meta{dimension expression}, expanding any
dimensions and token list variables within the \meta{expression}
-to their content (without requiring \cs{DimUse}/\cs{TlUse})
+to their content (without requiring \cs{dimUse}/\cs{tlUse})
and applying the standard mathematical rules. The result of the
calculation is returned as a \meta{dimension denotation}.
%This is expressed in points (\texttt{pt}), and requires suitable
@@ -4248,38 +4248,38 @@ calculation is returned as a \meta{dimension denotation}.
%an \meta{internal dimension}.
For example
\begin{demohigh}
-\DimEval {(1.2pt+3.4pt)/9}
+\dimEval {(1.2pt+3.4pt)/9}
\end{demohigh}
-%\DimEval{(1.2pt+3.4pt)*(5.6-7.8)/9}
+%\dimEval{(1.2pt+3.4pt)*(5.6-7.8)/9}
\end{function}
-\begin{function}{\DimMathAdd}
+\begin{function}{\dimMathAdd}
\begin{syntax}
-\cs{DimMathAdd} \Arg{dimexpr_1} \Arg{dimexpr_2}
+\cs{dimMathAdd} \Arg{dimexpr_1} \Arg{dimexpr_2}
\end{syntax}
Adds \Arg{dimexpr_1} and \Arg{dimexpr_2},
and returns the result. For example
\begin{demohigh}
-\DimMathAdd {2.8pt} {3.7pt}
-\DimMathAdd {3.8pt-1pt} {2.7pt+1pt}
+\dimMathAdd {2.8pt} {3.7pt}
+\dimMathAdd {3.8pt-1pt} {2.7pt+1pt}
\end{demohigh}
\end{function}
-\begin{function}{\DimMathSub}
+\begin{function}{\dimMathSub}
\begin{syntax}
-\cs{DimMathSub} \Arg{dimexpr_1} \Arg{dimexpr_2}
+\cs{dimMathSub} \Arg{dimexpr_1} \Arg{dimexpr_2}
\end{syntax}
Subtracts \Arg{dimexpr_2} from \Arg{dimexpr_1},
and returns the result. For example
\begin{demohigh}
-\DimMathSub {2.8pt} {3.7pt}
-\DimMathSub {3.8pt-1pt} {2.7pt+1pt}
+\dimMathSub {2.8pt} {3.7pt}
+\dimMathSub {3.8pt-1pt} {2.7pt+1pt}
\end{demohigh}
\end{function}
-\begin{function}{\DimMathRatio}
+\begin{function}{\dimMathRatio}
\begin{syntax}
-\cs{DimMathRatio} \Arg{dimexpr_1} \Arg{dimexpr_2}
+\cs{dimMathRatio} \Arg{dimexpr_1} \Arg{dimexpr_2}
\end{syntax}
Parses the two \meta{dimension expressions},
then calculates the ratio of the two and returns it.
@@ -4287,81 +4287,81 @@ The result is a ratio expression
between two integers, with all distances converted to scaled points.
For example
\begin{demohigh}
-\DimMathRatio {5pt} {10pt}
+\dimMathRatio {5pt} {10pt}
\end{demohigh}
The returned value is suitable for use inside a \meta{dimension expression}
such as
\begin{codehigh}
-\DimSet \lTmpaDim {10pt*\DimMathRatio{5pt}{10pt}}
+\dimSet \lTmpaDim {10pt*\dimMathRatio{5pt}{10pt}}
\end{codehigh}
\end{function}
-\begin{function}{\DimMathSign}
+\begin{function}{\dimMathSign}
\begin{syntax}
-\cs{DimMathSign} \Arg{dimexpr}
+\cs{dimMathSign} \Arg{dimexpr}
\end{syntax}
Evaluates the \meta{dimexpr} then returns $1$ or $0$ or $-1$
according to the sign of the result. For example
\begin{demohigh}
-\DimMathSign {3.5pt}
-\DimMathSign {-2.7pt}
+\dimMathSign {3.5pt}
+\dimMathSign {-2.7pt}
\end{demohigh}
\end{function}
-\begin{function}{\DimMathAbs}
+\begin{function}{\dimMathAbs}
\begin{syntax}
-\cs{DimMathAbs} \Arg{dimexpr}
+\cs{dimMathAbs} \Arg{dimexpr}
\end{syntax}
Converts the \meta{dimexpr} to its absolute value,
returning the result as a \meta{dimension denotation}.
For example
\begin{demohigh}
-\DimMathAbs {3.5pt}
-\DimMathAbs {-2.7pt}
+\dimMathAbs {3.5pt}
+\dimMathAbs {-2.7pt}
\end{demohigh}
\end{function}
-\begin{function}{\DimMathMax,\DimMathMin}
+\begin{function}{\dimMathMax,\dimMathMin}
\begin{syntax}
-\cs{DimMathMax} \Arg{dimexpr_1} \Arg{dimexpr_2}
-\cs{DimMathMin} \Arg{dimexpr_1} \Arg{dimexpr_2}
+\cs{dimMathMax} \Arg{dimexpr_1} \Arg{dimexpr_2}
+\cs{dimMathMin} \Arg{dimexpr_1} \Arg{dimexpr_2}
\end{syntax}
Evaluates the two \meta{dimension expressions} and returns either the
maximum or minimum value as appropriate as a \meta{dimension denotation}.
For example
\begin{demohigh}
-\DimMathMax {3.5pt} {-2.7pt}
-\DimMathMin {3.5pt} {-2.7pt}
+\dimMathMax {3.5pt} {-2.7pt}
+\dimMathMin {3.5pt} {-2.7pt}
\end{demohigh}
\end{function}
\section{Creating and Using Dimensions}
-\begin{function}{\DimNew}
+\begin{function}{\dimNew}
\begin{syntax}
-\cs{DimNew} \meta{dimension}
+\cs{dimNew} \meta{dimension}
\end{syntax}
Creates a new \meta{dimension} or raises an error if the name is
already taken. The declaration is global. The \meta{dimension}
is initially equal to $0$\,pt.
\end{function}
-\begin{function}{\DimConst}
+\begin{function}{\dimConst}
\begin{syntax}
-\cs{DimConst} \meta{dimension} \Arg{dimension expression}
+\cs{dimConst} \meta{dimension} \Arg{dimension expression}
\end{syntax}
Creates a new constant \meta{dimension} or raises an error if the
name is already taken. The value of the \meta{dimension} is set
globally to the \meta{dimension expression}. For example
\begin{demohigh}
-\DimConst \cFooSomeDim {1cm}
-\DimUse \cFooSomeDim
+\dimConst \cFooSomeDim {1cm}
+\dimUse \cFooSomeDim
\end{demohigh}
\end{function}
-\begin{function}{\DimUse}
+\begin{function}{\dimUse}
\begin{syntax}
-\cs{DimUse} \meta{dimension}
+\cs{dimUse} \meta{dimension}
\end{syntax}
Recovers the content of a \meta{dimension} and returns the value.
An error is raised if the variable does not exist or if it is invalid.
@@ -4369,127 +4369,127 @@ An error is raised if the variable does not exist or if it is invalid.
\section{Viewing Dimensions}
-\begin{function}{\DimLog}
+\begin{function}{\dimLog}
\begin{syntax}
-\cs{DimLog} \Arg{dimension expression}
+\cs{dimLog} \Arg{dimension expression}
\end{syntax}
Writes the result of evaluating the \meta{dimension expression}
in the log file. For example
\begin{codehigh}
-\DimLog {\lFooSomeDim+1cm}
+\dimLog {\lFooSomeDim+1cm}
\end{codehigh}
\end{function}
-\begin{function}{\DimVarLog}
+\begin{function}{\dimVarLog}
\begin{syntax}
-\cs{DimVarLog} \meta{dimension}
+\cs{dimVarLog} \meta{dimension}
\end{syntax}
Writes the value of the \meta{dimension} in the log file. For example
\begin{codehigh}
-\DimVarLog \lFooSomeDim
+\dimVarLog \lFooSomeDim
\end{codehigh}
\end{function}
-\begin{function}{\DimShow}
+\begin{function}{\dimShow}
\begin{syntax}
-\cs{DimShow} \Arg{dimension expression}
+\cs{dimShow} \Arg{dimension expression}
\end{syntax}
Displays the result of evaluating the \meta{dimension expression}
on the terminal. For example
\begin{codehigh}
-\DimShow {\lFooSomeDim+1cm}
+\dimShow {\lFooSomeDim+1cm}
\end{codehigh}
\end{function}
-\begin{function}{\DimVarShow}
+\begin{function}{\dimVarShow}
\begin{syntax}
-\cs{DimVarShow} \meta{dimension}
+\cs{dimVarShow} \meta{dimension}
\end{syntax}
Displays the value of the \meta{dimension} on the terminal. For example
\begin{codehigh}
-\DimVarShow \lFooSomeDim
+\dimVarShow \lFooSomeDim
\end{codehigh}
\end{function}
\section{Setting Dimension Variables}
-\begin{function}{\DimSet}
+\begin{function}{\dimSet}
\begin{syntax}
-\cs{DimSet} \meta{dimension} \Arg{dimension expression}
+\cs{dimSet} \meta{dimension} \Arg{dimension expression}
\end{syntax}
Sets \meta{dimension} to the value of \meta{dimension expression}, which
must evaluate to a length with units.
\end{function}
-\begin{function}{\DimSetEq}
+\begin{function}{\dimSetEq}
\begin{syntax}
-\cs{DimSetEq} \meta{dimension_1} \meta{dimension_2}
+\cs{dimSetEq} \meta{dimension_1} \meta{dimension_2}
\end{syntax}
Sets the content of \meta{dimension_1} equal to that of
\meta{dimension_2}. For example
\begin{demohigh}
-\DimSet \lTmpaDim {10pt}
-\DimSetEq \lTmpbDim \lTmpaDim
-\DimUse \lTmpbDim
+\dimSet \lTmpaDim {10pt}
+\dimSetEq \lTmpbDim \lTmpaDim
+\dimUse \lTmpbDim
\end{demohigh}
\end{function}
-\begin{function}{\DimZero}
+\begin{function}{\dimZero}
\begin{syntax}
-\cs{DimZero} \meta{dimension}
+\cs{dimZero} \meta{dimension}
\end{syntax}
Sets \meta{dimension} to $0$\,pt. For example
\begin{demohigh}
-\DimSet \lTmpaDim {1em}
-\DimZero \lTmpaDim
-\DimUse \lTmpaDim
+\dimSet \lTmpaDim {1em}
+\dimZero \lTmpaDim
+\dimUse \lTmpaDim
\end{demohigh}
\end{function}
-\begin{function}{\DimZeroNew}
+\begin{function}{\dimZeroNew}
\begin{syntax}
-\cs{DimZeroNew} \meta{dimension}
+\cs{dimZeroNew} \meta{dimension}
\end{syntax}
Ensures that the \meta{dimension} exists globally by applying
-\cs{DimNew} if necessary, then applies
-\cs{DimZero} to set the \meta{dimension} to zero. For example
+\cs{dimNew} if necessary, then applies
+\cs{dimZero} to set the \meta{dimension} to zero. For example
\begin{demohigh}
-\DimZeroNew \lFooSomeDim
-\DimUse \lFooSomeDim
+\dimZeroNew \lFooSomeDim
+\dimUse \lFooSomeDim
\end{demohigh}
\end{function}
-\begin{function}{\DimAdd}
+\begin{function}{\dimAdd}
\begin{syntax}
-\cs{DimAdd} \meta{dimension} \Arg{dimension expression}
+\cs{dimAdd} \meta{dimension} \Arg{dimension expression}
\end{syntax}
Adds the result of the \meta{dimension expression} to the current
content of the \meta{dimension}. For example
\begin{demohigh}
-\DimSet \lTmpaDim {5.3pt}
-\DimAdd \lTmpaDim {2.11pt}
-\DimUse \lTmpaDim
+\dimSet \lTmpaDim {5.3pt}
+\dimAdd \lTmpaDim {2.11pt}
+\dimUse \lTmpaDim
\end{demohigh}
\end{function}
-\begin{function}{\DimSub}
+\begin{function}{\dimSub}
\begin{syntax}
-\cs{DimSub} \meta{dimension} \Arg{dimension expression}
+\cs{dimSub} \meta{dimension} \Arg{dimension expression}
\end{syntax}
Subtracts the result of the \meta{dimension expression} from the
current content of the \meta{dimension}. For example
\begin{demohigh}
-\DimSet \lTmpaDim {5.3pt}
-\DimSub \lTmpaDim {2.11pt}
-\DimUse \lTmpaDim
+\dimSet \lTmpaDim {5.3pt}
+\dimSub \lTmpaDim {2.11pt}
+\dimUse \lTmpaDim
\end{demohigh}
\end{function}
\section{Dimension Step Functions}
-%\begin{function}{\DimStepFunction}
+%\begin{function}{\dimStepFunction}
%\begin{syntax}
-%\cs{DimStepFunction} \Arg{initial value} \Arg{step} \Arg{final value} \meta{function}
+%\cs{dimStepFunction} \Arg{initial value} \Arg{step} \Arg{final value} \meta{function}
%\end{syntax}
%This function first evaluates the \meta{initial value}, \meta{step}
%and \meta{final value}, all of which should be dimension expressions.
@@ -4503,9 +4503,9 @@ current content of the \meta{dimension}. For example
%should absorb one argument.
%\end{function}
-\begin{function}{\DimStepInline}
+\begin{function}{\dimStepInline}
\begin{syntax}
-\cs{DimStepInline} \Arg{initial value} \Arg{step} \Arg{final value} \Arg{code}
+\cs{dimStepInline} \Arg{initial value} \Arg{step} \Arg{final value} \Arg{code}
\end{syntax}
This function first evaluates the \meta{initial value}, \meta{step}
and \meta{final value}, all of which should be dimension expressions.
@@ -4516,18 +4516,18 @@ with \verb|#1| replaced by the current \meta{value}. Thus the
\meta{code} should define a function of one argument (\verb|#1|).
\begin{demohigh}
\IgnoreSpacesOn
-\TlClear \lTmpaTl
-\DimStepInline {1pt} {0.1pt} {1.5pt} {
- \TlPutRight \lTmpaTl {[#1]}
+\tlClear \lTmpaTl
+\dimStepInline {1pt} {0.1pt} {1.5pt} {
+ \tlPutRight \lTmpaTl {[#1]}
}
-\TlUse \lTmpaTl
+\tlUse \lTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\DimStepVariable}
+\begin{function}{\dimStepVariable}
\begin{syntax}
-\cs{DimStepVariable} \Arg{initial value} \Arg{step} \Arg{final value} \meta{tl var} \Arg{code}
+\cs{dimStepVariable} \Arg{initial value} \Arg{step} \Arg{final value} \meta{tl var} \Arg{code}
\end{syntax}
This function first evaluates the \meta{initial value}, \meta{step}
and \meta{final value}, all of which should be dimension expressions.
@@ -4539,43 +4539,43 @@ the \meta{code} should make use of the \meta{tl var}.
%For example
%\begin{demohigh}
%\IgnoreSpacesOn
-%\TlClear\lTmpaTl
-%\DimStepVariable{1pt}{0.1pt}{1.5pt}\lTmpiTl{
-% \TlPutRight\lTmpaTl{\Value\lTmpiTl}
-% \TlPutRight\lTmpaTl{~}
+%\tlClear\lTmpaTl
+%\dimStepVariable{1pt}{0.1pt}{1.5pt}\lTmpiTl{
+% \tlPutRight\lTmpaTl{\expValue\lTmpiTl}
+% \tlPutRight\lTmpaTl{~}
%}
-%\Return{\Value\lTmpaTl}
+%\prgReturn{\expValue\lTmpaTl}
%\IgnoreSpacesOff
%\end{demohigh}
\end{function}
\section{Dimension Conditionals}
-\begin{function}{\DimIfExist,\DimIfExistT,\DimIfExistF,\DimIfExistTF}
+\begin{function}{\dimIfExist,\dimIfExistT,\dimIfExistF,\dimIfExistTF}
\begin{syntax}
-\cs{DimIfExist} \meta{dimension}
-\cs{DimIfExistT} \meta{dimension} \Arg{true code}
-\cs{DimIfExistF} \meta{dimension} \Arg{false code}
-\cs{DimIfExistTF} \meta{dimension} \Arg{true code} \Arg{false code}
+\cs{dimIfExist} \meta{dimension}
+\cs{dimIfExistT} \meta{dimension} \Arg{true code}
+\cs{dimIfExistF} \meta{dimension} \Arg{false code}
+\cs{dimIfExistTF} \meta{dimension} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{dimension} is currently defined. This does
not check that the \meta{dimension} really is a dimension variable.
For example
\begin{demohigh}
-\DimIfExistTF \lTmpaDim {\Return{Yes}} {\Return{No}}
-\DimIfExistTF \lFooUndefinedDim {\Return{Yes}} {\Return{No}}
+\dimIfExistTF \lTmpaDim {\prgReturn{Yes}} {\prgReturn{No}}
+\dimIfExistTF \lFooUndefinedDim {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\DimCompare,\DimCompareT,\DimCompareF,\DimCompareTF}
+\begin{function}{\dimCompare,\dimCompareT,\dimCompareF,\dimCompareTF}
\begin{syntax}
-\cs{DimCompare} \Arg{dimexpr_1} \meta{relation} \Arg{dimexpr_2}
-\cs{DimCompareT} \Arg{dimexpr_1} \meta{relation} \Arg{dimexpr_2} \Arg{true code}
-\cs{DimCompareF} \Arg{dimexpr_1} \meta{relation} \Arg{dimexpr_2} \Arg{false code}
-\cs{DimCompareTF} \Arg{dimexpr_1} \meta{relation} \Arg{dimexpr_2} \Arg{true code} \Arg{false code}
+\cs{dimCompare} \Arg{dimexpr_1} \meta{relation} \Arg{dimexpr_2}
+\cs{dimCompareT} \Arg{dimexpr_1} \meta{relation} \Arg{dimexpr_2} \Arg{true code}
+\cs{dimCompareF} \Arg{dimexpr_1} \meta{relation} \Arg{dimexpr_2} \Arg{false code}
+\cs{dimCompareTF} \Arg{dimexpr_1} \meta{relation} \Arg{dimexpr_2} \Arg{true code} \Arg{false code}
\end{syntax}
This function first evaluates each of the \meta{dimension expressions}
-as described for \cs{DimEval}. The two results are then
+as described for \cs{dimEval}. The two results are then
compared using the \meta{relation}:\par
{\centering
\begin{tabular}{ll}
@@ -4585,16 +4585,16 @@ Less than & \verb|<| \\
\end{tabular}\par}
For example
\begin{demohigh}
-\DimCompareTF {1pt} > {0.9999pt} {\Return{Greater}} {\Return{Less}}
-\DimCompareTF {1pt} > {1.0001pt} {\Return{Greater}} {\Return{Less}}
+\dimCompareTF {1pt} > {0.9999pt} {\prgReturn{Greater}} {\prgReturn{Less}}
+\dimCompareTF {1pt} > {1.0001pt} {\prgReturn{Greater}} {\prgReturn{Less}}
\end{demohigh}
\end{function}
\section{Dimension Case Functions}
-\begin{function}{\DimCase}
+\begin{function}{\dimCase}
\begin{syntax}
-\cs{DimCase} \Arg{test dimension expression}
+\cs{dimCase} \Arg{test dimension expression}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{dimexpr case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{dimexpr case_2} \Arg{code case_2}
@@ -4609,9 +4609,9 @@ associated \meta{code} is left in the input stream
and other cases are discarded.
\end{function}
-\begin{function}{\DimCaseT}
+\begin{function}{\dimCaseT}
\begin{syntax}
-\cs{DimCaseT} \Arg{test dimension expression}
+\cs{dimCaseT} \Arg{test dimension expression}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{dimexpr case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{dimexpr case_2} \Arg{code case_2}
@@ -4629,9 +4629,9 @@ cases are matched, the \meta{true code} is also inserted into the
input stream (after the code for the appropriate case).
\end{function}
-\begin{function}{\DimCaseF}
+\begin{function}{\dimCaseF}
\begin{syntax}
-\cs{DimCaseF} \Arg{test dimension expression}
+\cs{dimCaseF} \Arg{test dimension expression}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{dimexpr case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{dimexpr case_2} \Arg{code case_2}
@@ -4649,21 +4649,21 @@ match then the \meta{false code} is inserted.
For example
\begin{demohigh}
\IgnoreSpacesOn
-\DimSet \lTmpaDim {5pt}
-\DimCaseF {2\lTmpaDim} {
- {5pt} {\Return{Small}}
- {4pt+6pt} {\Return{Medium}}
- {-10pt} {\Return{Negative}}
+\dimSet \lTmpaDim {5pt}
+\dimCaseF {2\lTmpaDim} {
+ {5pt} {\prgReturn{Small}}
+ {4pt+6pt} {\prgReturn{Medium}}
+ {-10pt} {\prgReturn{Negative}}
}{
- \Return {No Match}
+ \prgReturn {No Match}
}
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\DimCaseTF}
+\begin{function}{\dimCaseTF}
\begin{syntax}
-\cs{DimCaseTF} \Arg{test dimension expression}
+\cs{dimCaseTF} \Arg{test dimension expression}
~ ~ \verb|{|
~ ~ ~ ~ \Arg{dimexpr case_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{dimexpr case_2} \Arg{code case_2}
@@ -4684,15 +4684,15 @@ match then the \meta{false code} is inserted.
%For example
%\begin{demohigh}
%\IgnoreSpacesOn
-%\DimSet\lTmpaDim{5pt}
-%\DimCaseTF{2\lTmpaDim}{
-% {5pt} {\Return{Small}}
-% {4pt+6pt} {\Return{Medium}}
-% {-10pt} {\Return{Negative}}
+%\dimSet\lTmpaDim{5pt}
+%\dimCaseTF{2\lTmpaDim}{
+% {5pt} {\prgReturn{Small}}
+% {4pt+6pt} {\prgReturn{Medium}}
+% {-10pt} {\prgReturn{Negative}}
%}{
-% \Return{[Some Match]}
+% \prgReturn{[Some Match]}
%}{
-% \Return{[No Match]}
+% \prgReturn{[No Match]}
%}
%\IgnoreSpacesOff
%\end{demohigh}
@@ -4722,34 +4722,34 @@ code and so should only be used for short-term storage.
\section{Creating and Using Comma Lists}
-\begin{function}{\ClistNew}
+\begin{function}{\clistNew}
\begin{syntax}
-\cs{ClistNew} \meta{comma list}
+\cs{clistNew} \meta{comma list}
\end{syntax}
Creates a new \meta{comma list} or raises an error if the name is
already taken. The declaration is global. The \meta{comma list}
initially contains no items.
\begin{codehigh}
-\ClistNew \lFooSomeClist
+\clistNew \lFooSomeClist
\end{codehigh}
\end{function}
-\begin{function}{\ClistConst}
+\begin{function}{\clistConst}
\begin{syntax}
-\cs{ClistConst} \meta{clist var} \Arg{comma list}
+\cs{clistConst} \meta{clist var} \Arg{comma list}
\end{syntax}
Creates a new constant \meta{clist var} or raises an error
if the name is already taken. The value of the
\meta{clist var} is set globally to the
\meta{comma list}.
\begin{codehigh}
-\ClistConst \cFooSomeClist {one,two,three}
+\clistConst \cFooSomeClist {one,two,three}
\end{codehigh}
\end{function}
-\begin{function}{\ClistVarJoin}
+\begin{function}{\clistVarJoin}
\begin{syntax}
-\cs{ClistVarJoin} \meta{clist var} \Arg{separator}
+\cs{clistVarJoin} \meta{clist var} \Arg{separator}
\end{syntax}
Returns the contents of the \meta{clist var},
with the \meta{separator} between the items.
@@ -4757,8 +4757,8 @@ with the \meta{separator} between the items.
%and a comma list with no items produces no output.
%An error is raised if the variable does not exist or if it is invalid.
\begin{demohigh}
-\ClistSet \lTmpaClist { a , b , , c , {de} , f }
-\ClistVarJoin \lTmpaClist { and }
+\clistSet \lTmpaClist { a , b , , c , {de} , f }
+\clistVarJoin \lTmpaClist { and }
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -4768,9 +4768,9 @@ with the \meta{separator} between the items.
%\end{texnote}
\end{function}
-\begin{function}{\ClistVarJoinExtended}
+\begin{function}{\clistVarJoinExtended}
\begin{syntax}
-\cs{ClistVarJoinExtended} \meta{clist var} \Arg{separator between two} \Arg{separator between more than two} \Arg{separator between final two}
+\cs{clistVarJoinExtended} \meta{clist var} \Arg{separator between two} \Arg{separator between more than two} \Arg{separator between final two}
\end{syntax}
Returns the contents of the \meta{clist var},
with the appropriate \meta{separator} between the items. Namely, if
@@ -4783,12 +4783,12 @@ the \meta{separator between two} and returns.
%and a comma list with no items produces no output.
%An error is raised if the variable does not exist or if it is invalid.
\begin{demohigh}
-\ClistSet \lTmpaClist { a , b }
-\ClistVarJoinExtended \lTmpaClist { and } {, } {, and }
+\clistSet \lTmpaClist { a , b }
+\clistVarJoinExtended \lTmpaClist { and } {, } {, and }
\end{demohigh}
\begin{demohigh}
-\ClistSet \lTmpaClist { a , b , , c , {de} , f }
-\ClistVarJoinExtended \lTmpaClist { and } {, } {, and }
+\clistSet \lTmpaClist { a , b , , c , {de} , f }
+\clistVarJoinExtended \lTmpaClist { and } {, } {, and }
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -4798,23 +4798,23 @@ the \meta{separator between two} and returns.
%\end{texnote}
\end{function}
-\begin{function}{\ClistJoin,\ClistJoinExtended}
+\begin{function}{\clistJoin,\clistJoinExtended}
\begin{syntax}
-\cs{ClistJoin} \meta{comma list} \Arg{separator}
-\cs{ClistJoinExtended} \meta{comma list} \Arg{separator between two} \Arg{separator between more than two} \Arg{separator between final two}
+\cs{clistJoin} \meta{comma list} \Arg{separator}
+\cs{clistJoinExtended} \meta{comma list} \Arg{separator between two} \Arg{separator between more than two} \Arg{separator between final two}
\end{syntax}
Returns the contents of the \meta{comma list},
with the appropriate \meta{separator} between the items. As for
-\cs{ClistSet}, blank items are omitted, spaces are removed from
+\cs{clistSet}, blank items are omitted, spaces are removed from
both sides of each item, then a set of braces is removed if the
resulting space-trimmed item is braced. The \meta{separators} are
-then inserted in the same way as for \cs{ClistVarJoin} and
-\cs{ClistVarJoinExtended}, respectively.
+then inserted in the same way as for \cs{clistVarJoin} and
+\cs{clistVarJoinExtended}, respectively.
\begin{demohigh}
-\ClistJoinExtended { a , b } { and } {, } {, and }
+\clistJoinExtended { a , b } { and } {, } {, and }
\end{demohigh}
\begin{demohigh}
-\ClistJoinExtended { a , b , , c , {de} , f } { and } {, } {, and }
+\clistJoinExtended { a , b , , c , {de} , f } { and } {, } {, and }
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -4826,55 +4826,55 @@ then inserted in the same way as for \cs{ClistVarJoin} and
\section{Viewing Comma Lists}
-\begin{function}{\ClistLog}
+\begin{function}{\clistLog}
\begin{syntax}
-\cs{ClistLog} \Arg{tokens}
+\cs{clistLog} \Arg{tokens}
\end{syntax}
Writes the entries in the comma list in the log file. See also
-\cs{ClistShow} which displays the result in the terminal.
+\cs{clistShow} which displays the result in the terminal.
\begin{codehigh}
-\ClistLog {one,two,three}
+\clistLog {one,two,three}
\end{codehigh}
\end{function}
-\begin{function}{\ClistVarLog}
+\begin{function}{\clistVarLog}
\begin{syntax}
-\cs{ClistVarLog} \meta{comma list}
+\cs{clistVarLog} \meta{comma list}
\end{syntax}
Writes the entries in the \meta{comma list} in the log file. See
-also \cs{ClistVarShow} which displays the result in the terminal.
+also \cs{clistVarShow} which displays the result in the terminal.
\begin{codehigh}
-\ClistSet \lTmpaClist {one,two,three}
-\ClistVarLog \lTmpaClist
+\clistSet \lTmpaClist {one,two,three}
+\clistVarLog \lTmpaClist
\end{codehigh}
\end{function}
-\begin{function}{\ClistShow}
+\begin{function}{\clistShow}
\begin{syntax}
-\cs{ClistShow} \Arg{tokens}
+\cs{clistShow} \Arg{tokens}
\end{syntax}
Displays the entries in the comma list in the terminal.
\begin{codehigh}
-\ClistShow {one,two,three}
+\clistShow {one,two,three}
\end{codehigh}
\end{function}
-\begin{function}{\ClistVarShow}
+\begin{function}{\clistVarShow}
\begin{syntax}
-\cs{ClistVarShow} \meta{comma list}
+\cs{clistVarShow} \meta{comma list}
\end{syntax}
Displays the entries in the \meta{comma list} in the terminal.
\begin{codehigh}
-\ClistSet \lTmpaClist {one,two,three}
-\ClistVarShow \lTmpaClist
+\clistSet \lTmpaClist {one,two,three}
+\clistVarShow \lTmpaClist
\end{codehigh}
\end{function}
\section{Setting Comma Lists}
-\begin{function}{\ClistSet}
+\begin{function}{\clistSet}
\begin{syntax}
-\cs{ClistSet} \meta{comma list} \verb|{|\meta{item_1},\ldots{},\meta{item_n}\verb|}|
+\cs{clistSet} \meta{comma list} \verb|{|\meta{item_1},\ldots{},\meta{item_n}\verb|}|
\end{syntax}
Sets \meta{comma list} to contain the \meta{items},
removing any previous content from the variable.
@@ -4883,87 +4883,87 @@ item, then a set of braces is removed if the resulting space-trimmed
item is braced.
To store some \meta{tokens} as a single \meta{item} even if the
\meta{tokens} contain commas or spaces, add a set of braces:
-\cs{ClistSet} \meta{comma list} \verb|{| \Arg{tokens} \verb|}|.
+\cs{clistSet} \meta{comma list} \verb|{| \Arg{tokens} \verb|}|.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two,three}
-\ClistVarJoin \lTmpaClist { and }
+\clistSet \lTmpaClist {one,two,three}
+\clistVarJoin \lTmpaClist { and }
\end{demohigh}
\end{function}
-\begin{function}{\ClistSetEq}
+\begin{function}{\clistSetEq}
\begin{syntax}
-\cs{ClistSetEq} \meta{comma list_1} \meta{comma list_2}
+\cs{clistSetEq} \meta{comma list_1} \meta{comma list_2}
\end{syntax}
Sets the content of \meta{comma list_1} equal to that of
\meta{comma list_2}. To set a token list variable equal to a comma
-list variable, use \cs{TlSetEq}. Conversely, setting a comma
+list variable, use \cs{tlSetEq}. Conversely, setting a comma
list variable to a token list is unadvisable unless one checks
space-trimming and related issues.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two,three,four}
-\ClistSetEq \lTmpbClist \lTmpaClist
-\ClistVarJoin \lTmpbClist { and }
+\clistSet \lTmpaClist {one,two,three,four}
+\clistSetEq \lTmpbClist \lTmpaClist
+\clistVarJoin \lTmpbClist { and }
\end{demohigh}
\end{function}
-\begin{function}{\ClistSetFromSeq}
+\begin{function}{\clistSetFromSeq}
\begin{syntax}
-\cs{ClistSetFromSeq} \meta{comma list} \meta{sequence}
+\cs{clistSetFromSeq} \meta{comma list} \meta{sequence}
\end{syntax}
Converts the data in the \meta{sequence} into a \meta{comma list}:
the original \meta{sequence} is unchanged.
Items which contain either spaces or commas are surrounded by braces.
\begin{demohigh}
-\SeqPutRight \lTmpaSeq {one}
-\SeqPutRight \lTmpaSeq {two}
-\ClistSetFromSeq \lTmpaClist \lTmpaSeq
-\ClistVarJoin \lTmpaClist { and }
+\seqPutRight \lTmpaSeq {one}
+\seqPutRight \lTmpaSeq {two}
+\clistSetFromSeq \lTmpaClist \lTmpaSeq
+\clistVarJoin \lTmpaClist { and }
\end{demohigh}
\end{function}
-\begin{function}{\ClistClear}
+\begin{function}{\clistClear}
\begin{syntax}
-\cs{ClistClear} \meta{comma list}
+\cs{clistClear} \meta{comma list}
\end{syntax}
Clears all items from the \meta{comma list}.
\begin{codehigh}
-\ClistSet \lTmpaClist {one,two,three,four}
-\ClistClear \lTmpaClist
+\clistSet \lTmpaClist {one,two,three,four}
+\clistClear \lTmpaClist
\end{codehigh}
\end{function}
-\begin{function}{\ClistClearNew}
+\begin{function}{\clistClearNew}
\begin{syntax}
-\cs{ClistClearNew} \meta{comma list}
+\cs{clistClearNew} \meta{comma list}
\end{syntax}
Ensures that the \meta{comma list} exists globally by applying
-\cs{ClistNew} if necessary, then applies \cs{ClistClear} to leave
+\cs{clistNew} if necessary, then applies \cs{clistClear} to leave
the list empty.
\begin{demohigh}
-\ClistClearNew \lFooSomeClist
-\ClistSet \lFooSomeClist {one,two,three}
-\ClistVarJoin \lFooSomeClist { and }
+\clistClearNew \lFooSomeClist
+\clistSet \lFooSomeClist {one,two,three}
+\clistVarJoin \lFooSomeClist { and }
\end{demohigh}
\end{function}
-\begin{function}{\ClistConcat}
+\begin{function}{\clistConcat}
\begin{syntax}
-\cs{ClistConcat} \meta{comma list_1} \meta{comma list_2} \meta{comma list_3}
+\cs{clistConcat} \meta{comma list_1} \meta{comma list_2} \meta{comma list_3}
\end{syntax}
Concatenates the content of \meta{comma list_2} and \meta{comma list_3}
together and saves the result in \meta{comma list_1}. The items in
\meta{comma list_2} are placed at the left side of the new comma list.
\begin{demohigh}
-\ClistSet \lTmpbClist {one,two}
-\ClistSet \lTmpcClist {three,four}
-\ClistConcat \lTmpaClist \lTmpbClist \lTmpcClist
-\ClistVarJoin \lTmpaClist { + }
+\clistSet \lTmpbClist {one,two}
+\clistSet \lTmpcClist {three,four}
+\clistConcat \lTmpaClist \lTmpbClist \lTmpcClist
+\clistVarJoin \lTmpaClist { + }
\end{demohigh}
\end{function}
-\begin{function}{\ClistPutLeft}
+\begin{function}{\clistPutLeft}
\begin{syntax}
-\cs{ClistPutLeft} \meta{comma list} \verb|{|\meta{item_1},\ldots{},\meta{item_n}\verb|}|
+\cs{clistPutLeft} \meta{comma list} \verb|{|\meta{item_1},\ldots{},\meta{item_n}\verb|}|
\end{syntax}
Appends the \meta{items} to the left of the \meta{comma list}.
Blank items are omitted, spaces are removed from both sides of each
@@ -4971,17 +4971,17 @@ item, then a set of braces is removed if the resulting space-trimmed
item is braced.
To append some \meta{tokens} as a single \meta{item} even if the
\meta{tokens} contain commas or spaces, add a set of braces:
-\cs{ClistPutLeft} \meta{comma list} \verb|{| \Arg{tokens} \verb|}|.
+\cs{clistPutLeft} \meta{comma list} \verb|{| \Arg{tokens} \verb|}|.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two}
-\ClistPutLeft \lTmpaClist {zero}
-\ClistVarJoin \lTmpaClist { and }
+\clistSet \lTmpaClist {one,two}
+\clistPutLeft \lTmpaClist {zero}
+\clistVarJoin \lTmpaClist { and }
\end{demohigh}
\end{function}
-\begin{function}{\ClistPutRight}
+\begin{function}{\clistPutRight}
\begin{syntax}
-\cs{ClistPutRight} \meta{comma list} \verb|{|\meta{item_1},\ldots{},\meta{item_n}\verb|}|
+\cs{clistPutRight} \meta{comma list} \verb|{|\meta{item_1},\ldots{},\meta{item_n}\verb|}|
\end{syntax}
Appends the \meta{items} to the right of the \meta{comma list}.
Blank items are omitted, spaces are removed from both sides of each
@@ -4989,11 +4989,11 @@ item, then a set of braces is removed if the resulting space-trimmed
item is braced.
To append some \meta{tokens} as a single \meta{item} even if the
\meta{tokens} contain commas or spaces, add a set of braces:
-\cs{ClistPutRight} \meta{comma list} \verb|{| \Arg{tokens} \verb|}|.
+\cs{clistPutRight} \meta{comma list} \verb|{| \Arg{tokens} \verb|}|.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two}
-\ClistPutRight \lTmpaClist {three}
-\ClistVarJoin \lTmpaClist { and }
+\clistSet \lTmpaClist {one,two}
+\clistPutRight \lTmpaClist {three}
+\clistVarJoin \lTmpaClist { and }
\end{demohigh}
\end{function}
@@ -5004,17 +5004,17 @@ necessary to modify the content. The functions here may be used
to update comma lists, while retaining the order of the unaffected
entries.
-\begin{function}{\ClistVarRemoveDuplicates}
+\begin{function}{\clistVarRemoveDuplicates}
\begin{syntax}
-\cs{ClistVarRemoveDuplicates} \meta{comma list}
+\cs{clistVarRemoveDuplicates} \meta{comma list}
\end{syntax}
Removes duplicate items from the \meta{comma list}, leaving the
left most copy of each item in the \meta{comma list}. The \meta{item}
-comparison takes place on a token basis, as for \cs{TlIfEqTF}.
+comparison takes place on a token basis, as for \cs{tlIfEqTF}.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two,one,two,three}
-\ClistVarRemoveDuplicates \lTmpaClist
-\ClistVarJoin \lTmpaClist {,}
+\clistSet \lTmpaClist {one,two,one,two,three}
+\clistVarRemoveDuplicates \lTmpaClist
+\clistVarJoin \lTmpaClist {,}
\end{demohigh}
%\begin{texnote}
%This function iterates through every item in the \meta{comma list} and
@@ -5026,17 +5026,17 @@ comparison takes place on a token basis, as for \cs{TlIfEqTF}.
%\end{texnote}
\end{function}
-\begin{function}{\ClistVarRemoveAll}
+\begin{function}{\clistVarRemoveAll}
\begin{syntax}
-\cs{ClistVarRemoveAll} \meta{comma list} \Arg{item}
+\cs{clistVarRemoveAll} \meta{comma list} \Arg{item}
\end{syntax}
Removes every occurrence of \meta{item} from the \meta{comma list}.
The \meta{item} comparison takes place on a token basis, as for
-\cs{TlIfEqTF}.
+\cs{tlIfEqTF}.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two,one,two,three}
-\ClistVarRemoveAll \lTmpaClist {two}
-\ClistVarJoin \lTmpaClist {,}
+\clistSet \lTmpaClist {one,two,one,two,three}
+\clistVarRemoveAll \lTmpaClist {two}
+\clistVarJoin \lTmpaClist {,}
\end{demohigh}
%\begin{texnote}
%The function may fail if the \meta{item} contains \verb|{|, \verb|}|, or \verb|#|
@@ -5044,21 +5044,21 @@ The \meta{item} comparison takes place on a token basis, as for
%\end{texnote}
\end{function}
-\begin{function}{\ClistVarReverse}
+\begin{function}{\clistVarReverse}
\begin{syntax}
-\cs{ClistVarReverse} \meta{comma list}
+\cs{clistVarReverse} \meta{comma list}
\end{syntax}
Reverses the order of items stored in the \meta{comma list}.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two,one,two,three}
-\ClistVarReverse \lTmpaClist
-\ClistVarJoin \lTmpaClist {,}
+\clistSet \lTmpaClist {one,two,one,two,three}
+\clistVarReverse \lTmpaClist
+\clistVarJoin \lTmpaClist {,}
\end{demohigh}
\end{function}
-%\begin{function}{\ClistVarSort}
+%\begin{function}{\clistVarSort}
%\begin{syntax}
-%\cs{ClistVarSort} \meta{clist var} \Arg{comparison code}
+%\cs{clistVarSort} \meta{clist var} \Arg{comparison code}
%\end{syntax}
%Sorts the items in the \meta{clist var} according to the
%\meta{comparison code}, and assigns the result to
@@ -5068,24 +5068,24 @@ Reverses the order of items stored in the \meta{comma list}.
\section{Working with the Contents of Comma Lists}
-\begin{function}{\ClistCount,\ClistVarCount}
+\begin{function}{\clistCount,\clistVarCount}
\begin{syntax}
-\cs{ClistCount} \Arg{comma list}
-\cs{ClistVarCount} \meta{comma list}
+\cs{clistCount} \Arg{comma list}
+\cs{clistVarCount} \meta{comma list}
\end{syntax}
Returns the number of items in the \meta{comma list}
as an \meta{integer denotation}. The total number of items
in a \meta{comma list} includes those which are duplicates,
\emph{i.e.} every item in a \meta{comma list} is counted.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two,three,four}
-\ClistVarCount \lTmpaClist
+\clistSet \lTmpaClist {one,two,three,four}
+\clistVarCount \lTmpaClist
\end{demohigh}
\end{function}
-\begin{function}{\ClistItem}
+\begin{function}{\clistItem}
\begin{syntax}
-\cs{ClistItem} \Arg{comma list} \Arg{integer expression}
+\cs{clistItem} \Arg{comma list} \Arg{integer expression}
\end{syntax}
Indexing items in the \meta{comma list} from $1$ at the top (left), this
function evaluates the \meta{integer expression} and returns the
@@ -5093,10 +5093,10 @@ appropriate item from the comma list. If the
\meta{integer expression} is negative, indexing occurs from the
bottom (right) of the comma list. When the \meta{integer expression}
is larger than the number of items in the \meta{comma list} (as
-calculated by \cs{ClistCount}) then the function returns nothing.
+calculated by \cs{clistCount}) then the function returns nothing.
\begin{demohigh}
-\TlSet \lTmpaTl {\ClistItem {one,two,three,four} {3}}
-\TlUse \lTmpaTl
+\tlSet \lTmpaTl {\clistItem {one,two,three,four} {3}}
+\tlUse \lTmpaTl
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -5106,9 +5106,9 @@ calculated by \cs{ClistCount}) then the function returns nothing.
%\end{texnote}
\end{function}
-\begin{function}{\ClistVarItem}
+\begin{function}{\clistVarItem}
\begin{syntax}
-\cs{ClistVarItem} \meta{comma list} \Arg{integer expression}
+\cs{clistVarItem} \meta{comma list} \Arg{integer expression}
\end{syntax}
Indexing items in the \meta{comma list} from $1$ at the top (left), this
function evaluates the \meta{integer expression} and returns the
@@ -5116,11 +5116,11 @@ appropriate item from the comma list. If the
\meta{integer expression} is negative, indexing occurs from the
bottom (right) of the comma list. When the \meta{integer expression}
is larger than the number of items in the \meta{comma list} (as
-calculated by \cs{ClistVarCount}) then the function returns nothing.
+calculated by \cs{clistVarCount}) then the function returns nothing.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two,three,four}
-\TlSet \lTmpaTl {\ClistVarItem \lTmpaClist {3}}
-\TlUse \lTmpaTl
+\clistSet \lTmpaClist {one,two,three,four}
+\tlSet \lTmpaTl {\clistVarItem \lTmpaClist {3}}
+\tlUse \lTmpaTl
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -5130,18 +5130,18 @@ calculated by \cs{ClistVarCount}) then the function returns nothing.
%\end{texnote}
\end{function}
-\begin{function}{\ClistRandItem,\ClistVarRandItem}
+\begin{function}{\clistRandItem,\clistVarRandItem}
\begin{syntax}
-\cs{ClistRandItem} \Arg{comma list}
-\cs{ClistVarRandItem} \meta{clist var}
+\cs{clistRandItem} \Arg{comma list}
+\cs{clistVarRandItem} \meta{clist var}
\end{syntax}
Selects a pseudo-random item of the \meta{comma list}.
If the \meta{comma list} has no item, the result is empty.
\begin{demohigh}
-\TlSet \lTmpaTl {\ClistRandItem {one,two,three,four,five,six}}
-\TlUse \lTmpaTl
-\TlSet \lTmpaTl {\ClistRandItem {one,two,three,four,five,six}}
-\TlUse \lTmpaTl
+\tlSet \lTmpaTl {\clistRandItem {one,two,three,four,five,six}}
+\tlUse \lTmpaTl
+\tlSet \lTmpaTl {\clistRandItem {one,two,three,four,five,six}}
+\tlUse \lTmpaTl
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -5160,9 +5160,9 @@ intended to be mixed with the general ordered data functions detailed
in the previous section: a comma list should either be used as an
ordered data type or as a stack, but not in both ways.
-\begin{function}{\ClistGet}
+\begin{function}{\clistGet}
\begin{syntax}
-\cs{ClistGet} \meta{comma list} \meta{token list variable}
+\cs{clistGet} \meta{comma list} \meta{token list variable}
\end{syntax}
Stores the left-most item from the \meta{comma list} in the
\meta{token list variable} without removing it from the
@@ -5170,17 +5170,17 @@ Stores the left-most item from the \meta{comma list} in the
If the \meta{comma list} is empty the
\meta{token list variable} is set to the marker value \cs{qNoValue}.
\begin{demohigh}
-\ClistSet \lTmpaClist {two,three,four}
-\ClistGet \lTmpaClist \lTmpaTl
-\TlUse \lTmpaTl
+\clistSet \lTmpaClist {two,three,four}
+\clistGet \lTmpaClist \lTmpaTl
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\ClistGetT,\ClistGetF,\ClistGetTF}
+\begin{function}{\clistGetT,\clistGetF,\clistGetTF}
\begin{syntax}
-\cs{ClistGetT} \meta{comma list} \meta{token list variable} \meta{true code}
-\cs{ClistGetF} \meta{comma list} \meta{token list variable} \meta{false code}
-\cs{ClistGetTF} \meta{comma list} \meta{token list variable} \meta{true code} \meta{false code}
+\cs{clistGetT} \meta{comma list} \meta{token list variable} \meta{true code}
+\cs{clistGetF} \meta{comma list} \meta{token list variable} \meta{false code}
+\cs{clistGetTF} \meta{comma list} \meta{token list variable} \meta{true code} \meta{false code}
\end{syntax}
If the \meta{comma list} is empty, leaves the \meta{false code} in the
input stream. The value of the \meta{token list variable} is
@@ -5190,14 +5190,14 @@ not defined in this case and should not be relied upon. If the
it from the \meta{comma list}.
The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\ClistSet \lTmpaClist {two,three,four}
-\ClistGetTF \lTmpaClist \lTmpaTl {\Return{Yes}} {\Return{No}}
+\clistSet \lTmpaClist {two,three,four}
+\clistGetTF \lTmpaClist \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\ClistPop}
+\begin{function}{\clistPop}
\begin{syntax}
-\cs{ClistPop} \meta{comma list} \meta{token list variable}
+\cs{clistPop} \meta{comma list} \meta{token list variable}
\end{syntax}
Pops the left-most item from a \meta{comma list} into the
\meta{token list variable}, \emph{i.e.} removes the item from the
@@ -5206,17 +5206,17 @@ The assignment of the \meta{token list variable} is local.
If the \meta{comma list} is empty the
\meta{token list variable} is set to the marker value \cs{qNoValue}.
\begin{demohigh}
-\ClistSet \lTmpaClist {two,three,four}
-\ClistPop \lTmpaClist \lTmpaTl
-\ClistVarJoin \lTmpaClist {,}
+\clistSet \lTmpaClist {two,three,four}
+\clistPop \lTmpaClist \lTmpaTl
+\clistVarJoin \lTmpaClist {,}
\end{demohigh}
\end{function}
-\begin{function}{\ClistPopT,\ClistPopF,\ClistPopTF}
+\begin{function}{\clistPopT,\clistPopF,\clistPopTF}
\begin{syntax}
-\cs{ClistPopT} \meta{comma list} \meta{token list variable} \Arg{true code}
-\cs{ClistPopF} \meta{comma list} \meta{token list variable} \Arg{false code}
-\cs{ClistPopTF} \meta{comma list} \meta{token list variable} \Arg{true code} \Arg{false code}
+\cs{clistPopT} \meta{comma list} \meta{token list variable} \Arg{true code}
+\cs{clistPopF} \meta{comma list} \meta{token list variable} \Arg{false code}
+\cs{clistPopTF} \meta{comma list} \meta{token list variable} \Arg{true code} \Arg{false code}
\end{syntax}
If the \meta{comma list} is empty, leaves the \meta{false code} in the
input stream. The value of the \meta{token list variable} is
@@ -5226,22 +5226,22 @@ not defined in this case and should not be relied upon. If the
the item from the \meta{comma list}.
The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\ClistSet \lTmpaClist {two,three,four}
-\ClistPopTF \lTmpaClist \lTmpaTl {\Return{Yes}} {\Return{No}}
+\clistSet \lTmpaClist {two,three,four}
+\clistPopTF \lTmpaClist \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\ClistPush}
+\begin{function}{\clistPush}
\begin{syntax}
-\cs{ClistPush} \meta{comma list} \Arg{items}
+\cs{clistPush} \meta{comma list} \Arg{items}
\end{syntax}
Adds the \Arg{items} to the top of the \meta{comma list}.
Spaces are removed from both sides of each item as for any
\texttt{n}-type comma list.
\begin{demohigh}
-\ClistSet \lTmpaClist {two,three,four}
-\ClistPush \lTmpaClist {zero,one}
-\ClistVarJoin \lTmpaClist {|}
+\clistSet \lTmpaClist {two,three,four}
+\clistPush \lTmpaClist {zero,one}
+\clistVarJoin \lTmpaClist {|}
\end{demohigh}
\end{function}
@@ -5267,22 +5267,22 @@ have already been trimmed on input, and items are simply stripped
of one set of braces if any. This case is more efficient than using
explicit comma lists.
-%\begin{function}{\ClistMapFunction,\ClistVarMapFunction}
+%\begin{function}{\clistMapFunction,\clistVarMapFunction}
%\begin{syntax}
-%\cs{ClistMapFunction} \Arg{comma list} \meta{function}
-%\cs{ClistVarMapFunction} \meta{comma list} \meta{function}
+%\cs{clistMapFunction} \Arg{comma list} \meta{function}
+%\cs{clistVarMapFunction} \meta{comma list} \meta{function}
%\end{syntax}
%Applies \meta{function} to every \meta{item} stored in the
%\meta{comma list}. The \meta{function} receives one argument for
%each iteration. The \meta{items} are returned from left to right.
-%The function \cs{ClistMapInline} is in general more efficient
-%than \cs{ClistMapFunction}.
+%The function \cs{clistMapInline} is in general more efficient
+%than \cs{clistMapFunction}.
%\end{function}
-\begin{function}{\ClistMapInline,\ClistVarMapInline}
+\begin{function}{\clistMapInline,\clistVarMapInline}
\begin{syntax}
-\cs{ClistMapInline} \Arg{comma list} \Arg{inline function}
-\cs{ClistVarMapInline} \meta{comma list} \Arg{inline function}
+\cs{clistMapInline} \Arg{comma list} \Arg{inline function}
+\cs{clistVarMapInline} \meta{comma list} \Arg{inline function}
\end{syntax}
Applies \meta{inline function} to every \meta{item} stored
within the \meta{comma list}. The \meta{inline function} should
@@ -5290,19 +5290,19 @@ consist of code which receives the \meta{item} as \verb|#1|.
The \meta{items} are returned from left to right.
\begin{demohigh}
\IgnoreSpacesOn
-\TlClear \lTmpaTl
-\ClistMapInline {one,two,three} {
- \TlPutRight \lTmpaTl {(#1)}
+\tlClear \lTmpaTl
+\clistMapInline {one,two,three} {
+ \tlPutRight \lTmpaTl {(#1)}
}
-\TlUse \lTmpaTl
+\tlUse \lTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-\begin{function}{\ClistMapVariable,\ClistVarMapVariable}
+\begin{function}{\clistMapVariable,\clistVarMapVariable}
\begin{syntax}
-\cs{ClistMapVariable} \Arg{comma list} \meta{variable} \Arg{code}
-\cs{ClistVarMapVariable} \meta{comma list} \meta{variable} \Arg{code}
+\cs{clistMapVariable} \Arg{comma list} \meta{variable} \Arg{code}
+\cs{clistVarMapVariable} \meta{comma list} \meta{variable} \Arg{code}
\end{syntax}
Stores each \meta{item} of the \meta{comma list} in turn in the
(token list) \meta{variable} and applies the \meta{code}. The
@@ -5313,28 +5313,28 @@ list}, or its original value if there were no \meta{item}. The
\meta{items} are returned from left to right.
\begin{demohigh}
\IgnoreSpacesOn
-\ClistMapVariable {one,two,three} \lTmpiTl {
- \TlPutRight \gTmpaTl {\Expand {(\lTmpiTl)}}
+\clistMapVariable {one,two,three} \lTmpiTl {
+ \tlPutRight \gTmpaTl {\expWhole {(\lTmpiTl)}}
}
-\TlUse \gTmpaTl
+\tlUse \gTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-%\begin{function}{\ClistMapTokens,\ClistVarMapTokens}
+%\begin{function}{\clistMapTokens,\clistVarMapTokens}
%\begin{syntax}
-%\cs{ClistMapTokens} \Arg{comma list} \Arg{code}
-%\cs{ClistVarMapTokens} \meta{clist var} \Arg{code}
+%\cs{clistMapTokens} \Arg{comma list} \Arg{code}
+%\cs{clistVarMapTokens} \meta{clist var} \Arg{code}
%\end{syntax}
%Calls \meta{code} \Arg{item} for every \meta{item} stored in the
%\meta{comma list}. The \meta{code} receives each \meta{item} as a
%trailing brace group. If the \meta{code} consists of a single
-%function this is equivalent to \cs{ClistMapFunction} or \cs{ClistVarMapFunction}.
+%function this is equivalent to \cs{clistMapFunction} or \cs{clistVarMapFunction}.
%\end{function}
-%\begin{function}{\ClistMapBreak}
+%\begin{function}{\clistMapBreak}
%\begin{syntax}
-%\cs{ClistMapBreak}
+%\cs{clistMapBreak}
%\end{syntax}
%Used to terminate a clist map function before all
%entries in the \meta{comma list} have been processed. This
@@ -5359,9 +5359,9 @@ list}, or its original value if there were no \meta{item}. The
%\end{texnote}
%\end{function}
%
-%\begin{function}{\ClistMapBreakDo}
+%\begin{function}{\clistMapBreakDo}
%\begin{syntax}
-%\cs{ClistMapBreakDo} \Arg{code}
+%\cs{clistMapBreakDo} \Arg{code}
%\end{syntax}
%Used to terminate a clist map function before all
%entries in the \meta{comma list} have been processed, inserting
@@ -5389,27 +5389,27 @@ list}, or its original value if there were no \meta{item}. The
\section{Comma List Conditionals}
-\begin{function}{\ClistIfExist,\ClistIfExistT,\ClistIfExistF,\ClistIfExistTF}
+\begin{function}{\clistIfExist,\clistIfExistT,\clistIfExistF,\clistIfExistTF}
\begin{syntax}
-\cs{ClistIfExist} \meta{comma list}
-\cs{ClistIfExistT} \meta{comma list} \Arg{true code}
-\cs{ClistIfExistF} \meta{comma list} \Arg{false code}
-\cs{ClistIfExistTF} \meta{comma list} \Arg{true code} \Arg{false code}
+\cs{clistIfExist} \meta{comma list}
+\cs{clistIfExistT} \meta{comma list} \Arg{true code}
+\cs{clistIfExistF} \meta{comma list} \Arg{false code}
+\cs{clistIfExistTF} \meta{comma list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{comma list} is currently defined. This does
not check that the \meta{comma list} really is a comma list.
\begin{demohigh}
-\ClistIfExistTF \lTmpaClist {\Return{Yes}} {\Return{No}}
-\ClistIfExistTF \lFooUndefinedClist {\Return{Yes}} {\Return{No}}
+\clistIfExistTF \lTmpaClist {\prgReturn{Yes}} {\prgReturn{No}}
+\clistIfExistTF \lFooUndefinedClist {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\ClistIfEmpty,\ClistIfEmptyT,\ClistIfEmptyF,\ClistIfEmptyTF}
+\begin{function}{\clistIfEmpty,\clistIfEmptyT,\clistIfEmptyF,\clistIfEmptyTF}
\begin{syntax}
-\cs{ClistIfEmpty} \Arg{comma list}
-\cs{ClistIfEmptyT} \Arg{comma list} \Arg{true code}
-\cs{ClistIfEmptyF} \Arg{comma list} \Arg{false code}
-\cs{ClistIfEmptyTF} \Arg{comma list} \Arg{true code} \Arg{false code}
+\cs{clistIfEmpty} \Arg{comma list}
+\cs{clistIfEmptyT} \Arg{comma list} \Arg{true code}
+\cs{clistIfEmptyF} \Arg{comma list} \Arg{false code}
+\cs{clistIfEmptyTF} \Arg{comma list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{comma list} is empty (containing no items).
The rules for space trimming are as for other \texttt{n}-type
@@ -5418,40 +5418,40 @@ outer braces) is empty, while \verb|{ ,{},}| (without outer braces)
contains one element, which happens to be empty: the comma-list
is not empty.
\begin{demohigh}
-\ClistIfEmptyTF {one,two} {\Return{Empty}} {\Return{NonEmpty}}
-\ClistIfEmptyTF { , } {\Return{Empty}} {\Return{NonEmpty}}
+\clistIfEmptyTF {one,two} {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
+\clistIfEmptyTF { , } {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
\end{demohigh}
\end{function}
-\begin{function}{\ClistVarIfEmpty,\ClistVarIfEmptyT,\ClistVarIfEmptyF,\ClistVarIfEmptyTF}
+\begin{function}{\clistVarIfEmpty,\clistVarIfEmptyT,\clistVarIfEmptyF,\clistVarIfEmptyTF}
\begin{syntax}
-\cs{ClistVarIfEmpty} \meta{comma list}
-\cs{ClistVarIfEmptyT} \meta{comma list} \Arg{true code}
-\cs{ClistVarIfEmptyF} \meta{comma list} \Arg{false code}
-\cs{ClistVarIfEmptyTF} \meta{comma list} \Arg{true code} \Arg{false code}
+\cs{clistVarIfEmpty} \meta{comma list}
+\cs{clistVarIfEmptyT} \meta{comma list} \Arg{true code}
+\cs{clistVarIfEmptyF} \meta{comma list} \Arg{false code}
+\cs{clistVarIfEmptyTF} \meta{comma list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{comma list} is empty (containing no items).
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two}
-\ClistVarIfEmptyTF \lTmpaClist {\Return{Empty}} {\Return{NonEmpty}}
-\ClistClear \lTmpaClist
-\ClistVarIfEmptyTF \lTmpaClist {\Return{Empty}} {\Return{NonEmpty}}
+\clistSet \lTmpaClist {one,two}
+\clistVarIfEmptyTF \lTmpaClist {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
+\clistClear \lTmpaClist
+\clistVarIfEmptyTF \lTmpaClist {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
\end{demohigh}
\end{function}
-\begin{function}{\ClistIfIn,\ClistIfInT,\ClistIfInF,\ClistIfInTF}
+\begin{function}{\clistIfIn,\clistIfInT,\clistIfInF,\clistIfInTF}
\begin{syntax}
-\cs{ClistIfIn} \Arg{comma list} \Arg{item}
-\cs{ClistIfInT} \Arg{comma list} \Arg{item} \Arg{true code}
-\cs{ClistIfInF} \Arg{comma list} \Arg{item} \Arg{false code}
-\cs{ClistIfInTF} \Arg{comma list} \Arg{item} \Arg{true code} \Arg{false code}
+\cs{clistIfIn} \Arg{comma list} \Arg{item}
+\cs{clistIfInT} \Arg{comma list} \Arg{item} \Arg{true code}
+\cs{clistIfInF} \Arg{comma list} \Arg{item} \Arg{false code}
+\cs{clistIfInTF} \Arg{comma list} \Arg{item} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{item} is present in the \meta{comma list}.
In the case of an \texttt{n}-type \meta{comma list}, the usual rules
of space trimming and brace stripping apply. For example
\begin{demohigh}
-\ClistIfInTF { a , {b} , {b} , c } {b} {\Return{Yes}} {\Return{No}}
-\ClistIfInTF { a , {b} , {b} , c } {d} {\Return{Yes}} {\Return{No}}
+\clistIfInTF { a , {b} , {b} , c } {b} {\prgReturn{Yes}} {\prgReturn{No}}
+\clistIfInTF { a , {b} , {b} , c } {d} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
%\begin{texnote}
%The function may fail if the \meta{item} contains \verb|{|, \verb|}|, or \verb|#|
@@ -5459,20 +5459,20 @@ of space trimming and brace stripping apply. For example
%\end{texnote}
\end{function}
-\begin{function}{\ClistVarIfIn,\ClistVarIfInT,\ClistVarIfInF,\ClistVarIfInTF}
+\begin{function}{\clistVarIfIn,\clistVarIfInT,\clistVarIfInF,\clistVarIfInTF}
\begin{syntax}
-\cs{ClistVarIfIn} \meta{comma list} \Arg{item}
-\cs{ClistVarIfInT} \meta{comma list} \Arg{item} \Arg{true code}
-\cs{ClistVarIfInF} \meta{comma list} \Arg{item} \Arg{false code}
-\cs{ClistVarIfInTF} \meta{comma list} \Arg{item} \Arg{true code} \Arg{false code}
+\cs{clistVarIfIn} \meta{comma list} \Arg{item}
+\cs{clistVarIfInT} \meta{comma list} \Arg{item} \Arg{true code}
+\cs{clistVarIfInF} \meta{comma list} \Arg{item} \Arg{false code}
+\cs{clistVarIfInTF} \meta{comma list} \Arg{item} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{item} is present in the \meta{comma list}.
In the case of an \texttt{n}-type \meta{comma list}, the usual rules
of space trimming and brace stripping apply.
\begin{demohigh}
-\ClistSet \lTmpaClist {one,two}
-\ClistVarIfInTF \lTmpaClist {one} {\Return{Yes}} {\Return{No}}
-\ClistVarIfInTF \lTmpaClist {three} {\Return{Yes}} {\Return{No}}
+\clistSet \lTmpaClist {one,two}
+\clistVarIfInTF \lTmpaClist {one} {\prgReturn{Yes}} {\prgReturn{No}}
+\clistVarIfInTF \lTmpaClist {three} {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
%\begin{texnote}
%The function may fail if the \meta{item} contains \verb|{|, \verb|}|, or \verb|#|
@@ -5504,33 +5504,33 @@ code and so should only be used for short-term storage.
\section{Creating and Using Sequences}
-\begin{function}{\SeqNew}
+\begin{function}{\seqNew}
\begin{syntax}
-\cs{SeqNew} \meta{sequence}
+\cs{seqNew} \meta{sequence}
\end{syntax}
Creates a new \meta{sequence} or raises an error if the name is
already taken. The declaration is global. The \meta{sequence}
initially contains no items.
\begin{codehigh}
-\SeqNew \lFooSomeSeq
+\seqNew \lFooSomeSeq
\end{codehigh}
\end{function}
-\begin{function}{\SeqConstFromClist}
+\begin{function}{\seqConstFromClist}
\begin{syntax}
-\cs{SeqConstFromClist} \meta{seq var} \Arg{comma-list}
+\cs{seqConstFromClist} \meta{seq var} \Arg{comma-list}
\end{syntax}
Creates a new constant \meta{seq var} or raises an error if the name
is already taken. The \meta{seq var} is set globally to contain the
items in the \meta{comma list}.
\begin{codehigh}
-\SeqConstFromClist \cFooSomeSeq {one,two,three}
+\seqConstFromClist \cFooSomeSeq {one,two,three}
\end{codehigh}
\end{function}
-\begin{function}{\SeqVarJoin}
+\begin{function}{\seqVarJoin}
\begin{syntax}
-\cs{SeqVarJoin} \meta{seq var} \Arg{separator}
+\cs{seqVarJoin} \meta{seq var} \Arg{separator}
\end{syntax}
Returns the contents of the \meta{seq var}, with
the \meta{separator} between the items. If the sequence has
@@ -5538,8 +5538,8 @@ a single item, it is returned with no \meta{separator},
and an empty sequence returns nothing. An error is raised if
the variable does not exist or if it is invalid.
\begin{demohigh}
-\SeqSetSplit \lTmpaSeq {|} {a|b|c|{de}|f}
-\SeqVarJoin \lTmpaSeq { and }
+\seqSetSplit \lTmpaSeq {|} {a|b|c|{de}|f}
+\seqVarJoin \lTmpaSeq { and }
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -5549,9 +5549,9 @@ the variable does not exist or if it is invalid.
%\end{texnote}
\end{function}
-\begin{function}{\SeqVarJoinExtended}
+\begin{function}{\seqVarJoinExtended}
\begin{syntax}
-\cs{SeqVarJoinExtended} \meta{seq var} \Arg{separator between two} \Arg{separator between more than two} \Arg{separator between final two}
+\cs{seqVarJoinExtended} \meta{seq var} \Arg{separator between two} \Arg{separator between more than two} \Arg{separator between final two}
\end{syntax}
Returns the contents of the \meta{seq var}, with
the appropriate \meta{separator} between the items. Namely, if the
@@ -5564,8 +5564,8 @@ a single item, it is returned, and an empty sequence
returns nothing. An error is raised if the variable does
not exist or if it is invalid.
\begin{demohigh}
-\SeqSetSplit \lTmpaSeq {|} {a|b|c|{de}|f}
-\SeqVarJoinExtended \lTmpaSeq { and } {, } {, and }
+\seqSetSplit \lTmpaSeq {|} {a|b|c|{de}|f}
+\seqVarJoinExtended \lTmpaSeq { and } {, } {, and }
\end{demohigh}
The first separator argument is not used in this case
because the sequence has more than $2$ items.
@@ -5579,43 +5579,43 @@ because the sequence has more than $2$ items.
\section{Viewing Sequences}
-\begin{function}{\SeqVarLog}
+\begin{function}{\seqVarLog}
\begin{syntax}
-\cs{SeqVarLog} \meta{sequence}
+\cs{seqVarLog} \meta{sequence}
\end{syntax}
Writes the entries in the \meta{sequence} in the log file.
\begin{codehigh}
-\SeqVarLog \lFooSomeSeq
+\seqVarLog \lFooSomeSeq
\end{codehigh}
\end{function}
-\begin{function}{\SeqVarShow}
+\begin{function}{\seqVarShow}
\begin{syntax}
-\cs{SeqVarShow} \meta{sequence}
+\cs{seqVarShow} \meta{sequence}
\end{syntax}
Displays the entries in the \meta{sequence} in the terminal.
\begin{codehigh}
-\SeqVarShow \lFooSomeSeq
+\seqVarShow \lFooSomeSeq
\end{codehigh}
\end{function}
\section{Setting Sequences}
-\begin{function}{\SeqSetFromClist}
+\begin{function}{\seqSetFromClist}
\begin{syntax}
-\cs{SeqSetFromClist} \meta{sequence} \meta{comma-list}
+\cs{seqSetFromClist} \meta{sequence} \meta{comma-list}
\end{syntax}
Converts the data in the \meta{comma list} into a \meta{sequence}:
the original \meta{comma list} is unchanged.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two,three}
-\SeqVarJoin \lTmpaSeq { and }
+\seqSetFromClist \lTmpaSeq {one,two,three}
+\seqVarJoin \lTmpaSeq { and }
\end{demohigh}
\end{function}
-\begin{function}{\SeqSetSplit}
+\begin{function}{\seqSetSplit}
\begin{syntax}
-\cs{SeqSetSplit} \meta{sequence} \Arg{delimiter} \Arg{token list}
+\cs{seqSetSplit} \meta{sequence} \Arg{delimiter} \Arg{token list}
\end{syntax}
Splits the \meta{token list} into \meta{items} separated
by \meta{delimiter}, and assigns the result to the \meta{sequence}.
@@ -5623,110 +5623,110 @@ Spaces on both sides of each \meta{item} are ignored,
then one set of outer braces is removed (if any);
this space trimming behaviour is identical to that of
\pkg{Clist} functions. Empty \meta{items} are preserved by
-\cs{SeqSetSplit}, and can be removed afterwards using
-\cs{SeqVarRemoveAll} \meta{sequence} \verb|{}|.
+\cs{seqSetSplit}, and can be removed afterwards using
+\cs{seqVarRemoveAll} \meta{sequence} \verb|{}|.
The \meta{delimiter} may not contain \verb|{|, \verb|}| or \verb|#|
(assuming \TeX{}'s normal category code r\'egime).
If the \meta{delimiter} is empty, the \meta{token list} is split
into \meta{items} as a \meta{token list}.
-%See also \cs{SeqSetSplitKeepSpaces}, which omits space stripping.
+%See also \cs{seqSetSplitKeepSpaces}, which omits space stripping.
\begin{demohigh}
-\SeqSetSplit \lTmpaSeq {,} {1,2,3}
-\SeqVarJoin \lTmpaSeq { and }
+\seqSetSplit \lTmpaSeq {,} {1,2,3}
+\seqVarJoin \lTmpaSeq { and }
\end{demohigh}
\end{function}
-\begin{function}{\SeqSetEq}
+\begin{function}{\seqSetEq}
\begin{syntax}
-\cs{SeqSetEq} \meta{sequence_1} \meta{sequence_2}
+\cs{seqSetEq} \meta{sequence_1} \meta{sequence_2}
\end{syntax}
Sets the content of \meta{sequence_1} equal to that of
\meta{sequence_2}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two,three,four}
-\SeqSetEq \lTmpbSeq \lTmpaSeq
-\SeqVarJoin \lTmpbSeq { and }
+\seqSetFromClist \lTmpaSeq {one,two,three,four}
+\seqSetEq \lTmpbSeq \lTmpaSeq
+\seqVarJoin \lTmpbSeq { and }
\end{demohigh}
\end{function}
-\begin{function}{\SeqClear}
+\begin{function}{\seqClear}
\begin{syntax}
-\cs{SeqClear} \meta{sequence}
+\cs{seqClear} \meta{sequence}
\end{syntax}
Clears all items from the \meta{sequence}.
\begin{codehigh}
-\SeqClear \lTmpaSeq
+\seqClear \lTmpaSeq
\end{codehigh}
\end{function}
-\begin{function}{\SeqClearNew}
+\begin{function}{\seqClearNew}
\begin{syntax}
-\cs{SeqClearNew} \meta{sequence}
+\cs{seqClearNew} \meta{sequence}
\end{syntax}
Ensures that the \meta{sequence} exists globally by applying
-\cs{SeqNew} if necessary, then applies \cs{SeqClear} to leave
+\cs{seqNew} if necessary, then applies \cs{seqClear} to leave
the \meta{sequence} empty.
\begin{demohigh}
-\SeqClearNew \lFooSomeSeq
-\SeqSetFromClist \lFooSomeSeq {one,two,three}
-\SeqVarJoin \lFooSomeSeq { and }
+\seqClearNew \lFooSomeSeq
+\seqSetFromClist \lFooSomeSeq {one,two,three}
+\seqVarJoin \lFooSomeSeq { and }
\end{demohigh}
\end{function}
-\begin{function}{\SeqConcat}
+\begin{function}{\seqConcat}
\begin{syntax}
-\cs{SeqConcat} \meta{sequence_1} \meta{sequence_2} \meta{sequence_3}
+\cs{seqConcat} \meta{sequence_1} \meta{sequence_2} \meta{sequence_3}
\end{syntax}
Concatenates the content of \meta{sequence_2} and \meta{sequence_3}
together and saves the result in \meta{sequence_1}. The items in
\meta{sequence_2} are placed at the left side of the new sequence.
\begin{demohigh}
-\SeqSetFromClist \lTmpbSeq {one,two}
-\SeqSetFromClist \lTmpcSeq {three,four}
-\SeqConcat \lTmpaSeq \lTmpbSeq \lTmpcSeq
-\SeqVarJoin \lTmpaSeq {, }
+\seqSetFromClist \lTmpbSeq {one,two}
+\seqSetFromClist \lTmpcSeq {three,four}
+\seqConcat \lTmpaSeq \lTmpbSeq \lTmpcSeq
+\seqVarJoin \lTmpaSeq {, }
\end{demohigh}
\end{function}
-%\begin{function}{\SeqSetSplitKeepSpaces}
+%\begin{function}{\seqSetSplitKeepSpaces}
%\begin{syntax}
-%\cs{SeqSetSplitKeepSpaces} \meta{sequence} \Arg{delimiter} \Arg{token list}
+%\cs{seqSetSplitKeepSpaces} \meta{sequence} \Arg{delimiter} \Arg{token list}
%\end{syntax}
%Splits the \meta{token list} into \meta{items} separated
%by \meta{delimiter}, and assigns the result to the \meta{sequence}.
%One set of outer braces is removed (if any) but any surrounding spaces
%are retained: any braces \emph{inside} one or more spaces are
%therefore kept. Empty \meta{items} are preserved by
-%\cs{SeqSetSplitKeepSpaces}, and can be removed afterwards using
-%\cs{SeqVarRemoveAll} \meta{sequence} \verb|{}|.
+%\cs{seqSetSplitKeepSpaces}, and can be removed afterwards using
+%\cs{seqVarRemoveAll} \meta{sequence} \verb|{}|.
%The \meta{delimiter} may not contain \verb|{|, \verb|}| or \verb|#|
%(assuming \TeX{}'s normal category code r\'egime).
%If the \meta{delimiter} is empty, the \meta{token list} is split
%into \meta{items} as a \meta{token list}.
-%%See also \cs{SeqSetSplit}, which removes spaces around the delimiters.
+%%See also \cs{seqSetSplit}, which removes spaces around the delimiters.
%\end{function}
-\begin{function}{\SeqPutLeft}
+\begin{function}{\seqPutLeft}
\begin{syntax}
-\cs{SeqPutLeft} \meta{sequence} \Arg{item}
+\cs{seqPutLeft} \meta{sequence} \Arg{item}
\end{syntax}
Appends the \meta{item} to the left of the \meta{sequence}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two}
-\SeqPutLeft \lTmpaSeq {zero}
-\SeqVarJoin \lTmpaSeq { and }
+\seqSetFromClist \lTmpaSeq {one,two}
+\seqPutLeft \lTmpaSeq {zero}
+\seqVarJoin \lTmpaSeq { and }
\end{demohigh}
\end{function}
-\begin{function}{\SeqPutRight}
+\begin{function}{\seqPutRight}
\begin{syntax}
-\cs{SeqPutRight} \meta{sequence} \Arg{item}
+\cs{seqPutRight} \meta{sequence} \Arg{item}
\end{syntax}
Appends the \meta{item} to the right of the \meta{sequence}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two}
-\SeqPutRight \lTmpaSeq {three}
-\SeqVarJoin \lTmpaSeq { and }
+\seqSetFromClist \lTmpaSeq {one,two}
+\seqPutRight \lTmpaSeq {three}
+\seqVarJoin \lTmpaSeq { and }
\end{demohigh}
\end{function}
@@ -5737,17 +5737,17 @@ necessary to modify the content. The functions here may be used
to update sequences, while retaining the order of the unaffected
entries.
-\begin{function}{\SeqVarRemoveDuplicates}
+\begin{function}{\seqVarRemoveDuplicates}
\begin{syntax}
-\cs{SeqVarRemoveDuplicates} \meta{sequence}
+\cs{seqVarRemoveDuplicates} \meta{sequence}
\end{syntax}
Removes duplicate items from the \meta{sequence}, leaving the
left most copy of each item in the \meta{sequence}. The \meta{item}
-comparison takes place on a token basis, as for \cs{TlIfEqTF}.
+comparison takes place on a token basis, as for \cs{tlIfEqTF}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two,one,two,three}
-\SeqVarRemoveDuplicates \lTmpaSeq
-\SeqVarJoin \lTmpaSeq {,}
+\seqSetFromClist \lTmpaSeq {one,two,one,two,three}
+\seqVarRemoveDuplicates \lTmpaSeq
+\seqVarJoin \lTmpaSeq {,}
\end{demohigh}
%\begin{texnote}
%This function iterates through every item in the \meta{sequence} and
@@ -5756,34 +5756,34 @@ comparison takes place on a token basis, as for \cs{TlIfEqTF}.
%\end{texnote}
\end{function}
-\begin{function}{\SeqVarRemoveAll}
+\begin{function}{\seqVarRemoveAll}
\begin{syntax}
-\cs{SeqVarRemoveAll} \meta{sequence} \Arg{item}
+\cs{seqVarRemoveAll} \meta{sequence} \Arg{item}
\end{syntax}
Removes every occurrence of \meta{item} from the \meta{sequence}.
-The \meta{item} comparison takes place on a token basis, as for \cs{TlIfEqTF}.
+The \meta{item} comparison takes place on a token basis, as for \cs{tlIfEqTF}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two,one,two,three}
-\SeqVarRemoveAll \lTmpaSeq {two}
-\SeqVarJoin \lTmpaSeq {,}
+\seqSetFromClist \lTmpaSeq {one,two,one,two,three}
+\seqVarRemoveAll \lTmpaSeq {two}
+\seqVarJoin \lTmpaSeq {,}
\end{demohigh}
\end{function}
-\begin{function}{\SeqVarReverse}
+\begin{function}{\seqVarReverse}
\begin{syntax}
-\cs{SeqVarReverse} \meta{sequence}
+\cs{seqVarReverse} \meta{sequence}
\end{syntax}
Reverses the order of the items stored in the \meta{sequence}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two,one,two,three}
-\SeqVarReverse \lTmpaSeq
-\SeqVarJoin \lTmpaSeq {,}
+\seqSetFromClist \lTmpaSeq {one,two,one,two,three}
+\seqVarReverse \lTmpaSeq
+\seqVarJoin \lTmpaSeq {,}
\end{demohigh}
\end{function}
-%\begin{function}{\SeqVarSort}
+%\begin{function}{\seqVarSort}
%\begin{syntax}
-%\cs{SeqVarSort} \meta{sequence} \Arg{comparison code}
+%\cs{seqVarSort} \meta{sequence} \Arg{comparison code}
%\end{syntax}
%Sorts the items in the \meta{sequence} according to the
%\meta{comparison code}, and assigns the result to
@@ -5791,9 +5791,9 @@ Reverses the order of the items stored in the \meta{sequence}.
%described in Section \ref{sec:l3sort:mech}.
%\end{function}
-%\begin{function}{\SeqVarShuffle}
+%\begin{function}{\seqVarShuffle}
%\begin{syntax}
-%\cs{SeqVarShuffle} \meta{seq var}
+%\cs{seqVarShuffle} \meta{seq var}
%\end{syntax}
%Sets the \meta{seq var} to the result of placing the items of the
%\meta{seq var} in a random order. Each item is (roughly) as likely
@@ -5810,23 +5810,23 @@ Reverses the order of the items stored in the \meta{sequence}.
\section{Working with the Contents of Sequences}
-\begin{function}{\SeqVarCount}
+\begin{function}{\seqVarCount}
\begin{syntax}
-\cs{SeqVarCount} \meta{sequence}
+\cs{seqVarCount} \meta{sequence}
\end{syntax}
Returns the number of items in the \meta{sequence}
as an \meta{integer denotation}. The total number of items
in a \meta{sequence} includes those which are empty and duplicates,
\emph{i.e.} every item in a \meta{sequence} is unique.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two,three,four}
-\SeqVarCount \lTmpaSeq
+\seqSetFromClist \lTmpaSeq {one,two,three,four}
+\seqVarCount \lTmpaSeq
\end{demohigh}
\end{function}
-\begin{function}{\SeqVarItem}
+\begin{function}{\seqVarItem}
\begin{syntax}
-\cs{SeqVarItem} \meta{sequence} \Arg{integer expression}
+\cs{seqVarItem} \meta{sequence} \Arg{integer expression}
\end{syntax}
Indexing items in the \meta{sequence} from $1$ at the top (left), this
function evaluates the \meta{integer expression} and returns the
@@ -5834,11 +5834,11 @@ appropriate item from the sequence. If the
\meta{integer expression} is negative, indexing occurs from the
bottom (right) of the sequence. If the \meta{integer expression}
is larger than the number of items in the \meta{sequence} (as
-calculated by \cs{SeqVarCount}) then the function returns nothing.
+calculated by \cs{seqVarCount}) then the function returns nothing.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two,three,four}
-\TlSet \lTmpaTl {\SeqVarItem \lTmpaSeq {3}}
-\TlUse \lTmpaTl
+\seqSetFromClist \lTmpaSeq {one,two,three,four}
+\tlSet \lTmpaTl {\seqVarItem \lTmpaSeq {3}}
+\tlUse \lTmpaTl
\end{demohigh}
%\begin{texnote}
%The result is returned within the \tn{unexpanded}
@@ -5848,18 +5848,18 @@ calculated by \cs{SeqVarCount}) then the function returns nothing.
%\end{texnote}
\end{function}
-\begin{function}{\SeqVarRandItem}
+\begin{function}{\seqVarRandItem}
\begin{syntax}
-\cs{SeqVarRandItem} \meta{seq var}
+\cs{seqVarRandItem} \meta{seq var}
\end{syntax}
Selects a pseudo-random item of the \meta{sequence}. If the
\meta{sequence} is empty the result is empty.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two,three,four,five,six}
-\TlSet \lTmpaTl {\SeqVarRandItem \lTmpaSeq}
-\TlUse \lTmpaTl
-\TlSet \lTmpaTl {\SeqVarRandItem \lTmpaSeq}
-\TlUse \lTmpaTl
+\seqSetFromClist \lTmpaSeq {one,two,three,four,five,six}
+\tlSet \lTmpaTl {\seqVarRandItem \lTmpaSeq}
+\tlUse \lTmpaTl
+\tlSet \lTmpaTl {\seqVarRandItem \lTmpaSeq}
+\tlUse \lTmpaTl
\end{demohigh}
%This is not available in older versions of \XeTeX{}.
%\begin{texnote}
@@ -5879,9 +5879,9 @@ intended to be mixed with the general ordered data functions detailed
in the previous section: a sequence should either be used as an
ordered data type or as a stack, but not in both ways.
-\begin{function}{\SeqGet}
+\begin{function}{\seqGet}
\begin{syntax}
-\cs{SeqGet} \meta{sequence} \meta{token list variable}
+\cs{seqGet} \meta{sequence} \meta{token list variable}
\end{syntax}
Reads the top item from a \meta{sequence} into the
\meta{token list variable} without removing it from the
@@ -5889,17 +5889,17 @@ Reads the top item from a \meta{sequence} into the
If \meta{sequence} is empty the \meta{token list variable} is set to
the special marker \cs{qNoValue}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqGet \lTmpaSeq \lTmpaTl
-\TlUse \lTmpaTl
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqGet \lTmpaSeq \lTmpaTl
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\SeqGetT,\SeqGetF,\SeqGetTF}
+\begin{function}{\seqGetT,\seqGetF,\seqGetTF}
\begin{syntax}
-\cs{SeqGetT} \meta{sequence} \meta{token list variable} \Arg{true code}
-\cs{SeqGetF} \meta{sequence} \meta{token list variable} \Arg{false code}
-\cs{SeqGetTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
+\cs{seqGetT} \meta{sequence} \meta{token list variable} \Arg{true code}
+\cs{seqGetF} \meta{sequence} \meta{token list variable} \Arg{false code}
+\cs{seqGetTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
\end{syntax}
If the \meta{sequence} is empty, leaves the \meta{false code} in the
input stream. The value of the \meta{token list variable} is
@@ -5908,31 +5908,31 @@ not defined in this case and should not be relied upon. If the
\meta{sequence} in the \meta{token list variable} without removing it from
the \meta{sequence}. The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqGetTF \lTmpaSeq \lTmpaTl {\Return{Yes}} {\Return{No}}
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqGetTF \lTmpaSeq \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\SeqPop}
+\begin{function}{\seqPop}
\begin{syntax}
-\cs{SeqPop} \meta{sequence} \meta{token list variable}
+\cs{seqPop} \meta{sequence} \meta{token list variable}
\end{syntax}
Pops the top item from a \meta{sequence} into the
\meta{token list variable}. the \meta{token list variable} is assigned locally.
If \meta{sequence} is empty the \meta{token list variable} is set to
the special marker \cs{qNoValue}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqPop \lTmpaSeq \lTmpaTl
-\SeqVarJoin \lTmpaSeq {,}
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqPop \lTmpaSeq \lTmpaTl
+\seqVarJoin \lTmpaSeq {,}
\end{demohigh}
\end{function}
-\begin{function}{\SeqPopT,\SeqPopF,\SeqPopTF}
+\begin{function}{\seqPopT,\seqPopF,\seqPopTF}
\begin{syntax}
-\cs{SeqPopT} \meta{sequence} \meta{token list variable} \Arg{true code}
-\cs{SeqPopF} \meta{sequence} \meta{token list variable} \Arg{false code}
-\cs{SeqPopTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
+\cs{seqPopT} \meta{sequence} \meta{token list variable} \Arg{true code}
+\cs{seqPopF} \meta{sequence} \meta{token list variable} \Arg{false code}
+\cs{seqPopTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
\end{syntax}
If the \meta{sequence} is empty, leaves the \meta{false code} in the
input stream. The value of the \meta{token list variable} is
@@ -5941,21 +5941,21 @@ not defined in this case and should not be relied upon. If the
in the \meta{token list variable}, \emph{i.e.} removes the item from the
\meta{sequence}. The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\SeqPopTF \cEmptySeq \lTmpaTl {\Return{Yes}} {\Return{No}}
+\seqPopTF \cEmptySeq \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\SeqPush}
+\begin{function}{\seqPush}
\begin{syntax}
-\cs{SeqPush} \meta{sequence} \Arg{item}
+\cs{seqPush} \meta{sequence} \Arg{item}
\end{syntax}
Adds the \Arg{item} to the top of the \meta{sequence}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqPush \lTmpaSeq {one}
-\SeqVarJoin \lTmpaSeq {|}
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqPush \lTmpaSeq {one}
+\seqVarJoin \lTmpaSeq {|}
\end{demohigh}
-You can only push one item to the \meta{sequence} with \cs{SeqPush},
+You can only push one item to the \meta{sequence} with \cs{seqPush},
which is different from \cs{ClistPush}.
\end{function}
@@ -5966,9 +5966,9 @@ For implementation reasons, the actions at the left of the sequence are
faster than those acting on the right. These functions all assign the
recovered material locally.
-\begin{function}{\SeqGetLeft}
+\begin{function}{\seqGetLeft}
\begin{syntax}
-\cs{SeqGetLeft} \meta{sequence} \meta{token list variable}
+\cs{seqGetLeft} \meta{sequence} \meta{token list variable}
\end{syntax}
Stores the left-most item from a \meta{sequence} in the
\meta{token list variable} without removing it from the
@@ -5976,17 +5976,17 @@ Stores the left-most item from a \meta{sequence} in the
If \meta{sequence} is empty the \meta{token list variable}
is set to the special marker \cs{qNoValue}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqGetLeft \lTmpaSeq \lTmpaTl
-\TlUse \lTmpaTl
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqGetLeft \lTmpaSeq \lTmpaTl
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\SeqGetLeftT,\SeqGetLeftF,\SeqGetLeftTF}
+\begin{function}{\seqGetLeftT,\seqGetLeftF,\seqGetLeftTF}
\begin{syntax}
-\cs{SeqGetLeftT} \meta{sequence} \meta{token list variable} \Arg{true code}
-\cs{SeqGetLeftF} \meta{sequence} \meta{token list variable} \Arg{false code}
-\cs{SeqGetLeftTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
+\cs{seqGetLeftT} \meta{sequence} \meta{token list variable} \Arg{true code}
+\cs{seqGetLeftF} \meta{sequence} \meta{token list variable} \Arg{false code}
+\cs{seqGetLeftTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
\end{syntax}
If the \meta{sequence} is empty, leaves the \meta{false code} in the
input stream. The value of the \meta{token list variable} is
@@ -5997,14 +5997,14 @@ in the \meta{token list variable} without removing it from the
\meta{sequence}, then leaves the \meta{true code} in the input stream.
The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqGetLeftTF \lTmpaSeq \lTmpaTl {\Return{Yes}} {\Return{No}}
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqGetLeftTF \lTmpaSeq \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\SeqGetRight}
+\begin{function}{\seqGetRight}
\begin{syntax}
-\cs{SeqGetRight} \meta{sequence} \meta{token list variable}
+\cs{seqGetRight} \meta{sequence} \meta{token list variable}
\end{syntax}
Stores the right-most item from a \meta{sequence} in the
\meta{token list variable} without removing it from the
@@ -6012,17 +6012,17 @@ Stores the right-most item from a \meta{sequence} in the
If \meta{sequence} is empty the \meta{token list variable}
is set to the special marker \cs{qNoValue}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqGetRight \lTmpaSeq \lTmpaTl
-\TlUse \lTmpaTl
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqGetRight \lTmpaSeq \lTmpaTl
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\SeqGetRightT,\SeqGetRightF,\SeqGetRightTF}
+\begin{function}{\seqGetRightT,\seqGetRightF,\seqGetRightTF}
\begin{syntax}
-\cs{SeqGetRightT} \meta{sequence} \meta{token list variable} \Arg{true code}
-\cs{SeqGetRightF} \meta{sequence} \meta{token list variable} \Arg{false code}
-\cs{SeqGetRightTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
+\cs{seqGetRightT} \meta{sequence} \meta{token list variable} \Arg{true code}
+\cs{seqGetRightF} \meta{sequence} \meta{token list variable} \Arg{false code}
+\cs{seqGetRightTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
\end{syntax}
If the \meta{sequence} is empty, leaves the \meta{false code} in the
input stream. The value of the \meta{token list variable} is
@@ -6033,14 +6033,14 @@ in the \meta{token list variable} without removing it from the
\meta{sequence}, then leaves the \meta{true code} in the input stream.
The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqGetRightTF \lTmpaSeq \lTmpaTl {\Return{Yes}} {\Return{No}}
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqGetRightTF \lTmpaSeq \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\SeqPopLeft}
+\begin{function}{\seqPopLeft}
\begin{syntax}
-\cs{SeqPopLeft} \meta{sequence} \meta{token list variable}
+\cs{seqPopLeft} \meta{sequence} \meta{token list variable}
\end{syntax}
Pops the left-most item from a \meta{sequence} into the
\meta{token list variable}, \emph{i.e.} removes the item from the
@@ -6049,17 +6049,17 @@ The assignment of the \meta{token list variable} is local.
If \meta{sequence} is empty the \meta{token list variable}
is set to the special marker \cs{qNoValue}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqPopLeft \lTmpaSeq \lTmpaTl
-\SeqVarJoin \lTmpaSeq {,}
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqPopLeft \lTmpaSeq \lTmpaTl
+\seqVarJoin \lTmpaSeq {,}
\end{demohigh}
\end{function}
-\begin{function}{\SeqPopLeftT,\SeqPopLeftF,\SeqPopLeftTF}
+\begin{function}{\seqPopLeftT,\seqPopLeftF,\seqPopLeftTF}
\begin{syntax}
-\cs{SeqPopLeftT} \meta{sequence} \meta{token list variable} \Arg{true code}
-\cs{SeqPopLeftF} \meta{sequence} \meta{token list variable} \Arg{false code}
-\cs{SeqPopLeftTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
+\cs{seqPopLeftT} \meta{sequence} \meta{token list variable} \Arg{true code}
+\cs{seqPopLeftF} \meta{sequence} \meta{token list variable} \Arg{false code}
+\cs{seqPopLeftTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
\end{syntax}
If the \meta{sequence} is empty, leaves the \meta{false code} in the
input stream. The value of the \meta{token list variable} is
@@ -6069,13 +6069,13 @@ in the \meta{token list variable}, \emph{i.e.} removes the item from the
\meta{sequence}, then leaves the \meta{true code} in the input stream.
The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\SeqPopLeftTF \cEmptySeq \lTmpaTl {\Return{Yes}} {\Return{No}}
+\seqPopLeftTF \cEmptySeq \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\SeqPopRight}
+\begin{function}{\seqPopRight}
\begin{syntax}
-\cs{SeqPopRight} \meta{sequence} \meta{token list variable}
+\cs{seqPopRight} \meta{sequence} \meta{token list variable}
\end{syntax}
Pops the right-most item from a \meta{sequence} into the
\meta{token list variable}, \emph{i.e.} removes the item from the
@@ -6084,17 +6084,17 @@ The assignment of the \meta{token list variable} is local.
If \meta{sequence} is empty the \meta{token list variable}
is set to the special marker \cs{qNoValue}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {two,three,four}
-\SeqPopRight \lTmpaSeq \lTmpaTl
-\SeqVarJoin \lTmpaSeq {,}
+\seqSetFromClist \lTmpaSeq {two,three,four}
+\seqPopRight \lTmpaSeq \lTmpaTl
+\seqVarJoin \lTmpaSeq {,}
\end{demohigh}
\end{function}
-\begin{function}{\SeqPopRightT,\SeqPopRightF,\SeqPopRightTF}
+\begin{function}{\seqPopRightT,\seqPopRightF,\seqPopRightTF}
\begin{syntax}
-\cs{SeqPopRightT} \meta{sequence} \meta{token list variable} \Arg{true code}
-\cs{SeqPopRightF} \meta{sequence} \meta{token list variable} \Arg{false code}
-\cs{SeqPopRightTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
+\cs{seqPopRightT} \meta{sequence} \meta{token list variable} \Arg{true code}
+\cs{seqPopRightF} \meta{sequence} \meta{token list variable} \Arg{false code}
+\cs{seqPopRightTF} \meta{sequence} \meta{token list variable} \Arg{true code} \Arg{false code}
\end{syntax}
If the \meta{sequence} is empty, leaves the \meta{false code} in the
input stream. The value of the \meta{token list variable} is
@@ -6104,7 +6104,7 @@ in the \meta{token list variable}, \emph{i.e.} removes the item from the
\meta{sequence}, then leaves the \meta{true code} in the input stream.
The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\SeqPopRightTF \cEmptySeq \lTmpaTl {\Return{Yes}} {\Return{No}}
+\seqPopRightTF \cEmptySeq \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
@@ -6114,21 +6114,21 @@ The \meta{token list variable} is assigned locally.
%local assignments made by the \meta{function} or \meta{code} discussed
%below remain in effect after the loop.
-%\begin{function}{\SeqVarMapFunction}
+%\begin{function}{\seqVarMapFunction}
%\begin{syntax}
-%\cs{SeqVarMapFunction} \meta{sequence} \meta{function}
+%\cs{seqVarMapFunction} \meta{sequence} \meta{function}
%\end{syntax}
%Applies \meta{function} to every \meta{item} stored in the
%\meta{sequence}. The \meta{function} will receive one argument for
%each iteration. The \meta{items} are returned from left to right.
-%To pass further arguments to the \meta{function}, see \cs{SeqVarMapTokens}.
-%The function \cs{SeqVarMapInline} is faster than
-%\cs{SeqVarMapFunction} for sequences with more than about $10$ items.
+%To pass further arguments to the \meta{function}, see \cs{seqVarMapTokens}.
+%The function \cs{seqVarMapInline} is faster than
+%\cs{seqVarMapFunction} for sequences with more than about $10$ items.
%\end{function}
-\begin{function}{\SeqVarMapInline}
+\begin{function}{\seqVarMapInline}
\begin{syntax}
-\cs{SeqVarMapInline} \meta{sequence} \Arg{inline function}
+\cs{seqVarMapInline} \meta{sequence} \Arg{inline function}
\end{syntax}
Applies \meta{inline function} to every \meta{item} stored
within the \meta{sequence}. The \meta{inline function} should
@@ -6136,35 +6136,35 @@ consist of code which will receive the \meta{item} as \verb|#1|.
The \meta{items} are returned from left to right.
\begin{demohigh}
\IgnoreSpacesOn
-\SeqSetFromClist \lTmpkSeq {one,two,three}
-\TlClear \lTmpaTl
-\SeqVarMapInline \lTmpkSeq {
- \TlPutRight \lTmpaTl {(#1)}
+\seqSetFromClist \lTmpkSeq {one,two,three}
+\tlClear \lTmpaTl
+\seqVarMapInline \lTmpkSeq {
+ \tlPutRight \lTmpaTl {(#1)}
}
-\TlUse \lTmpaTl
+\tlUse \lTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-%\begin{function}{\SeqVarMapTokens}
+%\begin{function}{\seqVarMapTokens}
%\begin{syntax}
-%\cs{SeqVarMapTokens} \meta{sequence} \Arg{code}
+%\cs{seqVarMapTokens} \meta{sequence} \Arg{code}
%\end{syntax}
-%Analogue of \cs{SeqVarMapFunction} which maps several tokens
+%Analogue of \cs{seqVarMapFunction} which maps several tokens
%instead of a single function. The \meta{code} receives each item in
%the \meta{sequence} as a trailing brace group. For instance,
%\begin{verbatim}
-%\SeqVarMapTokens \lMySeq { \PrgReplicate { 2 } }
+%\seqVarMapTokens \lMySeq { \prgReplicate { 2 } }
%\end{verbatim}
%expands to twice each item in the \meta{sequence}: for each item in
%\verb|\l_my_seq| the function \cs{PrgReplicate} receives \verb|2| and
%\meta{item} as its two arguments. The function
-%\cs{SeqVarMapInline} is typically faster but it is not expandable.
+%\cs{seqVarMapInline} is typically faster but it is not expandable.
%\end{function}
-\begin{function}{\SeqVarMapVariable}
+\begin{function}{\seqVarMapVariable}
\begin{syntax}
-\cs{SeqVarMapVariable} \meta{sequence} \meta{variable} \Arg{code}
+\cs{seqVarMapVariable} \meta{sequence} \meta{variable} \Arg{code}
\end{syntax}
Stores each \meta{item} of the \meta{sequence} in turn in the (token
list) \meta{variable} and applies the \meta{code}. The \meta{code}
@@ -6175,19 +6175,19 @@ or its original value if the \meta{sequence} is empty. The
\meta{items} are returned from left to right.
\begin{demohigh}
\IgnoreSpacesOn
-\IntZero \lTmpaInt
-\SeqSetFromClist \lTmpaSeq {1,3,7}
-\SeqVarMapVariable \lTmpaSeq \lTmpiTl {
- \IntAdd \lTmpaInt {\lTmpiTl*\lTmpiTl}
+\intZero \lTmpaInt
+\seqSetFromClist \lTmpaSeq {1,3,7}
+\seqVarMapVariable \lTmpaSeq \lTmpiTl {
+ \intAdd \lTmpaInt {\lTmpiTl*\lTmpiTl}
}
-\IntUse \lTmpaInt
+\intUse \lTmpaInt
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-%\begin{function}{\SeqVarMapIndexedFunction}
+%\begin{function}{\seqVarMapIndexedFunction}
%\begin{syntax}
-%\cs{SeqVarMapIndexedFunction} \meta{seq var} \meta{function}
+%\cs{seqVarMapIndexedFunction} \meta{seq var} \meta{function}
%\end{syntax}
%Applies \meta{function} to every entry in the \meta{sequence
%variable}. The \meta{function} should have signature |:nn|. It
@@ -6195,9 +6195,9 @@ or its original value if the \meta{sequence} is empty. The
%\verb|1| for the first entry, then \verb|2| and so on) and the \meta{item}.
%\end{function}
-%\begin{function}{\SeqVarMapIndexedInline}
+%\begin{function}{\seqVarMapIndexedInline}
%\begin{syntax}
-%\cs{SeqVarMapIndexedInline} \meta{seq var} \Arg{inline function}
+%\cs{seqVarMapIndexedInline} \meta{seq var} \Arg{inline function}
%\end{syntax}
%Applies \meta{inline function} to every entry in the \meta{sequence
%variable}. The \meta{inline function} should consist of code which
@@ -6205,9 +6205,9 @@ or its original value if the \meta{sequence} is empty. The
%and so on) as \verb|#1| and the \meta{item} as \verb|#2|.
%\end{function}
-%\begin{function}{\SeqMapBreak}
+%\begin{function}{\seqMapBreak}
%\begin{syntax}
-%\cs{SeqMapBreak}
+%\cs{seqMapBreak}
%\end{syntax}
%Used to terminate a seq map function before all
%entries in the \meta{sequence} have been processed. This
@@ -6232,9 +6232,9 @@ or its original value if the \meta{sequence} is empty. The
%\end{texnote}
%\end{function}
-%\begin{function}{\SeqMapBreakDo}
+%\begin{function}{\seqMapBreakDo}
%\begin{syntax}
-%\cs{SeqMapBreakDo} \Arg{code}
+%\cs{seqMapBreakDo} \Arg{code}
%\end{syntax}
%Used to terminate a seq map function before all
%entries in the \meta{sequence} have been processed, inserting
@@ -6296,49 +6296,49 @@ or its original value if the \meta{sequence} is empty. The
\section{Sequence Conditionals}
-\begin{function}{\SeqIfExist,\SeqIfExistT,\SeqIfExistF,\SeqIfExistTF}
+\begin{function}{\seqIfExist,\seqIfExistT,\seqIfExistF,\seqIfExistTF}
\begin{syntax}
-\cs{SeqIfExist} \meta{sequence}
-\cs{SeqIfExistT} \meta{sequence} \Arg{true code}
-\cs{SeqIfExistF} \meta{sequence} \Arg{false code}
-\cs{SeqIfExistTF} \meta{sequence} \Arg{true code} \Arg{false code}
+\cs{seqIfExist} \meta{sequence}
+\cs{seqIfExistT} \meta{sequence} \Arg{true code}
+\cs{seqIfExistF} \meta{sequence} \Arg{false code}
+\cs{seqIfExistTF} \meta{sequence} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{sequence} is currently defined. This does not
check that the \meta{sequence} really is a sequence variable.
\begin{demohigh}
-\SeqIfExistTF \lTmpaSeq {\Return{Yes}} {\Return{No}}
-\SeqIfExistTF \lFooUndefinedSeq {\Return{Yes}} {\Return{No}}
+\seqIfExistTF \lTmpaSeq {\prgReturn{Yes}} {\prgReturn{No}}
+\seqIfExistTF \lFooUndefinedSeq {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\SeqVarIfEmpty,\SeqVarIfEmptyT,\SeqVarIfEmptyF,\SeqVarIfEmptyTF}
+\begin{function}{\seqVarIfEmpty,\seqVarIfEmptyT,\seqVarIfEmptyF,\seqVarIfEmptyTF}
\begin{syntax}
-\cs{SeqVarIfEmpty} \meta{sequence}
-\cs{SeqVarIfEmptyT} \meta{sequence} \Arg{true code}
-\cs{SeqVarIfEmptyF} \meta{sequence} \Arg{false code}
-\cs{SeqVarIfEmptyTF} \meta{sequence} \Arg{true code} \Arg{false code}
+\cs{seqVarIfEmpty} \meta{sequence}
+\cs{seqVarIfEmptyT} \meta{sequence} \Arg{true code}
+\cs{seqVarIfEmptyF} \meta{sequence} \Arg{false code}
+\cs{seqVarIfEmptyTF} \meta{sequence} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{sequence} is empty (containing no items).
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two}
-\SeqVarIfEmptyTF \lTmpaSeq {\Return{Empty}} {\Return{NonEmpty}}
-\SeqClear \lTmpaSeq
-\SeqVarIfEmptyTF \lTmpaSeq {\Return{Empty}} {\Return{NonEmpty}}
+\seqSetFromClist \lTmpaSeq {one,two}
+\seqVarIfEmptyTF \lTmpaSeq {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
+\seqClear \lTmpaSeq
+\seqVarIfEmptyTF \lTmpaSeq {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
\end{demohigh}
\end{function}
-\begin{function}{\SeqVarIfIn,\SeqVarIfInT,\SeqVarIfInF,\SeqVarIfInTF}
+\begin{function}{\seqVarIfIn,\seqVarIfInT,\seqVarIfInF,\seqVarIfInTF}
\begin{syntax}
-\cs{SeqVarIfIn} \meta{sequence} \Arg{item}
-\cs{SeqVarIfInT} \meta{sequence} \Arg{item} \Arg{true code}
-\cs{SeqVarIfInF} \meta{sequence} \Arg{item} \Arg{false code}
-\cs{SeqVarIfInTF} \meta{sequence} \Arg{item} \Arg{true code} \Arg{false code}
+\cs{seqVarIfIn} \meta{sequence} \Arg{item}
+\cs{seqVarIfInT} \meta{sequence} \Arg{item} \Arg{true code}
+\cs{seqVarIfInF} \meta{sequence} \Arg{item} \Arg{false code}
+\cs{seqVarIfInTF} \meta{sequence} \Arg{item} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{item} is present in the \meta{sequence}.
\begin{demohigh}
-\SeqSetFromClist \lTmpaSeq {one,two}
-\SeqVarIfInTF \lTmpaSeq {one} {\Return{Yes}} {\Return{Not}}
-\SeqVarIfInTF \lTmpaSeq {three} {\Return{Yes}} {\Return{Not}}
+\seqSetFromClist \lTmpaSeq {one,two}
+\seqVarIfInTF \lTmpaSeq {one} {\prgReturn{Yes}} {\prgReturn{Not}}
+\seqVarIfInTF \lTmpaSeq {three} {\prgReturn{Yes}} {\prgReturn{Not}}
\end{demohigh}
\end{function}
@@ -6348,14 +6348,14 @@ Tests if the \meta{item} is present in the \meta{sequence}.
an unordered list of entries each of which consists of a \meta{key} and
an associated \meta{value}. The \meta{key} and \meta{value} may both
be any \meta{balanced text}, the \meta{key} is processed using
-\cs{TlToStr}, meaning that category codes are ignored. It is possible to
+\cs{tlToStr}, meaning that category codes are ignored. It is possible to
map functions to property lists such that the function is applied to every
key--value pair within the list.
Each entry in a property list must have a unique \meta{key}: if an entry is
added to a property list which already contains the \meta{key} then the new
entry overwrites the existing one. The \meta{keys} are compared on a
-string basis, using the same method as \cs{StrIfEq}.
+string basis, using the same method as \cs{strIfEq}.
%Property lists are intended for storing key-based information for use within
%code. This is in contrast to key--value lists, which are a form of
@@ -6383,43 +6383,43 @@ code and so should only be used for short-term storage.
\section{Creating and Using Property Lists}
-\begin{function}{\PropNew}
+\begin{function}{\propNew}
\begin{syntax}
-\cs{PropNew} \meta{property list}
+\cs{propNew} \meta{property list}
\end{syntax}
Creates a new \meta{property list} or raises an error if the name is
already taken. The declaration is global. The \meta{property list}
initially contains no entries.
\begin{codehigh}
-\PropNew \lFooSomeProp
+\propNew \lFooSomeProp
\end{codehigh}
\end{function}
-\begin{function}{\PropConstFromKeyval}
+\begin{function}{\propConstFromKeyval}
\begin{syntax}
-\cs{PropConstFromKeyval} \meta{prop var}
-\{
-~ \meta{key1} \verb|=| \meta{value1} \verb|,|
-~ \meta{key2} \verb|=| \meta{value2} \verb|,| $\cdots$
-\}
+\cs{propConstFromKeyval} \meta{prop var}
+~ \{
+~ ~ \meta{key1} \verb|=| \meta{value1} \verb|,|
+~ ~ \meta{key2} \verb|=| \meta{value2} \verb|,| $\cdots$
+~ \}
\end{syntax}
Creates a new constant \meta{prop var} or raises an error if the
name is already taken. The \meta{prop var} is set globally to
contain key--value pairs given in the second argument, processed in
-the way described for \cs{PropSetFromKeyval}. If duplicate
+the way described for \cs{propSetFromKeyval}. If duplicate
keys appear only the last of the values is kept.
This function correctly detects the \verb|=| and \verb|,| signs provided they
have the standard category code $12$ or they are active.
\begin{codehigh}
-\PropConstFromKeyval \cFooSomeProp {key1=one,key2=two,key3=three}
+\propConstFromKeyval \cFooSomeProp {key1=one,key2=two,key3=three}
\end{codehigh}
%Notice that in contrast to most keyval lists (\emph{e.g.} those in
%\pkg{l3keys}), each key here \emph{must} be followed with an \texttt{=} sign.
\end{function}
-\begin{function}{\PropToKeyval}
+\begin{function}{\propToKeyval}
\begin{syntax}
-\cs{PropToKeyval} \meta{property list}
+\cs{propToKeyval} \meta{property list}
\end{syntax}
Returns the \meta{property list} in a key--value notation. Keep in mind
that a \meta{property list} is \emph{unordered}, while key--value interfaces
@@ -6431,37 +6431,37 @@ don't necessarily are, so this can't be used for arbitrary interfaces.
%It also needs exactly two steps of expansion.
%\end{texnote}
\begin{codehigh}
-\PropToKeyval \lTmpaProp
+\propToKeyval \lTmpaProp
\end{codehigh}
\end{function}
\section{Viewing Property Lists}
-\begin{function}{\PropVarLog}
+\begin{function}{\propVarLog}
\begin{syntax}
-\cs{PropVarLog} \meta{property list}
+\cs{propVarLog} \meta{property list}
\end{syntax}
Writes the entries in the \meta{property list} in the log file.
\begin{codehigh}
-\PropVarLog \lTmpaProp
+\propVarLog \lTmpaProp
\end{codehigh}
\end{function}
-\begin{function}{\PropVarShow}
+\begin{function}{\propVarShow}
\begin{syntax}
-\cs{PropVarShow} \meta{property list}
+\cs{propVarShow} \meta{property list}
\end{syntax}
Displays the entries in the \meta{property list} in the terminal.
\begin{codehigh}
-\PropVarShow \lTmpaProp
+\propVarShow \lTmpaProp
\end{codehigh}
\end{function}
\section{Setting Property Lists}
-\begin{function}{\PropSetFromKeyval}
+\begin{function}{\propSetFromKeyval}
\begin{syntax}
-\cs{PropSetFromKeyval} \meta{prop var}
+\cs{propSetFromKeyval} \meta{prop var}
\{
~ \meta{key1} \verb|=| \meta{value1} \verb|,|
~ \meta{key2} \verb|=| \meta{value2} \verb|,| $\cdots$
@@ -6474,101 +6474,101 @@ Spaces are trimmed around every \meta{key} and every \meta{value},
and if the result of trimming spaces consists of a single brace
group then a set of outer braces is removed. This enables both the
\meta{key} and the \meta{value} to contain spaces, commas or equal
-signs. The \meta{key} is then processed by \cs{TlToStr}.
+signs. The \meta{key} is then processed by \cs{tlToStr}.
This function correctly detects the \verb|=| and \verb|,| signs provided they
have the standard category code $12$ or they are active.
\begin{codehigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two}
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two}
\end{codehigh}
%Notice that in contrast to most keyval lists (\emph{e.g.} those in
%\pkg{l3keys}), each key here \emph{must} be followed with an \texttt{=} sign.
\end{function}
-\begin{function}{\PropSetEq}
+\begin{function}{\propSetEq}
\begin{syntax}
-\cs{PropSetEq} \meta{property list_1} \meta{property list_2}
+\cs{propSetEq} \meta{property list_1} \meta{property list_2}
\end{syntax}
Sets the content of \meta{property list_1} equal to that of
\meta{property list_2}.
\begin{codehigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
-\PropSetEq \lTmpbProp \lTmpaProp
-\PropVarLog \lTmpbProp
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
+\propSetEq \lTmpbProp \lTmpaProp
+\propVarLog \lTmpbProp
\end{codehigh}
\end{function}
-\begin{function}{\PropClear}
+\begin{function}{\propClear}
\begin{syntax}
-\cs{PropClear} \meta{property list}
+\cs{propClear} \meta{property list}
\end{syntax}
Clears all entries from the \meta{property list}.
\begin{codehigh}
-\PropClear \lTmpaProp
+\propClear \lTmpaProp
\end{codehigh}
\end{function}
-\begin{function}{\PropClearNew}
+\begin{function}{\propClearNew}
\begin{syntax}
-\cs{PropClearNew} \meta{property list}
+\cs{propClearNew} \meta{property list}
\end{syntax}
-Ensures that the \meta{property list} exists globally by applying \cs{PropNew}
-if necessary, then applies \cs{PropClear} to leave the list empty.
+Ensures that the \meta{property list} exists globally by applying \cs{propNew}
+if necessary, then applies \cs{propClear} to leave the list empty.
\begin{codehigh}
-\PropClearNew \lFooSomeProp
+\propClearNew \lFooSomeProp
\end{codehigh}
\end{function}
-\begin{function}{\PropConcat}
+\begin{function}{\propConcat}
\begin{syntax}
-\cs{PropConcat} \meta{prop var_1} \meta{prop var_2} \meta{prop var_3}
+\cs{propConcat} \meta{prop var_1} \meta{prop var_2} \meta{prop var_3}
\end{syntax}
Combines the key--value pairs of \meta{prop var_2} and
\meta{prop var_3}, and saves the result in \meta{prop var_1}. If a
key appears in both \meta{prop var_2} and \meta{prop var_3} then the
last value, namely the value in \meta{prop var_3} is kept.
\begin{codehigh}
-\PropSetFromKeyval \lTmpbProp {key1=one,key2=two}
-\PropSetFromKeyval \lTmpcProp {key3=three,key4=four}
-\PropConcat \lTmpaProp \lTmpbProp \lTmpcProp
-\PropVarLog \lTmpaProp
+\propSetFromKeyval \lTmpbProp {key1=one,key2=two}
+\propSetFromKeyval \lTmpcProp {key3=three,key4=four}
+\propConcat \lTmpaProp \lTmpbProp \lTmpcProp
+\propVarLog \lTmpaProp
\end{codehigh}
\end{function}
-\begin{function}{\PropPut}
+\begin{function}{\propPut}
\begin{syntax}
-\cs{PropPut} \meta{property list} \Arg{key} \Arg{value}
+\cs{propPut} \meta{property list} \Arg{key} \Arg{value}
\end{syntax}
Adds an entry to the \meta{property list} which may be accessed
using the \meta{key} and which has \meta{value}. If the \meta{key}
is already present in the \meta{property list}, the existing entry
is overwritten by the new \meta{value}. Both the \meta{key} and
\meta{value} may contain any \meta{balanced text}. The \meta{key} is
-stored after processing with \cs{TlToStr}, meaning that category
+stored after processing with \cs{tlToStr}, meaning that category
codes are ignored.
\begin{codehigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two}
-\PropPut \lTmpaProp {key1} {newone}
-\PropVarLog \lTmpaProp
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two}
+\propPut \lTmpaProp {key1} {newone}
+\propVarLog \lTmpaProp
\end{codehigh}
\end{function}
-\begin{function}{\PropPutIfNew}
+\begin{function}{\propPutIfNew}
\begin{syntax}
-\cs{PropPutIfNew} \meta{property list} \Arg{key} \Arg{value}
+\cs{propPutIfNew} \meta{property list} \Arg{key} \Arg{value}
\end{syntax}
If the \meta{key} is present in the \meta{property list} then no
action is taken. Otherwise, a new entry is added as described for
-\cs{PropPut}.
+\cs{propPut}.
\begin{codehigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two}
-\PropPutIfNew \lTmpaProp {key1} {newone}
-\PropVarLog \lTmpaProp
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two}
+\propPutIfNew \lTmpaProp {key1} {newone}
+\propVarLog \lTmpaProp
\end{codehigh}
\end{function}
-\begin{function}{\PropPutFromKeyval}
+\begin{function}{\propPutFromKeyval}
\begin{syntax}
-\cs{PropPutFromKeyval} \meta{prop var}
+\cs{propPutFromKeyval} \meta{prop var}
\{
~ \meta{key1} \verb|=| \meta{value1} \verb|,|
~ \meta{key2} \verb|=| \meta{value2} \verb|,| $\cdots$
@@ -6576,28 +6576,28 @@ action is taken. Otherwise, a new entry is added as described for
\end{syntax}
Updates the \meta{prop var} by adding entries for each key--value
pair given in the second argument. The addition is done through
-\cs{PropPut}, hence if the \meta{prop var} already contains
+\cs{propPut}, hence if the \meta{prop var} already contains
some of the keys, the corresponding values are discarded and
replaced by those given in the key--value list. If duplicate keys
appear in the key--value list then only the last of the values is kept.
\begin{codehigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two}
-\PropPutFromKeyval \lTmpaProp {key1=newone,key3=three}
-\PropVarLog \lTmpaProp
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two}
+\propPutFromKeyval \lTmpaProp {key1=newone,key3=three}
+\propVarLog \lTmpaProp
\end{codehigh}
%The function is equivalent to storing the key--value pairs in a
-%temporary property variable using \cs{PropSetFromKeyval}, then
+%temporary property variable using \cs{propSetFromKeyval}, then
%combining \meta{prop var} with the temporary variable using
-%\cs{PropConcat}. In particular, the \meta{keys} and
+%\cs{propConcat}. In particular, the \meta{keys} and
%\meta{values} are space-trimmed and unbraced as described in
-%\cs{PropSetFromKeyval}. This function correctly detects
+%\cs{propSetFromKeyval}. This function correctly detects
%the \verb|=| and \verb|,| signs provided they
%have the standard category code $12$ or they are active.
\end{function}
-\begin{function}{\PropVarRemove}
+\begin{function}{\propVarRemove}
\begin{syntax}
-\cs{PropVarRemove} \meta{property list} \Arg{key}
+\cs{propVarRemove} \meta{property list} \Arg{key}
\end{syntax}
Removes the entry listed under \meta{key} from the
\meta{property list}. If the \meta{key} is
@@ -6605,37 +6605,37 @@ not found in the \meta{property list} no change occurs,
\emph{i.e} there is no need to test for the existence of a key before
deleting it.
\begin{codehigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
-\PropVarRemove \lTmpaProp {key2}
-\PropVarLog \lTmpaProp
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
+\propVarRemove \lTmpaProp {key2}
+\propVarLog \lTmpaProp
\end{codehigh}
\end{function}
\section{Recovering Values from Property Lists}
-\begin{function}{\PropVarCount}
+\begin{function}{\propVarCount}
\begin{syntax}
-\cs{PropVarCount} \meta{property list}
+\cs{propVarCount} \meta{property list}
\end{syntax}
Returns the number of key--value pairs in the \meta{property list}
as an \meta{integer denotation}.
\begin{demohigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
-\PropVarCount \lTmpaProp
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
+\propVarCount \lTmpaProp
\end{demohigh}
\end{function}
-\begin{function}{\PropVarItem}
+\begin{function}{\propVarItem}
\begin{syntax}
-\cs{PropVarItem} \meta{property list} \Arg{key}
+\cs{propVarItem} \meta{property list} \Arg{key}
\end{syntax}
Returns the \meta{value} corresponding to the \meta{key} in
the \meta{property list}. If the \meta{key} is missing,
nothing is returned.
\begin{demohigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
-\TlSet \lTmpaTl {\PropVarItem \lTmpaProp {key2}}
-\TlUse \lTmpaTl
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
+\tlSet \lTmpaTl {\propVarItem \lTmpaProp {key2}}
+\tlUse \lTmpaTl
\end{demohigh}
%\begin{texnote}
%This function is slower than the non-expandable analogue
@@ -6647,9 +6647,9 @@ nothing is returned.
%\end{texnote}
\end{function}
-\begin{function}{\PropGet}
+\begin{function}{\propGet}
\begin{syntax}
-\cs{PropGet} \meta{property list} \Arg{key} \meta{token list variable}
+\cs{propGet} \meta{property list} \Arg{key} \meta{token list variable}
\end{syntax}
Recovers the \meta{value} stored with \meta{key} from the \meta{property list},
and places this in the \meta{token list variable}.
@@ -6658,17 +6658,17 @@ If the \meta{key} is not found in the
to the special marker \cs{qNoValue}.
The assignment of the \meta{token list variable} is local.
\begin{demohigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
-\PropGet \lTmpaProp {key2} \lTmpaTl
-\TlUse \lTmpaTl
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
+\propGet \lTmpaProp {key2} \lTmpaTl
+\tlUse \lTmpaTl
\end{demohigh}
\end{function}
-\begin{function}{\PropGetT,\PropGetF,\PropGetTF}
+\begin{function}{\propGetT,\propGetF,\propGetTF}
\begin{syntax}
-\cs{PropGetT} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code}
-\cs{PropGetF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{false code}
-\cs{PropGetTF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code} \Arg{false code}
+\cs{propGetT} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code}
+\cs{propGetF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{false code}
+\cs{propGetTF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code} \Arg{false code}
\end{syntax}
If the \meta{key} is not present in the \meta{property list}, leaves
the \meta{false code} in the input stream. The value of the
@@ -6679,14 +6679,14 @@ not be relied upon. If the \meta{key} is present in the
\meta{property list}, then leaves the \meta{true code} in the input
stream. The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
-\PropGetTF \lTmpaProp {key2} \lTmpaTl {\Return{Yes}} {\Return{No}}
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
+\propGetTF \lTmpaProp {key2} \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\PropPop}
+\begin{function}{\propPop}
\begin{syntax}
-\cs{PropPop} \meta{property list} \Arg{key} \meta{token list variable}
+\cs{propPop} \meta{property list} \Arg{key} \meta{token list variable}
\end{syntax}
Recovers the \meta{value} stored with \meta{key} from the \meta{property list},
and places this in the \meta{token list variable}.
@@ -6696,18 +6696,18 @@ to the special marker \cs{qNoValue}.
The \meta{key} and \meta{value} are then deleted from the property list.
The assignment of the \meta{token list variable} is local.
\begin{demohigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
-\PropPop \lTmpaProp {key2} \lTmpaTl
-Pop: \TlUse \lTmpaTl.
-Count: \PropVarCount \lTmpaProp.
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
+\propPop \lTmpaProp {key2} \lTmpaTl
+Pop: \tlUse \lTmpaTl.
+Count: \propVarCount \lTmpaProp.
\end{demohigh}
\end{function}
-\begin{function}{\PropPopT,\PropPopF,\PropPopTF}
+\begin{function}{\propPopT,\propPopF,\propPopTF}
\begin{syntax}
-\cs{PropPopT} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code}
-\cs{PropPopF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{false code}
-\cs{PropPopTF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code} \Arg{false code}
+\cs{propPopT} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code}
+\cs{propPopF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{false code}
+\cs{propPopTF} \meta{property list} \Arg{key} \meta{token list variable} \Arg{true code} \Arg{false code}
\end{syntax}
If the \meta{key} is not present in the \meta{property list}, leaves
the \meta{false code} in the input stream. The value of the
@@ -6717,8 +6717,8 @@ the \meta{property list}, pops the corresponding \meta{value}
in the \meta{token list variable}, \emph{i.e.} removes the item from
The \meta{token list variable} is assigned locally.
\begin{demohigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
-\PropPopTF \lTmpaProp {key2} \lTmpaTl {\Return{Yes}} {\Return{No}}
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two,key3=three}
+\propPopTF \lTmpaProp {key2} \lTmpaTl {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
@@ -6728,9 +6728,9 @@ The \meta{token list variable} is assigned locally.
%local assignments made by the \meta{function} or \meta{code} discussed
%below remain in effect after the loop.
-%\begin{function}{\PropVarMapFunction}
+%\begin{function}{\propVarMapFunction}
%\begin{syntax}
-%\cs{PropVarMapFunction} \meta{property list} \meta{function}
+%\cs{propVarMapFunction} \meta{property list} \meta{function}
%\end{syntax}
%Applies \meta{function} to every \meta{entry} stored in the
%\meta{property list}. The \meta{function} receives two arguments for
@@ -6741,9 +6741,9 @@ The \meta{token list variable} is assigned locally.
%\cs{prop_map_tokens:Nn}.
%\end{function}
-\begin{function}{\PropVarMapInline}
+\begin{function}{\propVarMapInline}
\begin{syntax}
-\cs{PropVarMapInline} \meta{property list} \Arg{inline function}
+\cs{propVarMapInline} \meta{property list} \Arg{inline function}
\end{syntax}
Applies \meta{inline function} to every \meta{entry} stored
within the \meta{property list}. The \meta{inline function} should
@@ -6753,36 +6753,36 @@ The order in which \meta{entries} are returned is not defined and
should not be relied upon.
\begin{demohigh}
\IgnoreSpacesOn
-\PropSetFromKeyval \lTmpkProp {key1=one,key2=two,key3=three}
-\TlClear \lTmpaTl
-\PropVarMapInline \lTmpkProp {
- \TlPutRight \lTmpaTl {(#1=#2)}
+\propSetFromKeyval \lTmpkProp {key1=one,key2=two,key3=three}
+\tlClear \lTmpaTl
+\propVarMapInline \lTmpkProp {
+ \tlPutRight \lTmpaTl {(#1=#2)}
}
-\TlUse \lTmpaTl
+\tlUse \lTmpaTl
\IgnoreSpacesOff
\end{demohigh}
\end{function}
-%\begin{function}{\PropVarMapTokens}
+%\begin{function}{\propVarMapTokens}
%\begin{syntax}
-%\cs{PropVarMapTokens} \meta{property list} \Arg{code}
+%\cs{propVarMapTokens} \meta{property list} \Arg{code}
%\end{syntax}
-%Analogue of \cs{PropVarMapFunction} which maps several tokens
+%Analogue of \cs{propVarMapFunction} which maps several tokens
%instead of a single function. The \meta{code} receives each
%key--value pair in the \meta{property list} as two trailing brace
%groups. For instance,
%\begin{verbatim}
-%\PropVarMapTokens \lMyProp { \StrIfEqT { mykey } }
+%\propVarMapTokens \lMyProp { \strIfEqT { mykey } }
%\end{verbatim}
%expands to the value corresponding to \texttt{mykey}: for each
-%pair in \verb|\lMyProp| the function \cs{StrIfEqT} receives
+%pair in \verb|\lMyProp| the function \cs{strIfEqT} receives
%\texttt{mykey}, the \meta{key} and the \meta{value} as its three
-%arguments. For that specific task, \cs{PropVarItem} is faster.
+%arguments. For that specific task, \cs{propVarItem} is faster.
%\end{function}
-%\begin{function}{\PropMapBreak}
+%\begin{function}{\propMapBreak}
%\begin{syntax}
-%\cs{PropMapBreak}
+%\cs{propMapBreak}
%\end{syntax}
%Used to terminate a prop map function before all
%entries in the \meta{property list} have been processed. This
@@ -6807,9 +6807,9 @@ should not be relied upon.
%\end{texnote}
%\end{function}
-%\begin{function}{\PropMapBreakDo}
+%\begin{function}{\propMapBreakDo}
%\begin{syntax}
-%\cs{PropMapBreakDo} \Arg{code}
+%\cs{propMapBreakDo} \Arg{code}
%\end{syntax}
%Used to terminate a prop map function before all
%entries in the \meta{property list} have been processed, inserting
@@ -6837,54 +6837,54 @@ should not be relied upon.
\section{Property List Conditionals}
-\begin{function}{\PropIfExist,\PropIfExistT,\PropIfExistF,\PropIfExistTF}
+\begin{function}{\propIfExist,\propIfExistT,\propIfExistF,\propIfExistTF}
\begin{syntax}
-\cs{PropIfExist} \meta{property list}
-\cs{PropIfExistT} \meta{property list} \Arg{true code}
-\cs{PropIfExistF} \meta{property list} \Arg{false code}
-\cs{PropIfExistTF} \meta{property list} \Arg{true code} \Arg{false code}
+\cs{propIfExist} \meta{property list}
+\cs{propIfExistT} \meta{property list} \Arg{true code}
+\cs{propIfExistF} \meta{property list} \Arg{false code}
+\cs{propIfExistTF} \meta{property list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{property list} is currently defined. This does not
check that the \meta{property list} really is a property list variable.
\begin{demohigh}
-\PropIfExistTF \lTmpaProp {\Return{Yes}} {\Return{No}}
-\PropIfExistTF \lFooUndefinedProp {\Return{Yes}} {\Return{No}}
+\propIfExistTF \lTmpaProp {\prgReturn{Yes}} {\prgReturn{No}}
+\propIfExistTF \lFooUndefinedProp {\prgReturn{Yes}} {\prgReturn{No}}
\end{demohigh}
\end{function}
-\begin{function}{\PropVarIfEmpty,\PropVarIfEmptyT,\PropVarIfEmptyF,\PropVarIfEmptyTF}
+\begin{function}{\propVarIfEmpty,\propVarIfEmptyT,\propVarIfEmptyF,\propVarIfEmptyTF}
\begin{syntax}
-\cs{PropVarIfEmpty} \meta{property list}
-\cs{PropVarIfEmptyT} \meta{property list} \Arg{true code}
-\cs{PropVarIfEmptyF} \meta{property list} \Arg{false code}
-\cs{PropVarIfEmptyTF} \meta{property list} \Arg{true code} \Arg{false code}
+\cs{propVarIfEmpty} \meta{property list}
+\cs{propVarIfEmptyT} \meta{property list} \Arg{true code}
+\cs{propVarIfEmptyF} \meta{property list} \Arg{false code}
+\cs{propVarIfEmptyTF} \meta{property list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{property list} is empty (containing no entries).
\begin{demohigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two}
-\PropVarIfEmptyTF \lTmpaProp {\Return{Empty}} {\Return{NonEmpty}}
-\PropClear \lTmpaProp
-\PropVarIfEmptyTF \lTmpaProp {\Return{Empty}} {\Return{NonEmpty}}
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two}
+\propVarIfEmptyTF \lTmpaProp {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
+\propClear \lTmpaProp
+\propVarIfEmptyTF \lTmpaProp {\prgReturn{Empty}} {\prgReturn{NonEmpty}}
\end{demohigh}
\end{function}
-\begin{function}{\PropVarIfIn,\PropVarIfInT,\PropVarIfInF,\PropVarIfInTF}
+\begin{function}{\propVarIfIn,\propVarIfInT,\propVarIfInF,\propVarIfInTF}
\begin{syntax}
-\cs{PropVarIfIn} \meta{property list} \Arg{key}
-\cs{PropVarIfInT} \meta{property list} \Arg{key} \Arg{true code}
-\cs{PropVarIfInF} \meta{property list} \Arg{key} \Arg{false code}
-\cs{PropVarIfInTF} \meta{property list} \Arg{key} \Arg{true code} \Arg{false code}
+\cs{propVarIfIn} \meta{property list} \Arg{key}
+\cs{propVarIfInT} \meta{property list} \Arg{key} \Arg{true code}
+\cs{propVarIfInF} \meta{property list} \Arg{key} \Arg{false code}
+\cs{propVarIfInTF} \meta{property list} \Arg{key} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{key} is present in the \meta{property list},
-making the comparison using the method described by \cs{StrIfEqTF}.
+making the comparison using the method described by \cs{strIfEqTF}.
\begin{demohigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two}
-\PropVarIfInTF \lTmpaProp {key1} {\Return{Yes}} {\Return{Not}}
-\PropVarIfInTF \lTmpaProp {key3} {\Return{Yes}} {\Return{Not}}
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two}
+\propVarIfInTF \lTmpaProp {key1} {\prgReturn{Yes}} {\prgReturn{Not}}
+\propVarIfInTF \lTmpaProp {key3} {\prgReturn{Yes}} {\prgReturn{Not}}
\end{demohigh}
%\begin{texnote}
%This function iterates through every key--value pair in the
-%\meta{property list} and is therefore slower than using \cs{PropGetTF}.
+%\meta{property list} and is therefore slower than using \cs{propGetTF}.
%\end{texnote}
\end{function}
@@ -6903,16 +6903,16 @@ Let us give a few examples. The following example replace the first
occurrence of \enquote{\texttt{at}} with \enquote{\texttt{is}}
in the token list variable \cs{lTmpaTl}.
\begin{demohigh}
-\TlSet \lTmpaTl {That cat.}
-\RegexReplaceOnce {at} {is} \lTmpaTl
-\TlUse \lTmpaTl
+\tlSet \lTmpaTl {That cat.}
+\regexReplaceOnce {at} {is} \lTmpaTl
+\tlUse \lTmpaTl
\end{demohigh}
A more complicated example is
a pattern to emphasize each word and add a comma after it:
\begin{demohigh}
-\TlSet \lTmpaTl {That cat.}
-\RegexReplaceAll {\w+} {\c{underline} \cB\{ \0 \cE\} ,} \lTmpaTl
-\TlUse \lTmpaTl
+\tlSet \lTmpaTl {That cat.}
+\regexReplaceAll {\w+} {\c{underline} \cB\{ \0 \cE\} ,} \lTmpaTl
+\tlUse \lTmpaTl
\end{demohigh}
The |\w| sequence represents any \enquote{word} character, and |+|
indicates that the |\w| sequence should be repeated as many times as
@@ -6923,10 +6923,10 @@ and its argument |\0| is put between braces |\cB\{| and |\cE\}|.
If a regular expression is to be used several times,
it can be compiled once, and stored in a regex
-variable using \cs{RegexSet}. For example,
+variable using \cs{regexSet}. For example,
\begin{codehigh}
-\RegexNew \lFooRegex
-\RegexSet \lFooRegex {\c{begin} \cB. (\c[^BE].*) \cE.}
+\regexNew \lFooRegex
+\regexSet \lFooRegex {\c{begin} \cB. (\c[^BE].*) \cE.}
\end{codehigh}
stores in \cs{lFooRegex} a regular expression which matches the
starting marker for an environment: \cs[no-index]{begin}, followed by a
@@ -6961,47 +6961,47 @@ However, they may be overwritten by other non-kernel
code and so should only be used for short-term storage.
\end{variable}
-\begin{function}{\RegexNew}
+\begin{function}{\regexNew}
\begin{syntax}
-\cs{RegexNew} \meta{regex var}
+\cs{regexNew} \meta{regex var}
\end{syntax}
Creates a new \meta{regex var} or raises an error if the
name is already taken. The declaration is global. The
\meta{regex var} is initially such that it never matches.
\end{function}
-\begin{function}{\RegexSet}
+\begin{function}{\regexSet}
\begin{syntax}
-\cs{RegexSet} \meta{regex var} \Arg{regex}
+\cs{regexSet} \meta{regex var} \Arg{regex}
\end{syntax}
Stores a compiled version of the \meta{regular expression} in the
\meta{regex var}. For instance, this function can be
used as
\begin{codehigh}
-\RegexNew \lMyRegex
-\RegexSet \lMyRegex {my\ (simple\ )? reg(ex|ular\ expression)}
+\regexNew \lMyRegex
+\regexSet \lMyRegex {my\ (simple\ )? reg(ex|ular\ expression)}
\end{codehigh}
\end{function}
-\begin{function}{\RegexConst}
+\begin{function}{\regexConst}
\begin{syntax}
-\cs{RegexConst} \meta{regex var} \Arg{regex}
+\cs{regexConst} \meta{regex var} \Arg{regex}
\end{syntax}
Creates a new constant \meta{regex var} or raises an error if the name
is already taken. The value of the \meta{regex var} is set
globally to the compiled version of the \meta{regular expression}.
\end{function}
-\begin{function}{\RegexLog,\RegexVarLog,\RegexShow,\RegexVarShow}
+\begin{function}{\regexLog,\regexVarLog,\regexShow,\regexVarShow}
\begin{syntax}
-\cs{RegexLog} \Arg{regex}
-\cs{RegexVarLog} \meta{regex var}
-\cs{RegexShow} \Arg{regex}
-\cs{RegexVarShow} \meta{regex var}
+\cs{regexLog} \Arg{regex}
+\cs{regexVarLog} \meta{regex var}
+\cs{regexShow} \Arg{regex}
+\cs{regexVarShow} \meta{regex var}
\end{syntax}
Displays in the terminal or writes in the log file (respectively)
how \pkg{l3regex} interprets the \meta{regex}. For instance,
-\cs{RegexShow} \verb+{\A X|Y}+ shows
+\cs{regexShow} \verb+{\A X|Y}+ shows
\begin{codehigh}
+-branch
anchor at start (\A)
@@ -7015,35 +7015,35 @@ the second branch is not anchored to the beginning of the match.
\section{Regular Expression Matching}
-\begin{function}{\RegexMatch,\RegexMatchT,\RegexMatchF,\RegexMatchTF}
+\begin{function}{\regexMatch,\regexMatchT,\regexMatchF,\regexMatchTF}
\begin{syntax}
-\cs{RegexMatch} \Arg{regex} \Arg{token list}
-\cs{RegexMatchT} \Arg{regex} \Arg{token list} \Arg{true code}
-\cs{RegexMatchF} \Arg{regex} \Arg{token list} \Arg{false code}
-\cs{RegexMatchTF} \Arg{regex} \Arg{token list} \Arg{true code} \Arg{false code}
+\cs{regexMatch} \Arg{regex} \Arg{token list}
+\cs{regexMatchT} \Arg{regex} \Arg{token list} \Arg{true code}
+\cs{regexMatchF} \Arg{regex} \Arg{token list} \Arg{false code}
+\cs{regexMatchTF} \Arg{regex} \Arg{token list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{regular expression} matches any part
of the \meta{token list}. For instance,
\begin{demohigh}
-\RegexMatchTF {b [cde]*} {abecdcx} {\Print{True}} {\Print{False}}
-\RegexMatchTF {[b-dq-w]} {example} {\Print{True}} {\Print{False}}
+\regexMatchTF {b [cde]*} {abecdcx} {\prgPrint{True}} {\prgPrint{False}}
+\regexMatchTF {[b-dq-w]} {example} {\prgPrint{True}} {\prgPrint{False}}
\end{demohigh}
\end{function}
-\begin{function}{\RegexVarMatch,\RegexVarMatchT,\RegexVarMatchF,\RegexVarMatchTF}
+\begin{function}{\regexVarMatch,\regexVarMatchT,\regexVarMatchF,\regexVarMatchTF}
\begin{syntax}
-\cs{RegexVarMatch} \meta{regex var} \Arg{token list}
-\cs{RegexVarMatchT} \meta{regex var} \Arg{token list} \Arg{true code}
-\cs{RegexVarMatchF} \meta{regex var} \Arg{token list} \Arg{false code}
-\cs{RegexVarMatchTF} \meta{regex var} \Arg{token list} \Arg{true code} \Arg{false code}
+\cs{regexVarMatch} \meta{regex var} \Arg{token list}
+\cs{regexVarMatchT} \meta{regex var} \Arg{token list} \Arg{true code}
+\cs{regexVarMatchF} \meta{regex var} \Arg{token list} \Arg{false code}
+\cs{regexVarMatchTF} \meta{regex var} \Arg{token list} \Arg{true code} \Arg{false code}
\end{syntax}
Tests whether the \meta{regex var} matches any part of the \meta{token list}.
\end{function}
-\begin{function}{\RegexCount,\RegexVarCount}
+\begin{function}{\regexCount,\regexVarCount}
\begin{syntax}
-\cs{RegexCount} \Arg{regex} \Arg{token list} \meta{int var}
-\cs{RegexVarCount} \meta{regex var} \Arg{token list} \meta{int var}
+\cs{regexCount} \Arg{regex} \Arg{token list} \meta{int var}
+\cs{regexVarCount} \meta{regex var} \Arg{token list} \meta{int var}
\end{syntax}
Sets \meta{int var} within the current \TeX{} group level
equal to the number of times
@@ -7056,15 +7056,15 @@ Infinite loops are prevented in the case where the regular expression
can match an empty token list: then we count one match between each
pair of characters. For instance,
\begin{demohigh}
-\IntNew \lFooInt
-\RegexCount {(b+|c)} {abbababcbb} \lFooInt
-\IntUse \lFooInt
+\intNew \lFooInt
+\regexCount {(b+|c)} {abbababcbb} \lFooInt
+\intUse \lFooInt
\end{demohigh}
\end{function}
-\begin{function}{\RegexMatchCase}
+\begin{function}{\regexMatchCase}
\begin{syntax}
-\cs{RegexMatchCase}
+\cs{regexMatchCase}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{code case_2}
@@ -7086,14 +7086,14 @@ discarded, while if none of the \meta{regex} match at a given
position then the next starting position is attempted. If none of
the \meta{regex} match anywhere in the \meta{token list} then
nothing is left in the input stream. Note that this differs from
-nested \cs{RegexMatch} statements since all \meta{regex} are
+nested \cs{regexMatch} statements since all \meta{regex} are
attempted at each position rather than attempting to match
\meta{regex_1} at every position before moving on to \meta{regex_2}.
\end{function}
-\begin{function}{\RegexMatchCaseT}
+\begin{function}{\regexMatchCaseT}
\begin{syntax}
-\cs{RegexMatchCaseT}
+\cs{regexMatchCaseT}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{code case_2}
@@ -7111,9 +7111,9 @@ discarded. Each \meta{regex} can either be given
as a regex variable or as an explicit regular expression.
\end{function}
-\begin{function}{\RegexMatchCaseF}
+\begin{function}{\regexMatchCaseF}
\begin{syntax}
-\cs{RegexMatchCaseF}
+\cs{regexMatchCaseF}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{code case_2}
@@ -7132,9 +7132,9 @@ is left in the input stream. Each \meta{regex} can either be given
as a regex variable or as an explicit regular expression.
\end{function}
-\begin{function}{\RegexMatchCaseTF}
+\begin{function}{\regexMatchCaseTF}
\begin{syntax}
-\cs{RegexMatchCaseTF}
+\cs{regexMatchCaseTF}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{code case_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{code case_2}
@@ -7155,12 +7155,12 @@ as a regex variable or as an explicit regular expression.
\section{Regular Expression Submatch Extraction}
-\begin{function}{\RegexExtractOnce,\RegexExtractOnceT,\RegexExtractOnceF,\RegexExtractOnceTF}
+\begin{function}{\regexExtractOnce,\regexExtractOnceT,\regexExtractOnceF,\regexExtractOnceTF}
\begin{syntax}
-\cs{RegexExtractOnce} \Arg{regex} \Arg{token list} \meta{seq var}
-\cs{RegexExtractOnceT} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{true code}
-\cs{RegexExtractOnceF} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{false code}
-\cs{RegexExtractOnceTF} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
+\cs{regexExtractOnce} \Arg{regex} \Arg{token list} \meta{seq var}
+\cs{regexExtractOnceT} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{true code}
+\cs{regexExtractOnceF} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{false code}
+\cs{regexExtractOnceTF} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
\end{syntax}
Finds the first match of the \meta{regular expression} in the
\meta{token list}. If it exists, the match is stored as the first
@@ -7173,7 +7173,7 @@ capturing groups, in the order of their opening parenthesis. The
\par
For instance, assume that you type
\begin{codehigh}
-\RegexExtractOnce {\A(La)?TeX(!*)\Z} {LaTeX!!!} \lTmpaSeq
+\regexExtractOnce {\A(La)?TeX(!*)\Z} {LaTeX!!!} \lTmpaSeq
\end{codehigh}
Then the regular expression (anchored at the start with |\A| and
at the end with |\Z|) must match the whole token list. The first
@@ -7181,16 +7181,16 @@ capturing group, |(La)?|, matches |La|, and the second capturing
group, |(!*)|, matches |!!!|. Thus, \cs{lTmpaSeq} contains as a result
the items |{LaTeX!!!}|, |{La}|, and |{!!!}|.
Note that the $n$-th item of \cs{lTmpaSeq}, as obtained using
-\cs{SeqVarItem}, correspond to the submatch numbered $(n-1)$ in
-functions such as \cs{RegexReplaceOnce}.
+\cs{seqVarItem}, correspond to the submatch numbered $(n-1)$ in
+functions such as \cs{regexReplaceOnce}.
\end{function}
-\begin{function}{\RegexVarExtractOnce,\RegexVarExtractOnceT,\RegexVarExtractOnceF,\RegexVarExtractOnceTF}
+\begin{function}{\regexVarExtractOnce,\regexVarExtractOnceT,\regexVarExtractOnceF,\regexVarExtractOnceTF}
\begin{syntax}
-\cs{RegexVarExtractOnce} \meta{regex var} \Arg{token list} \meta{seq var}
-\cs{RegexVarExtractOnceT} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code}
-\cs{RegexVarExtractOnceF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{false code}
-\cs{RegexVarExtractOnceTF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
+\cs{regexVarExtractOnce} \meta{regex var} \Arg{token list} \meta{seq var}
+\cs{regexVarExtractOnceT} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code}
+\cs{regexVarExtractOnceF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{false code}
+\cs{regexVarExtractOnceTF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
\end{syntax}
Finds the first match of the \meta{regex var} in the
\meta{token list}. If it exists, the match is stored as the first
@@ -7202,52 +7202,52 @@ capturing groups, in the order of their opening parenthesis. The
\meta{false code} otherwise.
\end{function}
-\begin{function}{\RegexExtractAll,\RegexExtractAllT,\RegexExtractAllF,\RegexExtractAllTF}
+\begin{function}{\regexExtractAll,\regexExtractAllT,\regexExtractAllF,\regexExtractAllTF}
\begin{syntax}
-\cs{RegexExtractAll} \Arg{regex} \Arg{token list} \meta{seq var}
-\cs{RegexExtractAllT} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{true code}
-\cs{RegexExtractAllF} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{false code}
-\cs{RegexExtractAllTF} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
+\cs{regexExtractAll} \Arg{regex} \Arg{token list} \meta{seq var}
+\cs{regexExtractAllT} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{true code}
+\cs{regexExtractAllF} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{false code}
+\cs{regexExtractAllTF} \Arg{regex} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
\end{syntax}
Finds all matches of the \meta{regular expression}
in the \meta{token list}, and stores all the submatch information
in a single sequence (concatenating the results of
-multiple \cs{RegexExtractOnce} calls).
+multiple \cs{regexExtractOnce} calls).
The \meta{seq var} is assigned locally. If there is no match,
the \meta{seq var} is cleared.
The testing versions insert the \meta{true code} into the input
stream if a match was found, and the \meta{false code} otherwise.
For instance, assume that you type
\begin{codehigh}
-\RegexExtractAll {\w+} {Hello, world!} \lTmpaSeq
+\regexExtractAll {\w+} {Hello, world!} \lTmpaSeq
\end{codehigh}
Then the regular expression matches twice, the resulting
sequence contains the two items |{Hello}| and |{world}|.
\end{function}
-\begin{function}{\RegexVarExtractAll,\RegexVarExtractAllT,\RegexVarExtractAllF,\RegexVarExtractAllTF}
+\begin{function}{\regexVarExtractAll,\regexVarExtractAllT,\regexVarExtractAllF,\regexVarExtractAllTF}
\begin{syntax}
-\cs{RegexVarExtractAll} \meta{regex var} \Arg{token list} \meta{seq var}
-\cs{RegexVarExtractAllT} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code}
-\cs{RegexVarExtractAllF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{false code}
-\cs{RegexVarExtractAllTF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
+\cs{regexVarExtractAll} \meta{regex var} \Arg{token list} \meta{seq var}
+\cs{regexVarExtractAllT} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code}
+\cs{regexVarExtractAllF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{false code}
+\cs{regexVarExtractAllTF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
\end{syntax}
Finds all matches of the \meta{regex var}
in the \meta{token list}, and stores all the submatch information
in a single sequence (concatenating the results of
-multiple \cs{RegexVarExtractOnce} calls).
+multiple \cs{regexVarExtractOnce} calls).
The \meta{seq var} is assigned locally. If there is no match,
the \meta{seq var} is cleared.
The testing versions insert the \meta{true code} into the input
stream if a match was found, and the \meta{false code} otherwise.
\end{function}
-\begin{function}{\RegexSplit,\RegexSplitT,\RegexSplitF,\RegexSplitTF}
+\begin{function}{\regexSplit,\regexSplitT,\regexSplitF,\regexSplitTF}
\begin{syntax}
-\cs{RegexSplit} \Arg{regular expression} \Arg{token list} \meta{seq var}
-\cs{RegexSplitT} \Arg{regular expression} \Arg{token list} \meta{seq var} \Arg{true code}
-\cs{RegexSplitF} \Arg{regular expression} \Arg{token list} \meta{seq var} \Arg{false code}
-\cs{RegexSplitTF} \Arg{regular expression} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
+\cs{regexSplit} \Arg{regular expression} \Arg{token list} \meta{seq var}
+\cs{regexSplitT} \Arg{regular expression} \Arg{token list} \meta{seq var} \Arg{true code}
+\cs{regexSplitF} \Arg{regular expression} \Arg{token list} \meta{seq var} \Arg{false code}
+\cs{regexSplitTF} \Arg{regular expression} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
\end{syntax}
Splits the \meta{token list} into a sequence of parts, delimited by
matches of the \meta{regular expression}. If the \meta{regular expression}
@@ -7261,19 +7261,19 @@ The testing versions insert the \meta{true code} into the input
stream if a match was found, and the \meta{false code} otherwise.
For example, after
\begin{codehigh}
-\SeqNew \lPathSeq
-\RegexSplit {/} {the/path/for/this/file.tex} \lPathSeq
+\seqNew \lPathSeq
+\regexSplit {/} {the/path/for/this/file.tex} \lPathSeq
\end{codehigh}
the sequence |\lPathSeq| contains the items |{the}|, |{path}|,
|{for}|, |{this}|, and |{file.tex}|.
\end{function}
-\begin{function}{\RegexVarSplit,\RegexVarSplitT,\RegexVarSplitF,\RegexVarSplitTF}
+\begin{function}{\regexVarSplit,\regexVarSplitT,\regexVarSplitF,\regexVarSplitTF}
\begin{syntax}
-\cs{RegexVarSplit} \meta{regex var} \Arg{token list} \meta{seq var}
-\cs{RegexVarSplitT} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code}
-\cs{RegexVarSplitF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{false code}
-\cs{RegexVarSplitTF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
+\cs{regexVarSplit} \meta{regex var} \Arg{token list} \meta{seq var}
+\cs{regexVarSplitT} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code}
+\cs{regexVarSplitF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{false code}
+\cs{regexVarSplitTF} \meta{regex var} \Arg{token list} \meta{seq var} \Arg{true code} \Arg{false code}
\end{syntax}
Splits the \meta{token list} into a sequence of parts, delimited by
matches of the \meta{regular expression}. If the \meta{regex var}
@@ -7289,12 +7289,12 @@ stream if a match was found, and the \meta{false code} otherwise.
\section{Regular Expression Replacement}
-\begin{function}{\RegexReplaceOnce,\RegexReplaceOnceT,\RegexReplaceOnceT,\RegexReplaceOnceTF}
+\begin{function}{\regexReplaceOnce,\regexReplaceOnceT,\regexReplaceOnceT,\regexReplaceOnceTF}
\begin{syntax}
-\cs{RegexReplaceOnce} \Arg{regular expression} \Arg{replacement} \meta{tl var}
-\cs{RegexReplaceOnceT} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{true code}
-\cs{RegexReplaceOnceF} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{false code}
-\cs{RegexReplaceOnceTF} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{true code} \Arg{false code}
+\cs{regexReplaceOnce} \Arg{regular expression} \Arg{replacement} \meta{tl var}
+\cs{regexReplaceOnceT} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{true code}
+\cs{regexReplaceOnceF} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{false code}
+\cs{regexReplaceOnceTF} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{true code} \Arg{false code}
\end{syntax}
Searches for the \meta{regular expression} in the contents of the
\meta{tl var} and replaces the first match with the
@@ -7304,12 +7304,12 @@ first capturing group, |\2| of the second, \emph{etc.}
The result is assigned locally to \meta{tl var}.
\end{function}
-\begin{function}{\RegexReplaceOnce,\RegexReplaceOnceT,\RegexReplaceOnceT,\RegexReplaceOnceTF}
+\begin{function}{\regexReplaceOnce,\regexReplaceOnceT,\regexReplaceOnceT,\regexReplaceOnceTF}
\begin{syntax}
-\cs{RegexVarReplaceOnce} \meta{regex var} \Arg{replacement} \meta{tl var}
-\cs{RegexVarReplaceOnceT} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{true code}
-\cs{RegexVarReplaceOnceF} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{false code}
-\cs{RegexVarReplaceOnceTF} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{true code} \Arg{false code}
+\cs{regexVarReplaceOnce} \meta{regex var} \Arg{replacement} \meta{tl var}
+\cs{regexVarReplaceOnceT} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{true code}
+\cs{regexVarReplaceOnceF} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{false code}
+\cs{regexVarReplaceOnceTF} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{true code} \Arg{false code}
\end{syntax}
Searches for the \meta{regex var} in the contents of the
\meta{tl var} and replaces the first match with the
@@ -7319,12 +7319,12 @@ first capturing group, |\2| of the second, \emph{etc.}
The result is assigned locally to \meta{tl var}.
\end{function}
-\begin{function}{\RegexReplaceAll,\RegexReplaceAllT,\RegexReplaceAllF,\RegexReplaceAllTF}
+\begin{function}{\regexReplaceAll,\regexReplaceAllT,\regexReplaceAllF,\regexReplaceAllTF}
\begin{syntax}
-\cs{RegexReplaceAll} \Arg{regular expression} \Arg{replacement} \meta{tl var}
-\cs{RegexReplaceAllT} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{true code}
-\cs{RegexReplaceAllF} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{false code}
-\cs{RegexReplaceAllTF} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{true code} \Arg{false code}
+\cs{regexReplaceAll} \Arg{regular expression} \Arg{replacement} \meta{tl var}
+\cs{regexReplaceAllT} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{true code}
+\cs{regexReplaceAllF} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{false code}
+\cs{regexReplaceAllTF} \Arg{regular expression} \Arg{replacement} \meta{tl var} \Arg{true code} \Arg{false code}
\end{syntax}
Replaces all occurrences of the \meta{regex var} in the
contents of the \meta{tl var}
@@ -7335,12 +7335,12 @@ independently, and matches cannot overlap. The result is assigned
locally to \meta{tl~var}.
\end{function}
-\begin{function}{\RegexVarReplaceAll,\RegexVarReplaceAllT,\RegexVarReplaceAllF,\RegexVarReplaceAllTF}
+\begin{function}{\regexVarReplaceAll,\regexVarReplaceAllT,\regexVarReplaceAllF,\regexVarReplaceAllTF}
\begin{syntax}
-\cs{RegexVarReplaceAll} \meta{regex var} \Arg{replacement} \meta{tl var}
-\cs{RegexVarReplaceAllT} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{true code}
-\cs{RegexVarReplaceAllF} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{false code}
-\cs{RegexVarReplaceAllTF} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{true code} \Arg{false code}
+\cs{regexVarReplaceAll} \meta{regex var} \Arg{replacement} \meta{tl var}
+\cs{regexVarReplaceAllT} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{true code}
+\cs{regexVarReplaceAllF} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{false code}
+\cs{regexVarReplaceAllTF} \meta{regex var} \Arg{replacement} \meta{tl var} \Arg{true code} \Arg{false code}
\end{syntax}
Replaces all occurrences of the \meta{regular expression} in the
contents of the \meta{tl var}
@@ -7351,9 +7351,9 @@ independently, and matches cannot overlap. The result is assigned
locally to \meta{tl var}.
\end{function}
-\begin{function}{\RegexReplaceCaseOnce}
+\begin{function}{\regexReplaceCaseOnce}
\begin{syntax}
-\cs{RegexReplaceCaseOnce}
+\cs{regexReplaceCaseOnce}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{replacement_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{replacement_2}
@@ -7371,14 +7371,14 @@ variable or as an explicit regular expression.
In detail, for each starting position in the \meta{token list}, each
of the \meta{regex} is searched in turn. If one of them matches
then it is replaced by the corresponding \meta{replacement} as
-described for \cs{RegexReplaceOnce}. This is equivalent to
-checking with \cs{RegexMatchCase} which \meta{regex} matches,
-then performing the replacement with \cs{RegexReplaceOnce}.
+described for \cs{regexReplaceOnce}. This is equivalent to
+checking with \cs{regexMatchCase} which \meta{regex} matches,
+then performing the replacement with \cs{regexReplaceOnce}.
\end{function}
-\begin{function}{\RegexReplaceCaseOnceT}
+\begin{function}{\regexReplaceCaseOnceT}
\begin{syntax}
-\cs{RegexReplaceCaseOnceT}
+\cs{regexReplaceCaseOnceT}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{replacement_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{replacement_2}
@@ -7396,9 +7396,9 @@ input stream. If none of the \meta{regex} match, then the
variable or as an explicit regular expression.
\end{function}
-\begin{function}{\RegexReplaceCaseOnceF}
+\begin{function}{\regexReplaceCaseOnceF}
\begin{syntax}
-\cs{RegexReplaceCaseOnceF}
+\cs{regexReplaceCaseOnceF}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{replacement_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{replacement_2}
@@ -7416,9 +7416,9 @@ the input stream. Each \meta{regex} can either be given as a regex
variable or as an explicit regular expression.
\end{function}
-\begin{function}{\RegexReplaceCaseOnceTF}
+\begin{function}{\regexReplaceCaseOnceTF}
\begin{syntax}
-\cs{RegexReplaceCaseOnceTF}
+\cs{regexReplaceCaseOnceTF}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{replacement_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{replacement_2}
@@ -7437,9 +7437,9 @@ the input stream. Each \meta{regex} can either be given as a regex
variable or as an explicit regular expression.
\end{function}
-\begin{function}{\RegexReplaceCaseAll}
+\begin{function}{\regexReplaceCaseAll}
\begin{syntax}
-\cs{RegexReplaceCaseAll}
+\cs{regexReplaceCaseAll}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{replacement_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{replacement_2}
@@ -7459,8 +7459,8 @@ search resumes at the position that follows this match (and
replacement). For instance
%% FIXME
%\begin{codehigh}
-%\TlSet \lTmpaTl {Hello, world!}
-%\RegexReplaceCaseAll
+%\tlSet \lTmpaTl {Hello, world!}
+%\regexReplaceCaseAll
% {
% {[A-Za-z]+} {``\0''}
% {\b} {---}
@@ -7468,8 +7468,8 @@ replacement). For instance
% } \lTmpaTl
%\end{codehigh}
\begin{codehigh}
-\TlSet \lTmpaTl {Hello, world!}
-\RegexReplaceCaseAll
+\tlSet \lTmpaTl {Hello, world!}
+\regexReplaceCaseAll
{
{[A-Za-z]+} {``\0''}
{\b} {---}
@@ -7481,12 +7481,12 @@ results in \cs{lTmpaTl} having the contents
the word-boundary assertion |\b| did not match at the start of words
because the case |[A-Za-z]+| matched at these positions. To change
this, one could simply swap the order of the two cases in the
-argument of \cs{RegexReplaceCaseAll}.
+argument of \cs{regexReplaceCaseAll}.
\end{function}
-\begin{function}{\RegexReplaceCaseAllT}
+\begin{function}{\regexReplaceCaseAllT}
\begin{syntax}
-\cs{RegexReplaceCaseAllT}
+\cs{regexReplaceCaseAllT}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{replacement_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{replacement_2}
@@ -7502,9 +7502,9 @@ assigned locally to \meta{tl var}, and the \meta{true code}
is left in the input stream if any replacement was made.
\end{function}
-\begin{function}{\RegexReplaceCaseAllF}
+\begin{function}{\regexReplaceCaseAllF}
\begin{syntax}
-\cs{RegexReplaceCaseAllF}
+\cs{regexReplaceCaseAllF}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{replacement_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{replacement_2}
@@ -7520,9 +7520,9 @@ assigned locally to \meta{tl var}, and the \meta{false code} is left
in the input stream if not any replacement was made.
\end{function}
-\begin{function}{\RegexReplaceCaseAllTF}
+\begin{function}{\regexReplaceCaseAllTF}
\begin{syntax}
-\cs{RegexReplaceCaseAllTF}
+\cs{regexReplaceCaseAllTF}
~ ~ |{|
~ ~ ~ ~ \Arg{regex_1} \Arg{replacement_1}
~ ~ ~ ~ \Arg{regex_2} \Arg{replacement_2}
@@ -7544,7 +7544,7 @@ any replacement was made or not.
\subsection{Regular Expression Examples}
We start with a few examples, and encourage the reader to apply
-\cs{RegexShow} to these regular expressions.
+\cs{regexShow} to these regular expressions.
\begin{itemize}
\item |Cat| matches the word \enquote{Cat} capitalized in this way,
but also matches the beginning of the word \enquote{Cattle}: use
@@ -7583,9 +7583,9 @@ We start with a few examples, and encourage the reader to apply
\item |\G.*?\K| at the beginning of a regular expression matches and
discards (due to |\K|) everything between the end of the previous
match (|\G|) and what is matched by the rest of the regular
- expression; this is useful in \cs{RegexReplaceAll} when the
+ expression; this is useful in \cs{regexReplaceAll} when the
goal is to extract matches or submatches in a finer way than with
- \cs{RegexExtractAll}.
+ \cs{regexExtractAll}.
\end{itemize}
While it is impossible for a regular expression to match only integer
expressions, \newline\verb*"[\+\-\(]*\d+\)*([\+\-*/][\+\-\(]*\d+\)*)*" matches among
@@ -7735,19 +7735,19 @@ match. Parenthesized groups are labelled in the order of their
opening parenthesis, starting at $1$. The contents of those groups
corresponding to the \enquote{best} match (leftmost longest)
can be extracted and stored in a sequence of token lists using for
-instance \cs{RegexExtractOnceTF}.
+instance \cs{regexExtractOnceTF}.
The |\K| escape sequence resets the beginning of the match to the
current position in the token list. This only affects what is reported
as the full match. For instance,
\begin{codehigh}
-\RegexExtractAll {a \K .} {a123aaxyz} \lFooSeq
+\regexExtractAll {a \K .} {a123aaxyz} \lFooSeq
\end{codehigh}
results in \cs{lFooSeq} containing the items |{1}| and |{a}|: the
true matches are |{a1}| and |{aa}|, but they are trimmed by the use of
|\K|. The |\K| command does not affect capturing groups: for instance,
\begin{codehigh}
-\RegexExtractOnce {(. \K c)+ \d} {acbc3} \lFooSeq
+\regexExtractOnce {(. \K c)+ \d} {acbc3} \lFooSeq
\end{codehigh}
results in \cs{lFooSeq} containing the items |{c3}| and |{bc}|: the
true match is |{acbc3}|, with first submatch |{bc}|, but |\K| resets
@@ -7832,8 +7832,8 @@ get the latter effect, it is simplest to use \TeX{}'s expansion
machinery directly: if \cs{lTmpaTl} contains
\verb"B|C" then the following two lines show the same result:
\begin{codehigh}
-\RegexShow {A \u{lTmpaTl} D}
-\RegexShow {A B | C D}
+\regexShow {A \u{lTmpaTl} D}
+\regexShow {A B | C D}
\end{codehigh}
\subsection{Miscellaneous}
@@ -7851,7 +7851,7 @@ Anchors and simple assertions.
End of the subject token list.
\item[\\G] Start of the current match. This is only different from |^|
in the case of multiple matches: for instance
- |\RegexCount {\G a} {aaba} \lTmpaInt| yields $2$, but
+ |\regexCount {\G a} {aaba} \lTmpaInt| yields $2$, but
replacing |\G| by |^| would result in \cs{lTmpaInt} holding the
value $1$.
\end{l3regex-syntax}
@@ -7895,9 +7895,9 @@ escaped with a backslash.
For instance,
\begin{demohigh}
-\TlSet \lTmpaTl {Hello, world!}
-\RegexReplaceAll {([er]?l|o) .} {(\0--\1)} \lTmpaTl
-\TlUse \lTmpaTl
+\tlSet \lTmpaTl {Hello, world!}
+\regexReplaceAll {([er]?l|o) .} {(\0--\1)} \lTmpaTl
+\tlUse \lTmpaTl
\end{demohigh}
The submatches are numbered according to the order in which the
@@ -7943,120 +7943,120 @@ extract the value of the control sequence and turn it into a string.
Matches can also be used within the arguments of |\c| and |\u|. For
instance,
\begin{demohigh}
-\TlSet \lMyOneTl {first}
-\TlSet \lMyTwoTl {\underline{second}}
-\TlSet \lTmpaTl {One,Two,One,One}
-\RegexReplaceAll {[^,]+} {\u{lMy\0Tl}} \lTmpaTl
-\TlUse \lTmpaTl
+\tlSet \lMyOneTl {first}
+\tlSet \lMyTwoTl {\underline{second}}
+\tlSet \lTmpaTl {One,Two,One,One}
+\regexReplaceAll {[^,]+} {\u{lMy\0Tl}} \lTmpaTl
+\tlUse \lTmpaTl
\end{demohigh}
Regex replacement is also a convenient way to produce token lists
with arbitrary category codes. For instance
\begin{codehigh}
-\TlClear \lTmpaTl
-\RegexReplaceAll { } {\cU\% \cA\~} \lTmpaTl
+\tlClear \lTmpaTl
+\regexReplaceAll { } {\cU\% \cA\~} \lTmpaTl
\end{codehigh}
results in \cs{lTmpaTl} containing the percent character
with category code $7$ (superscript) and an active tilde character.
\chapter{Token Manipulation (\texttt{Token})}
-\begin{function}{\CharLowercase,\CharUppercase,\CharTitlecase,\CharFoldcase}
+\begin{function}{\charLowercase,\charUppercase,\charTitlecase,\charFoldcase}
\begin{syntax}
-\cs{CharLowercase} \meta{char}
-\cs{CharUppercase} \meta{char}
-\cs{CharTitlecase} \meta{char}
-\cs{CharFoldcase} \meta{char}
+\cs{charLowercase} \meta{char}
+\cs{charUppercase} \meta{char}
+\cs{charTitlecase} \meta{char}
+\cs{charFoldcase} \meta{char}
\end{syntax}
Converts the \meta{char} to the equivalent case-changed character
-as detailed by the function name (see %\cs{StrFoldcase} and
-\cs{TextTitlecase} for details of these terms). The case mapping
-is carried out with no context-dependence (\emph{cf.} \cs{TextUppercase},
+as detailed by the function name (see %\cs{strFoldcase} and
+\cs{textTitlecase} for details of these terms). The case mapping
+is carried out with no context-dependence (\emph{cf.} \cs{textUppercase},
\emph{etc.}) These functions generate characters with the category code
of the \meta{char} (i.e. only the character code changes).
\end{function}
-\begin{function}{\CharStrLowercase,\CharStrUppercase,\CharStrTitlecase,\CharStrFoldcase}
+\begin{function}{\charStrLowercase,\charStrUppercase,\charStrTitlecase,\charStrFoldcase}
\begin{syntax}
-\cs{CharStrLowercase} \meta{char}
-\cs{CharStrUppercase} \meta{char}
-\cs{CharStrTitlecase} \meta{char}
-\cs{CharStrFoldcase} \meta{char}
+\cs{charStrLowercase} \meta{char}
+\cs{charStrUppercase} \meta{char}
+\cs{charStrTitlecase} \meta{char}
+\cs{charStrFoldcase} \meta{char}
\end{syntax}
Converts the \meta{char} to the equivalent case-changed character
-as detailed by the function name (see %\cs{StrFoldcase} and
-\cs{TextTitlecase} for details of these terms). The case mapping
-is carried out with no context-dependence (\emph{cf.} \cs{TextUppercase},
+as detailed by the function name (see %\cs{strFoldcase} and
+\cs{textTitlecase} for details of these terms). The case mapping
+is carried out with no context-dependence (\emph{cf.} \cs{textUppercase},
\emph{etc.}) These functions generate \enquote{other} (category code $12$)
characters.
\end{function}
-\begin{function}{\CharSetLccode}
+\begin{function}{\charSetLccode}
\begin{syntax}
-\cs{CharSetLccode} \Arg{intexpr_1} \Arg{intexpr_2}
+\cs{charSetLccode} \Arg{intexpr_1} \Arg{intexpr_2}
\end{syntax}
Sets up the behaviour of the \meta{character} when
-found inside \cs{TextLowercase}, such that \meta{character_1}
+found inside \cs{textLowercase}, such that \meta{character_1}
will be converted into \meta{character_2}. The two \meta{characters}
may be specified using an \meta{integer expression} for the character code
concerned. This may include the \TeX{} \verb|`|\meta{character}
method for converting a single character into its character code:
\begin{codehigh}
-\CharSetLccode {`\A} {`\a} % Standard behaviour
-\CharSetLccode {`\A} {`\A + 32}
-\CharSetLccode {65} {97}
+\charSetLccode {`\A} {`\a} % Standard behaviour
+\charSetLccode {`\A} {`\A + 32}
+\charSetLccode {65} {97}
\end{codehigh}
The setting applies within the current \TeX{} group.
\end{function}
-\begin{function}{\CharSetUccode}
+\begin{function}{\charSetUccode}
\begin{syntax}
-\cs{CharSetUccode} \Arg{intexpr_1} \Arg{intexpr_2}
+\cs{charSetUccode} \Arg{intexpr_1} \Arg{intexpr_2}
\end{syntax}
Sets up the behaviour of the \meta{character} when
-found inside \cs{TextUppercase}, such that \meta{character_1}
+found inside \cs{textUppercase}, such that \meta{character_1}
will be converted into \meta{character_2}. The two \meta{characters}
may be specified using an \meta{integer expression} for the character code
concerned. This may include the \TeX{} \verb|`|\meta{character}
method for converting a single character into its character code:
\begin{codehigh}
-\CharSetUccode {`\a} {`\A} % Standard behaviour
-\CharSetUccode {`\a} {`\a - 32}
-\CharSetUccode {97} {65}
+\charSetUccode {`\a} {`\A} % Standard behaviour
+\charSetUccode {`\a} {`\a - 32}
+\charSetUccode {97} {65}
\end{codehigh}
The setting applies within the current \TeX{} group.
\end{function}
-\begin{function}{\CharValueLccode}
+\begin{function}{\charValueLccode}
\begin{syntax}
-\cs{CharValueLccode} \Arg{integer expression}
+\cs{charValueLccode} \Arg{integer expression}
\end{syntax}
Returns the current lower case code of the \meta{character} with
character code given by the
\meta{integer expression}.
\end{function}
-\begin{function}{\CharValueUccode}
+\begin{function}{\charValueUccode}
\begin{syntax}
-\cs{CharValueUccode} \Arg{integer expression}
+\cs{charValueUccode} \Arg{integer expression}
\end{syntax}
Returns the current upper case code of the \meta{character} with
character code given by the
\meta{integer expression}.
\end{function}
-%\begin{function}{\CharShowValueLccode}
+%\begin{function}{\charShowValueLccode}
%\begin{syntax}
-%\cs{CharShowValueLccode} \Arg{integer expression}
+%\cs{charShowValueLccode} \Arg{integer expression}
%\end{syntax}
%Displays the current lower case code of the \meta{character} with
%character code given by the \meta{integer expression} on the
%terminal.
%\end{function}
%
-%\begin{function}{\CharShowValueUccode}
+%\begin{function}{\charShowValueUccode}
%\begin{syntax}
-%\cs{CharShowValueUccode} \Arg{integer expression}
+%\cs{charShowValueUccode} \Arg{integer expression}
%\end{syntax}
%Displays the current upper case code of the \meta{character} with
%character code given by the \meta{integer expression} on the
@@ -8089,12 +8089,12 @@ covered as the engine treats input outside of this range as east Asian.
%Importantly, notice that these functions are intended for working with
%user \emph{text for typesetting}. For case changing programmatic data see
-%the \pkg{Str} module and discussion there of \cs{StrLowercase},
-%\cs{StrUppercase} and \cs{StrFoldcase}.
+%the \pkg{Str} module and discussion there of \cs{strLowercase},
+%\cs{strUppercase} and \cs{strFoldcase}.
-\begin{function}{\TextExpand}
+\begin{function}{\textExpand}
\begin{syntax}
-\cs{TextExpand} \Arg{text}
+\cs{textExpand} \Arg{text}
\end{syntax}
Takes user input \meta{text} and expands the content.
Protected commands (typically formatting) are left in place,
@@ -8106,14 +8106,14 @@ Commands which are neither engine- nor \LaTeX{} protected are expanded exhaustiv
%\cs{l_text_accents_tl} and \cs{l_text_letterlike_tl} are excluded from expansion.
\end{function}
-\begin{function}{\TextLowercase,\TextUppercase,\TextTitlecase,\TextTitlecaseFirst}
+\begin{function}{\textLowercase,\textUppercase,\textTitlecase,\textTitlecaseFirst}
\begin{syntax}
-\cs{TextLowercase} \Arg{tokens}
-\cs{TextUppercase} \Arg{tokens}
-\cs{TextTitlecase} \Arg{tokens}
-\cs{TextTitlecaseFirst} \Arg{tokens}
+\cs{textLowercase} \Arg{tokens}
+\cs{textUppercase} \Arg{tokens}
+\cs{textTitlecase} \Arg{tokens}
+\cs{textTitlecaseFirst} \Arg{tokens}
\end{syntax}
-Takes user input \meta{text} first applies \cs{TextExpand}, then
+Takes user input \meta{text} first applies \cs{textExpand}, then
transforms the case of character tokens as specified by the
function name. The category code of letters are not changed by this
process (at least where they can be represented by the engine as a single
@@ -8127,9 +8127,9 @@ maps to a special form, for example \texttt{ij} in Dutch which becomes
\texttt{IJ}.
\par
For titlecasing, note that there are two functions available. The
-function \cs{TextTitlecase} applies (broadly) uppercasing to the first
+function \cs{textTitlecase} applies (broadly) uppercasing to the first
letter of the input, then lowercasing to the remainder. In contrast,
-\cs{TextTitlecaseFirst} \emph{only} carries out the uppercasing operation,
+\cs{textTitlecaseFirst} \emph{only} carries out the uppercasing operation,
and leaves the balance of the input unchanged.
%Determining whether non-letter characters at the start of text should switch
%from upper- to lowercasing is controllable.
@@ -8144,24 +8144,24 @@ and leaves the balance of the input unchanged.
\par
Case changing does not take place within math mode material. For example:
\begin{demohigh}
-\TextUppercase {Text $y=mx+c$ with {Braces}}
+\textUppercase {Text $y=mx+c$ with {Braces}}
\end{demohigh}
\begin{demohigh}
-\TextLowercase {Text $Y=mX+c$ with {Braces}}
+\textLowercase {Text $Y=mX+c$ with {Braces}}
\end{demohigh}
%The arguments of commands listed in \cs{l_text_case_exclude_arg_tl}
%are excluded from case changing; the latter are entirely non-textual
%content (such as labels).
\end{function}
-\begin{function}{\TextLangLowercase,\TextLangUppercase,\TextLangTitlecase,\TextLangTitlecaseFirst}
+\begin{function}{\textLangLowercase,\textLangUppercase,\textLangTitlecase,\textLangTitlecaseFirst}
\begin{syntax}
-\cs{TextLangLowercase} \Arg{language} \Arg{tokens}
-\cs{TextLangUppercase} \Arg{language} \Arg{tokens}
-\cs{TextLangTitlecase} \Arg{language} \Arg{tokens}
-\cs{TextLangTitlecaseFirst} \Arg{language} \Arg{tokens}
+\cs{textLangLowercase} \Arg{language} \Arg{tokens}
+\cs{textLangUppercase} \Arg{language} \Arg{tokens}
+\cs{textLangTitlecase} \Arg{language} \Arg{tokens}
+\cs{textLangTitlecaseFirst} \Arg{language} \Arg{tokens}
\end{syntax}
-Takes user input \meta{text} first applies \cs{TextExpand}, then
+Takes user input \meta{text} first applies \cs{textExpand}, then
transforms the case of character tokens as specified by the
function name. The category code of letters are not changed by this
process (at least where they can be represented by the engine as a single
@@ -8203,7 +8203,7 @@ Currently, the languages recognised for special handling are as follows.
\chapter{Files (\texttt{File})}
This module provides functions for working with external files.
-%Some of these functions apply to an entire file, and have prefix \cs{File},
+%Some of these functions apply to an entire file, and have prefix \cs{file},
%while others are used to work with files on a line by line basis and have
%prefix \cs{Ior} (reading) or \cs{Iow} (writing).
@@ -8228,36 +8228,36 @@ this will trim spaces from the start of the name only.
\section{File Operation Functions}
-\begin{function}{\FileInput}
+\begin{function}{\fileInput}
\begin{syntax}
-\cs{FileInput} \Arg{file name}
+\cs{fileInput} \Arg{file name}
\end{syntax}
Searches for \meta{file name} in the path as detailed for
-\cs{FileIfExistTF}, and if found reads in the file and
+\cs{fileIfExistTF}, and if found reads in the file and
returns the contents. All files read are recorded
for information and the file name stack is updated by this
function. An error is raised if the file is not found.
\end{function}
-\begin{function}{\FileIfExistInput,\FileIfExistInputF}
+\begin{function}{\fileIfExistInput,\fileIfExistInputF}
\begin{syntax}
-\cs{FileIfExistInput} \Arg{file name}
-\cs{FileIfExistInputF} \Arg{file name} \Arg{false code}
+\cs{fileIfExistInput} \Arg{file name}
+\cs{fileIfExistInputF} \Arg{file name} \Arg{false code}
\end{syntax}
Searches for \meta{file name} using the current \TeX{} search path.
%and the additional paths included in \cs{l_file_search_path_seq}.
If found then reads in the file and returns the contents as described
-for \cs{FileInput}, otherwise inserts the \meta{false code}.
+for \cs{fileInput}, otherwise inserts the \meta{false code}.
Note that these functions do not raise
-an error if the file is not found, in contrast to \cs{FileInput}.
+an error if the file is not found, in contrast to \cs{fileInput}.
\end{function}
-\begin{function}{\FileGet,\FileGetT,\FileGetF,\FileGetTF}
+\begin{function}{\fileGet,\fileGetT,\fileGetF,\fileGetTF}
\begin{syntax}
-\cs{FileGet} \Arg{filename} \Arg{setup} \meta{tl}
-\cs{FileGetT} \Arg{filename} \Arg{setup} \meta{tl} \Arg{true code}
-\cs{FileGetF} \Arg{filename} \Arg{setup} \meta{tl} \Arg{false code}
-\cs{FileGetTF} \Arg{filename} \Arg{setup} \meta{tl} \Arg{true code} \Arg{false code}
+\cs{fileGet} \Arg{filename} \Arg{setup} \meta{tl}
+\cs{fileGetT} \Arg{filename} \Arg{setup} \meta{tl} \Arg{true code}
+\cs{fileGetF} \Arg{filename} \Arg{setup} \meta{tl} \Arg{false code}
+\cs{fileGetTF} \Arg{filename} \Arg{setup} \meta{tl} \Arg{true code} \Arg{false code}
\end{syntax}
Defines \meta{tl} to the contents of \meta{filename}.
Category codes may need to be set appropriately via the \meta{setup}
@@ -8268,20 +8268,20 @@ assignment to \meta{tl} if the file is found, and \meta{false code}
otherwise.
\end{function}
-\begin{function}{\FileIfExist,\FileIfExistT,\FileIfExistF,\FileIfExistTF}
+\begin{function}{\fileIfExist,\fileIfExistT,\fileIfExistF,\fileIfExistTF}
\begin{syntax}
-\cs{FileIfExist} \Arg{file name}
-\cs{FileIfExistT} \Arg{file name} \Arg{true code}
-\cs{FileIfExistF} \Arg{file name} \Arg{false code}
-\cs{FileIfExistTF} \Arg{file name} \Arg{true code} \Arg{false code}
+\cs{fileIfExist} \Arg{file name}
+\cs{fileIfExistT} \Arg{file name} \Arg{true code}
+\cs{fileIfExistF} \Arg{file name} \Arg{false code}
+\cs{fileIfExistTF} \Arg{file name} \Arg{true code} \Arg{false code}
\end{syntax}
Searches for \meta{file name} using the current \TeX{} search path.
%and the additional paths controlled by \cs{l_file_search_path_seq}.
\end{function}
-%\begin{function}{\FileInputStop}
+%\begin{function}{\fileInputStop}
%\begin{syntax}
-%\cs{FileInputStop}
+%\cs{fileInputStop}
%\end{syntax}
%Ends the reading of a file started by \cs{file_input:n} or similar before
%the end of the file is reached. Where the file reading is being terminated
@@ -8310,7 +8310,7 @@ to themselves and should therefore \emph{never} be executed directly
in the code. This would result in an endless loop!
Quarks can be used as error return values for functions that receive erroneous input.
-For example, in the function \cs{PropGet} to retrieve a value stored
+For example, in the function \cs{propGet} to retrieve a value stored
in some key of a property list, if the key does not exist then the return value
is the quark \cs{qNoValue}.
As mentioned above, such quarks are extremely fragile and it is imperative
@@ -8323,38 +8323,38 @@ environment.
\begin{variable}{\qNoValue}
A canonical value for a missing value, when one is requested from
a data structure. This is therefore used as a \enquote{return} value
-by functions such as \cs{PropGet} if there is no data to return.
+by functions such as \cs{propGet} if there is no data to return.
\end{variable}
\section{Quark Conditionals}
-\begin{function}{\QuarkVarIfNoValue,\QuarkVarIfNoValueT,\QuarkVarIfNoValueF,\QuarkVarIfNoValueTF}
+\begin{function}{\quarkVarIfNoValue,\quarkVarIfNoValueT,\quarkVarIfNoValueF,\quarkVarIfNoValueTF}
\begin{syntax}
-\cs{QuarkVarIfNoValue} \meta{token}
-\cs{QuarkVarIfNoValueT} \meta{token} \Arg{true code}
-\cs{QuarkVarIfNoValueF} \meta{token} \Arg{false code}
-\cs{QuarkVarIfNoValueTF} \meta{token} \Arg{true code} \Arg{false code}
+\cs{quarkVarIfNoValue} \meta{token}
+\cs{quarkVarIfNoValueT} \meta{token} \Arg{true code}
+\cs{quarkVarIfNoValueF} \meta{token} \Arg{false code}
+\cs{quarkVarIfNoValueTF} \meta{token} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \meta{token} is equal to \cs{qNoValue}.
\begin{demohigh}
-\ClistGet \cEmptyClist \lTmpaTl
-\QuarkVarIfNoValueTF \lTmpaTl {\Return{NoValue}} {\Return{SomeValue}}
+\clistGet \cEmptyClist \lTmpaTl
+\quarkVarIfNoValueTF \lTmpaTl {\prgReturn{NoValue}} {\prgReturn{SomeValue}}
\end{demohigh}
\begin{demohigh}
-\SeqPop \cEmptySeq \lTmpaTl
-\QuarkVarIfNoValueTF \lTmpaTl {\Return{NoValue}} {\Return{SomeValue}}
+\seqPop \cEmptySeq \lTmpaTl
+\quarkVarIfNoValueTF \lTmpaTl {\prgReturn{NoValue}} {\prgReturn{SomeValue}}
\end{demohigh}
\begin{demohigh}
-\PropSetFromKeyval \lTmpaProp {key1=one,key2=two}
-\PropGet \lTmpaProp {key3} \lTmpaTl
-\QuarkVarIfNoValueTF \lTmpaTl {\Return{NoValue}} {\Return{SomeValue}}
+\propSetFromKeyval \lTmpaProp {key1=one,key2=two}
+\propGet \lTmpaProp {key3} \lTmpaTl
+\quarkVarIfNoValueTF \lTmpaTl {\prgReturn{NoValue}} {\prgReturn{SomeValue}}
\end{demohigh}
\end{function}
-%\begin{function}{\QuarkIfNoValue,\QuarkIfNoValueTF}
+%\begin{function}{\quarkIfNoValue,\quarkIfNoValueTF}
%\begin{syntax}
-%\cs{QuarkIfNoValue} \Arg{token list}
-%\cs{QuarkIfNoValueTF} \Arg{token list} \Arg{true code} \Arg{false code}
+%\cs{quarkIfNoValue} \Arg{token list}
+%\cs{quarkIfNoValueTF} \Arg{token list} \Arg{true code} \Arg{false code}
%\end{syntax}
%Tests if the \meta{token list} contains only \cs{qNoValue}
%(distinct from \meta{token list} being empty or containing
@@ -8368,47 +8368,47 @@ in \pkg{functional} code but which need to be manipulated when working as a \LaT
package. To allow these to be integrated cleanly into \pkg{functional} code, a set
of legacy interfaces are provided here.
-\begin{function}{\LegacyIf,\LegacyIfT,\LegacyIfF,\LegacyIfTF}
+\begin{function}{\legacyIf,\legacyIfT,\legacyIfF,\legacyIfTF}
\begin{syntax}
-\cs{LegacyIf} \Arg{name}
-\cs{LegacyIfT} \Arg{name} \Arg{true code}
-\cs{LegacyIfF} \Arg{name} \Arg{false code}
-\cs{LegacyIfTF} \Arg{name} \Arg{true code} \Arg{false code}
+\cs{legacyIf} \Arg{name}
+\cs{legacyIfT} \Arg{name} \Arg{true code}
+\cs{legacyIfF} \Arg{name} \Arg{false code}
+\cs{legacyIfTF} \Arg{name} \Arg{true code} \Arg{false code}
\end{syntax}
Tests if the \LaTeXe{}/plain \TeX{} conditional (generated by \tn{newif})
if \texttt{true} or \texttt{false} and branches \hbox{accordingly}. The
\meta{name} of the conditional should \emph{omit} the leading \texttt{if}.
\begin{demohigh}
\newif \ifFooBar
-\LegacyIfTF {FooBar} {\Return{True!}} {\Return{False!}}
+\legacyIfTF {FooBar} {\prgReturn{True!}} {\prgReturn{False!}}
\end{demohigh}
\end{function}
-\begin{function}{\LegacyIfSetTrue,\LegacyIfSetFalse}
+\begin{function}{\legacyIfSetTrue,\legacyIfSetFalse}
\begin{syntax}
-\cs{LegacyIfSetTrue} \Arg{name}
-\cs{LegacyIfSetFalse} \Arg{name}
+\cs{legacyIfSetTrue} \Arg{name}
+\cs{legacyIfSetFalse} \Arg{name}
\end{syntax}
Sets the \LaTeXe{}/plain \TeX{} conditional \verb|\if|\meta{name}
(generated by \tn{newif}) to be \texttt{true} or \texttt{false}.
\begin{demohigh}
\newif \ifFooBar
-\LegacyIfSetTrue {FooBar}
-\LegacyIfTF {FooBar} {\Return{True!}} {\Return{False!}}
+\legacyIfSetTrue {FooBar}
+\legacyIfTF {FooBar} {\prgReturn{True!}} {\prgReturn{False!}}
\end{demohigh}
\end{function}
-\begin{function}{\LegacyIfSet}
+\begin{function}{\legacyIfSet}
\begin{syntax}
-\cs{LegacyIfSet} \Arg{name} \Arg{boolexpr}
+\cs{legacyIfSet} \Arg{name} \Arg{boolexpr}
\end{syntax}
Sets the \LaTeXe{}/plain \TeX{} conditional \verb|\if|\meta{name}
(generated by \tn{newif}) to the result of evaluating the
\meta{boolean expression}.
\begin{demohigh}
\newif \ifFooBar
-\LegacyIfSet {FooBar} {\cFalseBool}
-\LegacyIfTF {FooBar} {\Return{True!}} {\Return{False!}}
+\legacyIfSet {FooBar} {\cFalseBool}
+\legacyIfTF {FooBar} {\prgReturn{True!}} {\prgReturn{False!}}
\end{demohigh}
\end{function}
diff --git a/macros/latex/contrib/pdfpages/pdfpages.dtx b/macros/latex/contrib/pdfpages/pdfpages.dtx
index 2deaa46206..1342d7ba42 100644
--- a/macros/latex/contrib/pdfpages/pdfpages.dtx
+++ b/macros/latex/contrib/pdfpages/pdfpages.dtx
@@ -27,12 +27,12 @@
%<*dtx>
\makeatletter
%</dtx>
-\def\AM@fileversion{v0.5u}
+\def\AM@fileversion{v0.5v}
\def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END}
\def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}}
\def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}}
-\AM@Git@Date@process$Date: 2022-01-29 16:59:20 +0100 $
-\AM@Git@SHA@process$SHA-1: 7a5d1a24653fdc93c11ca1043f6d77a403446d92 $
+\AM@Git@Date@process$Date: 2022-05-22 20:11:16 +0200 $
+\AM@Git@SHA@process$SHA-1: 059ee4174cc52b0e6a4c834c1a9719bcf5a453b0 $
%</!(example1,example2,example3,installer)>
%
%
@@ -1339,6 +1339,7 @@
\newcommand*{\AM@findfile@ii}[1]{%
\ifx\AM@currentdocname\relax
\PackageError{pdfpages}{Cannot find file `#1'}{}%
+ \let\AM@filenotfound\relax
\fi
}
% \end{macrocode}
@@ -1393,7 +1394,7 @@
\def\AM@pagecount{0}%
}{%
\AM@findfile{#2}%
- \if\AM@threadname\relax
+ \ifx\AM@threadname\relax
\def\AM@threadname{\AM@currentdocname}%
\fi
}%
@@ -1481,8 +1482,17 @@
% \macro{\AM@output}
% This is the main output routine used by |\includepdf|
% and |\includepdfmerge|.
+% Let's stop here if the PDF file doesn't exist and the user did not quit
+% \LaTeX\ yet (which may result from `--interaction=scrollmode`).
+% If we do not quit here, we might run into an infinite loop.
% \begin{macrocode}
-\newcommand{\AM@output}[1]{%
+\newcommand\AM@output{%
+ \ifdefined\AM@filenotfound
+ \else
+ \expandafter\AM@output@i
+ \fi
+}
+\newcommand{\AM@output@i}[1]{%
% \end{macrocode}
% For the following calculations we need to know the page size.
% But since we are still before |\newpage| we must not set |\paper{width,height}|
@@ -4851,6 +4861,12 @@
% \item Adding |\leavevmode| before |\@chapter|,... in |addtotoc|.
% Bug fix for \url{https://tex.stackexchange.com/questions/631514/}.
% \end{itemize}
+%
+% \subsection*{2022/05/21 v0.5v}
+% \begin{itemize}
+% \item Do not enter an infinite loop if the PDF file doesn't exist.
+% Bug fix for \url{https://tex.stackexchange.com/questions/644971/}.
+% \end{itemize}
% \Finale
%
% \iffalse
diff --git a/macros/latex/contrib/pdfpages/pdfpages.pdf b/macros/latex/contrib/pdfpages/pdfpages.pdf
index 1fea4ad0c1..15703669ad 100644
--- a/macros/latex/contrib/pdfpages/pdfpages.pdf
+++ b/macros/latex/contrib/pdfpages/pdfpages.pdf
Binary files differ
diff --git a/macros/latex/required/babel/base/README.md b/macros/latex/required/babel/base/README.md
index 537cda320d..2342ebae59 100644
--- a/macros/latex/required/babel/base/README.md
+++ b/macros/latex/required/babel/base/README.md
@@ -1,4 +1,4 @@
-## Babel 3.74
+## Babel 3.75
This package manages culturally-determined typographical (and other)
rules, and hyphenation patterns for a wide range of languages. Many
@@ -8,9 +8,9 @@ is a set of ini files for about 250 languages.
The latest stable version is available on <https://ctan.org/pkg/babel>.
-Changes in version 3.74 are described in:
+Changes in version 3.75 are described in:
-https://latex3.github.io/babel/news/whats-new-in-babel-3.74.html
+https://latex3.github.io/babel/news/whats-new-in-babel-3.75.html
Apart from the manual, you can find information on some aspects of babel at:
@@ -46,11 +46,20 @@ respective authors.
### Summary of latest changes
```
-3.74 2022-04-30
+3.75 2022-05-22
+ * `\BabelEnsureInfo` is active by default, to make sure the BCP 47
+ codes are always available, as they may be required by the
+ LaTeX kernel.
+ * `\localeinfo*` is like `\localeinfo` but expands to empty if
+ unknown (fully expandable).
+ * The key `character`/`ranges` in `ini` files now sets the
+ corresponding Unicode script ranges (as used by `onchar`).
* Fixes:
- - Error in transforms if | is active.
- - Minor fixes in Khemer, Turkmen, Marathi.
- * RTL math improved (with luatex).
+ - Misplaced rule un diagbox (#43)
+ - Caption names of 'chapter' and 'part' swapped in Chinese (#180).
+ - Captions after numbers in Lithuanian.
+ - `hyphenrules` in the `ini` files for `en-AU` and
+ `en-NZ` where set to `english` instead of `ukenglish`.
```
### Previous changes
diff --git a/macros/latex/required/babel/base/babel.dtx b/macros/latex/required/babel/base/babel.dtx
index 980ab2b11e..6bc32b0c7b 100644
--- a/macros/latex/required/babel/base/babel.dtx
+++ b/macros/latex/required/babel/base/babel.dtx
@@ -32,7 +32,7 @@
%
% \iffalse
%<*filedriver>
-\ProvidesFile{babel.dtx}[2022/04/30 v3.74 The Babel package]
+\ProvidesFile{babel.dtx}[2022/05/22 v3.75 The Babel package]
\documentclass{ltxdoc}
\GetFileInfo{babel.dtx}
\usepackage{fontspec}
@@ -184,11 +184,7 @@
Poppelier, Piet van Oostrum and many others have been used.
Bernd Raichle has provided many helpful suggestions.}}
\author{Johannes Braams\\
- Kersengaarde 33\\
- 2723 BP Zoetermeer\\
- The Netherlands\\
- \normalsize From version 3.9 on, Javier Bezos\\
- \normalsize \texttt{www.texnia.com}}
+ Javier Bezos}
\date{Typeset \today}
\begin{titlepage}
@@ -213,12 +209,12 @@ Version \csname @gobble\expandafter\endcsname\fileversion\newline
\LARGE
\vspace{1.2cm}
-Johannes L. Braams\\[-.5ex]
-{\large Original author}
-
-\vspace{.3cm}
Javier Bezos\\[-.5ex]
{\large Current maintainer}
+
+\vspace{.3cm}
+Johannes L. Braams\\[-.5ex]
+{\large Original author}
\end{minipage}
&\cellcolor[rgb]{.92, .86, .73}
\vspace{2cm}
@@ -2890,7 +2886,8 @@ argument is the name of a language; the second and third arguments are
the actions to take if the result of the test is true or false
respectively.
-\Describe{\localeinfo}{\marg{field}}
+\Describe{\localeinfo}{%
+ \colorbox{thegrey}{\ttfamily\hskip-.2em*\hskip-.2em}{\marg{field}}}
\New{3.38} If an |ini| file has been loaded for the current language,
you may access the information stored in it. This macro is fully
@@ -2902,15 +2899,30 @@ expandable, and the available fields are:
%%% activated because the bug in \languagename is far from trivial.
\item[|tag.ini|] is the tag of the |ini| file (the way this
file is identified in its name).
-\item[|tag.bcp47|] is the full BCP 47 tag (see the warning below).
+\item[|tag.bcp47|] is the full BCP 47 tag (see the warning below). This
+ is the value to be used for the ‘real' provided tag (\babel{} may
+ fill other fields if they are considered necessary).
\item[|language.tag.bcp47|] is the BCP 47 language tag.
\item[|tag.opentype|] is the tag used by OpenType (usually, but not
always, the same as BCP 47).
\item[|script.name|], as provided by the Unicode CLDR.
\item[|script.tag.bcp47|] is the BCP 47 tag of the script
- used by this locale.
+ used by this locale. This is a required field for the fonts to be
+ correctly set up, and therefore it should be always defined.
\item[|script.tag.opentype|] is the tag used by OpenType (usually,
but not always, the same as BCP 47).
+\item[|region.tag.bcp47|] is the BCP 47 tag of the region or territory.
+ Defined only if the locale loaded actually contains it (eg, |es-MX|
+ does, but |es| doesn’t), which is how locales behave in the CLDR.
+ \New{3.75}
+\item[|variant.tag.bcp47|] is the BCP 47 tag of the variant (in the BCP 47
+ sense, like |1901| for German). \New{3.75}
+\item[|extension.|\m{s}|.tag.bcp47|] is the BCP 47 value of the
+ extension whose singleton is \m{s} (currently the recognized
+ singletons are |x|, |t| and |u|). The internal syntax can be somewhat
+ complex, and this feature is still somewhat tentative. An example is
+ \textsf{classiclatin} which sets |extension.x.tag.bcp47| to classic.
+ \New{3.75}
\end{description}
\begin{warning}
@@ -2919,6 +2931,18 @@ expandable, and the available fields are:
counterintuitive.
\end{warning}
+\New{3.75} Sometimes, it comes in handy to be able to use |\localeinfo|
+in an expandable way even if something went wrong (for example, the
+locale currently active is undefined). For these cases, |localeinfo*|
+just returns an empty string instead of raising an error. Bear in mind
+that \babel{}, following the CLDR, may leave the region unset, which
+means |\getlanguageproperty*|, described below, is the preferred
+command, so that the existence of a field can be checked before. This
+also means building a string with the language and the region with
+|\localeinfo*{language.tab.bcp47}|\allowbreak |-|\allowbreak
+|\localeinfo*{region.tab.bcp47}| is not usually a good idea (because of
+the hyphen).
+
\Describe{\getlocaleproperty}{%
\colorbox{thegrey}{\ttfamily\hskip-.2em*\hskip-.2em}%
\marg{macro}\marg{locale}\marg{property}}
@@ -2955,12 +2979,15 @@ named |\LocaleForEach| to traverse the list, where |#1| is the name of
the current item, so that |\LocaleForEach{\message{ **#1** }}| just
shows the loaded |ini|’s.
-\Describe{\BabelEnsureInfo}{}
-|ini| files are loaded with |\babelprovide| and also when languages are
-selected if there is a |\babelfont| or they have not been explicitly
-declared. To ensure the |ini| files are loaded (and therefore the
-corresponding data) even if these two conditions are not met, write
-|\BabelEnsureInfo| in the preamble.
+\Describe{ensureinfo=off}{}
+\New{3.75} Previously, |ini| files are loaded only with |\babelprovide|
+and also when languages are selected if there is a |\babelfont| or they
+have not been explicitly declared. Now the |ini| files are loaded (and
+therefore the corresponding data) even if these two conditions are not
+met (in previous versions you had to enable it with |\BabelEnsureInfo|
+in the preamble). Because of the way this feature works, problems are
+very unlikely, but there is switch as a package option to turn the new
+behavior off (|ensureinfo=off|).
\subsection{Hyphenation and line breaking}
@@ -5116,8 +5143,8 @@ help from Bernd Raichle, for which I am grateful.
% \section{Tools}
%
% \begin{macrocode}
-%<<version=3.74>>
-%<<date=2022/04/30>>
+%<<version=3.75>>
+%<<date=2022/05/22>>
% \end{macrocode}
%
% \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -9748,6 +9775,11 @@ help from Bernd Raichle, for which I am grateful.
\ifx\bbl@KVP@language\@nil\else
\bbl@csarg\edef{lname@#2}{\bbl@KVP@language}%
\fi
+ \ifcase\bbl@engine\or
+ \bbl@ifunset{bbl@chrng@\languagename}{}%
+ {\directlua{
+ Babel.set_chranges_b('\bbl@cl{sbcp}', '\bbl@cl{chrng}') }}%
+ \fi
% == onchar ==
\ifx\bbl@KVP@onchar\@nil\else
\bbl@luahyphenate
@@ -10251,6 +10283,10 @@ help from Bernd Raichle, for which I am grateful.
\ifin@
\bbl@ini@calendar{##1}%
\fi
+ \in@{=identification/extension.}{=##1/##2}%
+ \ifin@
+ \bbl@ini@extension{##2}%
+ \fi
\bbl@ifunset{bbl@inikv@##1}{}%
{\csname bbl@inikv@##1\endcsname{##2}{##3}}}%
\bbl@inidata}
@@ -10360,6 +10396,24 @@ help from Bernd Raichle, for which I am grateful.
Reported }}}
%
\let\bbl@release@transforms\@empty
+% \end{macrocode}
+%
+% BCP 47 extensions are separated by a single letter (eg,
+% |latin-x-medieval|. The following macro handles this special case to
+% create correctly the correspondig info.
+%
+% \begin{macrocode}
+\def\bbl@ini@extension#1{%
+ \def\bbl@tempa{#1}%
+ \bbl@replace\bbl@tempa{extension.}{}%
+ \bbl@replace\bbl@tempa{.tag.bcp47}{}%
+ \bbl@ifunset{bbl@info@#1}%
+ {\bbl@csarg\xdef{info@#1}{ext/\bbl@tempa}%
+ \bbl@exp{%
+ \\\g@addto@macro\\\bbl@moreinfo{%
+ \\\bbl@exportkey{ext/\bbl@tempa}{identification.#1}{}}}}%
+ {}}
+\let\bbl@moreinfo\@empty
%
\def\bbl@ini@exports#1{%
% Identification always exported
@@ -10383,6 +10437,9 @@ help from Bernd Raichle, for which I am grateful.
{\csname bbl@esname@\languagename\endcsname}}%
\bbl@exportkey{sbcp}{identification.script.tag.bcp47}{}%
\bbl@exportkey{sotf}{identification.script.tag.opentype}{DFLT}%
+ \bbl@exportkey{rbcp}{identification.region.tag.bcp47}{}%
+ \bbl@exportkey{vbcp}{identification.variant.tag.bcp47}{}%
+ \bbl@moreinfo
% Also maps bcp47 -> languagename
\ifbbl@bcptoname
\bbl@csarg\xdef{bcp@map@\bbl@cl{tbcp}}{\languagename}%
@@ -10951,13 +11008,21 @@ help from Bernd Raichle, for which I am grateful.
% following macro just exposes it with a user command.
%
% \begin{macrocode}
+\def\bbl@localeinfo#1#2{%
+ \bbl@ifunset{bbl@info@#2}{#1}%
+ {\bbl@ifunset{bbl@\csname bbl@info@#2\endcsname @\languagename}{#1}%
+ {\bbl@cs{\csname bbl@info@#2\endcsname @\languagename}}}}
\newcommand\localeinfo[1]{%
- \bbl@ifunset{bbl@\csname bbl@info@#1\endcsname @\languagename}%
- {\bbl@error{I've found no info for the current locale.\\%
- The corresponding ini file has not been loaded\\%
- Perhaps it doesn't exist}%
- {See the manual for details.}}%
- {\bbl@cs{\csname bbl@info@#1\endcsname @\languagename}}}
+ \ifx*#1\@empty % TODO. A bit hackish to make it expandable.
+ \bbl@afterelse\bbl@localeinfo{}%
+ \else
+ \bbl@localeinfo
+ {\bbl@error{I've found no info for the current locale.\\%
+ The corresponding ini file has not been loaded\\%
+ Perhaps it doesn't exist}%
+ {See the manual for details.}}%
+ {#1}%
+ \fi}
% \@namedef{bbl@info@name.locale}{lcname}
\@namedef{bbl@info@tag.ini}{lini}
\@namedef{bbl@info@name.english}{elname}
@@ -10968,7 +11033,22 @@ help from Bernd Raichle, for which I am grateful.
\@namedef{bbl@info@script.name}{esname}
\@namedef{bbl@info@script.name.opentype}{sname}
\@namedef{bbl@info@script.tag.bcp47}{sbcp}
-\@namedef{bbl@info@script.tag.opentype}{sotf}
+\@namedef{bbl@info@script.tag.opentype}{sotf}
+\@namedef{bbl@info@region.tag.bcp47}{rbcp}
+\@namedef{bbl@info@variant.tag.bcp47}{vbcp}
+% Extensions are dealt with in a special way
+% Now, an internal \LaTeX{} macro:
+\providecommand\BCPdata[1]{\localeinfo*{#1.tag.bcp47}}
+% \end{macrocode}
+%
+% With version 3.75 |\BabelEnsureInfo| is executed always, but there is
+% an option to disable it.
+%
+% \begin{macrocode}
+%<<*More package options>>
+\DeclareOption{ensureinfo=off}{}
+%<</More package options>>
+%
\let\bbl@ensureinfo\@gobble
\newcommand\BabelEnsureInfo{%
\ifx\InputIfFileExists\@undefined\else
@@ -10978,12 +11058,15 @@ help from Bernd Raichle, for which I am grateful.
\bbl@foreach\bbl@loaded{{%
\def\languagename{##1}%
\bbl@ensureinfo{##1}}}}
+\@ifpackagewith{babel}{ensureinfo=off}{}%
+ {\AtEndOfPackage{% Test for plain.
+ \ifx\@undefined\bbl@loaded\else\BabelEnsureInfo\fi}}
% \end{macrocode}
%
% More general, but non-expandable, is |\getlocaleproperty|. To inspect
% every possible loaded |ini|, we define |\LocaleForEach|, where
% |\bbl@ini@loaded| is a comma-separated list of locales, built by
-% |\bbl@read@ini|.
+% |\bbl@read@ini|.
%
% \begin{macrocode}
\newcommand\getlocaleproperty{%
@@ -11791,11 +11874,7 @@ help from Bernd Raichle, for which I am grateful.
% latter solution will be eventually removed).
%
% \begin{macrocode}
-\bbl@ifformatlater{2021-06-01}%
- {\def\bbl@patchfont#1{\AddToHook{selectfont}{#1}}}
- {\def\bbl@patchfont#1{%
- \expandafter\bbl@add\csname selectfont \endcsname{#1}%
- \expandafter\bbl@toglobal\csname selectfont \endcsname}}
+\def\bbl@patchfont#1{\AddToHook{selectfont}{#1}}
% \end{macrocode}
%
% \end{macro}
@@ -13524,6 +13603,15 @@ help from Bernd Raichle, for which I am grateful.
end
return has_bidi
end
+ function Babel.set_chranges_b (script, chrng)
+ if chrng == '' then return end
+ texio.write('Replacing ' .. script .. ' script ranges')
+ Babel.script_blocks[script] = {}
+ for s, e in string.gmatch(chrng..' ', '(.-)%.%.(.-)%s') do
+ table.insert(
+ Babel.script_blocks[script], {tonumber(s,16), tonumber(e,16)})
+ end
+ end
}
\endgroup
\ifx\newattribute\@undefined\else
@@ -14767,22 +14855,21 @@ end
% \(text|par)dir required in pgf:
\def\bbl@pictresetdir{\bodydir TRT\pardir TRT\textdir TRT\relax}%
\fi}%
- \ifx\AddToHook\@undefined\else
- \AddToHook{env/picture/begin}{\bbl@pictsetdir\tw@}%
- \directlua{
- Babel.get_picture_dir = true
- Babel.picture_has_bidi = 0
- %
- function Babel.picture_dir (head)
- if not Babel.get_picture_dir then return head end
- if Babel.hlist_has_bidi(head) then
- Babel.picture_has_bidi = 1
- end
- return head
+ \AddToHook{env/picture/begin}{\bbl@pictsetdir\tw@}%
+ \directlua{
+ Babel.get_picture_dir = true
+ Babel.picture_has_bidi = 0
+ %
+ function Babel.picture_dir (head)
+ if not Babel.get_picture_dir then return head end
+ if Babel.hlist_has_bidi(head) then
+ Babel.picture_has_bidi = 1
end
- luatexbase.add_to_callback("hpack_filter", Babel.picture_dir,
- "Babel.picture_dir")
- }%
+ return head
+ end
+ luatexbase.add_to_callback("hpack_filter", Babel.picture_dir,
+ "Babel.picture_dir")
+ }%
\AtBeginDocument{%
\long\def\put(#1,#2)#3{%
\@killglue
@@ -14797,7 +14884,7 @@ end
\setbox\z@\hb@xt@\z@{%
\@defaultunitsset\@tempdimc{#1}\unitlength
\kern\@tempdimc
- #3\hss}%
+ #3\hss}% TODO: #3 executed twice (below). That’s bad.
\edef\bbl@tempc{\directlua{tex.print(Babel.picture_has_bidi)}}%
\fi
% Do:
@@ -14807,35 +14894,26 @@ end
\kern\@tempdimc
{\ifnum\bbl@tempc>\z@\bbl@pictresetdir\fi#3}\hss}%
\ignorespaces}%
- \MakeRobust\put}%
- \fi
+ \MakeRobust\put}%
\AtBeginDocument
- {\ifx\pgfpicture\@undefined\else % TODO. Allow deactivate?
- \ifx\AddToHook\@undefined
- \bbl@sreplace\pgfpicture{\pgfpicturetrue}%
- {\bbl@pictsetdir\z@\pgfpicturetrue}%
- \else
- \AddToHook{env/pgfpicture/begin}{\bbl@pictsetdir\@ne}%
- \fi
+ {\AddToHook{cmd/diagbox@pict/before}{\let\bbl@pictsetdir\@gobble}%
+ \ifx\pgfpicture\@undefined\else % TODO. Allow deactivate?
+ \AddToHook{env/pgfpicture/begin}{\bbl@pictsetdir\@ne}%
\bbl@add\pgfinterruptpicture{\bbl@pictresetdir}%
\bbl@add\pgfsys@beginpicture{\bbl@pictsetdir\z@}%
\fi
- \ifx\tikzpicture\@undefined\else
- \ifx\AddToHook\@undefined\else
- \AddToHook{env/tikzpicture/begin}{\bbl@pictsetdir\z@}%
- \fi
+ \ifx\tikzpicture\@undefined\else
+ \AddToHook{env/tikzpicture/begin}{\bbl@pictsetdir\z@}%
\bbl@add\tikz@atbegin@node{\bbl@pictresetdir}%
\bbl@sreplace\tikz{\begingroup}{\begingroup\bbl@pictsetdir\tw@}%
\fi
- \ifx\AddToHook\@undefined\else
- \ifx\tcolorbox\@undefined\else
- \AddToHook{env/tcolorbox/begin}{\bbl@pictsetdir\@ne}%
- \bbl@sreplace\tcb@savebox
- {\ignorespaces}{\ignorespaces\bbl@pictresetdir}%
- \ifx\tikzpicture@tcb@hooked\@undefined\else
- \bbl@sreplace\tikzpicture@tcb@hooked{\noexpand\tikzpicture}%
- {\textdir TLT\noexpand\tikzpicture}%
- \fi
+ \ifx\tcolorbox\@undefined\else
+ \AddToHook{env/tcolorbox/begin}{\bbl@pictsetdir\@ne}%
+ \bbl@sreplace\tcb@savebox
+ {\ignorespaces}{\ignorespaces\bbl@pictresetdir}%
+ \ifx\tikzpicture@tcb@hooked\@undefined\else
+ \bbl@sreplace\tikzpicture@tcb@hooked{\noexpand\tikzpicture}%
+ {\textdir TLT\noexpand\tikzpicture}%
\fi
\fi
}}
@@ -22564,6 +22642,39 @@ Babel.cjk_breaks = {
% \end{macro}
% \end{macro}
%
+% There is no locale file for this pseudo-language, so the
+% corresponding fields are defined here.
+%
+% \begin{macrocode}
+\def\bbl@inidata@nil{%
+ \bbl@elt{identification}{tag.ini}{und}%
+ \bbl@elt{identification}{load.level}{0}%
+ \bbl@elt{identification}{charset}{utf8}%
+ \bbl@elt{identification}{version}{1.0}%
+ \bbl@elt{identification}{date}{2022-05-16}%
+ \bbl@elt{identification}{name.local}{nil}%
+ \bbl@elt{identification}{name.english}{nil}%
+ \bbl@elt{identification}{name.babel}{nil}%
+ \bbl@elt{identification}{tag.bcp47}{und}%
+ \bbl@elt{identification}{language.tag.bcp47}{und}%
+ \bbl@elt{identification}{tag.opentype}{dflt}%
+ \bbl@elt{identification}{script.name}{Latin}%
+ \bbl@elt{identification}{script.tag.bcp47}{Latn}%
+ \bbl@elt{identification}{script.tag.opentype}{DFLT}%
+ \bbl@elt{identification}{level}{1}%
+ \bbl@elt{identification}{encodings}{}%
+ \bbl@elt{identification}{derivate}{no}}
+\@namedef{bbl@tbcp@nil}{und}
+\@namedef{bbl@lbcp@nil}{und}
+\@namedef{bbl@lotf@nil}{dflt}
+\@namedef{bbl@elname@nil}{nil}
+\@namedef{bbl@lname@nil}{nil}
+\@namedef{bbl@esname@nil}{Latin}
+\@namedef{bbl@sname@nil}{Latin}
+\@namedef{bbl@sbcp@nil}{Latn}
+\@namedef{bbl@sotf@nil}{Latn}
+% \end{macrocode}
+%
% The macro |\ldf@finish| takes care of looking for a
% configuration file, setting the main language to be switched on
% at |\begin{document}| and resetting the category code of
diff --git a/macros/latex/required/babel/base/babel.ins b/macros/latex/required/babel/base/babel.ins
index 1c80ae6d80..188056d227 100644
--- a/macros/latex/required/babel/base/babel.ins
+++ b/macros/latex/required/babel/base/babel.ins
@@ -26,7 +26,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
-\def\filedate{2022/04/30}
+\def\filedate{2022/05/22}
\def\batchfile{babel.ins}
\input docstrip.tex
diff --git a/macros/latex/required/babel/base/babel.pdf b/macros/latex/required/babel/base/babel.pdf
index b68346d6e5..52960c988b 100644
--- a/macros/latex/required/babel/base/babel.pdf
+++ b/macros/latex/required/babel/base/babel.pdf
Binary files differ
diff --git a/macros/latex/required/babel/base/bbcompat.dtx b/macros/latex/required/babel/base/bbcompat.dtx
index b7a7c3dfbc..725de441f2 100644
--- a/macros/latex/required/babel/base/bbcompat.dtx
+++ b/macros/latex/required/babel/base/bbcompat.dtx
@@ -30,7 +30,7 @@
%
% \iffalse
%<*dtx>
-\ProvidesFile{bbcompat.dtx}[2022/04/30 v3.74]
+\ProvidesFile{bbcompat.dtx}[2022/05/22 v3.75]
%</dtx>
%
%% File 'bbcompat.dtx'
diff --git a/macros/xetex/latex/bidi/README b/macros/xetex/latex/bidi/README
index 7b70297c85..0c1c7cdd26 100644
--- a/macros/xetex/latex/bidi/README
+++ b/macros/xetex/latex/bidi/README
@@ -1,6 +1,6 @@
___________________
The bidi package
-v36.8
+v36.9
This package provides a convenient interface for typesetting
bidirectional texts in Plain TeX and LaTeX, using XeTeX engine.
@@ -25,7 +25,7 @@ The announcements for the new releases of the package will
also appear in the Discussions space under the Announcements
category.
-Current version release date: 2022/05/20
+Current version release date: 2022/05/22
___________________________________________
Vafa Khalighi
diff --git a/macros/xetex/latex/bidi/bidi-doc-intro.ltx b/macros/xetex/latex/bidi/bidi-doc-intro.ltx
index bbf28a1baf..96be56fdff 100644
--- a/macros/xetex/latex/bidi/bidi-doc-intro.ltx
+++ b/macros/xetex/latex/bidi/bidi-doc-intro.ltx
@@ -20,7 +20,7 @@ If you use \textsf{bidi} package to write any input \TeX\ document, and then run
* Copyright (c) 2007--2022 Vafa Khalighi
* Copyright (c) 2018--2020 bidi-tex GitHub Organization
*
-* v36.8, 2022/05/20
+* v36.9, 2022/05/22
*
* License: LaTeX Project Public License, version
* 1.3c or higher (your choice)
diff --git a/macros/xetex/latex/bidi/bidi-doc-title.ltx b/macros/xetex/latex/bidi/bidi-doc-title.ltx
index d46cbe3b32..4cca7587dd 100644
--- a/macros/xetex/latex/bidi/bidi-doc-title.ltx
+++ b/macros/xetex/latex/bidi/bidi-doc-title.ltx
@@ -3,7 +3,7 @@
\begin{document}
\title{\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}\\
\LARGE Bidirectional typesetting in plain \TeX{} and \LaTeX, using \XeTeX{} engine\\[5pt]
-\large User documentation for \textcolor{blue!65!black}{version 36.8}}
+\large User documentation for \textcolor{blue!65!black}{version 36.9}}
\author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}}
\setcounter{page}{0}
\thispagestyle{empty}
@@ -13,7 +13,7 @@
\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}
\Large
-User documentation for \textcolor{blue!65!black}{version 36.8}}
+User documentation for \textcolor{blue!65!black}{version 36.9}}
\vskip 0pt plus 3fill
\textit{\large to my Master, \textbf{Ferdowsi The Great}}
diff --git a/macros/xetex/latex/bidi/bidi-doc.ltx b/macros/xetex/latex/bidi/bidi-doc.ltx
index 6ef42930c0..cd2d09f9aa 100644
--- a/macros/xetex/latex/bidi/bidi-doc.ltx
+++ b/macros/xetex/latex/bidi/bidi-doc.ltx
@@ -1,7 +1,7 @@
\documentclass{ltxdoc}
\input{bidi-doc-preamble.ltx}
\hypersetup{%
- pdftitle={User documentation for version 36.8 of the bidi
+ pdftitle={User documentation for version 36.9 of the bidi
package}%
}
\begin{document}
diff --git a/macros/xetex/latex/bidi/bidi-doc.pdf b/macros/xetex/latex/bidi/bidi-doc.pdf
index 64ecfc6a86..dfc66c1851 100644
--- a/macros/xetex/latex/bidi/bidi-doc.pdf
+++ b/macros/xetex/latex/bidi/bidi-doc.pdf
Binary files differ
diff --git a/macros/xetex/latex/bidi/bidi.dtx b/macros/xetex/latex/bidi/bidi.dtx
index 2814a22334..4b48ad45ea 100644
--- a/macros/xetex/latex/bidi/bidi.dtx
+++ b/macros/xetex/latex/bidi/bidi.dtx
@@ -5,7 +5,7 @@
%<*readme>
___________________
The bidi package
-v36.8
+v36.9
This package provides a convenient interface for typesetting
bidirectional texts in Plain TeX and LaTeX, using XeTeX engine.
@@ -30,7 +30,7 @@ The announcements for the new releases of the package will
also appear in the Discussions space under the Announcements
category.
-Current version release date: 2022/05/20
+Current version release date: 2022/05/22
___________________________________________
Vafa Khalighi
@@ -179,7 +179,6 @@ by Vafa Khalighi.
\generate{\file{rotating-xetex-bidi.def}{\from{\jobname.dtx}{table,rotating-xetex-bidi.def}}}
\generate{\file{scrartcl-xetex-bidi.def}{\from{\jobname.dtx}{table,scrartcl-xetex-bidi.def}}}
\generate{\file{scrbook-xetex-bidi.def}{\from{\jobname.dtx}{table,scrbook-xetex-bidi.def}}}
-\generate{\file{scrlettr-xetex-bidi.def}{\from{\jobname.dtx}{table,scrlettr-xetex-bidi.def}}}
\generate{\file{scrreprt-xetex-bidi.def}{\from{\jobname.dtx}{table,scrreprt-xetex-bidi.def}}}
\generate{\file{sidecap-xetex-bidi.def}{\from{\jobname.dtx}{table,sidecap-xetex-bidi.def}}}
\generate{\file{soul-xetex-bidi.def}{\from{\jobname.dtx}{table,soul-xetex-bidi.def}}}
@@ -235,7 +234,7 @@ by Vafa Khalighi.
\documentclass{ltxdoc}
\input{bidi-doc-preamble.ltx}
\hypersetup{%
- pdftitle={Source documentation for version 36.8 of the bidi
+ pdftitle={Source documentation for version 36.9 of the bidi
package}%
}
\EnableCrossrefs
@@ -254,7 +253,7 @@ by Vafa Khalighi.
% \GetFileInfo{\jobname.dtx}
% \title{\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}\\
%\LARGE Bidirectional typesetting in plain \TeX{} and \LaTeX, using \XeTeX{} engine\\[5pt]
-%\large Source documentation for \textcolor{blue!65!black}{version 36.8}}
+%\large Source documentation for \textcolor{blue!65!black}{version 36.9}}
% \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}}
%\setcounter{page}{0}
%\thispagestyle{empty}
@@ -264,7 +263,7 @@ by Vafa Khalighi.
%\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}
%
%\Large
-%Source documentation for \textcolor{blue!65!black}{version 36.8}}
+%Source documentation for \textcolor{blue!65!black}{version 36.9}}
%
%\vskip 0pt plus 3fill
%\textit{\large to my Master, \textbf{Ferdowsi The Great}}
@@ -313,7 +312,7 @@ by Vafa Khalighi.
%\iffalse
%<*table>
%\fi
-%% \CheckSum{50563}
+%% \CheckSum{50672}
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
@@ -1933,8 +1932,8 @@ by Vafa Khalighi.
% \section{File \texttt{bidi.sty}}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\def\bididate{2022/05/20}
-\def\bidi@version{36.8}
+\def\bididate{2022/05/22}
+\def\bidi@version{36.9}
\ProvidesPackage{bidi}[\bididate\space v\bidi@version\space
Bidirectional typesetting in plain TeX and LaTeX]
\edef\@bidi@info{****************************************************^^J%
@@ -2022,7 +2021,7 @@ Bidirectional typesetting in plain TeX and LaTeX]
}
\newcommand*{\@bidi@pdfcustomproperties}{%
This is the bidi package, Version \bidi@version,
- Released May 20, 2022.
+ Released May 22, 2022.
}
\@RTLmainfalse
\AtBeginDocument{%
@@ -2265,9 +2264,9 @@ Bidirectional typesetting in plain TeX and LaTeX]
%\fi
% \section{File \texttt{bidi.tex}}
% \begin{macrocode}
-\def\bididate{2022/05/20}
+\def\bididate{2022/05/22}
\catcode`@=11
-\def\bidi@version{36.8}
+\def\bidi@version{36.9}
\let \protect \relax
\newlinechar`\^^J
\edef\@bidi@info{****************************************************^^J%
@@ -2369,7 +2368,7 @@ Bidirectional typesetting in plain TeX and LaTeX]
}
\def\@bidi@pdfcustomproperties{%
This is the bidi package, Version \bidi@version,
- Released May 20, 2022.
+ Released May 22, 2022.
}
\def\bidi@pdfm@mark{%
\special{pdf:%
@@ -18286,7 +18285,7 @@ to\rtside{\box\bslice\hfil}}
%\fi
% \section{File \texttt{scrartcl-xetex-bidi.def}}
% \begin{macrocode}
-\ProvidesFile{scrartcl-xetex-bidi.def}[2017/06/09 v1.1 bidi adaptations for scrartcl class for XeTeX engine]
+\ProvidesFile{scrartcl-xetex-bidi.def}[2022/05/22 v1.2 bidi adaptations for scrartcl class for XeTeX engine]
\newcommand{\scr@saved@LTRfootnotetext}{}
\newcommand{\scr@saved@RTLfootnotetext}{}
\let\scr@saved@footnotetext\@footnotetext
@@ -18305,28 +18304,68 @@ to\rtside{\box\bslice\hfil}}
\csname FN@mf@prepare\endcsname
}
\renewcommand\deffootnote[4][]{%
- \long\def\@makefntext##1{%
- \setlength{\@tempdimc}{#3}%
- \def\@tempa{#1}\ifx\@tempa\@empty
- \@setpar{\@@par
- \@tempdima = \hsize
- \addtolength{\@tempdima}{-#2}%
- \if@RTL\parshape \@ne 0pt \@tempdima\else\parshape \@ne #2 \@tempdima\fi}%
- \else
- \addtolength{\@tempdimc}{#2}%
- \addtolength{\@tempdimc}{-#1}%
- \@setpar{\@@par
- \@tempdima = \hsize
- \addtolength{\@tempdima}{-#1}%
- \@tempdimb = \hsize
- \addtolength{\@tempdimb}{-#2}%
- \if@RTL\parshape \tw@ 0pt \@tempdima 0pt \@tempdimb\else\parshape \tw@ #1 \@tempdima #2 \@tempdimb\fi
+ \expandafter\ifnum\scr@v@is@ge{3.22}\relax
+ \long\def\@makefntext##1{%
+ \ExecuteDoHook{footnote/text/begin}%
+ \raggedfootnote
+ \if@RTL
+ \rightskip
+ \else
+ \leftskip
+ \fi
+ #2
+ \l@addto@macro\@trivlist{%
+ \ifnum\@listdepth=\@ne
+ \if@RTL
+ \advance\rightmargin #2\relax
+ \else
+ \advance\leftmargin #2\relax
+ \fi
+ \fi
}%
- \fi
- \par
- \parindent\@tempdimc\noindent
- \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
- }%
+ \parindent #3\noindent
+ \IfArgIsEmpty{#1}{}{%
+ \hskip \dimexpr #1-#2\relax
+ }%
+ \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
+ \ExecuteDoHook{footnote/text/end}%
+ }%
+ \else
+ \ClassInfo{\KOMAClassName}{%
+ Using old \string\@makefntext\space due to compatibility
+ level\MessageBreak
+ less than 3.22}%
+ \long\def\@makefntext##1{%
+ \setlength{\@tempdimc}{#3}%
+ \def\@tempa{#1}\ifx\@tempa\@empty
+ \@setpar{\@@par
+ \@tempdima = \hsize
+ \addtolength{\@tempdima}{-#2}%
+ \if@RTL
+ \parshape \@ne \z@ \@tempdima
+ \else
+ \parshape \@ne #2 \@tempdima
+ \fi}%
+ \else
+ \addtolength{\@tempdimc}{#2}%
+ \addtolength{\@tempdimc}{-#1}%
+ \@setpar{\@@par
+ \@tempdima = \hsize
+ \addtolength{\@tempdima}{-#1}%
+ \@tempdimb = \hsize
+ \addtolength{\@tempdimb}{-#2}%
+ \if@RTL
+ \parshape \tw@ \z@ \@tempdima \z@ \@tempdimb
+ \else
+ \parshape \tw@ #1 \@tempdima #2 \@tempdimb
+ \fi
+ }%
+ \fi
+ \par
+ \parindent\@tempdimc\noindent
+ \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
+ }%
+ \fi
\def\@@makefnmark{\hbox{\ftnm@font{#4}}}%
}
\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}}
@@ -18345,11 +18384,48 @@ to\rtside{\box\bslice\hfil}}
\hbox to \columnwidth{\hskip \dimexpr\columnwidth-\ftn@rule@width\relax \leavevmode\leaders\hrule\@height\ftn@rule@height\hfill\kern\z@}}}%
\kern 2.6\p@}
\renewcommand*\maketitle[1][1]{%
+ \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
+ \else
+ \def\and{%
+ \end{tabular}%
+ \hskip 1em \@plus.17fil%
+ \begin{tabular}[t]{c}%
+ }%
+ \fi
\if@titlepage
\begin{titlepage}
\setcounter{page}{%
#1%
}%
+ \if@titlepageiscoverpage
+ \edef\titlepage@restore{%
+ \noexpand\endgroup
+ \noexpand\global\noexpand\@colht\the\@colht
+ \noexpand\global\noexpand\@colroom\the\@colroom
+ \noexpand\global\vsize\the\vsize
+ \noexpand\global\noexpand\@titlepageiscoverpagefalse
+ \noexpand\let\noexpand\titlepage@restore\noexpand\relax
+ }%
+ \begingroup
+ \topmargin=\dimexpr \coverpagetopmargin-1in\relax
+ \oddsidemargin=\dimexpr \coverpageleftmargin-1in\relax
+ \evensidemargin=\dimexpr \coverpageleftmargin-1in\relax
+ \textwidth=\dimexpr
+ \paperwidth-\coverpageleftmargin-\coverpagerightmargin\relax
+ \textheight=\dimexpr
+ \paperheight-\coverpagetopmargin-\coverpagebottommargin\relax
+ \headheight=0pt
+ \headsep=0pt
+ \footskip=\baselineskip
+ \@colht=\textheight
+ \@colroom=\textheight
+ \vsize=\textheight
+ \columnwidth=\textwidth
+ \hsize=\columnwidth
+ \linewidth=\hsize
+ \else
+ \let\titlepage@restore\relax
+ \fi
\let\footnotesize\small
\let\right@footnoterule\relax
\let\left@footnoterule\relax
@@ -18360,54 +18436,97 @@ to\rtside{\box\bslice\hfil}}
\renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
\let\@oldmakefnmark\@makefnmark
\renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
- \ifx\@extratitle\@empty \else
- \noindent\@extratitle\next@tpage\cleardoubleemptypage
- \thispagestyle{empty}%
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty
+ \else
+ \if@twoside\mbox{}\next@tpage\fi
+ \noindent\@frontispiece\next@tdpage
+ \fi
+ \else
+ \noindent\@extratitle
+ \ifx\@frontispiece\@empty
+ \else
+ \next@tpage
+ \noindent\@frontispiece
+ \fi
+ \next@tdpage
\fi
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
\ifx\@titlehead\@empty \else
\begin{minipage}[t]{\textwidth}%
- \@titlehead
+ \usekomafont{titlehead}{\@titlehead\par}%
\end{minipage}\par
\fi
\null\vfill
\begin{center}
\ifx\@subject\@empty \else
- {\subject@font \@subject \par}%
+ {\usekomafont{subject}{\@subject\par}}%
\vskip 3em
\fi
- {\titlefont\huge \@title\par}%
+ {\usekomafont{title}{\huge \@title\par}}%
\vskip 1em
- {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
+ {\ifx\@subtitle\@empty\else\usekomafont{subtitle}{\@subtitle\par}\fi}%
\vskip 2em
- {\Large \lineskip 0.75em
- \begin{tabular}[t]{c}
- \@author
- \end{tabular}\par
+ {%
+ \usekomafont{author}{%
+ \lineskip 0.75em
+ \begin{tabular}[t]{c}
+ \@author
+ \end{tabular}\par
+ }%
}%
\vskip 1.5em
- {\Large \@date \par}%
+ {\usekomafont{date}{\@date \par}}%
\vskip \z@ \@plus3fill
- {\Large \@publishers \par}%
+ {\usekomafont{publishers}{\@publishers \par}}%
\vskip 3em
\end{center}\par
- \@thanks
+ \@thanks\global\let\@thanks\@empty
\vfill\null
- \if@twoside\next@tpage
- \begin{minipage}[t]{\textwidth}
- \@uppertitleback
- \end{minipage}\par
- \vfill
- \begin{minipage}[b]{\textwidth}
- \@lowertitleback
- \end{minipage}
+ \if@twoside
+ \@tempswatrue
+ \expandafter\ifnum \@nameuse{scr@v@3.12}>\scr@compatibility\relax
+ \else
+ \ifx\@uppertitleback\@empty\ifx\@lowertitleback\@empty
+ \@tempswafalse
+ \fi\fi
+ \fi
+ \if@tempswa
+ \next@tpage
+ \begin{minipage}[t]{\textwidth}
+ \@uppertitleback
+ \end{minipage}\par
+ \vfill
+ \begin{minipage}[b]{\textwidth}
+ \@lowertitleback
+ \end{minipage}\par
+ \@thanks\global\let\@thanks\@empty
+ \fi
+ \else
+ \ifx\@uppertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\uppertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `twoside=false' mode%
+ }%
+ \fi
+ \ifx\@lowertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\lowertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `twoside=false' mode%
+ }%
+ \fi
\fi
- \ifx\@dedication\@empty \else
- \next@tpage\null\vfill
- {\centering \Large \@dedication \par}%
+ \ifx\@dedication\@empty
+ \else
+ \next@tdpage\null\vfill
+ {\centering\usekomafont{dedication}{\@dedication \par}}%
\vskip \z@ \@plus3fill
- \if@twoside \next@tpage\cleardoubleemptypage \fi
+ \@thanks\global\let\@thanks\@empty
+ \cleardoubleemptypage
\fi
+ \ifx\titlepage@restore\relax\else\clearpage\titlepage@restore\fi
\end{titlepage}
\else
\par
@@ -18415,101 +18534,111 @@ to\rtside{\box\bslice\hfil}}
#1%
\relax\ifnum\@tempcnta=1\else
\ClassWarning{\KOMAClassName}{%
- Optional argument of \string\maketitle\space ignored
- at\MessageBreak
- notitlepage-mode%
+ Optional argument of \string\maketitle\space ignored\MessageBreak
+ in `titlepage=false' mode%
+ }%
+ \fi
+ \ifx\@uppertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\uppertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `titlepage=false' mode%
+ }%
+ \fi
+ \ifx\@lowertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\lowertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `titlepage=false' mode%
}%
\fi
\begingroup
+ \let\titlepage@restore\relax
\renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
\let\@oldmakefnmark\@makefnmark
- \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}
+ \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
+ \next@tdpage
\if@twocolumn
\ifnum \col@number=\@ne
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else\if@twoside\mbox{}\fi\fi
+ \else
+ \@makeextratitle
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \@makefrontispiece
+ \next@tdpage
+ \fi
\@maketitle
\else
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else\if@twoside\mbox{}\fi\fi
+ \else
+ \twocolumn[\@makeextratitle]%
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \twocolumn[\@makefrontispiece]%
+ \next@tdpage
+ \fi
\twocolumn[\@maketitle]%
\fi
\else
- \newpage
- \global\@topnum\z@
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else \mbox{}\fi
+ \else
+ \@makeextratitle
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \@makefrontispiece
+ \next@tdpage
+ \fi
\@maketitle
\fi
- \thispagestyle{\titlepagestyle}\@thanks
+ \ifx\titlepagestyle\@empty\else\thispagestyle{\titlepagestyle}\fi
+ \@thanks\global\let\@thanks\@empty
\endgroup
\fi
\setcounter{footnote}{0}%
- \let\thanks\relax
- \let\LTRthanks\relax
- \let\RTLthanks\relax
- \let\maketitle\relax
- \let\@maketitle\relax
- \global\let\@thanks\@empty
- \global\let\@author\@empty
- \global\let\@date\@empty
- \global\let\@title\@empty
- \global\let\@subtitle\@empty
- \global\let\@extratitle\@empty
- \global\let\@titlehead\@empty
- \global\let\@subject\@empty
- \global\let\@publishers\@empty
- \global\let\@uppertitleback\@empty
- \global\let\@lowertitleback\@empty
- \global\let\@dedication\@empty
- \global\let\author\relax
- \global\let\title\relax
- \global\let\extratitle\relax
- \global\let\titlehead\relax
- \global\let\subject\relax
- \global\let\publishers\relax
- \global\let\uppertitleback\relax
- \global\let\lowertitleback\relax
- \global\let\dedication\relax
- \global\let\date\relax
- \global\let\and\relax
-}%
-\renewcommand*{\@maketitle}{%
- \clearpage
- \let\footnote\thanks
- \let\LTRfootnote\LTRthanks
- \let\RTLfootnote\RTLthanks
- \ifx\@extratitle\@empty \else
- \noindent\@extratitle \next@tpage \if@twoside \null\next@tpage \fi
+ \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
+ \let\thanks\relax
+ \let\LTRthanks\relax
+ \let\RTLthanks\relax
+ \let\maketitle\relax
+ \let\@maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\@subtitle\@empty
+ \global\let\@extratitle\@empty
+ \global\let\@frontispiece\@empty
+ \global\let\@titlehead\@empty
+ \global\let\@subject\@empty
+ \global\let\@publishers\@empty
+ \global\let\@uppertitleback\@empty
+ \global\let\@lowertitleback\@empty
+ \global\let\@dedication\@empty
+ \global\let\author\relax
+ \global\let\title\relax
+ \global\let\extratitle\relax
+ \global\let\titlehead\relax
+ \global\let\subject\relax
+ \global\let\publishers\relax
+ \global\let\uppertitleback\relax
+ \global\let\lowertitleback\relax
+ \global\let\dedication\relax
+ \global\let\date\relax
\fi
- \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
- \ifx\@titlehead\@empty \else
- \begin{minipage}[t]{\textwidth}
- \@titlehead
- \end{minipage}\par
- \fi
- \null
- \vskip 2em%
- \begin{center}%
- \ifx\@subject\@empty \else
- {\subject@font \@subject \par}
- \vskip 1.5em
- \fi
- {\titlefont\huge \@title \par}%
- \vskip .5em
- {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
- \vskip 1em
- {\Large
- \lineskip .5em%
- \begin{tabular}[t]{c}
- \@author
- \end{tabular}\par
- }%
- \vskip 1em%
- {\Large \@date \par}%
- \vskip \z@ \@plus 1em
- {\Large \@publishers \par}
- \ifx\@dedication\@empty \else
- \vskip 2em
- {\Large \@dedication \par}
- \fi
- \end{center}%
- \par
- \vskip 2em
+ \global\let\and\relax
}%
\def\raggedsection{\if@RTL\raggedleft\else\raggedright\fi}
\def\raggedpart{\if@RTL\raggedleft\else\raggedright\fi}
@@ -18587,16 +18716,6 @@ to\rtside{\box\bslice\hfil}}
\fi
\bib@endhook
}
-\renewcommand*\left@footnoterule{%
- \kern-3\p@
- \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi
- \hrule\@width.4\columnwidth
- \kern 2.6\p@}
-\renewcommand*\right@footnoterule{%
- \kern-3\p@
- \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi
- \hbox to \columnwidth{\hskip .6\columnwidth \hrulefill }
- \kern2.6\p@}
\renewcommand*{\raggeddictum}{\if@RTL\raggedright\else\raggedleft\fi}
\renewcommand*{\raggeddictumtext}{\if@RTL\raggedleft\else\raggedright\fi}
\renewcommand*{\raggeddictumauthor}{\if@RTL\raggedright\else\raggedleft\fi}
@@ -18605,76 +18724,61 @@ to\rtside{\box\bslice\hfil}}
}
\renewcommand{\@@makecaption}[3]{%
\cap@margin
- \ifonelinecaptions
- \@tempcnta=\value{mpfootnote}\@tempcntb=\value{footnote}%
- \let\scr@tmp@footnotetext=\@footnotetext
- \let\@footnotetext=\@gobble
- \let\scr@tmp@LTRfootnotetext=\@LTRfootnotetext
- \let\@LTRfootnotetext=\@gobble
- \let\scr@tmp@RTLfootnotetext=\@RTLfootnotetext
- \let\@RTLfootnotetext=\@gobble
- \sbox\@tempboxa{%
- {\capfont{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat}}}%
- #3\unskip\strut}}%
- }%
- \let\@footnotetext=\scr@tmp@footnotetext
- \let\scr@tmp@footnotetext=\undefined
- \let\@LTRfootnotetext=\scr@tmp@LTRfootnotetext
- \let\scr@tmp@LTRfootnotetext=\undefined
- \let\@RTLfootnotetext=\scr@tmp@RTLfootnotetext
- \let\scr@tmp@RTLfootnotetext=\undefined
- \setcounter{footnote}{\@tempcntb}%
- \setcounter{mpfootnote}{\@tempcnta}%
- \else
- \sbox\@tempboxa{\hspace*{2\cap@width}}%
- \fi
- \begingroup%
- \setlength{\@tempdima}{\cap@width}%
- \ifdim \wd\@tempboxa >\@tempdima
- \hb@xt@\hsize{%
- \setbox\@tempboxa\vbox{\hsize=\cap@width
- \ifdofullc@p
- {\capfont{\@hangfrom{\scr@smashdp{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat}}}}}%
- {#3\unskip\strut\par}}}%
- \else%
- \ifdim\cap@indent<\z@
- {\capfont{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat\par}}}%
- \noindent\hspace*{-\cap@indent}#3\unskip\strut\par}}%
- \else%
- \if@capbreak
- {\capfont{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat\par}}}%
- \noindent\@hangfrom{\hspace*{\cap@indent}}{#3\par}}}%
- \else
- {\capfont{\@hangfrom{\scr@smashdp\strut\hspace*{\cap@indent}}%
- {\hspace{-\cap@indent}\scr@smashdp{\ignorespaces#1%
- {{\caplabelfont{#2\captionformat}}}}#3\unskip\strut\par}}}%
- \fi
- \fi
- \fi
+ \begingroup
+ \ifonelinecaptions
+ \def\stepcounter##1{\advance\value{##1}\@ne}%
+ \let\refstepcounter\stepcounter
+ \let\label\@gobble
+ \let\@footnotetext=\@gobble
+ \let\@LTRfootnotetext=\@gobble
+ \let\@RTLfootnotetext=\@gobble
+ \let\hypertarget\@gobbletwo
+ \edef\@xnewline{%
+ \unexpanded{\ClassInfo{\KOMAClassName}{%
+ Workaround for not recommended usage of \string\\ or\MessageBreak
+ \string\newline in caption text
+ }%
+ \hspace*{\linewidth}\hspace{1sp}%
}%
- \setlength{\@tempdima}{\ht\@tempboxa}%
- \addtolength{\@tempdima}{\dp\@tempboxa}%
- \addtolength{\@tempdima}{-\ht\strutbox}%
- \ht\@tempboxa\ht\strutbox
- \dp\@tempboxa\@tempdima
- \strut\cap@left
- \box\@tempboxa
- \cap@right\strut
+ \unexpanded\expandafter{\@xnewline}%
}%
- \else
- \global \@minipagefalse
- \sbox\@tempboxa{%
- {\capfont{\scr@smashdp{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat}}}}%
- #3}}%
+ \edef\@xcentercr{%
+ \unexpanded{\ClassInfo{\KOMAClassName}{%
+ Workaround for not recommended usage of \string\\ or\MessageBreak
+ \string\newline in caption text
+ }%
+ \hspace*{\linewidth}\hspace{1sp}%
+ }%
+ \unexpanded\expandafter{\@xcentercr}%
}%
- {\capfont{\hb@xt@\hsize{\strut\cap@left\if@RTL\beginR\fi\box\@tempboxa\if@RTL\endR\fi\cap@right\strut}}}%
+ \settowidth{\@tempdima}{\scr@@makesinglelinecaption{#1}{#2}{#3}}%
+ \ifdim\@tempdima>\cap@width
+ \aftergroup\scr@makemultilinecaption
+ \else
+ \aftergroup\scr@makesinglelinecaption
+ \fi
+ \else
+ \aftergroup\scr@makemultilinecaption
\fi
\endgroup
+ {#1}{#2}{#3}%
+}
+\renewcommand{\scr@makesinglelinecaption}[3]{%
+ {%
+ \usefontofkomafont{caption}{%
+ \hb@xt@\hsize{%
+ \cap@left
+ \if@RTL
+ \beginR
+ \fi
+ \scr@@makesinglelinecaption{#1}{#2}{#3}%
+ \if@RTL
+ \endR
+ \fi
+ \cap@right
+ }\par\kern\dp\strutbox%
+ }%
+ }\kern-\dp\strutbox
}
\renewcommand{\@makecaption}[2]{%
\if@captionabove
@@ -18689,10 +18793,8 @@ to\rtside{\box\bslice\hfil}}
\vskip\belowcaptionskip
\fi
}
+
\bidi@AfterFile{longtable-xetex-bidi.def}{%
- \@ifpackageloaded{caption2}{\@komalongtablefalse
- \scr@caption@before@longtable@warning{caption2}%
- }{}%
\if@komalongtable
\renewcommand{\LT@makecaption}[3]{%
\noalign{%
@@ -18704,6 +18806,7 @@ to\rtside{\box\bslice\hfil}}
}%
\LT@mcol\LT@cols c{%
\hbox to\z@{\hss\parbox[t]\linewidth{%
+ \def\@captype{table}%
\@@makecaption{#1}{#2}{#3}%
\endgraf
\if@captionabove
@@ -18755,12 +18858,11 @@ to\rtside{\box\bslice\hfil}}
\expandafter\renewcommand%
\csname scr@tso@#1@linefill\endcsname{%
\if@sectionentrywithdots
- \TOCLineLeaderFill\relax
+ {\usekomafont{sectionentrydots}{\TOCLineLeaderFill}}\relax
\else
\hfill
\fi
}%
- % F^^fcr die Eintr^^e4ge die Schrift von Element sectionentry verwenden.
\expandafter\renewcommand%
\csname scr@tso@#1@entryformat\endcsname{\usekomafont{sectionentry}}%
\expandafter\renewcommand%
@@ -18778,14 +18880,6 @@ to\rtside{\box\bslice\hfil}}
\CloneTOCEntryStyle{subsection}{default}
\DeclareSectionCommand[%
- style=part,%
- level=\z@,%
- tocstyle=part,%
- toclevel=\m@ne,%
- tocindent=\z@,%
- tocnumwidth=2em%
-]{part}
-\DeclareSectionCommand[%
style=section,%
level=1,%
indent=\z@,%
@@ -18796,6 +18890,14 @@ to\rtside{\box\bslice\hfil}}
tocnumwidth=1.5em%
]{section}
\DeclareSectionCommand[%
+ style=part,%
+ level=\z@,%
+ tocstyle=part,%
+ toclevel=\m@ne,%
+ tocindent=\z@,%
+ tocnumwidth=2em%
+]{part}
+\DeclareSectionCommand[%
style=section,%
level=2,%
indent=\z@,%
@@ -18822,6 +18924,7 @@ to\rtside{\box\bslice\hfil}}
beforeskip=3.25ex \@plus1ex \@minus.2ex,%
afterskip=-1em,%
tocstyle=subsection,%
+ tocindentfollows=subsubsection,%
tocindent=7.0em,%
tocnumwidth=4.1em%
]{paragraph}
@@ -18842,7 +18945,7 @@ to\rtside{\box\bslice\hfil}}
%\fi
% \section{File \texttt{scrbook-xetex-bidi.def}}
% \begin{macrocode}
-\ProvidesFile{scrbook-xetex-bidi.def}[2017/06/09 v1.1 bidi adaptations for scrbook class for XeTeX engine]
+\ProvidesFile{scrbook-xetex-bidi.def}[2022/05/22 v1.2 bidi adaptations for scrbook class for XeTeX engine]
\newcommand{\scr@saved@LTRfootnotetext}{}
\newcommand{\scr@saved@RTLfootnotetext}{}
\let\scr@saved@footnotetext\@footnotetext
@@ -18861,28 +18964,69 @@ to\rtside{\box\bslice\hfil}}
\csname FN@mf@prepare\endcsname
}
\renewcommand\deffootnote[4][]{%
- \long\def\@makefntext##1{%
- \setlength{\@tempdimc}{#3}%
- \def\@tempa{#1}\ifx\@tempa\@empty
- \@setpar{\@@par
- \@tempdima = \hsize
- \addtolength{\@tempdima}{-#2}%
- \if@RTL\parshape \@ne 0pt \@tempdima\else\parshape \@ne #2 \@tempdima\fi}%
- \else
- \addtolength{\@tempdimc}{#2}%
- \addtolength{\@tempdimc}{-#1}%
- \@setpar{\@@par
- \@tempdima = \hsize
- \addtolength{\@tempdima}{-#1}%
- \@tempdimb = \hsize
- \addtolength{\@tempdimb}{-#2}%
- \if@RTL\parshape \tw@ 0pt \@tempdima 0pt \@tempdimb\else\parshape \tw@ #1 \@tempdima #2 \@tempdimb\fi
+ \expandafter\ifnum\scr@v@is@ge{3.22}\relax
+ \long\def\@makefntext##1{%
+ \ExecuteDoHook{footnote/text/begin}%
+ \raggedfootnote
+ \if@RTL
+ \rightskip
+ \else
+ \leftskip
+ \fi
+ #2
+ \l@addto@macro\@trivlist{%
+ \ifnum\@listdepth=\@ne\advance
+ \if@RTL
+ \rightmargin #2\relax
+ \else
+ \leftmargin #2\relax
+ \fi
+ \fi
}%
- \fi
- \par
- \parindent\@tempdimc\noindent
- \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
- }%
+ \parindent #3\noindent
+ \IfArgIsEmpty{#1}{}{%
+ \hskip \dimexpr #1-#2\relax
+ }%
+ \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
+ \ExecuteDoHook{footnote/text/end}%
+ }%
+ \else
+ \ClassInfo{\KOMAClassName}{%
+ Using old \string\@makefntext\space due to compatibility
+ level\MessageBreak
+ less than 3.22}%
+ \long\def\@makefntext##1{%
+ \setlength{\@tempdimc}{#3}%
+ \def\@tempa{#1}\ifx\@tempa\@empty
+ \@setpar{\@@par
+ \@tempdima = \hsize
+ \addtolength{\@tempdima}{-#2}%
+ \if@RTL
+ \parshape \@ne \z@ \@tempdima
+ \else
+ \parshape \@ne #2 \@tempdima
+ \fi
+ }%
+ \else
+ \addtolength{\@tempdimc}{#2}%
+ \addtolength{\@tempdimc}{-#1}%
+ \@setpar{\@@par
+ \@tempdima = \hsize
+ \addtolength{\@tempdima}{-#1}%
+ \@tempdimb = \hsize
+ \addtolength{\@tempdimb}{-#2}%
+ \if@RTL
+ \parshape \tw@ \z@ \@tempdima \z@ \@tempdimb
+ \else
+ \parshape \tw@ #1 \@tempdima #2 \@tempdimb
+ \fi
+ }%
+ \fi
+ \par
+ \parindent\@tempdimc\noindent
+ \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
+ }%
+ \fi
\def\@@makefnmark{\hbox{\ftnm@font{#4}}}%
}
\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}}
@@ -18901,11 +19045,48 @@ to\rtside{\box\bslice\hfil}}
\hbox to \columnwidth{\hskip \dimexpr\columnwidth-\ftn@rule@width\relax \leavevmode\leaders\hrule\@height\ftn@rule@height\hfill\kern\z@}}}%
\kern 2.6\p@}
\renewcommand*\maketitle[1][1]{%
+ \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
+ \else
+ \def\and{%
+ \end{tabular}%
+ \hskip 1em \@plus.17fil%
+ \begin{tabular}[t]{c}%
+ }%
+ \fi
\if@titlepage
\begin{titlepage}
\setcounter{page}{%
#1%
}%
+ \if@titlepageiscoverpage
+ \edef\titlepage@restore{%
+ \noexpand\endgroup
+ \noexpand\global\noexpand\@colht\the\@colht
+ \noexpand\global\noexpand\@colroom\the\@colroom
+ \noexpand\global\vsize\the\vsize
+ \noexpand\global\noexpand\@titlepageiscoverpagefalse
+ \noexpand\let\noexpand\titlepage@restore\noexpand\relax
+ }%
+ \begingroup
+ \topmargin=\dimexpr \coverpagetopmargin-1in\relax
+ \oddsidemargin=\dimexpr \coverpageleftmargin-1in\relax
+ \evensidemargin=\dimexpr \coverpageleftmargin-1in\relax
+ \textwidth=\dimexpr
+ \paperwidth-\coverpageleftmargin-\coverpagerightmargin\relax
+ \textheight=\dimexpr
+ \paperheight-\coverpagetopmargin-\coverpagebottommargin\relax
+ \headheight=0pt
+ \headsep=0pt
+ \footskip=\baselineskip
+ \@colht=\textheight
+ \@colroom=\textheight
+ \vsize=\textheight
+ \columnwidth=\textwidth
+ \hsize=\columnwidth
+ \linewidth=\hsize
+ \else
+ \let\titlepage@restore\relax
+ \fi
\let\footnotesize\small
\let\right@footnoterule\relax
\let\left@footnoterule\relax
@@ -18916,54 +19097,97 @@ to\rtside{\box\bslice\hfil}}
\renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
\let\@oldmakefnmark\@makefnmark
\renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
- \ifx\@extratitle\@empty \else
- \noindent\@extratitle\next@tpage\cleardoubleemptypage
- \thispagestyle{empty}%
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty
+ \else
+ \if@twoside\mbox{}\next@tpage\fi
+ \noindent\@frontispiece\next@tdpage
+ \fi
+ \else
+ \noindent\@extratitle
+ \ifx\@frontispiece\@empty
+ \else
+ \next@tpage
+ \noindent\@frontispiece
+ \fi
+ \next@tdpage
\fi
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
\ifx\@titlehead\@empty \else
\begin{minipage}[t]{\textwidth}%
- \@titlehead
+ \usekomafont{titlehead}{\@titlehead\par}%
\end{minipage}\par
\fi
\null\vfill
\begin{center}
\ifx\@subject\@empty \else
- {\subject@font \@subject \par}%
+ {\usekomafont{subject}{\@subject\par}}%
\vskip 3em
\fi
- {\titlefont\huge \@title\par}%
+ {\usekomafont{title}{\huge \@title\par}}%
\vskip 1em
- {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
+ {\ifx\@subtitle\@empty\else\usekomafont{subtitle}{\@subtitle\par}\fi}%
\vskip 2em
- {\Large \lineskip 0.75em
- \begin{tabular}[t]{c}
- \@author
- \end{tabular}\par
+ {%
+ \usekomafont{author}{%
+ \lineskip 0.75em
+ \begin{tabular}[t]{c}
+ \@author
+ \end{tabular}\par
+ }%
}%
\vskip 1.5em
- {\Large \@date \par}%
+ {\usekomafont{date}{\@date \par}}%
\vskip \z@ \@plus3fill
- {\Large \@publishers \par}%
+ {\usekomafont{publishers}{\@publishers \par}}%
\vskip 3em
\end{center}\par
- \@thanks
+ \@thanks\global\let\@thanks\@empty
\vfill\null
- \if@twoside\next@tpage
- \begin{minipage}[t]{\textwidth}
- \@uppertitleback
- \end{minipage}\par
- \vfill
- \begin{minipage}[b]{\textwidth}
- \@lowertitleback
- \end{minipage}
+ \if@twoside
+ \@tempswatrue
+ \expandafter\ifnum \@nameuse{scr@v@3.12}>\scr@compatibility\relax
+ \else
+ \ifx\@uppertitleback\@empty\ifx\@lowertitleback\@empty
+ \@tempswafalse
+ \fi\fi
+ \fi
+ \if@tempswa
+ \next@tpage
+ \begin{minipage}[t]{\textwidth}
+ \@uppertitleback
+ \end{minipage}\par
+ \vfill
+ \begin{minipage}[b]{\textwidth}
+ \@lowertitleback
+ \end{minipage}\par
+ \@thanks\global\let\@thanks\@empty
+ \fi
+ \else
+ \ifx\@uppertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\uppertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `twoside=false' mode%
+ }%
+ \fi
+ \ifx\@lowertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\lowertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `twoside=false' mode%
+ }%
+ \fi
\fi
- \ifx\@dedication\@empty \else
- \next@tpage\null\vfill
- {\centering \Large \@dedication \par}%
+ \ifx\@dedication\@empty
+ \else
+ \next@tdpage\null\vfill
+ {\centering\usekomafont{dedication}{\@dedication \par}}%
\vskip \z@ \@plus3fill
- \if@twoside \next@tpage\cleardoubleemptypage \fi
+ \@thanks\global\let\@thanks\@empty
+ \cleardoubleemptypage
\fi
+ \ifx\titlepage@restore\relax\else\clearpage\titlepage@restore\fi
\end{titlepage}
\else
\par
@@ -18971,106 +19195,116 @@ to\rtside{\box\bslice\hfil}}
#1%
\relax\ifnum\@tempcnta=1\else
\ClassWarning{\KOMAClassName}{%
- Optional argument of \string\maketitle\space ignored
- at\MessageBreak
- notitlepage-mode%
+ Optional argument of \string\maketitle\space ignored\MessageBreak
+ in `titlepage=false' mode%
+ }%
+ \fi
+ \ifx\@uppertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\uppertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `titlepage=false' mode%
+ }%
+ \fi
+ \ifx\@lowertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\lowertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `titlepage=false' mode%
}%
\fi
\begingroup
+ \let\titlepage@restore\relax
\renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
\let\@oldmakefnmark\@makefnmark
- \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}
+ \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
+ \next@tdpage
\if@twocolumn
\ifnum \col@number=\@ne
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else\if@twoside\mbox{}\fi\fi
+ \else
+ \@makeextratitle
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \@makefrontispiece
+ \next@tdpage
+ \fi
\@maketitle
\else
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else\if@twoside\mbox{}\fi\fi
+ \else
+ \twocolumn[\@makeextratitle]%
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \twocolumn[\@makefrontispiece]%
+ \next@tdpage
+ \fi
\twocolumn[\@maketitle]%
\fi
\else
- \newpage
- \global\@topnum\z@
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else \mbox{}\fi
+ \else
+ \@makeextratitle
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \@makefrontispiece
+ \next@tdpage
+ \fi
\@maketitle
\fi
- \thispagestyle{\titlepagestyle}\@thanks
+ \ifx\titlepagestyle\@empty\else\thispagestyle{\titlepagestyle}\fi
+ \@thanks\global\let\@thanks\@empty
\endgroup
\fi
\setcounter{footnote}{0}%
- \let\thanks\relax
- \let\LTRthanks\relax
- \let\RTLthanks\relax
- \let\maketitle\relax
- \let\@maketitle\relax
- \global\let\@thanks\@empty
- \global\let\@author\@empty
- \global\let\@date\@empty
- \global\let\@title\@empty
- \global\let\@subtitle\@empty
- \global\let\@extratitle\@empty
- \global\let\@titlehead\@empty
- \global\let\@subject\@empty
- \global\let\@publishers\@empty
- \global\let\@uppertitleback\@empty
- \global\let\@lowertitleback\@empty
- \global\let\@dedication\@empty
- \global\let\author\relax
- \global\let\title\relax
- \global\let\extratitle\relax
- \global\let\titlehead\relax
- \global\let\subject\relax
- \global\let\publishers\relax
- \global\let\uppertitleback\relax
- \global\let\lowertitleback\relax
- \global\let\dedication\relax
- \global\let\date\relax
- \global\let\and\relax
-}%
-\renewcommand*{\@maketitle}{%
- \clearpage
- \let\footnote\thanks
- \let\LTRfootnote\LTRthanks
- \let\RTLfootnote\RTLthanks
- \ifx\@extratitle\@empty \else
- \noindent\@extratitle \next@tpage \if@twoside \null\next@tpage \fi
- \fi
- \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
- \ifx\@titlehead\@empty \else
- \begin{minipage}[t]{\textwidth}
- \@titlehead
- \end{minipage}\par
+ \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
+ \let\thanks\relax
+ \let\LTRthanks\relax
+ \let\RTLthanks\relax
+ \let\maketitle\relax
+ \let\@maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\@subtitle\@empty
+ \global\let\@extratitle\@empty
+ \global\let\@frontispiece\@empty
+ \global\let\@titlehead\@empty
+ \global\let\@subject\@empty
+ \global\let\@publishers\@empty
+ \global\let\@uppertitleback\@empty
+ \global\let\@lowertitleback\@empty
+ \global\let\@dedication\@empty
+ \global\let\author\relax
+ \global\let\title\relax
+ \global\let\extratitle\relax
+ \global\let\titlehead\relax
+ \global\let\subject\relax
+ \global\let\publishers\relax
+ \global\let\uppertitleback\relax
+ \global\let\lowertitleback\relax
+ \global\let\dedication\relax
+ \global\let\date\relax
\fi
- \null
- \vskip 2em%
- \begin{center}%
- \ifx\@subject\@empty \else
- {\subject@font \@subject \par}
- \vskip 1.5em
- \fi
- {\titlefont\huge \@title \par}%
- \vskip .5em
- {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
- \vskip 1em
- {\Large
- \lineskip .5em%
- \begin{tabular}[t]{c}
- \@author
- \end{tabular}\par
- }%
- \vskip 1em%
- {\Large \@date \par}%
- \vskip \z@ \@plus 1em
- {\Large \@publishers \par}
- \ifx\@dedication\@empty \else
- \vskip 2em
- {\Large \@dedication \par}
- \fi
- \end{center}%
- \par
- \vskip 2em
+ \global\let\and\relax
}%
\def\raggedsection{\if@RTL\raggedleft\else\raggedright\fi}
\renewcommand*\autodot{\if@altsecnumformat\@SepMark\fi}
\renewcommand*\thesection{%
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.97d}\relax
+ \expandafter\ifnum\scr@v@is@gt{2.97d}%
\if@mainmatter\thechapter\@SepMark\fi
\else
\thechapter\@SepMark%
@@ -19085,27 +19319,17 @@ to\rtside{\box\bslice\hfil}}
\renewcommand*{\thesubparagraph}{%
\theparagraph\@SepMark\@arabic\c@subparagraph
}
-\renewcommand*\thefigure{%
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.97d}\relax
- \if@mainmatter\thechapter\@SepMark\fi
- \else
- \thechapter\@SepMark%
- \fi
- \@arabic\c@figure
-}
-\renewcommand*\thetable{%
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.97d}\relax
- \if@mainmatter\thechapter\@SepMark\fi
- \else
- \thechapter\@SepMark%
- \fi
- \@arabic\c@table
-}
-\renewcommand*\theequation{%
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.97d}\relax
+\expandafter\ifnum\scr@v@is@le{2.97d}%
+ \renewcommand*\thefigure{\thechapter\@SepMark\@arabic\c@figure}
+\fi
+\expandafter\ifnum\scr@v@is@le{2.97d}%
+ \renewcommand*\thetable{\thechapter\@SepMark\@arabic\c@table}
+\fi
+\renewcommand*{\theequation}{%
+ \expandafter\ifnum\scr@v@is@gt{2.97d}%
\if@mainmatter\thechapter\@SepMark\fi
\else
- \thechapter\@SepMark%
+ \thechapter\@SepMark%
\fi
\@arabic\c@equation
}
@@ -19174,16 +19398,6 @@ to\rtside{\box\bslice\hfil}}
\fi
\bib@endhook
}
-\renewcommand*\left@footnoterule{%
- \kern-3\p@
- \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi
- \hrule\@width.4\columnwidth
- \kern 2.6\p@}
-\renewcommand*\right@footnoterule{%
- \kern-3\p@
- \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi
- \hbox to \columnwidth{\hskip .6\columnwidth \hrulefill }
- \kern2.6\p@}
\renewcommand*{\raggeddictum}{\if@RTL\raggedright\else\raggedleft\fi}
\renewcommand*{\raggeddictumtext}{\if@RTL\raggedleft\else\raggedright\fi}
\renewcommand*{\raggeddictumauthor}{\if@RTL\raggedright\else\raggedleft\fi}
@@ -19192,76 +19406,61 @@ to\rtside{\box\bslice\hfil}}
}
\renewcommand{\@@makecaption}[3]{%
\cap@margin
- \ifonelinecaptions
- \@tempcnta=\value{mpfootnote}\@tempcntb=\value{footnote}%
- \let\scr@tmp@footnotetext=\@footnotetext
- \let\@footnotetext=\@gobble
- \let\scr@tmp@LTRfootnotetext=\@LTRfootnotetext
- \let\@LTRfootnotetext=\@gobble
- \let\scr@tmp@RTLfootnotetext=\@RTLfootnotetext
- \let\@RTLfootnotetext=\@gobble
- \sbox\@tempboxa{%
- {\capfont{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat}}}%
- #3\unskip\strut}}%
- }%
- \let\@footnotetext=\scr@tmp@footnotetext
- \let\scr@tmp@footnotetext=\undefined
- \let\@LTRfootnotetext=\scr@tmp@LTRfootnotetext
- \let\scr@tmp@LTRfootnotetext=\undefined
- \let\@RTLfootnotetext=\scr@tmp@RTLfootnotetext
- \let\scr@tmp@RTLfootnotetext=\undefined
- \setcounter{footnote}{\@tempcntb}%
- \setcounter{mpfootnote}{\@tempcnta}%
- \else
- \sbox\@tempboxa{\hspace*{2\cap@width}}%
- \fi
- \begingroup%
- \setlength{\@tempdima}{\cap@width}%
- \ifdim \wd\@tempboxa >\@tempdima
- \hb@xt@\hsize{%
- \setbox\@tempboxa\vbox{\hsize=\cap@width
- \ifdofullc@p
- {\capfont{\@hangfrom{\scr@smashdp{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat}}}}}%
- {#3\unskip\strut\par}}}%
- \else%
- \ifdim\cap@indent<\z@
- {\capfont{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat\par}}}%
- \noindent\hspace*{-\cap@indent}#3\unskip\strut\par}}%
- \else%
- \if@capbreak
- {\capfont{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat\par}}}%
- \noindent\@hangfrom{\hspace*{\cap@indent}}{#3\par}}}%
- \else
- {\capfont{\@hangfrom{\scr@smashdp\strut\hspace*{\cap@indent}}%
- {\hspace{-\cap@indent}\scr@smashdp{\ignorespaces#1%
- {{\caplabelfont{#2\captionformat}}}}#3\unskip\strut\par}}}%
- \fi
- \fi
- \fi
+ \begingroup
+ \ifonelinecaptions
+ \def\stepcounter##1{\advance\value{##1}\@ne}%
+ \let\refstepcounter\stepcounter
+ \let\label\@gobble
+ \let\@footnotetext=\@gobble
+ \let\@LTRfootnotetext=\@gobble
+ \let\@RTLfootnotetext=\@gobble
+ \let\hypertarget\@gobbletwo
+ \edef\@xnewline{%
+ \unexpanded{\ClassInfo{\KOMAClassName}{%
+ Workaround for not recommended usage of \string\\ or\MessageBreak
+ \string\newline in caption text
+ }%
+ \hspace*{\linewidth}\hspace{1sp}%
}%
- \setlength{\@tempdima}{\ht\@tempboxa}%
- \addtolength{\@tempdima}{\dp\@tempboxa}%
- \addtolength{\@tempdima}{-\ht\strutbox}%
- \ht\@tempboxa\ht\strutbox
- \dp\@tempboxa\@tempdima
- \strut\cap@left
- \box\@tempboxa
- \cap@right\strut
+ \unexpanded\expandafter{\@xnewline}%
}%
- \else
- \global \@minipagefalse
- \sbox\@tempboxa{%
- {\capfont{\scr@smashdp{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat}}}}%
- #3}}%
+ \edef\@xcentercr{%
+ \unexpanded{\ClassInfo{\KOMAClassName}{%
+ Workaround for not recommended usage of \string\\ or\MessageBreak
+ \string\newline in caption text
+ }%
+ \hspace*{\linewidth}\hspace{1sp}%
+ }%
+ \unexpanded\expandafter{\@xcentercr}%
}%
- {\capfont{\hb@xt@\hsize{\strut\cap@left\if@RTL\beginR\fi\box\@tempboxa\if@RTL\endR\fi\cap@right\strut}}}%
+ \settowidth{\@tempdima}{\scr@@makesinglelinecaption{#1}{#2}{#3}}%
+ \ifdim\@tempdima>\cap@width
+ \aftergroup\scr@makemultilinecaption
+ \else
+ \aftergroup\scr@makesinglelinecaption
+ \fi
+ \else
+ \aftergroup\scr@makemultilinecaption
\fi
\endgroup
+ {#1}{#2}{#3}%
+}
+\renewcommand{\scr@makesinglelinecaption}[3]{%
+ {%
+ \usefontofkomafont{caption}{%
+ \hb@xt@\hsize{%
+ \cap@left
+ \if@RTL
+ \beginR
+ \fi
+ \scr@@makesinglelinecaption{#1}{#2}{#3}%
+ \if@RTL
+ \endR
+ \fi
+ \cap@right
+ }\par\kern\dp\strutbox%
+ }%
+ }\kern-\dp\strutbox
}
\renewcommand{\@makecaption}[2]{%
\if@captionabove
@@ -19277,9 +19476,6 @@ to\rtside{\box\bslice\hfil}}
\fi
}
\bidi@AfterFile{longtable-xetex-bidi.def}{%
- \@ifpackageloaded{caption2}{\@komalongtablefalse
- \scr@caption@before@longtable@warning{caption2}%
- }{}%
\if@komalongtable
\renewcommand{\LT@makecaption}[3]{%
\noalign{%
@@ -19291,6 +19487,7 @@ to\rtside{\box\bslice\hfil}}
}%
\LT@mcol\LT@cols c{%
\hbox to\z@{\hss\parbox[t]\linewidth{%
+ \def\@captype{table}%
\@@makecaption{#1}{#2}{#3}%
\endgraf
\if@captionabove
@@ -19342,7 +19539,7 @@ to\rtside{\box\bslice\hfil}}
\expandafter\renewcommand%
\csname scr@tso@#1@linefill\endcsname{%
\if@chapterentrywithdots
- \TOCLineLeaderFill\relax
+ {\usekomafont{chapterentrydots}{\TOCLineLeaderFill}}\relax
\else
\hfill
\fi
@@ -19365,15 +19562,6 @@ to\rtside{\box\bslice\hfil}}
\CloneTOCEntryStyle{section}{default}
\DeclareSectionCommand[%
- style=part,%
- level=\m@ne,%
- pagestyle=plain,%
- tocstyle=part,%
- toclevel=\m@ne,%
- tocindent=\z@,%
- tocnumwidth=2em%
-]{part}
-\DeclareSectionCommand[%
style=chapter,%
level=\z@,%
pagestyle=plain,%
@@ -19388,10 +19576,20 @@ to\rtside{\box\bslice\hfil}}
beforeskip=-3.5ex \@plus -1ex \@minus -.2ex,%
afterskip=2.3ex \@plus.2ex,%
tocstyle=section,%
+ tocindentfollows=chapter,%
tocindent=1.5em,%
tocnumwidth=2.3em%
]{section}
\DeclareSectionCommand[%
+ style=part,%
+ level=\m@ne,%
+ pagestyle=plain,%
+ tocstyle=part,%
+ toclevel=\m@ne,%
+ tocindent=\z@,%
+ tocnumwidth=2em%
+]{part}
+\DeclareSectionCommand[%
style=section,%
level=2,%
indent=\z@,%
@@ -19417,6 +19615,7 @@ to\rtside{\box\bslice\hfil}}
indent=\z@,%
beforeskip=3.25ex \@plus1ex \@minus.2ex,%
afterskip=-1em,%
+ tocindentfollows=subsubsection,%
tocstyle=section,%
tocindent=10em,%
tocnumwidth=5em%
@@ -19431,131 +19630,14 @@ to\rtside{\box\bslice\hfil}}
tocindent=12em,%
tocnumwidth=6em%
]{subparagraph}
-
-
% \end{macrocode}
% \iffalse
%</scrbook-xetex-bidi.def>
-%<*scrlettr-xetex-bidi.def>
-%\fi
-% \section{File \texttt{scrlettr-xetex-bidi.def}}
-% \begin{macrocode}
-\ProvidesFile{scrlettr-xetex-bidi.def}[2015/11/14 v0.3 bidi adaptations for scrlettr class for XeTeX engine]
-\renewcommand\deffootnote[4][]{%
- \long\def\@makefntext##1{%
- \edef\@tempa{#1}\ifx\@tempa\@empty
- \@setpar{\@@par
- \@tempdima = \hsize
- \addtolength{\@tempdima}{-#2}
- \if@RTL\parshape \@ne 0pt \@tempdima\else\parshape \@ne #2 \@tempdima\fi}%
- \else
- \@setpar{\@@par
- \@tempdima = \hsize
- \addtolength{\@tempdima}{-#1}
- \@tempdimb = \hsize
- \addtolength{\@tempdimb}{-#2}
- \if@RTL\parshape \tw@ 0pt \@tempdima 0pt \@tempdimb\else\parshape \tw@ #1 \@tempdima #2 \@tempdimb\fi}%
- \fi
- \par
- \parindent #3\noindent
- \hbox to \z@{\hss\@@makefnmark}##1}
- \def\@@makefnmark{\hbox{#4}}
-}
-\deffootnote[1em]{1.5em}{1em}
- {\textsuperscript{\thefootnotemark}}
-\def\left@footnoterule{\kern-1\p@
- \hrule width 0.4\columnwidth
- \kern .6\p@}
-\def\right@footnoterule{%
- \kern-1\p@
- \hbox to \columnwidth{\hskip .6\columnwidth \hrulefill }
- \kern .6\p@}
-\def\@datefield{\@reffalse
- \ifx\varyourref\@empty \else \@reftrue \fi
- \ifx\varyourmail\@empty \else \@reftrue \fi
- \ifx\varmyref\@empty \else \@reftrue \fi
- \ifx\varcustomer\@empty \else \@reftrue \fi
- \ifx\varinvoice\@empty \else \@reftrue \fi
- \ifx\varrefitemi\@empty \else \@reftrue \fi
- \ifx\varrefitemii\@empty \else \@reftrue \fi
- \ifx\varrefitemiii\@empty \else \@reftrue \fi
- \vskip -\parskip
- \vskip \refvskip
- \if@ref
- \ifx\varyourref\@empty \else
- \settowidth{\sc@temp}{\varyourref}
- \setbox0\hbox{\scriptsize \sf \yourrefname}
- \ifdim \sc@temp > \wd0 \sc@@temp\sc@temp \else \sc@@temp\wd0 \fi
- \parbox[t]{\sc@@temp}{\noindent \box0\par \varyourref}\hfill
- \fi
- \ifx\varyourmail\@empty \else
- \settowidth{\sc@temp}{\varyourmail}
- \setbox0\hbox{\scriptsize \sf \yourmailname}
- \ifdim \sc@temp > \wd0 \sc@@temp\sc@temp \else \sc@@temp\wd0 \fi
- \parbox[t]{\sc@@temp}{\noindent \box0\par \varyourmail}\hfill
- \fi
- \ifx\varmyref\@empty \else
- \settowidth{\sc@temp}{\varmyref}
- \setbox0\hbox{\scriptsize \sf \myrefname}
- \ifdim \sc@temp > \wd0 \sc@@temp\sc@temp \else \sc@@temp\wd0 \fi
- \parbox[t]{\sc@@temp}{\noindent \box0\par \varmyref}\hfill
- \fi
- \ifx\varcustomer\@empty \else
- \settowidth{\sc@temp}{\varcustomer}
- \setbox0\hbox{\scriptsize \sf \customername}
- \ifdim \sc@temp > \wd0 \sc@@temp\sc@temp \else \sc@@temp\wd0 \fi
- \parbox[t]{\sc@@temp}{\noindent \box0\par \varcustomer}\hfill
- \fi
- \ifx\varinvoice\@empty \else
- \settowidth{\sc@temp}{\varinvoice}
- \setbox0\hbox{\scriptsize \sf \invoicename}
- \ifdim \sc@temp > \wd0 \sc@@temp\sc@temp \else \sc@@temp\wd0 \fi
- \parbox[t]{\sc@@temp}{\noindent \box0\par \varinvoice}\hfill
- \fi
- \ifx\varrefitemi\@empty \else
- \settowidth{\sc@temp}{\varrefitemi}
- \setbox0\hbox{\scriptsize \sf \varrefitemnamei}
- \ifdim \sc@temp > \wd0 \sc@@temp\sc@temp \else \sc@@temp\wd0 \fi
- \parbox[t]{\sc@@temp}{\noindent \box0\par \varrefitemi}\hfill
- \fi
- \ifx\varrefitemii\@empty \else
- \settowidth{\sc@temp}{\varrefitemii}
- \setbox0\hbox{\scriptsize \sf \varrefitemnameii}
- \ifdim \sc@temp > \wd0 \sc@@temp\sc@temp \else \sc@@temp\wd0 \fi
- \parbox[t]{\sc@@temp}{\noindent \box0\par \varrefitemii}\hfill
- \fi
- \ifx\varrefitemiii\@empty \else
- \settowidth{\sc@temp}{\varrefitemiii}
- \setbox0\hbox{\scriptsize \sf \varrefitemnameiii}
- \ifdim \sc@temp > \wd0 \sc@@temp\sc@temp \else \sc@@temp\wd0 \fi
- \parbox[t]{\sc@@temp}{\noindent \box0\par \varrefitemiii}\hfill
- \fi
- \ifx\@date\@empty \else
- \settowidth{\sc@temp}{\@date}
- \setbox0\hbox{\scriptsize \sf \datename}
- \ifdim \sc@temp > \wd0 \sc@@temp\sc@temp \else \sc@@temp\wd0 \fi
- \parbox[t]{\sc@@temp}{\noindent \box0\par \@date}
- \fi
- \par
- \vspace{2.5\baselineskip}
- \else
- {\ifx\@date\@empty \else \if@RTL\raggedright\else\raggedleft\fi\fromplace\ \@date\par \fi}
- \vspace{1.5\baselineskip}
- \fi}
-\long\def\closing#1{\par\nobreak\vspace{0.5\baselineskip}
- \stopbreaks \noindent \sc@temp\textwidth \advance\sc@temp by
- -\sigindent \hspace{\sigindent}%
- \parbox{\sc@temp}{\if@RTL\raggedleft\else\raggedright\fi\ignorespaces #1\mbox{}\\[\presig@skip]
- \fromsig\strut}\par
- \vspace{1.5\baselineskip}}
-% \end{macrocode}
-% \iffalse
-%</scrlettr-xetex-bidi.def>
%<*scrreprt-xetex-bidi.def>
%\fi
% \section{File \texttt{scrreprt-xetex-bidi.def}}
% \begin{macrocode}
-\ProvidesFile{scrreprt-xetex-bidi.def}[2017/06/09 v1.1 bidi adaptations for scrreprt class for XeTeX engine]
+\ProvidesFile{scrreprt-xetex-bidi.def}[2022/05/22 v1.2 bidi adaptations for scrreprt class for XeTeX engine]
\newcommand{\scr@saved@LTRfootnotetext}{}
\newcommand{\scr@saved@RTLfootnotetext}{}
\let\scr@saved@footnotetext\@footnotetext
@@ -19574,28 +19656,69 @@ to\rtside{\box\bslice\hfil}}
\csname FN@mf@prepare\endcsname
}
\renewcommand\deffootnote[4][]{%
- \long\def\@makefntext##1{%
- \setlength{\@tempdimc}{#3}%
- \def\@tempa{#1}\ifx\@tempa\@empty
- \@setpar{\@@par
- \@tempdima = \hsize
- \addtolength{\@tempdima}{-#2}%
- \if@RTL\parshape \@ne 0pt \@tempdima\else\parshape \@ne #2 \@tempdima\fi}%
- \else
- \addtolength{\@tempdimc}{#2}%
- \addtolength{\@tempdimc}{-#1}%
- \@setpar{\@@par
- \@tempdima = \hsize
- \addtolength{\@tempdima}{-#1}%
- \@tempdimb = \hsize
- \addtolength{\@tempdimb}{-#2}%
- \if@RTL\parshape \tw@ 0pt \@tempdima 0pt \@tempdimb\else\parshape \tw@ #1 \@tempdima #2 \@tempdimb\fi
+ \expandafter\ifnum\scr@v@is@ge{3.22}\relax
+ \long\def\@makefntext##1{%
+ \ExecuteDoHook{footnote/text/begin}%
+ \raggedfootnote
+ \if@RTL
+ \rightskip
+ \else
+ \leftskip
+ \fi
+ #2
+ \l@addto@macro\@trivlist{%
+ \ifnum\@listdepth=\@ne
+ \if@RTL
+ \advance\rightmargin #2\relax
+ \else
+ \advance\leftmargin #2\relax
+ \fi
+ \fi
}%
- \fi
- \par
- \parindent\@tempdimc\noindent
- \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
- }%
+ \parindent #3\noindent
+ \IfArgIsEmpty{#1}{}{%
+ \hskip \dimexpr #1-#2\relax
+ }%
+ \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
+ \ExecuteDoHook{footnote/text/end}%
+ }%
+ \else
+ \ClassInfo{\KOMAClassName}{%
+ Using old \string\@makefntext\space due to compatibility
+ level\MessageBreak
+ less than 3.22}%
+ \long\def\@makefntext##1{%
+ \setlength{\@tempdimc}{#3}%
+ \def\@tempa{#1}\ifx\@tempa\@empty
+ \@setpar{\@@par
+ \@tempdima = \hsize
+ \addtolength{\@tempdima}{-#2}%
+ \if@RTL
+ \parshape \@ne \z@ \@tempdima
+ \else
+ \parshape \@ne #2 \@tempdima
+ \fi
+ }%
+ \else
+ \addtolength{\@tempdimc}{#2}%
+ \addtolength{\@tempdimc}{-#1}%
+ \@setpar{\@@par
+ \@tempdima = \hsize
+ \addtolength{\@tempdima}{-#1}%
+ \@tempdimb = \hsize
+ \addtolength{\@tempdimb}{-#2}%
+ \if@RTL
+ \parshape \tw@ \z@ \@tempdima \z@ \@tempdimb
+ \else
+ \parshape \tw@ #1 \@tempdima #2 \@tempdimb
+ \fi
+ }%
+ \fi
+ \par
+ \parindent\@tempdimc\noindent
+ \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
+ }%
+ \fi
\def\@@makefnmark{\hbox{\ftnm@font{#4}}}%
}
\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}}
@@ -19614,11 +19737,48 @@ to\rtside{\box\bslice\hfil}}
\hbox to \columnwidth{\hskip \dimexpr\columnwidth-\ftn@rule@width\relax \leavevmode\leaders\hrule\@height\ftn@rule@height\hfill\kern\z@}}}%
\kern 2.6\p@}
\renewcommand*\maketitle[1][1]{%
+ \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
+ \else
+ \def\and{%
+ \end{tabular}%
+ \hskip 1em \@plus.17fil%
+ \begin{tabular}[t]{c}%
+ }%
+ \fi
\if@titlepage
\begin{titlepage}
\setcounter{page}{%
#1%
}%
+ \if@titlepageiscoverpage
+ \edef\titlepage@restore{%
+ \noexpand\endgroup
+ \noexpand\global\noexpand\@colht\the\@colht
+ \noexpand\global\noexpand\@colroom\the\@colroom
+ \noexpand\global\vsize\the\vsize
+ \noexpand\global\noexpand\@titlepageiscoverpagefalse
+ \noexpand\let\noexpand\titlepage@restore\noexpand\relax
+ }%
+ \begingroup
+ \topmargin=\dimexpr \coverpagetopmargin-1in\relax
+ \oddsidemargin=\dimexpr \coverpageleftmargin-1in\relax
+ \evensidemargin=\dimexpr \coverpageleftmargin-1in\relax
+ \textwidth=\dimexpr
+ \paperwidth-\coverpageleftmargin-\coverpagerightmargin\relax
+ \textheight=\dimexpr
+ \paperheight-\coverpagetopmargin-\coverpagebottommargin\relax
+ \headheight=0pt
+ \headsep=0pt
+ \footskip=\baselineskip
+ \@colht=\textheight
+ \@colroom=\textheight
+ \vsize=\textheight
+ \columnwidth=\textwidth
+ \hsize=\columnwidth
+ \linewidth=\hsize
+ \else
+ \let\titlepage@restore\relax
+ \fi
\let\footnotesize\small
\let\right@footnoterule\relax
\let\left@footnoterule\relax
@@ -19629,54 +19789,97 @@ to\rtside{\box\bslice\hfil}}
\renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
\let\@oldmakefnmark\@makefnmark
\renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
- \ifx\@extratitle\@empty \else
- \noindent\@extratitle\next@tpage\cleardoubleemptypage
- \thispagestyle{empty}%
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty
+ \else
+ \if@twoside\mbox{}\next@tpage\fi
+ \noindent\@frontispiece\next@tdpage
+ \fi
+ \else
+ \noindent\@extratitle
+ \ifx\@frontispiece\@empty
+ \else
+ \next@tpage
+ \noindent\@frontispiece
+ \fi
+ \next@tdpage
\fi
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
\ifx\@titlehead\@empty \else
\begin{minipage}[t]{\textwidth}%
- \@titlehead
+ \usekomafont{titlehead}{\@titlehead\par}%
\end{minipage}\par
\fi
\null\vfill
\begin{center}
\ifx\@subject\@empty \else
- {\subject@font \@subject \par}%
+ {\usekomafont{subject}{\@subject\par}}%
\vskip 3em
\fi
- {\titlefont\huge \@title\par}%
+ {\usekomafont{title}{\huge \@title\par}}%
\vskip 1em
- {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
+ {\ifx\@subtitle\@empty\else\usekomafont{subtitle}{\@subtitle\par}\fi}%
\vskip 2em
- {\Large \lineskip 0.75em
- \begin{tabular}[t]{c}
- \@author
- \end{tabular}\par
+ {%
+ \usekomafont{author}{%
+ \lineskip 0.75em
+ \begin{tabular}[t]{c}
+ \@author
+ \end{tabular}\par
+ }%
}%
\vskip 1.5em
- {\Large \@date \par}%
+ {\usekomafont{date}{\@date \par}}%
\vskip \z@ \@plus3fill
- {\Large \@publishers \par}%
+ {\usekomafont{publishers}{\@publishers \par}}%
\vskip 3em
\end{center}\par
- \@thanks
+ \@thanks\global\let\@thanks\@empty
\vfill\null
- \if@twoside\next@tpage
- \begin{minipage}[t]{\textwidth}
- \@uppertitleback
- \end{minipage}\par
- \vfill
- \begin{minipage}[b]{\textwidth}
- \@lowertitleback
- \end{minipage}
+ \if@twoside
+ \@tempswatrue
+ \expandafter\ifnum \@nameuse{scr@v@3.12}>\scr@compatibility\relax
+ \else
+ \ifx\@uppertitleback\@empty\ifx\@lowertitleback\@empty
+ \@tempswafalse
+ \fi\fi
+ \fi
+ \if@tempswa
+ \next@tpage
+ \begin{minipage}[t]{\textwidth}
+ \@uppertitleback
+ \end{minipage}\par
+ \vfill
+ \begin{minipage}[b]{\textwidth}
+ \@lowertitleback
+ \end{minipage}\par
+ \@thanks\global\let\@thanks\@empty
+ \fi
+ \else
+ \ifx\@uppertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\uppertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `twoside=false' mode%
+ }%
+ \fi
+ \ifx\@lowertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\lowertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `twoside=false' mode%
+ }%
+ \fi
\fi
- \ifx\@dedication\@empty \else
- \next@tpage\null\vfill
- {\centering \Large \@dedication \par}%
+ \ifx\@dedication\@empty
+ \else
+ \next@tdpage\null\vfill
+ {\centering\usekomafont{dedication}{\@dedication \par}}%
\vskip \z@ \@plus3fill
- \if@twoside \next@tpage\cleardoubleemptypage \fi
+ \@thanks\global\let\@thanks\@empty
+ \cleardoubleemptypage
\fi
+ \ifx\titlepage@restore\relax\else\clearpage\titlepage@restore\fi
\end{titlepage}
\else
\par
@@ -19684,101 +19887,111 @@ to\rtside{\box\bslice\hfil}}
#1%
\relax\ifnum\@tempcnta=1\else
\ClassWarning{\KOMAClassName}{%
- Optional argument of \string\maketitle\space ignored
- at\MessageBreak
- notitlepage-mode%
+ Optional argument of \string\maketitle\space ignored\MessageBreak
+ in `titlepage=false' mode%
+ }%
+ \fi
+ \ifx\@uppertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\uppertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `titlepage=false' mode%
+ }%
+ \fi
+ \ifx\@lowertitleback\@empty\else
+ \ClassWarning{\KOMAClassName}{%
+ non empty \string\lowertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `titlepage=false' mode%
}%
\fi
\begingroup
+ \let\titlepage@restore\relax
\renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
\let\@oldmakefnmark\@makefnmark
- \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}
+ \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
+ \next@tdpage
\if@twocolumn
\ifnum \col@number=\@ne
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else\if@twoside\mbox{}\fi\fi
+ \else
+ \@makeextratitle
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \@makefrontispiece
+ \next@tdpage
+ \fi
\@maketitle
\else
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else\if@twoside\mbox{}\fi\fi
+ \else
+ \twocolumn[\@makeextratitle]%
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \twocolumn[\@makefrontispiece]%
+ \next@tdpage
+ \fi
\twocolumn[\@maketitle]%
\fi
\else
- \newpage
- \global\@topnum\z@
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else \mbox{}\fi
+ \else
+ \@makeextratitle
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \@makefrontispiece
+ \next@tdpage
+ \fi
\@maketitle
\fi
- \thispagestyle{\titlepagestyle}\@thanks
+ \ifx\titlepagestyle\@empty\else\thispagestyle{\titlepagestyle}\fi
+ \@thanks\global\let\@thanks\@empty
\endgroup
\fi
\setcounter{footnote}{0}%
- \let\thanks\relax
- \let\LTRthanks\relax
- \let\RTLthanks\relax
- \let\maketitle\relax
- \let\@maketitle\relax
- \global\let\@thanks\@empty
- \global\let\@author\@empty
- \global\let\@date\@empty
- \global\let\@title\@empty
- \global\let\@subtitle\@empty
- \global\let\@extratitle\@empty
- \global\let\@titlehead\@empty
- \global\let\@subject\@empty
- \global\let\@publishers\@empty
- \global\let\@uppertitleback\@empty
- \global\let\@lowertitleback\@empty
- \global\let\@dedication\@empty
- \global\let\author\relax
- \global\let\title\relax
- \global\let\extratitle\relax
- \global\let\titlehead\relax
- \global\let\subject\relax
- \global\let\publishers\relax
- \global\let\uppertitleback\relax
- \global\let\lowertitleback\relax
- \global\let\dedication\relax
- \global\let\date\relax
- \global\let\and\relax
-}%
-\renewcommand*{\@maketitle}{%
- \clearpage
- \let\footnote\thanks
- \let\LTRfootnote\LTRthanks
- \let\RTLfootnote\RTLthanks
- \ifx\@extratitle\@empty \else
- \noindent\@extratitle \next@tpage \if@twoside \null\next@tpage \fi
+ \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
+ \let\thanks\relax
+ \let\LTRthanks\relax
+ \let\RTLthanks\relax
+ \let\maketitle\relax
+ \let\@maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\@subtitle\@empty
+ \global\let\@extratitle\@empty
+ \global\let\@frontispiece\@empty
+ \global\let\@titlehead\@empty
+ \global\let\@subject\@empty
+ \global\let\@publishers\@empty
+ \global\let\@uppertitleback\@empty
+ \global\let\@lowertitleback\@empty
+ \global\let\@dedication\@empty
+ \global\let\author\relax
+ \global\let\title\relax
+ \global\let\extratitle\relax
+ \global\let\titlehead\relax
+ \global\let\subject\relax
+ \global\let\publishers\relax
+ \global\let\uppertitleback\relax
+ \global\let\lowertitleback\relax
+ \global\let\dedication\relax
+ \global\let\date\relax
\fi
- \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
- \ifx\@titlehead\@empty \else
- \begin{minipage}[t]{\textwidth}
- \@titlehead
- \end{minipage}\par
- \fi
- \null
- \vskip 2em%
- \begin{center}%
- \ifx\@subject\@empty \else
- {\subject@font \@subject \par}
- \vskip 1.5em
- \fi
- {\titlefont\huge \@title \par}%
- \vskip .5em
- {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
- \vskip 1em
- {\Large
- \lineskip .5em%
- \begin{tabular}[t]{c}
- \@author
- \end{tabular}\par
- }%
- \vskip 1em%
- {\Large \@date \par}%
- \vskip \z@ \@plus 1em
- {\Large \@publishers \par}
- \ifx\@dedication\@empty \else
- \vskip 2em
- {\Large \@dedication \par}
- \fi
- \end{center}%
- \par
- \vskip 2em
+ \global\let\and\relax
}%
\def\raggedsection{\if@RTL\raggedleft\else\raggedright\fi}
\renewcommand*\autodot{\if@altsecnumformat\@SepMark\fi}
@@ -19794,14 +20007,12 @@ to\rtside{\box\bslice\hfil}}
\renewcommand*{\thesubparagraph}{%
\theparagraph\@SepMark\@arabic\c@subparagraph
}
-\renewcommand*\thefigure{%
- \thechapter\@SepMark%
- \@arabic\c@figure
-}
-\renewcommand*\thetable{%
- \thechapter\@SepMark%
- \@arabic\c@table
-}
+\expandafter\ifnum\scr@v@is@le{2.97d}%
+ \renewcommand*\thefigure{\thechapter\@SepMark\@arabic\c@figure}
+\fi
+\expandafter\ifnum\scr@v@is@le{2.97d}%
+ \renewcommand*\thetable{\thechapter\@SepMark\@arabic\c@table}
+\fi
\renewcommand*\theequation{%
\thechapter\@SepMark%
\@arabic\c@equation
@@ -19871,16 +20082,6 @@ to\rtside{\box\bslice\hfil}}
\fi
\bib@endhook
}
-\renewcommand*\left@footnoterule{%
- \kern-3\p@
- \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi
- \hrule\@width.4\columnwidth
- \kern 2.6\p@}
-\renewcommand*\right@footnoterule{%
- \kern-3\p@
- \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi
- \hbox to \columnwidth{\hskip .6\columnwidth \hrulefill }
- \kern2.6\p@}
\renewcommand*{\raggeddictum}{\if@RTL\raggedright\else\raggedleft\fi}
\renewcommand*{\raggeddictumtext}{\if@RTL\raggedleft\else\raggedright\fi}
\renewcommand*{\raggeddictumauthor}{\if@RTL\raggedright\else\raggedleft\fi}
@@ -19889,76 +20090,61 @@ to\rtside{\box\bslice\hfil}}
}
\renewcommand{\@@makecaption}[3]{%
\cap@margin
- \ifonelinecaptions
- \@tempcnta=\value{mpfootnote}\@tempcntb=\value{footnote}%
- \let\scr@tmp@footnotetext=\@footnotetext
- \let\@footnotetext=\@gobble
- \let\scr@tmp@LTRfootnotetext=\@LTRfootnotetext
- \let\@LTRfootnotetext=\@gobble
- \let\scr@tmp@RTLfootnotetext=\@RTLfootnotetext
- \let\@RTLfootnotetext=\@gobble
- \sbox\@tempboxa{%
- {\capfont{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat}}}%
- #3\unskip\strut}}%
- }%
- \let\@footnotetext=\scr@tmp@footnotetext
- \let\scr@tmp@footnotetext=\undefined
- \let\@LTRfootnotetext=\scr@tmp@LTRfootnotetext
- \let\scr@tmp@LTRfootnotetext=\undefined
- \let\@RTLfootnotetext=\scr@tmp@RTLfootnotetext
- \let\scr@tmp@RTLfootnotetext=\undefined
- \setcounter{footnote}{\@tempcntb}%
- \setcounter{mpfootnote}{\@tempcnta}%
- \else
- \sbox\@tempboxa{\hspace*{2\cap@width}}%
- \fi
- \begingroup%
- \setlength{\@tempdima}{\cap@width}%
- \ifdim \wd\@tempboxa >\@tempdima
- \hb@xt@\hsize{%
- \setbox\@tempboxa\vbox{\hsize=\cap@width
- \ifdofullc@p
- {\capfont{\@hangfrom{\scr@smashdp{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat}}}}}%
- {#3\unskip\strut\par}}}%
- \else%
- \ifdim\cap@indent<\z@
- {\capfont{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat\par}}}%
- \noindent\hspace*{-\cap@indent}#3\unskip\strut\par}}%
- \else%
- \if@capbreak
- {\capfont{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat\par}}}%
- \noindent\@hangfrom{\hspace*{\cap@indent}}{#3\par}}}%
- \else
- {\capfont{\@hangfrom{\scr@smashdp\strut\hspace*{\cap@indent}}%
- {\hspace{-\cap@indent}\scr@smashdp{\ignorespaces#1%
- {{\caplabelfont{#2\captionformat}}}}#3\unskip\strut\par}}}%
- \fi
- \fi
- \fi
+ \begingroup
+ \ifonelinecaptions
+ \def\stepcounter##1{\advance\value{##1}\@ne}%
+ \let\refstepcounter\stepcounter
+ \let\label\@gobble
+ \let\@footnotetext=\@gobble
+ \let\@LTRfootnotetext=\@gobble
+ \let\@RTLfootnotetext=\@gobble
+ \let\hypertarget\@gobbletwo
+ \edef\@xnewline{%
+ \unexpanded{\ClassInfo{\KOMAClassName}{%
+ Workaround for not recommended usage of \string\\ or\MessageBreak
+ \string\newline in caption text
+ }%
+ \hspace*{\linewidth}\hspace{1sp}%
}%
- \setlength{\@tempdima}{\ht\@tempboxa}%
- \addtolength{\@tempdima}{\dp\@tempboxa}%
- \addtolength{\@tempdima}{-\ht\strutbox}%
- \ht\@tempboxa\ht\strutbox
- \dp\@tempboxa\@tempdima
- \strut\cap@left
- \box\@tempboxa
- \cap@right\strut
+ \unexpanded\expandafter{\@xnewline}%
}%
- \else
- \global \@minipagefalse
- \sbox\@tempboxa{%
- {\capfont{\scr@smashdp{\strut\ignorespaces
- #1{{\caplabelfont{#2\captionformat}}}}%
- #3}}%
+ \edef\@xcentercr{%
+ \unexpanded{\ClassInfo{\KOMAClassName}{%
+ Workaround for not recommended usage of \string\\ or\MessageBreak
+ \string\newline in caption text
+ }%
+ \hspace*{\linewidth}\hspace{1sp}%
+ }%
+ \unexpanded\expandafter{\@xcentercr}%
}%
- {\capfont{\hb@xt@\hsize{\strut\cap@left\if@RTL\beginR\fi\box\@tempboxa\if@RTL\endR\fi\cap@right\strut}}}%
+ \settowidth{\@tempdima}{\scr@@makesinglelinecaption{#1}{#2}{#3}}%
+ \ifdim\@tempdima>\cap@width
+ \aftergroup\scr@makemultilinecaption
+ \else
+ \aftergroup\scr@makesinglelinecaption
+ \fi
+ \else
+ \aftergroup\scr@makemultilinecaption
\fi
\endgroup
+ {#1}{#2}{#3}%
+}
+\renewcommand{\scr@makesinglelinecaption}[3]{%
+ {%
+ \usefontofkomafont{caption}{%
+ \hb@xt@\hsize{%
+ \cap@left
+ \if@RTL
+ \beginR
+ \fi
+ \scr@@makesinglelinecaption{#1}{#2}{#3}%
+ \if@RTL
+ \endR
+ \fi
+ \cap@right
+ }\par\kern\dp\strutbox%
+ }%
+ }\kern-\dp\strutbox
}
\renewcommand{\@makecaption}[2]{%
\if@captionabove
@@ -19974,9 +20160,6 @@ to\rtside{\box\bslice\hfil}}
\fi
}
\bidi@AfterFile{longtable-xetex-bidi.def}{%
- \@ifpackageloaded{caption2}{\@komalongtablefalse
- \scr@caption@before@longtable@warning{caption2}%
- }{}%
\if@komalongtable
\renewcommand{\LT@makecaption}[3]{%
\noalign{%
@@ -19988,6 +20171,7 @@ to\rtside{\box\bslice\hfil}}
}%
\LT@mcol\LT@cols c{%
\hbox to\z@{\hss\parbox[t]\linewidth{%
+ \def\@captype{table}%
\@@makecaption{#1}{#2}{#3}%
\endgraf
\if@captionabove
@@ -20039,7 +20223,7 @@ to\rtside{\box\bslice\hfil}}
\expandafter\renewcommand%
\csname scr@tso@#1@linefill\endcsname{%
\if@chapterentrywithdots
- \TOCLineLeaderFill\relax
+ {\usekomafont{chapterentrydots}{\TOCLineLeaderFill}}\relax
\else
\hfill
\fi
@@ -20062,15 +20246,6 @@ to\rtside{\box\bslice\hfil}}
\CloneTOCEntryStyle{section}{default}
\DeclareSectionCommand[%
- style=part,%
- level=\m@ne,%
- pagestyle=plain,%
- tocstyle=part,%
- toclevel=\m@ne,%
- tocindent=\z@,%
- tocnumwidth=2em%
-]{part}
-\DeclareSectionCommand[%
style=chapter,%
level=\z@,%
pagestyle=plain,%
@@ -20085,10 +20260,20 @@ to\rtside{\box\bslice\hfil}}
beforeskip=-3.5ex \@plus -1ex \@minus -.2ex,%
afterskip=2.3ex \@plus.2ex,%
tocstyle=section,%
+ tocindentfollows=chapter,%
tocindent=1.5em,%
tocnumwidth=2.3em%
]{section}
\DeclareSectionCommand[%
+ style=part,%
+ level=\m@ne,%
+ pagestyle=plain,%
+ tocstyle=part,%
+ toclevel=\m@ne,%
+ tocindent=\z@,%
+ tocnumwidth=2em%
+]{part}
+\DeclareSectionCommand[%
style=section,%
level=2,%
indent=\z@,%
@@ -20114,6 +20299,7 @@ to\rtside{\box\bslice\hfil}}
indent=\z@,%
beforeskip=3.25ex \@plus1ex \@minus.2ex,%
afterskip=-1em,%
+ tocindentfollows=subsubsection,%
tocstyle=section,%
tocindent=10em,%
tocnumwidth=5em%
@@ -20128,8 +20314,6 @@ to\rtside{\box\bslice\hfil}}
tocindent=12em,%
tocnumwidth=6em%
]{subparagraph}
-
-
% \end{macrocode}
% \iffalse
%</scrreprt-xetex-bidi.def>
@@ -20971,7 +21155,7 @@ to\rtside{\box\bslice\hfil}}
%\fi
% \section{File \texttt{tocbasic-xetex-bidi.def}}
% \begin{macrocode}
-\ProvidesFile{tocbasic-xetex-bidi.def}[2016/09/14 v0.2 bidi adaptations for tocbasic package for XeTeX engine]
+\ProvidesFile{tocbasic-xetex-bidi.def}[2022/05/22 v0.3 bidi adaptations for tocbasic package for XeTeX engine]
\bidi@undef\scr@dte@def@l@undottedtocline
\bidi@undef\scr@dte@undottedtocline@init
\DeclareTOCEntryStyle{undottedtocline}[{%
@@ -20980,15 +21164,15 @@ to\rtside{\box\bslice\hfil}}
\DefineTOCEntryLengthOption{numwidth}%
{scr@tso@}{@numwidth}{entry number width}%
\@ifundefined{#1tocdepth}{%
- \ifstr{#1}{part}{\@namedef{#1tocdepth}{-1}}{%
- \ifstr{#1}{chapter}{\@namedef{#1tocdepth}{0}}{%
- \ifstr{#1}{section}{\@namedef{#1tocdepth}{1}}{%
- \ifstr{#1}{subsection}{\@namedef{#1tocdepth}{2}}{%
- \ifstr{#1}{subsubsection}{\@namedef{#1tocdepth}{3}}{%
- \ifstr{#1}{paragraph}{\@namedef{#1tocdepth}{4}}{%
- \ifstr{#1}{subparagraph}{\@namedef{#1tocdepth}{5}}{%
- \ifstr{#1}{figure}{\@namedef{#1tocdepth}{1}}{%
- \ifstr{#1}{table}{\@namedef{#1tocdepth}{1}}{%
+ \Ifstr{#1}{part}{\@namedef{#1tocdepth}{-1}}{%
+ \Ifstr{#1}{chapter}{\@namedef{#1tocdepth}{0}}{%
+ \Ifstr{#1}{section}{\@namedef{#1tocdepth}{1}}{%
+ \Ifstr{#1}{subsection}{\@namedef{#1tocdepth}{2}}{%
+ \Ifstr{#1}{subsubsection}{\@namedef{#1tocdepth}{3}}{%
+ \Ifstr{#1}{paragraph}{\@namedef{#1tocdepth}{4}}{%
+ \Ifstr{#1}{subparagraph}{\@namedef{#1tocdepth}{5}}{%
+ \Ifstr{#1}{figure}{\@namedef{#1tocdepth}{1}}{%
+ \Ifstr{#1}{table}{\@namedef{#1tocdepth}{1}}{%
\expandafter\let\csname #1tocdepth\expandafter\endcsname
\csname #1numdepth\endcsname
}%
@@ -21003,20 +21187,20 @@ to\rtside{\box\bslice\hfil}}
}{}%
\@ifundefined{scr@tso@#1@indent}{%
\@ifundefined{scr@#1@tocindent}{%
- \ifstr{#1}{figure}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{table}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{part}{\@namedef{scr@tso@#1@indent}{0em}}{%
- \ifstr{#1}{chapter}{\@namedef{scr@tso@#1@indent}{0em}}{%
+ \Ifstr{#1}{figure}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{table}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{part}{\@namedef{scr@tso@#1@indent}{0em}}{%
+ \Ifstr{#1}{chapter}{\@namedef{scr@tso@#1@indent}{0em}}{%
\scr@ifundefinedorrelax{l@chapter}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{0pt}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{0pt}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@indent}{3.8em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@indent}{7em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@indent}{10em}%
}{%
}%
@@ -21025,15 +21209,15 @@ to\rtside{\box\bslice\hfil}}
}%
}%
}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{3.8em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{3.8em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@indent}{7.0em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@indent}{10em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@indent}{12em}%
}{%
}%
@@ -21052,19 +21236,19 @@ to\rtside{\box\bslice\hfil}}
}{}%
\@ifundefined{scr@tso@#1@numwidth}{%
\@ifundefined{scr@#1@tocnumwidth}{%
- \ifstr{#1}{figure}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
- \ifstr{#1}{table}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
- \ifstr{#1}{chapter}{\@namedef{scr@tso@#1@numwidth}{1.5em}}{%
+ \Ifstr{#1}{figure}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
+ \Ifstr{#1}{table}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
+ \Ifstr{#1}{chapter}{\@namedef{scr@tso@#1@numwidth}{1.5em}}{%
\scr@ifundefinedorrelax{chapter}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@numwidth}{1.5em}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@numwidth}{1.5em}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@numwidth}{3.2em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@numwidth}{4.1em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@numwidth}{5m}%
}{%
}%
@@ -21073,15 +21257,15 @@ to\rtside{\box\bslice\hfil}}
}%
}%
}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@numwidth}{3.2em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@numwidth}{3.2em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@numwidth}{3.1em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@numwidth}{5em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@numwidth}{6em}%
}{%
}%
@@ -21118,8 +21302,12 @@ to\rtside{\box\bslice\hfil}}
\leavevmode
\bfseries
\advance\bidi@leftskip\@tempdima
- \advance\bidi@leftskip\@nameuse{scr@tso@#1@indent}%
- \hskip -\dimexpr \bidi@leftskip-\@nameuse{scr@tso@#1@indent}\relax
+ \Iftocfeature{\@currext}{noindent}{%
+ \hskip -\bidi@leftskip
+ }{%
+ \advance\bidi@leftskip\@nameuse{scr@tso@#1@indent}%
+ \hskip -\dimexpr \bidi@leftskip-\@nameuse{scr@tso@#1@indent}\relax
+ }%
##1%
\nobreak
\hfil \nobreak\hb@xt@\@pnumwidth{\hss ##2}%
@@ -21135,15 +21323,15 @@ to\rtside{\box\bslice\hfil}}
\DefineTOCEntryLengthOption{indent}%
{scr@tso@}{@indent}{entry indent}%
\@ifundefined{#1tocdepth}{%
- \ifstr{#1}{part}{\@namedef{#1tocdepth}{-1}}{%
- \ifstr{#1}{chapter}{\@namedef{#1tocdepth}{0}}{%
- \ifstr{#1}{section}{\@namedef{#1tocdepth}{1}}{%
- \ifstr{#1}{subsection}{\@namedef{#1tocdepth}{2}}{%
- \ifstr{#1}{subsubsection}{\@namedef{#1tocdepth}{3}}{%
- \ifstr{#1}{paragraph}{\@namedef{#1tocdepth}{4}}{%
- \ifstr{#1}{subparagraph}{\@namedef{#1tocdepth}{5}}{%
- \ifstr{#1}{figure}{\@namedef{#1tocdepth}{1}}{%
- \ifstr{#1}{table}{\@namedef{#1tocdepth}{1}}{%
+ \Ifstr{#1}{part}{\@namedef{#1tocdepth}{-1}}{%
+ \Ifstr{#1}{chapter}{\@namedef{#1tocdepth}{0}}{%
+ \Ifstr{#1}{section}{\@namedef{#1tocdepth}{1}}{%
+ \Ifstr{#1}{subsection}{\@namedef{#1tocdepth}{2}}{%
+ \Ifstr{#1}{subsubsection}{\@namedef{#1tocdepth}{3}}{%
+ \Ifstr{#1}{paragraph}{\@namedef{#1tocdepth}{4}}{%
+ \Ifstr{#1}{subparagraph}{\@namedef{#1tocdepth}{5}}{%
+ \Ifstr{#1}{figure}{\@namedef{#1tocdepth}{1}}{%
+ \Ifstr{#1}{table}{\@namedef{#1tocdepth}{1}}{%
\expandafter\let\csname #1tocdepth\expandafter\endcsname
\csname #1numdepth\endcsname
}%
@@ -21158,20 +21346,20 @@ to\rtside{\box\bslice\hfil}}
}{}%
\@ifundefined{scr@tso@#1@indent}{%
\@ifundefined{scr@#1@tocindent}{%
- \ifstr{#1}{figure}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{table}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{part}{\@namedef{scr@tso@#1@indent}{0em}}{%
- \ifstr{#1}{chapter}{\@namedef{scr@tso@#1@indent}{0em}}{%
+ \Ifstr{#1}{figure}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{table}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{part}{\@namedef{scr@tso@#1@indent}{0em}}{%
+ \Ifstr{#1}{chapter}{\@namedef{scr@tso@#1@indent}{0em}}{%
\scr@ifundefinedorrelax{l@chapter}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{0pt}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{0pt}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@indent}{3.8em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@indent}{7em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@indent}{10em}%
}{%
}%
@@ -21180,15 +21368,15 @@ to\rtside{\box\bslice\hfil}}
}%
}%
}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{3.8em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{3.8em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@indent}{7.0em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@indent}{10em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@indent}{12em}%
}{%
}%
@@ -21226,7 +21414,10 @@ to\rtside{\box\bslice\hfil}}
\leavevmode
\large
\bfseries
- \advance\bidi@leftskip\@nameuse{scr@tso@#1@indent}%
+ \Iftocfeature{\@currext}{noindent}{%
+ }{%
+ \advance\bidi@leftskip\@nameuse{scr@tso@#1@indent}%
+ }%
##1%
\hfil \nobreak\hb@xt@\@pnumwidth{\hss ##2}%
\par
@@ -21245,14 +21436,57 @@ to\rtside{\box\bslice\hfil}}
\else
\tocbasic@DependOnPenaltyAndTOCLevel{#1}%
\addvspace{\@nameuse{scr@tso@#1@beforeskip}}\relax
+ \@nameuse{Ifscr@tso@#1@dynindent}{%
+ \expandafter\ifx\csname scr@tso@#1@indentfollows\endcsname\@empty
+ \PackageWarning{tocbasic}{`dynindent' for `#1' not available}%
+ \else
+ \edef\reserved@a{\@nameuse{scr@tso@#1@indentfollows}}%
+ \@for \reserved@a:=\reserved@a\do {%
+ \scr@trim@spaces\reserved@a
+ \ifx\reserved@a\@empty\else
+ \scr@ifundefinedorrelax{\reserved@a tocdepth}{%
+ }{%
+ \ifnum \@nameuse{\reserved@a tocdepth}<\@nameuse{#1tocdepth}%
+ \@tempdima\@nameuse{scr@tso@\reserved@a @indent}\relax
+ \@nameuse{Ifscr@tso@\reserved@a @dynnumwidth}{%
+ \scr@ifundefinedorrelax
+ {scr@dte@\reserved@a @lastmaxnumwidth}{%
+ \advance\@tempdima
+ \@nameuse{scr@tso@\reserved@a @numwidth}\relax
+ }{%
+ \advance\@tempdima
+ \@nameuse{scr@dte@\reserved@a @lastmaxnumwidth}\relax
+ }%
+ }{%
+ \advance\@tempdima
+ \@nameuse{scr@tso@\reserved@a @numwidth}\relax
+ }%
+ \ifdim \@tempdima>\@nameuse{scr@tso@#1@indent}\relax
+ \expandafter\edef\csname scr@tso@#1@indent\endcsname
+ {\the\@tempdima}%
+ \fi
+ \fi
+ }%
+ \fi
+ }%
+ \fi
+ }{}%
{%
- \bidi@leftskip \@nameuse{scr@tso@#1@indent}\relax
- \bidi@rightskip \@tocrmarg
+ \Iftocfeature{\@currext}{noindent}{%
+ \bidi@leftskip \z@
+ }{%
+ \bidi@leftskip \@nameuse{scr@tso@#1@indent}\relax
+ }%
+ \bidi@rightskip \@nameuse{scr@tso@#1@rightindent}\relax
\parfillskip -\bidi@rightskip
\@nameuse{Ifscr@tso@#1@raggedpage}{%
\addtolength{\parfillskip}{\z@ \@plus 1fil}%
}{}%
- \parindent \@nameuse{scr@tso@#1@indent}\relax
+ \Iftocfeature{\@currext}{noindent}{%
+ \parindent \z@
+ }{%
+ \parindent \@nameuse{scr@tso@#1@indent}\relax
+ }%
\@afterindenttrue
\interlinepenalty\@M
\expandafter\ifx\csname ragged#1entry\endcsname\raggedright
@@ -21286,6 +21520,7 @@ to\rtside{\box\bslice\hfil}}
\sbox\scr@dte@tocline@numbox{\@nameuse{scr@tso@#1@numberformat}{##1}}%
\global\scr@dte@tocline@numberwidth
\dimexpr\wd\scr@dte@tocline@numbox+\@nameuse{scr@tso@#1@numsep}\relax
+ \relax
\ifdim \scr@dte@tocline@numberwidth
>\@nameuse{scr@dte@#1@maxnumwidth}\relax
\global\@nameuse{scr@dte@#1@maxnumwidth}\scr@dte@tocline@numberwidth
@@ -21293,9 +21528,8 @@ to\rtside{\box\bslice\hfil}}
\@nameuse{Ifscr@tso@#1@dynnumwidth}{}{%
\ifdim \scr@dte@tocline@numberwidth
>\dimexpr \@nameuse{scr@tso@#1@numwidth}%
- +\@nameuse{scr@tso@#1@numsep}\relax
- \PackageWarning{tocbasic%
- }{%
+ +\@nameuse{scr@tso@#1@numsep}\relax\relax
+ \PackageWarning{tocbasic}{%
number width of #1 toc entries should be
increased!\MessageBreak
Currently used number width =
@@ -21319,6 +21553,8 @@ to\rtside{\box\bslice\hfil}}
{%
\normalfont\normalsize\@nameuse{scr@tso@#1@linefill}%
\nobreak
+ \expandafter\let\expandafter\scr@dte@pagenumberwidth
+ \csname scr@tso@#1@pagenumberwidth\endcsname
\@nameuse{scr@tso@#1@pagenumberbox}{%
\@nameuse{scr@tso@#1@pagenumberformat}{#3}%
}%
@@ -21331,6 +21567,7 @@ to\rtside{\box\bslice\hfil}}
\fi
}
+
\bidi@undef\scr@dte@def@l@tocline
\bidi@undef\scr@dte@tocline@init
\DeclareTOCEntryStyle{tocline}[{%
@@ -21340,6 +21577,10 @@ to\rtside{\box\bslice\hfil}}
{scr@tso@}{@breakafternumber}{line break after number flag}%
\DefineTOCEntryIfOption{dynnumwidth}%
{scr@tso@}{@dynnumwidth}{dynamic number width flag}%
+ \DefineTOCEntryListOption{indentfollows}%
+ {scr@tso@}{@indentfollows}{list of levels that define the indent}%
+ \DefineTOCEntryIfOption{dynindent}%
+ {scr@tso@}{@dynindent}{dynamic indent width flag}%
\DefineTOCEntryCommandOption{entryformat}%
{scr@tso@}{@entryformat}[1]{entry format}%
\DefineTOCEntryCommandOption{entrynumberformat}%
@@ -21358,6 +21599,10 @@ to\rtside{\box\bslice\hfil}}
{scr@tso@}{@pagenumberbox}[1]{page number box}%
\DefineTOCEntryCommandOption{pagenumberformat}%
{scr@tso@}{@pagenumberformat}[1]{page number format}%
+ \DefineTOCEntryLengthOption{pagenumberwidth}%
+ {scr@tso@}{@pagenumberwidth}{width of page number box}%
+ \DefineTOCEntryLengthOption{rightindent}%
+ {scr@tso@}{@rightindent}{entry's text right indent}%
\DefineTOCEntryOption{raggedentrytext}[true]{%
\FamilySetBool{KOMAarg}{raggedentrytext}{@tempswa}{##1}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed
@@ -21377,7 +21622,7 @@ to\rtside{\box\bslice\hfil}}
\DefineTOCEntryLengthOption{numwidth}%
{scr@tso@}{@numwidth}{entry number width}%
\scr@ifundefinedorrelax{#1tocdepth}{%
- \ifstrstart{#1}{sub}{%
+ \Ifstrstart{#1}{sub}{%
\scr@ifundefinedorrelax{\scr@dte@nosub{#1}tocdepth}{}{%
\expandafter\edef\csname #1tocdepth\endcsname{%
\the\numexpr \noexpand\@nameuse{\scr@dte@nosub{#1}tocdepth}+\@ne\relax
@@ -21386,15 +21631,15 @@ to\rtside{\box\bslice\hfil}}
}{}%
}{}%
\@ifundefined{#1tocdepth}{%
- \ifstr{#1}{part}{\@namedef{#1tocdepth}{-1}}{%
- \ifstr{#1}{chapter}{\@namedef{#1tocdepth}{0}}{%
- \ifstr{#1}{section}{\@namedef{#1tocdepth}{1}}{%
- \ifstr{#1}{subsection}{\@namedef{#1tocdepth}{2}}{%
- \ifstr{#1}{subsubsection}{\@namedef{#1tocdepth}{3}}{%
- \ifstr{#1}{paragraph}{\@namedef{#1tocdepth}{4}}{%
- \ifstr{#1}{subparagraph}{\@namedef{#1tocdepth}{5}}{%
- \ifstr{#1}{figure}{\@namedef{#1tocdepth}{1}}{%
- \ifstr{#1}{table}{\@namedef{#1tocdepth}{1}}{%
+ \Ifstr{#1}{part}{\@namedef{#1tocdepth}{-1}}{%
+ \Ifstr{#1}{chapter}{\@namedef{#1tocdepth}{0}}{%
+ \Ifstr{#1}{section}{\@namedef{#1tocdepth}{1}}{%
+ \Ifstr{#1}{subsection}{\@namedef{#1tocdepth}{2}}{%
+ \Ifstr{#1}{subsubsection}{\@namedef{#1tocdepth}{3}}{%
+ \Ifstr{#1}{paragraph}{\@namedef{#1tocdepth}{4}}{%
+ \Ifstr{#1}{subparagraph}{\@namedef{#1tocdepth}{5}}{%
+ \Ifstr{#1}{figure}{\@namedef{#1tocdepth}{1}}{%
+ \Ifstr{#1}{table}{\@namedef{#1tocdepth}{1}}{%
\expandafter\let\csname #1tocdepth\expandafter\endcsname
\csname #1numdepth\endcsname
}%
@@ -21409,7 +21654,7 @@ to\rtside{\box\bslice\hfil}}
}{}%
\scr@ifundefinedorrelax{scr@tso@#1@indent}{%
\@ifundefined{scr@#1@tocindent}{%
- \ifstrstart{#1}{sub}{%
+ \Ifstrstart{#1}{sub}{%
\scr@ifundefinedorrelax{scr@tso@\scr@dte@nosub{#1}@indent}{%
\scr@ifundefinedorrelax{scr@tso@\scr@dte@nosub{#1}@numwidth}{}{%
\expandafter\edef\csname scr@tso@#1@indent\endcsname{%
@@ -21436,21 +21681,47 @@ to\rtside{\box\bslice\hfil}}
\@namedef{scr@tso@#1@indent}{\@nameuse{scr@#1@tocindent}}%
}%
}{}%
+ \scr@ifundefinedorrelax{scr@tso@#1@pagenumberwidth}{%
+ \Ifstrstart{#1}{sub}{%
+ \scr@ifundefinedorrelax{scr@tso@\scr@dte@nosub{#1}@pagenumberwidth}{%
+ \@namedef{scr@tso@#1@pagenumberwidth}{\@pnumwidth}%
+ }{%
+ \expandafter\let
+ \csname scr@tso@#1@pagenumberwidth\expandafter\endcsname
+ \csname scr@tso@\scr@dte@nosub{#1}@pagenumberwidth\endcsname
+ }%
+ }{%
+ \@namedef{scr@tso@#1@pagenumberwidth}{\@pnumwidth}%
+ }%
+ }{}%
+ \scr@ifundefinedorrelax{scr@tso@#1@rightindent}{%
+ \Ifstrstart{#1}{sub}{%
+ \scr@ifundefinedorrelax{scr@tso@\scr@dte@nosub{#1}@rightindent}{%
+ \@namedef{scr@tso@#1@rightindent}{\@tocrmarg}%
+ }{%
+ \expandafter\let
+ \csname scr@tso@#1@rightindent\expandafter\endcsname
+ \csname scr@tso@\scr@dte@nosub{#1}@rightindent\endcsname
+ }%
+ }{%
+ \@namedef{scr@tso@#1@rightindent}{\@tocrmarg}%
+ }%
+ }{}%
\@ifundefined{scr@tso@#1@indent}{%
- \ifstr{#1}{figure}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{table}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{part}{\@namedef{scr@tso@#1@indent}{0em}}{%
- \ifstr{#1}{chapter}{\@namedef{scr@tso@#1@indent}{0em}}{%
+ \Ifstr{#1}{figure}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{table}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{part}{\@namedef{scr@tso@#1@indent}{0em}}{%
+ \Ifstr{#1}{chapter}{\@namedef{scr@tso@#1@indent}{0em}}{%
\scr@ifundefinedorrelax{l@chapter}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{0pt}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{0pt}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@indent}{3.8em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@indent}{7em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@indent}{10em}%
}{%
}%
@@ -21459,15 +21730,15 @@ to\rtside{\box\bslice\hfil}}
}%
}%
}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{3.8em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@indent}{1.5em}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@indent}{3.8em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@indent}{7.0em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@indent}{10em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@indent}{12em}%
}{%
}%
@@ -21483,7 +21754,7 @@ to\rtside{\box\bslice\hfil}}
}{}%
\scr@ifundefinedorrelax{scr@tso@#1@numwidth}{%
\scr@ifundefinedorrelax{scr@#1@tocnumwidth}{%
- \ifstrstart{#1}{sub}{%
+ \Ifstrstart{#1}{sub}{%
\scr@ifundefinedorrelax{scr@tso@\scr@dte@nosub{#1}@numwidth}{}{%
\expandafter\edef\csname scr@tso@#1@numwidth\endcsname{%
\glueexpr \noexpand\@nameuse{scr@tso@\scr@dte@nosub{#1}@numwidth}%
@@ -21497,19 +21768,19 @@ to\rtside{\box\bslice\hfil}}
}%
}{}%
\@ifundefined{scr@tso@#1@numwidth}{%
- \ifstr{#1}{figure}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
- \ifstr{#1}{table}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
- \ifstr{#1}{chapter}{\@namedef{scr@tso@#1@numwidth}{1.5em}}{%
+ \Ifstr{#1}{figure}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
+ \Ifstr{#1}{table}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
+ \Ifstr{#1}{chapter}{\@namedef{scr@tso@#1@numwidth}{1.5em}}{%
\scr@ifundefinedorrelax{chapter}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@numwidth}{1.5em}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@numwidth}{1.5em}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@numwidth}{3.2em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@numwidth}{4.1em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@numwidth}{5m}%
}{%
}%
@@ -21518,15 +21789,15 @@ to\rtside{\box\bslice\hfil}}
}%
}%
}{%
- \ifstr{#1}{section}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
- \ifstr{#1}{subsection}{\@namedef{scr@tso@#1@numwidth}{3.2em}}{%
- \ifstr{#1}{subsubsection}{%
+ \Ifstr{#1}{section}{\@namedef{scr@tso@#1@numwidth}{2.3em}}{%
+ \Ifstr{#1}{subsection}{\@namedef{scr@tso@#1@numwidth}{3.2em}}{%
+ \Ifstr{#1}{subsubsection}{%
\@namedef{scr@tso@#1@numwidth}{3.1em}%
}{%
- \ifstr{#1}{paragraph}{%
+ \Ifstr{#1}{paragraph}{%
\@namedef{scr@tso@#1@numwidth}{5em}%
}{%
- \ifstr{#1}{subparagraph}{%
+ \Ifstr{#1}{subparagraph}{%
\@namedef{scr@tso@#1@numwidth}{6em}%
}{%
}%
@@ -21546,13 +21817,13 @@ to\rtside{\box\bslice\hfil}}
\expandafter\renewcommand%
\csname scr@tso@#1@LastTOCLevelWasHigher\endcsname{\LastTOCLevelWasHigher}%
\@ifundefined{scr@tso@#1@beforeskip}{%
- \ifstr{#1}{part}{%
+ \Ifstr{#1}{part}{%
\@namedef{scr@tso@#1@beforeskip}{\glueexpr 2.25em \@plus\p@\relax}%
}{%
- \ifstr{#1}{chapter}{%
+ \Ifstr{#1}{chapter}{%
\@namedef{scr@tso@#1@beforeskip}{\glueexpr 1.0em \@plus\p@\relax}%
}{%
- \ifstr{#1}{section}{%
+ \Ifstr{#1}{section}{%
\scr@ifundefinedorrelax{l@chapter}{%
\@namedef{scr@tso@#1@beforeskip}{\glueexpr 1.0em \@plus\p@\relax}%
}{}%
@@ -21572,16 +21843,16 @@ to\rtside{\box\bslice\hfil}}
\csname scr@tso@#1@numsep\endcsname{.4em}%
\expandafter\renewcommand%
\csname scr@tso@#1@numberformat\endcsname[1]{##1}%
- \ifstr{#1}{part}{%
+ \Ifstr{#1}{part}{%
\expandafter\renewcommand%
\csname scr@tso@#1@entryformat\endcsname[1]{\large\bfseries ##1}%
}{%
- \ifstr{#1}{chapter}{%
+ \Ifstr{#1}{chapter}{%
\expandafter\renewcommand%
\csname scr@tso@#1@entryformat\endcsname[1]{\bfseries ##1}%
}{%
\scr@ifundefinedorrelax{l@chapter}{%
- \ifstr{#1}{section}{%
+ \Ifstr{#1}{section}{%
\expandafter\renewcommand%
\csname scr@tso@#1@entryformat\endcsname[1]{\bfseries ##1}%
}{}%
@@ -21593,39 +21864,59 @@ to\rtside{\box\bslice\hfil}}
\expandafter\renewcommand
\csname Ifscr@tso@#1@breakafternumber\endcsname[2]{##2}%
\@ifundefined{scr@tso@#1@linefill}{%
- \ifstr{#1}{part}{%
+ \Ifstr{#1}{part}{%
\@namedef{scr@tso@#1@linefill}{\hfill}%
}{%
- \ifstr{#1}{chapter}{%
+ \Ifstr{#1}{chapter}{%
\@namedef{scr@tso@#1@linefill}{\hfill}%
}{%
\scr@ifundefinedorrelax{l@chapter}{%
- \ifstr{#1}{section}{%
+ \Ifstr{#1}{section}{%
\@namedef{scr@tso@#1@linefill}{\hfill}%
- }{}
- }{}
+ }{}%
+ }{}%
\expandafter\renewcommand%
\csname scr@tso@#1@linefill\endcsname{\TOCLineLeaderFill\relax}%
}%
}%
}{}%
\expandafter\renewcommand\csname Ifscr@tso@#1@raggedpage\endcsname[2]{##2}%
- \ifstr{#1}{part}{%
+ \Ifstr{#1}{part}{%
\expandafter\renewcommand%
\csname scr@tso@#1@pagenumberformat\endcsname[1]{\large\bfseries ##1}%
}{%
- \expandafter\renewcommand%
- \csname scr@tso@#1@pagenumberformat\endcsname[1]{%
- {\normalfont\normalcolor ##1}}%
+ \Ifstr{#1}{chapter}{%
+ \expandafter\renewcommand%
+ \csname scr@tso@#1@pagenumberformat\endcsname[1]{\bfseries ##1}%
+ }{%
+ \scr@ifundefinedorrelax{l@chapter}{%
+ \Ifstr{#1}{section}{%
+ \expandafter\renewcommand%
+ \csname scr@tso@#1@pagenumberformat\endcsname[1]{\bfseries ##1}%
+ }{}%
+ }{}%
+ \expandafter\renewcommand%
+ \csname scr@tso@#1@pagenumberformat\endcsname[1]{%
+ {\normalfont\normalcolor ##1}}%
+ }%
}%
\expandafter\renewcommand%
\csname scr@tso@#1@pagenumberbox\endcsname[1]{%
- \hb@xt@\@pnumwidth{\hfil ##1}}%
+ \hb@xt@\@nameuse{scr@dte@pagenumberwidth}{\hfil ##1}}%
\expandafter\renewcommand\csname Ifscr@tso@#1@dynnumwidth\endcsname[2]{##2}%
+ \expandafter\renewcommand\csname Ifscr@tso@#1@dynindent\endcsname[2]{##2}%
+ \scr@ifundefinedorrelax{scr@tso@#1@indentfollows}{%
+ \Ifstrstart{#1}{sub}{%
+ \expandafter\edef\csname scr@tso@#1@indentfollows\endcsname{%
+ \scr@dte@nosub{#1}%
+ }%
+ }{%
+ \expandafter\let\csname scr@tso@#1@indentfollows\endcsname\@empty
+ }%
+ }{}%
}]{%
\scr@dte@tocline{#1}{##1}{##2}%
}
-
% \end{macrocode}
% \iffalse
%</tocbasic-xetex-bidi.def>
@@ -23024,7 +23315,6 @@ $\@@underline{\hbox{#1}}\m@th$\relax\fi\fi}
\if@bidi@csundef{@idxitem}{}{%
\renewcommand\@idxitem{\par\hangindent \if@RTL-\fi40\p@}%
}
-\@ifpackageloaded{tocbasic}{\input{tocbasic-xetex-bidi.def}}{}
\@ifclassloaded{article}{\@ifclassloaded{svmult}{}{\input{article-xetex-bidi.def}}}{}
\@ifclassloaded{extarticle}{\input{extarticle-xetex-bidi.def}}{}
\@ifclassloaded{artikel1}{\input{artikel1-xetex-bidi.def}}{}
@@ -23032,7 +23322,6 @@ $\@@underline{\hbox{#1}}\m@th$\relax\fi\fi}
\@ifclassloaded{artikel3}{\input{artikel3-xetex-bidi.def}}{}
\@ifclassloaded{amsart}{\input{amsart-xetex-bidi.def}}{}
\@ifclassloaded{letter}{\input{letter-xetex-bidi.def}}{}
-\@ifclassloaded{scrlettr}{\input{scrlettr-xetex-bidi.def}}{}
\@ifclassloaded{extletter}{\input{extletter-xetex-bidi.def}}{}
\@ifclassloaded{memoir}{\input{memoir-xetex-bidi.def}}{}
\@ifclassloaded{refrep}{\input{refrep-xetex-bidi.def}}{}
@@ -23163,6 +23452,7 @@ $\@@underline{\hbox{#1}}\m@th$\relax\fi\fi}
\@ifpackageloaded{tabls}{\input{tabls-xetex-bidi.def}}{}
\@ifpackageloaded{tabulary}{\input{tabulary-xetex-bidi.def}}{}
\@ifpackageloaded{tcolorbox}{\input{tcolorbox-xetex-bidi.def}}{}
+\@ifpackageloaded{tocbasic}{\input{tocbasic-xetex-bidi.def}}{}
\@ifpackageloaded{tocstyle}{\input{tocstyle-xetex-bidi.def}}{}
\@ifpackageloaded{tocbibind}{\@ifclassloaded{memoir}{}{\input{tocbibind-xetex-bidi.def}}}{}
\@ifpackageloaded{tocloft}{\@ifclassloaded{memoir}{}{\input{tocloft-xetex-bidi.def}}}{}
diff --git a/macros/xetex/latex/bidi/bidi.pdf b/macros/xetex/latex/bidi/bidi.pdf
index f44cb3feb5..707a619cb6 100644
--- a/macros/xetex/latex/bidi/bidi.pdf
+++ b/macros/xetex/latex/bidi/bidi.pdf
Binary files differ
diff --git a/macros/xetex/latex/xepersian/README b/macros/xetex/latex/xepersian/README
index 18207bc0e1..1fdeacf9e2 100644
--- a/macros/xetex/latex/xepersian/README
+++ b/macros/xetex/latex/xepersian/README
@@ -1,6 +1,6 @@
____________________
The XePersian package
-v23.9
+v24.0
The xepersian package provides a convenient interface for
typesetting Persian and English texts in LaTeX, using XeTeX
@@ -25,7 +25,7 @@ The announcements for the new releases of the package will
also appear in the Discussions space under the Announcements
category.
-Current version release date: 2022/05/20
+Current version release date: 2022/05/22
___________________________________________
Vafa Khalighi
diff --git a/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx b/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
index aa635c0c71..daa681cd38 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
+++ b/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
@@ -25,7 +25,7 @@ If you use \textsf{\XePersian} package to write any input \TeX\ document, and th
* Copyright (c) 2008--2022 Vafa Khalighi
* Copyright (c) 2018--2020 bidi-tex GitHub Organization
*
-* v23.9, 2022/05/20
+* v24.0, 2022/05/22
*
* License: LaTeX Project Public License, version
* 1.3c or higher (your choice)
diff --git a/macros/xetex/latex/xepersian/xepersian-doc-title.ltx b/macros/xetex/latex/xepersian/xepersian-doc-title.ltx
index c39ef15a30..71f29bdd56 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc-title.ltx
+++ b/macros/xetex/latex/xepersian/xepersian-doc-title.ltx
@@ -3,7 +3,7 @@
\begin{document}
\title{\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}\\
\LARGE Persian for \LaTeXe, using {\XeTeX} engine\\[5pt]
-\large User documentation for \textcolor{blue!65!black}{version 23.9}}
+\large User documentation for \textcolor{blue!65!black}{version 24.0}}
\author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}}
\setcounter{page}{0}
\thispagestyle{empty}
@@ -13,7 +13,7 @@
\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}
\Large
-User documentation for \textcolor{blue!65!black}{version 23.9}}
+User documentation for \textcolor{blue!65!black}{version 24.0}}
\vskip 0pt plus 3fill
\textit{\large to my Master, \textbf{Ferdowsi The Great}}
diff --git a/macros/xetex/latex/xepersian/xepersian-doc.ltx b/macros/xetex/latex/xepersian/xepersian-doc.ltx
index f9ff704d30..29f42a326f 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc.ltx
+++ b/macros/xetex/latex/xepersian/xepersian-doc.ltx
@@ -1,7 +1,7 @@
\documentclass{ltxdoc}
\input{xepersian-doc-preamble.ltx}
\hypersetup{%
- pdftitle={User documentation for version 23.9 of the XePersian
+ pdftitle={User documentation for version 24.0 of the XePersian
package}%
}
\begin{document}
diff --git a/macros/xetex/latex/xepersian/xepersian-doc.pdf b/macros/xetex/latex/xepersian/xepersian-doc.pdf
index 08825250c8..955b5e6835 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc.pdf
+++ b/macros/xetex/latex/xepersian/xepersian-doc.pdf
Binary files differ
diff --git a/macros/xetex/latex/xepersian/xepersian.dtx b/macros/xetex/latex/xepersian/xepersian.dtx
index 7bf394e7b3..6e3e33a3d4 100644
--- a/macros/xetex/latex/xepersian/xepersian.dtx
+++ b/macros/xetex/latex/xepersian/xepersian.dtx
@@ -5,7 +5,7 @@
%<*readme>
____________________
The XePersian package
-v23.9
+v24.0
The xepersian package provides a convenient interface for
typesetting Persian and English texts in LaTeX, using XeTeX
@@ -31,7 +31,7 @@ also appear in the Discussions space under the Announcements
category.
-Current version release date: 2022/05/20
+Current version release date: 2022/05/22
___________________________________________
Vafa Khalighi
@@ -166,7 +166,7 @@ by Vafa Khalighi.
\documentclass{ltxdoc}
\input{xepersian-doc-preamble.ltx}
\hypersetup{%
- pdftitle={Source documentation for version 23.9 of the XePersian
+ pdftitle={Source documentation for version 24.0 of the XePersian
package}%
}
\EnableCrossrefs
@@ -185,7 +185,7 @@ by Vafa Khalighi.
% \GetFileInfo{\jobname.dtx}
% \title{\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}\\
%\LARGE Persian for \LaTeXe, using {\XeTeX} engine\\[5pt]
-%\large Source documentation for \textcolor{blue!65!black}{version 23.9}}
+%\large Source documentation for \textcolor{blue!65!black}{version 24.0}}
% \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}}
%\setcounter{page}{0}
%\thispagestyle{empty}
@@ -195,7 +195,7 @@ by Vafa Khalighi.
%\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}
%
%\Large
-%Source documentation for \textcolor{blue!65!black}{version 23.9}}
+%Source documentation for \textcolor{blue!65!black}{version 24.0}}
%
%\vskip 0pt plus 3fill
%\textit{\large to my Master, \textbf{Ferdowsi The Great}}
@@ -243,7 +243,7 @@ by Vafa Khalighi.
%\iffalse
%<*table>
%\fi
-%% \CheckSum{10976}
+%% \CheckSum{11097}
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
@@ -3218,14 +3218,36 @@ U+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMET
%\fi
% \section{File \texttt{scrartcl-xepersian.def}}
% \begin{macrocode}
-\ProvidesFile{scrartcl-xepersian.def}[2010/07/25 v0.2 adaptations for scrartcl class]
+\ProvidesFile{scrartcl-xepersian.def}[2022/05/22 v0.3 adaptations for scrartcl class]
\renewcommand*{\thepart}{\@tartibi\c@part}
-\renewcommand*\appendix{\par%
+\renewcommand*\appendix{%
+ \Ifstr{\@currenvir}{appendix}{%
+ \ClassWarning{\KOMAClassName}{%
+ You are using
+ `\string\begin{appendix}...\string\end{appendix}'.\MessageBreak
+ You should note, that `\string\appendix' is a mostly
+ globally\MessageBreak
+ working command not an enviroment with only local\MessageBreak
+ effects. Therefore `\string\end{appendix}' will neither\MessageBreak
+ switch back to normal section numbering nor finish\MessageBreak
+ every other effect of `\string\begin{appendix}'.\MessageBreak
+ Nevertheless, some effects may end with\MessageBreak
+ `\string\end{appendix}' and the document may become\MessageBreak
+ inconsistent.\MessageBreak
+ Because of this, you should remove `\string\end{appendix}'\MessageBreak
+ and replace `\string\begin{appendix}' by command\MessageBreak
+ `\string\appendix'%
+ }%
+ }{}%
+ \par
\setcounter{section}{0}%
\setcounter{subsection}{0}%
\gdef\thesection{\@harfi\c@section}%
- \csname appendixmore\endcsname
}
+\IfLTXAtLeastTF{2020/10/01}{%
+ \g@addto@macro{\appendix}{\UseOneTimeHook{\KOMAClassName/appendix}}%
+}{}
+\g@addto@macro{\appendix}{\csname appendixmore\endcsname}
\renewcommand*{\@@maybeautodot}[1]{%
\ifx #1\@stop\let\@@maybeautodot\relax
\else
@@ -3254,19 +3276,41 @@ U+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMET
%\fi
% \section{File \texttt{scrbook-xepersian.def}}
% \begin{macrocode}
-\ProvidesFile{scrbook-xepersian.def}[2010/07/25 v0.2 adaptations for scrbook class]
+\ProvidesFile{scrbook-xepersian.def}[2022/05/22 v0.3 adaptations for scrbook class]
\renewcommand*\frontmatter{%
\if@twoside\cleardoubleoddpage\else\clearpage\fi
\@mainmatterfalse\pagenumbering{harfi}%
}
\renewcommand*{\thepart}{\@tartibi\c@part}
-\renewcommand*\appendix{\par%
+\renewcommand*\appendix{%
+ \Ifstr{\@currenvir}{appendix}{%
+ \ClassWarning{\KOMAClassName}{%
+ You are using
+ `\string\begin{appendix}...\string\end{appendix}'.\MessageBreak
+ You should note, that `\string\appendix' is a mostly
+ globally\MessageBreak
+ working command not an enviroment with only local\MessageBreak
+ effects. Therefore `\string\end{appendix}' will neither\MessageBreak
+ switch back to normal section numbering nor finish\MessageBreak
+ every other effect of `\string\begin{appendix}'.\MessageBreak
+ Nevertheless, some effects may end with\MessageBreak
+ `\string\end{appendix}' and the document may become\MessageBreak
+ inconsistent.\MessageBreak
+ Because of this, you should remove `\string\end{appendix}'\MessageBreak
+ and replace `\string\begin{appendix}' by command\MessageBreak
+ `\string\appendix'%
+ }%
+ }{}%
+ \par
\setcounter{chapter}{0}%
\setcounter{section}{0}%
\gdef\@chapapp{\appendixname}%
\gdef\thechapter{\@harfi\c@chapter}%
- \csname appendixmore\endcsname
}
+\IfLTXAtLeastTF{2020/10/01}{%
+ \g@addto@macro{\appendix}{\UseOneTimeHook{\KOMAClassName/appendix}}%
+}{}
+\g@addto@macro{\appendix}{\csname appendixmore\endcsname}
\renewcommand*{\@@maybeautodot}[1]{%
\ifx #1\@stop\let\@@maybeautodot\relax
\else
@@ -3295,15 +3339,37 @@ U+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMET
%\fi
% \section{File \texttt{scrreprt-xepersian.def}}
% \begin{macrocode}
-\ProvidesFile{scrreprt-xepersian.def}[2010/07/25 v0.2 adaptations for scrreprt class]
+\ProvidesFile{scrreprt-xepersian.def}[2022/05/22 v0.3 adaptations for scrreprt class]
\renewcommand*{\thepart}{\@tartibi\c@part}
-\renewcommand*\appendix{\par%
+\renewcommand*\appendix{%
+ \Ifstr{\@currenvir}{appendix}{%
+ \ClassWarning{\KOMAClassName}{%
+ You are using
+ `\string\begin{appendix}...\string\end{appendix}'.\MessageBreak
+ You should note, that `\string\appendix' is a mostly
+ globally\MessageBreak
+ working command not an enviroment with only local\MessageBreak
+ effects. Therefore `\string\end{appendix}' will neither\MessageBreak
+ switch back to normal section numbering nor finish\MessageBreak
+ every other effect of `\string\begin{appendix}'.\MessageBreak
+ Nevertheless, some effects may end with\MessageBreak
+ `\string\end{appendix}' and the document may become\MessageBreak
+ inconsistent.\MessageBreak
+ Because of this, you should remove `\string\end{appendix}'\MessageBreak
+ and replace `\string\begin{appendix}' by command\MessageBreak
+ `\string\appendix'%
+ }%
+ }{}%
+ \par
\setcounter{chapter}{0}%
\setcounter{section}{0}%
\gdef\@chapapp{\appendixname}%
\gdef\thechapter{\@harfi\c@chapter}%
- \csname appendixmore\endcsname
}
+\IfLTXAtLeastTF{2020/10/01}{%
+ \g@addto@macro{\appendix}{\UseOneTimeHook{\KOMAClassName/appendix}}%
+}{}
+\g@addto@macro{\appendix}{\csname appendixmore\endcsname}
\renewcommand*{\@@maybeautodot}[1]{%
\ifx #1\@stop\let\@@maybeautodot\relax
\else
@@ -3474,8 +3540,8 @@ U+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMET
% \section{File \texttt{xepersian.sty}}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\def\xepersian@version{23.9}
-\def\xepersiandate{2022/05/20}
+\def\xepersian@version{24.0}
+\def\xepersiandate{2022/05/22}
\ProvidesPackage{xepersian}[\xepersiandate\space v\xepersian@version\space
Persian typesetting in XeLaTeX]
\RequirePackage{fontspec}
@@ -4324,7 +4390,7 @@ Persian typesetting in XeLaTeX]
\newcommand*{\@xepersian@pdfcustomproperties}{%
This is the xepersian package, Version \xepersian@version,
- Released May 20, 2022.
+ Released May 22, 2022.
}
\newcommand\twocolumnstableofcontents{%
@@ -4336,25 +4402,27 @@ Persian typesetting in XeLaTeX]
\end{multicols}}}
\bidi@newrobustcmd*{\XePersian}{\leavevmode$\smash{\hbox{X\lower.5ex
\hbox{\kern-.125em\bidi@reflect@box{E}}Persian}}$}
-\def\figurename{\if@RTL شکل\else Figure\fi}
-\def\tablename{\if@RTL جدول\else Table\fi}
-\def\contentsname{\if@RTL فهرست مطالب\else Contents\fi}
-\def\listfigurename{\if@RTL فهرست تصاویر\else List of Figures\fi}
-\def\listtablename{\if@RTL فهرست جداول\else List of Tables\fi}
-\def\appendixname{\if@RTL پیوست\else Appendix\fi}
-\def\indexname{\if@RTL نمایه\else Index\fi}
-\def\refname{\if@RTL مراجع\else References\fi}
-\def\abstractname{\if@RTL چکیده\else Abstract\fi}
-\def\partname{\if@RTL بخش\else Part\fi}
-\def\datename{\if@RTL تاریخ:\else Date:\fi}
-\def\@@and{\if@RTL و\else and\fi}
-\def\bibname{\if@RTL کتاب‌نامه\else Bibliography\fi}
-\def\chaptername{\if@RTL فصل\else Chapter\fi}
-\def\ccname{\if@RTL رونوشت\else cc\fi}
-\def\enclname{\if@RTL پیوست\else encl\fi}
-\def\pagename{\if@RTL صفحه\else Page\fi}
-\def\headtoname{\if@RTL به\else To\fi}
-\def\proofname{\if@RTL اثبات\else Proof\fi}
+\AtBeginDocument{%
+ \def\figurename{\if@RTL شکل\else Figure\fi}%
+ \def\tablename{\if@RTL جدول\else Table\fi}%
+ \def\contentsname{\if@RTL فهرست مطالب\else Contents\fi}%
+ \def\listfigurename{\if@RTL فهرست تصاویر\else List of Figures\fi}%
+ \def\listtablename{\if@RTL فهرست جداول\else List of Tables\fi}%
+ \def\appendixname{\if@RTL پیوست\else Appendix\fi}%
+ \def\indexname{\if@RTL نمایه\else Index\fi}%
+ \def\refname{\if@RTL مراجع\else References\fi}%
+ \def\abstractname{\if@RTL چکیده\else Abstract\fi}%
+ \def\partname{\if@RTL بخش\else Part\fi}%
+ \def\datename{\if@RTL تاریخ:\else Date:\fi}%
+ \def\@@and{\if@RTL و\else and\fi}%
+ \def\bibname{\if@RTL کتاب‌نامه\else Bibliography\fi}%
+ \def\chaptername{\if@RTL فصل\else Chapter\fi}%
+ \def\ccname{\if@RTL رونوشت\else cc\fi}%
+ \def\enclname{\if@RTL پیوست\else encl\fi}%
+ \def\pagename{\if@RTL صفحه\else Page\fi}%
+ \def\headtoname{\if@RTL به\else To\fi}%
+ \def\proofname{\if@RTL اثبات\else Proof\fi}%
+}
\def\@Abjad#1{%
\ifcase#1\or آ\or ب\or ج\or د%
\or ه\or و\or ز\or ح\or ط%
diff --git a/macros/xetex/latex/xepersian/xepersian.pdf b/macros/xetex/latex/xepersian/xepersian.pdf
index 5817645f19..987fb2a2d4 100644
--- a/macros/xetex/latex/xepersian/xepersian.pdf
+++ b/macros/xetex/latex/xepersian/xepersian.pdf
Binary files differ