[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
20030610: TASC Remap2 on Linux (cont.)
- Subject: 20030610: TASC Remap2 on Linux (cont.)
- Date: Tue, 10 Jun 2003 16:25:04 -0600
>From: "Craddock, Mary Ellen" <address@hidden>
>Organization: Northrop Grumman Information Technology, TASC
>Keywords: 200306091217.h59CGxLd005776 McIDAS XRD remap2
Hi Mary Ellen,
>Your last email makes a lot of good points and I should have been
>clearer from the start. In the end I want MY version of remap2.pgm to run on
>the linux box.
OK, now I understand.
>My problem running my version I believe has to do with its
>compilation. When I compile remap2.pgm on the linux box, remap2.k is
>significantly smaller than the executables of this code created on our IBM
>AIX and our DEC OSF1 machines.
The executables on PC OSes (e.g., Linux, FreeBSD, and Solaris x86) tend
to be smaller than those on other supported systems (e.g., OSF/1, IRIX,
AIX, Solaris SPARC), so I wouldn't take this to mean anything significant.
>I thought if I could get the McIDAS XRD
>version of remap2.pgm working, then I could simply replace that source file
>with MY version, recompile and have success. Unfortunately, my plan has not
>been successful.
Good thought though :-)
>I have attached my version of remap2.pgm which calls a c function cloudp.c
>(also included) as well as the makefile script (comp_remap2). Also included
>is sza.c which the program needs. As I said earlier, the compile appears to
>run successfully based on the stdout/stderr messages. However, when you try
>to launch the executable nothing happens. In our version of remap2.pgm you
>only need to have a sarea predefined. The darea will be created by
>remap2.pgm with the appropriate projection and navigation.
OK.
>So, to run after compiling try:
>
>REMAP2 1000 2000 BAND=1 2 3 4 6 LAT=25 50 LON=65 125, where AREA1000 is a
>GOES 12 raw image and AREA2000 does not previously exist and will be
>created.
Will do.
>If you could try compiling and running on your linux box I'd appreciate. I
>feel like there is just something off with the compile script.
OK, done. I brought your version of remap2.pgm, cloudp.c, and sza.c to
one of our RedHat 7.3 Linux systems and tried to build the remap2.k
executable using using GNU gcc (version 2.96) and g77 (version
0.5.26). I found a number of problems with the code in remap2.pgm and
cloudp.c that were either annoying warnings or outright bugs that had
to be fixed before I could get a successful build.
I then ran remap2.k more-or-less as you advised above (the AREA numbers
had to be changed (to protect the innocent ;-)) and experienced
the same thing that you did: remap2.k exited very quickly. At
this point, I decided to troubleshoot your code.
The basic problem turned out to be an improper typing of the McIDAS
routine mccmddll:
original code in remap2.pgm:
INTEGER status, mccmdint
DOUBLE PRECISION mccmddll, LAT1, LAT2, LON1, LON2, LATSPACE,
+ LONSPACE,
+ Lat_Space_Deg, Lon_Space_Deg, Number_Elements, Number_lines
corrected code:
INTEGER status
INTEGER mccmdint, mccmddll ! <<<<< UPC mod 20030610 >>>>>
DOUBLE PRECISION LAT1, LAT2, LON1, LON2, LATSPACE, LONSPACE,
+ Lat_Space_Deg, Lon_Space_Deg, Number_Elements, Number_lines
INTEGER NAV(128)
The change I had to make to get things to compile and link in the
first place was:
original code:
call sdest('LAT1=',LAT1)
corrected code:
INTEGER NAV(128)
character*12 cff ! <<<<< UPC add 20030610 >>>>>
...
call sdest('LAT1='//cff(lonspace,2),0)
Explanation:
Declaring mccmddll to be of type double precision was causing its
return value to be a negative number. The first use of mccmddll
to get the SOUTH LATITUDE:
status = mccmddll('LAT',1,'SOUTH LATITUDE',0.0d0,
+ -90.0d0,90.0d0,LAT1)
C call sdest('status=',status)
C call sdest('LAT1=',LAT1)
if (status .lt. -90) return
was then seeing LAT1 as negative and so the program was executing
the return statement.
Also, I made one small change in cloudp.c. MinReflec and MaxReflec
were declared as 'extern double' and then initialized, and
initialization of a variable must be done where it is originally
declared. Since these variables are not declared in sza.c, I simply
removed the 'extern' declaration:
double MinReflec=100.0, MaxReflec=0.0; /* <<<<< UPC mod 20030610 >>>>> */
Finally, I decided to modify the top part of remap2.pgm to be more
descriptive when status returns from command line parsing functions
indicated errors.
After making all of the changes, I was able to successfully build,
link, and then run your remap2 program on a multibanded GOES-East image
with no errors indicated:
REMAP2_TASC 1233 1234 BAND=1 2 3 4 6 LAT=25 50 LON=65 125 DEV=CCC
REMAP2_TASC* Input AREA = 1233
REMAP2_TASC* Output AREA = 1234
REMAP2_TASC* Spline Size = 5
REMAP2_TASC* South Lat = 25.00
REMAP2_TASC* North Lat = 50.00
REMAP2_TASC* East Lon = 65.00
REMAP2_TASC* West Lon = 125.00
REMAP2_TASC* LAT spacing= 4.00
REMAP2_TASC* LON spacing= 4.00
REMAP2_TASC* CALL MAPPER
REMAP2_TASC* IN UINIT
REMAP2_TASC* CALL NVPREP
REMAP2_TASC* IFLIP is set to 1
REMAP2_TASC* CALL NVXINI
REMAP - TRANFORMATIONS COMPLETE..BEGIN DATA MOVE
--REMAP DONE
end here!
And, the listing of the output image data looked reasonable:
IMGLIST MYDATA/IMAGES.1234 FORM=EXP
Image file directory listing for:MYDATA/IMAGES
Pos Satellite/ Date Time Center Res (km) Image_Size
sensor Lat Lon Lat Lon
--- ------------- ------------ -------- ---- ---- ----- ----- ------------
1234 G-12 IMG 9 JUN 03160 21:40:00 38 95
Band: 1 0.65 um Visible - Cloud Cover 4.00 3.18 695 x 1668
Band: 2 3.9 um Night clouds; shortwave window 4.00 3.18 695 x 1668
Band: 3 6.5 um Upper level water vapor 4.00 3.18 695 x 1668
Band: 4 10.7 um Surface temp; longwave window 4.00 3.18 695 x 1668
Band: 6 13.3 um CO2; cloud height determination 4.00 3.18 695 x 1668
proj: 0 created: 2003161 213117 memo: RT GVAR
type:GVAR cal type:RAW
offsets: data= 3328 navigation= 256 calibration= 2816 auxiliary= 0
doc length: 0 cal length: 0 lev length: 8 PREFIX= 8
valcod: 0 zcor: 0 avg-smp: N
start yyddd: 2003160 start time:214013 start scan: 360
lcor: 1 ecor: 1 bytes per pixel: 2 ss: 78
Resolution Factors (base=1): Line= 1.0 Element= 1.0
IMGLIST: done
However:
- display of BAND=1 data is black
- display of BAND=2 looks sorta reasonable
- display of BAND=3 is shows one value only
- display of BAND=4 looks washed out
- display of BAND=6 has a weird strip diagonally across it
I can't explain this.
I have included the modified source code for these routines below.
>Thanks!
No worries.
Tom
---
Content-Type: application/octet-stream; name="remap2_tasc.pgm"
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename="remap2_tasc.pgm"
Content-MD5: Mp+i4VSjuCSH64Y123z3Pg==
ICAgICAgU1VCUk9VVElORSBNQUlOMAoKQyAqKiogTWNJREFTIFJldmlzaW9uIEhpc3Rvcnkg
KioqCkMgMSBSRU1BUC5QR00gMTktTWFyLTkwLDE2OjE2OjMwLGBTU0VDJyBQQy1NY0lEQVMg
dmVyIDUuMDAKQyAyIFJFTUFQLlBHTSA1LVNlcC05MCwxMzoxODoxMCxgSlInIGNhbiBub3cg
cmVtYXAgR1ZBUjsgbmV3IG1heCBuYXYgY29kIHNpemUKQyAzIFJFTUFQLlBHTSAyOS1PY3Qt
OTAsMTY6NTk6MDIsYFNNRycgZmlyc3QgcmVsZWFzZSB0byBDT01tb24KQyA0IFJFTUFQLlBH
TSAxOS1Ob3YtOTAsMTY6MzU6NDAsYEpTUCcgdSBhZGRlZCBjYWxsIHRvIFNUQU1QIGZvciBh
dWRpdCB0cmFpbApDIDUgUkVNQVAuUEdNIDE1LU1heS05MSwxMzowNDozOCxgREFWRVMnIEFk
ZGVkIE1FUkdFPSBrZXl3b3JkCkMgNiBSRU1BUC5QR00gMTUtTWF5LTkxLDEzOjA0OjM4LGBF
UklDTicgUmVsZWFzZWQKQyA3IFJFTUFQLlBHTSAzMS1KdWwtOTIsMTA6MDg6MzAsYEJFVEhB
JyBVcGRhdGVkIGhlbHAKQyA4IFJFTUFQLlBHTSAzMS1KdWwtOTIsMTQ6MzY6MzgsYFVTRVIn
IFJlbGVhc2VkCkMgOSBSRU1BUC5QR00gMTQtT2N0LTkyLDEwOjQ4OjI0LGBCRVRIQScgVXBk
YXRlZCBoZWxwCkMgMTAgUkVNQVAuUEdNIDIwLU9jdC05MiwxMTo0MjoyOCxgVVNFUicgUmVs
ZWFzZWQKQyAxMSBSRU1BUC5QR00gNS1Ob3YtOTIsMTM6NDU6MTgsYEtFTkInIG1vZCB0byBo
ZWxwIGZvciBTTU89IGtleXdvcmQgKDI5ODQpCkMgMTIgUkVNQVAuUEdNIDIzLU5vdi05Miw4
OjEwOjQ2LGBVU0VSJyBSZWxlYXNlZApDIDEzIFJFTUFQLlBHTSAyNC1NYXItOTMsMTg6MzM6
MDQsYEJBUlJZUicgVXBkYXRlZCBTTU9PVEg9IGluIEhFTFAgc2VjdGlvbgpDIDE0IFJFTUFQ
LlBHTSAyNS1NYXItOTMsMTY6MDI6MDYsYFVTRVInIFJlbGVhc2VkCkMKQyBSRU1BUDIuUEdN
IC0gMiBCWVRFIFJFTUFQUEVSLCBNT0RJRklFRCBCWSBFRCBXUklHSFQgU1NFQyA4Lzk0CkMK
QyAxNSBSRU1BUDIuUEdNIDI5LUZlYi0wMCwgJ1NMRUVUJyBha2EgbWVsIG1vZGlmaWVkIG5h
diB0byBmaXggY291bnR5IG1hcCBwcm9ibGVtCkMgUkpBIDUvMjIvMjAwMwpDCkMgKioqIE1j
SURBUyBSZXZpc2lvbiBIaXN0b3J5ICoqKgpDICAgVEhJUyBJUyBTU0VDIFBST1BSSUVUQVJZ
IFNPRlRXQVJFIC0gSVRTIFVTRSBJUyBSRVNUUklDVEVELgpDIFJFTUFQIFNBTlRFSyAwOTgz
OiBSRU1BUFBFUgpDID8gUkVNQVAgLS0gUmVtYXBzIGFuIGFyZWEgaW50byBhIGRpZmZlcmVu
dCBwcm9qZWN0aW9uCkMgPyAgIFJFTUFQIHNhcmVhIGRhcmVhIHNwbGluZSA8a2V5d29yZHM+
CkMgPyBQYXJhbWV0ZXJzOgpDID8gICBzYXJlYSB8IHNvdXJjZSBhcmVhIG51bWJlciB0byBy
ZW1hcApDID8gICBkYXJlYSB8IGRlc3RpbmF0aW9uIGFyZWEgbnVtYmVyIGZvciByZW1hcHBl
ZCBpbWFnZTsgZGFyZWEKQyA/ICAgICAgICAgICBjb250YWlucyB0aGUgcHJvamVjdGlvbiB0
aGF0IHNhcmVhIGlzIHJlbWFwcGVkIGludG8KQyA/ICAgc3BsaW5lIHwgc3BsaW5lIGZ1bmN0
aW9uLCBhcmVhIHBpeGVscyAoZGVmPTIwKQpDID8gS2V5d29yZHM6CkMgPyAgIEJBTkQ9IHwg
YmFuZCBudW1iZXIgKGRlZj1sb3dlc3QgYmFuZCBudW1iZXIpCkMgPyAgIE1FUkdFPVlFUyB8
IG1lcmdlIGRhdGEgaW4gc2FyZWEgd2l0aCB3aGF0IGlzIGluIGRhcmVhCkMgPyAgICAgICAg
PU5PICB8IG92ZXJ3cml0ZSBkYXRhIGluIGRhcmVhIChkZWYpCkMgPyAgIFNNT09USD1saW1i
IGRhdGEKQyA/ICAgICAgICAgIGxpbWIgIHwgTk8vWUVTIGZvciBsaW1iIHNtb290aGluZyAo
ZGVmPU5PKQpDID8gICAgICAgICAgZGF0YSAgfCBOTy9ZRVMgZm9yIGRhdGEgc21vb3RoaW5n
IChkZWY9Tk8pCkMgPyBSZW1hcmtzOgpDID8gICBUaGUgc2FyZWEgYW5kIGRhcmVhIG11c3Qg
Y29udGFpbiBuYXZpZ2F0aW9uIGJlZm9yZSB5b3UgY2FuIHJlbWFwCkMgPyAgIGltYWdlcy4g
IERpc3BsYXkgdGhlIG5ldyBpbWFnZSB3aXRoIHRoZSBjb21tYW5kIERGLgpDID8gLS0tLS0t
LS0tLQoKICAgICAgSU5URUdFUiAgICAgIEtFWTEgICwKICAgICAuICAgICAgICAgICAgIEtF
WTIgICwKICAgICAuICAgICAgICAgICAgIElTUFNMICwKICAgICAuICAgICAgICAgICAgIElT
UFNFICwKICAgICAuICAgICAgICAgICAgIElQUCAgICwKICAgICAuICAgICAgICAgICAgIElE
SVIoIDY0ICkKICAgIAoKICAgICAgSU5URUdFUiAgc3RhdHVzCiAgICAgIElOVEVHRVIgIG1j
Y21kaW50LCBtY2NtZGRsbCAgICAgICAgICAgISA8PDw8PCBVUEMgbW9kIDIwMDMwNjEwID4+
Pj4+CiAgICAgIERPVUJMRSBQUkVDSVNJT04gTEFUMSwgTEFUMiwgTE9OMSwgTE9OMiwgTEFU
U1BBQ0UsIExPTlNQQUNFLAogICAgICsgICAgTGF0X1NwYWNlX0RlZywgTG9uX1NwYWNlX0Rl
ZywgTnVtYmVyX0VsZW1lbnRzLCBOdW1iZXJfbGluZXMKICAgICAgSU5URUdFUiBOQVYoMTI4
KQoKICAgICAgY2hhcmFjdGVyKjEyIGNmZiAgICAgICAgICAgICAgICAgICAgICAhIDw8PDw8
IFVQQyBhZGQgMjAwMzA2MTAgPj4+Pj4KCmMgICAgICBLRVkxICA9IElQUCgxLDApCmMgICAg
ICBLRVkyICA9IElQUCgyLDApCmMgICAgICBJU1BTTCA9IElQUCgzLDIwKQpjIG1vZGlmaWVk
IGp1bmUgNSwgMTk5OCByamErCmMgQWRkIGtleSB3b3JkcwoKICAgICAgc3RhdHVzID0gbWNj
bWRpbnQoJyAnLDEsJ0lOUFVUIEFSRUEgTlVNQkVSJywwLDEsOTk5OSxrZXkxKQogICAgICBp
ZiAoc3RhdHVzIC5sdC4gMCkgdGhlbiAgICAgICAgICAgICAgICEgPDw8PDwgVVBDIG1vZCAy
MDAzMDYxMCA+Pj4+PgogICAgICAgIGNhbGwgZWRlc3QoICcgbWNjbWRpbnQgZm9yIDFzdCBw
b3NpdGlvbmFsIHBhcmFtZXRlciByZXR1cm5zICcsCiAgICAgJiAgICAgICAgICAgICAgIHN0
YXR1cyApCiAgICAgICAgcmV0dXJuCiAgICAgIGVuZGlmCiAgICAgIGNhbGwgZGRlc3QoICdJ
bnB1dCBBUkVBID0gJywga2V5MSApCiAgICAgIHN0YXR1cyA9IG1jY21kaW50KCcgJywyLCdP
VVRQVVQgQVJFQSBOVU1CRVInLDAsMSw5OTk5LGtleTIpCiAgICAgIGlmIChzdGF0dXMgLmx0
LiAwKSB0aGVuICAgICAgICAgICAgICAgISA8PDw8PCBVUEMgbW9kIDIwMDMwNjEwID4+Pj4+
CiAgICAgICAgY2FsbCBlZGVzdCggJyBtY2NtZGludCBmb3IgMm5kIHBvc2l0aW9uYWwgcGFy
YW1ldGVyIHJldHVybnMgJywKICAgICAmICAgICAgICAgICAgICAgc3RhdHVzICkKICAgICAg
ICByZXR1cm4KICAgICAgZW5kaWYKICAgICAgY2FsbCBkZGVzdCggJ091dHB1dCBBUkVBID0g
Jywga2V5MiApCgogICAgICBzdGF0dXMgPSBtY2NtZGludCgnICcsMywnU1BMSU5FIFNJWkUn
LDUsMywxMDAsaXNwc2wpCiAgICAgIGlmIChzdGF0dXMgLmx0LiAwKSB0aGVuICAgICAgICAg
ICAgICAgISA8PDw8PCBVUEMgbW9kIDIwMDMwNjEwID4+Pj4+CiAgICAgICAgY2FsbCBlZGVz
dCggJyBtY2NtZGludCBmb3IgM25kIHBvc2l0aW9uYWwgcGFyYW1ldGVyIHJldHVybnMgJywK
ICAgICAmICAgICAgICAgICAgICAgc3RhdHVzICkKICAgICAgICByZXR1cm4KICAgICAgZW5k
aWYKICAgICAgY2FsbCBkZGVzdCggJ1NwbGluZSBTaXplID0gJywgaXNwc2wgKQogICAgICAg
CiAgICAgIHN0YXR1cyA9IG1jY21kZGxsKCdMQVQnLDEsJ1NPVVRIIExBVElUVURFJywwLjBk
MCwKICAgICArICAgICAtOTAuMGQwLDkwLjBkMCxMQVQxKQogICAgICBpZiAoc3RhdHVzIC5s
dC4gMCkgdGhlbiAgICAgICAgICAgICAhIDw8PDw8IFVQQyBtb2QgMjAwMzA2MTAgPj4+Pj4K
ICAgICAgICBjYWxsIGVkZXN0KCAnbWNjbWRkbGwgZm9yIExBVCAxIHJldHVybnMgJywgc3Rh
dHVzICkKICAgICAgICByZXR1cm4KICAgICAgZW5kaWYKICAgICAgY2FsbCBkZGVzdCgnU291
dGggTGF0ID0nLy9jZmYoTEFUMSwyKSwwKSAgICAhIDw8PDw8IFVQQyBtb2QgMjAwMzA2MTAg
Pj4+Pj4KCiAgICAgIHN0YXR1cyA9IG1jY21kZGxsKCdMQVQnLDIsJ05PUlRIIExBVElUVURF
JywwLjBkMCwKICAgICArICAgICAgTEFUMSw5MC4wZDAsTEFUMikKICAgICAgaWYgKHN0YXR1
cyAubHQuIDApIHRoZW4gICAgICAgICAgICAgISA8PDw8PCBVUEMgbW9kIDIwMDMwNjEwID4+
Pj4+CiAgICAgICAgY2FsbCBlZGVzdCggJ21jY21kZGxsIGZvciBMQVQgMiByZXR1cm5zICcs
IHN0YXR1cyApCiAgICAgICAgcmV0dXJuCiAgICAgIGVuZGlmCiAgICAgIGNhbGwgZGRlc3Qo
J05vcnRoIExhdCA9Jy8vY2ZmKExBVDIsMiksMCkgICAgISA8PDw8PCBVUEMgbW9kIDIwMDMw
NjEwID4+Pj4+CgogICAgICBzdGF0dXMgPSBtY2NtZGRsbCgnTE9OJywxLCdFQVNUIExPTkdJ
VFVERScsMC4wZDAsCiAgICAgKyAgICAgIC0xODAuMGQwLDE4MC4wZDAsTE9OMSkKICAgICAg
aWYgKHN0YXR1cyAubHQuIDApIHRoZW4gICAgICAgICAgICAgISA8PDw8PCBVUEMgbW9kIDIw
MDMwNjEwID4+Pj4+CiAgICAgICAgY2FsbCBlZGVzdCggJ21jY21kZGxsIGZvciBMT04gMSBy
ZXR1cm5zICcsIHN0YXR1cyApCiAgICAgICAgcmV0dXJuIAogICAgICBlbmRpZgogICAgICBj
YWxsIGRkZXN0KCdFYXN0IExvbiA9Jy8vY2ZmKExPTjEsMiksMCkgICAgISA8PDw8PCBVUEMg
bW9kIDIwMDMwNjEwID4+Pj4+CgogICAgICBzdGF0dXMgPSBtY2NtZGRsbCgnTE9OJywyLCdX
RVNUIExPTkdJVFVERScsMC4wZDAsIAogICAgICsgICAgICBMT04xLDE4MC4wZDAsTE9OMikg
CiAgICAgIGlmIChzdGF0dXMgLmx0LiAwKSB0aGVuICAgICAgICAgICAgICEgPDw8PDwgVVBD
IG1vZCAyMDAzMDYxMCA+Pj4+PgogICAgICAgIGNhbGwgZWRlc3QoICdtY2NtZGRsbCBmb3Ig
TE9OIDIgcmV0dXJucyAnLCBzdGF0dXMgKQogICAgICAgIHJldHVybiAKICAgICAgZW5kaWYK
ICAgICAgY2FsbCBkZGVzdCgnV2VzdCBMb24gPScvL2NmZihMT04yLDIpLDApICAgICEgPDw8
PDwgVVBDIG1vZCAyMDAzMDYxMCA+Pj4+PgoKICAgICAgc3RhdHVzID0gbWNjbWRkYmwoJ1NQ
QS5DSU5HJywxLCdMQVRJVFVERSBTUEFDSU5HJywKICAgICArICAgICAgNC4wZDAsNC4wZDAs
MTYuMGQwLExBVFNQQUNFKQogICAgICBpZiAoc3RhdHVzIC5sdC4gMCkgdGhlbiAgICAgICAg
ICAgICAhIDw8PDw8IFVQQyBtb2QgMjAwMzA2MTAgPj4+Pj4KICAgICAgICBjYWxsIGVkZXN0
KCAnbWNjbWRkbGwgZm9yIExBVCBzcGFjaW5nIHJldHVybnMgJywgc3RhdHVzICkKICAgICAg
ICByZXR1cm4KICAgICAgZW5kaWYKICAgICAgY2FsbCBkZGVzdCgnTEFUIHNwYWNpbmc9Jy8v
Y2ZmKGxhdHNwYWNlLDIpLDApICAgICEgPDw8PDwgVVBDIG1vZCAyMDAzMDYxMCA+Pj4+PgoK
ICAgICAgc3RhdHVzID0gbWNjbWRkYmwoJ1NQQS5DSU5HJywyLCdMT05HSVRVREUgU1BBQ0lO
RycsCiAgICAgKyAgICAgIExBVFNQQUNFLDQuMGQwLDE2LjBkMCxMT05TUEFDRSkKICAgICAg
aWYgKHN0YXR1cyAubHQuIDApIHRoZW4gICAgICAgICAgICAgISA8PDw8PCBVUEMgbW9kIDIw
MDMwNjEwID4+Pj4+CiAgICAgICAgY2FsbCBlZGVzdCggJ21jY21kZGxsIGZvciBMT04gc3Bh
Y2luZyByZXR1cm5zICcsIHN0YXR1cyApCiAgICAgICAgcmV0dXJuCiAgICAgIGVuZGlmCiAg
ICAgIGNhbGwgZGRlc3QoJ0xPTiBzcGFjaW5nPScvL2NmZihsb25zcGFjZSwyKSwwKSAgICAh
IDw8PDw8IFVQQyBtb2QgMjAwMzA2MTAgPj4+Pj4KYyByamEtCgogICAgICBJU1BTRSA9IElT
UFNMCgpjLS0tIENvbXB1dGUgbnVtYmVyIG9mIGxpbmVzIGFuZCBlbGVtZW50cyBpbiBzdWJz
ZXR0ZWQgcmVnaW9uCmMgICAgc3BhY2luZyByZXNldCB0byBkZWdyZWVzIHJqYSsKICAgIAog
ICAgICBMYXRfU3BhY2VfRGVnID0gTEFUU1BBQ0UgLyAxMTEuMTBkMCAKICAgICAgTG9uX1Nw
YWNlX0RlZyA9IExPTlNQQUNFIC8gMTExLjEwZDAgCiAgICAgIE51bWJlcl9MaW5lcyA9ICgg
KExBVDIgLSBMQVQxKSAvIExhdF9TcGFjZV9EZWcgKSArIDEKICAgICAgTnVtYmVyX0VsZW1l
bnRzID0gKCAoTE9OMiAtIExPTjEpIC8gTG9uX1NwYWNlX0RlZyApICsgMQoKQy0tLSAgUkVT
RVQgVEhFIE9VVFBVVCBBUkVBJ1MgUFJFRklYIElORk9STUFUSU9OIE5PVyBCRUZPUkUgQU5Z
IEtJTkQKQyAgICAgT0YgUkVBRCBJUyBQRVJGT1JNRUQgT04gVEhFIEFSRUEgKEVEVykKYyAg
ICAgIENBTEwgUkVBREQgKCBLRVkyLCBJRElSICkKYy0tLSBSZWFkIGlucHV0CiAgICAgIENB
TEwgUkVBREQgKCBLRVkxLCBJRElSICkKICAgICAgSURJUig2KSA9IDEKICAgICAgSURJUig3
KSA9IDEKICAgICAgSURJUig5KSA9IE51bWJlcl9MaW5lcyAKICAgICAgSURJUigxMCkgPSBO
dW1iZXJfRWxlbWVudHMKICAgICAgSURJUigxMikgPSAxIAogICAgICBJRElSKDEzKSA9IDEK
ICAgICAgSURJUigxNSkgPSAwCiAgICAgIElESVIoMzYpID0gMAogICAgICBJRElSKDQ5KSA9
IDAKICAgICAgSURJUig1MCkgPSAwCiAgICAgIElESVIoNTEpID0gMApDICAgICBUSElTIElT
IEFOIElOVkFMSUQgQ0FMSUJSQVRJT04gVFlQRS4gWU9VIE1VU1QgVVNFIFRIRSBTVSBVVElM
SVRZIFRPIERJU1BMQVkgSU1BR0UgKEpVTksgQU5EIFJFRikKYyAgICAgIElESVIoNTIpID0g
TElUKCdUQVNDJykKICAgICAgSURJUig1MikgPSBMSVQoJ0dWQVInKQpjIHJqYS0KICAgICAK
YyAgICAgIGNhbGwgc2Rlc3QoJ2lkaXIoOSk9ICcgLCBpZGlyKDkpKQpjICAgICAgY2FsbCBz
ZGVzdCgnaWRpcigxNCk9ICcgLCBpZGlyKDE0KSkKYyAgICAgIGNhbGwgc2Rlc3QoJ2lkaXIo
MTEpPSAnICwgaWRpcigxMSkpCmMgICAgICBjYWxsIHNkZXN0KCdpZGlyKDEyKT0gJyAsIGlk
aXIoMTIpKQpjICAgICAgY2FsbCBzZGVzdCgnaWRpcigxMCk9ICcgLCBpZGlyKDEwKSkKCmMg
ICAgICBDQUxMIFdSSVREICggS0VZMiwgSURJUiApCmMgICAgIGNoYW5nZSB0byBtYWtlIG91
dHB1dCBhcmVhIHJqYSsKICAgICAgQ0FMTCBtYWthcmEgKCBLRVkyLCBJRElSICkKCmMgRklM
TCBJTiBOQVYgCiAgICAgIGtsYXRzcGFjZSA9IGlkbmludChMYXRfU3BhY2VfRGVnKjEwMDAw
KQogICAgICBrbG9uc3BhY2UgPSBpZG5pbnQoTG9uX1NwYWNlX0RlZyoxMDAwMCkKICAgICAg
TkFWKDEpID0gTElUKCdSRUNUJykgCiAgICAgIE5BVigyKSA9IE51bWJlcl9MaW5lcy8yIAog
ICAgICBOQVYoMykgPSBpZG5pbnQoTEFUMioxMDAwMCkgLSBrbGF0c3BhY2UqKG5hdigyKS0x
KQogICAgICBOQVYoNCkgPSBOdW1iZXJfRWxlbWVudHMvMgogICAgICBOQVYoNSkgPSBpZG5p
bnQoTE9OMioxMDAwMCkgLSBrbG9uc3BhY2UqKG5hdig0KS0xKSAKICAgICAgTkFWKDYpID0g
a2xhdHNwYWNlICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgTkFWKDcpID0ga2xvbnNw
YWNlICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICBOQVYoOCkgPSA2Mzc4Mzg4
ICAhIHJhZGl1cyBvZiBlYXJ0aAogICAgICBOQVYoOSkgPSA4MTk5OSAgICAhIGVjY2VudHJp
Y2l0eSBvZiBlYXJ0aAogICAgICBOQVYoMTApID0gMCAKICAgICAgTkFWKDExKSA9IDAgCiAg
ICAgIE5BVigyMSkgPSBJRElSKDYpIAogICAgICBOQVYoMjIpID0gSURJUig3KSAKICAgICAg
TkFWKDIzKSA9IElESVIoOSkgCiAgICAgIE5BVigyNCkgPSBJRElSKDEwKSAKICAgIAogICAg
ICBjYWxsIGFyYXB1dChLRVkyLElESVIoMzUpLDUxMixOQVYpCiAgICAgIApjIHJqYS0KCgog
ICAgICBDQUxMIERERVNUKCdDQUxMIE1BUFBFUicsMCkKCiAgICAgIENBTEwgTUFQUEVSKElT
UFNMLElTUFNFKQoKICAgICAgQ0FMTCBTVEFNUChLRVkyKQogICAgICB3cml0ZSgqLCopJ2Vu
ZCBoZXJlIScKICAgICAgUkVUVVJOCiAgICAgIEVORAoKICAgICAgU1VCUk9VVElORSBVSU5J
VChJQkFEKQogICAgICBJTVBMSUNJVCBJTlRFR0VSIChTLEQpCkMgICAgIElOQ0xVREUgJ01Y
Q0RTWi5JTkMnCkM9PT09PT09PT09PT09PT09PT09PT09PT09PT0gRElNWENEU1ogPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0gICAgIAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKQyAkICAg
KEpSKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgCkMgJCAgIFRISVMgSU5DTFVERSBGSUxFIElTIFBBUlQgT0YgVEhFIE5B
VklHQVRJT04gU1VCU1lTVEVNICAgICAgICAgICAgIApDICQgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKQyAk
ICAgREVTQ1JJUFRJT046ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgCkMgJCAgICAgIFRISVMgSVMgVEhFIFZBTFVFIE9GIExBUkdFU1Qg
TkFWSUdBVElPTiBDT0RJQ0lMIFNJWkUgQUxMT1dFRCAgIApDICQgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK
QyAkJCAgRElNWENEU1ogPSBJTkNMVURFLCBOQVZJR0FUSU9OICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApDIERFRklOSVRJT05TIE9G
IFBBUkFNRVRFUlMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAKQyBNWENEU1ogICA6IExBUkdFU1QgQUxMT1dFRCBDT0RJQ0lMIFNJWkUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICBJTlRFR0VS
ICAgICAgTVhDRFNaICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgIFBBUkFNRVRFUiAoTVhDRFNaID0gNSox
MjgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAKQz09PT09PT09PT09PT09PT09PT09PT09PT0gRU5EIERJTVhDRFNaID09PT09
PT09PT09PT09PT09PT09PT09PT09PSAgICAgCiAgICAgIElOVEVHRVIgICAgIE5BVlNJWgog
ICAgICBDSEFSQUNURVIqNCBDTElUCiAgICAgIENPTU1PTi9QQVJBTVMvU0FOLFNOTCxTTkUs
U0xCLFNSRUVMLFNEQVksU1RJTUUsU0xJTixTRUxFLAogICAgIDFTSU5DTCxTSU5DRSxTR0Uo
OCksREFOLEROTCxETkUsRExCLERSRUVMLEREQVksRFRJTUUsRExJTixERUxFLAogICAgIDJE
SU5DTCxESU5DRSxER0UoOCksU1BTTCxTUFNFCiAgICAgIERJTUVOU0lPTiBESVIxKDY0KSxE
SVIyKDY0KSxJUEFSTTEoTVhDRFNaKSxJUEFSTTIoTVhDRFNaKQogICAgICAgIENBTEwgRERF
U1QoJ0lOIFVJTklUJywwKQoKICAgICAgQ0FMTCBSRUFERChTQU4sRElSMSkKICAgICAgQ0FM
TCBSRUFERChEQU4sRElSMikKCiAgICAgIE5BVlNJWiA9IERJUjEoNjMpIC0gRElSMSgzNSkK
ICAgICAgSUYgKERJUjEoNjMpLkVRLjApIE5BVlNJWiA9IERJUjEoMzQpIC0gRElSMSgzNSkK
ICAgICAgQ0FMTCBBUkFHRVQoU0FOLERJUjEoMzUpLE5BVlNJWixJUEFSTTEpCiAgICAgIE5B
VlNJWiA9IERJUjIoNjMpIC0gRElSMigzNSkKICAgICAgSUYgKERJUjIoNjMpLkVRLjApIE5B
VlNJWiA9IERJUjIoMzQpIC0gRElSMigzNSkKICAgICAgQ0FMTCBBUkFHRVQoREFOLERJUjIo
MzUpLE5BVlNJWixJUEFSTTIpCiAgICAgIENBTEwgRERFU1QoJ0NBTEwgTlZQUkVQJywwKQog
ICAgICBJRihOVlBSRVAoMSxJUEFSTTEpLk5FLjApIEdPIFRPIDkwMgogICAgICBJRihOVlBS
RVAoMixJUEFSTTIpLk5FLjApIEdPIFRPIDkwMwogICAgICBDQUxMIERERVNUKCdDQUxMIE5W
WElOSScsMCkKICAgICAgaSA9IE5WMUlOSSgyLExJVCgnWFlaICcpKSAgICAgICAgICAgICAh
IDw8PDw8IFVQQyBtb2QgMjAwMzA2MTAgPj4+Pj4KICAgICAgaSA9IE5WMklOSSgyLExJVCgn
WFlaICcpKSAgICAgICAgICAgICAhIDw8PDw8IFVQQyBtb2QgMjAwMzA2MTAgPj4+Pj4KQ0ND
ICAgQ0FMTCBCTEtBKDgwLERJUjEpCkNDQyAgIENBTEwgTU9WQ1coQ0xJVChJUEFSTTEoMSkp
Ly8nICBUTyAgJy8vQ0xJVChJUEFSTTIoMSkpLERJUjEpCkNDQyAgIElTPUlDUFVUKERBTixE
SVIxKQogICAgICBJQkFEPTAKICAgICAgUkVUVVJOCjkwMCAgIENPTlRJTlVFCiAgICAgIENB
TEwgRURFU1QoJ05BViBOT1QgRk9VTkQgRk9SIFNPVVJDRSBBUkVBICcsU0FOKQogICAgICBJ
QkFEPS0xCiAgICAgIFJFVFVSTgo5MDEgICBDT05USU5VRQogICAgICBDQUxMIEVERVNUKCdO
QVYgTk9UIEZPVU5EIEZPUiBERVNUSU5BVElPTiBBUkVBICcsREFOKQogICAgICBJQkFEPS0x
CiAgICAgIFJFVFVSTgo5MDIgICBDT05USU5VRQogICAgICBDQUxMIEVERVNUKCdOTyBOQVYg
TU9EVUxFIEZPUiAnLy9DTElUKElQQVJNMSgxKSkvLycgIEFSRUEgJyxTQU4pCiAgICAgIElC
QUQ9LTEKICAgICAgUkVUVVJOCjkwMyAgIENPTlRJTlVFCiAgICAgIENBTEwgRURFU1QoJ05P
IE5BViBNT0RVTEUgRk9SICcvL0NMSVQoSVBBUk0yKDEpKS8vJyAgQVJFQSAnLERBTikKICAg
ICAgSUJBRD0tMQogICAgICBSRVRVUk4KICAgICAgRU5ECiAgICAgIFNVQlJPVVRJTkUgVU1B
UChZTCxZRSxaTCxaRSxJQkFEKQogICAgICBJRihOVjJTQUUoWUwsWUUsMC4sWCxZLFopLk5F
LjApIEdPIFRPIDkwMAogICAgICBJRihOVjFFQVMoWCxZLFosWkwsWkUsWkRVTSkuTkUuMCkg
R08gVE8gOTAwCiAgICAgIElCQUQ9MAogICAgICBSRVRVUk4KOTAwICAgQ09OVElOVUUKICAg
ICAgSUJBRD0tMQogICAgICBSRVRVUk4KICAgICAgRU5ECmMKYy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmMK
ICAgICAgU1VCUk9VVElORSBJTklUKEZMQUcsU1BTTEQsU1BTRUQpCkMgKioqIE1jSURBUyBS
ZXZpc2lvbiBIaXN0b3J5ICoqKgpDIDEgSU5JVC5GT1IgMTktTWFyLTkwLDE2OjM5OjM2LGBT
U0VDJyBQQy1NY0lEQVMgdmVyIDUuMDAKQyAyIElOSVQuRk9SIDI1LVNlcC05MCw3OjM0OjI4
LGBTTUcnIEZpcnN0IFJlbGVhc2UgaW50byBDT01tb24KQyAzIElOSVQuRk9SIDI4LUphbi05
MSw5OjA5OjM4LGBTTUcnIHRyYXAgb2NjdXJyZWQgaWYgZGVzdCBhcmVhIG5vdCAxIGJ5dGUg
ZGF0YQpDIDQgSU5JVC5GT1IgMjgtSmFuLTkxLDk6MDk6MzgsYEVSSUNOJyBSZWxlYXNlZApD
IDUgSU5JVC5GT1IgMTUtTWFyLTkyLDE5OjA2OjA0LGBEQVZFUycgQ2hlY2sgZm9yIGFyZWEg
ZXhpc3QgaW5xIDIzMzMKQyA2IElOSVQuRk9SIDI3LU1hci05Miw4OjI2OjQ0LGBVU0VSJyBS
ZWxlYXNlZCBmb3IgTWNJREFTLVggT25seQpDIDcgSU5JVC5GT1IgNS1Ob3YtOTIsMTM6MTU6
MDQsYEtFTkInIGNvcnJlY3RlZCBTTU9PVEg9IGtleXdvcmQgKDI5ODQpCkMgOCBJTklULkZP
UiAyMy1Ob3YtOTIsODoxOTo0OCxgVVNFUicgUmVsZWFzZWQKQyA5IElOSVQuRk9SIDEwLUZl
Yi05MywxNTozMTo0MixgUkFZTCcgQWRkZWQgcmVtYXBhcm0uaW5jIGluY2x1ZGUgZmlsZSB0
aGF0CkMgICAgICBjb250YWlucyBidWZmZXIgc2l6ZXMgKDM1NTgpCkMgMTAgSU5JVC5GT1Ig
MS1NYXItOTMsNzozMjo1NixgVVNFUicgUmVsZWFzZWQKQyAqKiogTWNJREFTIFJldmlzaW9u
IEhpc3RvcnkgKioqCkMgJCBTVUJST1VUSU5FIElOSVQoRkxBRywgU1BTTEQsIFNQU0VEKSAg
KERBUykKQyAkIElOSVRJQUxJWkFUSU9OIEZPUiBSRU1BUFBJTkcKQyAkIEZMQUcgPSAoSSkg
T1VUUFVUID0wIEFMTCBPSzsgPTEgU09NRVRISU5HIFdST05HCkMgJCBTUFNMRCA9IChJKSBJ
TlBVVCBTUExJTkUgU0laRSBJTiBMSU5FIERJUkVDVElPTgpDICQgU1BTRUQgPSAoSSkgSU5Q
VVQgU1BMSU5FIFNJWkUgSU4gRUxFTUVOVCBESVJFQ1RJT04KQyAkJCBJTklUID0gQ09OVkVS
VCwgSU1BR0UsIFBST0pFQ1RJT04KICAgICAgSU1QTElDSVQgSU5URUdFUihBLVopCiAgICAg
IENIQVJBQ1RFUioxMiBDRkksQ0tXUCxDSU1HU00KICAgICAgSU5DTFVERSAncmVtYXBhcm0u
aW5jJwogICAgICBDT01NT04vUEFSQU1TL1NBTixTTkwsU05FLFNMQixTUkVFTCxTREFZLFNU
SU1FLFNMSU4sU0VMRSwKICAgICAxU0lOQ0wsU0lOQ0UsU0dFKDgpLERBTixETkwsRE5FLERM
QixEUkVFTCxEREFZLERUSU1FLERMSU4sREVMRSwKICAgICAyRElOQ0wsRElOQ0UsREdFKDgp
LFNQU0wsU1BTRQogICAgICBDT01NT04vQ09OU1RTL0JGVyxCQ1csTlNQTCxOU1BFLE5TUCxO
Q0wsTkNFLE5DLFNQUElYCiAgICAgIERJTUVOU0lPTiBJRElSKDY0KSxKRElSKDY0KQogICAg
ICBCQ1c9QkNXRAogICAgICBCRlc9QkZXRAogICAgICBGTEFHPTAKICAgICAgU0FOPUlQUCgx
LDApCiAgICAgIERBTj1JUFAoMiwwKQogICAgICBJRihTQU4gLkxULiAxIC5PUi4gU0FOIC5H
VC4gOTk5OSkgR08gVE8gOTk4CiAgICAgIElGKERBTiAuTFQuIDEgLk9SLiBEQU4gLkdULiA5
OTk5KSBHTyBUTyA5OTkKCiAgICAgIENBTEwgUkVBREQoU0FOLElESVIpCiAgICAgIENBTEwg
UkVBREQoREFOLEpESVIpCgogICAgICBJRiggSURJUigxKSAuTkUuIDApIFRIRU4KCSBDQUxM
IEVERVNUKCdTb3VyY2UgYXJlYSBkb2VzIG5vdCBleGlzdCAnLFNBTikKCSBSRVRVUk4KICAg
ICAgRU5ESUYKCiAgICAgIElGKCBKRElSKDEpIC5ORS4gMCkgVEhFTgoJIENBTEwgRURFU1Qo
J0Rlc3RpbmF0aW9uIGFyZWEgZG9lcyBub3QgZXhpc3QgJyxEQU4pCgkgUkVUVVJOCiAgICAg
IEVORElGCmMgcmphIDIwMDMKYyAgICAgIE5CWVRFTCA9IE1BWDAoTktXUCgnQkFORCcpLDEp
ICogSURJUigxMSkKYyAgY2hhbmdlIHRvIGluY2x1ZGUgYWxsIDUgYmFuZHMgcmphKwogICAg
ICBOQllURUwgPSA1ICogSURJUigxMSkKYyByamEtCgogICAgICBCRlcgPSBCRlcvTkJZVEVM
CiAgICAgIENBTEwgSE9XQklHKFNBTixTTkwsU05FKQogICAgICBDQUxMIENPQVJFQShTQU4s
U1JFRUwsU0RBWSxTVElNRSxTTElOLFNFTEUsU0lOQ0wsU0lOQ0UsU0dFKQogICAgICBDQUxM
IEhPV0JJRyhEQU4sRE5MLERORSkKICAgICAgQ0FMTCBDT0FSRUEoREFOLERSRUVMLEREQVks
RFRJTUUsRExJTixERUxFLERJTkNMLERJTkNFLERHRSkKICAgICAgSUYoRE5MLkxULjEpIEdP
IFRPIDk5NwogICAgICBJRihTTkwuTFQuMSkgR08gVE8gOTk3CmNjYyAgICAgIElGICgoSkRJ
UigxMSkuTkUuMSkuT1IuKEpESVIoMTUpLk5FLjApKSBHT1RPIDk5NQogICAgICBTUFNMPVNQ
U0xECiAgICAgIFNQU0U9U1BTRUQKQyBDT05TVEFOVFMKQyBCRlc9QkxPQ0sgV09SRCBTSVpF
CkMgQkNXPSNDT1JORVJTIE1BWElNVU0vT1VUUFVUIElNQUdFCkMgU1BTPVNQTElORSBTSVpF
CkMgTlNQTD0jU1BMSU5FUy9MSU5FCkMgTlNQRT0jU1BMSU5FUy9FTEUKQyBOU1A9I1NQTElO
RVMKQyBOQ0w9I0NPUk5FUlMvTElORQpDIE5DRT0jQ09STkVSUy9FTEUKQyBOQz0jQ09STkVS
UwpDIFNQUElYPVBJWEVMUy9TUExJTkUKQyBTQU4sU05MLFNORT1TT1VSQ0UgQVJFQSwjTElO
RVMsI0VMRVMKQyBEQU4sRE5MLERORT1ERVNUIEFSRUEsI0xJTkVTLCNFTEVTCkMgU0xCLERM
Qj1TT1VSQ0UgJiBERVNULiBMSU5FUy9CTE9DSwpDCkMgU0VUIENPTlNUQU5UUwogICAgICBO
U1BMPShETkUrU1BTRS0xKS9TUFNFCiAgICAgIE5TUEU9KEROTCtTUFNMLTEpL1NQU0wKICAg
ICAgTlNQPU5TUEwqTlNQRQogICAgICBOQ0w9TlNQTCsxCiAgICAgIE5DRT1OU1BFKzEKICAg
ICAgSUYoTU9EKERORStTUFNFLTEsU1BTRSkuRVEuMCkgTkNMPU5TUEwKICAgICAgSUYoTU9E
KEROTCtTUFNMLTEsU1BTTCkuRVEuMCkgTkNFPU5TUEUKICAgICAgTkM9TkNMKk5DRQogICAg
ICBJRihOQy5HVC5CQ1cpIEdPIFRPIDk5NgogICAgICBTUFBJWD1TUFNMKlNQU0UKICAgICAg
U0xCPUJGVy9TTkUKQwpDLS0tIENBUFRVUkUgS0VZV09SRCBGT1IgQSBTTU9PVEhFRCBJTUFH
RQpDCiAgICAgIENJTUdTTSA9IENLV1AoJ1NNTycsMiwnTicpCiAgICAgIElGKENJTUdTTSgx
OjEpIC5FUS4gJ1knKSBTTEI9KEJGVy0yKihTTkUrOCkpLyhTTkUrOCkKQy4uLlRSWSBUTyBD
T1JSRUNUICNMSU5FUyBGT1IgMiBCWVRFIERBVEEKICAgICAgU0xCPVNMQi1JRElSKDExKSsx
CiAgICAgIERMQj0oQkZXL0RORSkvU1BTTCpTUFNMCiAgICAgIElGKERMQi5MRS4wKSBHTyBU
TyA5OTYKICAgICAgRkxBRz0xCiAgICAgIFJFVFVSTgo5OTYgICBDT05USU5VRQogICAgICBC
RldETkU9QkZXL0RORQogICAgICBETyAxMTAgSj1CRldETkUsMSwtMQogICAgICBOQ1RFU1Q9
KChETkUrSi0xKS9KKSooKEROTCtKLTEpL0opCiAgICAgIElGKE5DVEVTVC5HVC5CQ1cpIEdP
IFRPIDExMQoxMTAgICBDT05USU5VRQoxMTEgICBDT05USU5VRQogICAgICBJTE9XPUorMQog
ICAgICBJSEk9QkZXRE5FCiAgICAgIElGKElISS5HVC5JTE9XKSBUSEVOCiAgICAgICAgIENB
TEwgU0RFU1QoJ1JFTUFQIC0gU1BMSU5FIFNJWkUgTVVTVCBCRSBCRVRXRUVOJy8vCiAgICAg
KiAgIENGSShJTE9XKS8vJyBBTkQnLy9DRkkoSUhJKSwwKQogICAgICBFTFNFCiAgICAgICAg
IENBTEwgU0RFU1QoJ1JFTUFQIC0gREVTVElOQVRJT04gQVJFQSBUTyBMQVJHRScsMCkKICAg
ICAgRU5ESUYKICAgICAgUkVUVVJOCjk5NSAgIENPTlRJTlVFCiAgICAgIENBTEwgU0RFU1Qo
J1JFTUFQIC0gREVTVElOQVRJT04gQVJFQSBNVVNUIEJFIDEgQllURSBEQVRBJywwKQogICAg
ICBSRVRVUk4KOTk3ICAgQ09OVElOVUUKICAgICAgQ0FMTCBTREVTVCgnUkVNQVAgLSBCQUQg
QVJFQSBTSVpFJywwKQogICAgICBSRVRVUk4KOTk4ICAgQ09OVElOVUUKICAgICAgQ0FMTCBT
REVTVCgnUkVNQVAgLSBCQUQgQVJFQSBOVU1CRVIgJyxTQU4pCiAgICAgIFJFVFVSTgo5OTkg
ICBDQUxMIFNERVNUKCdSRU1BUCAtIEJBRCBBUkVBIE5VTUJFUiAnLERBTikKICAgICAgUkVU
VVJOCiAgICAgIEVORAoKCgpjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KYwogICAgICBTVUJST1VUSU5FIERP
TUFQCkMgKioqIE1jSURBUyBSZXZpc2lvbiBIaXN0b3J5ICoqKgpDIDEgRE9NQVAuRk9SIDIx
LU1hci05MCw5OjM2OjUwLGBTU0VDJyBQQy1NY0lEQVMgdmVyIDUuMDAKQyAyIERPTUFQLkZP
UiAyNS1TZXAtOTAsNzozNDozOCxgU01HJyBGaXJzdCBSZWxlYXNlIGludG8gQ09NbW9uCkMg
MyBET01BUC5GT1IgMS1NYXktOTEsMTA6MjI6NTgsYERBVkVTJyBBZGRlZCBVUERBVEU9IHRv
IHVwZGF0ZSBhcmVhcwpDIDQgRE9NQVAuRk9SIDE0LU1heS05MSwxNTowMzoyMCxgREFWRVMn
IEFkZGVkIE1FUkdFPSBrZXl3b3JkCkMgNSBET01BUC5GT1IgMjEtTWF5LTkxLDEwOjU3OjQy
LGBEQVZFUycgZml4IGZvciBkYXRlbGluZSBwcm9ibGVtCkMgNiBET01BUC5GT1IgMjEtTWF5
LTkxLDEwOjU3OjQyLGBFUklDTicgUmVsZWFzZWQKQyA3IERPTUFQLkZPUiA1LU5vdi05Miwx
MzoxNTo1MixgS0VOQicgZml4ZWQgbGltYiBzbW9vdGhpbmcgYW5kIFNNT09USD0KQyAgICAg
IGtleW9yZCAoMjk4NCkKQyA4IERPTUFQLkZPUiAyMy1Ob3YtOTIsODozNDoxNCxgVVNFUicg
UmVsZWFzZWQKQyA5IERPTUFQLkZPUiAxMC1GZWItOTMsMTU6MzM6MDgsYFJBWUwnIEFkZGVk
IHJlbWFwYXJtLmluYyBpbmNsdWRlIGZpbGUgdGhhdApDICAgICAgY29udGFpbnMgYnVmZmVy
IHNpemVzICgzNTU4KQpDIDEwIERPTUFQLkZPUiAxLU1hci05Myw3OjMxOjUwLGBVU0VSJyBS
ZWxlYXNlZApDICoqKiBNY0lEQVMgUmV2aXNpb24gSGlzdG9yeSAqKioKQyAkIFNVQlJPVVRJ
TkUgRE9NQVAgIChEQVMpCkMgJCBDUkVBVEUgQklMSU5FQVIgU1BMSU5FUyBBTkQgTU9WRSBE
QVRBCkMgJCQgRE9NQVA9IENPTlZFUlQsIE1BUCwgUFJPSkVDVElPTgogICAgICBQQVJBTUVU
RVIgKE1BWEJORCA9IDEyKQogICAgICBQQVJBTUVURVIgKE1BWENBTCA9IDUxMikKICAgICAg
SU1QTElDSVQgSU5URUdFUiAoQS1ZKQogICAgICBMT0dJQ0FMKjEgUkVBRCxTT1VSQ0UsREVT
VAogICAgICBJTlRFR0VSKjQgQk5ET1JEKE1BWEJORCksIFNSQ0RJUig2NCksIG9kaXIoNjQp
CiAgICAgIGludGVnZXIqNCBjYWxhcnIobWF4Y2FsKSwgY2Fsc2l6CglpbnRlZ2VyIGlvcHQo
NSkKICAgICAgUkVBTCBBTUFYMSxBTUlOMSxBTklOVAogICAgICBJTkNMVURFICdyZW1hcGFy
bS5pbmMnCiAgICAgIENPTU1PTi9QQVJBTVMvU0FOLFNOTCxTTkUsU0xCLFNSRUVMLFNEQVks
U1RJTUUsU0xJTixTRUxFLAogICAgIDFTSU5DTCxTSU5DRSxTR0UoOCksREFOLEROTCxETkUs
RExCLERSRUVMLEREQVksRFRJTUUsRExJTixERUxFLAogICAgIDJESU5DTCxESU5DRSxER0Uo
OCksU1BTTCxTUFNFCiAgICAgIENPTU1PTi9DT05TVFMvQkZXLEJDVyxOU1BMLE5TUEUsTlNQ
LE5DTCxOQ0UsTkMsU1BQSVgKICAgICAgQ09NTU9OL0JPWDEvWkxJTihCQ1dEKQogICAgICBD
T01NT04vQk9YMi9aRUxFKEJDV0QpCiAgICAgIENPTU1PTi9TQ09NL1NPVVJDRShCRldEKQog
ICAgICBDT01NT04vRENPTS9ERVNUKEJGV0QpCiAgICAgIERJTUVOU0lPTiBKTDEoOCksSkwy
KDgpLEpFMSg4KSxKRTIoOCkKICAgICAgSU5URUdFUiBJMjMoMDoyNTUpLEkxMygwOjI1NSkK
ICAgICAgTE9HSUNBTCoxIExWQUwxKDQpLExWQUwyKDQpCiAgICAgIElOVEVHRVIqNCBJVkFM
MSxJVkFMMgogICAgICBDSEFSQUNURVIqNCAgQ09QU1lTCiAgICAgIENIQVJBQ1RFUioxMiBD
S1dQLCBDTElULCBDSU1HU00sIENMTUJTTSwgQ01FUkdFCiAgICAgIEVRVUlWQUxFTkNFIChM
VkFMMSxJVkFMMSksKExWQUwyLElWQUwyKQogICAgICBJTkQoSUwsSUUpPShJTC0xKSpOQ0wr
SUUKQwpDLS0tIENBUFRVUkUgU01PT1RIIEtFWVdPUkRTCkMtLS0gICBTTU9PVEgsMSA9IE5P
L1lFUyBGT1IgTElNQiBTTU9PVEhJTkcKQy0tLSAgIFNNT09USCwyID0gTk8vWUVTIEZPUiBF
TlRJUkUgSU1BR0UgU01PT1RISU5HCkMKICAgICAgQ0xNQlNNID0gQ0tXUCgnU01PJywxLCdO
JykKICAgICAgQ0lNR1NNID0gQ0tXUCgnU01PJywyLCdOJykKQwogICAgICBJRihDTE1CU00o
MToxKSAuRVEuICdOJykgVEhFTgpDCkMtLS0gTElNQiBJUyAqTk9UKiBUTyBCRSBTTU9PVEhF
RApDCiAgICAgICAgREFUQSBOUkFELzgvCiAgICAgICAgREFUQSBKTDEvLTIsLTIsMCwyLDIs
MiwwLC0yLwogICAgICAgIERBVEEgSkwyLy0xLC0xLDAsMSwxLDEsMCwtMS8KICAgICAgICBE
QVRBIEpFMS8wLDIsMiwyLDAsLTIsLTIsLTIvCiAgICAgICAgREFUQSBKRTIvMCwxLDEsMSww
LC0xLC0xLC0xLwpDLi4uCkMuLi5UTyBTTU9PVEggRURHRVMsIEVYVFJBUE9MQVRFIE9VVCBP
TkUgQ09STkVSCkMuLi5VU0UgTUVBTiBWQUxVRSBGUk9NIEFMTCBSQURJQUxMWSBFWFRSQVBP
TEFURUQgQ0FMQ1VMQVRJT05TCkMuLi4KICAgICAgRE8gMzAwIEk9MSxOQwogICAgICAgIFNP
VVJDRShJKT0uRkFMU0UuCjMwMCAgIENPTlRJTlVFCiAgICAgICAgRE8gMzEwIElMPTEsTkNF
CiAgICAgICAgIERPIDMxMCBJRT0xLE5DTAogICAgICAgICAgSVBUPUlORChJTCxJRSkKICAg
ICAgICAgIElGKFpMSU4oSVBUKS5ORS4tOTkuOSkgR08gVE8gMzEwCiAgICAgICAgICBaU1VN
TD0wLjAKICAgICAgICAgIFpTVU1FPTAuMAogICAgICAgICAgTlBUPTAKICAgICAgICAgIERP
IDMwNSBLPTEsTlJBRAogICAgICAgICAgICBJTDE9SUwrSkwxKEspCiAgICAgICAgICAgIElM
Mj1JTCtKTDIoSykKICAgICAgICAgICAgSUYoSUwxLkxULjEuT1IuSUwyLkxULjEpIEdPIFRP
IDMwNQogICAgICAgICAgICBJRihJTDEuR1QuTkNFLk9SLklMMi5HVC5OQ0UpIEdPIFRPIDMw
NQogICAgICAgICAgICBJRTE9SUUrSkUxKEspCiAgICAgICAgICAgIElFMj1JRStKRTIoSykK
ICAgICAgICAgICAgSUYoSUUxLkxULjEuT1IuSUUyLkxULjEpIEdPIFRPIDMwNQogICAgICAg
ICAgICBJRihJRTEuR1QuTkNMLk9SLklFMi5HVC5OQ0wpIEdPIFRPIDMwNQogICAgICAgICAg
ICBJTkQxPUlORChJTDEsSUUxKQogICAgICAgICAgICBJTkQyPUlORChJTDIsSUUyKQogICAg
ICAgICAgICBJRihaTElOKElORDEpLkVRLi05OS45Lk9SLlpMSU4oSU5EMikuRVEuLTk5Ljkp
IEdPIFRPIDMwNQogICAgICAgICAgICBJRihTT1VSQ0UoSU5EMSkuT1IuU09VUkNFKElORDIp
KSBHTyBUTyAzMDUKICAgICAgICAgICAgTlBUPU5QVCsxCiAgICAgICAgICAgIFpTVU1MPVpT
VU1MKzIqWkxJTihJTkQyKS1aTElOKElORDEpCiAgICAgICAgICAgIFpTVU1FPVpTVU1FKzIq
WkVMRShJTkQyKS1aRUxFKElORDEpCjMwNSAgICAgICBDT05USU5VRQogICAgICAgICAgSUYo
TlBULkVRLjApIEdPIFRPIDMxMAogICAgICAgICAgWkxJTihJUFQpPVpTVU1ML05QVAogICAg
ICAgICAgWkVMRShJUFQpPVpTVU1FL05QVAogICAgICAgICAgU09VUkNFKElQVCk9LlRSVUUu
CjMxMCAgICAgQ09OVElOVUUKQwogICAgICBFTkRJRgoKCkMgTE9PUCBUSFJPVUdIIEJZIERF
U1RJTkFUSU9OIEJMT0NLUwogICAgICBDQUxMIE9QTkEoU0FOKQpjY2MgICBDQUxMIEFSQU9Q
VChTQU4sMSwnVU5JVCcsTElUKCdCUklUJykpCmNjYyAgIENBTEwgQVJBT1BUKFNBTiwxLCdT
UEFDJywxKQpDCkMtLS0gQ09MTEVDVCBCQU5EIE5VTUJFUlMgSU4gQVJSQVkgQk5ET1JECkMt
LS0gICAgRk9SIEEgQ09NTUFORCBMSU5FIEFTIEZPTExPV1M6IEJBTkQ9MSAzIDU7IEJORE9S
RCBXSUxMIEFQUEVBUiBBUwpDLS0tICAgICAgICAgQk5ET1JEKDEpID0gMQpDLS0tICAgICAg
ICAgQk5ET1JEKDIpID0gMwpDLS0tICAgICAgICAgQk5ET1JEKDMpID0gNQpDCmMgICAgICBO
QkFORFMgPSBOS1dQKCdCQU5EJykKYyBjaGFuZ2UgdG8gaW5jbHVkZSBhbGwgNSBiYW5kcyBy
amErCiAgICAgIE5CQU5EUyA9IDUgCmMgcmphLQoKCiAgICAgIElGKE5CQU5EUyAuRVEuIDAp
IFRIRU4KICAgICAgICAgQ0FMTCBGSU5CTkQoU0FOLEJORE9SRCgxKSkKICAgICAgICAgTkJB
TkRTID0gMQogICAgICBFTFNFCmMgcmphIDUvMjIvMjAwMyBjaGFuZ2UgcGVyIGNvbnZlcnNh
dGlvbiB3aXRoIERhdmUgU2FudGVrCiAgICAgICAgIERPIDEwMCBOTj0xLE5CQU5EUwogICAg
ICAgICAgICBCTkRPUkQoTk4pID0gSUtXUCgnQkFORCcsTk4sTk4pCiAxMDAgICAgIENPTlRJ
TlVFCiAgICAgIEVORElGCgogICAgICBCTE9DSz0wCkMKQy0tLSBSRUFEIFNPVVJDRSBBUkVB
IERJUkVDVE9SWSBBTkQgQ0FQVFVSRSBUSEUgTlVNQkVSIE9GIEJZVEVTL0VMRU1FTlQKQwog
ICAgICBDQUxMIFJFQUREKFNBTixTUkNESVIpCiAgICAgIE5CWVRFTCA9IFNSQ0RJUigxMSkK
ICAgICAgTkJQSVggPSBOQllURUwgKiBOQkFORFMKCiAgICAgIGNhbGwgcmVhZGQoZGFuLCBv
ZGlyKQpjCmMtLS0gY2hhbmdlIGRpcmVjdG9yeSBwYXJhbWV0ZXJzIGF0IHJhbmRvbQpjCiAg
ICAgIG9kaXIoMTEpID0gbmJ5dGVsCiAgICAgIG9kaXIoMTQpID0gbmJhbmRzCiAgICAgIG9k
aXIoMzYpID0gMAogICAgICBvZGlyKDQ5KSA9IDAKICAgICAgb2Rpcig1MCkgPSAwCiAgICAg
IG9kaXIoNTEpID0gbmJhbmRzICsgKDQgLSBtb2QobmJhbmRzLDQpKSAgICEgcHJlZml4IG11
c3QgYmUgbXVsdCBvZiA0CgogICAgICBvZGlyKDE1KSA9IG9kaXIoNDkpICsgb2Rpcig1MCkg
KyBvZGlyKDUxKQogICAgICBpZihvZGlyKDM2KSAubmUuIDApIG9kaXIoMTUpID0gb2Rpcigx
NSkgKyA0CmMKYy0tLSBzZXQgdGhlIGJpdHMgZm9yIHRoZSBmaWx0ZXIgbWFwCmMKICAgICAg
ZG8gMTUwIGpqPTEsbmJhbmRzCiAgICAgICAgIGliYW5kID0gYm5kb3JkKGpqKQogICAgICAg
ICBpYml0ID0gaWJzZXQoaWJpdCwgaWJhbmQtMSkKIDE1MCAgY29udGludWUKYwogICAgICBv
ZGlyKDE5KSA9IGliaXQKYwpjLS0tIHdyaXRlIHRoYXQgc3Vja2VyIHRvIHRoZSBvdXRwdXQg
YXJlYQpjCiAgICAgIGNhbGwgd3JpdGQoZGFuLCBvZGlyKQpjCmMtLS0gY29weSBjYWwgYmxv
Y2sgZnJvbSBzb3VyY2UgYXJlYSB0byBkZXN0aW5hdGlvbiBhcmVhCmMKICAgICAgY2Fsc2l6
ID0gc3JjZGlyKDM0KSAtIHNyY2Rpcig2MykKICAgICAgY2FsbCBhcmFnZXQoc2FuLCBzcmNk
aXIoNjMpLCBjYWxzaXosIGNhbGFycikKICAgICAgY2FsbCBhcmFwdXQoZGFuLCAgIG9kaXIo
NjMpLCBjYWxzaXosIGNhbGFycikKICAgICAgQ0FMTCBPUE5BKERBTikKCmMtLS1pbml0aWFs
aXplIGNhbCBmb3IgY2xvdWQgcHJvZHVjdCBDaGFubmVscyAyIGFuZCA0ICByamErCgoJaSA9
IGticHJlcCgxLCBsaXQoJ0dWQVInKSkKCWlvcHQoMSkgPSAyCglpb3B0KDIpID0gMgoJaSA9
IGtiMWluaSgnUkFXICcsICdURU1QJywgaW9wdCkKYyBjcmVhdGUgY2hhbm5lbCA1IGxvb2t1
cCB0YWJsZSBmb3IgY2FsaWJyYXRpb24KIAlpID0ga2JwcmVwKDMsIGxpdCgnR1ZBUicpKQog
CWlvcHQoMSkgPSAyCiAJaW9wdCgyKSA9IDIKIAlpID0ga2IzaW5pKCdSQVcgJywgJ1RFTVAn
LCBpb3B0KQpjYyAgYWRkIHNsb3QgZm9yIGNvbnZlcnRpbmcgcmF3IHRvIGFsYmVkbyAKIAlp
ID0ga2JwcmVwKDIsIGxpdCgnR1ZBUicpKQogCWlvcHQoMSkgPSAyCiAJaW9wdCgyKSA9IDIK
IAlpID0ga2IyaW5pKCdSQVcgJywgJ0FMQiAnLCBpb3B0KQoKCWkgPSBudjFpbmkoMiwgbGl0
KCdMTCAgJykpCmMgcmphLQoKQy0tLSBNRVJHRSBPVVRQVVQgQVJFQT8KCiAgICAgIEFMTD1M
SVQoJ0FMTCAnKQogICAgICBNRVJHRT0wCiAgICAgIENNRVJHRSA9IENLV1AoJ01FUicsMSwn
TicpCiAgICAgIElGKENNRVJHRSgxOjEpIC5FUS4gJ1knKSBNRVJHRT0xCkMKQy0tLSBJTUFH
RSBJUyBUTyBCRSBTTU9PVEhFRDsgQlJBTkNIIEFDQ09SRElOR0xZCkMKICAgICAgSUYoQ0lN
R1NNKDE6MSkgLkVRLiAnWScpIEdPIFRPIDUwMDAKQwogICAgICBETyAxMCBETE9DPTEsRE5M
LERMQgpDLS0tQUNDVU1VTEFURUQgTElORVM9QkxPQ0sjLygjTElORVMvQkxPQ0spCiAgICAg
IEFDQ0xJTj1CTE9DSypETEIKQy0tLVBPSU5URVIgVE8gRklSU1QgQ09STkVSIE9GIFNQTElO
RVMgRk9SIFRISVMgREVTVCBCTE9DSwogICAgICBQT0lOVD1CTE9DSypOQ0wqRExCL1NQU0wK
ICAgICAgT1BPSU5UPVBPSU5UCkMtLS1QT0lOVEVSIFRPIExBU1QgQ09STkVSIEZPUiBUSElT
IERFU1QgQkxPQ0sKICAgICAgTVhQVD0oQkxPQ0srMSkqTkNMKkRMQi9TUFNMLTEKICAgICAg
TVhQVD1NSU4wKE1YUFQsTkMtTkNMKQoKQy0tLVpFUk8gT1VUIEJGVyBCWVRFUyBPRiBERVNU
IChPUiBSRUFEIElOIERFU1QgQkxPQ0sgRk9SIE1FUkdFPTEpCiAgICAgIElGKE1FUkdFLkVR
LjApIFRIRU4KICAgICAgICAgQ0FMTCBaRVJPUyhERVNULEJGVypuYnBpeCkKICAgICAgRUxT
RQogICAgICAgICBOTElORVMgPSBNSU4wKERMQixETkwtRExPQysxKQogICAgICAgICBDQUxM
IFJFQURYKERBTiwgRExPQywgTkxJTkVTLCBETkUsIE5CWVRFTCwgTkJBTkRTLCBBTEwsIERF
U1QpCiAgICAgIEVORElGCkMgRk9SIEVBQ0ggREVTVElOQVRJT04gQkxPQ0sgTE9PUCBUSFJP
VUdIIEVOVElSRSBTT1VSQ0UKICAgICAgRE8gMjAgU0xPQz0xLFNOTCxTTEIKICAgICAgTUFY
U0w9TUlOMChTTkwsU0xPQytTTEItMSkKICAgICAgUkVBRD0uRkFMU0UuCkMgTE9PUCBUSFJP
VUdIIFNQTElORVMgQU5EIE1PVkUgQU5ZIERBVEEKQwogICAgICBQT0lOVD1PUE9JTlQKICAg
ICAgU0JMSz0wCjE1ICAgIENPTlRJTlVFCiAgICAgIERPIDMwIElTUFM9MSxOU1BMCiAgICAg
IERPRkYwPVNCTEsvTlNQTCpTUFNMKkRORQogICAgICBET0ZGMT1NT0QoU0JMSyxOU1BMKSpT
UFNFCiAgICAgIERPRkYyPURPRkYxK0RPRkYwKzEKICAgICAgUFNQUz1QT0lOVCtJU1BTCkMg
R0VUIDQgQ09STkVSUyBJTiBMSU5FIFNQQUNFIEFORCBDSEVDSyBGT1IgT1VUIE9GIEJPVU5E
UwogICAgICBaTDExPVpMSU4oUFNQUykKICAgICAgWkwxMj1aTElOKFBTUFMrMSkKICAgICAg
WkwyMT1aTElOKFBTUFMrTkNMKQogICAgICBaTDIyPVpMSU4oUFNQUysxK05DTCkKICAgICAg
Wk1JTkw9QU1JTjEoWkwxMSxaTDEyLFpMMjEsWkwyMikKQwpDLS0tIFRFU1QgRk9SIFRIRSBQ
UkVTRU5DRSBPRiBBIExJTUIgSU4gVEhFIFNQTElORSBCT1guCkMtLS0gSUYgTElNQiBJUyBQ
UkVTRU5ULCBUSEVOIEJSQU5DSCBUTyBMSU1CIFNNT09USElORyBCTE9DSyBJRiBORUMuCkMK
ICAgICAgSUYoWk1JTkwuRVEuLTk5LjkpIFRIRU4KICAgICAgICBJRihDTE1CU00oMToxKSAu
RVEuICdZJykgVEhFTgogICAgICAgICAgR08gVE8gMzUKICAgICAgICBFTFNFCiAgICAgICAg
ICBHTyBUTyAzMAogICAgICAgIEVORElGCiAgICAgIEVORElGCkMKICAgICAgS01JTkw9Wk1J
TkwrLjUKICAgICAgSUYoS01JTkwuR1QuTUFYU0wpIEdPIFRPIDMwCiAgICAgIEtNQVhMPUFN
QVgxKFpMMTEsWkwxMixaTDIxLFpMMjIpKy41CiAgICAgIElGKEtNQVhMLkxULlNMT0MpIEdP
IFRPIDMwCkMgR0VUIDQgQ09STkVSUyBJTiBFTEVNIFNQQUNFIEFORCBDSEVDSyBGT1IgT1VU
IE9GIEJPVU5EUwogICAgICBaRTExPVpFTEUoUFNQUykKICAgICAgWkUxMj1aRUxFKFBTUFMr
MSkKICAgICAgWkUyMT1aRUxFKFBTUFMrTkNMKQogICAgICBaRTIyPVpFTEUoUFNQUysxK05D
TCkKICAgICAgS01BWEU9QU1BWDEoWkUxMSxaRTEyLFpFMjEsWkUyMikrLjUKICAgICAgSUYo
S01BWEUuTFQuMSkgR08gVE8gMzAKICAgICAgS01JTkU9QU1JTjEoWkUxMSxaRTEyLFpFMjEs
WkUyMikrLjUKICAgICAgSUYoS01JTkUuR1QuU05FKSBHTyBUTyAzMAogICAgICBJRlhFREc9
MApDCkMtLS0gSUYgVEhFIE1BWCAmIE1JTiBFTEVNRU5UIEZBTEwgT0ZGIFRIRSBJTUFHRS4u
LlBJVENIIElUCkMKICAgICAgSUYoIEtNQVhFIC5HVC4gU05FIC5BTkQuIEtNSU5FIC5MVC4g
MSkgR08gVE8gMzAKQy0tLUZJWCBJRiBMRUZUICYgUklHSFQgRURHRSBTSE9VTEQgQkUgQ09O
VElOVU9VUyAKICAgICAgSUYoS01BWEUgLSBLTUlORSAuR1QuIE5JTlQoIC43NSAqIFNORSkg
KSBUSEVOCiAgICAgICAgIElGKFpFMTEgLkxULiBTTkUvMikgWkUxMSA9IFpFMTEgKyBTTkUK
CSBJRihaRTEyIC5MVC4gU05FLzIpIFpFMTIgPSBaRTEyICsgU05FCgkgSUYoWkUyMSAuTFQu
IFNORS8yKSBaRTIxID0gWkUyMSArIFNORQoJIElGKFpFMjIgLkxULiBTTkUvMikgWkUyMiA9
IFpFMjIgKyBTTkUKICAgICAgICAgSUZYRURHPTEKICAgICAgRU5ESUYgCiAgICAgIFpMQT0o
WkwxMi1aTDExKS9TUFNFCiAgICAgIFpMQj0oWkwyMS1aTDExKS9TUFNMCiAgICAgIFpMQz0o
WkwyMitaTDExLVpMMTItWkwyMSkvU1BQSVgKICAgICAgWkVBPShaRTEyLVpFMTEpL1NQU0UK
ICAgICAgWkVCPShaRTIxLVpFMTEpL1NQU0wKICAgICAgWkVDPShaRTIyK1pFMTEtWkUyMS1a
RTEyKS9TUFBJWApDIExPT1AgVEhST1VHSCBCT1hFUwogICAgICBETkUwPTAKICAgICAgWkxC
Qj1aTDExKy41CiAgICAgIFpMQ0M9MAogICAgICBaRUJCPVpFMTErLjUKICAgICAgWkVDQz0w
CiAgICAgIElGKFJFQUQpIEdPIFRPIDY1MAogICAgICBSRUFEPS5UUlVFLgogICAgICBOTElO
RVMgPSBNSU4wKFNMQixTTkwtU0xPQysxKQogICAgICBDQUxMIFJFQURYKFNBTiwgU0xPQywg
TkxJTkVTLCBTTkUsIE5CWVRFTCwgTkJBTkRTLCBCTkRPUkQsIFNPVVJDRSkKNjUwICAgQ09O
VElOVUUKICAgICAgSUYoSVNQUy5FUS5OU1BMKSBHTyBUTyA1NQpDIENIRUNLIENPUk5FUlMg
Rk9SIENPTVBMRVRFIFNQTElORQogICAgICBJRihLTUlORS5MVC4xLk9SLktNQVhFLkdULlNO
RSkgR08gVE8gNTUKICAgICAgSUYoS01JTkwuTFQuU0xPQy5PUi5LTUFYTC5HVC5NQVhTTCkg
R08gVE8gNTUKQyBDSEVDSyBUTyBTRUUgSUYgT04gTEFTVCBST1cgT0YgU1BMSU5FUwogICAg
ICBJRihQT0lOVCsyKk5DTC0xLkdULk1YUFQpIEdPIFRPIDU1CiAgICAgIElGKCBJRlhFREcg
LkVRLiAwKSBUSEVOCiAgICAgICAgIERPIDUyIElMPTEsU1BTTAogICAgICAgICBaTEFDPVpM
QStaTENDCiAgICAgICAgIFpFQUM9WkVBK1pFQ0MKICAgICAgICAgWkxBQzA9MAogICAgICAg
ICBaRUFDMD0wCiAgICAgICAgIERPRkY9RE9GRjIrRE5FMAogICAgICAgICBEUElYT0YgPSAo
RE9GRi0xKSAqIE5CUElYCiAgICAgICAgIERPIDUwIElFPTEsU1BTRQogICAgICAgICBTTD1a
TEJCK1pMQUMwCiAgICAgICAgIFNFPVpFQkIrWkVBQzAKICAgICAgICAgU09GRj0oU0wtU0xP
QykqU05FK1NFCkNDQyAgICAgIERFU1QoRE9GRik9U09VUkNFKFNPRkYpCkNDQyAgICAgIERP
RkY9RE9GRisxCiAgICAgICAgIFNQSVhPRiA9IChTT0ZGIC0gMSkgKiBOQlBJWAogICAgICAg
ICBDQUxMIE1PVkMoTkJQSVgsIFNPVVJDRSwgU1BJWE9GLCBERVNULCBEUElYT0YpCmMKYy0t
LS0tLSBpbnNlcnQgY2xvdWQgcHJvZHVjdCBjb2RlMQogCgljYWxsIGNsb3VkcChkZXN0LGRw
aXhvZixzbGluKyhzbC0xKSpzaW5jbCxzZWxlKyhzZS0xKSpzaW5jZSwKICAgICAqICAgc3Jj
ZGlyKQoKYy0tLS0tLQogICAgICAgICBEUElYT0YgPSBEUElYT0YgKyBOQlBJWAogICAgICAg
ICBaTEFDMD1aTEFDMCtaTEFDCiAgICAgICAgIFpFQUMwPVpFQUMwK1pFQUMKNTAgICAgICAg
Q09OVElOVUUKICAgICAgICAgWkxCQj1aTEJCK1pMQgogICAgICAgICBaTENDPVpMQ0MrWkxD
CiAgICAgICAgIFpFQkI9WkVCQitaRUIKICAgICAgICAgWkVDQz1aRUNDK1pFQwogICAgICAg
ICBETkUwPURORTArRE5FCjUyICAgICAgIENPTlRJTlVFCiAgICAgIEVMU0UgSUYgKElGWEVE
RyAuRVEuIDEpIFRIRU4KCiAgICAgICAgIERPIDExNTIgSUw9MSxTUFNMCiAgICAgICAgIFpM
QUM9WkxBK1pMQ0MKICAgICAgICAgWkVBQz1aRUErWkVDQwogICAgICAgICBaTEFDMD0wCiAg
ICAgICAgIFpFQUMwPTAKICAgICAgICAgRE9GRj1ET0ZGMitETkUwCiAgICAgICAgIERQSVhP
RiA9IChET0ZGLTEpICogTkJQSVgKICAgICAgICAgRE8gMTE1MCBJRT0xLFNQU0UKICAgICAg
ICAgU0w9WkxCQitaTEFDMAogICAgICAgICBTRT1aRUJCK1pFQUMwCiAgICAgICAgIElGKFNF
IC5HVC4gU05FKSBTRSA9IFNFIC0gU05FCiAgICAgICAgIFNPRkY9KFNMLVNMT0MpKlNORStT
RQogICAgICAgICBTUElYT0YgPSAoU09GRiAtIDEpICpOQlBJWAogICAgICAgICBDQUxMIE1P
VkMoTkJQSVgsIFNPVVJDRSwgU1BJWE9GLCBERVNULCBEUElYT0YpCmMKYy0tLS0tLSBpbnNl
cnQgY2xvdWQgcHJvZHVjdCBjb2RlMgoKCWNhbGwgY2xvdWRwKGRlc3QsZHBpeG9mLHNsaW4r
KHNsLTEpKnNpbmNsLHNlbGUrKHNlLTEpKnNpbmNlLAogICAgICogICBzcmNkaXIpCmMtLS0t
LS0KICAgICAgICAgRFBJWE9GID0gRFBJWE9GICsgTkJQSVgKQ0NDICAgICAgREVTVChET0ZG
KT1TT1VSQ0UoU09GRikKQ0NDICAgICAgRE9GRj1ET0ZGKzEKICAgICAgICAgWkxBQzA9WkxB
QzArWkxBQwogICAgICAgICBaRUFDMD1aRUFDMCtaRUFDCjExNTAgICAgIENPTlRJTlVFCiAg
ICAgICAgIFpMQkI9WkxCQitaTEIKICAgICAgICAgWkxDQz1aTENDK1pMQwogICAgICAgICBa
RUJCPVpFQkIrWkVCCiAgICAgICAgIFpFQ0M9WkVDQytaRUMKICAgICAgICAgRE5FMD1ETkUw
K0RORQoxMTUyICAgICBDT05USU5VRQogICAgICBFTkRJRgogICAgICBHTyBUTyA0NQo1NSAg
ICBDT05USU5VRQogICAgICBETyA0MiBJTD0xLFNQU0wKICAgICAgWkxBQz1aTENDK1pMQQog
ICAgICBaRUFDPVpFQ0MrWkVBCiAgICAgIFpMQUMwPTAKICAgICAgWkVBQzA9MAogICAgICBE
TyA0MCBJRT0xLFNQU0UKICAgICAgU0w9WkxCQitaTEFDMAogICAgICBJRihTTC5MVC5TTE9D
KSBHTyBUTyAzOQogICAgICBJRihTTC5HVC5NQVhTTCkgR08gVE8gMzkKICAgICAgU0U9WkVC
QitaRUFDMAogICAgICBJRihTRS5MVC4xKSBHTyBUTyAzOQogICAgICBJRihTRS5HVC5TTkUg
LkFORC4gSUZYRURHIC5FUS4gMCkgR08gVE8gMzkKICAgICAgSUYgKFNFIC5HVC4gU05FKSBT
RSA9IFNFIC0gU05FCiAgICAgIFNPRkY9KFNMLVNMT0MpKlNORStTRQogICAgICBET0ZGRT1E
T0ZGMStJRQogICAgICBJRihET0ZGRS5HVC5ETkUpIEdPIFRPIDM5CiAgICAgIERPRkZMPURP
RkYwK0RORTAKICAgICAgSUYoRE9GRkwvRE5FK0FDQ0xJTi0xLkdULkROTCkgR08gVE8gMzkK
ICAgICAgRE9GRj1ET0ZGTCtET0ZGRQogICAgICAgICBEUElYT0YgPSAoRE9GRiAtIDEpICog
TkJQSVgKICAgICAgICAgU1BJWE9GID0gKFNPRkYgLSAxKSAqIE5CUElYCmNjYyAgICAgICAg
ICAgIHdyaXRlKCosKikgJ3NwaXhvZixkcGl4b2YgJyxzcGl4b2YsZHBpeG9mCgogICAgICAg
ICAgICBDQUxMIE1PVkMoTkJQSVgsIFNPVVJDRSwgU1BJWE9GLCBERVNULCBEUElYT0YpCmMt
LS0gaW5zZXJ0IGNsb3VkIHByb2R1Y3QgY29kZTMKCgljYWxsIGNsb3VkcChkZXN0LGRwaXhv
ZixzbGluKyhzbC0xKSpzaW5jbCxzZWxlKyhzZS0xKSpzaW5jZSwKICAgICAqICAgc3JjZGly
KQpjLS0tLQpDQ0MgICBERVNUKERPRkYpPVNPVVJDRShTT0ZGKQozOSAgICBDT05USU5VRQog
ICAgICBaTEFDMD1aTEFDMCtaTEFDCiAgICAgIFpFQUMwPVpFQUMwK1pFQUMKNDAgICAgQ09O
VElOVUUKICAgICAgWkxCQj1aTEJCK1pMQgogICAgICBaTENDPVpMQ0MrWkxDCiAgICAgIFpF
QkI9WkVCQitaRUIKICAgICAgWkVDQz1aRUNDK1pFQwogICAgICBETkUwPURORTArRE5FCjQy
ICAgIENPTlRJTlVFCjQ1ICAgIENPTlRJTlVFCkMKQy0tLSBCTE9DSyBGT1IgQ1JFQVRJTkcg
QSBTTU9PVEggTElNQiBPTiBBIFJFTUFQUEVEIElNQUdFCkMKICAgICAgR09UTyAzMAogMzUg
ICBaTUFYVkFMID0gQU1BWDEoWkwxMSxaTDEyLFpMMjEsWkwyMikKQwpDLS0tIENIRUNLIFRP
IE1BS0UgU1VSRSBBVCBMRUFTVCBPTkUgREFUQSBWQUxVRSBJUyBHT09ECkMKICAgICAgSUYo
Wk1BWFZBTCAuTEUuIC05OS45KSBHT1RPIDMwCkMKQy0tLSBDQUxDVUxBVEUgREVTVElOQVRJ
T04gQVJFQSBMSU5FIEFORCBFTEVNRU5UIChBUkFMSU4sIEFSQUVMRSkKQwogICAgICBBUkFM
SU4gPSBETE9DICsgKChQT0lOVCAtIE9QT0lOVCkvTkNMKSAqIFNQU0wKICAgICAgQVJBRUxF
ID0gKElTUFMgLSAxKSAqIFNQU0UgKyAxCiAgICAgIFpTSU5DTCA9IDEuMC9TSU5DTAogICAg
ICBaU0lOQ0UgPSAxLjAvU0lOQ0UKQwpDLS0tIExPT1AgVEhST1VHSCBERVNUSU5BVElPTiBT
UExJTkUgQk9YCkMKICAgICAgRE8gMzYgSUxJTj1BUkFMSU4sQVJBTElOK1NQU0wtMQogICAg
ICAgIFpERVNUTCA9IERMSU4gKyAoSUxJTi0xKSAqIERJTkNMCiAgICAgICAgRE8gMzYgSUVM
RT1BUkFFTEUsQVJBRUxFK1NQU0UtMQogICAgICAgICAgWkRFU1RFID0gREVMRSArIChJRUxF
LTEpICogRElOQ0UKICAgICAgICAgIENBTEwgVU1BUChaREVTVEwsIFpERVNURSwgWlNSQ0ws
IFpTUkNFLCBCQUQpCkMKQy0tLSBDSEVDSyBUTyBNQUtFIFNVUkUgVU1BUCBSRVRVUk5FRCBF
UlJPUiBGUkVFIChCQUQ9MCkKQwogICAgICAgICAgSUYoQkFEIC5ORS4gMCkgR09UTyAzNgog
ICAgICAgICAgWlNSQ0wgPSAoWlNSQ0wgLSBTTElOKSAqIFpTSU5DTCArIDEuMAogICAgICAg
ICAgIElTUkNMID0gTklOVChaU1JDTCkKICAgICAgICAgIFpTUkNFID0gKFpTUkNFIC0gU0VM
RSkgKiBaU0lOQ0UgKyAxLjAKICAgICAgICAgICBJU1JDRSA9IE5JTlQoWlNSQ0UpCkMKQy0t
LSBDSEVDSyBUTyBTRUUgVEhBVCBUSEUgU09VUkNFIExJTkUgQU5EIEVMRU1FTlQgQVJFIElO
IFRIRSBBUkVBCkMKICAgICAgICAgIElGKChJU1JDTCAuTFQuIDEpIC5PUi4gKElTUkNMIC5H
VC4gU05MKSkgR09UTyAzNgogICAgICAgICAgSUYoKElTUkNFIC5MVC4gMSkgLk9SLiAoSVNS
Q0UgLkdULiBTTkUpKSBHT1RPIDM2CiAgICAgICAgICBJRigoSVNSQ0wgLkxULiBTTE9DKSAu
T1IuIChJU1JDTCAuR1QuIE1BWFNMKSkgR09UTyAzNgpDCkMtLS0gSUYgTkVDRVNTQVJZLCBS
RUFEIElOIEEgQkxPQ0sgT0YgREFUQQpDCiAgICAgICAgICBJRiAoLk5PVC4gUkVBRCkgVEhF
TgogICAgICAgICAgICBSRUFEID0gLlRSVUUuCiAgICAgICAgICAgIE5MSU5FUyA9IE1JTjAo
U0xCLFNOTC1TTE9DKzEpCiAgICAgICAgICAgIENBTEwgUkVBRFgoU0FOLFNMT0MsTkxJTkVT
LFNORSxOQllURUwsTkJBTkRTLEJORE9SRCxTT1VSQ0UpCiAgICAgICAgICBFTkRJRgpDCkMt
LS0gQUxMIFRFU1RTIEhBVkUgQkVFTiBQQVNTRUQ7IFRSQU5TRkVSIFZBTFVFIEZST00gU09V
UkNFIFRPIERFU1QuCkMKICAgICAgICAgIFNPRkYgPSAoSVNSQ0wgIC0gU0xPQykgKiBTTkUg
KyBJU1JDRQogICAgICAgICAgRE9GRiA9IChJTElOICAgLSBETE9DKSAqIERORSArIElFTEUK
ICAgICAgICAgIERQSVhPRiA9IChET0ZGIC0gMSkgKiBOQlBJWAogICAgICAgICAgU1BJWE9G
ID0gKFNPRkYgLSAxKSAqIE5CUElYCiAgICAgICAgICBDQUxMIE1PVkMoTkJQSVgsIFNPVVJD
RSwgU1BJWE9GLCBERVNULCBEUElYT0YpCmMKYy0tLS0gaW5zZXJ0IGNsb3VkIHByb2R1Y3Qg
Y29kZTQKCgljYWxsIGNsb3VkcChkZXN0LGRwaXhvZixzbGluKyhzbC0xKSpzaW5jbCxzZWxl
KyhzZS0xKSpzaW5jZSwKICAgICAqICAgc3JjZGlyKQpjLS0tLQpjY2MgICAgICAgICAgREVT
VChET0ZGKSA9IFNPVVJDRShTT0ZGKQogMzYgICAgIENPTlRJTlVFCkMKQy0tLSBSRVNVTUUg
Tk9STUFMIFJFTUFQIEJMT0NLIC0gTk8gQ1JPUFBJTkcKQwogMzAgICBTQkxLPVNCTEsrMQog
ICAgICBQT0lOVD1QT0lOVCtOQ0wKICAgICAgSUYoUE9JTlQuTFQuTVhQVCkgR08gVE8gMTUK
MjAgICAgQ09OVElOVUUKQyBXUklURSBPVVQgQkxPQ0sKICAgICAgQ0FMTCBXUklUWAogICAg
ICYgKERBTixETE9DLE1JTjAoRExCLEROTC1ETE9DKzEpLE5CWVRFTCxOQkFORFMsRE5FLERF
U1QsQk5ET1JEKQogICAgICBCTE9DSz1CTE9DSysxCjEwICAgIENPTlRJTlVFCiAgICAgIEdP
IFRPIDYwMDAKNTAwMCAgQ09OVElOVUUKQy0tLS0tCkMKQwpDICAgICAgQ09ERSBGT1IgU01P
T1RISU5HCkMKQwpDLS0tLS0KQy0tLQpDCkMgIEdFTkVSQVRFIDIvMyBBTkQgMS8zIFRBQkxF
UwpDCkMtLS0KQwpDLS0tIENBUFRVUkUgVEVSTUlOQUwgT1BFUkFUSU5HIFNZU1RFTS4KQy0t
LSBJRiBTWVNURU0gSVMgJ1VOSVgnIFRIRU4gVEhFIExWQUwgSU5ERVggRk9SIFNNT09USElO
RyA9IDQsCkMtLS0gT1RIRVJXSVNFIElUIElTIEVRVUFMIFRPIDEuICBUSElTIElTIERPTkUg
QkVDQVVTRSBPRiBUSEUgQllURQpDLS0tIE9SREVSSU5HIERJRkZFUkVOQ0VTIEJFVFdFRU4g
VEhFIE9TMiBBTkQgVU5JWCBXT1JLU1RBVElPTlMuCkMKICAgICAgQ09QU1lTID0gQ0xJVChJ
VFJNQ0goJ09QRVJfU1lTVEVNJywtMSkpCiAgICAgIElGKENPUFNZUyAuRVEuICdVTklYJykg
VEhFTgogICAgICAgIElCWVQgPSA0CiAgICAgIEVMU0UKICAgICAgICBJQllUID0gMQogICAg
ICBFTkRJRgpDCiAgICAgIERPIDExMDAgST0wLDI1NQogICAgICAgIEkyMyhJKT0oSSoyKzIp
LzMKICAgICAgICBJMTMoSSk9KEkrMikvMwoxMTAwICBDT05USU5VRQpDCkMtLS0KICAgICAg
QkxPQ0s9MAogICAgICBTTkU4PVNORSs4CiAgICAgIFpORT1TTkU4CiAgICAgIElWQUwxPTAK
ICAgICAgSVZBTDI9MAogICAgICBETyA1MDEwIERMT0M9MSxETkwsRExCCkMtLS1BQ0NVTVVM
QVRFRCBMSU5FUz1CTE9DSyMvKCNMSU5FUy9CTE9DSykKICAgICAgQUNDTElOPUJMT0NLKkRM
QgpDLS0tUE9JTlRFUiBUTyBGSVJTVCBDT1JORVIgT0YgU1BMSU5FUyBGT1IgVEhJUyBERVNU
IEJMT0NLCiAgICAgIFBPSU5UPUJMT0NLKk5DTCpETEIvU1BTTAogICAgICBPUE9JTlQ9UE9J
TlQKQy0tLVBPSU5URVIgVE8gTEFTVCBDT1JORVIgRk9SIFRISVMgREVTVCBCTE9DSwogICAg
ICBNWFBUPShCTE9DSysxKSpOQ0wqRExCL1NQU0wtMQogICAgICBNWFBUPU1JTjAoTVhQVCxO
Qy1OQ0wpCkMtLS1aRVJPIE9VVCBCRlcgQllURVMgT0YgREVTVCAoT1IgUkVBRCBJTiBERVNU
IEJMT0NLIEZPUiBNRVJHRT0xKQogICAgICBJRihNRVJHRS5FUS4wKSBUSEVOCiAgICAgICAg
IENBTEwgWkVST1MoREVTVCxCRlcqbmJwaXgpCiAgICAgIEVMU0UKICAgICAgICAgTkxJTkVT
ID0gTUlOMChETEIsRE5MLURMT0MrMSkKICAgICAgICAgQ0FMTCBSRUFEWChEQU4sIERMT0Ms
IE5MSU5FUywgRE5FLCBOQllURUwsIE5CQU5EUywgQUxMLCBERVNUKQogICAgICBFTkRJRgpD
IEZPUiBFQUNIIERFU1RJTkFUSU9OIEJMT0NLIExPT1AgVEhST1VHSCBFTlRJUkUgU09VUkNF
CiAgICAgIERPIDUwMjAgU0xPQz0xLFNOTCxTTEIKICAgICAgTUFYU0w9TUlOMChTTkwsU0xP
QytTTEItMSkKICAgICAgUkVBRD0uRkFMU0UuCkMgTE9PUCBUSFJPVUdIIFNQTElORVMgQU5E
IE1PVkUgQU5ZIERBVEEKQwogICAgICBQT0lOVD1PUE9JTlQKICAgICAgU0JMSz0wCjUwMTUg
IENPTlRJTlVFCiAgICAgIERPIDUwMzAgSVNQUz0xLE5TUEwKICAgICAgRE9GRjA9U0JMSy9O
U1BMKlNQU0wqRE5FCiAgICAgIERPRkYxPU1PRChTQkxLLE5TUEwpKlNQU0UKICAgICAgRE9G
RjI9RE9GRjErRE9GRjArMQogICAgICBQU1BTPVBPSU5UK0lTUFMKQyBHRVQgNCBDT1JORVJT
IElOIExJTkUgU1BBQ0UgQU5EIENIRUNLIEZPUiBPVVQgT0YgQk9VTkRTCiAgICAgIFpMMTE9
WkxJTihQU1BTKQogICAgICBaTDEyPVpMSU4oUFNQUysxKQogICAgICBaTDIxPVpMSU4oUFNQ
UytOQ0wpCiAgICAgIFpMMjI9WkxJTihQU1BTKzErTkNMKQogICAgICBaTUlOTD1BTUlOMSha
TDExLFpMMTIsWkwyMSxaTDIyKQpDCkMtLS0gVEVTVCBGT1IgVEhFIFBSRVNFTkNFIE9GIEEg
TElNQiBJTiBUSEUgU1BMSU5FIEJPWC4KQy0tLSBJRiBMSU1CIElTIFBSRVNFTlQsIFRIRU4g
QlJBTkNIIFRPIExJTUIgU01PT1RISU5HIEJMT0NLIElGIE5FQy4KQwogICAgICBJRihaTUlO
TC5FUS4tOTkuOSkgVEhFTgogICAgICAgIElGKENMTUJTTSgxOjEpIC5FUS4gJ1knKSBUSEVO
CiAgICAgICAgICBHTyBUTyA1MDM1CiAgICAgICAgRUxTRQogICAgICAgICAgR08gVE8gNTAz
MAogICAgICAgIEVORElGCiAgICAgIEVORElGCkMKICAgICAgS01JTkw9Wk1JTkwrLjUKICAg
ICAgSUYoS01JTkwuR1QuTUFYU0wpIEdPIFRPIDUwMzAKICAgICAgS01BWEw9QU1BWDEoWkwx
MSxaTDEyLFpMMjEsWkwyMikrLjUKICAgICAgSUYoS01BWEwuTFQuU0xPQykgR08gVE8gNTAz
MApDIEdFVCA0IENPUk5FUlMgSU4gRUxFTSBTUEFDRSBBTkQgQ0hFQ0sgRk9SIE9VVCBPRiBC
T1VORFMKICAgICAgWkUxMT1aRUxFKFBTUFMpCiAgICAgIFpFMTI9WkVMRShQU1BTKzEpCiAg
ICAgIFpFMjE9WkVMRShQU1BTK05DTCkKICAgICAgWkUyMj1aRUxFKFBTUFMrMStOQ0wpCiAg
ICAgIEtNQVhFPUFNQVgxKFpFMTEsWkUxMixaRTIxLFpFMjIpKy41CiAgICAgIElGKEtNQVhF
LkxULjEpIEdPIFRPIDUwMzAKICAgICAgS01JTkU9QU1JTjEoWkUxMSxaRTEyLFpFMjEsWkUy
MikrLjUKICAgICAgSUYoS01JTkUuR1QuU05FKSBHTyBUTyA1MDMwCiAgICAgIElGWEVERz0w
IApDLS0tRklYIElGIExFRlQgJiBSSUdIVCBFREdFIFNIT1VMRCBCRSBDT05USU5VT1VTIAog
ICAgICBJRihLTUFYRSAtIEtNSU5FIC5HVC4gTklOVCggLjc1ICogU05FKSApIFRIRU4KICAg
ICAgICAgSUYoWkUxMSAuTFQuIFNORS8yKSBaRTExID0gWkUxMSArIFNORQoJIElGKFpFMTIg
LkxULiBTTkUvMikgWkUxMiA9IFpFMTIgKyBTTkUKCSBJRihaRTIxIC5MVC4gU05FLzIpIFpF
MjEgPSBaRTIxICsgU05FCgkgSUYoWkUyMiAuTFQuIFNORS8yKSBaRTIyID0gWkUyMiArIFNO
RQogICAgICAgICBJRlhFREc9MQogICAgICBFTkRJRiAKICAgICAgWkxBPShaTDEyLVpMMTEp
L1NQU0UKICAgICAgWkxCPShaTDIxLVpMMTEpL1NQU0wKICAgICAgWkxDPShaTDIyK1pMMTEt
WkwxMi1aTDIxKS9TUFBJWAogICAgICBaRUE9KFpFMTItWkUxMSkvU1BTRQogICAgICBaRUI9
KFpFMjEtWkUxMSkvU1BTTAogICAgICBaRUM9KFpFMjIrWkUxMS1aRTIxLVpFMTIpL1NQUElY
CkMgTE9PUCBUSFJPVUdIIEJPWEVTCiAgICAgIERORTA9MAogICAgICBaTEJCPVpMMTEKICAg
ICAgWkxDQz0wCiAgICAgIFpFQkI9WkUxMQogICAgICBaRUNDPTAKICAgICAgSUYoUkVBRCkg
R08gVE8gNTY1MAogICAgICBSRUFEPS5UUlVFLgpDQ0MgICAgICBDQUxMIFJFQURZKFNBTixT
TE9DLE1JTjAoU0xCLFNOTC1TTE9DKzEpLFNORSxCTkRPUkQsU09VUkNFKQo1NjUwICBDT05U
SU5VRQogICAgICBJRihJU1BTLkVRLk5TUEwpIEdPIFRPIDUwNTUKQyBDSEVDSyBDT1JORVJT
IEZPUiBDT01QTEVURSBTUExJTkUKICAgICAgSUYoS01JTkUuTFQuMS5PUi5LTUFYRS5HVC5T
TkUpIEdPIFRPIDUwNTUKICAgICAgSUYoS01JTkwuTFQuU0xPQy5PUi5LTUFYTC5HVC5NQVhT
TCkgR08gVE8gNTA1NQpDIENIRUNLIFRPIFNFRSBJRiBPTiBMQVNUIFJPVyBPRiBTUExJTkVT
CiAgICAgIElGKFBPSU5UKzIqTkNMLTEuR1QuTVhQVCkgR08gVE8gNTA1NQogICAgICBJRigg
SUZYRURHIC5FUS4gMCkgVEhFTgogICAgICAgICBETyA1MDUyIElMPTEsU1BTTAogICAgICAg
ICBaTEFDPVpMQStaTENDCiAgICAgICAgIFpFQUM9WkVBK1pFQ0MKICAgICAgICAgWkxBQzA9
MAogICAgICAgICBaRUFDMD0wCiAgICAgICAgIERPRkY9RE9GRjIrRE5FMAogICAgICAgICBE
TyA1MDUwIElFPTEsU1BTRQogICAgICAgICBaTD1aTEJCK1pMQUMwCiAgICAgICAgIFpFPVpF
QkIrWkVBQzAKICAgICAgICAgU0w9WkwrLjUKICAgICAgICAgU0U9WkUrLjUKICAgICAgICAg
U09GRj0oU0wtU0xPQysxKSpTTkU4K1NFKzQKICAgICAgICAgSUxJTkQ9TklOVCgoWkwtQU5J
TlQoWkwpKSoyLjk4KQogICAgICAgICBJRUlORD1OSU5UKChaRS1BTklOVChaRSkpKjIuOTgp
CiAgICAgICAgIElGKElMSU5ELkVRLjAuQU5ELklFSU5ELkVRLjApIEdPIFRPIDEwNTAKICAg
ICAgICAgICAgSUxJTkQ9SUxJTkQqU05FOAogICAgICAgICAgICBTT0ZGMj1TT0ZGK0lFSU5E
K0lMSU5ECiAgICAgICAgICAgIExWQUwxKElCWVQpPVNPVVJDRShTT0ZGKQogICAgICAgICAg
ICBMVkFMMihJQllUKT1TT1VSQ0UoU09GRjIpCiAgICAgICAgICAgIEpWQUw9STIzKElWQUwx
KStJMTMoSVZBTDIpCiAgICAgICAgICAgIElWQUwxPUpWQUwKICAgICAgICAgICAgREVTVChE
T0ZGKT1MVkFMMShJQllUKQogICAgICAgICAgICBHTyBUTyAxMDUxCjEwNTAgICAgIERFU1Qo
RE9GRik9U09VUkNFKFNPRkYpCjEwNTEgICAgIERPRkY9RE9GRisxCiAgICAgICAgIFpMQUMw
PVpMQUMwK1pMQUMKICAgICAgICAgWkVBQzA9WkVBQzArWkVBQwo1MDUwICAgICBDT05USU5V
RQogICAgICAgICBaTEJCPVpMQkIrWkxCCiAgICAgICAgIFpMQ0M9WkxDQytaTEMKICAgICAg
ICAgWkVCQj1aRUJCK1pFQgogICAgICAgICBaRUNDPVpFQ0MrWkVDCiAgICAgICAgIERORTA9
RE5FMCtETkUKNTA1MiAgICAgQ09OVElOVUUKICAgICAgRUxTRSBJRiggSUZYRURHIC5FUS4g
MSkgVEhFTgogICAgICAgICBETyA1MTUyIElMPTEsU1BTTAogICAgICAgICBaTEFDPVpMQSta
TENDCiAgICAgICAgIFpFQUM9WkVBK1pFQ0MKICAgICAgICAgWkxBQzA9MAogICAgICAgICBa
RUFDMD0wCiAgICAgICAgIERPRkY9RE9GRjIrRE5FMAogICAgICAgICBETyA1MTUwIElFPTEs
U1BTRQogICAgICAgICBaTD1aTEJCK1pMQUMwCiAgICAgICAgIFpFPVpFQkIrWkVBQzAKICAg
ICAgICAgU0w9WkwrLjUKICAgICAgICAgU0U9WkUrLjUKICAgICAgICAgU09GRj0oU0wtU0xP
QysxKSpTTkU4K1NFKzQKICAgICAgICAgSUxJTkQ9TklOVCgoWkwtQU5JTlQoWkwpKSoyLjk4
KQogICAgICAgICBJRUlORD1OSU5UKChaRS1BTklOVChaRSkpKjIuOTgpCiAgICAgICAgIElG
KElMSU5ELkVRLjAuQU5ELklFSU5ELkVRLjApIEdPIFRPIDYwNTAKICAgICAgICAgICAgSUxJ
TkQ9SUxJTkQqU05FOAogICAgICAgICAgICBTT0ZGMj1TT0ZGK0lFSU5EK0lMSU5ECiAgICAg
ICAgICAgIExWQUwxKElCWVQpPVNPVVJDRShTT0ZGKQogICAgICAgICAgICBMVkFMMihJQllU
KT1TT1VSQ0UoU09GRjIpCiAgICAgICAgICAgIEpWQUw9STIzKElWQUwxKStJMTMoSVZBTDIp
CiAgICAgICAgICAgIElWQUwxPUpWQUwKICAgICAgICAgICAgREVTVChET0ZGKT1MVkFMMShJ
QllUKQogICAgICAgICAgICBHTyBUTyA2MDUxCjYwNTAgICAgIERFU1QoRE9GRik9U09VUkNF
KFNPRkYpCjYwNTEgICAgIERPRkY9RE9GRisxCiAgICAgICAgIFpMQUMwPVpMQUMwK1pMQUMK
ICAgICAgICAgWkVBQzA9WkVBQzArWkVBQwo1MTUwICAgICBDT05USU5VRQogICAgICAgICBa
TEJCPVpMQkIrWkxCCiAgICAgICAgIFpMQ0M9WkxDQytaTEMKICAgICAgICAgWkVCQj1aRUJC
K1pFQgogICAgICAgICBaRUNDPVpFQ0MrWkVDCiAgICAgICAgIERORTA9RE5FMCtETkUKNTE1
MiAgICAgQ09OVElOVUUKICAgICAgRU5ESUYKICAgICAgR08gVE8gNTA0NQo1MDU1ICBDT05U
SU5VRQogICAgICBETyA1MDQyIElMPTEsU1BTTAogICAgICBaTEFDPVpMQ0MrWkxBCiAgICAg
IFpFQUM9WkVDQytaRUEKICAgICAgWkxBQzA9MAogICAgICBaRUFDMD0wCiAgICAgIERPIDUw
NDAgSUU9MSxTUFNFCiAgICAgIFpMPVpMQkIrWkxBQzAKICAgICAgU0w9WkwrLjUKICAgICAg
SUYoU0wuTFQuU0xPQykgR08gVE8gNTAzOQogICAgICBJRihTTC5HVC5NQVhTTCkgR08gVE8g
NTAzOQogICAgICBaRT1aRUJCK1pFQUMwCiAgICAgIFNFPVpFKy41CiAgICAgIElGKFNFLkxU
LjEpIEdPIFRPIDUwMzkKICAgICAgSUYoU0UuR1QuU05FIC5BTkQuIElGWEVERyAuRVEuIDAp
IEdPIFRPIDUwMzkKICAgICAgSUYoU0UgLkdULiBTTkUpIFNFPSBTRSAtIFNORQogICAgICBT
T0ZGPShTTC1TTE9DKzEpKlNORTgrU0UrNAogICAgICBET0ZGRT1ET0ZGMStJRQogICAgICBJ
RihET0ZGRS5HVC5ETkUpIEdPIFRPIDUwMzkKICAgICAgRE9GRkw9RE9GRjArRE5FMAogICAg
ICBJRihET0ZGTC9ETkUrQUNDTElOLTEuR1QuRE5MKSBHTyBUTyA1MDM5CiAgICAgIERPRkY9
RE9GRkwrRE9GRkUKICAgICAgSUxJTkQ9TklOVCgoWkwtQU5JTlQoWkwpKSoyLjk4KQogICAg
ICBJRUlORD1OSU5UKChaRS1BTklOVChaRSkpKjIuOTgpCiAgICAgIElGKElMSU5ELkVRLjAu
QU5ELklFSU5ELkVRLjApIEdPIFRPIDIwNTAKICAgICAgICAgSUxJTkQ9SUxJTkQqU05FOAog
ICAgICAgICBTT0ZGMj1TT0ZGK0lFSU5EK0lMSU5ECiAgICAgICAgIExWQUwxKElCWVQpPVNP
VVJDRShTT0ZGKQogICAgICAgICBMVkFMMihJQllUKT1TT1VSQ0UoU09GRjIpCiAgICAgICAg
IEpWQUw9STIzKElWQUwxKStJMTMoSVZBTDIpCiAgICAgICAgIElWQUwxPUpWQUwKICAgICAg
ICAgREVTVChET0ZGKT1MVkFMMShJQllUKQogICAgICAgICBHTyBUTyA1MDM5CjIwNTAgIERF
U1QoRE9GRik9U09VUkNFKFNPRkYpCjUwMzkgIENPTlRJTlVFCiAgICAgIFpMQUMwPVpMQUMw
K1pMQUMKICAgICAgWkVBQzA9WkVBQzArWkVBQwo1MDQwICBDT05USU5VRQogICAgICBaTEJC
PVpMQkIrWkxCCiAgICAgIFpMQ0M9WkxDQytaTEMKICAgICAgWkVCQj1aRUJCK1pFQgogICAg
ICBaRUNDPVpFQ0MrWkVDCiAgICAgIERORTA9RE5FMCtETkUKNTA0MiAgQ09OVElOVUUKNTA0
NSAgQ09OVElOVUUKQwpDLS0tIEJMT0NLIEZPUiBDUkVBVElORyBBIFNNT09USCBMSU1CIE9O
IEEgUkVNQVBQRUQgSU1BR0UKQwogICAgICBHT1RPIDUwMzAKIDUwMzUgWk1BWFZBTCA9IEFN
QVgxKFpMMTEsWkwxMixaTDIxLFpMMjIpCkMKQy0tLSBDSEVDSyBUTyBNQUtFIFNVUkUgQVQg
TEVBU1QgT05FIERBVEEgVkFMVUUgSVMgR09PRApDCiAgICAgIElGKFpNQVhWQUwgLkxFLiAt
OTkuOSkgR09UTyA1MDMwCkMKQy0tLSBDQUxDVUxBVEUgREVTVElOQVRJT04gQVJFQSBMSU5F
IEFORCBFTEVNRU5UIChBUkFMSU4sIEFSQUVMRSkKQwogICAgICBBUkFMSU4gPSBETE9DICsg
KChQT0lOVCAtIE9QT0lOVCkvTkNMKSAqIFNQU0wKICAgICAgQVJBRUxFID0gKElTUFMgLSAx
KSAqIFNQU0UgKyAxCiAgICAgIFpTSU5DTCA9IDEuMC9TSU5DTAogICAgICBaU0lOQ0UgPSAx
LjAvU0lOQ0UKQwpDLS0tIExPT1AgVEhST1VHSCBERVNUSU5BVElPTiBTUExJTkUgQk9YCkMK
ICAgICAgRE8gNTAzNiBJTElOPUFSQUxJTixBUkFMSU4rU1BTTC0xCiAgICAgICAgWkRFU1RM
ID0gRExJTiArIChJTElOLTEpICogRElOQ0wKICAgICAgICBETyA1MDM2IElFTEU9QVJBRUxF
LEFSQUVMRStTUFNFLTEKICAgICAgICAgIFpERVNURSA9IERFTEUgKyAoSUVMRS0xKSAqIERJ
TkNFCiAgICAgICAgICBDQUxMIFVNQVAoWkRFU1RMLCBaREVTVEUsIFpTUkNMLCBaU1JDRSwg
QkFEKQpDCkMtLS0gQ0hFQ0sgVE8gTUFLRSBTVVJFIFVNQVAgUkVUVVJORUQgRVJST1IgRlJF
RSAoQkFEPTApCkMKICAgICAgICAgIElGKEJBRCAuTkUuIDApIEdPVE8gNTAzNgogICAgICAg
ICAgWlNSQ0wgPSAoWlNSQ0wgLSBTTElOKSAqIFpTSU5DTCArIDEuMAogICAgICAgICAgIElT
UkNMID0gTklOVChaU1JDTCkKICAgICAgICAgIFpTUkNFID0gKFpTUkNFIC0gU0VMRSkgKiBa
U0lOQ0UgKyAxLjAKICAgICAgICAgICBJU1JDRSA9IE5JTlQoWlNSQ0UpCkMKQy0tLSBDSEVD
SyBUTyBTRUUgVEhBVCBUSEUgU09VUkNFIExJTkUgQU5EIEVMRU1FTlQgQVJFIElOIFRIRSBB
UkVBCkMKICAgICAgICAgIElGKChJU1JDTCAuTFQuIDEpIC5PUi4gKElTUkNMIC5HVC4gU05M
KSkgR09UTyA1MDM2CiAgICAgICAgICBJRigoSVNSQ0UgLkxULiAxKSAuT1IuIChJU1JDRSAu
R1QuIFNORSkpIEdPVE8gNTAzNgogICAgICAgICAgSUYoKElTUkNMIC5MVC4gU0xPQykgLk9S
LiAoSVNSQ0wgLkdULiBNQVhTTCkpIEdPVE8gNTAzNgpDCkMtLS0gSUYgTkVDRVNTQVJZLCBS
RUFEIElOIEEgQkxPQ0sgT0YgREFUQQpDCiAgICAgICAgICBJRiAoLk5PVC4gUkVBRCkgVEhF
TgogICAgICAgICAgICBSRUFEID0gLlRSVUUuCkNDQyAgICAgICAgICAgIENBTEwgUkVBRFko
U0FOLFNMT0MsTUlOMChTTEIsU05MLVNMT0MrMSksU05FLEJORE9SRCxTT1VSQ0UpCiAgICAg
ICAgICBFTkRJRgpDCkMtLS0gQUxMIFRFU1RTIEhBVkUgQkVFTiBQQVNTRUQ7IFRSQU5TRkVS
IFZBTFVFIEZST00gU09VUkNFIFRPIERFU1QuCkMKICAgICAgICAgU09GRj0oSVNSQ0wgLSBT
TE9DICsgMSkqU05FOCArIElTUkNFICsgNAogICAgICAgICBET0ZGID0gKElMSU4gICAtIERM
T0MpICogRE5FICsgSUVMRQogICAgICAgICBJTElORD1OSU5UKChaU1JDTCAtIEFOSU5UKFpT
UkNMKSkgKiAyLjk4KQogICAgICAgICBJRUlORD1OSU5UKChaU1JDRSAtIEFOSU5UKFpTUkNF
KSkgKiAyLjk4KQogICAgICAgICBJRihJTElORC5FUS4wLkFORC5JRUlORC5FUS4wKSBUSEVO
CiAgICAgICAgICAgIElMSU5EPUlMSU5EKlNORTgKICAgICAgICAgICAgU09GRjI9U09GRitJ
RUlORCtJTElORAogICAgICAgICAgICBMVkFMMShJQllUKT1TT1VSQ0UoU09GRikKICAgICAg
ICAgICAgTFZBTDIoSUJZVCk9U09VUkNFKFNPRkYyKQogICAgICAgICAgICBKVkFMPUkyMyhJ
VkFMMSkrSTEzKElWQUwyKQogICAgICAgICAgICBJVkFMMT1KVkFMCiAgICAgICAgICAgIERQ
SVhPRiA9IChET0ZGIC0gMSkgKiBOQlBJWAogICAgICAgICAgICBTUElYT0YgPSAoSUJZVCAt
IDEpICogTkJQSVgKICAgICAgICAgICAgQ0FMTCBNT1ZDKE5CUElYLCBMVkFMMSwgU1BJWE9G
LCBERVNULCBEUElYT0YpCmNjYyAgICAgICAgICAgIERFU1QoRE9GRik9TFZBTDEoSUJZVCkK
ICAgICAgICAgIEVMU0UKICAgICAgICAgICAgRFBJWE9GID0gKERPRkYgLSAxKSAqIE5CUElY
CiAgICAgICAgICAgIFNQSVhPRiA9IChTT0ZGIC0gMSkgKiBOQlBJWAogICAgICAgICAgICBD
QUxMIE1PVkMoTkJQSVgsIFNPVVJDRSwgU1BJWE9GLCBERVNULCBEUElYT0YpCmNjYyAgICAg
ICAgICAgIERFU1QoRE9GRik9U09VUkNFKFNPRkYpCiAgICAgICAgICBFTkRJRgpDCmNjYyAg
ICAgICAgICBTT0ZGID0gKElTUkNMICAtIFNMT0MpICogU05FICsgSVNSQ0UKY2NjICAgICAg
ICAgIERPRkYgPSAoSUxJTiAgIC0gRExPQykgKiBETkUgKyBJRUxFCmNjYyAgICAgICAgICBE
RVNUKERPRkYpID0gU09VUkNFKFNPRkYpCiA1MDM2ICAgQ09OVElOVUUKQwpDLS0tIFJFU1VN
RSBOT1JNQUwgUkVNQVAgQkxPQ0sgLSBOTyBDUk9QUElORwpDCjUwMzAgIFNCTEs9U0JMSysx
CiAgICAgIFBPSU5UPVBPSU5UK05DTAogICAgICBJRihQT0lOVC5MVC5NWFBUKSBHTyBUTyA1
MDE1CjUwMjAgIENPTlRJTlVFCkMgV1JJVEUgT1VUIEJMT0NLCiAgICAgIENBTEwgV1JJVFgK
ICAgICAmIChEQU4sRExPQyxNSU4wKERMQixETkwtRExPQysxKSxOQllURUwsTkJBTkRTLERO
RSxERVNULGJuZG9yZCkKICAgICAgQkxPQ0s9QkxPQ0srMQo1MDEwICBDT05USU5VRQo2MDAw
ICBDT05USU5VRQogICAgICBDQUxMIENMT1NBTyhEQU4pCiAgICAgIENBTEwgQ0xPU0FPKFNB
TikKICAgICAgUkVUVVJOCiAgICAgIEVORAoKYy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmMKICAgICAgU1VC
Uk9VVElORSBNQVBQRVIoU1BTTEQsU1BTRUQpCkMgKioqIE1jSURBUyBSZXZpc2lvbiBIaXN0
b3J5ICoqKgpDIDEgTUFQUEVSLkZPUiAxOS1NYXItOTAsMTY6MzA6MTYsYFNTRUMnIFBDLU1j
SURBUyB2ZXIgNS4wMApDIDIgTUFQUEVSLkZPUiAyNy1BdWctOTAsMTE6NDM6MDYsYFNTRUMn
IE1haW50ZW5hbmNlIHJlc2VxdWVuY2UKQyAzIE1BUFBFUi5GT1IgMjUtU2VwLTkwLDc6MzQ6
NDYsYFNNRycgRmlyc3QgUmVsZWFzZSBpbnRvIENPTW1vbgpDICoqKiBNY0lEQVMgUmV2aXNp
b24gSGlzdG9yeSAqKioKQyAkIFNVQlJPVVRJTkUgTUFQUEVSKFNQU0xELCBTUFNFRCkgIChE
QVMpCkMgJCBNQUlOIFJPVVRJTkUgRk9SIFJFTUFQUElORwpDICQgU1BTTEQgPSAoSSkgSU5Q
VVQgU1BMSU5FIFNJWkUgSU4gTElORSBESVJFQ1RJT04KQyAkIFNQU0VEID0gKEkpIElOUFVU
IFNQTElORSBTSVpFIElOIEVMRU1FTlQgRElSRUNUSU9OCkMgJCQgTUFQUEVSID0gQ09OVkVS
VCwgTUFQLCBQUk9KRUNUSU9OCiAgICAgIElNUExJQ0lUIElOVEVHRVIgKEEtWikKICAgICAg
Q09NTU9OL1BBUkFNUy9TQU4sU05MLFNORSxTTEIsU1JFRUwsU0RBWSxTVElNRSxTTElOLFNF
TEUsCiAgICAgMVNJTkNMLFNJTkNFLFNHRSg4KSxEQU4sRE5MLERORSxETEIsRFJFRUwsRERB
WSxEVElNRSxETElOLERFTEUsCiAgICAgMkRJTkNMLERJTkNFLERHRSg4KSxTUFNMLFNQU0UK
ICAgICAgQ09NTU9OL0NPTlNUUy9CRlcsQkNXLE5TUEwsTlNQRSxOU1AsTkNMLE5DRSxOQyxT
UFBJWAogICAgICBDQUxMIElOSVQoRkxBRyxTUFNMRCxTUFNFRCkKICAgICAgSUYoRkxBRy5F
US4wKSBSRVRVUk4KICAgICAgQ0FMTCBVSU5JVChCQUQpCiAgICAgIElGKEJBRC5ORS4wKSBS
RVRVUk4KICAgICAgQ0FMTCBDT1JORVIKICAgICAgQ0FMTCBTREVTVCgnUkVNQVAgLSBUUkFO
Rk9STUFUSU9OUyBDT01QTEVURS4uQkVHSU4gREFUQSBNT1ZFJywwKQogICAgICBDQUxMIERP
TUFQCiAgICAgIENBTEwgU0RFU1QoJy0tUkVNQVAgRE9ORScsMCkKICAgICAgUkVUVVJOCiAg
ICAgIEVORApjCmMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpjCiAgICAgIFNVQlJPVVRJTkUgQ09STkVSCkMg
KioqIE1jSURBUyBSZXZpc2lvbiBIaXN0b3J5ICoqKgpDIDEgQ09STkVSLkZPUiAxOS1NYXIt
OTAsMTY6Mzk6MzgsYFNTRUMnIFBDLU1jSURBUyB2ZXIgNS4wMApDIDIgQ09STkVSLkZPUiAy
NS1TZXAtOTAsNzozNDoyNixgU01HJyBGaXJzdCBSZWxlYXNlIGludG8gQ09NbW9uCkMgMyBD
T1JORVIuRk9SIDEwLUZlYi05MywxNTozNDoxMCxgUkFZTCcgQWRkZWQgcmVtYXBhcm0uaW5j
IGluY2x1ZGUgZmlsZQpDICAgICAgdGhhdCBjb250YWlucyBidWZmZXIgc2l6ZXMgKDM1NTgp
CkMgNCBDT1JORVIuRk9SIDEtTWFyLTkzLDc6Mjk6NTAsYFVTRVInIFJlbGVhc2VkCkMgKioq
IE1jSURBUyBSZXZpc2lvbiBIaXN0b3J5ICoqKgpDICQgU1VCUk9VVElORSBDT1JORVIgIChE
QVMpCkMgJCBMT09QIFRIUk9VR0ggU1BMSU5FIERPTUFJTiBBTkQgUkVDT1JEIFNPVVJDRSBM
SU5FIEFORCBFTEUKQyAkJCBDT1JORVIgPSBDT05WRVJULCBNQVAsIFBST0pFQ1RJT04KICAg
ICAgSU1QTElDSVQgSU5URUdFUiAoQS1ZKQogICAgICBJTkNMVURFICdyZW1hcGFybS5pbmMn
CiAgICAgIENPTU1PTi9QQVJBTVMvU0FOLFNOTCxTTkUsU0xCLFNSRUVMLFNEQVksU1RJTUUs
U0xJTixTRUxFLAogICAgIDFTSU5DTCxTSU5DRSxTR0UoOCksREFOLEROTCxETkUsRExCLERS
RUVMLEREQVksRFRJTUUsRExJTixERUxFLAogICAgIDJESU5DTCxESU5DRSxER0UoOCksU1BT
TCxTUFNFCiAgICAgIENPTU1PTi9DT05TVFMvQkZXLEJDVyxOU1BMLE5TUEUsTlNQLE5DTCxO
Q0UsTkMsU1BQSVgKICAgICAgQ09NTU9OL0JPWDEvWkxJTihCQ1dEKQogICAgICBDT01NT04v
Qk9YMi9aRUxFKEJDV0QpCkMgREVGQVVMVCBPVVQgQ09STkVSIEFSUkFZUwogICAgICBETyA1
IEk9MSxOQwogICAgICBaTElOKEkpPS05OS45CiAgICAgIFpFTEUoSSk9LTk5LjkKNSAgICAg
Q09OVElOVUUKQyBMT09QIFRIUk9VR0ggU1BMSU5FIERPTUFJTiBBTkQgUkVDT1JEIFNPVVJD
RSBMSU5FIEFORCBFTEUKICAgICAgSU5EPTAKICAgICAgTlVNTD1ETkwrU1BTTC0xCiAgICAg
IE5VTUU9RE5FK1NQU0UtMQogICAgICBaU0lOQ0w9MS4vU0lOQ0wKICAgICAgWlNJTkNFPTEu
L1NJTkNFCiAgICAgIERPIDEwIEw9MSxOVU1MLFNQU0wKICAgICAgWkxTPURMSU4rKEwtMSkq
RElOQ0wKICAgICAgRE8gMTAgRT0xLE5VTUUsU1BTRQogICAgICBaRVM9REVMRSsoRS0xKSpE
SU5DRQogICAgICBDQUxMIFVNQVAoWkxTLFpFUyxaTCxaRSxCQUQpCiAgICAgIElORD1JTkQr
MQogICAgICBJRihCQUQuTkUuMCkgR08gVE8gMTAKICAgICAgWkw9KFpMLVNMSU4pKlpTSU5D
TCsxLjAKICAgICAgWkU9KFpFLVNFTEUpKlpTSU5DRSsxLjAKICAgICAgWkxJTihJTkQpPVpM
CiAgICAgIFpFTEUoSU5EKT1aRQoxMCAgICBDT05USU5VRQogICAgICBSRVRVUk4KICAgICAg
RU5ECmMKYy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tCmMKICAgICAgU1VCUk9VVElORSBSRUFEWChJQSxMSU5F
LE5MSU5TLE5FTEUsTkJZVEVMLE5CQU5EUyxCTkRPUkQsQlVGKQpDICoqKiBNY0lEQVMgUmV2
aXNpb24gSGlzdG9yeSAqKioKQyAxIFJFQURYLkZPUiAxOS1NYXItOTAsMjE6Mjg6MDgsYFNT
RUMnIFBDLU1jSURBUyB2ZXIgNS4wMApDIDIgUkVBRFguRk9SIDI1LVNlcC05MCw3OjM0OjQ4
LGBTTUcnIEZpcnN0IFJlbGVhc2UgaW50byBDT01tb24KQyAqKiogTWNJREFTIFJldmlzaW9u
IEhpc3RvcnkgKioqCkMgJCBTVUJST1VUSU5FIFJFQURYKElBLCBMSU5FLCBOTElOUywgTkVM
RSwgQk5ET1JELCBCVUYpICAoREFTKQpDICQgUkVBRCBJTiBOVU1CRVIgT0YgSU1BR0UgTElO
RVMKQyAkIElBID0gKEkpIElOUFVUIEFSRUEgTlVNQkVSCkMgJCBMSU5FID0gKEkpIElOUFVU
ICBTVEFSVElORyBMSU5FIE5VTUJFUgpDICQgTkxJTlMgPSAoSSkgSU5QVVQgIFRPVEFMIE5V
TUJFUiBPRiBMSU5FUwpDICQgTkVMRSA9IChJKSBJTlBVVCAgTlVNQkVSIE9GIEVMRU1FTlRT
L0xJTkUKQyAkIE5CWVRFTCA9IChJKSBJTlBVVCBOVU1CRVIgT0YgQllURVMvRUxFTUVOVApD
ICQgTkJBTkRTID0gKEkpIElOUFVUIE5VTUJFUiBPRiBCQU5EUwpDICQgQk5ET1JEID0gKEkp
IElOUFVUIEFSUkFZIE9GIEJBTkRTCkMgJCBCVUYgPSAoSSkgT1VUUFVUICBCVUZGRVIgQ09O
VEFJTklORyBJTUFHRSBEQVRBCkMgJCBSRUFEWCA9IEFSRUEsIEkvTwpDCkMtLS0gVEhFIFBB
UkFNRVRFUiBNQVhTSVogSVMgVEhFIElTIFRIRSBOVU1CRVIgT0YgV09SRFMgQ09OVEFJTkVE
IElOIFRIRQpDICAgICAgQVJSQVkgSUFSUi4gIElUIElTIEVRVUFMIFRPIFRIRQpDICAgICAg
ICAoTlVNQkVSIE9GIEJZVEVTL0VMRU1FTlQpICogKE5VTUJFUiBPRiBFTEVNRU5UUykgLyAo
NCkKQwogICAgICBQQVJBTUVURVIgKE1BWFNJWiA9IDEwMDAwKQogICAgICBJTVBMSUNJVCBJ
TlRFR0VSKEEtWikKICAgICAgbG9naWNhbCoxIElBUlIoTUFYU0laKSwgQlVGKCopCiAgICAg
IElOVEVHRVIqNCBCTkRPUkQoKikKICAgICAgRU5EPUxJTkUrTkxJTlMtMQpDCkMtLS0gVFJZ
IFRPIE1PRElGWSBUSElTIFNVQlJPVVRJTkUgVE8gSEFORExFIE1VTEktQkFORCBEQVRBCkMK
QyAgICBEQVRBIElTIFJFQUQgSU5UTyBJQVJSIFNFUVVFTlRJQUxMWSBPTkUgTElORSBBVCBB
IFRJTUU6CkMKQyAgICAgICAgQkFORCAxICAgICAgICAgICAgQkFORCAzICAgICAgICAgICAg
QkFORCA1CkMgIHwtLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0t
LS0tLS0tLS0tLXwKQwpDLS0tIE1PVkUgREFUQSBGUk9NIElBUlIgSU5UTyBBUlJBWSBCVUYK
QyAgICAgIFRIRSBEQVRBIE1VU1QgQkUgSU5URVJMRUFWRUQgSU4gQlVGOgpDCkMgICAgICAg
ICAgICAgMSAzIDUgMSAzIDUgMSAzIDUgMSAzIDUKQyAgICAgICAgICAgIHwtfC18LXwtfC18
LXwtfC18LXwtfC18LXwKQwpDKioqIE5PVEUgKioqCkMgICBJTiBPUkRFUiBUTyBDT05TRVJW
RSBTUEFDRSwgSUFSUiBPTkxZIENPTlRBSU5TIDEgTElORSBPRiAxIEJBTkQKQyAgIE9OIElO
UFVULiAgSUFSUiBJUyBUSEVOIE1PVkVEIChWSUEgTU9WQkxLKSBJTlRPIEJVRiBXSVRIIFRI
RSBEQVRBCkMgICBCRUlORyBQTEFDRUQgSU4gU1VDSCBBIFdBWSBUTyBJTlRFUkxFQVZFIElU
LiAgSVQnUyBBIEJJVCBMSUtFCkMgICBDT0xMRUNUSU5HIEEgSEFOREZVTCBPRiBST1VORCBQ
RUdTICYgUFVUVElORyBUSEVNIElOIFRIRUlSIEhPTEVTLApDICAgVEhFTiBHUkFCQklORyBB
IEhBTkRGVUwgT0YgU1FBVVJFIFBFR1MgJiBQVVRUSU5HIFRIRU0gSU4gVEhFSVIKQyAgIFNQ
QUNFUywgVEhFTiBHUkFCQklORyBBIEhBTkRGVUwgT0YgUkVDVEFOR1VMQVIgUEVHUyAmIFBV
VFRJTkcKQyAgIFRIRU0gQVdBWS4gIFRISVMgUFJPQ0VTUyBDT05USU5VRVMgVU5USUwgQUxM
IE9GIFRIRSBQRUdTIEFSRSBHT05FLgpDKioqIEVORCBOT1RFICoqKgpDCkMKQy0tLSBDT05T
VFJVQ1QgQllURSBNT1ZJTkcgVkFSSUFCTEVTOgpDICAgICAgICBOQllURVMgOiBOVU1CRVIg
T0YgQllURVMgUEVSIExJTkUKQyAgICAgICAgU09GRiA6IFNPVVJDRSBPRkZTRVQgSU4gQVJS
QVkgSUFSUiAoSVMgRVFVQUwgVE8gMCkKQyAgICAgICAgRE9GRiA6IERFU1RJTkFUSU9OIE9G
RlNFVCBJTiBBUlJBWSBCVUYgKElOVEVSTEVBVkVTIEJBTkRTKQpDICAgICAgICBTSU5DIDog
U09VUkNFIElOQ1JFTUVOVCAoQkFORFMvTElORSAqIEJZVEVTL0VMRU1FTlQpCkMgICAgICAg
IERJTkMgOiBERVNUSU5BVElPTiBJTkNSRU1FTlQgKE5VTUJFUiBPRiBCQU5EUyAqIEJZVEVT
L0VMRU1FTlQpCkMKICAgICAgTkJZVEVTID0gTkVMRSAqIE5CWVRFTAogICAgICBTT0ZGID0g
MAogICAgICBTSU5DID0gTkJZVEVMCiAgICAgIERJTkMgPSBOQkFORFMgKiBOQllURUwKYwog
ICAgICBQSVhQT1MgPSAwCgogICAgICBibGtzaXogPSBuZWxlICogbmJhbmRzICogbmJ5dGVs
CiAgICAgIHRvdHNpeiA9IChlbmQgLSBsaW5lICsgMSkgKiBibGtzaXoKICAgICAgY2FsbCB6
ZXJvcyhidWYsIHRvdHNpeikKCmNjYyAgICAgIHdyaXRlKCosKikgJ2xpbmUsZW5kICcsbGlu
ZSxlbmQKICAgICAgRE8gMTAgSUk9TElORSxFTkQKICAgICAgT0ZGU0VUID0gYmxrc2l6ICog
UElYUE9TCmNjYyAgICAgIHdyaXRlKCosKikgJ29mZnNldCAnLG9mZnNldAogICAgICAgICBE
TyAyMCBLSz0xLE5CQU5EUwogICAgICAgICAgICBDQUxMIFJFREFSQShJQSxJSS0xLDAsTkVM
RSxCTkRPUkQoS0spLElBUlIpCiAgICAgICAgICAgIERPRkYgPSBPRkZTRVQgKyAoS0sgLSAx
KSAqIE5CWVRFTAogICAgICAgICAgICBDQUxMIE1PVkJMSyhORUxFLCBOQllURUwsIElBUlIs
IFNPRkYsIFNJTkMsIEJVRiwgRE9GRiwgRElOQykKMjAgICAgICAgQ09OVElOVUUKYwogICAg
ICBQSVhQT1MgPSBQSVhQT1MgKyAxCjEwICAgIENPTlRJTlVFCkMKICAgICAgUkVUVVJOCiAg
ICAgIEVORApjCmMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpjCiAgICAgIFNVQlJPVVRJTkUgV1JJVFgoSUEs
TElORSxOTElOUyxOQllURUwsTkJBTkRTLE5FTEUsQlVGLGJuZG9yZCkKQyAqKiogTWNJREFT
IFJldmlzaW9uIEhpc3RvcnkgKioqCkMgMSBXUklUWC5GT1IgMTktTWFyLTkwLDIxOjM2OjUw
LGBTU0VDJyBQQy1NY0lEQVMgdmVyIDUuMDAKQyAyIFdSSVRYLkZPUiAyNS1TZXAtOTAsNzoz
NDowNCxgU01HJyBGaXJzdCBSZWxlYXNlIGludG8gQ09NbW9uCkMgKioqIE1jSURBUyBSZXZp
c2lvbiBIaXN0b3J5ICoqKgogICAgICBJTVBMSUNJVCBJTlRFR0VSIChBLVopCiAgICAgIElO
VEVHRVIqNCBCVUYoKiksIGJuZG9yZCgqKQogICAgICBJTlRFR0VSKjQgZGF0YnVmKDEwMDAw
KQogICAgICBFTkQ9TElORStOTElOUy0xCiAgICAgIE5CWVRCSyA9IE5CWVRFTCAqIE5CQU5E
UyAqIE5FTEUKYwpjLS0tIGluc2VydCB0aGUgbGV2ZWwgc2VjdGlvbiBhY2NvcmRpbmcgdG8g
Ym5kb3JkCmMKICAgICAgY2FsbCBwYWNrKG5iYW5kcywgYm5kb3JkLCBkYXRidWYpCiAgICAg
IGRvZmYgPSBuYmFuZHMgKyAoNCAtIG1vZChuYmFuZHMsNCkpCmMKICAgICAgRE8gMjAgST1M
SU5FLEVORAogICAgICAgICBKPShJLUxJTkUpKk5CWVRCSwogICAgICAgICBjYWxsIG1vdmMo
bmJ5dGJrLCBidWYsIGosIGRhdGJ1ZiwgZG9mZikKICAgICAgICAgQ0FMTCBXUklUQShJQSxJ
LTEsZGF0YnVmKQpjY2MgICAgICAgICBDQUxMIFdSSVRBKElBLEktMSxCVUYoSikpCgogMjAg
ICBDT05USU5VRQoKICAgICAgUkVUVVJOCiAgICAgIEVORApjCmMgYWRkIG5ldyBmdW5jdGlv
biBoZXJlIQpjCmMgICAgICBzdWJyb3V0aW5lIHN5c2luKGksaikKYyAgICAgIHJldHVybgpj
ICAgICAgZW5kCg==
-----
Tom