diff --git a/.gitignore b/.gitignore index 7e7315e..6944596 100644 --- a/.gitignore +++ b/.gitignore @@ -98,12 +98,9 @@ __recovery/ *.identcache # Build output directories -Win32/Debug/ -Win32/Release/ -Win64/Debug/ -Win64/Release/ -Win64x/Debug/ -Win64x/Release/ +Win32/ +Win64/ +Win64x/ # Castalia statistics file (since XE7 Castalia is distributed with Delphi) *.stat diff --git a/Delphi/ReportLocalizationDelphi.dproj b/Delphi/ReportLocalizationDelphi.dproj index ed20c72..72937c5 100644 --- a/Delphi/ReportLocalizationDelphi.dproj +++ b/Delphi/ReportLocalizationDelphi.dproj @@ -1,180 +1,181 @@ - - - {6E38CE1A-E2C9-4927-BDAE-F5D067A7C6CB} - ReportLocalizationDelphi.dpr - True - Debug - ReportLocalizationDelphi - 1 - Application - VCL - 20.3 - Win32 - - - true - - - true - Base - true - - - true - Base - true - - - true - Base - true - - - true - Cfg_1 - true - true - - - true - Base - true - - - true - Cfg_2 - true - true - - - false - false - false - false - false - 00400000 - ReportLocalizationDelphi - Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace) - 8192 - CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName= - - - - Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace) - Debug - true - CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments= - 1033 - $(BDS)\bin\default_app.manifest - $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png - $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png - - - $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png - $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png - - - RELEASE;$(DCC_Define) - 0 - false - 0 - - - PerMonitorV2 - - - DEBUG;$(DCC_Define) - false - true - true - true - - - PerMonitorV2 - .\$(Platform)\$(Config) - ..\ - true - 1033 - CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments= - - - - MainSource - - -
MainForm
-
- -
DataModule1
- TDataModule -
- - Base - - - Cfg_1 - Base - - - Cfg_2 - Base - -
- - Delphi.Personality.12 - - - - - ReportLocalizationDelphi.dpr - - - Embarcadero C++Builder Office 2000 Servers Package - Embarcadero C++Builder Office XP Servers Package - Microsoft Office 2000 Sample Automation Server Wrapper Components - Microsoft Office XP Sample Automation Server Wrapper Components - - - - True - False - - - 12 - - - - - - False - - False - copy /Y "$(BDS)\Redist\win32\WebView2Loader.dll" $(OUTPUTDIR) - False - - - - False - - False - copy /Y "$(BDS)\Redist\win32\WebView2Loader.dll" $(OUTPUTDIR) - False - - - - False - - False - copy /Y "$(BDS)\Redist\win32\WebView2Loader.dll" $(OUTPUTDIR) - False - - - - False - - False - copy /Y "$(BDS)\Redist\win32\WebView2Loader.dll" $(OUTPUTDIR) - False - -
+ + + {6E38CE1A-E2C9-4927-BDAE-F5D067A7C6CB} + ReportLocalizationDelphi.dpr + True + Debug + ReportLocalizationDelphi + 1 + Application + VCL + 20.3 + Win32 + + + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Cfg_1 + true + true + + + true + Base + true + + + true + Cfg_2 + true + true + + + false + false + false + false + false + 00400000 + ReportLocalizationDelphi + Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace) + 8192 + CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName= + + + + Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace) + Debug + true + CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments= + 1033 + $(BDS)\bin\default_app.manifest + $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png + $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png + + + $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png + $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png + + + RELEASE;$(DCC_Define) + 0 + false + 0 + + + PerMonitorV2 + + + DEBUG;$(DCC_Define) + false + true + true + true + + + PerMonitorV2 + .\$(Platform)\$(Config) + ..\ + true + 1033 + CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments= + ReportLocalizationDelphi_Icon.ico + + + + MainSource + + +
MainForm
+
+ +
DataModule1
+ TDataModule +
+ + Base + + + Cfg_1 + Base + + + Cfg_2 + Base + +
+ + Delphi.Personality.12 + + + + + ReportLocalizationDelphi.dpr + + + Embarcadero C++Builder Office 2000 Servers Package + Embarcadero C++Builder Office XP Servers Package + Microsoft Office 2000 Sample Automation Server Wrapper Components + Microsoft Office XP Sample Automation Server Wrapper Components + + + + True + False + + + 12 + + + + + + False + + False + copy /Y "$(BDS)\Redist\win32\WebView2Loader.dll" $(OUTPUTDIR) + False + + + + False + + False + copy /Y "$(BDS)\Redist\win32\WebView2Loader.dll" $(OUTPUTDIR) + False + + + + False + + False + copy /Y "$(BDS)\Redist\win32\WebView2Loader.dll" $(OUTPUTDIR) + False + + + + False + + False + copy /Y "$(BDS)\Redist\win32\WebView2Loader.dll" $(OUTPUTDIR) + False + +
diff --git a/Delphi/ReportLocalizationDelphi_Icon.ico b/Delphi/ReportLocalizationDelphi_Icon.ico new file mode 100644 index 0000000..60cda0a Binary files /dev/null and b/Delphi/ReportLocalizationDelphi_Icon.ico differ diff --git a/Delphi/uMainForm.dfm b/Delphi/uMainForm.dfm index deb7ba9..e909bb2 100644 --- a/Delphi/uMainForm.dfm +++ b/Delphi/uMainForm.dfm @@ -1,135 +1,914 @@ object MainForm: TMainForm Left = 0 Top = 0 - Caption = 'MainForm' - ClientHeight = 483 - ClientWidth = 606 + BorderIcons = [biSystemMenu, biMinimize, biHelp] + BorderStyle = bsSingle + Caption = 'DevExpress Reports Localization Example' + ClientHeight = 111 + ClientWidth = 411 Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -12 Font.Name = 'Segoe UI' Font.Style = [] + Icon.Data = { + 0000010006003030000001002000A8250000660000002020000001002000A810 + 00000E260000101000000100200068040000B63600003030000001001800A81C + 00001E3B00002020000001001800A80C0000C657000010100000010018006803 + 00006E6400002800000030000000600000000100200000000000802500000000 + 000000000000000000000000000000000000000000030000000C000000130000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 00130000000C0000000300000000000000030E0E0E19323232A4373737F23737 + 37FF373737FF373737FF373737FF363636FF363636FF353535FF353535FF3434 + 34FF343434FF343434FF333333FF333333FF323232FF323232FF323232FF3131 + 31FF313131FF313131FF313131FF303030FF303030FF303030FF2F2F2FFF2F2F + 2FFF2E2E2EFF2E2E2EFF2E2E2EFF2E2E2EFF2E2E2EFF2E2E2EFF2E2E2EFF2D2D + 2DFF2D2D2DFF2D2D2DFF2C2C2CFF2C2C2CFF2C2C2CFF2C2C2CFF2C2C2CFF2B2B + 2BF2272727A40B0B0B18000000030000000C333333A3454545FF4B4B4BFF4B4B + 4BFF4B4B4BFF4A4A4AFF4A4A4AFF494949FF494949FF484848FF474747FF4747 + 47FF474747FF464646FF464646FF454545FF444444FF444444FF434343FF4343 + 43FF434343FF424242FF414141FF414141FF404040FF404040FF404040FF4040 + 40FF3F3F3FFF3F3F3FFF3E3E3EFF3E3E3EFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D + 3DFF3D3D3DFF3C3C3CFF3C3C3CFF3C3C3CFF3B3B3BFF3B3B3BFF3B3B3BFF3A3A + 3AFF353535FF2727279D0000000B00000013444444F14D4D4DFF4D4D4DFF4D4D + 4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A4AFF494949FF484848FF4848 + 48FF474747FF474747FF474747FF464646FF454545FF454545FF444444FF4343 + 43FF434343FF434343FF424242FF424242FF414141FF414141FF404040FF4040 + 40FF404040FF3F3F3FFF3F3F3FFF3E3E3EFF3E3E3EFF3E3E3EFF3D3D3DFF3D3D + 3DFF3D3D3DFF3D3D3DFF3C3C3CFF3C3C3CFF3C3C3CFF3B3B3BFF3B3B3BFF3B3B + 3BFF3B3B3BFF333333F100000013000000164D4D4DFF4E4E4EFF4E4E4EFF4D4D + 4DFF4D4D4DFF4C4C4CFF4B4B4BFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A4AFF4949 + 49FF484848FF474747FF474747FF474747FF464646FF464646FF454545FF4444 + 44FF444444FF434343FF434343FF434343FF424242FF424242FF414141FF4040 + 40FF404040FF404040FF404040FF3F3F3FFF3F3F3FFF3E3E3EFF3E3E3EFF3D3D + 3DFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D3DFF3C3C3CFF3C3C3CFF3C3C3CFF3B3B + 3BFF3B3B3BFF3A3A3AFF0000001600000016505050FF505050FF4F4F4FFF4E4E + 4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A + 4AFF494949FF494949FF484848FF474747FF474747FF474747FF464646FF4545 + 45FF454545FF444444FF434343FF434343FF434343FF434343FF424242FF4141 + 41FF414141FF404040FF404040FF404040FF404040FF3F3F3FFF3F3F3FFF3E3E + 3EFF3E3E3EFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D3DFF3C3C3CFF3C3C3CFF3C3C + 3CFF3B3B3BFF3B3B3BFF0000001600000016515151FF515151FF505050FF4F4F + 4FFF4E4E4EFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C4CFF4C4C4CFF4B4B4BFF4A4A + 4AFF4A4A4AFF4A4A4AFF494949FF484848FF484848FF474747FF474747FF4646 + 46FF464646FF454545FF444444FF444444FF434343FF434343FF434343FF4242 + 42FF424242FF414141FF414141FF404040FF404040FF404040FF3F3F3FFF3F3F + 3FFF3E3E3EFF3E3E3EFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D3DFF3C3C + 3CFF3C3C3CFF3C3C3CFF0000001600000016525252FF515151FF515151FF5050 + 50FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B + 4BFF4B4B4BFF4A4A4AFF4A4A4AFF494949FF494949FF484848FF474747FF4747 + 47FF474747FF464646FF454545FF454545FF444444FF444444FF434343FF4343 + 43FF434343FF424242FF414141FF414141FF404040FF404040FF404040FF4040 + 40FF3F3F3FFF3F3F3FFF3E3E3EFF3E3E3EFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D + 3DFF3D3D3DFF3C3C3CFF0000001600000016969696FF525252FF515151FF5151 + 51FF515151FF505050FF4F4F4FFF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4D4D + 4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A4AFF494949FF484848FF4848 + 48FF474747FF474747FF474747FF464646FF454545FF454545FF444444FF4343 + 43FF434343FF434343FF424242FF424242FF414141FF414141FF404040FF4040 + 40FF404040FF3F3F3FFF3F3F3FFF3E3E3EFF3E3E3EFF3D3D3DFF3D3D3DFF3D3D + 3DFF3D3D3DFF3D3D3DFF0000001600000016F4F4F4FF646464FF535353FF5252 + 52FF515151FF515151FF515151FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D + 4DFF4D4D4DFF4C4C4CFF4B4B4BFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A4AFF4949 + 49FF484848FF474747FF474747FF474747FF464646FF464646FF454545FF4444 + 44FF444444FF434343FF434343FF434343FF424242FF424242FF414141FF4040 + 40FF404040FF404040FF404040FF3F3F3FFF3F3F3FFF3E3E3EFF3E3E3EFF3D3D + 3DFF3D3D3DFF3D3D3DFF0000001600000016FFFFFFFFDBDBDBFF5C5C5CFF5353 + 53FF525252FF525252FF515151FF515151FF505050FF4F4F4FFF4F4F4FFF4E4E + 4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A + 4AFF494949FF484848FF484848FF474747FF474747FF474747FF464646FF4545 + 45FF454545FF444444FF434343FF434343FF434343FF424242FF424242FF4141 + 41FF414141FF404040FF404040FF404040FF404040FF3F3F3FFF3F3F3FFF3E3E + 3EFF3E3E3EFF3D3D3DFF0000001600000016FFFFFFFFFFFFFFFFB8B8B8FF5454 + 54FF545454FF535353FF525252FF515151FF515151FF515151FF505050FF4F4F + 4FFF4E4E4EFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C4CFF4C4C4CFF4B4B4BFF4A4A + 4AFF4A4A4AFF4A4A4AFF494949FF484848FF474747FF474747FF474747FF4646 + 46FF464646FF454545FF444444FF444444FF434343FF434343FF434343FF4242 + 42FF424242FF414141FF404040FF404040FF404040FF404040FF3F3F3FFF3F3F + 3FFF3E3E3EFF3E3E3EFF0000001600000016FFFFFFFFFFFFFFFFFFFFFFFFB8B8 + B8FF545454FF545454FF535353FF525252FF525252FF515151FF515151FF5050 + 50FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B + 4BFF4B4B4BFF4A4A4AFF4A4A4AFF494949FF494949FF484848FF474747FF4747 + 47FF474747FF464646FF454545FF454545FF444444FF434343FF434343FF4343 + 43FF434343FF424242FF414141FF414141FF404040FF404040FF404040FF4040 + 40FF3F3F3FFF3F3F3FFF0000001600000016FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFB8B8B8FF545454FF545454FF545454FF535353FF525252FF515151FF5151 + 51FF515151FF505050FF4F4F4FFF4E4E4EFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C + 4CFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A4AFF494949FF484848FF4848 + 48FF474747FF474747FF474747FF464646FF454545FF444444FF444444FF4343 + 43FF434343FF434343FF424242FF424242FF414141FF414141FF404040FF4040 + 40FF404040FF3F3F3FFF0000001600000016FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFB8B8B8FF555555FF545454FF545454FF535353FF535353FF5252 + 52FF515151FF515151FF505050FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D + 4DFF4D4D4DFF4C4C4CFF4B4B4BFF4B4B4BFF4A4A4AFF4A4A4AFF494949FF4949 + 49FF484848FF474747FF474747FF474747FF464646FF464646FF454545FF4444 + 44FF444444FF434343FF434343FF434343FF424242FF414141FF414141FF4040 + 40FF404040FF404040FF0000001600000016FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFB8B8B8FF555555FF545454FF545454FF545454FF5353 + 53FF525252FF525252FF515151FF515151FF505050FF4F4F4FFF4F4F4FFF4E4E + 4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A + 4AFF494949FF484848FF484848FF474747FF474747FF474747FF464646FF4545 + 45FF454545FF444444FF434343FF434343FF434343FF424242FF424242FF4141 + 41FF414141FF404040FF0000001600000016FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFB8B8B8FF565656FF555555FF545454FF5454 + 54FF545454FF535353FF525252FF515151FF515151FF515151FF505050FF4F4F + 4FFF4E4E4EFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C4CFF4C4C4CFF4B4B4BFF4A4A + 4AFF4A4A4AFF4A4A4AFF494949FF484848FF474747FF474747FF474747FF4646 + 46FF464646FF454545FF444444FF444444FF434343FF434343FF434343FF4242 + 42FF424242FF414141FF0000001600000016FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C4C4FF5F5F5FFF555555FF5555 + 55FF545454FF545454FF535353FF525252FF525252FF515151FF515151FF5050 + 50FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B + 4BFF4A4A4AFF4A4A4AFF4A4A4AFF494949FF494949FF484848FF474747FF4747 + 47FF474747FF464646FF454545FF454545FF444444FF434343FF434343FF4343 + 43FF434343FF424242FF0000001600000016FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDCDCDCFF686868FF5656 + 56FF555555FF545454FF545454FF545454FF535353FF525252FF515151FF5151 + 51FF515151FF505050FF4F4F4FFF4E4E4EFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C + 4CFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A4AFF494949FF484848FF4848 + 48FF474747FF474747FF464646FF464646FF454545FF444444FF444444FF4343 + 43FF434343FF434343FF0000001600000016FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4F4FF7A7A + 7AFF565656FF555555FF555555FF545454FF545454FF535353FF535353FF5252 + 52FF515151FF515151FF505050FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D + 4DFF4D4D4DFF4C4C4CFF4B4B4BFF4B4B4BFF4A4A4AFF4A4A4AFF494949FF4949 + 49FF484848FF474747FF474747FF474747FF464646FF464646FF454545FF4444 + 44FF444444FF434343FF0000001600000016FFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFA2A2A2FF575757FF565656FF555555FF545454FF545454FF545454FF5353 + 53FF525252FF515151FF515151FF515151FF505050FF4F4F4FFF4F4F4FFF4E4E + 4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A + 4AFF494949FF484848FF484848FF474747FF474747FF474747FF464646FF4545 + 45FF454545FF444444FF000000160000001666A4F9FFF1F7FEFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFD0D0D0FF686868FF565656FF565656FF555555FF545454FF5454 + 54FF535353FF535353FF525252FF515151FF515151FF515151FF505050FF4F4F + 4FFF4E4E4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4B4B4BFF4A4A + 4AFF4A4A4AFF4A4A4AFF494949FF484848FF474747FF474747FF474747FF4646 + 46FF464646FF454545FF00000016000000163F89F7FF5B9DF9FFF1F7FEFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFF4F4F4FF989898FF575757FF565656FF555555FF5454 + 54FF545454FF545454FF535353FF525252FF525252FF515151FF515151FF5050 + 50FF4F4F4FFF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B + 4BFF4A4A4AFF4A4A4AFF4A4A4AFF494949FF484848FF484848FF474747FF4747 + 47FF474747FF464646FF0000001600000016408AF7FF3F89F7FF5B9DF9FFF1F7 + FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0D0D0FF686868FF575757FF5656 + 56FF555555FF545454FF545454FF545454FF535353FF525252FF515151FF5151 + 51FF515151FF505050FF4F4F4FFF4E4E4EFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C + 4CFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A4AFF494949FF484848FF4848 + 48FF474747FF474747FF0000001600000016418AF7FF408AF7FF408AF7FF4990 + F8FFD5E7FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4F4FFA3A3A3FF5F5F + 5FFF565656FF555555FF555555FF545454FF545454FF535353FF535353FF5252 + 52FF515151FF515151FF505050FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D + 4DFF4D4D4DFF4C4C4CFF4B4B4BFF4B4B4BFF4A4A4AFF4A4A4AFF494949FF4949 + 49FF484848FF474747FF0000001600000016428BF7FF418AF7FF418AF7FF408A + F7FF4990F8FFABD1FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7 + E7FF8E8E8EFF575757FF565656FF555555FF545454FF545454FF545454FF5353 + 53FF525252FF515151FF515151FF515151FF505050FF4F4F4FFF4F4F4FFF4E4E + 4EFF4D4D4DFF4D4D4DFF4C4C4CFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4A4A + 4AFF494949FF484848FF0000001600000016438CF7FF428BF7FF428BF7FF418A + F7FF408AF7FF408AF7FF7BB3FAFFF1F7FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFDCDCDCFF7A7A7AFF565656FF565656FF555555FF545454FF5454 + 54FF535353FF535353FF525252FF515151FF515151FF515151FF505050FF4F4F + 4FFF4E4E4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4B4B4BFF4A4A + 4AFF4A4A4AFF494949FF0000001600000016448CF7FF438CF7FF438CF7FF428B + F7FF418AF7FF418AF7FF408AF7FF5397F8FFD5E7FDFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFD0D0D0FF8E8E8EFF565656FF555555FF5454 + 54FF545454FF545454FF535353FF525252FF525252FF515151FF515151FF5050 + 50FF4F4F4FFF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B + 4BFF4A4A4AFF4A4A4AFF0000001600000016458DF7FF448CF7FF448CF7FF438C + F7FF438CF7FF428BF7FF418AF7FF418AF7FF408AF7FF92C1FBFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7E7FF8D8D8DFF5F5F + 5FFF555555FF545454FF545454FF545454FF535353FF525252FF515151FF5151 + 51FF515151FF505050FF4F4F4FFF4E4E4EFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C + 4CFF4C4C4CFF4B4B4BFF0000001600000016468DF7FF458DF7FF458DF7FF448C + F7FF448CF7FF438CF7FF428BF7FF428BF7FF418AF7FF408AF7FF5498F8FFC6DF + FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4 + F4FFB8B8B8FF707070FF555555FF545454FF545454FF535353FF525252FF5252 + 52FF515151FF515151FF505050FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D + 4DFF4D4D4DFF4C4C4CFF0000001600000016478EF7FF468DF7FF468DF7FF458D + F7FF458DF7FF448CF7FF438CF7FF438CF7FF428BF7FF418AF7FF418AF7FF408A + F7FF70ACFAFFE3EFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFDCDCDCFF979797FF666666FF545454FF545454FF5353 + 53FF525252FF515151FF515151FF515151FF505050FF4F4F4FFF4E4E4EFF4E4E + 4EFF4D4D4DFF4D4D4DFF0000001600000016488EF7FF478EF7FF478EF7FF468D + F7FF468DF7FF458DF7FF448CF7FF448CF7FF438CF7FF428BF7FF428BF7FF418A + F7FF408AF7FF408AF7FF87BAFBFFF1F7FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDBDBDBFF979797FF6F6F + 6FFF535353FF535353FF525252FF515151FF515151FF505050FF505050FF4F4F + 4FFF4E4E4EFF4D4D4DFF0000001600000016498FF7FF488EF7FF488EF7FF478E + F7FF478EF7FF468DF7FF458DF7FF458DF7FF448CF7FF438CF7FF438CF7FF428B + F7FF418AF7FF418AF7FF408AF7FF4990F8FF92C1FBFFF1F7FEFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFE7E7E7FFB7B7B7FF8B8B8BFF646464FF515151FF515151FF515151FF5050 + 50FF4F4F4FFF4F4F4FFF00000016000000164A90F7FF498FF7FF498FF7FF488E + F7FF478EF7FF478EF7FF468DF7FF468DF7FF458DF7FF448CF7FF448CF7FF438C + F7FF438CF7FF428BF7FF418AF7FF408AF7FF408AF7FF4990F8FF7BB2FAFFE2EF + FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6E6E6FFC2C2C2FF9F9F9FFF7575 + 75FF595959FF505050FF00000016000000164A90F7FF4A90F7FF498FF7FF498F + F7FF488EF7FF488EF7FF478EF7FF478EF7FF468DF7FF458DF7FF458DF7FF448C + F7FF448CF7FF438CF7FF428BF7FF428BF7FF418AF7FF408AF7FF408AF7FF3F89 + F7FF6FACFAFFB9D7FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF00000016000000164B90F7FF4B90F7FF4A90F7FF4A90 + F7FF498FF7FF498FF7FF488EF7FF488EF7FF478EF7FF468DF7FF468DF7FF458D + F7FF458DF7FF448CF7FF438CF7FF438CF7FF428BF7FF418AF7FF418AF7FF408A + F7FF3F89F7FF3F89F7FF5297F8FF91C1FBFFE2EFFEFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF00000016000000164B91F7FF4B90F7FF4B90F7FF4A90 + F7FF4A90F7FF498FF7FF498FF7FF488EF7FF488EF7FF478EF7FF478EF7FF468D + F7FF468DF7FF458DF7FF448CF7FF448CF7FF438CF7FF428BF7FF428BF7FF418A + F7FF408AF7FF408AF7FF3F89F7FF3E89F7FF3E89F7FF5A9DF9FF9DC8FBFFE2EE + FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF00000016000000164C91F7FF4B91F7FF4B91F7FF4B90 + F7FF4B90F7FF4A90F7FF4A90F7FF498FF7FF498FF7FF488EF7FF488EF7FF478E + F7FF468DF7FF468DF7FF458DF7FF458DF7FF448CF7FF438CF7FF438CF7FF428B + F7FF418AF7FF418AF7FF408AF7FF3F89F7FF3F89F7FF3E89F7FF3E88F7FF3D88 + F7FF599CF9FF85B9FBFFC5DFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF00000016000000164C91F7FF4C91F7FF4B91F7FF4B91 + F7FF4B91F7FF4B90F7FF4B90F7FF4A90F7FF4A90F7FF498FF7FF488EF7FF488E + F7FF478EF7FF478EF7FF468DF7FF468DF7FF458DF7FF448CF7FF448CF7FF438C + F7FF428BF7FF428BF7FF418AF7FF408AF7FF408AF7FF3F89F7FF3E89F7FF3E89 + F7FF3E88F7FF3D88F7FF3C87F7FF3C87F7FF63A3F9FF8FC0FBFFC4DEFDFFF1F7 + FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF00000016000000164D92F7FF4C91F7FF4C91F7FF4C91 + F7FF4B91F7FF4B91F7FF4B90F7FF4B90F7FF4A90F7FF4A90F7FF498FF7FF498F + F7FF488EF7FF488EF7FF478EF7FF478EF7FF468DF7FF458DF7FF458DF7FF448C + F7FF438CF7FF438CF7FF428BF7FF428BF7FF418AF7FF408AF7FF3F89F7FF3F89 + F7FF3E89F7FF3E88F7FF3E88F7FF3D88F7FF3C87F7FF3B86F7FF3B86F7FF3A86 + F7FF4D94F7FF6BA9FAFF8EBFFBFFB6D5FCFFD3E6FDFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF00000016000000164D92F7FF4D92F7FF4D92F7FF4C91 + F7FF4C91F7FF4B91F7FF4B91F7FF4B91F7FF4B90F7FF4B90F7FF4A90F7FF4A90 + F7FF498FF7FF498FF7FF488EF7FF478EF7FF478EF7FF468DF7FF468DF7FF458D + F7FF448CF7FF448CF7FF438CF7FF438CF7FF428BF7FF418AF7FF418AF7FF408A + F7FF3F89F7FF3E89F7FF3E89F7FF3E88F7FF3D88F7FF3D88F7FF3C87F7FF3B86 + F7FF3A86F7FF3A86F7FF3985F7FF3885F7FF3784F7FF3784F7FF4B92F7FF5EA0 + F9FF68A7FAFFC3DDFDFF00000016000000164E92F8FF4E92F8FF4D92F7FF4D92 + F7FF4D92F7FF4C91F7FF4C91F7FF4B91F7FF4B91F7FF4B90F7FF4B90F7FF4A90 + F7FF4A90F7FF498FF7FF498FF7FF488EF7FF488EF7FF478EF7FF478EF7FF468D + F7FF458DF7FF458DF7FF448CF7FF448CF7FF438CF7FF428BF7FF428BF7FF418A + F7FF408AF7FF408AF7FF3F89F7FF3E89F7FF3E88F7FF3E88F7FF3D88F7FF3C87 + F7FF3C87F7FF3B86F7FF3A86F7FF3985F7FF3985F7FF3885F7FF3784F7FF3684 + F6FF3583F6FF408AF7FF00000016000000164E92F8FF4E92F8FF4E92F8FF4D92 + F7FF4D92F7FF4D92F7FF4C91F7FF4C91F7FF4C91F7FF4B91F7FF4B91F7FF4B90 + F7FF4B90F7FF4A90F7FF4A90F7FF498FF7FF498FF7FF488EF7FF488EF7FF478E + F7FF468DF7FF468DF7FF458DF7FF458DF7FF448CF7FF438CF7FF438CF7FF428B + F7FF418AF7FF418AF7FF408AF7FF3F89F7FF3F89F7FF3E89F7FF3E88F7FF3D88 + F7FF3D88F7FF3C87F7FF3B86F7FF3B86F7FF3A86F7FF3985F7FF3885F7FF3784 + F7FF3784F7FF3684F6FF00000016000000164E92F8FF4E92F8FF4E92F8FF4E92 + F8FF4E92F8FF4D92F7FF4D92F7FF4D92F7FF4C91F7FF4C91F7FF4B91F7FF4B91 + F7FF4B90F7FF4B90F7FF4B90F7FF4A90F7FF4A90F7FF498FF7FF488EF7FF488E + F7FF478EF7FF478EF7FF468DF7FF468DF7FF458DF7FF448CF7FF448CF7FF438C + F7FF428BF7FF428BF7FF418AF7FF408AF7FF408AF7FF3F89F7FF3E89F7FF3E89 + F7FF3E88F7FF3D88F7FF3C87F7FF3C87F7FF3B86F7FF3A86F7FF3985F7FF3985 + F7FF3885F7FF3784F7FF00000016000000134D90F4F14E92F8FF4E92F8FF4E92 + F8FF4E92F8FF4E92F8FF4D92F7FF4D92F7FF4D92F7FF4C91F7FF4C91F7FF4C91 + F7FF4B91F7FF4B91F7FF4B90F7FF4B90F7FF4A90F7FF4A90F7FF498FF7FF498F + F7FF488EF7FF488EF7FF478EF7FF478EF7FF468DF7FF458DF7FF458DF7FF448C + F7FF438CF7FF438CF7FF428BF7FF418AF7FF418AF7FF408AF7FF3F89F7FF3F89 + F7FF3E89F7FF3E88F7FF3E88F7FF3D88F7FF3C87F7FF3B86F7FF3B86F7FF3A86 + F7FF3985F7FF3783F3F1000000130000000C437ED6A34E92F8FF4E92F8FF4E92 + F8FF4E92F8FF4E92F8FF4E92F8FF4E92F8FF4D92F7FF4D92F7FF4D92F7FF4C91 + F7FF4C91F7FF4B91F7FF4B91F7FF4B91F7FF4B90F7FF4B90F7FF4A90F7FF4A90 + F7FF498FF7FF498FF7FF488EF7FF478EF7FF478EF7FF468DF7FF468DF7FF458D + F7FF448CF7FF448CF7FF438CF7FF438CF7FF428BF7FF418AF7FF418AF7FF408A + F7FF3F89F7FF3E89F7FF3E89F7FF3E88F7FF3D88F7FF3D88F7FF3C87F7FF3B86 + F7FF3A86F7FF3272D39C0000000B00000003111F35194581DBA44D90F4F14E92 + F8FF4E92F8FF4E92F8FF4E92F8FF4E92F8FF4E92F8FF4E92F8FF4D92F7FF4D92 + F7FF4C91F7FF4C91F7FF4C91F7FF4B91F7FF4B91F7FF4B90F7FF4B90F7FF4A90 + F7FF4A90F7FF498FF7FF498FF7FF488EF7FF488EF7FF478EF7FF478EF7FF468D + F7FF458DF7FF458DF7FF448CF7FF448CF7FF438CF7FF428BF7FF428BF7FF418A + F7FF408AF7FF408AF7FF3F89F7FF3E89F7FF3E88F7FF3E88F7FF3D88F7FF3B85 + F3F23577DAA40D1E37180000000300000000000000030000000C000000130000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 00130000000C0000000300000000800000000001000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008000000000010000280000002000000040000000010020000000 + 0000801000000000000000000000000000000000000000000002000000080000 + 0011000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 00160000001600000016000000110000000800000002000000082C2C2C5F3838 + 38EC383838FF373737FF373737FF363636FF353535FF353535FF343434FF3434 + 34FF333333FF323232FF323232FF313131FF313131FF303030FF303030FF3030 + 30FF2F2F2FFF2E2E2EFF2E2E2EFF2E2E2EFF2E2E2EFF2E2E2EFF2D2D2DFF2C2C + 2CFF2C2C2CFF2C2C2CFF2B2B2BEC2121215F00000008000000113E3E3EEA4B4B + 4BFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF494949FF484848FF474747FF4747 + 47FF464646FF454545FF444444FF434343FF434343FF424242FF414141FF4040 + 40FF404040FF3F3F3FFF3F3F3FFF3E3E3EFF3D3D3DFF3D3D3DFF3D3D3DFF3C3C + 3CFF3C3C3CFF3B3B3BFF3A3A3AFF2F2F2FEA00000011000000164E4E4EFF4E4E + 4EFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF484848FF4747 + 47FF474747FF464646FF454545FF444444FF434343FF434343FF424242FF4141 + 41FF414141FF404040FF404040FF3F3F3FFF3E3E3EFF3E3E3EFF3D3D3DFF3D3D + 3DFF3D3D3DFF3C3C3CFF3B3B3BFF393939FF0000001600000016515151FF5050 + 50FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C4CFF4A4A4AFF4A4A4AFF4949 + 49FF484848FF474747FF474747FF464646FF454545FF444444FF434343FF4343 + 43FF424242FF414141FF404040FF404040FF3F3F3FFF3F3F3FFF3E3E3EFF3D3D + 3DFF3D3D3DFF3D3D3DFF3C3C3CFF3C3C3CFF00000016000000165B5B5BFF5151 + 51FF515151FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A + 4AFF4A4A4AFF494949FF484848FF474747FF464646FF454545FF444444FF4343 + 43FF434343FF424242FF424242FF414141FF404040FF404040FF3F3F3FFF3E3E + 3EFF3E3E3EFF3D3D3DFF3D3D3DFF3D3D3DFF0000001600000016A1A1A1FF5353 + 53FF525252FF515151FF515151FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C + 4CFF4B4B4BFF4A4A4AFF494949FF484848FF474747FF474747FF464646FF4545 + 45FF444444FF434343FF434343FF424242FF414141FF404040FF404040FF4040 + 40FF3F3F3FFF3E3E3EFF3D3D3DFF3D3D3DFF0000001600000016FFFFFFFF7878 + 78FF545454FF535353FF515151FF515151FF505050FF4F4F4FFF4E4E4EFF4D4D + 4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF494949FF484848FF474747FF4747 + 47FF464646FF454545FF444444FF434343FF434343FF424242FF414141FF4040 + 40FF404040FF3F3F3FFF3F3F3FFF3E3E3EFF0000001600000016FFFFFFFFF4F4 + F4FF707070FF545454FF535353FF525252FF515151FF515151FF505050FF4E4E + 4EFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A4AFF494949FF484848FF4747 + 47FF474747FF464646FF454545FF444444FF434343FF434343FF424242FF4141 + 41FF404040FF404040FF404040FF3F3F3FFF0000001600000016FFFFFFFFFFFF + FFFFF4F4F4FF707070FF545454FF545454FF535353FF525252FF515151FF5050 + 50FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4B4B4BFF4A4A4AFF4A4A4AFF4949 + 49FF484848FF474747FF474747FF464646FF454545FF444444FF434343FF4343 + 43FF424242FF414141FF404040FF404040FF0000001600000016FFFFFFFFFFFF + FFFFFFFFFFFFF4F4F4FF717171FF555555FF545454FF545454FF525252FF5151 + 51FF515151FF505050FF4F4F4FFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A + 4AFF4A4A4AFF494949FF474747FF474747FF464646FF454545FF444444FF4343 + 43FF434343FF424242FF414141FF414141FF0000001600000016FFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFF4F4F4FF717171FF565656FF545454FF545454FF5353 + 53FF525252FF515151FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4C4C + 4CFF4A4A4AFF4A4A4AFF494949FF484848FF474747FF474747FF464646FF4545 + 45FF444444FF434343FF434343FF424242FF0000001600000016FFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4F4FF7A7A7AFF565656FF555555FF5454 + 54FF545454FF535353FF515151FF515151FF505050FF4F4F4FFF4E4E4EFF4D4D + 4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF494949FF484848FF474747FF4646 + 46FF454545FF444444FF434343FF434343FF0000001600000016FFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF989898FF575757FF5656 + 56FF555555FF545454FF535353FF525252FF515151FF515151FF4F4F4FFF4E4E + 4EFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A4AFF494949FF484848FF4747 + 47FF474747FF464646FF454545FF444444FF000000160000001666A4F9FFF1F7 + FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C4C4FF6060 + 60FF565656FF555555FF545454FF545454FF535353FF525252FF515151FF5050 + 50FF4F4F4FFF4E4E4EFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF4949 + 49FF484848FF474747FF474747FF464646FF0000001600000016408AF7FF5C9E + F9FFF1F7FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7 + E7FF7A7A7AFF575757FF565656FF555555FF545454FF535353FF525252FF5151 + 51FF515151FF505050FF4E4E4EFF4D4D4DFF4D4D4DFF4C4C4CFF4B4B4BFF4A4A + 4AFF4A4A4AFF484848FF474747FF474747FF0000001600000016418AF7FF408A + F7FF5C9EF9FFD5E7FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFB9B9B9FF606060FF575757FF555555FF545454FF545454FF5353 + 53FF525252FF515151FF505050FF4F4F4FFF4E4E4EFF4D4D4DFF4D4D4DFF4B4B + 4BFF4A4A4AFF4A4A4AFF494949FF484848FF0000001600000016438CF7FF428B + F7FF418AF7FF4A90F8FFABD1FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFF4F4F4FF999999FF575757FF565656FF555555FF5454 + 54FF545454FF525252FF515151FF515151FF505050FF4F4F4FFF4D4D4DFF4D4D + 4DFF4C4C4CFF4B4B4BFF4A4A4AFF4A4A4AFF0000001600000016458DF7FF448C + F7FF438CF7FF428BF7FF418AF7FF70ACFAFFF1F7FEFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7E7FF8E8E8EFF575757FF5656 + 56FF545454FF545454FF535353FF525252FF515151FF505050FF4F4F4FFF4E4E + 4EFF4D4D4DFF4D4D4DFF4C4C4CFF4A4A4AFF0000001600000016468DF7FF458D + F7FF448CF7FF438CF7FF428BF7FF418AF7FF4A90F8FFABD1FCFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7E7FFA3A3 + A3FF5F5F5FFF555555FF545454FF545454FF535353FF515151FF515151FF5050 + 50FF4F4F4FFF4E4E4EFF4D4D4DFF4C4C4CFF0000001600000016478EF7FF478E + F7FF468DF7FF458DF7FF448CF7FF438CF7FF428BF7FF418AF7FF67A5F9FFC6DF + FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFB9B9B9FF848484FF555555FF545454FF535353FF525252FF5151 + 51FF515151FF4F4F4FFF4E4E4EFF4D4D4DFF0000001600000016498FF7FF488E + F7FF478EF7FF468DF7FF458DF7FF448CF7FF438CF7FF428BF7FF418AF7FF408A + F7FF66A5F9FFC6DFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4F4FFB8B8B8FF838383FF545454FF5353 + 53FF525252FF515151FF505050FF4F4F4FFF00000016000000164A90F7FF498F + F7FF488EF7FF488EF7FF478EF7FF468DF7FF458DF7FF448CF7FF438CF7FF428B + F7FF418AF7FF408AF7FF66A5F9FFB9D7FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCF + CFFFA0A0A0FF818181FF636363FF515151FF00000016000000164B90F7FF4A90 + F7FF4A90F7FF498FF7FF488EF7FF478EF7FF468DF7FF458DF7FF448CF7FF438C + F7FF428BF7FF418AF7FF408AF7FF3F89F7FF5297F8FF86B9FBFFE2EFFEFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000016000000164B91F7FF4B91 + F7FF4B90F7FF4A90F7FF498FF7FF498FF7FF488EF7FF478EF7FF468DF7FF458D + F7FF448CF7FF438CF7FF428BF7FF418AF7FF408AF7FF3F89F7FF3E89F7FF5A9D + F9FF85B9FBFFD4E7FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000016000000164C91F7FF4C91 + F7FF4B91F7FF4B90F7FF4B90F7FF4A90F7FF498FF7FF488EF7FF478EF7FF468D + F7FF468DF7FF458DF7FF448CF7FF438CF7FF428BF7FF418AF7FF408AF7FF3E89 + F7FF3E88F7FF3D88F7FF468EF8FF6DAAFAFF8FC0FBFFC4DEFDFFF1F7FEFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000016000000164D92F7FF4D92 + F7FF4C91F7FF4B91F7FF4B91F7FF4B90F7FF4A90F7FF4A90F7FF498FF7FF488E + F7FF478EF7FF468DF7FF458DF7FF448CF7FF438CF7FF428BF7FF418AF7FF408A + F7FF3F89F7FF3E89F7FF3E88F7FF3D88F7FF3C87F7FF3A86F7FF3985F7FF4C93 + F7FF60A1F9FF81B7FBFF8CBEFBFFC3DDFDFF00000016000000164E92F8FF4E92 + F8FF4D92F7FF4C91F7FF4C91F7FF4B91F7FF4B90F7FF4B90F7FF4A90F7FF498F + F7FF488EF7FF478EF7FF478EF7FF468DF7FF458DF7FF448CF7FF438CF7FF428B + F7FF418AF7FF408AF7FF3F89F7FF3E89F7FF3D88F7FF3C87F7FF3B86F7FF3A86 + F7FF3985F7FF3885F7FF3784F7FF3583F6FF00000016000000164E92F8FF4E92 + F8FF4E92F8FF4D92F7FF4D92F7FF4C91F7FF4C91F7FF4B91F7FF4B90F7FF4A90 + F7FF4A90F7FF498FF7FF488EF7FF478EF7FF468DF7FF458DF7FF448CF7FF438C + F7FF428BF7FF418AF7FF408AF7FF3F89F7FF3E89F7FF3E88F7FF3D88F7FF3C87 + F7FF3B86F7FF3A86F7FF3885F7FF3784F7FF00000016000000114C8FF3EC4E92 + F8FF4E92F8FF4E92F8FF4E92F8FF4D92F7FF4C91F7FF4C91F7FF4B91F7FF4B91 + F7FF4B90F7FF4A90F7FF498FF7FF488EF7FF488EF7FF478EF7FF468DF7FF458D + F7FF448CF7FF438CF7FF428BF7FF418AF7FF408AF7FF3F89F7FF3E89F7FF3E88 + F7FF3C87F7FF3B86F7FF3A86F7FF3882F2EC00000011000000083869B1564A8B + EBD44E92F8FF4E92F8FF4E92F8FF4E92F8FF4D92F7FF4D92F7FF4C91F7FF4C91 + F7FF4B91F7FF4B90F7FF4B90F7FF4A90F7FF498FF7FF488EF7FF478EF7FF468D + F7FF458DF7FF448CF7FF448CF7FF438CF7FF428BF7FF408AF7FF3F89F7FF3E89 + F7FF3E88F7FF3D88F7FF3980EAD42B60B1560000000800000001000000070000 + 0010000000150000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001600000016000000160000001600000016000000160000 + 0016000000160000001500000010000000070000000100000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000028000000100000002000 + 0000010020000000000040040000000000000000000000000000000000003939 + 39C3373737FF373737FF353535FF343434FF333333FF323232FF313131FF3030 + 30FF303030FF2E2E2EFF2E2E2EFF2E2E2EFF2D2D2DFF2C2C2CFF2C2C2CC44949 + 49FF4D4D4DFF4B4B4BFF4A4A4AFF484848FF474747FF454545FF444444FF4343 + 43FF414141FF404040FF3F3F3FFF3E3E3EFF3D3D3DFF3D3D3DFF383838FF5151 + 51FF505050FF4E4E4EFF4D4D4DFF4B4B4BFF4A4A4AFF484848FF474747FF4545 + 45FF434343FF434343FF414141FF404040FF3F3F3FFF3E3E3EFF3D3D3DFFB8B8 + B8FF535353FF515151FF4F4F4FFF4D4D4DFF4C4C4CFF4A4A4AFF494949FF4747 + 47FF464646FF454545FF434343FF424242FF414141FF404040FF3F3F3FFFFFFF + FFFF8D8D8DFF545454FF525252FF515151FF4F4F4FFF4D4D4DFF4C4C4CFF4A4A + 4AFF494949FF474747FF464646FF444444FF434343FF424242FF404040FFFFFF + FFFFFFFFFFFFA2A2A2FF555555FF545454FF525252FF515151FF4F4F4FFF4D4D + 4DFF4B4B4BFF4A4A4AFF484848FF474747FF464646FF444444FF434343FF6DAB + FAFFF1F7FEFFFFFFFFFFB9B9B9FF5F5F5FFF555555FF535353FF515151FF5050 + 50FF4E4E4EFF4D4D4DFF4B4B4BFF4A4A4AFF484848FF474747FF454545FF3E89 + F7FF599CF9FFF1F7FEFFFFFFFFFFDCDCDCFF727272FF565656FF545454FF5353 + 53FF515151FF505050FF4E4E4EFF4D4D4DFF4A4A4AFF4A4A4AFF484848FF428B + F7FF408AF7FF488FF8FFC5DFFDFFFFFFFFFFFFFFFFFFA4A4A4FF606060FF5656 + 56FF545454FF525252FF515151FF4F4F4FFF4D4D4DFF4C4C4CFF4A4A4AFF458D + F7FF438CF7FF418AF7FF408AF7FF7BB2FAFFF1F7FEFFFFFFFFFFF4F4F4FFA3A3 + A3FF5F5F5FFF555555FF545454FF525252FF515151FF4F4F4FFF4D4D4DFF488E + F7FF468DF7FF458DF7FF438CF7FF418AF7FF4990F8FF91C1FBFFF1F7FEFFFFFF + FFFFF4F4F4FFAFAFAFFF717171FF555555FF545454FF525252FF505050FF4A90 + F7FF498FF7FF478EF7FF468DF7FF448CF7FF428BF7FF418AF7FF4990F8FF7AB2 + FAFFD4E7FDFFFFFFFFFFFFFFFFFFE7E7E7FFAEAEAEFF838383FF646464FF4C91 + F7FF4B90F7FF4A90F7FF498FF7FF478EF7FF458DF7FF448CF7FF428BF7FF408A + F7FF3E89F7FF5096F8FF78B1FAFFB7D6FCFFE1EEFEFFFFFFFFFFFFFFFFFF4D92 + F7FF4C91F7FF4B91F7FF4B90F7FF4A90F7FF488EF7FF478EF7FF458DF7FF438C + F7FF428BF7FF408AF7FF3E89F7FF3D88F7FF3B86F7FF438CF7FF60A1F9FF4E92 + F8FF4E92F8FF4D92F7FF4C91F7FF4B91F7FF4B90F7FF498FF7FF488EF7FF468D + F7FF458DF7FF438CF7FF418AF7FF3F89F7FF3E88F7FF3C87F7FF3A86F7FF4E92 + F8C34E92F8FF4E92F8FF4E92F8FF4D92F7FF4C91F7FF4B91F7FF4A90F7FF498F + F7FF488EF7FF468DF7FF448CF7FF438CF7FF418AF7FF3F89F7FF3E88F7C30000 + AC410000AC410000AC410000AC410000AC410000AC410000AC410000AC410000 + AC410000AC410000AC410000AC410000AC410000AC410000AC410000AC412800 + 000030000000600000000100180000000000801C000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000032323237 + 3737373737373737373737373737363636363636353535353535343434343434 + 3434343333333333333232323232323232323131313131313131313131313030 + 303030303030302F2F2F2F2F2F2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E + 2E2E2D2D2D2D2D2D2D2D2D2C2C2C2C2C2C2C2C2C2C2C2C2C2C2C2B2B2B272727 + 0000000000000000003333334545454B4B4B4B4B4B4B4B4B4A4A4A4A4A4A4949 + 4949494948484847474747474747474746464646464645454544444444444443 + 43434343434343434242424141414141414040404040404040404040403F3F3F + 3F3F3F3E3E3E3E3E3E3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3C3C3C3C3C3C3C3C + 3C3B3B3B3B3B3B3B3B3B3A3A3A3535352727270000000000004444444D4D4D4D + 4D4D4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A494949484848484848474747 + 4747474747474646464545454545454444444343434343434343434242424242 + 424141414141414040404040404040403F3F3F3F3F3F3E3E3E3E3E3E3E3E3E3D + 3D3D3D3D3D3D3D3D3D3D3D3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3B3B3B3B3B3B + 3333330000000000004D4D4D4E4E4E4E4E4E4D4D4D4D4D4D4C4C4C4B4B4B4B4B + 4B4A4A4A4A4A4A4A4A4A49494948484847474747474747474746464646464645 + 4545444444444444434343434343434343424242424242414141404040404040 + 4040404040403F3F3F3F3F3F3E3E3E3E3E3E3D3D3D3D3D3D3D3D3D3D3D3D3D3D + 3D3C3C3C3C3C3C3C3C3C3B3B3B3B3B3B3A3A3A0000000000005050505050504F + 4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A494949 + 4949494848484747474747474747474646464545454545454444444343434343 + 434343434343434242424141414141414040404040404040404040403F3F3F3F + 3F3F3E3E3E3E3E3E3D3D3D3D3D3D3D3D3D3D3D3D3C3C3C3C3C3C3C3C3C3B3B3B + 3B3B3B0000000000005151515151515050504F4F4F4E4E4E4E4E4E4D4D4D4D4D + 4D4C4C4C4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A49494948484848484847474747 + 4747464646464646454545444444444444434343434343434343424242424242 + 4141414141414040404040404040403F3F3F3F3F3F3E3E3E3E3E3E3D3D3D3D3D + 3D3D3D3D3D3D3D3D3D3D3C3C3C3C3C3C3C3C3C00000000000052525251515151 + 51515050505050504F4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C4C4B4B4B4B4B4B + 4A4A4A4A4A4A4949494949494848484747474747474747474646464545454545 + 4544444444444443434343434343434342424241414141414140404040404040 + 40404040403F3F3F3F3F3F3E3E3E3E3E3E3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D + 3C3C3C0000000000009696965252525151515151515151515050504F4F4F4F4F + 4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A49494948 + 4848484848474747474747474747464646454545454545444444434343434343 + 4343434242424242424141414141414040404040404040403F3F3F3F3F3F3E3E + 3E3E3E3E3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D000000000000F4F4F464646453 + 53535252525151515151515151515050504F4F4F4E4E4E4D4D4D4D4D4D4D4D4D + 4C4C4C4B4B4B4B4B4B4A4A4A4A4A4A4A4A4A4949494848484747474747474747 + 4746464646464645454544444444444443434343434343434342424242424241 + 41414040404040404040404040403F3F3F3F3F3F3E3E3E3E3E3E3D3D3D3D3D3D + 3D3D3D000000000000FFFFFFDBDBDB5C5C5C5353535252525252525151515151 + 515050504F4F4F4F4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A4A + 4A4A4A4A4A494949484848484848474747474747474747464646454545454545 + 4444444343434343434343434242424242424141414141414040404040404040 + 404040403F3F3F3F3F3F3E3E3E3E3E3E3D3D3D000000000000FFFFFFFFFFFFB8 + B8B85454545454545353535252525151515151515151515050504F4F4F4E4E4E + 4E4E4E4D4D4D4D4D4D4C4C4C4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A4949494848 + 4847474747474747474746464646464645454544444444444443434343434343 + 43434242424242424141414040404040404040404040403F3F3F3F3F3F3E3E3E + 3E3E3E000000000000FFFFFFFFFFFFFFFFFFB8B8B85454545454545353535252 + 525252525151515151515050505050504F4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C + 4C4C4B4B4B4B4B4B4A4A4A4A4A4A494949494949484848474747474747474747 + 4646464545454545454444444343434343434343434343434242424141414141 + 414040404040404040404040403F3F3F3F3F3F000000000000FFFFFFFFFFFFFF + FFFFFFFFFFB8B8B8545454545454545454535353525252515151515151515151 + 5050504F4F4F4E4E4E4E4E4E4D4D4D4D4D4D4C4C4C4C4C4C4B4B4B4A4A4A4A4A + 4A4A4A4A49494948484848484847474747474747474746464645454544444444 + 4444434343434343434343424242424242414141414141404040404040404040 + 3F3F3F000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8B8B85555555454 + 545454545353535353535252525151515151515050505050504F4F4F4E4E4E4D + 4D4D4D4D4D4D4D4D4C4C4C4B4B4B4B4B4B4A4A4A4A4A4A494949494949484848 + 4747474747474747474646464646464545454444444444444343434343434343 + 43424242414141414141404040404040404040000000000000FFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFB8B8B8555555545454545454545454535353525252 + 5252525151515151515050504F4F4F4F4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C + 4C4B4B4B4A4A4A4A4A4A4A4A4A49494948484848484847474747474747474746 + 4646454545454545444444434343434343434343424242424242414141414141 + 404040000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8B8 + B856565655555554545454545454545453535352525251515151515151515150 + 50504F4F4F4E4E4E4E4E4E4D4D4D4D4D4D4C4C4C4C4C4C4B4B4B4A4A4A4A4A4A + 4A4A4A4949494848484747474747474747474646464646464545454444444444 + 44434343434343434343424242424242414141000000000000FFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4C4C45F5F5F555555555555545454 + 5454545353535252525252525151515151515050505050504F4F4F4E4E4E4D4D + 4D4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A49494949494948484847 + 4747474747474747464646454545454545444444434343434343434343434343 + 424242000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFDCDCDC68686856565655555554545454545454545453535352525251 + 51515151515151515050504F4F4F4E4E4E4E4E4E4D4D4D4D4D4D4C4C4C4C4C4C + 4B4B4B4A4A4A4A4A4A4A4A4A4949494848484848484747474747474646464646 + 46454545444444444444434343434343434343000000000000FFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4F47A7A7A565656 + 5555555555555454545454545353535353535252525151515151515050505050 + 504F4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C4C4B4B4B4B4B4B4A4A4A4A4A4A49 + 4949494949484848474747474747474747464646464646454545444444444444 + 434343000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFA2A2A257575756565655555554545454545454 + 54545353535252525151515151515151515050504F4F4F4F4F4F4E4E4E4D4D4D + 4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A4949494848484848484747 + 4747474747474746464645454545454544444400000000000066A4F9F1F7FEFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + D0D0D06868685656565656565555555454545454545353535353535252525151 + 515151515151515050504F4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C4C4B4B4B4B + 4B4B4A4A4A4A4A4A4A4A4A494949484848474747474747474747464646464646 + 4545450000000000003F89F75B9DF9F1F7FEFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4F498989857575756565655 + 55555454545454545454545353535252525252525151515151515050504F4F4F + 4F4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A4949 + 49484848484848474747474747474747464646000000000000408AF73F89F75B + 9DF9F1F7FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFD0D0D06868685757575656565555555454545454545454 + 545353535252525151515151515151515050504F4F4F4E4E4E4E4E4E4D4D4D4D + 4D4D4C4C4C4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A494949484848484848474747 + 474747000000000000418AF7408AF7408AF74990F8D5E7FDFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4F4A3 + A3A35F5F5F565656555555555555545454545454535353535353525252515151 + 5151515050505050504F4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C4C4B4B4B4B4B + 4B4A4A4A4A4A4A494949494949484848474747000000000000428BF7418AF741 + 8AF7408AF74990F8ABD1FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7E78E8E8E5757575656565555 + 555454545454545454545353535252525151515151515151515050504F4F4F4F + 4F4F4E4E4E4D4D4D4D4D4D4C4C4C4C4C4C4B4B4B4A4A4A4A4A4A4A4A4A494949 + 484848000000000000438CF7428BF7428BF7418AF7408AF7408AF77BB3FAF1F7 + FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFDCDCDC7A7A7A565656565656555555545454545454535353 + 5353535252525151515151515151515050504F4F4F4E4E4E4D4D4D4D4D4D4D4D + 4D4C4C4C4B4B4B4B4B4B4A4A4A4A4A4A494949000000000000448CF7438CF743 + 8CF7428BF7418AF7418AF7408AF75397F8D5E7FDFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0D0 + D08E8E8E56565655555554545454545454545453535352525252525251515151 + 51515050504F4F4F4F4F4F4E4E4E4D4D4D4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A + 4A4A4A000000000000458DF7448CF7448CF7438CF7438CF7428BF7418AF7418A + F7408AF792C1FBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7E78D8D8D5F5F5F555555 + 5454545454545454545353535252525151515151515151515050504F4F4F4E4E + 4E4E4E4E4D4D4D4D4D4D4C4C4C4C4C4C4B4B4B000000000000468DF7458DF745 + 8DF7448CF7448CF7438CF7428BF7428BF7418AF7408AF75498F8C6DFFDFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFF4F4F4B8B8B870707055555554545454545453535352 + 52525252525151515151515050505050504F4F4F4E4E4E4D4D4D4D4D4D4D4D4D + 4C4C4C000000000000478EF7468DF7468DF7458DF7458DF7448CF7438CF7438C + F7428BF7418AF7418AF7408AF770ACFAE3EFFEFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFDCDCDC9797976666665454545454545353535252525151515151515151 + 515050504F4F4F4E4E4E4E4E4E4D4D4D4D4D4D000000000000488EF7478EF747 + 8EF7468DF7468DF7458DF7448CF7448CF7438CF7428BF7428BF7418AF7408AF7 + 408AF787BAFBF1F7FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDBDBDB97 + 97976F6F6F5353535353535252525151515151515050505050504F4F4F4E4E4E + 4D4D4D000000000000498FF7488EF7488EF7478EF7478EF7468DF7458DF7458D + F7448CF7438CF7438CF7428BF7418AF7418AF7408AF74990F892C1FBF1F7FEFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7E7B7B7B78B8B8B6464 + 645151515151515151515050504F4F4F4F4F4F0000000000004A90F7498FF749 + 8FF7488EF7478EF7478EF7468DF7468DF7458DF7448CF7448CF7438CF7438CF7 + 428BF7418AF7408AF7408AF74990F87BB2FAE2EFFEFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6E6E6C2C2C29F9F9F757575595959 + 5050500000000000004A90F74A90F7498FF7498FF7488EF7488EF7478EF7478E + F7468DF7458DF7458DF7448CF7448CF7438CF7428BF7428BF7418AF7408AF740 + 8AF73F89F76FACFAB9D7FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000004B90F74B90F74A + 90F74A90F7498FF7498FF7488EF7488EF7478EF7468DF7468DF7458DF7458DF7 + 448CF7438CF7438CF7428BF7418AF7418AF7408AF73F89F73F89F75297F891C1 + FBE2EFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFF0000000000004B91F74B90F74B90F74A90F74A90F7498FF7498FF7488E + F7488EF7478EF7478EF7468DF7468DF7458DF7448CF7448CF7438CF7428BF742 + 8BF7418AF7408AF7408AF73F89F73E89F73E89F75A9DF99DC8FBE2EEFEFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000004C91F74B91F74B + 91F74B90F74B90F74A90F74A90F7498FF7498FF7488EF7488EF7478EF7468DF7 + 468DF7458DF7458DF7448CF7438CF7438CF7428BF7418AF7418AF7408AF73F89 + F73F89F73E89F73E88F73D88F7599CF985B9FBC5DFFDFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFF0000000000004C91F74C91F74B91F74B91F74B91F74B90F74B90F74A90 + F74A90F7498FF7488EF7488EF7478EF7478EF7468DF7468DF7458DF7448CF744 + 8CF7438CF7428BF7428BF7418AF7408AF7408AF73F89F73E89F73E89F73E88F7 + 3D88F73C87F73C87F763A3F98FC0FBC4DEFDF1F7FEFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000004D92F74C91F74C + 91F74C91F74B91F74B91F74B90F74B90F74A90F74A90F7498FF7498FF7488EF7 + 488EF7478EF7478EF7468DF7458DF7458DF7448CF7438CF7438CF7428BF7428B + F7418AF7408AF73F89F73F89F73E89F73E88F73E88F73D88F73C87F73B86F73B + 86F73A86F74D94F76BA9FA8EBFFBB6D5FCD3E6FDFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFF0000000000004D92F74D92F74D92F74C91F74C91F74B91F74B91F74B91 + F74B90F74B90F74A90F74A90F7498FF7498FF7488EF7478EF7478EF7468DF746 + 8DF7458DF7448CF7448CF7438CF7438CF7428BF7418AF7418AF7408AF73F89F7 + 3E89F73E89F73E88F73D88F73D88F73C87F73B86F73A86F73A86F73985F73885 + F73784F73784F74B92F75EA0F968A7FAC3DDFD0000000000004E92F84E92F84D + 92F74D92F74D92F74C91F74C91F74B91F74B91F74B90F74B90F74A90F74A90F7 + 498FF7498FF7488EF7488EF7478EF7478EF7468DF7458DF7458DF7448CF7448C + F7438CF7428BF7428BF7418AF7408AF7408AF73F89F73E89F73E88F73E88F73D + 88F73C87F73C87F73B86F73A86F73985F73985F73885F73784F73684F63583F6 + 408AF70000000000004E92F84E92F84E92F84D92F74D92F74D92F74C91F74C91 + F74C91F74B91F74B91F74B90F74B90F74A90F74A90F7498FF7498FF7488EF748 + 8EF7478EF7468DF7468DF7458DF7458DF7448CF7438CF7438CF7428BF7418AF7 + 418AF7408AF73F89F73F89F73E89F73E88F73D88F73D88F73C87F73B86F73B86 + F73A86F73985F73885F73784F73784F73684F60000000000004E92F84E92F84E + 92F84E92F84E92F84D92F74D92F74D92F74C91F74C91F74B91F74B91F74B90F7 + 4B90F74B90F74A90F74A90F7498FF7488EF7488EF7478EF7478EF7468DF7468D + F7458DF7448CF7448CF7438CF7428BF7428BF7418AF7408AF7408AF73F89F73E + 89F73E89F73E88F73D88F73C87F73C87F73B86F73A86F73985F73985F73885F7 + 3784F70000000000004D90F44E92F84E92F84E92F84E92F84E92F84D92F74D92 + F74D92F74C91F74C91F74C91F74B91F74B91F74B90F74B90F74A90F74A90F749 + 8FF7498FF7488EF7488EF7478EF7478EF7468DF7458DF7458DF7448CF7438CF7 + 438CF7428BF7418AF7418AF7408AF73F89F73F89F73E89F73E88F73E88F73D88 + F73C87F73B86F73B86F73A86F73985F73783F3000000000000437ED64E92F84E + 92F84E92F84E92F84E92F84E92F84E92F84D92F74D92F74D92F74C91F74C91F7 + 4B91F74B91F74B91F74B90F74B90F74A90F74A90F7498FF7498FF7488EF7478E + F7478EF7468DF7468DF7458DF7448CF7448CF7438CF7438CF7428BF7418AF741 + 8AF7408AF73F89F73E89F73E89F73E88F73D88F73D88F73C87F73B86F73A86F7 + 3272D30000000000000000004581DB4D90F44E92F84E92F84E92F84E92F84E92 + F84E92F84E92F84D92F74D92F74C91F74C91F74C91F74B91F74B91F74B90F74B + 90F74A90F74A90F7498FF7498FF7488EF7488EF7478EF7478EF7468DF7458DF7 + 458DF7448CF7448CF7438CF7428BF7428BF7418AF7408AF7408AF73F89F73E89 + F73E88F73E88F73D88F73B85F33577DA00000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFFFFFFFFFF0000C00000000003000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 0000000100008000000000010000800000000001000080000000000100008000 + 00000001000080000000000100008000000000010000C000000000030000FFFF + FFFFFFFF00002800000020000000400000000100180000000000800C00000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000383838383838373737373737 + 3636363535353535353434343434343333333232323232323131313131313030 + 303030303030302F2F2F2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2D2D2D2C2C2C2C + 2C2C2C2C2C2B2B2B0000000000000000003E3E3E4B4B4B4C4C4C4B4B4B4A4A4A + 4A4A4A4949494848484747474747474646464545454444444343434343434242 + 424141414040404040403F3F3F3F3F3F3E3E3E3D3D3D3D3D3D3D3D3D3C3C3C3C + 3C3C3B3B3B3A3A3A2F2F2F0000000000004E4E4E4E4E4E4D4D4D4D4D4D4C4C4C + 4B4B4B4A4A4A4A4A4A4848484747474747474646464545454444444343434343 + 434242424141414141414040404040403F3F3F3E3E3E3E3E3E3D3D3D3D3D3D3D + 3D3D3C3C3C3B3B3B3939390000000000005151515050504F4F4F4E4E4E4D4D4D + 4D4D4D4C4C4C4A4A4A4A4A4A4949494848484747474747474646464545454444 + 444343434343434242424141414040404040403F3F3F3F3F3F3E3E3E3D3D3D3D + 3D3D3D3D3D3C3C3C3C3C3C0000000000005B5B5B5151515151515050504F4F4F + 4E4E4E4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A4949494848484747474646464545 + 454444444343434343434242424242424141414040404040403F3F3F3E3E3E3E + 3E3E3D3D3D3D3D3D3D3D3D000000000000A1A1A1535353525252515151515151 + 4F4F4F4E4E4E4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A4949494848484747474747 + 474646464545454444444343434343434242424141414040404040404040403F + 3F3F3E3E3E3D3D3D3D3D3D000000000000FFFFFF787878545454535353515151 + 5151515050504F4F4F4E4E4E4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A4949494848 + 4847474747474746464645454544444443434343434342424241414140404040 + 40403F3F3F3F3F3F3E3E3E000000000000FFFFFFF4F4F4707070545454535353 + 5252525151515151515050504E4E4E4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A4949 + 4948484847474747474746464645454544444443434343434342424241414140 + 40404040404040403F3F3F000000000000FFFFFFFFFFFFF4F4F4707070545454 + 5454545353535252525151515050504F4F4F4E4E4E4D4D4D4D4D4D4B4B4B4A4A + 4A4A4A4A49494948484847474747474746464645454544444443434343434342 + 4242414141404040404040000000000000FFFFFFFFFFFFFFFFFFF4F4F4717171 + 5555555454545454545252525151515151515050504F4F4F4D4D4D4D4D4D4C4C + 4C4B4B4B4A4A4A4A4A4A49494947474747474746464645454544444443434343 + 4343424242414141414141000000000000FFFFFFFFFFFFFFFFFFFFFFFFF4F4F4 + 7171715656565454545454545353535252525151515050504F4F4F4E4E4E4D4D + 4D4D4D4D4C4C4C4A4A4A4A4A4A49494948484847474747474746464645454544 + 4444434343434343424242000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + F4F4F47A7A7A5656565555555454545454545353535151515151515050504F4F + 4F4E4E4E4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A49494948484847474746464645 + 4545444444434343434343000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF9898985757575656565555555454545353535252525151515151 + 514F4F4F4E4E4E4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A49494948484847474747 + 474746464645454544444400000000000066A4F9F1F7FEFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFC4C4C46060605656565555555454545454545353535252 + 525151515050504F4F4F4E4E4E4D4D4D4C4C4C4B4B4B4A4A4A4A4A4A49494948 + 4848474747474747464646000000000000408AF75C9EF9F1F7FEFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFE7E7E77A7A7A5757575656565555555454545353 + 535252525151515151515050504E4E4E4D4D4D4D4D4D4C4C4C4B4B4B4A4A4A4A + 4A4A484848474747474747000000000000418AF7408AF75C9EF9D5E7FDFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9B9B96060605757575555555454 + 545454545353535252525151515050504F4F4F4E4E4E4D4D4D4D4D4D4B4B4B4A + 4A4A4A4A4A494949484848000000000000438CF7428BF7418AF74A90F8ABD1FC + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4F49999995757575656 + 565555555454545454545252525151515151515050504F4F4F4D4D4D4D4D4D4C + 4C4C4B4B4B4A4A4A4A4A4A000000000000458DF7448CF7438CF7428BF7418AF7 + 70ACFAF1F7FEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7E78E8E + 8E5757575656565454545454545353535252525151515050504F4F4F4E4E4E4D + 4D4D4D4D4D4C4C4C4A4A4A000000000000468DF7458DF7448CF7438CF7428BF7 + 418AF74A90F8ABD1FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFE7E7E7A3A3A35F5F5F5555555454545454545353535151515151515050504F + 4F4F4E4E4E4D4D4D4C4C4C000000000000478EF7478EF7468DF7458DF7448CF7 + 438CF7428BF7418AF767A5F9C6DFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFB9B9B984848455555554545453535352525251515151 + 51514F4F4F4E4E4E4D4D4D000000000000498FF7488EF7478EF7468DF7458DF7 + 448CF7438CF7428BF7418AF7408AF766A5F9C6DFFDFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F4F4B8B8B883838354545453535352 + 52525151515050504F4F4F0000000000004A90F7498FF7488EF7488EF7478EF7 + 468DF7458DF7448CF7438CF7428BF7418AF7408AF766A5F9B9D7FCFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFA0 + A0A08181816363635151510000000000004B90F74A90F74A90F7498FF7488EF7 + 478EF7468DF7458DF7448CF7438CF7428BF7418AF7408AF73F89F75297F886B9 + FBE2EFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFF0000000000004B91F74B91F74B90F74A90F7498FF7 + 498FF7488EF7478EF7468DF7458DF7448CF7438CF7428BF7418AF7408AF73F89 + F73E89F75A9DF985B9FBD4E7FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFF0000000000004C91F74C91F74B91F74B90F74B90F7 + 4A90F7498FF7488EF7478EF7468DF7468DF7458DF7448CF7438CF7428BF7418A + F7408AF73E89F73E88F73D88F7468EF86DAAFA8FC0FBC4DEFDF1F7FEFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFF0000000000004D92F74D92F74C91F74B91F74B91F7 + 4B90F74A90F74A90F7498FF7488EF7478EF7468DF7458DF7448CF7438CF7428B + F7418AF7408AF73F89F73E89F73E88F73D88F73C87F73A86F73985F74C93F760 + A1F981B7FB8CBEFBC3DDFD0000000000004E92F84E92F84D92F74C91F74C91F7 + 4B91F74B90F74B90F74A90F7498FF7488EF7478EF7478EF7468DF7458DF7448C + F7438CF7428BF7418AF7408AF73F89F73E89F73D88F73C87F73B86F73A86F739 + 85F73885F73784F73583F60000000000004E92F84E92F84E92F84D92F74D92F7 + 4C91F74C91F74B91F74B90F74A90F74A90F7498FF7488EF7478EF7468DF7458D + F7448CF7438CF7428BF7418AF7408AF73F89F73E89F73E88F73D88F73C87F73B + 86F73A86F73885F73784F70000000000004C8FF34E92F84E92F84E92F84E92F8 + 4D92F74C91F74C91F74B91F74B91F74B90F74A90F7498FF7488EF7488EF7478E + F7468DF7458DF7448CF7438CF7428BF7418AF7408AF73F89F73E89F73E88F73C + 87F73B86F73A86F73882F20000000000000000004A8BEB4E92F84E92F84E92F8 + 4E92F84D92F74D92F74C91F74C91F74B91F74B90F74B90F74A90F7498FF7488E + F7478EF7468DF7458DF7448CF7448CF7438CF7428BF7408AF73F89F73E89F73E + 88F73D88F73980EA000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000FFFFFFFFC000000380000001800000018000 + 0001800000018000000180000001800000018000000180000001800000018000 + 0001800000018000000180000001800000018000000180000001800000018000 + 0001800000018000000180000001800000018000000180000001800000018000 + 000180000001C0000003FFFFFFFF280000001000000020000000010018000000 + 0000400300000000000000000000000000000000000039393937373737373735 + 35353434343333333232323131313030303030302E2E2E2E2E2E2E2E2E2D2D2D + 2C2C2C2C2C2C4949494D4D4D4B4B4B4A4A4A4848484747474545454444444343 + 434141414040403F3F3F3E3E3E3D3D3D3D3D3D3838385151515050504E4E4E4D + 4D4D4B4B4B4A4A4A4848484747474545454343434343434141414040403F3F3F + 3E3E3E3D3D3DB8B8B85353535151514F4F4F4D4D4D4C4C4C4A4A4A4949494747 + 474646464545454343434242424141414040403F3F3FFFFFFF8D8D8D54545452 + 52525151514F4F4F4D4D4D4C4C4C4A4A4A494949474747464646444444434343 + 424242404040FFFFFFFFFFFFA2A2A25555555454545252525151514F4F4F4D4D + 4D4B4B4B4A4A4A4848484747474646464444444343436DABFAF1F7FEFFFFFFB9 + B9B95F5F5F5555555353535151515050504E4E4E4D4D4D4B4B4B4A4A4A484848 + 4747474545453E89F7599CF9F1F7FEFFFFFFDCDCDC7272725656565454545353 + 535151515050504E4E4E4D4D4D4A4A4A4A4A4A484848428BF7408AF7488FF8C5 + DFFDFFFFFFFFFFFFA4A4A46060605656565454545252525151514F4F4F4D4D4D + 4C4C4C4A4A4A458DF7438CF7418AF7408AF77BB2FAF1F7FEFFFFFFF4F4F4A3A3 + A35F5F5F5555555454545252525151514F4F4F4D4D4D488EF7468DF7458DF743 + 8CF7418AF74990F891C1FBF1F7FEFFFFFFF4F4F4AFAFAF717171555555545454 + 5252525050504A90F7498FF7478EF7468DF7448CF7428BF7418AF74990F87AB2 + FAD4E7FDFFFFFFFFFFFFE7E7E7AEAEAE8383836464644C91F74B90F74A90F749 + 8FF7478EF7458DF7448CF7428BF7408AF73E89F75096F878B1FAB7D6FCE1EEFE + FFFFFFFFFFFF4D92F74C91F74B91F74B90F74A90F7488EF7478EF7458DF7438C + F7428BF7408AF73E89F73D88F73B86F7438CF760A1F94E92F84E92F84D92F74C + 91F74B91F74B90F7498FF7488EF7468DF7458DF7438CF7418AF73F89F73E88F7 + 3C87F73A86F74E92F84E92F84E92F84E92F84D92F74C91F74B91F74A90F7498F + F7488EF7468DF7448CF7438CF7418AF73F89F73E88F700000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000} + OnCreate = FormCreate TextHeight = 15 - object btnShowDesigner: TcxButton - Left = 24 - Top = 32 - Width = 145 - Height = 25 - Caption = 'Show Designer' - TabOrder = 0 - OnClick = btnShowDesignerClick - end - object btnViewReport: TcxButton - Left = 192 - Top = 32 - Width = 193 - Height = 25 - Caption = 'View Report' + object btnGroupDisplayDialog: TcxGroupBox + Left = 211 + Top = 17 + Caption = 'Display a Localized Report Dialog:' TabOrder = 1 - OnClick = btnViewReportClick - end - object cxGrid1: TcxGrid - Left = 24 - Top = 176 - Width = 521 - Height = 265 - TabOrder = 2 - object gvCategories: TcxGridDBTableView - DataController.DataSource = DataModule1.dsCategories - DataController.KeyFieldNames = 'CategoryID' - object gvCategoriesCategoryID: TcxGridDBColumn - DataBinding.FieldName = 'CategoryID' - end - object gvCategoriesCategoryName: TcxGridDBColumn - DataBinding.FieldName = 'CategoryName' - end - object gvCategoriesDescription: TcxGridDBColumn - DataBinding.FieldName = 'Description' - end - end - object gvProducts: TcxGridDBTableView - DataController.DataSource = DataModule1.dsProducts - DataController.DetailKeyFieldNames = 'CategoryID' - DataController.KeyFieldNames = 'ProductID' - DataController.MasterKeyFieldNames = 'CategoryID' - object gvProductsProductID: TcxGridDBColumn - DataBinding.FieldName = 'ProductID' - end - object gvProductsProductName: TcxGridDBColumn - DataBinding.FieldName = 'ProductName' - Width = 244 - end - object gvProductsSupplierID: TcxGridDBColumn - DataBinding.FieldName = 'SupplierID' - end - object gvProductsCategoryID: TcxGridDBColumn - DataBinding.FieldName = 'CategoryID' - end - object gvProductsQuantityPerUnit: TcxGridDBColumn - DataBinding.FieldName = 'QuantityPerUnit' - Width = 124 - end - object gvProductsUnitPrice: TcxGridDBColumn - DataBinding.FieldName = 'UnitPrice' - end - object gvProductsUnitsInStock: TcxGridDBColumn - DataBinding.FieldName = 'UnitsInStock' - end - object gvProductsUnitsOnOrder: TcxGridDBColumn - DataBinding.FieldName = 'UnitsOnOrder' - end - object gvProductsReorderLevel: TcxGridDBColumn - DataBinding.FieldName = 'ReorderLevel' - end - object gvProductsDiscontinued: TcxGridDBColumn - DataBinding.FieldName = 'Discontinued' - Width = 34 - end - object gvProductsEAN13: TcxGridDBColumn - DataBinding.FieldName = 'EAN13' - Width = 76 - end + Height = 86 + Width = 192 + object btnDisplayReport: TcxButton + Left = 15 + Top = 52 + Width = 145 + Height = 25 + Caption = 'Report Viewer' + TabOrder = 1 + OnClick = btnDisplayReportClick end - object cxGrid1Level1: TcxGridLevel - GridView = gvCategories - object cxGrid1Level2: TcxGridLevel - GridView = gvProducts - end + object btnDisplayDesigner: TcxButton + Left = 15 + Top = 21 + Width = 145 + Height = 25 + Caption = 'Report Designer' + TabOrder = 0 + OnClick = btnDisplayDesignerClick end end - object btnSetLanguageUS: TcxButton - Left = 72 - Top = 88 - Width = 121 - Height = 25 - Caption = 'English' - TabOrder = 3 - OnClick = btnSetLanguageUSClick - end - object btnSetLanguageDE: TcxButton - Left = 199 - Top = 88 - Width = 131 - Height = 25 - Caption = 'German' - TabOrder = 4 - OnClick = btnSetLanguageDEClick - end - object lblSelectLanguage: TcxLabel - Left = 56 - Top = 64 - Caption = 'Select Language' - TabOrder = 5 + object rbtnGroupLocalization: TcxRadioGroup + Left = 8 + Top = 17 + Caption = 'Localize Report Dialogs in:' + Properties.Items = <> + TabOrder = 0 + Height = 86 + Width = 185 + object rbtnSelectEnglishLocalization: TcxRadioButton + Left = 16 + Top = 56 + Width = 113 + Height = 17 + Caption = 'English (en-US)' + TabOrder = 0 + OnClick = rbtnSelectEnglishLocalizationClick + end + object rbtnSelectGermanLocalization: TcxRadioButton + Left = 16 + Top = 25 + Width = 113 + Height = 17 + Caption = 'German (de-DE)' + Checked = True + TabOrder = 1 + TabStop = True + OnClick = rbtnSelectGermanLocalizationClick + end end object dxReport1: TdxReport Parameters = <> - Left = 48 - Top = 128 + Left = 416 + Top = 32 end object dxBackendDataConnectionManager1: TdxBackendDataConnectionManager - Left = 112 - Top = 128 + Left = 472 + Top = 32 object dxBackendDataConnectionManager1dxBackendDataSetJSONConnection1: TdxBackendDataSetJSONConnection DisplayName = 'DataSetConnection' object itmProducts: TdxBackendDataSetCollectionItem diff --git a/Delphi/uMainForm.pas b/Delphi/uMainForm.pas index e54bbc8..6bfcc1f 100644 --- a/Delphi/uMainForm.pas +++ b/Delphi/uMainForm.pas @@ -12,43 +12,26 @@ interface cxGridTableView, cxGridDBTableView, cxGrid, FireDAC.Comp.DataSet, FireDAC.Comp.Client, dxBackend.ConnectionString.JSON.DataSet, dxBackend.ConnectionString.JSON, Vcl.StdCtrls, dxmdaset, uData, cxContainer, - cxLabel; + cxLabel, cxRadioGroup, cxGroupBox; type TMainForm = class(TForm) dxReport1: TdxReport; dxBackendDataConnectionManager1: TdxBackendDataConnectionManager; - btnShowDesigner: TcxButton; - btnViewReport: TcxButton; + btnDisplayDesigner: TcxButton; + btnDisplayReport: TcxButton; dxBackendDataConnectionManager1dxBackendDataSetJSONConnection1: TdxBackendDataSetJSONConnection; itmProducts: TdxBackendDataSetCollectionItem; itmCategories: TdxBackendDataSetCollectionItem; - cxGrid1: TcxGrid; - gvCategories: TcxGridDBTableView; - gvCategoriesCategoryID: TcxGridDBColumn; - gvCategoriesCategoryName: TcxGridDBColumn; - gvCategoriesDescription: TcxGridDBColumn; - gvProducts: TcxGridDBTableView; - gvProductsProductID: TcxGridDBColumn; - gvProductsProductName: TcxGridDBColumn; - gvProductsSupplierID: TcxGridDBColumn; - gvProductsCategoryID: TcxGridDBColumn; - gvProductsQuantityPerUnit: TcxGridDBColumn; - gvProductsUnitPrice: TcxGridDBColumn; - gvProductsUnitsInStock: TcxGridDBColumn; - gvProductsUnitsOnOrder: TcxGridDBColumn; - gvProductsReorderLevel: TcxGridDBColumn; - gvProductsDiscontinued: TcxGridDBColumn; - gvProductsEAN13: TcxGridDBColumn; - cxGrid1Level1: TcxGridLevel; - cxGrid1Level2: TcxGridLevel; - btnSetLanguageUS: TcxButton; - btnSetLanguageDE: TcxButton; - lblSelectLanguage: TcxLabel; - procedure btnShowDesignerClick(Sender: TObject); - procedure btnViewReportClick(Sender: TObject); - procedure btnSetLanguageUSClick(Sender: TObject); - procedure btnSetLanguageDEClick(Sender: TObject); + rbtnGroupLocalization: TcxRadioGroup; + rbtnSelectEnglishLocalization: TcxRadioButton; + rbtnSelectGermanLocalization: TcxRadioButton; + btnGroupDisplayDialog: TcxGroupBox; + procedure FormCreate(Sender: TObject); + procedure btnDisplayDesignerClick(Sender: TObject); + procedure btnDisplayReportClick(Sender: TObject); + procedure rbtnSelectEnglishLocalizationClick(Sender: TObject); + procedure rbtnSelectGermanLocalizationClick(Sender: TObject); private { Private declarations } public @@ -62,24 +45,44 @@ implementation {$R *.dfm} -procedure TMainForm.btnSetLanguageDEClick(Sender: TObject); +procedure TMainForm.FormCreate(Sender: TObject); +const + // Path to a saved example report file + AFileName = 'ExampleReport.repx'; begin - dxReport1.Language := 'de-DE' -end; + // Switch to German localization when the application starts + dxReport1.Language := 'de-DE'; -procedure TMainForm.btnSetLanguageUSClick(Sender: TObject); -begin - dxReport1.Language := 'en-US' + // Load example report from a file + if FileExists(AFileName) then + begin + dxReport1.ReportName := 'ExampleReport'; + dxReport1.Layout.LoadFromFile(AFileName); + end; end; -procedure TMainForm.btnShowDesignerClick(Sender: TObject); +procedure TMainForm.btnDisplayDesignerClick(Sender: TObject); begin + // Display the DevExpress Report Designer dialog dxReport1.ShowDesigner; end; -procedure TMainForm.btnViewReportClick(Sender: TObject); +procedure TMainForm.btnDisplayReportClick(Sender: TObject); begin + // Display the DevExpress Report Viewer dialog dxReport1.ShowViewer; end; +procedure TMainForm.rbtnSelectEnglishLocalizationClick(Sender: TObject); +begin + // Switch to English localization + dxReport1.Language := 'en-US'; +end; + +procedure TMainForm.rbtnSelectGermanLocalizationClick(Sender: TObject); +begin + // Switch to German localization + dxReport1.Language := 'de-DE'; +end; + end. diff --git a/ExampleReport.repx b/ExampleReport.repx new file mode 100644 index 0000000..cbba4b9 --- /dev/null +++ b/ExampleReport.repx @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/README.md b/README.md index 94ca9aa..750c830 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,40 @@ ![](https://img.shields.io/endpoint?url=https://codecentral.devexpress.com/api/v1/VersionRange/1048527919/25.2.3%2B) [![](https://img.shields.io/badge/Open_in_DevExpress_Support_Center-FF7200?style=flat-square&logo=DevExpress&logoColor=white)](https://supportcenter.devexpress.com/ticket/details/T1305951) -[![](https://img.shields.io/badge/📖_How_to_use_DevExpress_Examples-e9f6fc?style=flat-square)](https://docs.devexpress.com/GeneralInformation/403183) +[![](https://img.shields.io/badge/📖_How_to_use_DevExpress_Examples-e9f6fc?style=flat-square)](https://docs.devexpress.com/GeneralInformation/403183/help-resources/devexpress-code-examples) [![](https://img.shields.io/badge/💬_Leave_Feedback-feecdd?style=flat-square)](#does-this-example-address-your-development-requirementsobjectives) -# DevExpress VCL Reports - Localize the DevExpress Report Viewer and Report Designer -This example localizes DevExpress VCL [Report Viewer](https://docs.devexpress.com/XtraReports/401850/web-reporting/web-document-viewer)/[Report Designer](https://docs.devexpress.com/XtraReports/119176/web-reporting/web-end-user-report-designer) dialogs ([TdxReport](https://docs.devexpress.com/VCL/dxReport.TdxReport) component). German UI localization strings are stored within the project's [Localization](https://github.com/DevExpress-Examples/vcl-reports-localize/tree/25.1.4%2B/Localization) folder as JSON files. You can download UI localizations for additional languages from the [DevExpress Localization Service](https://localization.devexpress.com/). +# DevExpress VCL Reports - Localize the Report Viewer and Report Designer -vcl-reports-tdxreport-report-viewer-localization +This example demonstrates how to localize DevExpress VCL Reports components in Delphi and C++ Builder projects. + +The projects in this repository add German localization to DevExpress VCL dialogs: +[Report Viewer](https://docs.devexpress.com/XtraReports/401850/web-reporting/web-document-viewer) and +[Report Designer](https://docs.devexpress.com/XtraReports/119176/web-reporting/web-end-user-report-designer). +Both dialogs are parts of the [DevExpress Reporting Platform](https://docs.devexpress.com/VCL/405469/ExpressReports/vcl-reports), +which has full support for UI localization. + +![Starting screen of the localization example, offering to select between English and German, and to display Report Designer and Report Viewer dialogs](./images/Lokalisierungsbeispiel.png) + +## Prerequisites + +* Microsoft Windows 10 or newer +* Embarcadero RAD Studio IDE 12.3 (Athens) or newer (Community Edition is not supported) +* DevExpress VCL Components v25.2.3 or newer +* EdgeView2SDK (installed via GetIt Package Manager) + +## Implementation Details + +Study and build an example project in your preferred development environment: + +- [Delphi](./Delphi) +- [C++ Builder](./CPB) + +A compiled application obtains the strings for the German (`de_DE`) locale from the +[`./Localization/*.de.json`](./Localization) files. +You can use the [DevExpress Localization Service](https://localization.devexpress.com/) to download localization files for +German and multiple other locales. ## Documentation @@ -16,6 +42,17 @@ This example localizes DevExpress VCL [Report Viewer](https://docs.devexpress.co * [VCL Reports Localization](https://docs.devexpress.com/VCL/405597/ExpressReports/vcl-reports-localization) * [DevExpress UI Localization Service](https://docs.devexpress.com/GeneralInformation/16235/localization/localization-service) * [TdxReport.Language Property](https://docs.devexpress.com/VCL/dxReport.TdxReport.Language) +* [ExpressReports Application Deployment Requirements](https://docs.devexpress.com/VCL/405469/ExpressReports/vcl-reports#expressreports-app-deployment) + +## Localized Report Dialogs Preview + +Localized Report Designer: + +![VCL Report Designer dialog with interface localized in German language](./images/Berichtsdesigner.png) + +Localized Report Viewer: + +![VCL Report Viewer dialog with interface localized in German language](./images/Berichtsanzeige.png) ## Does this example address your development requirements/objectives? diff --git a/images/Berichtsanzeige.png b/images/Berichtsanzeige.png new file mode 100644 index 0000000..09d2a8e Binary files /dev/null and b/images/Berichtsanzeige.png differ diff --git a/images/Berichtsdesigner.png b/images/Berichtsdesigner.png new file mode 100644 index 0000000..c8df73b Binary files /dev/null and b/images/Berichtsdesigner.png differ diff --git a/images/Lokalisierungsbeispiel.png b/images/Lokalisierungsbeispiel.png new file mode 100644 index 0000000..7db6612 Binary files /dev/null and b/images/Lokalisierungsbeispiel.png differ