[PATCH] AWT DrawText Internationalization Problem

Takashi Okamoto kaffe@rufus.w3.org
Wed, 3 Jan 2001 12:06:17 +0900


This is a multi-part message in MIME format.

------=_NextPart_000_000E_01C0757D.939744E0
Content-Type: text/plain;
	charset="iso-2022-jp"
Content-Transfer-Encoding: 7bit

Hello ,Kaffe VM developers.

I made AWT internationalization patch.

Now ,we can't use multibyte character for X on Kaffe AWT.

Principal reason is that Kaffe's AWT have been constructed under
single font model. I made a patch for this problem. It uses
XwcDrawString instead of XDrawString16. If you are interested in it,
please chec kattached file. And you must modify following line at
Default.java for your fontset when you use this patch. for example:

original code at Default.java:

   String fntCat = Integer.toString(res) + '-' + res + "-*-*-*-*";
   //FsDefault = "-b&h-lucida-%s-%s-*-*-*-%d-" + fntCat;
   FsDefault = "-adobe-helvetica-%s-%s-*-*-*-%d-"  + fntCat;
   FsMonospaced = "-adobe-courier-%s-%s-*-*-*-%d-" + fntCat;
   FsSansSerif = "-adobe-helvetica-%s-%s-*-*-*-%d-" + fntCat;
   FsSerif = "-adobe-times-%s-%s-*-*-*-%d-" + fntCat;
   FsDialog = "-misc-fixed-%s-%s-*-*-*-%d-" + fntCat;
   FsDialogInput = "-b&h-lucidatypewriter-%s-%s-*-*-*-%d-" + fntCat;
   FsZapfDingbats = "-adobe-new century schoolbook-%s-%s-*-*-*-%d-" +
fntCat;

for japanese(kandata font):

   String fntCat = Integer.toString(res) + '-' + res + "-*-*-*-*";
   //FsDefault = "-b&h-lucida-%s-%s-*-*-*-%d-" + fntCat;
   FsDefault = "-misc-kandata-%s-%s-normal--*-%d-"  + fntCat;
   FsMonospaced = "-misc-kandata-%s-%s-normal--*-%d-" + fntCat;
   FsSansSerif = "-misc-kandata-%s-%s-normal--*-%d-" + fntCat;
   FsSerif = "-misc-kandata-%s-%s-normal--*-%d-" + fntCat;
   FsDialog = "-misc-kandata-%s-%s-normal--*-%d-" + fntCat;
   FsDialogInput = "-misc-kandata-%s-%s-normal--*-%d-" + fntCat;
   FsZapfDingbats = "-misc-kandata-%s-%s-normal--*-%d-" + fntCat;


Note: Specified fontset should include all style.
 (ex. -misc-kandata-medium-r-..
      -misc-kandata-medium-i-..
      -misc-kandata-bold-r-..
      -misc-kandata-bold-i-..)


I think default font should be modified by font.properties file (like
SUN and IBM JDK).


I also write main topic for this patch.

in library/clib/awt/X/gra.c

  XDrawString16( X->dsp, gr->drw, gr->gc, x+gr->x0, y+gr->y0, b, len);

XDrawString16 can't treat FontSet. It's only purpose for single font.
So, it's not good for internationalization.
I use XwcDrawString instead of XDrawString16.


in library/clib/awt/X/fnt.c

  XFontStruct* fs = 0;

  -- snip --

  fs = XLoadQueryFont( X->dsp, buf);


We must use XOC or XFontSet instead of XFontStruct for XwcDrawString.
I used XOC for font set.

Regards.
----------------------------
Takashi Okamoto

------=_NextPart_000_000E_01C0757D.939744E0
Content-Type: application/x-compressed;
	name="kaffe-1.0.6-awt-X-multibyte-patch.tgz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
	filename="kaffe-1.0.6-awt-X-multibyte-patch.tgz"

H4sIAOSMUjoAA+w9a1PbSLbzFf+KDltkLSPAdiDZCSFTBEiGLQKphLlx3WyKkqW2LSNLXknG1szk
v9/z6NbDDywDyUzmjnaCpVb36fM+p7uPvZ7bDq3QldHOD1/tqtd368/29uCTrulPvn/WbO7u1Z82
d5s/1BuNvSfPfhB7Xw+l7BpFsRUK8UMYBPFt/Za9/04vL5W/DbdfRwlWlz/e/i3/b3FNyd8axw+v
A6vL/0lz98nf8v8W1xz5tx5aA+4g/9295t/y/xbXXPl3/Hjbfrg56o16/enu7gL5N/fqz56w/Hef
NupNlP/ubn3vB1F/OBQWX//P5b9Tq1VETZDExZaAe3w8CoZJ6HZ7sajahmj8+OO/sJWuy9Dyoxs3
jEeWJy6l3fMDL+iCApni1Le3hTj0PEFjIxHKSIY30tlWYD9IKeKeFB3Xk2Ldc23pR3I7luEgWhed
IBSuD38HVuwGvoD/RpHVlcLyHYDkuFEcuu0RvUNgQQdguREB28aWnUql8g/Xt72RA9DjIPCu3Xi7
t16pAJEPeuH0rwM/FtFoOAzCmCffoXbCCf4LRqEYebE7sESIBAFtwrYiKeSNDBPo5XeF9OC5Y7ke
MM+KhSetKCYARJ8vRdQLRp4j2hK5QQNFCxjlxx5wg2a1e1ZYE23Lvh4NCaUDsd5xJ9JZ388wAjEI
K5Si2guGsjPyvMQgOQwCmG8UoSRbr8+OCbIYSxK8bw1QpkHoSGA+wgECkKhhKDsyhDbhBQHMKiL5
35H0bQDfCYOBeHd2eHou4kC8ujg7NnJIMuBPnwHF38T6ACQ6GqybYt1HkXt4F8ruyLNCvEUG4aeH
Y9bNipi91tsekI2dHDlw24Hn4H1PWjcJ3shJHFq6lR90f2oVX/Yr/3BkxwU+n388OX3z86VoNOYw
bRDAXzvwO64j/Zg5R+yKPMufZpTiEoIozajTy8Oz06M8qwiy5hTxw8U/QRHpD2eH55fiySzK8NoC
IROmkfsraE+nE0kwyLEUY8QZJo3DhCZ04dHBTmq6uika8G8L/zTxBv88wRv8s4s3u/UCGscfTv/3
RPyo0bgAHSFF0lQD52PZTdAoPPdakoI/V9o8sIZDtIS4B/pvWz6q+rUfjH2EZAEL3SB0RTeQYFM+
YN23bqxtCFLbx7JjgXkB43P2RFAGpL4AJxpK2+24rLzwIhz5YI7AfaQWBhKTTaWWhuhZEfIFBvbA
43ggth4IdBu8mnBkDEb6HOHgv2rDAApHvhMmJpjvwPXgEwQbOIgEuqscTieto5N3l+iteCKTp0Uc
tE9FkaXIogLNUEne5gN0QW4CVMB+3HPtHg0dRUwigYpA4IMhuNcjwa5UQ7bJq0a6Y1Vud7fXtywn
aMutnvRuZAxdtjYi/K9G/9tw1A39b90g0psGTIA63A7iHpk4EcwqjOJEHpLFgDB8cmJkK1bM3luK
G8sbyQIaavTWS9Rw0nXDJKgDy09IlyIi1A9iAZxxPbBkiXwCJdeAlEzHKL0bSUhYoGugf1ZmdyAE
y4Nw44NCEl9I4pG0QrtH1D1h6+YWMKMQ/TFmR9jvxgKFVfNAL18JVD+RXIm/1V0j9faAYhap2NO7
YHBuKO0YLZSBY0ykeAI4EYQ9gFAcBfGMhqKrj5AuwGiM+g5dKAyBFij9BYqtDvA95U0MzLRCh+eo
QnggMgwVlS+QNVbXApS3kIFO4P8TyU4QnCOdka1kyKrODk+QC0PE/w0iUU6QvZAV/zOaq8Us1FSn
AfGBVN6ozYkBmwypNhmtYw1jZs/hx0vsl2AEagF0oMnzSKV32M+igKNtcUzIe4AO2vYATLIDnid+
xCG6dXEk7FCC+K8mgV295BxB1Fom+l1RQwZdIS0GRM+bwHVqFSTvCkm5AlKu1IgryJdOfTemiFsV
/z4/PfFvauADbkzRtz0rigT8/fVXeGKDFX203rlhbObqo0uO4sSTprpHF25UfoPR+ChcaDfFNagD
eGO3AU/w2YdPB944/X3oR+S0R51Pjaf1z2lDDfULvDyS0zz6QJhVGeuWySga2BnZBPyBnue/nJ1h
S4UtTNQOIDrsC7FTw4gIXi5mv9wSwwBuyDqI0wL1t8pkiMeiPmkIA6LLTi01UYuc2ja5kBAtFGwN
RiIH3DpOrWLylmjsA5XQsgU3jss30O8L/KMM6rdsUF11VYNVf9V9FqnmAqSUO5tCq09ocdQlrPop
Vv1FWPUVVtSVx6ruGVKY+VZF/6AP/arEd2a8IR4/FtW+eAQSaxgAQ2we4FhDweZx7oE7d5yL41wc
59I4Nx2nR14foChnR16LFyqqw+Drzc3cQFADiMl+3KmidpnksHQI/eR+VkH1Ux/vUF82VW5x/ZkU
i6/jV2+qaNBXr88vTaHgrWO6gH4NbfC52Ij+g/kfTGLkRrJS5iwY9Rb76C5fKvpvJu5HNMxgEkDW
kF6gvDGidGUco3U6EgjBNMVkv9fj8JD56erYjSEXjzEIRIZWiLnoRNqK5mCwpknPyIakB+OaF1hO
SrqockKPHm8jMjQnzFyej1xZY+DV+VzJdSUBroHYteyiGJLVEEItRYSh5bsgRR+9PflmQuQRTIuT
pMwMZTwKfVElv2ggSfuVL+wmF3vJ16GUy72kdjjs5FrHYHRhkFwcIWkGzfLV1nBvJbhBOyou5Uq6
fj32VtoIVo46xcbV2FdqpjwXkWUYPBaDfiPjwwhW4CuJZlZ/l8M/2HBQg7daJ5MYHqOLDmWzMibp
br0cWJMr3EKwLe9KUpfthI1esWqlkcTUpZSDhq1KekvNrXARtQmsqQ7mo5ZDHnvNxbRHTnOrurWw
RwLuFwDt7KTAOtHWS4dRL0fna9wK+Og6kKuvQKqarY5k4KLurrRXF1M/Jpwg7GQ9XP+6+NYQP7Gb
vR3Ic0G9AFsw3S+Qqyxny8+8x7ECS1bUfJ5Aaf4K6stKoUKe4uLKw8upxpm0aL16F71QcRR3rBgG
TCZDD7cDoqFlQ5NBOUZLrd5QMCVQemtNDp0bi7ZIVsZqBTaR3pTjEqL0rVzFLZ6gNLLfj2NDgtqA
PiwBb4m0ETivlRMIhWFzfw0vSgw5IAbtPuRzt/KQnOUKgZbXa4dhaCWC9CraV22ckdb6Y2pQpMKq
FzfXmY9dNwKz4VWdSwuv94Ce5Xdpe+P6ykKoptDco8epbgGswWAljM7TTB/UAOw6xoXfVYyf+2r9
6I8G+5WVYznzBXNCg0YzrZB3VmvAIbCzczk+VYxQa8rm3lNSmP441w1A6W4nnsRleqS6M0RTPGYW
8TTgRWCJo1Z2sC4BmHCTW5MAYfDW5QWA26k+ao3tS9CzdzI8AtKVFlOObD7GzmYDbnLcfVxgryka
ZoWU5jHwyXxc4O/jKQYLQ60qdGKt8+qrq9enZydXV2K9uuEY6xXSwXXj+bpYn4ueOAnDIMRYcXV1
dnqOI9WShhc0/TEsroDMqfm1I1MJumbxe4knCXIJm/tjU9SZycpetPoudTWvklhGy7OKypoyFGhv
wxA2kj6NVlsbQaej7jzpa3vSppKzFRrP5tQuKtMrDXiKTD1Npk1q94QuvwiEAJxJvxv3CsONvAnB
5MqKcvZXy2lS7T6GOtcylxpmJonMMmlVCIzdRJa+BFINYu6BwP09aGfzJbMhtjaJwCo8wHKdBEKy
YKQUcciuPNXGANCHlSYu7oNO7pVRg8E0tsCMlcdXlhoz2TJiamYimDJleEvGPGPKwpw25a9tybzR
A6u5Ki+ggQVFBlGvYoeM+3NeIvnMpymzX2YQ/baJNnt1+Ori/aWhNveUB1jgX5Y6BGRA+VUGNuN2
ZB+H6fx6OlKVDoYrWVnOzigryCIIIfNgUYRDSCGUiNtjybcIJfTxAKJe0fejYJXvp9Gr+n5SFvL9
dtFtH2nA06quppnr+5e7fhpddP3f3PMvz8kyQdzN9SNpqeu3/6quX8xJ5P7K3n+ZSfTtae+/1B8s
cQh8jLSS90/PxOJw2u4zs7cDP4pvMX6el8jSNELTAqNnK5gZXbR7aJtj9RQlvqLdHwBuKgrPtcy/
pE3+lY1SzFrlIl3t24UF2C02WP7kmrZ02NS0lrnZCXBt4EYR4HKFFWT6vW6zg5EfZ30d2bliUyUk
+ZipdURYXBxVW1svJ8EAJSpa56+AStymOQcUTJFiQ2/pZHFfhSfcRVJL9xbY4cXR/2A9CCmRKRjW
W0YH2fVBxmDRBfzUhO/lf0duKJ3ZXkiZ6qRqDZj90CWjqIgYaXeRDY8O6vrMcFYF11VXgXMJOYG/
EZYYbUTboGfCzNcR5E5cc/sYRZbjjgad0d060acN53N6MuqaIk/wJzc7Yc0dguaPomdgp6IUEi1k
MQFfZo+t4PqjS1f/vh7gmlv/3Q2tb1f/vfe03nyq6r/3nj1r7HH997O/67+/xaXqv0ni33/99/zy
7zgZSvD8WDs5smPyhm+OdElJl6LkcWiNqapQOOFYl0DxlYVR5cm7xed2N42YdE2CsNhhYnvTLfXi
cwLPX8Sb0Br2XDuCYKtra8XH0/Pji4/QpZ61nb49fHOCwxpZ25v3h+9+Pj36IJpfpVJCVdffVhYB
GoRlEZqIJZsD6aX7owpCLz6gEXE3VlsDcHcJ4ssPofbJRbp7kODtzPsjzx3qDrn7ce6+R/f5kWr6
jq+n73TVTRtv9CKl7VmQsKqKiFRz6NLq80blNdxKNa/R1PqAN2NsSrhGfuR2fSoVh2DP/d9a0TUk
DG+OXgeh7IZYcCx+h8dXln2de3w98m00isL+wRUoRLaH4OYEAwnEUFQ3gAeQPMM/c8MR6mMrfRyK
jQn8h4kGsYeEg0LR4mD+E+cVq5nJzF5mLLERGNju5ncnAAKXI0VjN7Z73IIwuZWKZuvPiZG4StHs
NaDXvmhDwnK9L9JrpyY+ur4TjHGBuKNGN7LR1dMBeJAaDoZkfOhOCiBgNL0X+dHN3OhUORUAFG4K
AEanyo6jVe3U8zlVVq7nyS64y7Q/hJyuxFIvqg/QHMBqqzU1eT2tvErLCbncq4tL5jWNYzdkrCpr
utO8Ki8rjuVgGHOxcwwOFfQNdcK1PFjwOej9CS+q9xIzGFS0Am93Mk08UI5QvWlnSnlALhHcUG5Y
6uqQrXzgTM64ZoCSAGc7rrNPRXV6hFJqGvGmZfOegNYh5AHS2oLk3+/KN0dVAYsRJwKdQ4Z0YSWR
WhBk/QwzzWQ1pwAKYJPJmOzm7eHZGaxthFoJ67dUbsewszVQfl7g2YJJs6K/olEKABZqa+QaP7Qy
nsTIVqjoIrYnmntkbPtCtye6ncxvXzdzYQySRwYpXoq6IX5i5yeec2EPdeSzeuzYy3fs5Tu2YHmF
z6nnimbZze6Y/cFjhIznqOIXPwrCWDps/ti30yVsWXWwoc0N7bQBlQ8alB/FlkmdKb/A/UtuSrgp
yTVB2BWstfwMi1WaCRe0Wm+U3ybVAaIyvzpLEOOGUm+9BvNNaS/2JKnnebCp4g5itqnijgo5xFMC
WGLqDky9VikWXnZDXnndUjEIhowVg6WCsMiH3qnyvqKmdnIgUWGVriqv3qIZZ0yQFJiKfN+fnKDJ
GmWwx8TzEIyrPOa0aVCI/Drq64iPtqAjPn8FZ3rEsfRiSw+jh1v5YSskkRcmx8ytfCBNbXliJiZP
rybWU/EkioHgKKNgIEVLULYcRsKCHMSCmBG6NqbB9LWmqm2FEmwvEm03bnsAi76yoWqRSb2rbPYv
0IZ//x1Mmo2bniFmsBrxVg5WhLNt7YtEPyRs7loGC1S9qPMm8lmxOCVSbKY8BeCKpfzNgtdnv3z4
mQqUX1vgh8spBSRdIVrgClqRiViU1IrbRa5RmJH5QmFr8yjraJA5ZT3NJssO2LvJgpuSgbFfcuZO
9+5iwdSMzpSX5PpTKf7iSpBI6rQbd4qn5Lb4oCA72ZuuFDHxT5Df0udzPG0wjxgDiAg521ilNOQ+
xSiAGVVg8Mkb0H5LAu9oViv1G5rK3/xnfSP6z/qU3+GUXc2p+MocbZOaTh0WwuvsvLCyVjgw1GjN
LRcJ0qMJVKGxjQqhv1Q0V3cDe4kO2z0zPW+gvXX9ZQN480DFDndWddq9X03VFx98P4yq587GUNXt
W1Wd8Z9SdbHCYfh9Tt8BNzrZKqvsBKKUsuvpcnqu9J+O0fS33FomoEDKdU8TKB7OfT0TEKVtYPUj
3zvbAJNWcm9HTOVp+tg3opOvWzWeTmRmtR4vdVpaOB0G1Z+r+Yv1iwmh1dcitcp/RxLJbJmA+Kz2
PIrwEDtvVWXOmiN11Lz8UDsqnmkv1MTcMfHDuuLSpQcLcO/b99O5M9zgvEvixyrW0DqmbyZN3dK8
NeVz1Ny5jE/vkGU5X8NEuAAyaeaVojppHBxMmvx1ygTu4TV91ZSS/TFaQdcdDFz7mraOWkjnO/wC
7W1JX0NkclL3SX1mV6OlebYElMjDElrsk2b+TTN9k05zZzEehvZdpChE2fx9dgye7MSHmEurjlZo
0+NSuQOyyxZ3HGRmV3i5SfV0eiWg2HCfxJ6mzaZ48eKpmVIFD3e3NFx6fDci6jCyDyAiMS0jxYc/
pYxQfy5uLO8e3vB+q2BHIXCrS1ywDH4I5ccfp2k+qe/W76fnfygPOwqBu/DwIZSzFA+Rlj7VOTUp
LM2sexRHaziwRV1qNTEEjIhDdf6EySuKa7wKmjAwM/eVqUQ3UTWcmkx/i0t9PyotYZpe6c+sj9Kv
XdX6k1LfOUoxKixWMihJKSjJLJQ0E1i6naBQMAzxImNAenfAtJaElSyHBcBqwyEeHcn41ajTkSFJ
v6o6bTaMmq4CpBYj/R4W/dYEli+9UH25bAlyjipAND65n7eR6f0JfldpUx1yY5aoXiIv+wm/5K3G
Fb61lKnOZHo1Uw5AKqN+UgSQbbBrskq64neBl3QDf7UtgVK20J81Bmohi6VmVM7hkjWOwi9bRQ+F
yDsZPVs6ra+1J7e6Ub1wP/lRkmpUfg8hVa6Cw8h+Vuax8lPoFdI0c+Hc6RacauAfVWH1H36qo4o9
OhDDTz7c8S43tSZpa6J+7QIeGAJrJY/dL7Qnuh18x5rW/81UMdNMOrrF4Q5T1E1xFASh8zZw5EXo
dl3/foEepefddelT0ufO0bPV1MvL1kffjX79kYLFAP5N3UY5cXYytL5DaeaYWlKe54FPv141eWCb
vfMZ1UMl51MnVGUTy/zp4csDPC7EfQs1JzcYamfhAY+n7mpAfyiXOwqBr8TltMwn/X0U/t207JS4
sHvElUc5j7aiVHJtekNJbCqMthoGVQBxZREhpatFCKvf7jWx3ssSm0zpViN7nZ+XZ3nIg9G0rGqB
AqqfMU1/CHEUcdFqazASYTCKMW7QT4OKtrQtfOuCFtHv9IIJdqnvuAcrE9GKhee28bcQqX6yhP/A
g9o7q3fpk+58yYQahEtz3Qe3gbKkc8L7m7R/msCnZYr2kswgJWOOkZTcomF8EBVDf0W5ULMwXbRg
QUShLcYd0dwXeCrb009U74C/vodlCRZW/k2a6kmpHrUm2IjVCvo3dEoqd4MqIIhDxkqDmmpUk71D
0lDztxHFKWwAR2gu4l16MpbdRE1VcpCSeB7DMls4XA6SCs8UP9ZrT3fVB4OZ4T523y8JvzkzQb0A
fJZvvRWhN2fAb+Xgl+TBFJDGv2a4MN/5lAh+37+L6OTJ+NO4iIL9zTM/HcHh3UvsbaxSGsjMUXxO
mltJI8U575rmeCY97QSn5V9RXWVidk/VSXNr0jBALqtVNCqBFobr1XGJzch7eYMS8O/hDUpCX+IN
yvHgrt6gRMbw5PjudXGrn9qs5TZdQ8uNpKM6ht12/geK6WsxIZupY4XXhb3bCXAnWXY+z3QtcA7q
mwm3OQeNHSCWVVmO0/9DBZ3TRRZk1ANp9yzfjQb88/SwHnR9/KnvtIqWSZFh1dhBavCGE0AqvcQm
rqPB3VJRnS8v2wuPoaNa6CrJIHbi5UvxhAMzz1MC0ivqeAusaV845Qon4+lEIulNZT+V5fWDVWay
+Ekj/px4YZRPMjh1GlPuv+ooVKJyFZYZniSq5wrdFfDcRAR7plLd8uPGisDyuKY1mfdIEf50PmFx
GvDwZr7yUnEzt/Dc1DH6/9q7+rY2jiS//8KnmLBPHAkLkBzb8Rrb92AQNglYHOBYOZ9Xz0gzEmNL
MzrNyMCt892vflXdPd2jERKOye3eMYmR1G/TXd1dXV2vGw/0hXFDbaclsLC7H4URYLSjscZViw23
38ug+p0gYIuMr6L5HO7HsmZxPHUr7OUz8ziiBIQptIuuwky581zQZ2U18oc0Cm7UW8e4Tgzr5i6+
VDp3LRdHWXKUGHFoqdGsYc7qP5ldTpGVWmqbsxCr4EXJkCWAS1tl8OTQWXUtDkhVw2oezH5Hxapj
NfTcYyvaVWMBJhY/RITjHX9XR50uswjNovnlxg1jy1sbu2l8wfi7ZvwytNwC9I8MbbFX1XLj3H58
PYs0laa1JMGMqR+rM1f0D59X2q3dal95sl7Y2xZr4t54Fgp2wos6Lm+x0EKODoyFmzUxl/VZwzRt
lrbMoI59ejOkD9/IUiu1mpy11NKb5nmOP5a1D0FRZZI5W1DsM5dcde3Wyc0GrCcymewu3lGq9Zn9
JLVn4NAw1oPYrc9VseWB4/1dt7wMlKjokkD6NUoj2JTfFEhRqmsugBMVo1Ki/2wtclPfXJqgwrHu
namgdhOfbk0Tz/fOCQPBnHgtCPt0mVqjJHNdEjSBiBVZzkVXYcekOT8IvN55CPmFiWuHW5+XcMiL
DDFXOPxRqCyl8e4o/ix9WxVzbS1ztMZsGUnzVnyBoCzwMUJZkCOo5A0EscFT1J216z7L61pV77tV
byMwhfa5QFQXbNMnYRyEUKwWHwxp5mdRj4NKrLKm6nB87osVe6WwIsT2nZoZaIsILJF00mvXzNff
1Ncgzdr519/sCmXMQeUSAXp0stCUHf06VT4YDQyGkWSktqORTlWcAIlilNJHSp8+xoFc1xNCMI4u
EVIFf7sD+ig0ktI40wH968IEm/7R92CRfCKHGW8A4w9hXK15Dgsy/yi4QgBM8YcQx4H5ykOoKQAL
bAWsDNGiGh5DzxGeUyOusJyTCY2k5yPI3N6eNjunr49Y8mbgLD7BeDCVWVGX5LZVtnSF6lV17Bj5
yW+I0J4I9cx06WwMkj0DtE/PR1CDU+0V71ZS0R12/bKvHkesxwwZao3Dm+EqlEe8kXiQZvGwgLMc
WRLEYHysulNn/lw+Qs+zV+NKISiQGiTjDDPg9oLBzZnLfIw17z+Oo8uRP84ZpWJ5znvlO+AU4BO9
lOlvOGRHIRKzh9dEPvd2H3WQqDr2y3Msr23v4zMpsfFCsW28j/fvI1/5R1+x9Paw1VCtDQU+XU34
P1DjQ7autRJI7yrS6+foNW4fgM4xelwxM41NXAVLBQOC+4pUqlpFrW0imx1zs8KbBb4dwoy3Y8Xd
Q7oglaQ7snIRxwuYUcE97PV7Abt060oxBpi0KoPg04vvkghdmqVemkXDIRsORRKqU+LOpdMuAuTB
GcbwipYjq5xy8ML+MPEzPqIQKFW3hdCAUUYn3HQC01efzWKC6LPXvfIePHpEOARREBH3r765SQne
xguvgW+PVQtb/MldvX9/mzAF/x3w3y7+BpwScEqAlFWu4QJCcOI9IMB7wID3Uubts/sO9rIhsFin
9r37XoVeD3EC0qqUGEyqlNp48IR5hk9UxYFbcVBWcVBWsetW7JZV7BYqqr5ubGCo/LdLfyW5fTwt
W2m14oap0FifPfMaj6tfKtR7+voE3+hV7LAD6Aa7kD4dhIeNWNcaDISE6G3zdr2m3nQ3DJKZhws0
q46bvoot2YCV8zXozNWI+HZdVn3dH07Tc92aSlNxuNSLpD3pCoRIhjt5NplqP4HLSS00vbI0cVsk
ZVbm0zPF/FLKZuWG5E3uzkl7crqWwJihLUSfjokJ5XOpVvwoozAs3Cnf2LeMjSilhIyBv9rsWYGN
UCICB4bAiucyUZegRFDZkidIym+2UMEqxP0Yhv3MLseJWTLO38IpOC2UK58ZrxO6QMnStmmswv7L
17lrGpe/85IpHUPv55DVZyZUrRAMsjedTBBLZ9BT0+7El+2x7yFcUkYe3Csl8KNIJ4jSyKKDTS+a
krug8dr15dXu8dCP2WvQF9vV1xfb0ZdatbZTIe6mjjKbh6/M4whbHpl64DHV4ClviLCHvurjLGXC
B+eiq6+mUlaWFyQvQD6/6/GwdyodKZhO7ER8n/h8SHMU30xdi/i6OAxp0BIfdoT5G9NM0wWCo74C
BGoqFlzL/Tg44FCmzAxdWXz3d0naxSy5ej5h3G3T326UgVawZiPS1LisR5mOpQ4oC0GsKib6kjcR
61zi81KfMivLHDLF13pLvrYw8URKZQgabbaaF172wnEmXh5Dz/gDU1M63/HXjbeW5apricXCLBxX
KzLHxxqBuJfMSo7Qb3Q35P5oJMxn7ta6uLyMZM3TTh5a2wF6oQCPu5Dya92NFtKBOWpvuopuTKcU
Xrj8+lEgcZBgQMhixB7Y9JICpBJW7iZoOetoBv0vXgAF93S2OkyRHLoBKXTa8xFv/o8SREZuFkDk
I9+uzDdjCR9cNcoqpaZSaiqlplJq7OdtusgoddBXmlFWvK0rvSHmrRr/inTvgQdHt042Grflgl7J
T2YdingZGksAZ1FaVU1QOdTVdTSWdT1lsDHEGFiAk0CFAcKwYDAsQTDhLOsRLR/L/kwVF1QO6Vjx
NhxyAlxOLNXAz3wVeT5ncmpAief0FQtYZSyLnHAS0t+iEb0ZIpEXwPUMDGiLmFdqpkHOpLhseC8A
O8F+LBIJoHTCmm2UW+SyqhINU8LwYaW9K27vSrXHEhX6tS0aesHVTHuqRMOUqLu8F5pC+ECj5tLL
uuEfSk7D5DQKOcw9pqHrWtGFZYqG4nl2w2RTPvybFthyFSqx4UHXHTp0lSv8uuJfDGRaK3J6CCpX
Kkr+8MK/Sr1BIosBPBHExcx1zaOU3c5alBHYaeIyOV859uGk+YH20dRm76PVbae8QYeKf4ifs+Vn
mIuSwVs8ymRrOplqx9GEb6idtqE2m/rd2JCNVtxy/LqlbpRFDQx+K+8CW2HFICrKNjuDvxdP4Nxp
rXWaiv/Isrs973uep4vwB5AzCQ7lDIG1+SYt/RlPkh4c+UVZag5ua8f/PnewLoPAHmsO+iK6WCnc
4s1GZiawhUiAdPUl/n/bK/nd82c9pf7/s+GnP8//f+Nho/5wxv9/487//5/yKP//POP/+v7/jUP8
o52DN3PCAViJw0+EisepmzpMcHJx4IBvLtpFv/3pZTSMoGCsbxGpI9olEnf1kkMWvaaRD0PIb/ai
dDz0ryBJpcOmzbnNzzjz18OJVopgX2jdaf9948GTD9s64VN49f7xww+OOP+AL9V0Pvn0j4YtfmX9
8TglkOM0oomLAjRfEOqLLRtLQdL4qmdOLwIiLBszIl0ykezzmUYzeiHu2Vl0T8POruSkq9akGSKA
R7zOQP6+9APjTZ8j0qSb3imfpvrWy25Yh1d0x+tOB9KCYhBQ56kH1NVzoqhT5s+xSup0PH8w0kA3
hFdzKp7w0KXDabU2o7sgagtJmlEHRHtB9UCrMOTtm770QKuhDQia/D4cDsVXRNhVN7ViBV1OY2qQ
0vCKc55yGS/KI4fJvS5fEoYIlKVfo96uJgZ6E0S9TJTGRFrjfcMNSQvovVww4gEtqqQv9VP0HUrw
o4SGQDD7lJobNYrPrABaMxgQ7cdxkoaBtFLBXIf9ftSLwrh3BdZESgubgdjzCRCmmSiGtI3oHw2C
g0GcsF9Aa/p5sqF5ynCNCVGIOok0SyWuGDqbRhWEVzbTPrRwNl7w6un0oGdE10l7XRk/yELsY995
Xqo95tNmqXlr3wdrtWI7ouBDdy3ee3t0SesShBBsDIKRMaIpHU+SLOFsqi4traHb/Zr2Jo8fVfdi
m19q27LmnwqaVVGe8gpz+zgB9Z9my/byRIp/VRfBjuLaT2e7OK98mkwnvRAVvh+KPpbqtWREgVY1
2srrV9Z/jqMmO3U5O58kF2/Ci4onSTWU4NFhMCpwVdLrTemEWDOKuXqCb0U/B0g8vByz9mwRhzOH
ZA7Hh44bWiLjcJJF1/tMtuLKA858RhGBfnb4S6fZPmuevNk57Ow1d1sIFENr/js584IKFESOW4eH
B29edQhK1VVd94tUPjjtvDxs7f5C+dvFvDfN5t5ph5lY26t/DeMg6lug5KISHFbp+s8fI6LAXM/K
0o5AEV/MPrs8ViAaI4ScuhcDq7S91jQb0+Y/Cul8CdTdVruEekkvJlwEtWaOgaJSekmc0apX5xPv
itaRChV3iJhtvVQHwKOMFhHAcabIjvy7KAsaN0l0iYX4WswBeDHSpNDw0IhelJaDpn06SHYxbHVT
WwOwmMDWhddymxD7vK94zvFv3esEYKKxwmBiPxqWn1LjRsMJ3eaot31XyevS2KhCxVvbOzg9Ptz5
jTaQCi5iiqw9rW/W11yGyncVufaC+9Qah7GiTiq6WlU5MijBcVZxpfljAtqZytsGRcNN0/7O4WlT
vd9e7V7Zcm9j8RHKCP0grVTthTzbl5Qu8IRcYsJ7XluF0OVynZ3ds4PWmwpNVU1k+KpYft1nFq+a
vY0XscSgwR59+NO2pF2YJHAvd1VUEauwwbjy+yTs5Q3irsHWAyp+4Qn9lmKWgJ5L9i+CgwAKN8x9
Anw0Mni982uzc3jwsk0oo2rRfu9C7+MUGwDEEa0LSAVsFrqQPJNpTHt/lGSh0BEX8HaQQTNG5YMy
SRQtiCb+fUonNQfcTLGLiBoZ+Z8UIQPSPRI06epu6qX4vv4B5/QPT38Ql06EH+LeaFxRxPh5wueV
Klzz/lZFacddxmwXDKS09EPp0Xlaj257VakI8RgyWjTpeUJ0kvDfFM02mhLtko44GIMoBY2ZR0dT
pzlyijZV7UzTKesRsXUh1yNY+yNEeQSpmhIKYjpE6C1NDq5qxSDdzzPTHVpT9b89Nvpr+Yp+d9Q5
PmmdtXZbh6fK2ISWP01RvJMlo3ytrtkF13JBDbew1zxsnjU7KszYNS04Ba1WpJmznV+anf3W7tvT
BR3JC7o9oeS3x7mT5/lNcEGn7knz7OS3/OXz61oFnQb2Wyfvdk72FvffKejCgM4qoDav/LRKw0xu
lZXD3Q6hAq+2tmY2+2Uy0oi0dVTRLwM3zv5reJFSQ4dQnUVr8iKsNTrYDHJtH3Jyqy+vQAuC71QU
1iOlqeDEdJ0NsSqnpsrm/WYdnYhpb/1SEVj10ewP98IxdJnjbE9OZSjv6VwUVjV25eimbZSXc4/z
YuxW/rPFqI3vW4ozzVFooVHAQVr7E4Iz7co03JRJwVOMyirj2wQ1QhWLwVlngR2HYRAGnipfjM9a
aE2HaVW9XhihlVaJWhVC5uKMMgexdUKenbxtLjIrILrsLJyMohhwWUx6as3jXjdoXcThxOUku0dR
zS7I7gWsekqmktMOOBrpYHg7XtikFFMNqjplzYEQqc7lyEOziG72oaFRcgU3Q8RYyvyKNJ0PxV/D
CR9wi2GoZkiTg3SHESLt7dm+pgjbGw0irkRWDGp//mtpj57QjWko7K/FLy8abvCR73uDKRg9cm5x
xPajo1b/VASV0HEFod/l63WU4gQML/1etmkIB7CLImBGmjRa9kQ1sD5m6o3ZS2vv3Bzvqs31tDfJ
yRhJbPVn5yKHVoW7pTtVgRQV2qMPHj2E+uijqrflVQo914Ua9SUhKdVei4nl0hOpei3V8nXmjM0M
6UY94fHcuCNca7l+XI8YsG9usKSY3kliQq/QGA21KgrzBcAM6MNACCSjD/kWIdBoyNrQVCQVaXcX
S0MJwQwDyfdYHYe2yFixgnGKgn0RgMNGmJES1WvSqlloc3b9wkGzuutSo6btMhpDM5xrFAZaGfkR
2HfosaVwl8kVhOHQpRP5Ew0CVxTV56Ku7QJVEeruyzC81pJa66m+DIfDHBqNen0ZWKgF9dKP43CB
nau+unelLN56Jy38V37K5X9aWvJt3nG9/O/hg/pDE//74Y91yP8e/dh4dCf/+zMeLf+TGT//1xcB
/jXqxwj23emoMXXOjVTQTrMkfnS76EcDVwooaRtEiZem0/W9vHyYfRyNWXho8p61G42tNu2uzfMX
xVQayxDJVnp6lW5F455bGInp+UgS5zF53LZDzQlJt8Ad4aq4a2horDjGfDu1l7Xd2l6tWduvrqzU
nUJGh9MqVHtVe107qP1c+6VaKH0aDuAq5IDmEdo2fPRorkXew49x5I57bXNzy/z/yafTVf5+Hm0N
EMC9IKW9pnRv2ZJySi9bOgi704HMrBqtxSskyFQVf1ImZa+5e7hz0tzrnL7boSwiI3j1swfXK6Ke
R6lXOYzi6WXVCxIWdQUhnbETOHj1uyCt/fgKkUriwJ8E3jl1lM5bLHRe5phcIgXZ9gwVKhIPS0I0
4apbU9+zRBiNncyLLYYo9RSbhLu6v/vm7LDz2pqcfi/OhrJgpPgthJQXowSP/TDLlSrliNCwqlM7
We3aN529g5Pm7pkHE7pVrAV0XUp7nZNB94EwGfgSbcyHWaJAOOO9rv5huyz7OLp0S1jqqR5I7uD0
POoXFVfpiU/CYLbFAajv617JBdyXMgPDbZxLzXvxK2TOttwdTsPr3oz8BaNFkXlvfUl5REt6Oby3
yycDvHF3KqQlAiX0CLdnc3i0c/K6KqL2bI+u6+018+bAVoaDHiOyWsloxPVLycIqmdkSkKs3cCtz
3vDgOA2nhALwDvNCNYhB9z2t+ZK5xL37/ZMP8r8ehjS0fQsiz9wbAesnqCB+zmYtjszyS/APNRxc
pbJkgiQc9P0prJFYMxWmVHE41LrSfElyB7xO963ZuXQsAgCG/K3bFv5osdm8PHV7KSingJZu9tHB
2QYEIul0DAEv8DD7flahmdE13aw2x+enUdIsN6gaqnnKUbTVwOnb0+Pmmz1p5MHCBqD/QA0Q7eVB
ywbChLHfC0uhrwBPABNlbqtp2GkXXjWWMpgUV2ldtCPalhI/P+vsD8BpYg22KGtqkaiLuUMKUC2l
P7ud1xLRE2Xyq2meabqJsrINW+Z2gZGC3QW2qJJKfWYVBNNeGKgVVkniraTfrzpLrLyLVsPXdNF6
m3TRWvCqi+LSwu5iyZJnxRlJglHyZb3uUQL08auq4QL68rwM5LcLfk4a+2ytGBH5e5lLyZ0HVpk1
D2aYpio7lX91sO+Nks/QS5gI0z9X7WKPSOmcBt0dqBcu2OJKLpYLFkHb+HqtKb2bc+wxu39+BvUh
M7gtqGdlF2ZJev1hNKZrBoC2Noj6G9LpNSVmKTbXn0CVwIEUJ3nxdNQFOQXYx5HcNtQQ3S2EeYyJ
2HIbQYrAa0Pag0M8T+OdW0G/Bt9CtKps5abMP+PLUS8Zjafgye6jP1t7kU83MuhaYeoqWZQNw64/
ISSSTIiOBP+sDG3shb3kAHW8f8xOtrboLSSzTe/s+at9qBfP7CTLkpFRTswfHgxQuOmDjaVuCajv
QkbLhE8nXnJhUaCspUYkN7CsyKigcZaJnlpbKzWKsl5aY79GYJexZHfKunh+lkHtDXPzX5CT2Wat
lQSykZQDEXKU6v7QH6Sbm1VUpF2cRb0pXQXQpnmXUZvbzMVcQSKbrHtFKIkQAAv9WFdHdIzkzOAi
rGQpnQygE4l9KZqMzLDcANtV2JXhZ5YF5CqBFRZ70wYmJBMIbk3H2ODQIIUS37p3kP2Qwu4OQgY+
tFAIQB0nY3rZp/Bqq5/0CDAh66xS7oUPL7sDr5KGhBziYLM3Z0ka7QhekvIrxz4OZaT2PGC5PVuW
YY4FZlrcvp1FZVtojsSbyM67M2ttVaBnOgwzMDhYp7Ja8wZEywIedMDT0ZclgxAKuuUgUZxbBojW
pVEP1KdKxg7eFYubC5tOU1UFmjt+ieTZzcs3NrhXy0+PSdinlYx1u3vUubyUsMy+xOihO20bir9T
f6hwq7keqNdnyqehRQZz+thKV3c7GZ3xAel2jI7tElxjq1Fwrd3pJE3y8ff4Z/q+obSjc+wnCwmY
lH/zcirkBoxhdTaICdHH1g+v9BI8N56E+2HWO5fLYyGTRQVKX60wGIjOy3PCz9kBN9YPOqZ7mPR+
YFMJmK1pKl5v0nBIMN1gJWbP/+xHQ18pZzMGEdFLZaykGJoQKSyqIa1tSSqD/aR3EFzmSxEbWOZQ
KUaV1NGaUdslL9MC5ZLFLaLhskqMc7b14Gcspzm7BjlypBzMCc5S1lm8Ysta3L8ItvMWRX29C9qG
8XpQ1Sj7ItSYTjiejAEJ+mWUlOhxbauuQmOadyMoOW0Bz9V1g+oVQsa2juymLul8zae8RB/ldx29
87ZolcEw6RJ82ZKVENcWOFuMyhTXSYwzNBqjAZzR9T7/ud72nnv3OHEVGjiOptO2SXI0kvLkXMNI
p7HKkPph6QCpFEepR6WdUtPM1+vs7ZztqMSfd37d6bRe/kw51DElFjOKn9urIjWj7otuKC6gzG7V
vLo8ZOq2SSsZXiGnMMpCrj1YJ0uN2U5zhm5nFCBgZxUBYee58FA5Ciw5VFS6FilasAFnESsUq4Ex
jCrKfv9Os4DxKe3PY9AQ8uM2Fqy7dM9DupxcTPwxNBpGfm+SuMY5nU4UI+hhp8P81XWPZanQ80t6
HV2vojmu+FCSWeHG+gFjMHjSnryNYcJwEg6grMg6ED577pLGpA1OZi8ns6WNafxR8yjXSJLaT73v
iT6E5zHlA7biuFWsKgVGemHV1r7g7v2+YLC94mCByuLaHxpzT41ZNXPzYffyYdcWDD3+NtAQYPQn
YWiBQsCEMRX8rzqdRSXjnde8dQ6AULjCpeYC5XfL8I1fJtrGnbjq/SfVKVmiFY8y3Uq7ulKtk/63
VbE3U7HmoYRbe/+k2ax00Mu8pg0bqidDuJUTRxn/zU4U6Kt1R0XeqDd46zOBrLVyAz6Vq4WSGNPX
haV24zPLG50AzWhajOdZXvPR2D187JXVheZlalUtizAdwxMBFMuJarc1ojdedJEAnWIzQypVab8h
/7m9Yrz4fkPlcWvPkWAU7twQ0KwWSe+TdhDVmfqP4VRpVPRTKaibPFayK4RqnjfIjz3HkEeambMX
1RTjw5pjZ1p1EQkyPqT7rUzugpmkgjJ6C9JfD+gipAtwLocydeEr4Lwk5ARZGfuWAtScO2H88gqM
CwGbwEJSviFAuMECVDhNm7EsM6YLQKaT6QXBPyvOZlufXQdm+lVtuqT0zjlIg/5dVYeyMtlQ6dV1
akOQdDLRc+Y986xZo5IyLWau1CgoY+EQujR6PQT+8W07X0Hv/2D3b5kcExmxsbHz7inNB0WUSaTO
Myh1M3sZ17ecXSeCE1rBmgexpdobJQH4aG+SLBT/cmIMHaFVL06E+9XYaFDxySRMxwm01nvMeTUM
jZrx8wE2nE8UTBYOkkmUiuYKbKHRGqqDfUFV0TlWnoUfqpNXL71nRKOw/qwlBN9k3RndYbBQoDUO
JUm2ORxGvQhjw2CF+4jR+XxBHIR0P6al1N7BbLMccavNOvoqfoVYJBtOYDqkC2QAtqeSiWjPuND/
rSp1nTets+ZTUZvXjtm0wyK68kJioQHxQ/0HXKI1i4EQ8QBmxgJxOIRZtWVfu3TnOW2+3Wt14CaW
5Wd0FRAekHRXYFCoA1V3c9F9wHV42NBDmkzDBTU7T5484Zo/iuQDrhKp4JMN+g+++Ba1odQQ5Hlo
57xqvmmeHOxKziPp18S/olUi7Cs1A2MfmqBVL8x6bISwyrg1DIN0fzoc7oikysHCyge2+M1Jpl22
DdemQTgkmRQFePkVR0Rs2UROqQ5n3j418JGvWwsijS3QCTXRnhY2hxBoyzdmIPwzbZdKZ1LrDGqd
bpXIiM7k2bPGY++L1xk8e/YEn92qVbq5RyUQD42fCv8g3AGpGjQO2QNx47FV4xUdUW/yOlaNeh11
xGexVeHl4dum9Q67PGpY1PEeltyPjzcfyqKDQ+gt7yd7Ze3RSLzGk80HDWvEB08qnc9ViQRH3fns
3Uc5qL/vWf1ou8Xo+4sXT6puWVP4pPWWpc2tk7MHu693TswFoZLfh1iEVu0wTQlw/QTnWP/GX72n
1r2JCZBKWcX7VPiJARgUn1LoWrCLCGBFWu8DwpGfXXwyjbVZJy3u6VDkjUZQfvDqTXOvc3L6+mD/
jMbo00qgynRRQcuYAYzCQwYdVchyJNyFh8syoSL1EVvJq65I9Rc0bkneloJsnTPzcNlnCBGhCq8W
O3v4J3QWHVi2sxhY3tkSsoNtFXL32kUa2mxL1+/fpDaocWjUtlZcMTGYUprt3rmyI9KSA0W0sEzY
OQOeGqNfKg7+v/gGfo+NwBuaQ7x9UAmyX50k3pGSIqIO9QogfmrcXUNeF2EBecvS6zJ+ndY0qtbc
NFYVAl1aaGIw24RRZLLbyPWNShqZzDai9KTsJrQ2k2UaTUMgtDegfxOvOjNgnHQ5RCs5+lNOa63i
cqhZhSsVTHYVNgT65VAbM5PwgSf+2TPPLiHd877Ay1qxAaPyZk3bB6cBC0TlTWjdtXyWPxT6kM+U
DC8Qc5in8BBKF5Gc/e8bQqlPZDFsNkSbILxMaEesGdoLslDD21/3L0Iob1xJW0w6VYi02xSVZaaf
qiYevEWByRuNZQtqb62uYI9sQpPkuT035miCV30uwnApFqrqXAzZzayyB3ydz5JQWF8lJ/SqL/TJ
moP8TbT5VqyezlgScerIH+dmVgvMuGjF3ruU8GN6MXE/GKkYE7vye+iqCW4w7xrKhAU3xTegdWwd
/hyoT42bfhXSTT/rnx30JM/XI6l1YG2DoqChVzgUuYsfNqn5lfXBcmURW2W9u1xZQrYr3UnofypD
cp9zWzuBwhLmYSvugeWtAyXJteSe95k3d2d0DT4qVh+41XkJzzRQihNNE123CazzmRYczLwu51vj
sQAd35/kcAICWJeYGGXjMoikMDZKZzJRT2RlzrCc2jYmUzt5vVusnA/IfbUzJtV5lvCVoHYeEONk
2RRV3U2FZK1UvF8QZ544u4TMOfBVi0hvC3MgvGcyuhTeL16UHR0frA1jnQrv58PdbseG+wdrO+WH
w3tv7iTYDeVzwO3kcPrnP1BkcCqoEJB7fvn/tsidJ9ucYXqZD3SinFr26s+PKxX6BThYgfZWw6gZ
RpLSHnSdNc3eviv66NEetvWtm4atXG5bnn2V7Et7VjYBRKgwX8uL3nPL7vbsw9sr1LhRaScC3IIa
Bce85cwG9lGrvqeTngkn4BnX4sazuHEs7voVV2VTXTbVZVNdNr1qmE4t4+v2Go6B6inGWS2/2jCB
cTzNNIMlh9i68gGOcK2JEBa0ty5qBe1z7T+Zrz5wmQtuOwqu56616eJLTXhglqpYdqXEDm5ZOubV
Ml1xTb+vf/kHfuctc2SH0bibQAWl6PlMRYcV3SJK34WvxiKzJ19uzC0q1lHO6a6vddtD9FM2iB8R
NoxEBQo8O6MMIIgf7pO6Ya5RlQw/i2EjPCgMwxFrjkI5DihS61Jr83VRjuuGEtVRGdIHBt1T1Sju
T5RX70qcxBvjZDhEL9pvwstMNM0gmE1Z/ZJ1yGMs2wu4nBY2iy/26GyOLqbrMpaqa1yl4hZ02rUO
tdILq6u3Dl82/YySgpqFjELwNMEwmEqABbe3EBi1jsGqQyPVAqMjGdNBxjmIueJUOmlCg4Yyg2Kl
YRqGn5DBfsJPm81fOqfNM7c2JRy3TrlQh60IymojRzWw+/ak+PqdPakOX4viV0ZawZTM5LiC+cPW
abOs5+yyNOScW58zNUfs1iv2JeyRJx4cvYzVniuWJR9rEWoPaFmyxb536GfU4xhKkEPwRoPbVQgd
0izkczQ753ahPYQlvikvgMvRiX9VWArv3ux19k92jpQ8oH5Zbzh5yqWVynvg5O0d7By2Xum8h26j
RzvHx809nfnErdg8PTtp/Ybs+mWjPgfBQ6aKs+uUuw//bO45q5QKL2hnlgmia56OIQE6ybJQAm7w
tRjg3E/PgVNYdKUxBx0Cw4htfhm47D11Sj37FA6vpLGK0hw82EuNrzJ/iFWopUpARTWEXoroSE9C
kUKxM7cUttomiC9KSvQrf+BHsbeBjoprOdZO5yocrmCS5jF7lXgbVyJXCecCoXhiyCBj75ntKE+F
p4x1dMrI+/65k6/EzsIDz13vvY8+bF5UEce3ruPywLcaK6YiYMO2Ssn1WCmVeiGxmvSBawcOVWlw
tTfvbMfUL5r2Ig81LtMq0XL2C7i6c3sJZ0c5rzTXtLVdPc4Fs3exHJTp9bNwtnw4WTBGDy9UrKoC
gFdm4IvE2c47oafmvUMiNq5Ys6CDO9ppc9lMTFlB41nmpzA5DHbqt+u7iRYVpb1gZ4P37skvB2yS
bHc2uORlV/0zxOOOTrAJEa0R1v67PZxcjMhMdLViFVvOggq7h82dEy2PhfOGxVVOmr82T86UONau
gpOAvYDNV6CU8vusVm1ZhTgUn3i2Kfi6lBSlji1qL7cP7yNzCsIlUAjDQRi3CD1sTGPZ+AWa4OYI
VKJ3weLwtw00IaQkbEt5GNVN46wrgHcl26jHgj24CCLyztRJuwaDITje9odr+aJg+wN6syoLT8U4
hIl8p/SjMIVbDaYe8wWzUnCoutLQarp3Hn7+zz65/x/cwOEC6Nu/o15/WP/p0aM5/n/Ud/j/eVR/
/ODhg7/UGz82Hv70F+/Rt+/K7PP/3P/P7Pyzm+pv+o6bzz+Vr9/N/5/xzJl/+AH7Zu+40fw/eoz5
f3w3/3fP3XP33D13z91z99w9d8/dc/fcPXfP3XP33D13z91z99w9d8/dc/fcPV/3/A9NyojNABgB
AA==

------=_NextPart_000_000E_01C0757D.939744E0--