diff --git a/.gitignore b/.gitignore
index 9532800b..11812df1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,69 +1,69 @@
-# Uncomment these types if you want even more clean repository. But be careful.
-# It can make harm to an existing project source. Read explanations below.
-#
-# Resource files are binaries containing manifest, project icon and version info.
-# They can not be viewed as text or compared by diff-tools. Consider replacing them with .rc files.
-#*.res
-#
-# Type library file (binary). In old Delphi versions it should be stored.
-# Since Delphi 2009 it is produced from .ridl file and can safely be ignored.
-#*.tlb
-#
-# Diagram Portfolio file. Used by the diagram editor up to Delphi 7.
-# Uncomment this if you are not using diagrams or use newer Delphi version.
-#*.ddp
-#
-# Visual LiveBindings file. Added in Delphi XE2.
-# Uncomment this if you are not using LiveBindings Designer.
-#*.vlb
-#
-# Deployment Manager configuration file for your project. Added in Delphi XE2.
-# Uncomment this if it is not mobile development and you do not use remote debug feature.
-#*.deployproj
-#
-# C++ object files produced when C/C++ Output file generation is configured.
-# Uncomment this if you are not using external objects (zlib library for example).
-#*.obj
-#
-
-# Delphi compiler-generated binaries (safe to delete)
-*.exe
-*.dll
-*.bpl
-*.bpi
-*.dcp
-*.so
-*.apk
-*.drc
-*.map
-*.dres
-*.rsm
-*.tds
-*.dcu
-*.lib
-*.a
-*.o
-*.ocx
-
-# Delphi autogenerated files (duplicated info)
-*.cfg
-*.hpp
-*Resource.rc
-
-# Delphi local files (user-specific info)
-*.local
-*.identcache
-*.projdata
-*.tvsconfig
-*.dsk
-
-# Delphi history and backups
-__history/
-__recovery/
-*.~*
-
-# Castalia statistics file (since XE7 Castalia is distributed with Delphi)
-*.stat
-
-# Boss dependency manager vendor folder https://github.com/HashLoad/boss
-modules/
+# Uncomment these types if you want even more clean repository. But be careful.
+# It can make harm to an existing project source. Read explanations below.
+#
+# Resource files are binaries containing manifest, project icon and version info.
+# They can not be viewed as text or compared by diff-tools. Consider replacing them with .rc files.
+#*.res
+#
+# Type library file (binary). In old Delphi versions it should be stored.
+# Since Delphi 2009 it is produced from .ridl file and can safely be ignored.
+#*.tlb
+#
+# Diagram Portfolio file. Used by the diagram editor up to Delphi 7.
+# Uncomment this if you are not using diagrams or use newer Delphi version.
+#*.ddp
+#
+# Visual LiveBindings file. Added in Delphi XE2.
+# Uncomment this if you are not using LiveBindings Designer.
+#*.vlb
+#
+# Deployment Manager configuration file for your project. Added in Delphi XE2.
+# Uncomment this if it is not mobile development and you do not use remote debug feature.
+#*.deployproj
+#
+# C++ object files produced when C/C++ Output file generation is configured.
+# Uncomment this if you are not using external objects (zlib library for example).
+#*.obj
+#
+
+# Delphi compiler-generated binaries (safe to delete)
+*.exe
+*.dll
+*.bpl
+*.bpi
+*.dcp
+*.so
+*.apk
+*.drc
+*.map
+*.dres
+*.rsm
+*.tds
+*.dcu
+*.lib
+*.a
+*.o
+*.ocx
+
+# Delphi autogenerated files (duplicated info)
+*.cfg
+*.hpp
+*Resource.rc
+
+# Delphi local files (user-specific info)
+*.local
+*.identcache
+*.projdata
+*.tvsconfig
+*.dsk
+
+# Delphi history and backups
+__history/
+__recovery/
+*.~*
+
+# Castalia statistics file (since XE7 Castalia is distributed with Delphi)
+*.stat
+
+# Boss dependency manager vendor folder https://github.com/HashLoad/boss
+modules/
diff --git a/Demo/D10_1/SVGIconImageListDemo.dpr b/Demo/D10_1/SVGIconImageListDemo.dpr
index f3647d60..91f91e25 100644
--- a/Demo/D10_1/SVGIconImageListDemo.dpr
+++ b/Demo/D10_1/SVGIconImageListDemo.dpr
@@ -1,21 +1,21 @@
-program SVGIconImageListDemo;
-
-uses
- Vcl.Forms,
- Vcl.Themes,
- Vcl.Styles,
- UMain in '..\Source\UMain.pas' {MainForm},
- SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageList in '..\..\source\SVGIconImageList.pas',
- UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.MainFormOnTaskbar := True;
- TStyleManager.TrySetStyle('Windows10');
- Application.CreateForm(TImageDataModule, ImageDataModule);
- Application.CreateForm(TMainForm, MainForm);
- Application.Run;
-end.
+program SVGIconImageListDemo;
+
+uses
+ Vcl.Forms,
+ Vcl.Themes,
+ Vcl.Styles,
+ UMain in '..\Source\UMain.pas' {MainForm},
+ SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageList in '..\..\source\SVGIconImageList.pas',
+ UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Windows10');
+ Application.CreateForm(TImageDataModule, ImageDataModule);
+ Application.CreateForm(TMainForm, MainForm);
+ Application.Run;
+end.
diff --git a/Demo/D10_1/SVGIconImageListDemo.dproj b/Demo/D10_1/SVGIconImageListDemo.dproj
index b93590fa..436f48d0 100644
--- a/Demo/D10_1/SVGIconImageListDemo.dproj
+++ b/Demo/D10_1/SVGIconImageListDemo.dproj
@@ -1,885 +1,885 @@
-
-
- {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
- SVGIconImageListDemo.dpr
- Debug
- DCC32
- 18.8
- VCL
- True
- Win32
- 2
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\Dcu\D10_1\$(Platform)\$(Config)
- ..\Bin
- ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- ..\Bin\IconFontsImageListDemo.exe
- 00400000
- x86
- SVGIconImageListDemo
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
- true
- 1033
- CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
- "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
-
-
- System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- $(BDS)\bin\default_app.manifest
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
- PerMonitor
-
-
- $(BDS)\bin\default_app.manifest
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
-
-
- true
- DEBUG;$(DCC_Define)
-
-
- true
-
-
-
- MainSource
-
-
-
-
-
-
- dfm
-
-
-
-
- dfm
- TDataModule
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- Delphi.Personality.12
- VCLApplication
-
-
-
-
- False
- True
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1040
- 1252
-
-
- Ethea S.r.l.
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
- True
- True
-
-
-
-
- SVGIconImageListDemo.exe
- true
-
-
-
-
- res\drawable-ldpi
- 1
-
-
-
-
-
- classes
- 1
-
-
-
-
- Contents\MacOS
- 0
-
-
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
- 1
-
-
- 1
-
-
- library\lib\armeabi-v7a
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- 0
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 0
-
-
- 1
- .framework
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
-
- res\values
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 0
- .bpl
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- 0
- .dll;.bpl
-
-
- 1
- .dylib
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 12
-
-
-
-
+
+
+ {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
+ SVGIconImageListDemo.dpr
+ Debug
+ DCC32
+ 18.8
+ VCL
+ True
+ Win32
+ 2
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\Dcu\D10_1\$(Platform)\$(Config)
+ ..\Bin
+ ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ ..\Bin\IconFontsImageListDemo.exe
+ 00400000
+ x86
+ SVGIconImageListDemo
+ Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
+ true
+ 1033
+ CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
+ "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ $(BDS)\bin\default_app.manifest
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ PerMonitor
+
+
+ $(BDS)\bin\default_app.manifest
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+
+
+ true
+ DEBUG;$(DCC_Define)
+
+
+ true
+
+
+
+ MainSource
+
+
+
+
+
+
+ dfm
+
+
+
+
+ dfm
+ TDataModule
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+
+ Delphi.Personality.12
+ VCLApplication
+
+
+
+ SVGIconImageListDemo.dpr
+
+
+ False
+ True
+ False
+
+
+ True
+ False
+ 1
+ 0
+ 0
+ 0
+ False
+ False
+ False
+ False
+ False
+ 1040
+ 1252
+
+
+ Ethea S.r.l.
+
+ 1.0.0.0
+
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+
+ True
+ True
+
+
+
+
+ SVGIconImageListDemo.exe
+ true
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+
+ classes
+ 1
+
+
+
+
+ Contents\MacOS
+ 0
+
+
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+ 1
+
+
+ 1
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ 0
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 0
+
+
+ 1
+ .framework
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 0
+ .bpl
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ 0
+ .dll;.bpl
+
+
+ 1
+ .dylib
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 12
+
+
+
+
diff --git a/Demo/D10_2/SVGIconImageListDemo.dpr b/Demo/D10_2/SVGIconImageListDemo.dpr
index f3647d60..91f91e25 100644
--- a/Demo/D10_2/SVGIconImageListDemo.dpr
+++ b/Demo/D10_2/SVGIconImageListDemo.dpr
@@ -1,21 +1,21 @@
-program SVGIconImageListDemo;
-
-uses
- Vcl.Forms,
- Vcl.Themes,
- Vcl.Styles,
- UMain in '..\Source\UMain.pas' {MainForm},
- SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageList in '..\..\source\SVGIconImageList.pas',
- UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.MainFormOnTaskbar := True;
- TStyleManager.TrySetStyle('Windows10');
- Application.CreateForm(TImageDataModule, ImageDataModule);
- Application.CreateForm(TMainForm, MainForm);
- Application.Run;
-end.
+program SVGIconImageListDemo;
+
+uses
+ Vcl.Forms,
+ Vcl.Themes,
+ Vcl.Styles,
+ UMain in '..\Source\UMain.pas' {MainForm},
+ SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageList in '..\..\source\SVGIconImageList.pas',
+ UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Windows10');
+ Application.CreateForm(TImageDataModule, ImageDataModule);
+ Application.CreateForm(TMainForm, MainForm);
+ Application.Run;
+end.
diff --git a/Demo/D10_2/SVGIconImageListDemo.dproj b/Demo/D10_2/SVGIconImageListDemo.dproj
index 644f636c..0fd59f92 100644
--- a/Demo/D10_2/SVGIconImageListDemo.dproj
+++ b/Demo/D10_2/SVGIconImageListDemo.dproj
@@ -1,884 +1,884 @@
-
-
- {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
- SVGIconImageListDemo.dpr
- Debug
- DCC32
- 18.8
- VCL
- True
- Win32
- 2
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\Dcu\D10_2\$(Platform)\$(Config)
- ..\Bin
- ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- ..\Bin\IconFontsImageListDemo.exe
- 00400000
- x86
- SVGIconImageListDemo
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
- true
- 1033
- CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
- "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
-
-
- System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- $(BDS)\bin\default_app.manifest
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
- PerMonitor
-
-
- $(BDS)\bin\default_app.manifest
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
-
-
- true
- DEBUG;$(DCC_Define)
-
-
- true
-
-
-
- MainSource
-
-
-
-
-
-
- dfm
-
-
-
-
- dfm
- TDataModule
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- Delphi.Personality.12
- VCLApplication
-
-
-
- SVGIconImageListDemo.dpr
-
-
- False
- True
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1040
- 1252
-
-
- Ethea S.r.l.
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
- True
- True
-
-
-
-
- SVGIconImageListDemo.exe
- true
-
-
-
-
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 12
-
-
-
-
+
+
+ {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
+ SVGIconImageListDemo.dpr
+ Debug
+ DCC32
+ 18.8
+ VCL
+ True
+ Win32
+ 2
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\Dcu\D10_2\$(Platform)\$(Config)
+ ..\Bin
+ ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ ..\Bin\IconFontsImageListDemo.exe
+ 00400000
+ x86
+ SVGIconImageListDemo
+ Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
+ true
+ 1033
+ CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
+ "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ $(BDS)\bin\default_app.manifest
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ PerMonitor
+
+
+ $(BDS)\bin\default_app.manifest
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+
+
+ true
+ DEBUG;$(DCC_Define)
+
+
+ true
+
+
+
+ MainSource
+
+
+
+
+
+
+ dfm
+
+
+
+
+ dfm
+ TDataModule
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+
+ Delphi.Personality.12
+ VCLApplication
+
+
+
+ SVGIconImageListDemo.dpr
+
+
+ False
+ True
+ False
+
+
+ True
+ False
+ 1
+ 0
+ 0
+ 0
+ False
+ False
+ False
+ False
+ False
+ 1040
+ 1252
+
+
+ Ethea S.r.l.
+
+ 1.0.0.0
+
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+
+ True
+ True
+
+
+
+
+ SVGIconImageListDemo.exe
+ true
+
+
+
+
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 12
+
+
+
+
diff --git a/Demo/D10_3/IconPickerFMX.dpr b/Demo/D10_3/IconPickerFMX.dpr
index 38a138e7..4796e5c5 100644
--- a/Demo/D10_3/IconPickerFMX.dpr
+++ b/Demo/D10_3/IconPickerFMX.dpr
@@ -1,15 +1,15 @@
-program IconPickerFMX;
-
-uses
- System.StartUpCopy,
- FMX.Forms,
- UIconPickerFMX in '..\Source\UIconPickerFMX.pas' {IconPicker},
- BitmapCodecSVG in '..\..\Svg\BitmapCodecSVG.pas';
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.CreateForm(TIconPicker, IconPicker);
- Application.Run;
-end.
+program IconPickerFMX;
+
+uses
+ System.StartUpCopy,
+ FMX.Forms,
+ UIconPickerFMX in '..\Source\UIconPickerFMX.pas' {IconPicker},
+ BitmapCodecSVG in '..\..\Svg\BitmapCodecSVG.pas';
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.CreateForm(TIconPicker, IconPicker);
+ Application.Run;
+end.
diff --git a/Demo/D10_3/IconPickerFMX.dproj b/Demo/D10_3/IconPickerFMX.dproj
index 080790d7..722f2fec 100644
--- a/Demo/D10_3/IconPickerFMX.dproj
+++ b/Demo/D10_3/IconPickerFMX.dproj
@@ -1,1084 +1,1084 @@
-
-
- {E5711C9C-9B07-4318-B3CC-870F7D2F10CF}
- 18.8
- FMX
- IconPickerFMX.dpr
- True
- Debug
- Win32
- 32787
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- .\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- true
- true
- true
- true
- true
- true
- true
- true
- $(BDS)\bin\delphi_PROJECTICON.ico
- $(BDS)\bin\delphi_PROJECTICNS.icns
- IconPickerFMX
- ..\..\SVG;..\..\Source;..\..\GDIP;$(DCC_UnitSearchPath)
-
-
- DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;FrameViewer10_3;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
- package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
- Debug
- true
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
- android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar
-
-
- DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
- package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
- Debug
- true
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
- android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar
-
-
- DBXSqliteDriver;RESTComponents;IOCore;DBXDb2Driver;DBXInterBaseDriver;IOIBX;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;rbBDE2026;FireDACADSDriver;rbRAP2026;DBXMSSQLDriver;rbRest2026;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;rbDBE2026;vcltouch;IconFontsImageList;vcldb;bindcompfmx;svn;DBXOracleDriver;ISOpenOffice7;inetdb;rbDB2026;CEF4Delphi;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;SVGImagePackageR;vclib;frxTee26;rbTC2026;iORM_Project;fs26;fmxgtxDocumentStudioControls;FireDACDBXDriver;dbexpress;IndyCore;rbIBE2026;vclx;vclgtxDocumentStudioControls;frxIntIO26;dsnap;DataSnapCommon;emsclient;FireDACCommon;rbRIDE2026;frxcs26;RESTBackendComponents;DataSnapConnectors;IOFireDAC;VCLRESTComponents;soapserver;fsTee26;FrameViewer10_3;IODBX;ISVcl7;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;fsIBX26;rbRCL2026;frx26;FireDACCommonODBC;FireDACCommonDriver;rbDIDE2026;DataSnapClient;rbCIDE2026;frxIntIOIndy26;inet;dclRBE2026;bindcompdbx;IndyIPCommon;dclRBFireDAC2026;vcl;DBXSybaseASEDriver;IndyIPServer;frxDB26;IndySystem;fsADO26;FireDACDb2Driver;frxDBX26;dsnapcon;rbADO2026;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;fsDB26;TeeDB;FireDAC;rbTCUI2026;IOXML;dclRBDBE2026;emshosting;LiscorVCL;frxe26;WPViewPDF_D10_3;LiscorRTL;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;ChromeTabs_R;DBXOdbcDriver;FireDACTDataDriver;FMXTee;rbRTL2026;frxIBX26;soaprtl;DbxCommonDriver;SVGPackage;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;frxADO26;CustomIPTransport;vcldsnap;vclgtxFRDocumentControls;SynEdit_R10_3;rbUSER2026;rbDAD2026;dclRBADO2026;DCPcrypt;bindcomp;appanalytics;ISRtl7;DBXInformixDriver;wPDF3_D10_3;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;rbUSERDesign2026;DataSnapIndy10ServerTransport;ISFLib7;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;rbFireDAC2026;dclRBIBE2026;IOADO;rbIDE2026;fmxase;$(DCC_UsePackage)
- 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
-
-
- DBXSqliteDriver;RESTComponents;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;CEF4Delphi;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- true
- PerMonitorV2
- true
- 1033
-
-
- true
- PerMonitorV2
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
- PerMonitorV2
-
-
- true
- PerMonitorV2
-
-
-
- MainSource
-
-
-
- fmx
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Application
-
-
-
- IconPickerFMX.dpr
-
-
- Chrome Tabs
- Microsoft Office 2000 Sample Automation Server Wrapper Components
-
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- IconPickerFMX.exe
- true
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- Contents\MacOS
- 1
- .framework
-
-
- Contents\MacOS
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- Contents
- 1
-
-
- Contents
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- True
- True
- True
-
-
- 12
-
-
-
-
-
+
+
+ {E5711C9C-9B07-4318-B3CC-870F7D2F10CF}
+ 18.8
+ FMX
+ IconPickerFMX.dpr
+ True
+ Debug
+ Win32
+ 32787
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ .\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\delphi_PROJECTICNS.icns
+ IconPickerFMX
+ ..\..\SVG;..\..\Source;..\..\GDIP;$(DCC_UnitSearchPath)
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;FrameViewer10_3;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
+ package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
+ Debug
+ true
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
+ android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar
+
+
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;ibxbindings;rtl;DbxClientDriver;FireDACDSDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
+ package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
+ Debug
+ true
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
+ android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar
+
+
+ DBXSqliteDriver;RESTComponents;IOCore;DBXDb2Driver;DBXInterBaseDriver;IOIBX;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;rbBDE2026;FireDACADSDriver;rbRAP2026;DBXMSSQLDriver;rbRest2026;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;rbDBE2026;vcltouch;IconFontsImageList;vcldb;bindcompfmx;svn;DBXOracleDriver;ISOpenOffice7;inetdb;rbDB2026;CEF4Delphi;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;SVGImagePackageR;vclib;frxTee26;rbTC2026;iORM_Project;fs26;fmxgtxDocumentStudioControls;FireDACDBXDriver;dbexpress;IndyCore;rbIBE2026;vclx;vclgtxDocumentStudioControls;frxIntIO26;dsnap;DataSnapCommon;emsclient;FireDACCommon;rbRIDE2026;frxcs26;RESTBackendComponents;DataSnapConnectors;IOFireDAC;VCLRESTComponents;soapserver;fsTee26;FrameViewer10_3;IODBX;ISVcl7;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;fsIBX26;rbRCL2026;frx26;FireDACCommonODBC;FireDACCommonDriver;rbDIDE2026;DataSnapClient;rbCIDE2026;frxIntIOIndy26;inet;dclRBE2026;bindcompdbx;IndyIPCommon;dclRBFireDAC2026;vcl;DBXSybaseASEDriver;IndyIPServer;frxDB26;IndySystem;fsADO26;FireDACDb2Driver;frxDBX26;dsnapcon;rbADO2026;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;fsDB26;TeeDB;FireDAC;rbTCUI2026;IOXML;dclRBDBE2026;emshosting;LiscorVCL;frxe26;WPViewPDF_D10_3;LiscorRTL;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;ChromeTabs_R;DBXOdbcDriver;FireDACTDataDriver;FMXTee;rbRTL2026;frxIBX26;soaprtl;DbxCommonDriver;SVGPackage;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;frxADO26;CustomIPTransport;vcldsnap;vclgtxFRDocumentControls;SynEdit_R10_3;rbUSER2026;rbDAD2026;dclRBADO2026;DCPcrypt;bindcomp;appanalytics;ISRtl7;DBXInformixDriver;wPDF3_D10_3;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;rbUSERDesign2026;DataSnapIndy10ServerTransport;ISFLib7;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;rbFireDAC2026;dclRBIBE2026;IOADO;rbIDE2026;fmxase;$(DCC_UsePackage)
+ 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
+
+
+ DBXSqliteDriver;RESTComponents;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;CEF4Delphi;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+ true
+ 1033
+
+
+ true
+ PerMonitorV2
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ fmx
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ IconPickerFMX.dpr
+
+
+ Chrome Tabs
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ IconPickerFMX.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ True
+ True
+ True
+
+
+ 12
+
+
+
+
+
diff --git a/Demo/D10_3/SVGIconImageDemoFMX.dpr b/Demo/D10_3/SVGIconImageDemoFMX.dpr
index 40b8acfb..78c86606 100644
--- a/Demo/D10_3/SVGIconImageDemoFMX.dpr
+++ b/Demo/D10_3/SVGIconImageDemoFMX.dpr
@@ -1,14 +1,14 @@
-program SVGIconImageDemoFMX;
-
-uses
- System.StartUpCopy,
- FMX.Forms,
- USVGIconImageFMX in '..\Source\USVGIconImageFMX.pas' {SVGIconImageForm};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.CreateForm(TSVGIconImageForm, SVGIconImageForm);
- Application.Run;
-end.
+program SVGIconImageDemoFMX;
+
+uses
+ System.StartUpCopy,
+ FMX.Forms,
+ USVGIconImageFMX in '..\Source\USVGIconImageFMX.pas' {SVGIconImageForm};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.CreateForm(TSVGIconImageForm, SVGIconImageForm);
+ Application.Run;
+end.
diff --git a/Demo/D10_3/SVGIconImageDemoFMX.dproj b/Demo/D10_3/SVGIconImageDemoFMX.dproj
index c7db48fb..cbddc316 100644
--- a/Demo/D10_3/SVGIconImageDemoFMX.dproj
+++ b/Demo/D10_3/SVGIconImageDemoFMX.dproj
@@ -1,1053 +1,1053 @@
-
-
- {9F3FCCAB-39A7-436C-B038-A6D28455E580}
- 18.8
- FMX
- SVGIconImageDemoFMX.dpr
- True
- Debug
- Win32
- 32785
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\dcu\D10_3\$(Platform)\$(Config)
- ..\Bin
- false
- false
- false
- false
- false
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- true
- true
- true
- true
- true
- true
- true
- true
- $(BDS)\bin\delphi_PROJECTICON.ico
- $(BDS)\bin\delphi_PROJECTICNS.icns
- SVGIconImageDemoFMX
- ..\..\Source;..\..\Svg;..\..\GDIP;$(DCC_UnitSearchPath)
-
-
- DBXSqliteDriver;RESTComponents;IOCore;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;IconFontsImageList;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;ISOpenOffice7;inetdb;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;SVGImagePackageR;vclib;frxTee26;fs26;FireDACDBXDriver;dbexpress;IndyCore;vclx;frxIntIO26;dsnap;DataSnapCommon;emsclient;FireDACCommon;frxcs26;RESTBackendComponents;DataSnapConnectors;IOFireDAC;VCLRESTComponents;soapserver;fsTee26;ISVcl7;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;fsIBX26;frx26;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;frxIntIOIndy26;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;frxDB26;IndySystem;fsADO26;FireDACDb2Driver;frxDBX26;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;fsDB26;TeeDB;FireDAC;IOXML;emshosting;frxe26;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;ChromeTabs_R;DBXOdbcDriver;FireDACTDataDriver;FMXTee;SVGPackage;frxIBX26;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;frxADO26;CustomIPTransport;vcldsnap;SynEdit_R10_3;ISRtl7;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;ISFLib7;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
- 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
- ..\Images\svgiconimagelistcomponenticon.ico
-
-
- DBXSqliteDriver;RESTComponents;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- Debug
-
-
- Debug
-
-
- false
- true
- PerMonitorV2
- true
- 1033
-
-
- true
- PerMonitorV2
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
- PerMonitorV2
- IconFontsImageListComponentIcon.ico
-
-
- true
- PerMonitorV2
-
-
-
- MainSource
-
-
-
- fmx
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Application
-
-
-
- SVGIconImageDemoFMX.dpr
-
-
- Microsoft Office XP Sample Automation Server Wrapper Components
- DCPcrypt cryptographic component library v2 B3
- Microsoft Office 2000 Sample Automation Server Wrapper Components
-
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- SVGIconImageDemoFMX.exe
- true
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- Contents\MacOS
- 1
- .framework
-
-
- Contents\MacOS
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- Contents
- 1
-
-
- Contents
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- True
- True
- False
-
-
- 12
-
-
-
-
-
-
+
+
+ {9F3FCCAB-39A7-436C-B038-A6D28455E580}
+ 18.8
+ FMX
+ SVGIconImageDemoFMX.dpr
+ True
+ Debug
+ Win32
+ 32785
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\dcu\D10_3\$(Platform)\$(Config)
+ ..\Bin
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\delphi_PROJECTICNS.icns
+ SVGIconImageDemoFMX
+ ..\..\Source;..\..\Svg;..\..\GDIP;$(DCC_UnitSearchPath)
+
+
+ DBXSqliteDriver;RESTComponents;IOCore;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;IconFontsImageList;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;ISOpenOffice7;inetdb;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;SVGImagePackageR;vclib;frxTee26;fs26;FireDACDBXDriver;dbexpress;IndyCore;vclx;frxIntIO26;dsnap;DataSnapCommon;emsclient;FireDACCommon;frxcs26;RESTBackendComponents;DataSnapConnectors;IOFireDAC;VCLRESTComponents;soapserver;fsTee26;ISVcl7;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;fsIBX26;frx26;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;frxIntIOIndy26;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;frxDB26;IndySystem;fsADO26;FireDACDb2Driver;frxDBX26;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;fsDB26;TeeDB;FireDAC;IOXML;emshosting;frxe26;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;ChromeTabs_R;DBXOdbcDriver;FireDACTDataDriver;FMXTee;SVGPackage;frxIBX26;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;frxADO26;CustomIPTransport;vcldsnap;SynEdit_R10_3;ISRtl7;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;ISFLib7;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ 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
+ ..\Images\svgiconimagelistcomponenticon.ico
+
+
+ DBXSqliteDriver;RESTComponents;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ Debug
+
+
+ Debug
+
+
+ false
+ true
+ PerMonitorV2
+ true
+ 1033
+
+
+ true
+ PerMonitorV2
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+ IconFontsImageListComponentIcon.ico
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ fmx
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ SVGIconImageDemoFMX.dpr
+
+
+ Microsoft Office XP Sample Automation Server Wrapper Components
+ DCPcrypt cryptographic component library v2 B3
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ SVGIconImageDemoFMX.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ True
+ True
+ False
+
+
+ 12
+
+
+
+
+
+
diff --git a/Demo/D10_3/SVGIconImageListDemo.dpr b/Demo/D10_3/SVGIconImageListDemo.dpr
index f3647d60..91f91e25 100644
--- a/Demo/D10_3/SVGIconImageListDemo.dpr
+++ b/Demo/D10_3/SVGIconImageListDemo.dpr
@@ -1,21 +1,21 @@
-program SVGIconImageListDemo;
-
-uses
- Vcl.Forms,
- Vcl.Themes,
- Vcl.Styles,
- UMain in '..\Source\UMain.pas' {MainForm},
- SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageList in '..\..\source\SVGIconImageList.pas',
- UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.MainFormOnTaskbar := True;
- TStyleManager.TrySetStyle('Windows10');
- Application.CreateForm(TImageDataModule, ImageDataModule);
- Application.CreateForm(TMainForm, MainForm);
- Application.Run;
-end.
+program SVGIconImageListDemo;
+
+uses
+ Vcl.Forms,
+ Vcl.Themes,
+ Vcl.Styles,
+ UMain in '..\Source\UMain.pas' {MainForm},
+ SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageList in '..\..\source\SVGIconImageList.pas',
+ UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Windows10');
+ Application.CreateForm(TImageDataModule, ImageDataModule);
+ Application.CreateForm(TMainForm, MainForm);
+ Application.Run;
+end.
diff --git a/Demo/D10_3/SVGIconImageListDemo.dproj b/Demo/D10_3/SVGIconImageListDemo.dproj
index a85a412a..af71d333 100644
--- a/Demo/D10_3/SVGIconImageListDemo.dproj
+++ b/Demo/D10_3/SVGIconImageListDemo.dproj
@@ -1,884 +1,884 @@
-
-
- {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
- SVGIconImageListDemo.dpr
- Debug
- DCC32
- 18.8
- VCL
- True
- Win32
- 2
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\Dcu\D10_3\$(Platform)\$(Config)
- ..\Bin
- ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- ..\Bin\IconFontsImageListDemo.exe
- 00400000
- x86
- SVGIconImageListDemo
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
- true
- 1033
- CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
- "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
-
-
- System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- $(BDS)\bin\default_app.manifest
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
- PerMonitor
-
-
- $(BDS)\bin\default_app.manifest
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
-
-
- true
- DEBUG;$(DCC_Define)
-
-
- true
-
-
-
- MainSource
-
-
-
-
-
-
- dfm
-
-
-
-
- dfm
- TDataModule
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- Delphi.Personality.12
- VCLApplication
-
-
-
- SVGIconImageListDemo.dpr
-
-
- False
- True
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1040
- 1252
-
-
- Ethea S.r.l.
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
- True
- True
-
-
-
-
- SVGIconImageListDemo.exe
- true
-
-
-
-
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 12
-
-
-
-
+
+
+ {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
+ SVGIconImageListDemo.dpr
+ Debug
+ DCC32
+ 18.8
+ VCL
+ True
+ Win32
+ 2
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\Dcu\D10_3\$(Platform)\$(Config)
+ ..\Bin
+ ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ ..\Bin\IconFontsImageListDemo.exe
+ 00400000
+ x86
+ SVGIconImageListDemo
+ Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
+ true
+ 1033
+ CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
+ "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ $(BDS)\bin\default_app.manifest
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ PerMonitor
+
+
+ $(BDS)\bin\default_app.manifest
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+
+
+ true
+ DEBUG;$(DCC_Define)
+
+
+ true
+
+
+
+ MainSource
+
+
+
+
+
+
+ dfm
+
+
+
+
+ dfm
+ TDataModule
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+
+ Delphi.Personality.12
+ VCLApplication
+
+
+
+ SVGIconImageListDemo.dpr
+
+
+ False
+ True
+ False
+
+
+ True
+ False
+ 1
+ 0
+ 0
+ 0
+ False
+ False
+ False
+ False
+ False
+ 1040
+ 1252
+
+
+ Ethea S.r.l.
+
+ 1.0.0.0
+
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+
+ True
+ True
+
+
+
+
+ SVGIconImageListDemo.exe
+ true
+
+
+
+
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 12
+
+
+
+
diff --git a/Demo/D10_3/SVGIconImageListDemoFMX.dpr b/Demo/D10_3/SVGIconImageListDemoFMX.dpr
index 6dc52676..c4fdb83f 100644
--- a/Demo/D10_3/SVGIconImageListDemoFMX.dpr
+++ b/Demo/D10_3/SVGIconImageListDemoFMX.dpr
@@ -1,28 +1,28 @@
-//---------------------------------------------------------------------------
-
-// This software is Copyright (c) 2015 Embarcadero Technologies, Inc.
-// You may only use this software if you are an authorized licensee
-// of an Embarcadero developer tools product.
-// This software is considered a Redistributable as defined under
-// the software license agreement that comes with the Embarcadero Products
-// and is subject to that software license agreement.
-
-//---------------------------------------------------------------------------
-
-program SVGIconImageListDemoFMX;
-
-uses
- System.StartUpCopy,
- FMX.Forms,
- {$IFDEF MSWINDOWS}
- FMX.SVGIconImageListEditorUnit in '..\..\Packages\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX},
- {$ENDIF }
- UMainFMX in '..\Source\UMainFMX.pas' {SVGIconImageListForm};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.CreateForm(TSVGIconImageListForm, SVGIconImageListForm);
- Application.Run;
-end.
+//---------------------------------------------------------------------------
+
+// This software is Copyright (c) 2015 Embarcadero Technologies, Inc.
+// You may only use this software if you are an authorized licensee
+// of an Embarcadero developer tools product.
+// This software is considered a Redistributable as defined under
+// the software license agreement that comes with the Embarcadero Products
+// and is subject to that software license agreement.
+
+//---------------------------------------------------------------------------
+
+program SVGIconImageListDemoFMX;
+
+uses
+ System.StartUpCopy,
+ FMX.Forms,
+ {$IFDEF MSWINDOWS}
+ FMX.SVGIconImageListEditorUnit in '..\..\Packages\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX},
+ {$ENDIF }
+ UMainFMX in '..\Source\UMainFMX.pas' {SVGIconImageListForm};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.CreateForm(TSVGIconImageListForm, SVGIconImageListForm);
+ Application.Run;
+end.
diff --git a/Demo/D10_3/SVGIconImageListDemoFMX.dproj b/Demo/D10_3/SVGIconImageListDemoFMX.dproj
index bafa5a85..e369ff1b 100644
--- a/Demo/D10_3/SVGIconImageListDemoFMX.dproj
+++ b/Demo/D10_3/SVGIconImageListDemoFMX.dproj
@@ -1,1263 +1,1263 @@
-
-
- {9B6BC2FB-9912-4FF8-B666-AE3FEC0ED091}
- 18.8
- FMX
- SVGIconImageListDemoFMX.dpr
- True
- Debug
- Win32
- 1
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- $(BDS)\bin\delphi_PROJECTICON.ico
- true
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- true
- true
- true
- true
- true
- true
- $(BDS)\bin\delphi_PROJECTICNS.icns
- SVGIconImageListDemoFMX
- ..\Dcu\D10_3\$(Platform)\$(Config)
- ..\Bin\
- false
- false
- false
- false
- false
- ..\..\Source;..\..\Svg;..\..\GDIP;$(DCC_UnitSearchPath)
-
-
- $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
- package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
- $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
- android-support-v4.dex.jar;apk-expansion.dex.jar;cloud-messaging.dex.jar;fmx.dex.jar;google-analytics-v2.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar;google-play-services.dex.jar
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
- DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
- true
- Debug
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
- 1
- #000000
-
-
- package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
- Debug
- true
- true
- Base
- true
- $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
- android-support-v4.dex.jar;apk-expansion.dex.jar;cloud-messaging.dex.jar;fmx.dex.jar;google-analytics-v2.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar;google-play-services.dex.jar
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
- DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage);$(DCC_UsePackage)
- 1
- #000000
-
-
- DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;FireDACDSDriver;rtl;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
- 1033
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- $(BDS)\bin\default_app.manifest
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
- ..\Images\svgiconimagelistcomponenticon.ico
-
-
- DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;FireDACDSDriver;rtl;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
- 1033
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
- $(BDS)\bin\default_app.manifest
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- 1
- #000000
-
-
- true
- false
- Debug
- PerMonitor
- true
- 1033
-
-
- true
- Debug
- PerMonitor
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
- PerMonitor
- IconFontsImageListComponentIcon.ico
-
-
- true
- PerMonitor
-
-
-
- MainSource
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Application
-
-
-
- SVGIconImageListDemoFMX.dpr
-
-
- Chrome Tabs
- Microsoft Office 2000 Sample Automation Server Wrapper Components
-
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- styles.xml
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
- SVGIconImageListDemoFMX.exe
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- splash_image.png
- true
-
-
-
-
- splash_image.png
- true
-
-
-
-
- splash_image.png
- true
-
-
-
-
- libSVGIconImageListDemoFMX.so
- true
-
-
-
-
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- libIconFontsImageListDemoFMX.so
- true
-
-
-
-
- true
-
-
-
-
- classes.dex
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- libIconFontsImageListDemoFMX.so
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- splash_image.png
- true
-
-
-
-
- .\assets\internal
- Material Design Icons.ttf
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
-
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
- .\assets\internal
- Material Design Icons.ttf
- true
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- Contents\MacOS
- 1
- .framework
-
-
- Contents\MacOS
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- Contents
- 1
-
-
- Contents
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- False
- False
- True
- False
-
-
- 12
-
-
-
-
-
-
-
-
+
+
+ {9B6BC2FB-9912-4FF8-B666-AE3FEC0ED091}
+ 18.8
+ FMX
+ SVGIconImageListDemoFMX.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ true
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ true
+ true
+ true
+ true
+ true
+ true
+ $(BDS)\bin\delphi_PROJECTICNS.icns
+ SVGIconImageListDemoFMX
+ ..\Dcu\D10_3\$(Platform)\$(Config)
+ ..\Bin\
+ false
+ false
+ false
+ false
+ false
+ ..\..\Source;..\..\Svg;..\..\GDIP;$(DCC_UnitSearchPath)
+
+
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
+ package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
+ android-support-v4.dex.jar;apk-expansion.dex.jar;cloud-messaging.dex.jar;fmx.dex.jar;google-analytics-v2.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar;google-play-services.dex.jar
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
+ true
+ Debug
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
+ 1
+ #000000
+
+
+ package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
+ Debug
+ true
+ true
+ Base
+ true
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
+ android-support-v4.dex.jar;apk-expansion.dex.jar;cloud-messaging.dex.jar;fmx.dex.jar;google-analytics-v2.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar;google-play-services.dex.jar
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage);$(DCC_UsePackage)
+ 1
+ #000000
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;FireDACDSDriver;rtl;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ 1033
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ $(BDS)\bin\default_app.manifest
+ CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ ..\Images\svgiconimagelistcomponenticon.ico
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;FireDACDSDriver;rtl;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ 1033
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ $(BDS)\bin\default_app.manifest
+ CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ 1
+ #000000
+
+
+ true
+ false
+ Debug
+ PerMonitor
+ true
+ 1033
+
+
+ true
+ Debug
+ PerMonitor
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitor
+ IconFontsImageListComponentIcon.ico
+
+
+ true
+ PerMonitor
+
+
+
+ MainSource
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ SVGIconImageListDemoFMX.dpr
+
+
+ Chrome Tabs
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ styles.xml
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+ SVGIconImageListDemoFMX.exe
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ splash_image.png
+ true
+
+
+
+
+ splash_image.png
+ true
+
+
+
+
+ splash_image.png
+ true
+
+
+
+
+ libSVGIconImageListDemoFMX.so
+ true
+
+
+
+
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ libIconFontsImageListDemoFMX.so
+ true
+
+
+
+
+ true
+
+
+
+
+ classes.dex
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ libIconFontsImageListDemoFMX.so
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ splash_image.png
+ true
+
+
+
+
+ .\assets\internal
+ Material Design Icons.ttf
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+ .\assets\internal
+ Material Design Icons.ttf
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ False
+ False
+ True
+ False
+
+
+ 12
+
+
+
+
+
+
+
+
diff --git a/Demo/D10_4/SVGIconImageDemoFMX.dpr b/Demo/D10_4/SVGIconImageDemoFMX.dpr
index 40b8acfb..78c86606 100644
--- a/Demo/D10_4/SVGIconImageDemoFMX.dpr
+++ b/Demo/D10_4/SVGIconImageDemoFMX.dpr
@@ -1,14 +1,14 @@
-program SVGIconImageDemoFMX;
-
-uses
- System.StartUpCopy,
- FMX.Forms,
- USVGIconImageFMX in '..\Source\USVGIconImageFMX.pas' {SVGIconImageForm};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.CreateForm(TSVGIconImageForm, SVGIconImageForm);
- Application.Run;
-end.
+program SVGIconImageDemoFMX;
+
+uses
+ System.StartUpCopy,
+ FMX.Forms,
+ USVGIconImageFMX in '..\Source\USVGIconImageFMX.pas' {SVGIconImageForm};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.CreateForm(TSVGIconImageForm, SVGIconImageForm);
+ Application.Run;
+end.
diff --git a/Demo/D10_4/SVGIconImageDemoFMX.dproj b/Demo/D10_4/SVGIconImageDemoFMX.dproj
index 83e73cd2..1e86fa6f 100644
--- a/Demo/D10_4/SVGIconImageDemoFMX.dproj
+++ b/Demo/D10_4/SVGIconImageDemoFMX.dproj
@@ -1,1119 +1,1119 @@
-
-
- {9F3FCCAB-39A7-436C-B038-A6D28455E580}
- 19.0
- FMX
- SVGIconImageDemoFMX.dpr
- True
- Debug
- Win32
- 32785
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\dcu\D10_4\$(Platform)\$(Config)
- ..\Bin
- false
- false
- false
- false
- false
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- true
- true
- true
- true
- true
- true
- true
- true
- $(BDS)\bin\delphi_PROJECTICON.ico
- $(BDS)\bin\delphi_PROJECTICNS.icns
- SVGIconImageDemoFMX
- ..\..\Source;..\..\Svg;..\..\GDIP;$(DCC_UnitSearchPath)
-
-
- DBXSqliteDriver;RESTComponents;IOCore;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;IconFontsImageList;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;ISOpenOffice7;inetdb;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;SVGImagePackageR;vclib;frxTee26;fs26;FireDACDBXDriver;dbexpress;IndyCore;vclx;frxIntIO26;dsnap;DataSnapCommon;emsclient;FireDACCommon;frxcs26;RESTBackendComponents;DataSnapConnectors;IOFireDAC;VCLRESTComponents;soapserver;fsTee26;ISVcl7;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;fsIBX26;frx26;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;frxIntIOIndy26;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;frxDB26;IndySystem;fsADO26;FireDACDb2Driver;frxDBX26;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;fsDB26;TeeDB;FireDAC;IOXML;emshosting;frxe26;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;ChromeTabs_R;DBXOdbcDriver;FireDACTDataDriver;FMXTee;SVGPackage;frxIBX26;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;frxADO26;CustomIPTransport;vcldsnap;SynEdit_R10_3;ISRtl7;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;ISFLib7;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
- 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
- ..\Images\svgiconimagelistcomponenticon.ico
-
-
- DBXSqliteDriver;RESTComponents;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- Debug
-
-
- Debug
-
-
- false
- true
- PerMonitorV2
- true
- 1033
- ..\Images\svgiconimagelistcomponenticon.ico
-
-
- true
- PerMonitorV2
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
- PerMonitorV2
- ..\D10_3\IconFontsImageListComponentIcon.ico
-
-
- true
- PerMonitorV2
-
-
-
- MainSource
-
-
-
- fmx
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Application
-
-
-
- SVGIconImageDemoFMX.dpr
-
-
- Microsoft Office 2000 Sample Automation Server Wrapper Components
- Microsoft Office XP Sample Automation Server Wrapper Components
-
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- SVGIconImageDemoFMX.exe
- true
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- Contents\MacOS
- 1
- .framework
-
-
- Contents\MacOS
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen
- 64
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- Contents
- 1
-
-
- Contents
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- True
- True
- False
-
-
- 12
-
-
-
-
-
-
+
+
+ {9F3FCCAB-39A7-436C-B038-A6D28455E580}
+ 19.0
+ FMX
+ SVGIconImageDemoFMX.dpr
+ True
+ Debug
+ Win32
+ 32785
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\dcu\D10_4\$(Platform)\$(Config)
+ ..\Bin
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\delphi_PROJECTICNS.icns
+ SVGIconImageDemoFMX
+ ..\..\Source;..\..\Svg;..\..\GDIP;$(DCC_UnitSearchPath)
+
+
+ DBXSqliteDriver;RESTComponents;IOCore;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;IconFontsImageList;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;ISOpenOffice7;inetdb;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;SVGImagePackageR;vclib;frxTee26;fs26;FireDACDBXDriver;dbexpress;IndyCore;vclx;frxIntIO26;dsnap;DataSnapCommon;emsclient;FireDACCommon;frxcs26;RESTBackendComponents;DataSnapConnectors;IOFireDAC;VCLRESTComponents;soapserver;fsTee26;ISVcl7;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;fsIBX26;frx26;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;frxIntIOIndy26;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;frxDB26;IndySystem;fsADO26;FireDACDb2Driver;frxDBX26;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;fsDB26;TeeDB;FireDAC;IOXML;emshosting;frxe26;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;ChromeTabs_R;DBXOdbcDriver;FireDACTDataDriver;FMXTee;SVGPackage;frxIBX26;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;frxADO26;CustomIPTransport;vcldsnap;SynEdit_R10_3;ISRtl7;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;ISFLib7;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ 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
+ ..\Images\svgiconimagelistcomponenticon.ico
+
+
+ DBXSqliteDriver;RESTComponents;DBXDb2Driver;DBXInterBaseDriver;DataSnapServerMidas;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;emsserverresource;DbxClientDriver;FireDACDSDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ Debug
+
+
+ Debug
+
+
+ false
+ true
+ PerMonitorV2
+ true
+ 1033
+ ..\Images\svgiconimagelistcomponenticon.ico
+
+
+ true
+ PerMonitorV2
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+ ..\D10_3\IconFontsImageListComponentIcon.ico
+
+
+ true
+ PerMonitorV2
+
+
+
+ MainSource
+
+
+
+ fmx
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ SVGIconImageDemoFMX.dpr
+
+
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ SVGIconImageDemoFMX.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen
+ 64
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ True
+ True
+ False
+
+
+ 12
+
+
+
+
+
+
diff --git a/Demo/D10_4/SVGIconImageListDemo.dpr b/Demo/D10_4/SVGIconImageListDemo.dpr
index f3647d60..91f91e25 100644
--- a/Demo/D10_4/SVGIconImageListDemo.dpr
+++ b/Demo/D10_4/SVGIconImageListDemo.dpr
@@ -1,21 +1,21 @@
-program SVGIconImageListDemo;
-
-uses
- Vcl.Forms,
- Vcl.Themes,
- Vcl.Styles,
- UMain in '..\Source\UMain.pas' {MainForm},
- SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageList in '..\..\source\SVGIconImageList.pas',
- UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.MainFormOnTaskbar := True;
- TStyleManager.TrySetStyle('Windows10');
- Application.CreateForm(TImageDataModule, ImageDataModule);
- Application.CreateForm(TMainForm, MainForm);
- Application.Run;
-end.
+program SVGIconImageListDemo;
+
+uses
+ Vcl.Forms,
+ Vcl.Themes,
+ Vcl.Styles,
+ UMain in '..\Source\UMain.pas' {MainForm},
+ SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageList in '..\..\source\SVGIconImageList.pas',
+ UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Windows10');
+ Application.CreateForm(TImageDataModule, ImageDataModule);
+ Application.CreateForm(TMainForm, MainForm);
+ Application.Run;
+end.
diff --git a/Demo/D10_4/SVGIconImageListDemoFMX.dpr b/Demo/D10_4/SVGIconImageListDemoFMX.dpr
index 6dc52676..c4fdb83f 100644
--- a/Demo/D10_4/SVGIconImageListDemoFMX.dpr
+++ b/Demo/D10_4/SVGIconImageListDemoFMX.dpr
@@ -1,28 +1,28 @@
-//---------------------------------------------------------------------------
-
-// This software is Copyright (c) 2015 Embarcadero Technologies, Inc.
-// You may only use this software if you are an authorized licensee
-// of an Embarcadero developer tools product.
-// This software is considered a Redistributable as defined under
-// the software license agreement that comes with the Embarcadero Products
-// and is subject to that software license agreement.
-
-//---------------------------------------------------------------------------
-
-program SVGIconImageListDemoFMX;
-
-uses
- System.StartUpCopy,
- FMX.Forms,
- {$IFDEF MSWINDOWS}
- FMX.SVGIconImageListEditorUnit in '..\..\Packages\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX},
- {$ENDIF }
- UMainFMX in '..\Source\UMainFMX.pas' {SVGIconImageListForm};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.CreateForm(TSVGIconImageListForm, SVGIconImageListForm);
- Application.Run;
-end.
+//---------------------------------------------------------------------------
+
+// This software is Copyright (c) 2015 Embarcadero Technologies, Inc.
+// You may only use this software if you are an authorized licensee
+// of an Embarcadero developer tools product.
+// This software is considered a Redistributable as defined under
+// the software license agreement that comes with the Embarcadero Products
+// and is subject to that software license agreement.
+
+//---------------------------------------------------------------------------
+
+program SVGIconImageListDemoFMX;
+
+uses
+ System.StartUpCopy,
+ FMX.Forms,
+ {$IFDEF MSWINDOWS}
+ FMX.SVGIconImageListEditorUnit in '..\..\Packages\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX},
+ {$ENDIF }
+ UMainFMX in '..\Source\UMainFMX.pas' {SVGIconImageListForm};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.CreateForm(TSVGIconImageListForm, SVGIconImageListForm);
+ Application.Run;
+end.
diff --git a/Demo/D10_4/SVGIconImageListDemoFMX.dproj b/Demo/D10_4/SVGIconImageListDemoFMX.dproj
index 4b1a8b84..9668d458 100644
--- a/Demo/D10_4/SVGIconImageListDemoFMX.dproj
+++ b/Demo/D10_4/SVGIconImageListDemoFMX.dproj
@@ -1,1332 +1,1332 @@
-
-
- {9B6BC2FB-9912-4FF8-B666-AE3FEC0ED091}
- 19.0
- FMX
- SVGIconImageListDemoFMX.dpr
- True
- Debug
- Win32
- 1
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- $(BDS)\bin\delphi_PROJECTICON.ico
- true
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- true
- true
- true
- true
- true
- true
- $(BDS)\bin\delphi_PROJECTICNS.icns
- SVGIconImageListDemoFMX
- ..\Dcu\D10_4\$(Platform)\$(Config)
- ..\Bin\
- false
- false
- false
- false
- false
- ..\..\Source;..\..\Svg;..\..\GDIP;$(DCC_UnitSearchPath)
- 1040
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
-
-
- $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
- package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
- $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
- android-support-v4.dex.jar;apk-expansion.dex.jar;cloud-messaging.dex.jar;fmx.dex.jar;google-analytics-v2.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar;google-play-services.dex.jar
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
- DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
- true
- Debug
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
- 1
- #000000
-
-
- package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
- Debug
- true
- true
- Base
- true
- $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
- $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
- android-support-v4.dex.jar;apk-expansion.dex.jar;cloud-messaging.dex.jar;fmx.dex.jar;google-analytics-v2.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar;google-play-services.dex.jar
- $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
- DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage);$(DCC_UsePackage)
- 1
- #000000
-
-
- DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;FireDACDSDriver;rtl;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
- 1033
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- $(BDS)\bin\default_app.manifest
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
- ..\Images\svgiconimagelistcomponenticon.ico
-
-
- DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;FireDACDSDriver;rtl;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
- 1033
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
- $(BDS)\bin\default_app.manifest
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- 1
- #000000
-
-
- true
- false
- Debug
- PerMonitor
- true
- 1033
- ..\Images\svgiconimagelistcomponenticon.ico
-
-
- true
- Debug
- PerMonitor
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
- PerMonitor
- ..\D10_3\IconFontsImageListComponentIcon.ico
-
-
- true
- PerMonitor
-
-
-
- MainSource
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Application
-
-
-
- SVGIconImageListDemoFMX.dpr
-
-
- Microsoft Office 2000 Sample Automation Server Wrapper Components
- Microsoft Office XP Sample Automation Server Wrapper Components
-
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- styles.xml
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
- SVGIconImageListDemoFMX.exe
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- splash_image.png
- true
-
-
-
-
- splash_image.png
- true
-
-
-
-
- splash_image.png
- true
-
-
-
-
- libSVGIconImageListDemoFMX.so
- true
-
-
-
-
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- libIconFontsImageListDemoFMX.so
- true
-
-
-
-
- true
-
-
-
-
- classes.dex
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- libIconFontsImageListDemoFMX.so
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- splash_image.png
- true
-
-
-
-
- .\assets\internal
- Material Design Icons.ttf
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
-
- true
-
-
-
-
- ic_launcher.png
- true
-
-
-
-
- ic_notification.png
- true
-
-
-
-
- .\assets\internal
- Material Design Icons.ttf
- true
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- Contents\MacOS
- 1
- .framework
-
-
- Contents\MacOS
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen
- 64
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- Contents
- 1
-
-
- Contents
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- False
- False
- True
- False
-
-
- 12
-
-
-
-
-
-
-
-
+
+
+ {9B6BC2FB-9912-4FF8-B666-AE3FEC0ED091}
+ 19.0
+ FMX
+ SVGIconImageListDemoFMX.dpr
+ True
+ Debug
+ Win32
+ 1
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ true
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ true
+ true
+ true
+ true
+ true
+ true
+ $(BDS)\bin\delphi_PROJECTICNS.icns
+ SVGIconImageListDemoFMX
+ ..\Dcu\D10_4\$(Platform)\$(Config)
+ ..\Bin\
+ false
+ false
+ false
+ false
+ false
+ ..\..\Source;..\..\Svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ 1040
+ CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
+
+
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
+ package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
+ android-support-v4.dex.jar;apk-expansion.dex.jar;cloud-messaging.dex.jar;fmx.dex.jar;google-analytics-v2.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar;google-play-services.dex.jar
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage)
+ true
+ Debug
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_24x24.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png
+ 1
+ #000000
+
+
+ package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=
+ Debug
+ true
+ true
+ Base
+ true
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_640x480.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_426x320.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_470x320.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png
+ $(BDS)\bin\Artwork\Android\FM_SplashImage_960x720.png
+ android-support-v4.dex.jar;apk-expansion.dex.jar;cloud-messaging.dex.jar;fmx.dex.jar;google-analytics-v2.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar;google-play-services.dex.jar
+ $(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png
+ DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;DataSnapFireDAC;tethering;bindcompfmx;FmxTeeUI;FireDACIBDriver;fmx;FireDACDBXDriver;dbexpress;IndyCore;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;ibmonitor;FMXTee;soaprtl;DbxCommonDriver;ibxpress;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage);$(DCC_UsePackage)
+ 1
+ #000000
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;FireDACDSDriver;rtl;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ 1033
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ $(BDS)\bin\default_app.manifest
+ CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ ..\Images\svgiconimagelistcomponenticon.ico
+
+
+ DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;FireDACDSDriver;rtl;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;IndyProtocols;fmxase;$(DCC_UsePackage)
+ 1033
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ $(BDS)\bin\default_app.manifest
+ CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ 1
+ #000000
+
+
+ true
+ false
+ Debug
+ PerMonitor
+ true
+ 1033
+ ..\Images\svgiconimagelistcomponenticon.ico
+
+
+ true
+ Debug
+ PerMonitor
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitor
+ ..\D10_3\IconFontsImageListComponentIcon.ico
+
+
+ true
+ PerMonitor
+
+
+
+ MainSource
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ SVGIconImageListDemoFMX.dpr
+
+
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ styles.xml
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+ SVGIconImageListDemoFMX.exe
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ splash_image.png
+ true
+
+
+
+
+ splash_image.png
+ true
+
+
+
+
+ splash_image.png
+ true
+
+
+
+
+ libSVGIconImageListDemoFMX.so
+ true
+
+
+
+
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ libIconFontsImageListDemoFMX.so
+ true
+
+
+
+
+ true
+
+
+
+
+ classes.dex
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ libIconFontsImageListDemoFMX.so
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ splash_image.png
+ true
+
+
+
+
+ .\assets\internal
+ Material Design Icons.ttf
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+
+ true
+
+
+
+
+ ic_launcher.png
+ true
+
+
+
+
+ ic_notification.png
+ true
+
+
+
+
+ .\assets\internal
+ Material Design Icons.ttf
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen
+ 64
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ False
+ False
+ True
+ False
+
+
+ 12
+
+
+
+
+
+
+
+
diff --git a/Demo/DXE6/SVGIconImageListDemo.dpr b/Demo/DXE6/SVGIconImageListDemo.dpr
index f3647d60..91f91e25 100644
--- a/Demo/DXE6/SVGIconImageListDemo.dpr
+++ b/Demo/DXE6/SVGIconImageListDemo.dpr
@@ -1,21 +1,21 @@
-program SVGIconImageListDemo;
-
-uses
- Vcl.Forms,
- Vcl.Themes,
- Vcl.Styles,
- UMain in '..\Source\UMain.pas' {MainForm},
- SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageList in '..\..\source\SVGIconImageList.pas',
- UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.MainFormOnTaskbar := True;
- TStyleManager.TrySetStyle('Windows10');
- Application.CreateForm(TImageDataModule, ImageDataModule);
- Application.CreateForm(TMainForm, MainForm);
- Application.Run;
-end.
+program SVGIconImageListDemo;
+
+uses
+ Vcl.Forms,
+ Vcl.Themes,
+ Vcl.Styles,
+ UMain in '..\Source\UMain.pas' {MainForm},
+ SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageList in '..\..\source\SVGIconImageList.pas',
+ UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Windows10');
+ Application.CreateForm(TImageDataModule, ImageDataModule);
+ Application.CreateForm(TMainForm, MainForm);
+ Application.Run;
+end.
diff --git a/Demo/DXE6/SVGIconImageListDemo.dproj b/Demo/DXE6/SVGIconImageListDemo.dproj
index af2b8d43..a0e4d34a 100644
--- a/Demo/DXE6/SVGIconImageListDemo.dproj
+++ b/Demo/DXE6/SVGIconImageListDemo.dproj
@@ -1,855 +1,855 @@
-
-
- {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
- SVGIconImageListDemo.dpr
- Debug
- DCC32
- 18.8
- VCL
- True
- Win32
- 2
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\Images\svgiconimagelistcomponenticon.ico
- $(BDS)\bin\default_app.manifest
- Amakrits|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Amakrits.vsf;"Amethyst Kamri|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\AmethystKamri.vsf";"Aqua Light Slate|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\AquaLightSlate.vsf";Carbon|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Carbon.vsf;"Cyan Night|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\CyanNight.vsf";Glossy|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Glossy.vsf;"Golden Graphite|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\GoldenGraphite.vsf";Light|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Light.vsf;Luna|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Luna.vsf;"Ruby Graphite|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\RubyGraphite.vsf";"Sapphire Kamri|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\SapphireKamri.vsf";"Turquoise Gray|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\TurquoiseGray.vsf"
- ..\Dcu\DXE6\$(Platform)\$(Config)
- ..\Bin
- ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- ..\Bin\IconFontsImageListDemo.exe
- 00400000
- x86
- SVGIconImageListDemo
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
- true
- 1033
- CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
- "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
-
-
- System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
- PerMonitor
-
-
- $(BDS)\bin\default_app.manifest
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
-
-
- true
- DEBUG;$(DCC_Define)
-
-
- true
-
-
-
- MainSource
-
-
-
-
-
-
- dfm
-
-
-
-
- dfm
- TDataModule
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- Delphi.Personality.12
- VCLApplication
-
-
-
- SVGIconImageListDemo.dpr
-
-
- False
- True
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1040
- 1252
-
-
- Ethea S.r.l.
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
- True
- False
-
-
-
-
- SVGIconImageListDemo.exe
- true
-
-
-
-
- res\drawable-normal
- 1
-
-
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\x86
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- res\drawable-small
- 1
-
-
-
-
-
- 1
-
-
- Contents\MacOS
- 0
-
-
-
-
- classes
- 1
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- library\lib\armeabi-v7a
- 1
-
-
- 0
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\values
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 12
-
-
-
-
+
+
+ {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
+ SVGIconImageListDemo.dpr
+ Debug
+ DCC32
+ 18.8
+ VCL
+ True
+ Win32
+ 2
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\Images\svgiconimagelistcomponenticon.ico
+ $(BDS)\bin\default_app.manifest
+ Amakrits|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Amakrits.vsf;"Amethyst Kamri|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\AmethystKamri.vsf";"Aqua Light Slate|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\AquaLightSlate.vsf";Carbon|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Carbon.vsf;"Cyan Night|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\CyanNight.vsf";Glossy|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Glossy.vsf;"Golden Graphite|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\GoldenGraphite.vsf";Light|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Light.vsf;Luna|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\Luna.vsf;"Ruby Graphite|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\RubyGraphite.vsf";"Sapphire Kamri|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\SapphireKamri.vsf";"Turquoise Gray|VCLSTYLE|$(PUBLIC)\Documents\Embarcadero\Studio\14.0\Styles\TurquoiseGray.vsf"
+ ..\Dcu\DXE6\$(Platform)\$(Config)
+ ..\Bin
+ ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ ..\Bin\IconFontsImageListDemo.exe
+ 00400000
+ x86
+ SVGIconImageListDemo
+ Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
+ true
+ 1033
+ CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
+ "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ PerMonitor
+
+
+ $(BDS)\bin\default_app.manifest
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+
+
+ true
+ DEBUG;$(DCC_Define)
+
+
+ true
+
+
+
+ MainSource
+
+
+
+
+
+
+ dfm
+
+
+
+
+ dfm
+ TDataModule
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+
+ Delphi.Personality.12
+ VCLApplication
+
+
+
+ SVGIconImageListDemo.dpr
+
+
+ False
+ True
+ False
+
+
+ True
+ False
+ 1
+ 0
+ 0
+ 0
+ False
+ False
+ False
+ False
+ False
+ 1040
+ 1252
+
+
+ Ethea S.r.l.
+
+ 1.0.0.0
+
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+
+ True
+ False
+
+
+
+
+ SVGIconImageListDemo.exe
+ true
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\x86
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 0
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 12
+
+
+
+
diff --git a/Demo/DXE8/SVGIconImageListDemo.dpr b/Demo/DXE8/SVGIconImageListDemo.dpr
index f3647d60..91f91e25 100644
--- a/Demo/DXE8/SVGIconImageListDemo.dpr
+++ b/Demo/DXE8/SVGIconImageListDemo.dpr
@@ -1,21 +1,21 @@
-program SVGIconImageListDemo;
-
-uses
- Vcl.Forms,
- Vcl.Themes,
- Vcl.Styles,
- UMain in '..\Source\UMain.pas' {MainForm},
- SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageList in '..\..\source\SVGIconImageList.pas',
- UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
-
-{$R *.res}
-
-begin
- Application.Initialize;
- Application.MainFormOnTaskbar := True;
- TStyleManager.TrySetStyle('Windows10');
- Application.CreateForm(TImageDataModule, ImageDataModule);
- Application.CreateForm(TMainForm, MainForm);
- Application.Run;
-end.
+program SVGIconImageListDemo;
+
+uses
+ Vcl.Forms,
+ Vcl.Themes,
+ Vcl.Styles,
+ UMain in '..\Source\UMain.pas' {MainForm},
+ SVGIconImageListEditorUnit in '..\..\Packages\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageList in '..\..\source\SVGIconImageList.pas',
+ UDataModule in '..\Source\UDataModule.pas' {ImageDataModule: TDataModule};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ TStyleManager.TrySetStyle('Windows10');
+ Application.CreateForm(TImageDataModule, ImageDataModule);
+ Application.CreateForm(TMainForm, MainForm);
+ Application.Run;
+end.
diff --git a/Demo/DXE8/SVGIconImageListDemo.dproj b/Demo/DXE8/SVGIconImageListDemo.dproj
index cf0e1639..5b2a3486 100644
--- a/Demo/DXE8/SVGIconImageListDemo.dproj
+++ b/Demo/DXE8/SVGIconImageListDemo.dproj
@@ -1,888 +1,888 @@
-
-
- {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
- SVGIconImageListDemo.dpr
- Debug
- DCC32
- 18.8
- VCL
- True
- Win32
- 2
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\Dcu\DXE8\$(Platform)\$(Config)
- ..\Bin
- ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- ..\Bin\IconFontsImageListDemo.exe
- 00400000
- x86
- SVGIconImageListDemo
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
- true
- 1033
- CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
- "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
-
-
- System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- $(BDS)\bin\default_app.manifest
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
- PerMonitor
-
-
- $(BDS)\bin\default_app.manifest
- ..\Images\svgiconimagelistcomponenticon.ico
- true
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
-
-
- true
- DEBUG;$(DCC_Define)
-
-
- true
-
-
-
- MainSource
-
-
-
-
-
-
- dfm
-
-
-
-
- dfm
- TDataModule
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- Delphi.Personality.12
- VCLApplication
-
-
-
- SVGIconImageListDemo.dpr
-
-
- False
- True
- False
-
-
- True
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1040
- 1252
-
-
- Ethea S.r.l.
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
- True
- True
-
-
-
-
- SVGIconImageListDemo.exe
- true
-
-
-
-
- res\drawable-normal
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\x86
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- res\drawable-small
- 1
-
-
-
-
-
- 1
-
-
- Contents\MacOS
- 0
-
-
-
-
- classes
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- 1
-
-
- 0
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\values
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 12
-
-
-
-
+
+
+ {60259119-4A8F-4FB3-AAAB-25CBFB58FEE8}
+ SVGIconImageListDemo.dpr
+ Debug
+ DCC32
+ 18.8
+ VCL
+ True
+ Win32
+ 2
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\Dcu\DXE8\$(Platform)\$(Config)
+ ..\Bin
+ ..\..\source;..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ ..\Bin\IconFontsImageListDemo.exe
+ 00400000
+ x86
+ SVGIconImageListDemo
+ Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)
+ true
+ 1033
+ CompanyName=Ethea;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;ProgramID=
+ "Aqua Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\AquaLightSlate.vsf";"Cobalt XEMedia|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CobaltXEMedia.vsf";"Cyan Night|VCLSTYLE|$(BDSCOMMONDIR)\Styles\CyanNight.vsf";"Emerald Light Slate|VCLSTYLE|$(BDSCOMMONDIR)\Styles\EmeraldLightSlate.vsf";Glossy|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glossy.vsf;Glow|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Glow.vsf;"Golden Graphite|VCLSTYLE|$(BDSCOMMONDIR)\Styles\GoldenGraphite.vsf";"Iceberg Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\IcebergClassico.vsf";"Lavender Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\LavenderClassico.vsf";Light|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Light.vsf;Obsidian|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Obsidian.vsf;"Sapphire Kamri|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SapphireKamri.vsf";Silver|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Silver.vsf;Sky|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Sky.vsf;"Slate Classico|VCLSTYLE|$(BDSCOMMONDIR)\Styles\SlateClassico.vsf";"Turquoise Gray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\TurquoiseGray.vsf";Windows10|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10.vsf;"Windows10 Dark|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10Dark.vsf";"Windows10 SlateGray|VCLSTYLE|$(BDSCOMMONDIR)\Styles\Windows10SlateGray.vsf"
+
+
+ System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ $(BDS)\bin\default_app.manifest
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ PerMonitor
+
+
+ $(BDS)\bin\default_app.manifest
+ ..\Images\svgiconimagelistcomponenticon.ico
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+
+
+ true
+ DEBUG;$(DCC_Define)
+
+
+ true
+
+
+
+ MainSource
+
+
+
+
+
+
+ dfm
+
+
+
+
+ dfm
+ TDataModule
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+
+ Delphi.Personality.12
+ VCLApplication
+
+
+
+ SVGIconImageListDemo.dpr
+
+
+ False
+ True
+ False
+
+
+ True
+ False
+ 1
+ 0
+ 0
+ 0
+ False
+ False
+ False
+ False
+ False
+ 1040
+ 1252
+
+
+ Ethea S.r.l.
+
+ 1.0.0.0
+
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+
+ True
+ True
+
+
+
+
+ SVGIconImageListDemo.exe
+ true
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\x86
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ res\drawable-small
+ 1
+
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 0
+
+
+
+
+ classes
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ 1
+
+
+ 0
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 12
+
+
+
+
diff --git a/Demo/NewSydneyVectors/C++BUIDER_Product.svg b/Demo/NewSydneyVectors/C++BUIDER_Product.svg
index 3645ce17..d319f004 100644
--- a/Demo/NewSydneyVectors/C++BUIDER_Product.svg
+++ b/Demo/NewSydneyVectors/C++BUIDER_Product.svg
@@ -1,32 +1,32 @@
-
-
-
+
+
+
diff --git a/Demo/NewSydneyVectors/C++Builder project icon.svg b/Demo/NewSydneyVectors/C++Builder project icon.svg
index cbac2df9..f2bd2ecb 100644
--- a/Demo/NewSydneyVectors/C++Builder project icon.svg
+++ b/Demo/NewSydneyVectors/C++Builder project icon.svg
@@ -1,30 +1,30 @@
-
-
-
+
+
+
diff --git a/Demo/NewSydneyVectors/Delphi project icon (two-tone).svg b/Demo/NewSydneyVectors/Delphi project icon (two-tone).svg
index 6b62b3ed..0ec12e5b 100644
--- a/Demo/NewSydneyVectors/Delphi project icon (two-tone).svg
+++ b/Demo/NewSydneyVectors/Delphi project icon (two-tone).svg
@@ -1,28 +1,28 @@
-
-
-
+
+
+
diff --git a/Demo/NewSydneyVectors/Delphi project icon.svg b/Demo/NewSydneyVectors/Delphi project icon.svg
index 6c782fda..09002db1 100644
--- a/Demo/NewSydneyVectors/Delphi project icon.svg
+++ b/Demo/NewSydneyVectors/Delphi project icon.svg
@@ -1,28 +1,28 @@
-
-
-
+
+
+
diff --git a/Demo/NewSydneyVectors/Interbase_product icon.svg b/Demo/NewSydneyVectors/Interbase_product icon.svg
index 05596606..867ab463 100644
--- a/Demo/NewSydneyVectors/Interbase_product icon.svg
+++ b/Demo/NewSydneyVectors/Interbase_product icon.svg
@@ -1,46 +1,46 @@
-
-
-
+
+
+
diff --git a/Demo/NewSydneyVectors/RAD_SERVER_Product icon.svg b/Demo/NewSydneyVectors/RAD_SERVER_Product icon.svg
index af838be4..cfea591c 100644
--- a/Demo/NewSydneyVectors/RAD_SERVER_Product icon.svg
+++ b/Demo/NewSydneyVectors/RAD_SERVER_Product icon.svg
@@ -1,123 +1,123 @@
-
-
-
+
+
+
diff --git a/Demo/NewSydneyVectors/RAD_STUDIO_Product icon.svg b/Demo/NewSydneyVectors/RAD_STUDIO_Product icon.svg
index 74f9af2b..f1a08605 100644
--- a/Demo/NewSydneyVectors/RAD_STUDIO_Product icon.svg
+++ b/Demo/NewSydneyVectors/RAD_STUDIO_Product icon.svg
@@ -1,40 +1,40 @@
-
-
-
+
+
+
diff --git a/Demo/Source/UDataModule.dfm b/Demo/Source/UDataModule.dfm
index 3287ea50..a9711594 100644
--- a/Demo/Source/UDataModule.dfm
+++ b/Demo/Source/UDataModule.dfm
@@ -1,7276 +1,7276 @@
-object ImageDataModule: TImageDataModule
- OldCreateOrder = False
- Height = 150
- Width = 215
- object SVGIconImageCollection: TSVGIconImageCollection
- Left = 87
- Top = 30
- Images = {
- 1B0100000B00000062007500730069006E006500730073006D0061006E009D03
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D
- 22234646393830302220706F696E74733D2232342C33372031392C3331203139
- 2C32352032392C32352032392C3331222F3E0D0A202020203C672066696C6C3D
- 2223464641373236223E0D0A20202020202020203C636972636C652063783D22
- 3333222063793D2231392220723D2232222F3E0D0A20202020202020203C6369
- 72636C652063783D223135222063793D2231392220723D2232222F3E0D0A2020
- 20203C2F673E0D0A202020203C706174682066696C6C3D222346464237344422
- 20643D224D33332C313363302D372E362D31382D352D31382C3063302C312E31
- 2C302C352E392C302C3763302C352C342C392C392C3973392D342C392D394333
- 332C31382E392C33332C31342E312C33332C31337A222F3E0D0A202020203C70
- 6174682066696C6C3D22233432343234322220643D224D32342C34632D362E31
- 2C302D31302C342E392D31302C313163302C302E382C302C322E332C302C322E
- 336C322C312E37762D356C31322D346C342C3476356C322D312E3763302C302C
- 302D312E352C302D322E3363302D342D312D382D362D396C2D312D3220483234
- 7A222F3E0D0A202020203C672066696C6C3D2223373834373139223E0D0A2020
- 2020202020203C636972636C652063783D223238222063793D2231392220723D
- 2231222F3E0D0A20202020202020203C636972636C652063783D223230222063
- 793D2231392220723D2231222F3E0D0A202020203C2F673E0D0A202020203C70
- 6F6C79676F6E2066696C6C3D22236666662220706F696E74733D2232342C3433
- 2031392C33312032342C33322032392C3331222F3E0D0A202020203C706F6C79
- 676F6E2066696C6C3D22234433324632462220706F696E74733D2232332C3335
- 2032322E332C33392E352032342C34332E352032352E372C33392E352032352C
- 33352032362C33342032342C33322032322C3334222F3E0D0A202020203C7061
- 74682066696C6C3D22233534364537412220643D224D32392C33314C32392C33
- 316C2D352C31326C2D352D313263302C302D31312C322D31312C313368333243
- 34302C33332C32392C33312C32392C33317A222F3E0D0A3C2F7376673E0D0A0D
- 00000062007500730069006E0065007300730077006F006D0061006E00F60200
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C7265637420783D2231362220793D
- 223135222066696C6C3D2223424633363043222077696474683D223136222068
- 65696768743D223138222F3E0D0A202020203C706174682066696C6C3D222337
- 38393039432220643D224D34302C3434483863302D31312C31312D31332C3131
- 2D31336831304332392C33312C34302C33332C34302C34347A222F3E0D0A2020
- 20203C706174682066696C6C3D22234646393830302220643D224D32342C3337
- 632D322E322C302D352D362D352D36762D3668313076364332392C33312C3236
- 2E322C33372C32342C33377A222F3E0D0A202020203C706174682066696C6C3D
- 22234646423734442220643D224D33332C313463302D372E362D31382D352D31
- 382C3063302C312E312C302C352E392C302C3763302C352C342C392C392C3973
- 392D342C392D394333332C31392E392C33332C31352E312C33332C31347A222F
- 3E0D0A202020203C706174682066696C6C3D22234646353732322220643D224D
- 32342C344331372E392C342C392C372E342C392C32372E336C372C342E375631
- 396C31322D376C342C357631356C372D3663302D342D302E372D32302D31312D
- 32306C2D312D324832347A222F3E0D0A202020203C706174682066696C6C3D22
- 234646423734442220643D224D32342C3338632D342E342C302D352D372D352D
- 3773322E352C342C352C3473352D342C352D345332382E342C33382C32342C33
- 387A222F3E0D0A202020203C636972636C652066696C6C3D2223373834373139
- 222063783D223238222063793D2232312220723D2231222F3E0D0A202020203C
- 636972636C652066696C6C3D2223373834373139222063783D22323022206379
- 3D2232312220723D2231222F3E0D0A3C2F7376673E0D0A08000000630061006C
- 0065006E00640061007200030500003C7376672076657273696F6E3D22312220
- 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
- 67222076696577426F783D223020302034382034382220656E61626C652D6261
- 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
- 706174682066696C6C3D22234346443844432220643D224D352C333856313468
- 333876323463302C322E322D312E382C342D342C34483943362E382C34322C35
- 2C34302E322C352C33387A222F3E0D0A202020203C706174682066696C6C3D22
- 234634343333362220643D224D34332C313076364835762D3663302D322E322C
- 312E382D342C342D346833304334312E322C362C34332C372E382C34332C3130
- 7A222F3E0D0A202020203C672066696C6C3D2223423731433143223E0D0A2020
- 2020202020203C636972636C652063783D223333222063793D2231302220723D
- 2233222F3E0D0A20202020202020203C636972636C652063783D223135222063
- 793D2231302220723D2233222F3E0D0A202020203C2F673E0D0A202020203C67
- 2066696C6C3D2223423042454335223E0D0A20202020202020203C7061746820
- 643D224D33332C33632D312E312C302D322C302E392D322C32763563302C312E
- 312C302E392C322C322C3273322D302E392C322D3256354333352C332E392C33
- 342E312C332C33332C337A222F3E0D0A20202020202020203C7061746820643D
- 224D31352C33632D312E312C302D322C302E392D322C32763563302C312E312C
- 302E392C322C322C3273322D302E392C322D3256354331372C332E392C31362E
- 312C332C31352C337A222F3E0D0A202020203C2F673E0D0A202020203C672066
- 696C6C3D2223393041344145223E0D0A20202020202020203C7265637420783D
- 2231332220793D223230222077696474683D223422206865696768743D223422
- 2F3E0D0A20202020202020203C7265637420783D2231392220793D2232302220
- 77696474683D223422206865696768743D2234222F3E0D0A2020202020202020
- 3C7265637420783D2232352220793D223230222077696474683D223422206865
- 696768743D2234222F3E0D0A20202020202020203C7265637420783D22333122
- 20793D223230222077696474683D223422206865696768743D2234222F3E0D0A
- 20202020202020203C7265637420783D2231332220793D223236222077696474
- 683D223422206865696768743D2234222F3E0D0A20202020202020203C726563
- 7420783D2231392220793D223236222077696474683D22342220686569676874
- 3D2234222F3E0D0A20202020202020203C7265637420783D2232352220793D22
- 3236222077696474683D223422206865696768743D2234222F3E0D0A20202020
- 202020203C7265637420783D2233312220793D223236222077696474683D2234
- 22206865696768743D2234222F3E0D0A20202020202020203C7265637420783D
- 2231332220793D223332222077696474683D223422206865696768743D223422
- 2F3E0D0A20202020202020203C7265637420783D2231392220793D2233322220
- 77696474683D223422206865696768743D2234222F3E0D0A2020202020202020
- 3C7265637420783D2232352220793D223332222077696474683D223422206865
- 696768743D2234222F3E0D0A20202020202020203C7265637420783D22333122
- 20793D223332222077696474683D223422206865696768743D2234222F3E0D0A
- 202020203C2F673E0D0A3C2F7376673E0D0A05000000610062006F0075007400
- 600100003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
- 233231393646332220643D224D33372C34304831316C2D362C3656313263302D
- 332E332C322E372D362C362D3668323663332E332C302C362C322E372C362C36
- 7632324334332C33372E332C34302E332C34302C33372C34307A222F3E0D0A20
- 2020203C672066696C6C3D2223666666223E0D0A20202020202020203C726563
- 7420783D2232322220793D223230222077696474683D22342220686569676874
- 3D223131222F3E0D0A20202020202020203C636972636C652063783D22323422
- 2063793D2231352220723D2232222F3E0D0A202020203C2F673E0D0A3C2F7376
- 673E0D0A0A000000630061006C00630075006C00610074006F0072004D090000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C706174682066696C6C3D2223363136
- 3136312220643D224D34302C3136483876323463302C322E322C312E382C342C
- 342C3468323463322E322C302C342D312E382C342D345631367A222F3E0D0A20
- 2020203C706174682066696C6C3D22233432343234322220643D224D33362C34
- 48313243392E382C342C382C352E382C382C38763968333256384334302C352E
- 382C33382E322C342C33362C347A222F3E0D0A202020203C706174682066696C
- 6C3D22233943434336352220643D224D33362C3134483132632D302E362C302D
- 312D302E342D312D31563863302D302E362C302E342D312C312D316832346330
- 2E362C302C312C302E342C312C3176354333372C31332E362C33362E362C3134
- 2C33362C31347A222F3E0D0A202020203C672066696C6C3D2223333336393145
- 223E0D0A20202020202020203C7265637420783D2233332220793D2231302220
- 77696474683D223222206865696768743D2232222F3E0D0A2020202020202020
- 3C7265637420783D2232392220793D223130222077696474683D223222206865
- 696768743D2232222F3E0D0A202020203C2F673E0D0A202020203C7061746820
- 66696C6C3D22234646353235322220643D224D33362C3233682D33632D302E36
- 2C302D312D302E342D312D31762D3263302D302E362C302E342D312C312D3168
- 3363302E362C302C312C302E342C312C3176324333372C32322E362C33362E36
- 2C32332C33362C32337A222F3E0D0A202020203C672066696C6C3D2223453045
- 304530223E0D0A20202020202020203C7061746820643D224D31352C3233682D
- 33632D302E362C302D312D302E342D312D31762D3263302D302E362C302E342D
- 312C312D31683363302E362C302C312C302E342C312C3176324331362C32322E
- 362C31352E362C32332C31352C32337A222F3E0D0A20202020202020203C7061
- 746820643D224D32322C3233682D33632D302E362C302D312D302E342D312D31
- 762D3263302D302E362C302E342D312C312D31683363302E362C302C312C302E
- 342C312C3176324332332C32322E362C32322E362C32332C32322C32337A222F
- 3E0D0A20202020202020203C7061746820643D224D32392C3233682D33632D30
- 2E362C302D312D302E342D312D31762D3263302D302E362C302E342D312C312D
- 31683363302E362C302C312C302E342C312C3176324333302C32322E362C3239
- 2E362C32332C32392C32337A222F3E0D0A20202020202020203C706174682064
- 3D224D31352C3239682D33632D302E362C302D312D302E342D312D31762D3263
- 302D302E362C302E342D312C312D31683363302E362C302C312C302E342C312C
- 3176324331362C32382E362C31352E362C32392C31352C32397A222F3E0D0A20
- 202020202020203C7061746820643D224D32322C3239682D33632D302E362C30
- 2D312D302E342D312D31762D3263302D302E362C302E342D312C312D31683363
- 302E362C302C312C302E342C312C3176324332332C32382E362C32322E362C32
- 392C32322C32397A222F3E0D0A20202020202020203C7061746820643D224D32
- 392C3239682D33632D302E362C302D312D302E342D312D31762D3263302D302E
- 362C302E342D312C312D31683363302E362C302C312C302E342C312C31763243
- 33302C32382E362C32392E362C32392C32392C32397A222F3E0D0A2020202020
- 2020203C7061746820643D224D31352C3335682D33632D302E362C302D312D30
- 2E342D312D31762D3263302D302E362C302E342D312C312D31683363302E362C
- 302C312C302E342C312C3176324331362C33342E362C31352E362C33352C3135
- 2C33357A222F3E0D0A20202020202020203C7061746820643D224D32322C3335
- 682D33632D302E362C302D312D302E342D312D31762D3263302D302E362C302E
- 342D312C312D31683363302E362C302C312C302E342C312C3176324332332C33
- 342E362C32322E362C33352C32322C33357A222F3E0D0A20202020202020203C
- 7061746820643D224D32392C3335682D33632D302E362C302D312D302E342D31
- 2D31762D3263302D302E362C302E342D312C312D31683363302E362C302C312C
- 302E342C312C3176324333302C33342E362C32392E362C33352C32392C33357A
- 222F3E0D0A20202020202020203C7061746820643D224D31352C3431682D3363
- 2D302E362C302D312D302E342D312D31762D3263302D302E362C302E342D312C
- 312D31683363302E362C302C312C302E342C312C3176324331362C34302E362C
- 31352E362C34312C31352C34317A222F3E0D0A20202020202020203C70617468
- 20643D224D32322C3431682D33632D302E362C302D312D302E342D312D31762D
- 3263302D302E362C302E342D312C312D31683363302E362C302C312C302E342C
- 312C3176324332332C34302E362C32322E362C34312C32322C34317A222F3E0D
- 0A20202020202020203C7061746820643D224D32392C3431682D33632D302E36
- 2C302D312D302E342D312D31762D3263302D302E362C302E342D312C312D3168
- 3363302E362C302C312C302E342C312C3176324333302C34302E362C32392E36
- 2C34312C32392C34317A222F3E0D0A202020203C2F673E0D0A202020203C6720
- 66696C6C3D2223424442444244223E0D0A20202020202020203C706174682064
- 3D224D33362C3239682D33632D302E362C302D312D302E342D312D31762D3263
- 302D302E362C302E342D312C312D31683363302E362C302C312C302E342C312C
- 3176324333372C32382E362C33362E362C32392C33362C32397A222F3E0D0A20
- 202020202020203C7061746820643D224D33362C3335682D33632D302E362C30
- 2D312D302E342D312D31762D3263302D302E362C302E342D312C312D31683363
- 302E362C302C312C302E342C312C3176324333372C33342E362C33362E362C33
- 352C33362C33357A222F3E0D0A20202020202020203C7061746820643D224D33
- 362C3431682D33632D302E362C302D312D302E342D312D31762D3263302D302E
- 362C302E342D312C312D31683363302E362C302C312C302E342C312C31763243
- 33372C34302E362C33362E362C34312C33362C34317A222F3E0D0A202020203C
- 2F673E0D0A3C2F7376673E0D0A0A000000630065006C006C005F00700068006F
- 006E006500EB0500003C7376672076657273696F6E3D22312220786D6C6E733D
- 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
- 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
- 6E643D226E657720302030203438203438223E0D0A202020203C706174682066
- 696C6C3D22233534364537412220643D224D31322C343056313068323063322E
- 322C302C342C312E382C342C3476323663302C322E322D312E382C342D342C34
- 4831364331332E382C34342C31322C34322E322C31322C34307A222F3E0D0A20
- 2020203C706174682066696C6C3D22233446433346372220643D224D33322C31
- 33483136632D302E362C302D312C302E342D312C31763863302C302E362C302E
- 342C312C312C3168313663302E362C302C312D302E342C312D31762D38433333
- 2C31332E342C33322E362C31332C33322C31337A222F3E0D0A202020203C7061
- 74682066696C6C3D22234233453546432220643D224D31392C3330682D32632D
- 302E362C302D312D302E342D312D31762D3163302D302E362C302E342D312C31
- 2D31683263302E362C302C312C302E342C312C3176314332302C32392E362C31
- 392E362C33302C31392C33307A222F3E0D0A202020203C706174682066696C6C
- 3D22234233453546432220643D224D32352C3330682D32632D302E362C302D31
- 2D302E342D312D31762D3163302D302E362C302E342D312C312D31683263302E
- 362C302C312C302E342C312C3176314332362C32392E362C32352E362C33302C
- 32352C33307A222F3E0D0A202020203C706174682066696C6C3D222342334535
- 46432220643D224D33312C3330682D32632D302E362C302D312D302E342D312D
- 31762D3163302D302E362C302E342D312C312D31683263302E362C302C312C30
- 2E342C312C3176314333322C32392E362C33312E362C33302C33312C33307A22
- 2F3E0D0A202020203C706174682066696C6C3D22234233453546432220643D22
- 4D31392C3335682D32632D302E362C302D312D302E342D312D31762D3163302D
- 302E362C302E342D312C312D31683263302E362C302C312C302E342C312C3176
- 314332302C33342E362C31392E362C33352C31392C33357A222F3E0D0A202020
- 203C706174682066696C6C3D22234233453546432220643D224D32352C333568
- 2D32632D302E362C302D312D302E342D312D31762D3163302D302E362C302E34
- 2D312C312D31683263302E362C302C312C302E342C312C3176314332362C3334
- 2E362C32352E362C33352C32352C33357A222F3E0D0A202020203C7061746820
- 66696C6C3D22234233453546432220643D224D33312C3335682D32632D302E36
- 2C302D312D302E342D312D31762D3163302D302E362C302E342D312C312D3168
- 3263302E362C302C312C302E342C312C3176314333322C33342E362C33312E36
- 2C33352C33312C33357A222F3E0D0A202020203C706174682066696C6C3D2223
- 4233453546432220643D224D31392C3430682D32632D302E362C302D312D302E
- 342D312D31762D3163302D302E362C302E342D312C312D31683263302E362C30
- 2C312C302E342C312C3176314332302C33392E362C31392E362C34302C31392C
- 34307A222F3E0D0A202020203C706174682066696C6C3D222342334535464322
- 20643D224D32352C3430682D32632D302E362C302D312D302E342D312D31762D
- 3163302D302E362C302E342D312C312D31683263302E362C302C312C302E342C
- 312C3176314332362C33392E362C32352E362C34302C32352C34307A222F3E0D
- 0A202020203C706174682066696C6C3D22234233453546432220643D224D3331
- 2C3430682D32632D302E362C302D312D302E342D312D31762D3163302D302E36
- 2C302E342D312C312D31683263302E362C302C312C302E342C312C3176314333
- 322C33392E362C33312E362C34302C33312C34307A222F3E0D0A202020203C70
- 6174682066696C6C3D22233337343734462220643D224D31362C3130682D3456
- 3463302D312E312C302E392D322C322D32683063312E312C302C322C302E392C
- 322C325631307A222F3E0D0A3C2F7376673E0D0A0800000063006F006E007400
- 6100630074007300AD0100003C7376672076657273696F6E3D22312220786D6C
- 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
- 76696577426F783D223020302034382034382220656E61626C652D6261636B67
- 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
- 682066696C6C3D22234646373034332220643D224D33382C3434483132563468
- 323663322E322C302C342C312E382C342C347633324334322C34322E322C3430
- 2E322C34342C33382C34347A222F3E0D0A202020203C706174682066696C6C3D
- 22234246333630432220643D224D31302C346832763430682D32632D322E322C
- 302D342D312E382D342D34563843362C352E382C372E382C342C31302C347A22
- 2F3E0D0A202020203C672066696C6C3D2223414233303042223E0D0A20202020
- 202020203C636972636C652063783D223236222063793D2232302220723D2234
- 222F3E0D0A20202020202020203C7061746820643D224D33332C333063302C30
- 2D312E392D342D372D34632D352E312C302D372C342D372C3476326831345633
- 307A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0B000000610064
- 0076006500720074006900730069006E006700350300003C7376672076657273
- 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
- 2F323030302F737667222076696577426F783D22302030203438203438222065
- 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
- 3E0D0A202020203C672066696C6C3D2223393043414639223E0D0A2020202020
- 2020203C7061746820643D224D31372E342C3333483135762D3468346C302E34
- 2C312E354331392E372C33312E382C31382E372C33332C31372E342C33337A22
- 2F3E0D0A20202020202020203C7061746820643D224D33372C333663302C302D
- 31312E382D372D31382D3756313563352E382C302C31382D372C31382D375633
- 367A222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D222332
- 3833353933223E0D0A20202020202020203C636972636C652063783D22392220
- 63793D2232322220723D2235222F3E0D0A20202020202020203C706174682064
- 3D224D34302C3139682D337636683363312E372C302C332D312E332C332D3353
- 34312E372C31392C34302C31397A222F3E0D0A20202020202020203C70617468
- 20643D224D31382E362C34312E32632D302E392C302E362D322E352C312E322D
- 342E362C312E34632D302E362C302E312D312E322D302E332D312E342D314C38
- 2E322C32372E3963302C302C382E382D362E322C382E382C312E312063302C35
- 2E352C312E352C382E342C322E322C392E3563302E352C302E372C302E352C31
- 2E362C302C322E334331392C34312C31382E382C34312E312C31382E362C3431
- 2E327A222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C
- 3D22233346353142352220643D224D392C32396831305631354839632D312E31
- 2C302D322C302E392D322C3276313043372C32382E312C372E392C32392C392C
- 32397A222F3E0D0A202020203C706174682066696C6C3D222334324135463522
- 20643D224D33382C33384C33382C3338632D312E312C302D322D302E392D322D
- 32563863302D312E312C302E392D322C322D32683063312E312C302C322C302E
- 392C322C327632384334302C33372E312C33392E312C33382C33382C33387A22
- 2F3E0D0A3C2F7376673E0D0A1700000061006C00700068006100620065007400
- 6900630061006C005F0073006F007200740069006E0067005F0061007A00B001
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D
- 22233534364537412220706F696E74733D2233382C33332033382C352033342C
- 352033342C33332032382C33332033362C34332034342C3333222F3E0D0A2020
- 20203C672066696C6C3D2223323139364633223E0D0A20202020202020203C70
- 61746820643D224D31362E382C31372E32682D352E336C2D312E312C3348362E
- 394C31322E362C3568322E396C352E372C31352E32682D332E324C31362E382C
- 31372E327A204D31322E322C31342E354831366C2D312E392D352E374C31322E
- 322C31342E357A222F3E0D0A20202020202020203C7061746820643D224D3132
- 2E342C34302E3548323056343348382E34762D312E394C31362C33302E334838
- 2E34762D322E356831312E3476312E374C31322E342C34302E357A222F3E0D0A
- 202020203C2F673E0D0A3C2F7376673E0D0A1700000061006C00700068006100
- 6200650074006900630061006C005F0073006F007200740069006E0067005F00
- 7A006100AA0100003C7376672076657273696F6E3D22312220786D6C6E733D22
- 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
- 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
- 643D226E657720302030203438203438223E0D0A202020203C672066696C6C3D
- 2223323139364633223E0D0A20202020202020203C7061746820643D224D3136
- 2E382C3430682D352E336C2D312E312C3348362E396C352E372D31352E326832
- 2E394C32312E312C3433682D332E324C31362E382C34307A204D31322E322C33
- 372E334831366C2D312E392D352E374C31322E322C33372E337A222F3E0D0A20
- 202020202020203C7061746820643D224D31322E342C31372E3748323076322E
- 3548382E34762D312E394C31362C372E3548382E3456356831312E3476312E37
- 4C31322E342C31372E377A222F3E0D0A202020203C2F673E0D0A202020203C70
- 6F6C79676F6E2066696C6C3D22233534364537412220706F696E74733D223338
- 2C33332033382C352033342C352033342C33332032382C33332033362C343320
- 34342C3333222F3E0D0A3C2F7376673E0D0A0A00000061006E00640072006F00
- 690064005F006F007300520600003C3F786D6C2076657273696F6E3D22312E30
- 2220656E636F64696E673D227574662D38223F3E0D0A3C212D2D2047656E6572
- 61746F723A2041646F626520496C6C7573747261746F722031352E302E302C20
- 535647204578706F727420506C75672D496E202E205356472056657273696F6E
- 3A20362E3030204275696C6420302920202D2D3E0D0A3C21444F435459504520
- 737667205055424C494320222D2F2F5733432F2F4454442053564720312E312F
- 2F454E222022687474703A2F2F7777772E77332E6F72672F4772617068696373
- 2F5356472F312E312F4454442F73766731312E647464223E0D0A3C7376672076
- 657273696F6E3D22312E31222020786D6C6E733D22687474703A2F2F7777772E
- 77332E6F72672F323030302F7376672220786D6C6E733A786C696E6B3D226874
- 74703A2F2F7777772E77332E6F72672F313939392F786C696E6B2220783D2230
- 70782220793D22307078220D0A092077696474683D2234387078222068656967
- 68743D2234387078222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E6577203020302034382034382220
- 786D6C3A73706163653D227072657365727665223E0D0A3C673E0D0A093C7061
- 74682066696C6C3D22233743423334322220643D224D31322C32392E30303163
- 302C312E3130342D302E3839362C322D322C326C302C30632D312E3130342C30
- 2D322D302E3839362D322D32762D3963302D312E3130342C302E3839362D322C
- 322D326C302C3063312E3130342C302C322C302E3839362C322C320D0A090956
- 32392E3030317A222F3E0D0A093C706174682066696C6C3D2223374342333432
- 2220643D224D34302C32392E30303163302C312E3130342D302E3839362C322D
- 322C326C302C30632D312E3130342C302D322D302E3839362D322D32762D3963
- 302D312E3130342C302E3839362D322C322D326C302C3063312E3130342C302C
- 322C302E3839362C322C320D0A09095632392E3030317A222F3E0D0A093C7061
- 74682066696C6C3D22233743423334322220643D224D32322C343063302C312E
- 3130342D302E3839362C322D322C326C302C30632D312E3130342C302D322D30
- 2E3839362D322D32762D3963302D312E3130342C302E3839362D322C322D326C
- 302C3063312E3130342C302C322C302E3839362C322C325634307A220D0A0909
- 2F3E0D0A093C706174682066696C6C3D22233743423334322220643D224D3330
- 2C343063302C312E3130342D302E3839362C322D322C326C302C30632D312E31
- 30342C302D322D302E3839362D322D32762D3963302D312E3130342C302E3839
- 362D322C322D326C302C3063312E3130342C302C322C302E3839362C322C3256
- 34307A220D0A09092F3E0D0A093C706174682066696C6C3D2223374342333432
- 2220643D224D31342C31382E30303156333363302C312E3130342C302E383936
- 2C322C322C3268313663312E3130342C302C322D302E3839362C322D32563138
- 2E3030314831347A222F3E0D0A093C706174682066696C6C3D22233743423334
- 322220643D224D32342C38632D362C302D392E3635352C332E3634352D31302C
- 386832304333332E3635342C31312E3634352C33302C382C32342C387A204D32
- 302C31332E353938632D302E3535322C302D312D302E3434382D312D3173302E
- 3434382D312C312D310D0A090973312C302E3434382C312C315332302E353532
- 2C31332E3539382C32302C31332E3539387A204D32382C31332E353938632D30
- 2E3535332C302D312D302E3434382D312D3173302E3434372D312C312D317331
- 2C302E3434382C312C315332382E3535332C31332E3539382C32382C31332E35
- 39387A222F3E0D0A093C6C696E652066696C6C3D226E6F6E6522207374726F6B
- 653D222337434233343222207374726F6B652D77696474683D22322220737472
- 6F6B652D6C696E656361703D22726F756E64222078313D223330222079313D22
- 37222078323D2232382E333334222079323D22392E343939222F3E0D0A093C6C
- 696E652066696C6C3D226E6F6E6522207374726F6B653D222337434233343222
- 207374726F6B652D77696474683D223222207374726F6B652D6C696E65636170
- 3D22726F756E64222078313D223138222079313D2237222078323D2231392E33
- 3333222079323D22392E303832222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A
- 0700000061006E0073007700650072007300920200003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C706F6C79676F6E2066696C6C3D22233432413546352220706F
- 696E74733D2233362C343420382C343420382C382032382C382033362C313622
- 2F3E0D0A202020203C706F6C79676F6E2066696C6C3D22233930434146392220
- 706F696E74733D2234302C34302031322C34302031322C342033322C34203430
- 2C3132222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222345314635
- 46452220706F696E74733D2233382E352C31332033312C31332033312C352E35
- 222F3E0D0A202020203C706174682066696C6C3D22233139373644322220643D
- 224D32332E342C32392E3963302D302E322C302D302E342C302E312D302E3673
- 302E322D302E332C302E332D302E3573302E332D302E322C302E352D302E3373
- 302E342D302E312C302E362D302E3173302E352C302C302E372C302E31207330
- 2E342C302E322C302E352C302E3373302E322C302E332C302E332C302E357330
- 2E312C302E342C302E312C302E3673302C302E342D302E312C302E36732D302E
- 322C302E332D302E332C302E35732D302E332C302E322D302E352C302E33732D
- 302E342C302E312D302E372C302E3120732D302E352C302D302E362D302E3173
- 2D302E342D302E322D302E352D302E33732D302E322D302E332D302E332D302E
- 355332332E342C33302E312C32332E342C32392E397A204D32362E312C32362E
- 38682D322E334C32332E342C313768334C32362E312C32362E387A222F3E0D0A
- 3C2F7376673E0D0A0800000061007000700072006F00760061006C00D2010000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 3842433334412220706F696E74733D2232342C332032382E372C362E36203334
- 2E352C352E382033362E372C31312E332034322E322C31332E352034312E342C
- 31392E332034352C32342034312E342C32382E372034322E322C33342E352033
- 362E372C33362E372033342E352C34322E322032382E372C34312E342032342C
- 34352031392E332C34312E342031332E352C34322E322031312E332C33362E37
- 20352E382C33342E3520362E362C32382E3720332C323420362E362C31392E33
- 20352E382C31332E352031312E332C31312E332031332E352C352E382031392E
- 332C362E36222F3E0D0A202020203C706F6C79676F6E2066696C6C3D22234343
- 464639302220706F696E74733D2233342E362C31342E362032312C32382E3220
- 31352E342C32322E362031322E362C32352E342032312C33332E382033372E34
- 2C31372E34222F3E0D0A3C2F7376673E0D0A0700000061007000700072006F00
- 760065004F0200003C7376672076657273696F6E3D22312220786D6C6E733D22
- 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
- 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
- 643D226E657720302030203438203438223E0D0A202020203C672066696C6C3D
- 2223464643433830223E0D0A20202020202020203C636972636C652063783D22
- 3338222063793D2232362220723D2234222F3E0D0A20202020202020203C6369
- 72636C652063783D223130222063793D2232362220723D2234222F3E0D0A2020
- 2020202020203C7061746820643D224D33392C313963302D31322E372D33302D
- 382E332D33302C3063302C312E382C302C382E322C302C313063302C382E332C
- 362E372C31352C31352C31357331352D362E372C31352D31354333392C32372E
- 322C33392C32302E382C33392C31397A222F3E0D0A20202020202020203C7061
- 746820643D224D32342C344331352E322C342C382C31312E322C382C32306330
- 2C312E322C302C332E352C302C332E356C322E312C302E365631396C31392E35
- 2D362E336C382E322C362E3376352E316C322E312D302E3663302C302C302D32
- 2E332C302D332E35204334302C31322E352C33342E362C342C32342C347A222F
- 3E0D0A202020203C2F673E0D0A202020203C706F6C79676F6E2066696C6C3D22
- 233443414635302220706F696E74733D2233322E362C31382E362032322E332C
- 32382E392031372E342C32342031342E362C32362E382032322E332C33342E35
- 2033352E342C32312E34222F3E0D0A3C2F7376673E0D0A0A0000006100720065
- 0061005F0063006800610072007400070100003C7376672076657273696F6E3D
- 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
- 302F737667222076696577426F783D223020302034382034382220656E61626C
- 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
- 2020203C706F6C79676F6E2066696C6C3D22233346353142352220706F696E74
- 733D2234322C333720362C333720362C32352031362C31302033302C31372034
- 322C36222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222330304243
- 44342220706F696E74733D2234322C343220362C343220362C33322031362C32
- 342033302C32362034322C3137222F3E0D0A3C2F7376673E0D0A090000006100
- 7300730069007300740061006E0074001B0400003C7376672076657273696F6E
- 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
- 30302F737667222076696577426F783D223020302034382034382220656E6162
- 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
- 202020203C672066696C6C3D2223464641373236223E0D0A2020202020202020
- 3C636972636C652063783D223130222063793D2232362220723D2234222F3E0D
- 0A20202020202020203C636972636C652063783D223338222063793D22323622
- 20723D2234222F3E0D0A202020203C2F673E0D0A202020203C70617468206669
- 6C6C3D22234646423734442220643D224D33392C313963302D31322E372D3330
- 2D382E332D33302C3063302C312E382C302C382E322C302C313063302C382E33
- 2C362E372C31352C31352C31357331352D362E372C31352D31354333392C3237
- 2E322C33392C32302E382C33392C31397A222F3E0D0A202020203C7061746820
- 66696C6C3D22234646353732322220643D224D32342C334331342E362C332C37
- 2C31302E362C372C323063302C312E322C302C332E342C302C332E344C392C32
- 35762D336C32312D392E386C392C392E3876336C322D312E3663302C302C302D
- 322E312C302D332E34204334312C31322C33352E332C332C32342C337A222F3E
- 0D0A202020203C672066696C6C3D2223373834373139223E0D0A202020202020
- 20203C636972636C652063783D223331222063793D2232362220723D2232222F
- 3E0D0A20202020202020203C636972636C652063783D223137222063793D2232
- 362220723D2232222F3E0D0A202020203C2F673E0D0A202020203C7061746820
- 66696C6C3D22233735373537352220643D224D34332C3234632D302E362C302D
- 312C302E342D312C31762D3763302D382E382D372E322D31362D31362D313668
- 2D37632D302E362C302D312C302E342D312C3173302E342C312C312C31683763
- 372E372C302C31342C362E332C31342C31347631302063302C302E362C302E34
- 2C312C312C3173312D302E342C312D31763263302C332E392D332E312C372D37
- 2C37483234632D302E362C302D312C302E342D312C3173302E342C312C312C31
- 68313163352C302C392D342C392D39762D354334342C32342E342C34332E362C
- 32342C34332C32347A222F3E0D0A202020203C672066696C6C3D222333373437
- 3446223E0D0A20202020202020203C7061746820643D224D34332C3232682D31
- 632D312E312C302D322C302E392D322C32763463302C312E312C302E392C322C
- 322C32683163312E312C302C322D302E392C322D32762D344334352C32322E39
- 2C34342E312C32322C34332C32327A222F3E0D0A20202020202020203C636972
- 636C652063783D223234222063793D2233382220723D2232222F3E0D0A202020
- 203C2F673E0D0A3C2F7376673E0D0A0A00000061007500640069006F005F0066
- 0069006C006500D70200003C7376672076657273696F6E3D22312220786D6C6E
- 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E657720302030203438203438223E0D0A202020203C72656374
- 20783D22323034222066696C6C3D226E6F6E65222077696474683D2234382220
- 6865696768743D223438222F3E0D0A202020203C706F6C79676F6E2066696C6C
- 3D22233930434146392220706F696E74733D223234342C3435203231322C3435
- 203231322C33203233342C33203234342C3133222F3E0D0A202020203C706F6C
- 79676F6E2066696C6C3D22234531463546452220706F696E74733D223234322E
- 352C3134203233332C3134203233332C342E35222F3E0D0A202020203C672066
- 696C6C3D2223313937364432223E0D0A20202020202020203C636972636C6520
- 63783D22323237222063793D2233302220723D2234222F3E0D0A202020202020
- 20203C706F6C79676F6E20706F696E74733D223233342C3231203232392C3139
- 203232392C3330203233312C3330203233312C32322E39203233342C3234222F
- 3E0D0A202020203C2F673E0D0A202020203C706F6C79676F6E2066696C6C3D22
- 233930434146392220706F696E74733D2234302C343520382C343520382C3320
- 33302C332034302C3133222F3E0D0A202020203C706F6C79676F6E2066696C6C
- 3D22234531463546452220706F696E74733D2233382E352C31342032392C3134
- 2032392C342E35222F3E0D0A202020203C672066696C6C3D2223313937364432
- 223E0D0A20202020202020203C636972636C652063783D223233222063793D22
- 33302220723D2234222F3E0D0A20202020202020203C706F6C79676F6E20706F
- 696E74733D2233302C32312032352C31392032352C33302032372C3330203237
- 2C32322E392033302C3234222F3E0D0A202020203C2F673E0D0A3C2F7376673E
- 0D0A090000006100750074006F006D006100740069006300BB0300003C737667
- 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
- 332E6F72672F323030302F737667222076696577426F783D2230203020343820
- 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
- 38203438223E0D0A202020203C706174682066696C6C3D222333463531423522
- 20643D224D33392C34334839632D322E322C302D342D312E382D342D34563963
- 302D322E322C312E382D342C342D3468333063322E322C302C342C312E382C34
- 2C347633304334332C34312E322C34312E322C34332C33392C34337A222F3E0D
- 0A202020203C706174682066696C6C3D22234233453546432220643D224D3333
- 2E362C32352E3463302E312D302E342C302E312D302E392C302E312D312E3473
- 302D302E392D302E312D312E346C322E382D3263302E332D302E322C302E342D
- 302E362C302E322D302E396C2D322E372D342E3620632D302E322D302E332D30
- 2E352D302E342D302E382D302E334C33302C31362E33632D302E372D302E362D
- 312E352D312D322E342D312E346C2D302E332D332E3463302D302E332D302E33
- 2D302E362D302E362D302E36682D352E33632D302E332C302D302E362C302E33
- 2D302E362C302E364C32302E342C313520632D302E392C302E332D312E362C30
- 2E382D322E342C312E346C2D332E312D312E34632D302E332D302E312D302E37
- 2C302D302E382C302E336C2D322E372C342E36632D302E322C302E332D302E31
- 2C302E372C302E322C302E396C322E382C32632D302E312C302E342D302E312C
- 302E392D302E312C312E342073302C302E392C302E312C312E346C2D322E382C
- 32632D302E332C302E322D302E342C302E362D302E322C302E396C322E372C34
- 2E3663302E322C302E332C302E352C302E342C302E382C302E336C332E312D31
- 2E3463302E372C302E362C312E352C312C322E342C312E346C302E332C332E34
- 2063302C302E332C302E332C302E362C302E362C302E3668352E3363302E332C
- 302C302E362D302E332C302E362D302E366C302E332D332E3463302E392D302E
- 332C312E362D302E382C322E342D312E346C332E312C312E3463302E332C302E
- 312C302E372C302C302E382D302E336C322E372D342E362063302E322D302E33
- 2C302E312D302E372D302E322D302E394C33332E362C32352E347A204D32342C
- 3239632D322E382C302D352D322E322D352D3563302D322E382C322E322D352C
- 352D3563322E382C302C352C322E322C352C354332392C32362E382C32362E38
- 2C32392C32342C32397A222F3E0D0A3C2F7376673E0D0A0A0000006100750074
- 006F006D006F007400690076006500480300003C7376672076657273696F6E3D
- 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
- 302F737667222076696577426F783D223020302034382034382220656E61626C
- 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
- 2020203C706174682066696C6C3D226E6F6E6522207374726F6B653D22234634
- 3433333622207374726F6B652D77696474683D223422207374726F6B652D6D69
- 7465726C696D69743D2231302220643D224D372C3230762D3863302D322E322C
- 312E382D342C342D3468313463312E322C302C322E342C302E362C332E322C31
- 2E36204C33352C3138222F3E0D0A202020203C672066696C6C3D222333373437
- 3446223E0D0A20202020202020203C636972636C652063783D22333522206379
- 3D2233372220723D2235222F3E0D0A20202020202020203C636972636C652063
- 783D223133222063793D2233372220723D2235222F3E0D0A202020203C2F673E
- 0D0A202020203C706174682066696C6C3D22234634343333362220643D224D34
- 302E322C31374C33332C31344837632D312E322C302D322C302E382D322C3276
- 313063302C312E322C302E382C322C322C32683163302D322E382C322E322D35
- 2C352D3573352C322E322C352C3568313263302D322E382C322E322D352C352D
- 352073352C322E322C352C35683163312E322C302C322D302E382C322D32762D
- 352E324334332C31392E322C34312E382C31372E362C34302E322C31377A222F
- 3E0D0A202020203C672066696C6C3D2223353436453741223E0D0A2020202020
- 2020203C636972636C652063783D223234222063793D2233372220723D223322
- 2F3E0D0A20202020202020203C636972636C652063783D223335222063793D22
- 33372220723D2232222F3E0D0A20202020202020203C636972636C652063783D
- 223133222063793D2233372220723D2232222F3E0D0A20202020202020203C70
- 61746820643D224D33302E342C3339632D302E332D302E362D302E342D312E33
- 2D302E342D3273302E322D312E342C302E342D324831372E3663302E332C302E
- 362C302E342C312E332C302E342C32732D302E322C312E342D302E342C324833
- 302E347A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0C00000062
- 00610064005F006400650063006900730069006F006E002D0200003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C672066696C6C3D2223464643433830223E0D0A20
- 202020202020203C636972636C652063783D223338222063793D223236222072
- 3D2234222F3E0D0A20202020202020203C636972636C652063783D2231302220
- 63793D2232362220723D2234222F3E0D0A20202020202020203C706174682064
- 3D224D33392C313963302D31322E372D33302D382E332D33302C3063302C312E
- 382C302C382E322C302C313063302C382E332C362E372C31352C31352C313573
- 31352D362E372C31352D31354333392C32372E322C33392C32302E382C33392C
- 31397A222F3E0D0A20202020202020203C7061746820643D224D32342C344331
- 352E322C342C382C31312E322C382C323063302C312E322C302C332E352C302C
- 332E356C322E312C302E365631396C31392E352D362E336C382E322C362E3376
- 352E316C322E312D302E3663302C302C302D322E332C302D332E35204334302C
- 31322E352C33342E362C342C32342C347A222F3E0D0A202020203C2F673E0D0A
- 202020203C7265637420783D2231362220793D223234222066696C6C3D222346
- 3434333336222077696474683D22313622206865696768743D2234222F3E0D0A
- 3C2F7376673E0D0A090000006200610072005F00630068006100720074003601
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C672066696C6C3D222330304243
- 4434223E0D0A20202020202020203C7265637420783D2231392220793D223232
- 222077696474683D22313022206865696768743D223230222F3E0D0A20202020
- 202020203C7265637420783D22362220793D223132222077696474683D223130
- 22206865696768743D223330222F3E0D0A20202020202020203C726563742078
- 3D2233322220793D2236222077696474683D22313022206865696768743D2233
- 36222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0700000062006500
- 61007200690073006800D90200003C7376672076657273696F6E3D2231222078
- 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
- 222076696577426F783D223020302034382034382220656E61626C652D626163
- 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C67
- 2066696C6C3D2223463434333336223E0D0A20202020202020203C7265637420
- 783D2234302220793D223334222077696474683D223422206865696768743D22
- 3130222F3E0D0A20202020202020203C7265637420783D2233342220793D2232
- 39222077696474683D223422206865696768743D223135222F3E0D0A20202020
- 202020203C7265637420783D2232382220793D223333222077696474683D2234
- 22206865696768743D223131222F3E0D0A20202020202020203C726563742078
- 3D2232322220793D223235222077696474683D223422206865696768743D2231
- 39222F3E0D0A20202020202020203C7265637420783D2231362220793D223238
- 222077696474683D223422206865696768743D223136222F3E0D0A2020202020
- 2020203C7265637420783D2231302220793D223234222077696474683D223422
- 206865696768743D223230222F3E0D0A20202020202020203C7265637420783D
- 22342220793D223139222077696474683D223422206865696768743D22323522
- 2F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D222344333246
- 3246223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2233
- 342C31332E322033302C31372E322032302C372E322031352C31322E3220372E
- 342C342E3620342E362C372E342031352C31372E382032302C31322E38203330
- 2C32322E382033342C31382E382034302E312C32342E392034322E392C32322E
- 31222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2234
- 342C32362033352C32362034342C3137222F3E0D0A202020203C2F673E0D0A3C
- 2F7376673E0D0A0A000000620069006E006F00630075006C006100720073004F
- 0400003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
- 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
- 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
- 7720302030203438203438223E0D0A202020203C672066696C6C3D2223333734
- 373446223E0D0A20202020202020203C636972636C652063783D223333222063
- 793D2231362220723D2236222F3E0D0A20202020202020203C636972636C6520
- 63783D223135222063793D2231362220723D2236222F3E0D0A20202020202020
- 203C7061746820643D224D34362E372C32356C2D31352E332C334831362E374C
- 312E342C32356C342E332D372E3963312E312D312E392C332E312D332E312C35
- 2E332D332E316832362E3263322E322C302C342E322C312E322C352E332C332E
- 314C34362E372C32357A222F3E0D0A20202020202020203C636972636C652063
- 783D223338222063793D2233302220723D223130222F3E0D0A20202020202020
- 203C636972636C652063783D223130222063793D2233302220723D223130222F
- 3E0D0A20202020202020203C636972636C652063783D223234222063793D2232
- 382220723D2235222F3E0D0A202020203C2F673E0D0A202020203C636972636C
- 652066696C6C3D2223353436453741222063783D223234222063793D22323822
- 20723D2232222F3E0D0A202020203C672066696C6C3D2223613066223E0D0A20
- 202020202020203C636972636C652063783D223338222063793D223330222072
- 3D2237222F3E0D0A20202020202020203C636972636C652063783D2231302220
- 63793D2233302220723D2237222F3E0D0A202020203C2F673E0D0A202020203C
- 672066696C6C3D2223434539334438223E0D0A20202020202020203C70617468
- 20643D224D34312E372C32372E37632D312D312E312D322E332D312E372D332E
- 372D312E37732D322E382C302E362D332E372C312E37632D302E342C302E342D
- 302E332C312C302E312C312E3463302E342C302E342C312C302E332C312E342D
- 302E312063312E322D312E332C332E332D312E332C342E352C3063302E322C30
- 2E322C302E352C302E332C302E372C302E3363302E322C302C302E352D302E31
- 2C302E372D302E334334322E312C32382E372C34322E312C32382E312C34312E
- 372C32372E377A222F3E0D0A20202020202020203C7061746820643D224D3130
- 2C3236632D312E342C302D322E382C302E362D332E372C312E37632D302E342C
- 302E342D302E332C312C302E312C312E3463302E342C302E342C312C302E332C
- 312E342D302E3163312E322D312E332C332E332D312E332C342E352C30206330
- 2E322C302E322C302E352C302E332C302E372C302E3363302E322C302C302E35
- 2D302E312C302E372D302E3363302E342D302E342C302E342D312C302E312D31
- 2E344331322E382C32362E362C31312E342C32362C31302C32367A222F3E0D0A
- 202020203C2F673E0D0A3C2F7376673E0D0A09000000620069006F0068006100
- 7A00610072006400EA0A00003C7376672076657273696F6E3D22312220786D6C
- 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
- 76696577426F783D223020302034382034382220656E61626C652D6261636B67
- 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
- 682066696C6C3D22233030413334342220643D224D32342C3133632D372E322C
- 302D31332C352E382D31332C313373352E382C31332C31332C31337331332D35
- 2E382C31332D31335333312E322C31332C32342C31337A204D32342C3335632D
- 352C302D392D342D392D3973342D392C392D3973392C342C392C39205332392C
- 33352C32342C33357A222F3E0D0A202020203C706174682066696C6C3D222330
- 30433835332220643D224D382E352C32352E3463342D322E322C392D312E312C
- 31312E352C322E3563302E312C302E312C302E322C302E312C302E332C302E31
- 6C312E322D302E3763302E312D302E312C302E322D302E322C302E312D302E33
- 2063302D302E322D302E312D302E342D302E312D302E3663302C302C302C302C
- 302C3063302D302E312C302D302E312C302D302E3263302C302C302C302C302C
- 3063302D302E312C302D302E312C302D302E3263302C302C302C302C302C3063
- 302D302E312C302D302E312C302D302E326C302C302063302D302E312C302D30
- 2E312C302E312D302E3263302C302C302C302C302C3063302D302E312C302D30
- 2E312C302E312D302E3263302C302C302C302C302C3063302C302C302D302E31
- 2C302E312D302E3163302C302C302D302E312C302E312D302E3163302C302C30
- 2D302E312C302E312D302E312063302C302C302E312D302E312C302E312D302E
- 3163302C302C302C302C302C3063302C302C302E312D302E312C302E312D302E
- 3163302C302C302C302C302C3063302C302C302E312D302E312C302E312D302E
- 3163302C302C302C302C302C3063302C302C302E312D302E312C302E312D302E
- 312063302C302C302C302C302C3063302C302C302E312D302E312C302E312D30
- 2E3163302C302C302C302C302E312C3063302E322D302E312C302E342D302E32
- 2C302E352D302E3263302E312C302C302E322D302E312C302E322D302E33762D
- 312E3363302D302E312D302E312D302E322D302E322D302E3220632D342E352D
- 302E342D382D342E312D382D382E3663302D342E312C332D372E362C362E392D
- 382E3463302E312C302C302E322D302E312C302E322D302E3356342E3863302D
- 302E312D302E312D302E322D302E322D302E324331362E342C352E352C31322C
- 31302E342C31322C31362E332063302C312E332C302E322C322E362C302E362C
- 332E38632D312E322C302E322D322E352C302E372D332E362C312E33632D352E
- 322C332D372E332C392E322D352E322C31342E3543332E392C33362C342C3336
- 2C342E312C33366C302E332D302E3263302E312D302E312C302E322D302E322C
- 302E312D302E332043332E332C33312E372C342E382C32372E342C382E352C32
- 352E344C382E352C32352E347A204D33392C32312E34632D312E322D302E372D
- 322E342D312E312D332E362D312E3363302E342D312E322C302E362D322E342C
- 302E362D332E3863302D352E392D342E342D31302E382D31302E322D31312E37
- 20632D302E312C302D302E322C302E312D302E322C302E3276302E3463302C30
- 2E312C302E312C302E322C302E322C302E3363342C302E382C362E392C342E33
- 2C362E392C382E3463302C342E352D332E352C382E322D382C382E36632D302E
- 312C302D302E322C302E312D302E322C302E3276312E332063302C302E312C30
- 2E312C302E322C302E322C302E3363302E322C302E312C302E342C302E312C30
- 2E362C302E3263302C302C302C302C302C3063302C302C302E312C302E312C30
- 2E312C302E3163302C302C302C302C302C3063302E312C302C302E312C302E31
- 2C302E312C302E3163302C302C302C302C302C302063302E312C302E312C302E
- 322C302E322C302E332C302E3363302C302C302C302C302C3063302C302C302E
- 312C302E312C302E312C302E3163302C302C302C302C302C3063302C302C302E
- 312C302E312C302E312C302E3163302C302C302C302E312C302C302E3163302C
- 302C302C302E312C302C302E312063302C302C302C302E312C302E312C302E31
- 63302C302C302C302C302C3063302C302E312C302C302E312C302E312C302E32
- 63302C302C302C302C302C3063302C302E312C302C302E312C302C302E326330
- 2C302C302C302C302C3063302C302E312C302C302E312C302C302E3263302C30
- 2C302C302C302C302E312063302C302C302C302E312C302C302E3163302C302C
- 302C302C302C302E3163302C302E322C302C302E342D302E312C302E3663302C
- 302E312C302C302E322C302E312C302E336C312E322C302E3763302E312C302E
- 312C302E322C302C302E332D302E3163322E362D332E362C372E362D342E382C
- 31312E352D322E352063332E362C322E312C352E322C362E332C332E392C3130
- 2E3163302C302E312C302C302E322C302E312C302E336C302E332C302E326330
- 2E312C302E312C302E322C302C302E332D302E314334362E332C33302E352C34
- 342E322C32342E332C33392C32312E344C33392C32312E347A204D33302E382C
- 34302E3320632D342D322E322D352E352D372E312D332E352D31312E3163302E
- 312D302E312C302D302E322D302E312D302E334C32362C32382E32632D302E31
- 2D302E312D302E322C302D302E332C30632D302E322C302E312D302E332C302E
- 332D302E352C302E3363302C302C302C302C302C3020632D302E312C302D302E
- 312C302E312D302E322C302E3163302C302C302C302C302C30632D302E312C30
- 2D302E312C302D302E322C302E3163302C302C302C302C302C30632D302E312C
- 302D302E332C302E312D302E342C302E3163302C302C302C302C302C30632D30
- 2E312C302D302E312C302D302E322C302063302C302C302C302D302E312C3063
- 302C302D302E312C302D302E312C3063302C302D302E312C302D302E312C3063
- 302C302D302E312C302D302E312C3063302C302D302E312C302D302E312C3063
- 302C302C302C302D302E312C30632D302E312C302D302E312C302D302E322C30
- 63302C302C302C302C302C3020632D302E312C302D302E312C302D302E322C30
- 63302C302C302C302C302C30632D302E312C302D302E312C302D302E322D302E
- 3163302C302C302C302C302C3063302C302D302E312C302D302E312D302E3163
- 302C302C302C302D302E312C30632D302E322D302E312D302E332D302E322D30
- 2E352D302E3320632D302E312D302E312D302E322D302E312D302E332C306C2D
- 312E322C302E37632D302E312C302E312D302E312C302E322D302E312C302E33
- 63312E392C342C302E342C382E382D332E352C31312E31632D332E362C322E31
- 2D382E322C312E332D31302E392D312E3720632D302E312D302E312D302E322D
- 302E312D302E332D302E316C2D302E332C302E32632D302E312C302E312D302E
- 312C302E322D302E312C302E3363332E362C342E352C31302E322C352E382C31
- 352E342C322E3863312E322D302E372C322E322D312E352C332D322E34206330
- 2E382C302E392C312E382C312E382C332C322E3463352E322C332C31312E372C
- 312E362C31352E342D322E3863302E312D302E312C302D302E322D302E312D30
- 2E334C34322C33382E35632D302E312D302E312D302E322C302D302E332C302E
- 314333392C34312E352C33342E342C34322E332C33302E382C34302E33204C33
- 302E382C34302E337A222F3E0D0A3C2F7376673E0D0A07000000620069006F00
- 6D00610073007300890200003C7376672076657273696F6E3D22312220786D6C
- 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
- 76696577426F783D223020302034382034382220656E61626C652D6261636B67
- 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
- 682066696C6C3D22233943434336352220643D224D33322C3135563748313676
- 384C362E322C3430632D302E362C312E352C302E352C332C322E312C33683331
- 2E3563312E362C302C322E362D312E362C322E312D334C33322C31357A222F3E
- 0D0A202020203C706174682066696C6C3D22233842433334412220643D224D33
- 322C39483136632D312E312C302D322D302E392D322D32763063302D312E312C
- 302E392D322C322D3268313663312E312C302C322C302E392C322C3276304333
- 342C382E312C33332E312C392C33322C397A222F3E0D0A202020203C70617468
- 2066696C6C3D22233245374433322220643D224D32382C333063302C342E342D
- 342C382D342C38732D342D332E362D342D3873342D382C342D385332382C3235
- 2E362C32382C33307A222F3E0D0A202020203C706174682066696C6C3D222333
- 38384533432220643D224D33312E312C33322E36632D322C342D372E312C352E
- 342D372E312C352E34732D322D352C302D382E3973372E312D352E342C372E31
- 2D352E345333332E312C32382E362C33312E312C33322E367A222F3E0D0A2020
- 20203C706174682066696C6C3D22233433413034372220643D224D31362E392C
- 33322E3663322C342C372E312C352E342C372E312C352E3473322D352C302D38
- 2E39732D372E312D352E342D372E312D352E345331342E392C32382E362C3136
- 2E392C33322E367A222F3E0D0A3C2F7376673E0D0A07000000620069006F0074
- 00650063006800BF0400003C7376672076657273696F6E3D22312220786D6C6E
- 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E657720302030203438203438223E0D0A202020203C70617468
- 2066696C6C3D22234144313435372220643D224D33362C3463302C392E332D36
- 2C31332E322D31322E382C31372E384331362E312C32362E352C382C33312E38
- 2C382C3434683463302D31302E312C362E352D31342E342C31332E342D31382E
- 394333322E322C32302E362C34302C31352E342C34302C34204833367A222F3E
- 0D0A202020203C706174682066696C6C3D22234144313435372220643D224D33
- 382C3431483131632D302E362C302D312D302E342D312D3173302E342D312C31
- 2D3168323763302E362C302C312C302E342C312C315333382E362C34312C3338
- 2C34317A222F3E0D0A202020203C706174682066696C6C3D2223414431343537
- 2220643D224D33362C3337483132632D302E362C302D312D302E342D312D3173
- 302E342D312C312D3168323463302E362C302C312C302E342C312C315333362E
- 362C33372C33362C33377A222F3E0D0A202020203C706174682066696C6C3D22
- 234144313435372220643D224D33342C3333483134632D302E362C302D312D30
- 2E342D312D3173302E342D312C312D3168323063302E362C302C312C302E342C
- 312C315333342E362C33332C33342C33337A222F3E0D0A202020203C70617468
- 2066696C6C3D22234144313435372220643D224D32392C3239483139632D302E
- 362C302D312D302E342D312D3173302E342D312C312D3168313063302E362C30
- 2C312C302E342C312C315332392E362C32392C32392C32397A222F3E0D0A2020
- 20203C706174682066696C6C3D22234539314536332220643D224D33372C3948
- 313043392E342C392C392C382E362C392C3873302E342D312C312D3168323763
- 302E362C302C312C302E342C312C315333372E362C392C33372C397A222F3E0D
- 0A202020203C706174682066696C6C3D22234539314536332220643D224D3336
- 2C3133483132632D302E362C302D312D302E342D312D3173302E342D312C312D
- 3168323463302E362C302C312C302E342C312C315333362E362C31332C33362C
- 31337A222F3E0D0A202020203C706174682066696C6C3D222345393145363322
- 20643D224D33342C3137483134632D302E362C302D312D302E342D312D317330
- 2E342D312C312D3168323063302E362C302C312C302E342C312C315333342E36
- 2C31372C33342C31377A222F3E0D0A202020203C706174682066696C6C3D2223
- 4539314536332220643D224D32392C3231483139632D302E362C302D312D302E
- 342D312D3173302E342D312C312D3168313063302E362C302C312C302E342C31
- 2C315332392E362C32312C32392C32317A222F3E0D0A202020203C7061746820
- 66696C6C3D22234539314536332220643D224D34302C3434682D3463302D3130
- 2E312D362E352D31342E342D31332E342D31382E394331352E382C32302E362C
- 382C31352E342C382C34683463302C392E332C362C31332E322C31322E382C31
- 372E38204333312E392C32362E352C34302C33312E382C34302C34347A222F3E
- 0D0A3C2F7376673E0D0A0800000062006F006F006B006D00610072006B00D000
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C706174682066696C6C3D222346
- 34343333362220643D224D33372C34336C2D31332D366C2D31332C3656396330
- 2D322E322C312E382D342C342D3468313863322E322C302C342C312E382C342C
- 345634337A222F3E0D0A3C2F7376673E0D0A0900000062007200690065006600
- 63006100730065005E0200003C7376672076657273696F6E3D22312220786D6C
- 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
- 76696577426F783D223020302034382034382220656E61626C652D6261636B67
- 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
- 682066696C6C3D22233432343234322220643D224D32372C37682D36632D312E
- 372C302D332C312E332D332C3376336832762D3363302D302E362C302E342D31
- 2C312D31683663302E362C302C312C302E342C312C3176336832762D33433330
- 2C382E332C32382E372C372C32372C377A222F3E0D0A202020203C7061746820
- 66696C6C3D22234536353130302220643D224D34302C34334838632D322E322C
- 302D342D312E382D342D3456313563302D322E322C312E382D342C342D346833
- 3263322E322C302C342C312E382C342C347632344334342C34312E322C34322E
- 322C34332C34302C34337A222F3E0D0A202020203C706174682066696C6C3D22
- 234646364534302220643D224D34302C32384838632D322E322C302D342D312E
- 382D342D34762D3963302D322E322C312E382D342C342D3468333263322E322C
- 302C342C312E382C342C3476394334342C32362E322C34322E322C32382C3430
- 2C32387A222F3E0D0A202020203C706174682066696C6C3D2223464646334530
- 2220643D224D32362C3236682D34632D302E362C302D312D302E342D312D3176
- 2D3263302D302E362C302E342D312C312D31683463302E362C302C312C302E34
- 2C312C3176324332372C32352E362C32362E362C32362C32362C32367A222F3E
- 0D0A3C2F7376673E0D0A07000000620075006C006C00690073006800D9020000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C672066696C6C3D2223344341463530
- 223E0D0A20202020202020203C7265637420783D2234302220793D2232312220
- 77696474683D223422206865696768743D223233222F3E0D0A20202020202020
- 203C7265637420783D2233342220793D223238222077696474683D2234222068
- 65696768743D223136222F3E0D0A20202020202020203C7265637420783D2232
- 382220793D223233222077696474683D223422206865696768743D223231222F
- 3E0D0A20202020202020203C7265637420783D2232322220793D223239222077
- 696474683D223422206865696768743D223135222F3E0D0A2020202020202020
- 3C7265637420783D2231362220793D223332222077696474683D223422206865
- 696768743D223132222F3E0D0A20202020202020203C7265637420783D223130
- 2220793D223330222077696474683D223422206865696768743D223134222F3E
- 0D0A20202020202020203C7265637420783D22342220793D2233342220776964
- 74683D223422206865696768743D223130222F3E0D0A202020203C2F673E0D0A
- 202020203C672066696C6C3D2223333838453343223E0D0A2020202020202020
- 3C706F6C79676F6E20706F696E74733D2234302E312C392E312033342C31352E
- 322033302C31312E322032302C32312E322031352C31362E3220342E362C3236
- 2E3620372E342C32392E342031352C32312E382032302C32362E382033302C31
- 362E382033342C32302E382034322E392C31312E39222F3E0D0A202020202020
- 20203C706F6C79676F6E20706F696E74733D2234342C382033352C382034342C
- 3137222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A08000000620075
- 00730069006E00650073007300290200003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C672066696C6C3D2223323633323338223E0D0A20202020202020203C7061
- 746820643D224D31312C34344839632D302E362C302D312D302E342D312D3176
- 2D32683476324331322C34332E362C31312E362C34342C31312C34347A222F3E
- 0D0A20202020202020203C7061746820643D224D33392C3434682D32632D302E
- 362C302D312D302E342D312D31762D32683476324334302C34332E362C33392E
- 362C34342C33392C34347A222F3E0D0A202020203C2F673E0D0A202020203C70
- 6174682066696C6C3D22233337343734462220643D224D32372C37682D36632D
- 312E372C302D332C312E332D332C3376336832762D3363302D302E362C302E34
- 2D312C312D31683663302E362C302C312C302E342C312C3176336832762D3343
- 33302C382E332C32382E372C372C32372C377A222F3E0D0A202020203C706174
- 682066696C6C3D22233738393039432220643D224D34302C34334838632D322E
- 322C302D342D312E382D342D3456313563302D322E322C312E382D342C342D34
- 68333263322E322C302C342C312E382C342C347632344334342C34312E322C34
- 322E322C34332C34302C34337A222F3E0D0A3C2F7376673E0D0A100000006200
- 7500730069006E006500730073005F0063006F006E0074006100630074000F02
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C706174682066696C6C3D222336
- 37334142372220643D224D34302C374838632D322E322C302D342C312E382D34
- 2C3476323663302C322E322C312E382C342C342C346835762D312E33632D302E
- 362D302E332D312D312D312D312E3763302D312E312C302E392D322C322D3273
- 322C302E392C322C322063302C302E372D302E342C312E342D312C312E375634
- 31683138762D312E33632D302E362D302E332D312D312D312D312E3763302D31
- 2E312C302E392D322C322D3273322C302E392C322C3263302C302E372D302E34
- 2C312E342D312C312E37563431683563322E322C302C342D312E382C342D3456
- 3131204334342C382E382C34322E322C372C34302C377A222F3E0D0A20202020
- 3C672066696C6C3D2223443143344539223E0D0A20202020202020203C636972
- 636C652063783D223234222063793D2231382220723D2234222F3E0D0A202020
- 20202020203C7061746820643D224D33312C323863302C302D312E392D342D37
- 2D34632D352E312C302D372C342D372C3476326831345632387A222F3E0D0A20
- 2020203C2F673E0D0A3C2F7376673E0D0A0A000000620075007400740069006E
- 0067005F0069006E008B0400003C7376672076657273696F6E3D22312220786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 2076696577426F783D223020302034382034382220656E61626C652D6261636B
- 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
- 74682066696C6C3D22234346443844432220643D224D32342C334331322E342C
- 332C332C31322E342C332C323463302C31312E362C392E342C32312C32312C32
- 3163302E332C302C302E372C302C312D302E3156332E314332342E372C332C32
- 342E332C332C32342C337A222F3E0D0A202020203C706174682066696C6C3D22
- 233337343734462220643D224D32352C332E317634312E3963342E312D302E32
- 2C372E392D312E352C31312D332E3756362E384333322E392C342E362C32392E
- 312C332E322C32352C332E317A222F3E0D0A202020203C706174682066696C6C
- 3D22234646423734442220643D224D32302E352C31334331342E312C31332E33
- 2C382E392C31382E372C392C32352E3163302C322E382C312C352E342C322E37
- 2C372E3563312E342C312E372C322E332C332E392C322E332C362E3176332E38
- 63332C312E362C362E342C322E352C31302C322E352063302E332C302C302E37
- 2C302C312D302E3163302E372C302C312E332D302E312C322D302E32762D392E
- 3463332E362D322E312C362D352E392C362D31302E344333332C31382E322C32
- 372E342C31322E372C32302E352C31337A222F3E0D0A202020203C7061746820
- 66696C6C3D22234646423734442220643D224D32392C33382E364C32352C3338
- 762D3968386C2D302E372C374333322E312C33372E362C33302E372C33382E38
- 2C32392C33382E367A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D
- 22234646423734442220706F696E74733D2233392C32392033322C3331203331
- 2C32362033322C3232222F3E0D0A202020203C636972636C652066696C6C3D22
- 23373834373139222063783D2232392E35222063793D2232352E352220723D22
- 312E35222F3E0D0A202020203C706174682066696C6C3D222346463537323222
- 20643D224D32312C3132632D372E322C302D31332C352E382D31332C31336330
- 2C372E362C352E312C392C362C31336C342D33762D386C352D326C312D346333
- 2E322C302C362D332E392C362D362E314332372E392C31332C32342E342C3132
- 2C32312C31327A222F3E0D0A202020203C636972636C652066696C6C3D222346
- 4642373444222063783D223139222063793D2232372220723D2233222F3E0D0A
- 202020203C706174682066696C6C3D22234346443844432220643D224D34352C
- 323463302D372E312D332E362D31332E342D392D31372E327633342E34433431
- 2E342C33372E342C34352C33312E312C34352C32347A222F3E0D0A202020203C
- 706174682066696C6C3D22234646393830302220643D224D32302C34342E3663
- 312E332C302E322C322E362C302E342C342C302E3463302E332C302C302E372C
- 302C312D302E3163302E372C302C312E332D302E312C322D302E32762D362E35
- 6C2D372D315634342E367A222F3E0D0A3C2F7376673E0D0A0D00000063006100
- 62006C0065005F00720065006C006500610073006500750200003C7376672076
- 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
- 6F72672F323030302F737667222076696577426F783D22302030203438203438
- 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
- 3438223E0D0A202020203C706174682066696C6C3D2223333734373446222064
- 3D224D33342E392C32392E31632D322E372D322E372D372E312D322E372D392E
- 382C306C2D342C34632D312E372C312E372D342E352C312E372D362E322C3063
- 2D312E372D312E372D312E372D342E352C302D362E326C342E352D342E356C2D
- 322E382D322E38206C2D342E352C342E35632D332E332C332E332D332E332C38
- 2E362C302C31312E3863332E332C332E332C382E362C332E332C31312E382C30
- 6C342D3463312E322D312E312C332D312E312C342E322C3063312E312C312E32
- 2C312E312C332C302C342E324C32372C34312E326C322E382C322E386C352E31
- 2D352E31204333372E362C33362E322C33372E362C33312E382C33342E392C32
- 392E317A222F3E0D0A202020203C706174682066696C6C3D2223303237374244
- 2220643D224D31362E312C32322E394C31362E312C32322E39632D322E382D32
- 2E382D322E382D372E332C302D31306C362E382D362E3863322E382D322E382C
- 372E332D322E382C31302C306C302C3063322E382C322E382C322E382C372E33
- 2C302C3130206C2D362E382C362E384332332E332C32352E372C31382E392C32
- 352E372C31362E312C32322E397A222F3E0D0A202020203C636972636C652066
- 696C6C3D2223423345354643222063783D223238222063793D2231312220723D
- 2234222F3E0D0A3C2F7376673E0D0A0D000000630061006C006C005F00740072
- 0061006E007300660065007200E90200003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706174682066696C6C3D22233030393638382220643D224D33392E322C38
- 2E346C2D312E382C312E38632D362E332C362E352D352E342C32322C302C3237
- 2E366C312E382C312E3863302E352C302E352C312E332C302E352C312E382C30
- 6C332E362D332E3763302E352D302E352C302E352D312E332C302D312E38206C
- 2D332E342D332E34682D342E38632D312E332D312E332D312E332D31322E312C
- 302D31332E3468342E386C332E332D332E3463302E352D302E352C302E352D31
- 2E332C302D312E384C34312C382E344334302E352C372E392C33392E372C372E
- 392C33392E322C382E347A222F3E0D0A202020203C706174682066696C6C3D22
- 233030393638382220643D224D31312E322C382E346C2D312E382C312E38632D
- 362E332C362E352D352E342C32322C302C32372E366C312E382C312E3863302E
- 352C302E352C312E332C302E352C312E382C306C332E362D332E3763302E352D
- 302E352C302E352D312E332C302D312E38206C2D332E342D332E3448382E3563
- 2D312E332D312E332D312E332D31322E312C302D31332E3468342E386C332E33
- 2D332E3463302E352D302E352C302E352D312E332C302D312E384C31332C382E
- 344331322E352C372E392C31312E372C372E392C31312E322C382E347A222F3E
- 0D0A202020203C672066696C6C3D2223323139364633223E0D0A202020202020
- 20203C706F6C79676F6E20706F696E74733D2232352E332C31382E362033302E
- 372C32342032352E332C32392E34222F3E0D0A20202020202020203C72656374
- 20783D2231362220793D223232222077696474683D2231312220686569676874
- 3D2234222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A080000006300
- 61006C006C006200610063006B00840200003C7376672076657273696F6E3D22
- 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
- 2F737667222076696577426F783D223020302034382034382220656E61626C65
- 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
- 20203C706174682066696C6C3D22233231393646332220643D224D32362E342C
- 33332E3963302C302C342D322E362C342E382D3363302E382D302E342C312E37
- 2D302E362C322E322D302E3263302E382C302E352C372E352C342E392C382E31
- 2C352E3363302E362C302E342C302E382C312E352C302E312C322E3620632D30
- 2E382C312E312D342E332C352E352D352E382C352E34632D312E352C302D382E
- 342C302E342D32302E332D31312E3443332E362C32302E372C342C31332E382C
- 342C31322E3363302D312E352C342E332D352E312C352E342D352E3863312E31
- 2D302E382C322E322D302E352C322E362C302E312063302E342C302E362C342E
- 382C372E332C352E332C382E3163302E332C302E352C302E322C312E342D302E
- 322C322E32632D302E342C302E382D332C342E382D332C342E3873302E372C32
- 2E382C352C372E324332332E352C33332E322C32362E342C33332E392C32362E
- 342C33332E397A222F3E0D0A202020203C672066696C6C3D2223334635314235
- 223E0D0A20202020202020203C7061746820643D224D33352C39483235763468
- 313063312E312C302C322C302E392C322C3276313068345631354334312C3131
- 2E372C33382E332C392C33352C397A222F3E0D0A20202020202020203C706F6C
- 79676F6E20706F696E74733D2232382C31362032312E332C31312032382C3622
- 2F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A09000000630061006D00
- 63006F007200640065007200510400003C7376672076657273696F6E3D223122
- 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
- 7667222076696577426F783D223020302034382034382220656E61626C652D62
- 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
- 3C706174682066696C6C3D22233630374438422220643D224D32302C34324831
- 30632D322E322C302D342D312E382D342D3456313563302D352C342D392C392D
- 39683063352C302C392C342C392C397632334332342C34302E322C32322E322C
- 34322C32302C34327A222F3E0D0A202020203C636972636C652066696C6C3D22
- 23343535413634222063783D223135222063793D2231352220723D2237222F3E
- 0D0A202020203C636972636C652066696C6C3D2223343241354635222063783D
- 223135222063793D2231352220723D22352E32222F3E0D0A202020203C706174
- 682066696C6C3D22233930434146392220643D224D31382E332C3133632D302E
- 382D302E392D322D312E352D332E332D312E355331322E362C31322C31312E37
- 2C3133632D302E332C302E342D302E332C302E392C302E312C312E3263302E34
- 2C302E332C302E392C302E332C312E322D302E312063312D312E322C322E392D
- 312E322C332E392C3063302E322C302E322C302E342C302E332C302E372C302E
- 3363302E322C302C302E342D302E312C302E362D302E324331382E362C31332E
- 392C31382E362C31332E332C31382E332C31337A222F3E0D0A202020203C7061
- 74682066696C6C3D22233630374438422220643D224D34302C3331483238632D
- 312E312C302D322D302E392D322D3256313963302D312E312C302E392D322C32
- 2D3268313263312E312C302C322C302E392C322C327631304334322C33302E31
- 2C34312E312C33312C34302C33317A222F3E0D0A202020203C7265637420783D
- 2232342220793D223139222066696C6C3D222334353541363422207769647468
- 3D223222206865696768743D223130222F3E0D0A202020203C7265637420783D
- 2232382220793D223139222066696C6C3D222330334139463422207769647468
- 3D22313222206865696768743D223130222F3E0D0A202020203C706F6C79676F
- 6E2066696C6C3D22233446433346372220706F696E74733D2233332C32322E32
- 2032392C32382033372C3238222F3E0D0A202020203C672066696C6C3D222342
- 3345354643223E0D0A20202020202020203C636972636C652063783D2233372E
- 35222063793D2232312E352220723D2231222F3E0D0A20202020202020203C70
- 6F6C79676F6E20706F696E74733D2233362C32342E322033332C32382033392C
- 3238222F3E0D0A202020203C2F673E0D0A202020203C636972636C652066696C
- 6C3D2223343535413634222063783D223135222063793D2233352220723D2233
- 222F3E0D0A202020203C636972636C652066696C6C3D22234634343333362220
- 63783D223135222063793D2233352220723D2232222F3E0D0A3C2F7376673E0D
- 0A0D000000630061006D0063006F0072006400650072005F00700072006F0011
- 0400003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
- 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
- 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
- 7720302030203438203438223E0D0A202020203C7265637420783D2232372220
- 793D2238222066696C6C3D2223333734373446222077696474683D2231302220
- 6865696768743D2234222F3E0D0A202020203C706174682066696C6C3D222336
- 30374438422220643D224D32372C38682D392E37632D312E352C302D322E382C
- 302E382D332E352C322E316C2D332E332C364C31342C31386C332E332D364832
- 3776372E3268345631324333312C392E382C32392E322C382C32372C387A222F
- 3E0D0A202020203C706174682066696C6C3D22233630374438422220643D224D
- 33302C34304836632D322E322C302D342D312E382D342D3456323063302D322E
- 322C312E382D342C342D3468323463322E322C302C342C312E382C342C347631
- 364333342C33382E322C33322E322C34302C33302C34307A222F3E0D0A202020
- 203C706174682066696C6C3D22233630374438422220643D224D33382C33356C
- 352C356833563138682D336C2D352C355633357A222F3E0D0A202020203C7061
- 74682066696C6C3D22233534364537412220643D224D32322C33354838632D31
- 2E312C302D322D302E392D322D3256323363302D312E312C302E392D322C322D
- 3268313463312E312C302C322C302E392C322C327631304332342C33342E312C
- 32332E312C33352C32322C33357A222F3E0D0A202020203C7265637420783D22
- 33342220793D223233222066696C6C3D2223343535413634222077696474683D
- 223422206865696768743D223132222F3E0D0A202020203C706174682066696C
- 6C3D22233236333233382220643D224D34312C3133682D34632D302E362C302D
- 312D302E342D312D31563863302D302E362C302E342D312C312D31683463312E
- 372C302C332C312E332C332C3376304334342C31312E372C34322E372C31332C
- 34312C31337A222F3E0D0A202020203C7265637420783D22382220793D223233
- 222066696C6C3D2223303341394634222077696474683D223134222068656967
- 68743D223130222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222334
- 46433346372220706F696E74733D2231332E352C32352E3520392C3332203138
- 2C3332222F3E0D0A202020203C672066696C6C3D2223423345354643223E0D0A
- 20202020202020203C636972636C652063783D2231392E35222063793D223235
- 2E352220723D22312E35222F3E0D0A20202020202020203C706F6C79676F6E20
- 706F696E74733D2231372E352C32372E362031342C33322032312C3332222F3E
- 0D0A202020203C2F673E0D0A3C2F7376673E0D0A06000000630061006D006500
- 720061004A0300003C7376672076657273696F6E3D22312220786D6C6E733D22
- 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
- 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
- 643D226E657720302030203438203438223E0D0A202020203C70617468206669
- 6C6C3D22233531324441382220643D224D33332E392C31322E314831342E324C
- 31372E362C3763302E342D302E362C312D302E392C312E372D302E3968392E36
- 63302E372C302C312E332C302E332C312E372C302E394C33332E392C31322E31
- 7A222F3E0D0A202020203C706174682066696C6C3D2223383636374334222064
- 3D224D31342C3131483856392E3243382C382E352C382E352C382C392E322C38
- 68332E364331332E352C382C31342C382E352C31342C392E325631317A222F3E
- 0D0A202020203C706174682066696C6C3D22233545333542312220643D224D34
- 302C34324838632D322E322C302D342D312E382D342D3456313463302D322E32
- 2C312E382D342C342D3468333263322E322C302C342C312E382C342C34763234
- 4334342C34302E322C34322E322C34322C34302C34327A222F3E0D0A20202020
- 3C636972636C652066696C6C3D2223353132444138222063783D223234222063
- 793D2232362220723D223132222F3E0D0A202020203C636972636C652066696C
- 6C3D2223423338384646222063783D223234222063793D2232362220723D2239
- 222F3E0D0A202020203C706174682066696C6C3D22234337413746462220643D
- 224D32392C3233632D312E322D312E342D332D322E322D342E382D322E32632D
- 312E382C302D332E362C302E382D342E382C322E32632D302E352C302E352D30
- 2E342C312E332C302E312C312E3863302E352C302E352C312E332C302E342C31
- 2E382D302E312063312E352D312E372C342E332D312E372C352E382C3063302E
- 332C302E332C302E362C302E342C312C302E3463302E332C302C302E362D302E
- 312C302E392D302E334332392E342C32342E342C32392E352C32332E352C3239
- 2C32337A222F3E0D0A202020203C656C6C697073652066696C6C3D2223383636
- 374334222063783D223131222063793D2231332E35222072783D223222207279
- 3D22312E35222F3E0D0A3C2F7376673E0D0A0C000000630061006D0065007200
- 61005F006100640064006F006E00FF0400003C7376672076657273696F6E3D22
- 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
- 2F737667222076696577426F783D223020302034382034382220656E61626C65
- 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
- 20203C706174682066696C6C3D22233531324441382220643D224D33332E392C
- 31322E314831342E324C31372E362C3763302E342D302E362C312D302E392C31
- 2E372D302E3968392E3663302E372C302C312E332C302E332C312E372C302E39
- 4C33332E392C31322E317A222F3E0D0A202020203C706174682066696C6C3D22
- 233836363743342220643D224D31342C3131483856392E3243382C382E352C38
- 2E352C382C392E322C3868332E364331332E352C382C31342C382E352C31342C
- 392E325631317A222F3E0D0A202020203C706174682066696C6C3D2223354533
- 3542312220643D224D34302C34324838632D322E322C302D342D312E382D342D
- 3456313463302D322E322C312E382D342C342D3468333263322E322C302C342C
- 312E382C342C347632344334342C34302E322C34322E322C34322C34302C3432
- 7A222F3E0D0A202020203C636972636C652066696C6C3D222335313244413822
- 2063783D223234222063793D2232362220723D223132222F3E0D0A202020203C
- 636972636C652066696C6C3D2223423338384646222063783D22323422206379
- 3D2232362220723D2239222F3E0D0A202020203C706174682066696C6C3D2223
- 4337413746462220643D224D32382E382C3233632D312E322D312E342D332D32
- 2E322D342E382D322E32732D332E362C302E382D342E382C322E32632D302E35
- 2C302E352D302E342C312E332C302E312C312E3863302E352C302E352C312E33
- 2C302E342C312E382D302E312063312E352D312E372C342E332D312E372C352E
- 382C3063302E332C302E332C302E362C302E342C312C302E3463302E332C302C
- 302E362D302E312C302E392D302E334332392E322C32342E342C32392E332C32
- 332E352C32382E382C32337A222F3E0D0A202020203C656C6C69707365206669
- 6C6C3D2223383636374334222063783D223131222063793D2231332E35222072
- 783D2232222072793D22312E35222F3E0D0A202020203C706174682066696C6C
- 3D22233842433334412220643D224D34382C33332E3863302D312E332D312E31
- 2D322E342D322E342D322E34483432632D302E342C302D302E372D302E352D30
- 2E342D302E3863302E342D302E362C302E352D312E332C302E342D322E312063
- 2D302E322D312E322D312E312D322E312D322E332D322E344333372E372C3235
- 2E372C33362C32372E312C33362C323963302C302E362C302E322C312E312C30
- 2E342C312E3663302E322C302E342C302C302E382D302E352C302E38682D332E
- 36632D312E332C302D322E342C312E312D322E342C322E345633372063302C30
- 2E342C302E352C302E372C302E382C302E3463302E362D302E342C312E332D30
- 2E352C322E312D302E3463312E322C302E322C322E312C312E312C322E342C32
- 2E3363302E342C312E392D312E312C332E362D322E392C332E36632D302E362C
- 302D312E312D302E322D312E362D302E3420632D302E342D302E322D302E382C
- 302D302E382C302E3576322E3663302C312E332C312E312C322E342C322E342C
- 322E346831332E3263312E332C302C322E342D312E312C322E342D322E345633
- 332E387A222F3E0D0A3C2F7376673E0D0A06000000630061006E00630065006C
- 007B0100003C7376672076657273696F6E3D22312220786D6C6E733D22687474
- 703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F78
- 3D223020302034382034382220656E61626C652D6261636B67726F756E643D22
- 6E657720302030203438203438223E0D0A202020203C706174682066696C6C3D
- 22234435303030302220643D224D32342C364331342E312C362C362C31342E31
- 2C362C323473382E312C31382C31382C31387331382D382E312C31382D313853
- 33332E392C362C32342C367A204D32342C313063332E312C302C362C312E312C
- 382E342C322E384C31322E382C33322E34204331312E312C33302C31302C3237
- 2E312C31302C32344331302C31362E332C31362E332C31302C32342C31307A20
- 4D32342C3338632D332E312C302D362D312E312D382E342D322E386C31392E36
- 2D31392E364333362E392C31382C33382C32302E392C33382C32344333382C33
- 312E372C33312E372C33382C32342C3338207A222F3E0D0A3C2F7376673E0D0A
- 0D000000630061006E0064006C0065005F0073007400690063006B0073004303
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C672066696C6C3D222335343645
- 3741223E0D0A20202020202020203C7265637420783D2233382220793D223422
- 2077696474683D223222206865696768743D223230222F3E0D0A202020202020
- 20203C7265637420783D2231352220793D2237222077696474683D2232222068
- 65696768743D223137222F3E0D0A20202020202020203C7265637420783D2238
- 2220793D223237222077696474683D223222206865696768743D223137222F3E
- 0D0A20202020202020203C7265637420783D2232382220793D22313922207769
- 6474683D223222206865696768743D223232222F3E0D0A202020203C2F673E0D
- 0A202020203C706174682066696C6C3D22233443414635302220643D224D3336
- 2C37683663312E312C302C322C302E392C322C3276313063302C312E312D302E
- 392C322D322C32682D36632D312E312C302D322D302E392D322D325639433334
- 2C372E392C33342E392C372C33362C377A222F3E0D0A202020203C7061746820
- 66696C6C3D22233443414635302220643D224D31332C3130683663312E312C30
- 2C322C302E392C322C32763763302C312E312D302E392C322D322C32682D3663
- 2D312E312C302D322D302E392D322D32762D374331312C31302E392C31312E39
- 2C31302C31332C31307A222F3E0D0A202020203C706174682066696C6C3D2223
- 4634343333362220643D224D362C3330683663312E312C302C322C302E392C32
- 2C32763763302C312E312D302E392C322D322C324836632D312E312C302D322D
- 302E392D322D32762D3743342C33302E392C342E392C33302C362C33307A222F
- 3E0D0A202020203C706174682066696C6C3D22234634343333362220643D224D
- 32362C3232683663312E312C302C322C302E392C322C3276313263302C312E31
- 2D302E392C322D322C32682D36632D312E312C302D322D302E392D322D325632
- 344332342C32322E392C32342E392C32322C32362C32327A222F3E0D0A3C2F73
- 76673E0D0A0900000063006100700061006300690074006F0072001B0200003C
- 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
- 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
- 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
- 30203438203438223E0D0A202020203C672066696C6C3D222346463938303022
- 3E0D0A20202020202020203C7265637420793D223237222077696474683D2232
- 3522206865696768743D2234222F3E0D0A20202020202020203C726563742079
- 3D223137222077696474683D22323522206865696768743D2234222F3E0D0A20
- 2020203C2F673E0D0A202020203C672066696C6C3D2223334635314235223E0D
- 0A20202020202020203C7061746820643D224D34362C333563312E312C302C32
- 2D302E392C322D3256313563302D312E312D302E392D322D322D324832377632
- 324834367A222F3E0D0A20202020202020203C7061746820643D224D32312C31
- 33632D312E312C302D322C302E392D322C3276313863302C312E312C302E392C
- 322C322C3268325631334832317A222F3E0D0A202020203C2F673E0D0A202020
- 203C706174682066696C6C3D22233330334639462220643D224D32352C333363
- 312E312C302C322C302E392C322C3256313363302C312E312D302E392C322D32
- 2C32632D312E312C302D322D302E392D322D327632324332332C33332E392C32
- 332E392C33332C32352C33337A222F3E0D0A3C2F7376673E0D0A070000006300
- 64005F006C006F0067006F005B0D00003C3F786D6C2076657273696F6E3D2231
- 2E302220656E636F64696E673D227574662D38223F3E0D0A3C212D2D2047656E
- 657261746F723A2041646F626520496C6C7573747261746F722031352E302E30
- 2C20535647204578706F727420506C75672D496E202E20535647205665727369
- 6F6E3A20362E3030204275696C6420302920202D2D3E0D0A3C21444F43545950
- 4520737667205055424C494320222D2F2F5733432F2F4454442053564720312E
- 312F2F454E222022687474703A2F2F7777772E77332E6F72672F477261706869
- 63732F5356472F312E312F4454442F73766731312E647464223E0D0A3C737667
- 2076657273696F6E3D22312E31222020786D6C6E733D22687474703A2F2F7777
- 772E77332E6F72672F323030302F7376672220786D6C6E733A786C696E6B3D22
- 687474703A2F2F7777772E77332E6F72672F313939392F786C696E6B2220783D
- 223070782220793D22307078220D0A092077696474683D223438707822206865
- 696768743D2234387078222076696577426F783D223020302034382034382220
- 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
- 2220786D6C3A73706163653D227072657365727665223E0D0A3C673E0D0A093C
- 706174682066696C6C3D22233231393646332220643D224D31372E3831342C31
- 384832302E3263302E352C302C302E382C302E342C302E382C302E387631362E
- 3463302C302E3339392D302E342C302E382D302E382C302E38682D322E333834
- 632D302E342C302D302E382D302E342D302E382D302E385631382E380D0A0909
- 4331362E3931362C31382E332C31372E3331342C31382C31372E3831342C3138
- 7A222F3E0D0A093C706174682066696C6C3D22233231393646332220643D224D
- 31342E322C3131682D332E33632D302E352C302D302E392C302E3430332D302E
- 392C302E38303756313748322E3243312E362C31372C312C31372E3630352C31
- 2C31382E32317631362E353843312C33352E3339362C312E362C33362C322E32
- 2C33366831320D0A090963302E342C302C302E382D302E3330352C302E382D30
- 2E3830395631312E3830374331352C31312E3430332C31342E372C31312C3134
- 2E322C31317A204D31302C33312E32383363302C302E3339382D302E342C302E
- 382D302E382C302E3848362E38632D302E342C302D302E382D302E3339392D30
- 2E382D302E380D0A09095632312E3843362C32312E342C362E332C32312C362E
- 382C323168322E3463302E352C302C302E382C302E342C302E382C302E385633
- 312E3238337A222F3E0D0A093C706174682066696C6C3D222332313936463322
- 20643D224D33332E322C323563302E352C302C302E382C302E362C302E382C30
- 2E3876392E3463302C302E3339392D302E3432322C302E382D302E382C302E38
- 682D392E34632D302E3432352C302D302E382D302E342D302E382D302E38762D
- 322E3338360D0A090963302D302E352C302E342D302E3739392C302E382D302E
- 3739394C33302C3332762D33682D362E32632D302E3333312C302D302E382D30
- 2E342D302E382D302E3830315631382E3863302D302E352C302E342D302E382C
- 302E382D302E3868392E3463302E3339392C302C302E382C302E342C302E382C
- 302E3876322E340D0A090963302C302E332D302E3236362C302E382D302E382C
- 302E3848323776334833332E327A222F3E0D0A093C706174682066696C6C3D22
- 233231393646332220643D224D34382C323876372E3263302C302E3339392D30
- 2E342C302E382D302E3830312C302E384833362E38632D302E322C302D302E38
- 2D302E342D302E382D302E385631382E3863302D302E352C302E3433322D302E
- 382C302E3833312D302E384834372E320D0A090963302C302C302E382C302C30
- 2E382C302E38563235682D34762D322E3263302C302C302E312D302E382D302E
- 382D302E38682D322E34632D302E352C302D302E382C302E342D302E382C302E
- 3876382E3463302C302E3339392C302E352C302E382C302E382C302E3868322E
- 340D0A090963302E3339392C302C302E382D302E342C302E382D302E38563238
- 4834387A222F3E0D0A3C2F673E0D0A3C673E0D0A093C706F6C79676F6E206669
- 6C6C3D22233044343741312220706F696E74733D2234352E3739392C31352E39
- 382034362E392C31352E39382034362E392C31322E3838312034382C31322E38
- 38312034382C31312E39382034342E3739392C31312E39382034342E3739392C
- 31322E383831200D0A090934352E3739392C31322E3838312009222F3E0D0A09
- 3C706174682066696C6C3D22233044343741312220643D224D34342E3031342C
- 31342E343736682D312E31343376302E30393563302C302E3338322D302E3039
- 362C302E3537332D302E3537322C302E353733632D302E3437352C302D302E35
- 372D302E3139312D302E35372D302E373632762D302E3636380D0A090963302D
- 302E3537322C302D302E3736322C302E35372D302E37363263302E3338312C30
- 2C302E3537322C302E3039352C302E3537322C302E34373776302E3039356831
- 2E303437762D302E30393563302D312E3034372D302E3338312D312E3432392D
- 312E3532332D312E343239682D302E3238370D0A0909632D312E3134312C302D
- 312E3532332C302E3338322D312E3532332C312E36313876302E37363463302C
- 312E3134322C302E3338312C312E3631382C312E3532332C312E36313868302E
- 33383363312E3034372C302C312E3432382D302E3437372C312E3432382D312E
- 3433762D302E3039354834342E3031347A222F3E0D0A093C706F6C79676F6E20
- 66696C6C3D22233044343741312220706F696E74733D2232392E3531362C3132
- 2032382E3731372C31342E392032372E3831362C31322032362E3231372C3132
- 2032362E3231372C31362032372E3331362C31362032372E3331362C31332032
- 382E3131352C31362032392E3231372C3136200D0A090933302E3131352C3133
- 2E312033302E3131352C31362033312E3131352C31362033312E3131352C3132
- 2009222F3E0D0A093C706174682066696C6C3D22233044343741312220643D22
- 4D33382E3731332C3132682D302E39682D302E3839386C2D312E3139392C3468
- 312E3139396C302E3139392D302E3768302E36303268302E3739396C302E3139
- 392C302E3768312E3139394C33382E3731332C31327A204D33372E3931342C31
- 342E350D0A0909682D302E346C302E342D312E376C302C306C302C306C302E33
- 39382C312E374833372E3931347A222F3E0D0A093C706174682066696C6C3D22
- 233044343741312220643D224D33332E39322C3132682D302E3139394833322E
- 3032763468312E313032762D312E3168302E3668302E31393963312E3130322C
- 302C312E352D302E342C312E352D312E34762D302E334333352E34322C31322E
- 332C33352E30322C31322C33332E39322C31320D0A09097A204D33342E33322C
- 31332E3663302C302E342D302E312C302E352D302E342C302E35682D302E3139
- 39682D302E36762D312E3268302E3668302E3163302E342C302C302E352C302E
- 312C302E352C302E345631332E367A222F3E0D0A093C706174682066696C6C3D
- 22233044343741312220643D224D32332E3539342C3132682D302E323836682D
- 302E323836632D312E3134332C302D312E3532332C302E3338322D312E353233
- 2C312E36313876302E37363263302C312E3134342C302E3338312C312E36322C
- 312E3532332C312E363268302E3238360D0A090968302E32383663312E313433
- 2C302C312E3532332D302E3437372C312E3532332D312E3632762D302E373632
- 4332352E3131372C31322E3338322C32342E3733372C31322C32332E3539342C
- 31327A204D32332E3937352C31342E313963302C302E3537312C302C302E3736
- 332D302E3537312C302E3736330D0A0909682D302E303935682D302E30393563
- 2D302E3537312C302D302E3537312D302E3139312D302E3537312D302E373633
- 762D302E35373263302D302E35372C302D302E3736322C302E3537312D302E37
- 363268302E30393568302E30393563302E3537312C302C302E3537312C302E31
- 39312C302E3537312C302E3736320D0A09095631342E31397A222F3E0D0A093C
- 706174682066696C6C3D22233044343741312220643D224D32302E3432322C31
- 342E343737682D312E31343476302E30393563302C302E3338322D302E303935
- 2C302E3537312D302E3537312C302E353731632D302E3437362C302D302E3537
- 312D302E3138392D302E3537312D302E373632762D302E3636360D0A09096330
- 2D302E3537332C302D302E3736322C302E3537312D302E37363263302E333831
- 2C302C302E3537312C302E3039352C302E3537312C302E34373576302E303936
- 68312E303438762D302E30393663302D312E3034372D302E3338312D312E3432
- 382D312E3532332D312E343238682D302E3238360D0A0909632D312E3134332C
- 302D312E3532342C302E3338312D312E3532342C312E36313876302E37363363
- 302C312E3134332C302E3338312C312E3631392C312E3532342C312E36313968
- 302E33383163312E3034382C302C312E3432392D302E3437372C312E3432392D
- 312E343239762D302E3039354832302E3432327A220D0A09092F3E0D0A3C2F67
- 3E0D0A3C2F7376673E0D0A0E0000006300680061007200670065005F00620061
- 0074007400650072007900C60100003C7376672076657273696F6E3D22312220
- 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
- 67222076696577426F783D223020302034382034382220656E61626C652D6261
- 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
- 672066696C6C3D2223384243333441223E0D0A20202020202020203C70617468
- 20643D224D33342C3434483134632D312E312C302D322D302E392D322D325638
- 63302D312E312C302E392D322C322D3268323063312E312C302C322C302E392C
- 322C327633344333362C34332E312C33352E312C34342C33342C34347A222F3E
- 0D0A20202020202020203C7061746820643D224D32382C3133682D38632D302E
- 362C302D312D302E342D312D31563563302D302E362C302E342D312C312D3168
- 3863302E362C302C312C302E342C312C3176374332392C31322E362C32382E36
- 2C31332C32382C31337A222F3E0D0A202020203C2F673E0D0A202020203C706F
- 6C79676F6E2066696C6C3D22234646454233422220706F696E74733D2233302C
- 32342032342E352C32342032362E372C31332031382C32362032332E352C3236
- 2032312E332C3337222F3E0D0A3C2F7376673E0D0A0900000063006800650063
- 006B006D00610072006B00D00000003C7376672076657273696F6E3D22312220
- 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
- 67222076696577426F783D223020302034382034382220656E61626C652D6261
- 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
- 706F6C79676F6E2066696C6C3D22233433413034372220706F696E74733D2234
- 302E362C31322E312031372C33352E3720372E342C32362E3120342E362C3239
- 2031372C34312E332034332E342C31342E39222F3E0D0A3C2F7376673E0D0A07
- 0000006300690072006300750069007400550400003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22233443414635302220643D224D362C
- 313076323863302C322E322C312E382C342C342C3468323863322E322C302C34
- 2D312E382C342D3456313063302D322E322D312E382D342D342D344831304337
- 2E382C362C362C372E382C362C31307A222F3E0D0A202020203C672066696C6C
- 3D2223464643313037223E0D0A20202020202020203C7061746820643D224D36
- 2E362C386C362C36632D302E342C302E362D302E362C312E332D302E362C3263
- 302C322E322C312E382C342C342C3473342D312E382C342D34732D312E382D34
- 2D342D34632D302E372C302D312E342C302E322D322C302E366C2D362D362043
- 372E342C362E392C362E392C372E342C362E362C387A204D31362C31342E3563
- 302E382C302C312E352C302E372C312E352C312E35732D302E372C312E352D31
- 2E352C312E35732D312E352D302E372D312E352D312E355331352E322C31342E
- 352C31362C31342E357A222F3E0D0A20202020202020203C7061746820643D22
- 4D34312E342C34306C2D362D3663302E342D302E362C302E362D312E332C302E
- 362D3263302D322E322D312E382D342D342D34732D342C312E382D342C347331
- 2E382C342C342C3463302E372C302C312E342D302E322C322D302E366C362C36
- 204334302E362C34312E312C34312E312C34302E362C34312E342C34307A204D
- 33322C33332E35632D302E382C302D312E352D302E372D312E352D312E357330
- 2E372D312E352C312E352D312E3573312E352C302E372C312E352C312E355333
- 322E382C33332E352C33322C33332E357A222F3E0D0A20202020202020203C70
- 61746820643D224D31362C333663322E322C302C342D312E382C342D3463302D
- 302E372D302E322D312E342D302E362D324C33302C31392E3463302E362C302E
- 342C312E332C302E362C322C302E3663322E322C302C342D312E382C342D3473
- 2D312E382D342D342D3420732D342C312E382D342C3463302C302E372C302E32
- 2C312E342C302E362C324C31382C32382E36632D302E362D302E342D312E332D
- 302E362D322D302E36632D322E322C302D342C312E382D342C345331332E382C
- 33362C31362C33367A204D33322C31342E3563302E382C302C312E352C302E37
- 2C312E352C312E3520732D302E372C312E352D312E352C312E35732D312E352D
- 302E372D312E352D312E355333312E322C31342E352C33322C31342E357A204D
- 31362C33302E3563302E382C302C312E352C302E372C312E352C312E35732D30
- 2E372C312E352D312E352C312E35732D312E352D302E372D312E352D312E3520
- 5331352E322C33302E352C31362C33302E357A222F3E0D0A202020203C2F673E
- 0D0A3C2F7376673E0D0A0C00000063006C006100700070006500720062006F00
- 610072006400CE0300003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
- 66696C6C3D22233346353142352220643D224D34332E342C382E334C342C3135
- 6C2D302E332D32632D302E342D322E322C312E312D342E322C332E332D342E36
- 6C33312E362D352E3363322E322D302E342C342E322C312E312C342E362C332E
- 334C34332E342C382E337A222F3E0D0A202020203C706174682066696C6C3D22
- 233346353142352220643D224D34302C34314838632D322E322C302D342D312E
- 382D342D345631356834307632324334342C33392E322C34322E322C34312C34
- 302C34317A222F3E0D0A202020203C672066696C6C3D2223394641384441223E
- 0D0A20202020202020203C706F6C79676F6E20706F696E74733D2231382E382C
- 362E342032332E372C31312E372032372E372C31312032322E372C352E37222F
- 3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2231302E39
- 2C372E372031352E382C31332031392E382C31322E332031342E382C372E3122
- 2F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2232362E
- 372C352E312033312E362C31302E332033352E352C392E372033302E362C342E
- 34222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2233
- 342E352C332E382033392E352C392034332E342C382E332033382E352C332E31
- 222F3E0D0A202020203C2F673E0D0A202020203C636972636C652066696C6C3D
- 2223394641384441222063783D22372E35222063793D2231312E352220723D22
- 312E35222F3E0D0A202020203C672066696C6C3D2223394641384441223E0D0A
- 20202020202020203C706F6C79676F6E20706F696E74733D2234302C31352033
- 362C32312034302C32312034342C3135222F3E0D0A20202020202020203C706F
- 6C79676F6E20706F696E74733D2233322C31352032382C32312033322C323120
- 33362C3135222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74
- 733D2232342C31352032302C32312032342C32312032382C3135222F3E0D0A20
- 202020202020203C706F6C79676F6E20706F696E74733D2231362C3135203132
- 2C32312031362C32312032302C3135222F3E0D0A20202020202020203C706F6C
- 79676F6E20706F696E74733D22382C313520342C323120382C32312031322C31
- 35222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0D00000063006C00
- 6500610072005F00660069006C007400650072007300F10100003C7376672076
- 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
- 6F72672F323030302F737667222076696577426F783D22302030203438203438
- 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
- 3438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223463537433030
- 2220706F696E74733D2232392C32332031392C323320372C392034312C39222F
- 3E0D0A202020203C672066696C6C3D2223464639383030223E0D0A2020202020
- 2020203C706F6C79676F6E20706F696E74733D2232392C33382031392C343420
- 31392C32332032392C3233222F3E0D0A20202020202020203C7061746820643D
- 224D34312E352C39682D333543352E372C392C352C382E332C352C372E357630
- 43352C362E372C352E372C362C362E352C366833354334322E332C362C34332C
- 362E372C34332C372E3576304334332C382E332C34322E332C392C34312E352C
- 397A222F3E0D0A202020203C2F673E0D0A202020203C636972636C652066696C
- 6C3D2223463434333336222063783D223338222063793D2233382220723D2231
- 30222F3E0D0A202020203C7265637420783D2233322220793D22333622206669
- 6C6C3D2223666666222077696474683D22313222206865696768743D2234222F
- 3E0D0A3C2F7376673E0D0A0D00000063006C006F00730065005F00750070005F
- 006D006F00640065006D0300003C7376672076657273696F6E3D22312220786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 2076696577426F783D223020302034382034382220656E61626C652D6261636B
- 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
- 74682066696C6C3D22233245374433322220643D224D352C323463302C31382E
- 392C31342E382C31392C31372C313973342C302C342C305332342E312C32362E
- 352C352C32347A222F3E0D0A202020203C7265637420783D2232322220793D22
- 3236222066696C6C3D2223333838453343222077696474683D22342220686569
- 6768743D223137222F3E0D0A202020203C706174682066696C6C3D2223433632
- 3832382220643D224D33342C313663302C352E312D352E322C382E322D382C38
- 2E32732D322D332E312D322D382E3273352D392E322C352D392E325333342C31
- 302E392C33342C31367A222F3E0D0A202020203C706174682066696C6C3D2223
- 4336323832382220643D224D31342C313663302C352E312C352E322C382E322C
- 382C382E3273322D332E312C322D382E32732D352D392E322D352D392E325331
- 342C31302E392C31342C31367A222F3E0D0A202020203C706174682066696C6C
- 3D22234535333933352220643D224D32342C3237632D322E322D312E362D312E
- 392D342E352C322E342D382E384333302E382C31332E382C33322C372C33322C
- 3773352C332E342C352C394333372C32312E392C33312E332C32372C32342C32
- 377A222F3E0D0A202020203C706174682066696C6C3D22234535333933352220
- 643D224D32342C323763322E322D312E362C312E392D342E352D322E342D382E
- 384331372E322C31332E382C31362C372C31362C37732D352C332E342D352C39
- 4331312C32312E392C31362E372C32372C32342C32377A222F3E0D0A20202020
- 3C706174682066696C6C3D22234634343333362220643D224D33302C31366330
- 2C362E312D322E372C31312D362C3131732D362D342E392D362D313173362D31
- 312C362D31315333302C392E392C33302C31367A222F3E0D0A202020203C7061
- 74682066696C6C3D22233443414635302220643D224D32322C343363302C302C
- 312E382C302C342C307331372D302E312C31372D31394332332E392C32362E35
- 2C32322C34332C32322C34337A222F3E0D0A3C2F7376673E0D0A050000006300
- 6C006F0074006800750D00003C7376672076657273696F6E3D22312220786D6C
- 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
- 76696577426F783D223020302034382034382220656E61626C652D6261636B67
- 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
- 682066696C6C3D22234646353732322220643D224D362C313076323863302C32
- 2E322C312E382C342C342C3468323863322E322C302C342D312E382C342D3456
- 313063302D322E322D312E382D342D342D3448313043372E382C362C362C372E
- 382C362C31307A222F3E0D0A202020203C672066696C6C3D2223424633363043
- 223E0D0A20202020202020203C7265637420783D22362220793D223335222077
- 696474683D22333622206865696768743D2232222F3E0D0A2020202020202020
- 3C7265637420783D22362220793D223331222077696474683D22333622206865
- 696768743D2232222F3E0D0A20202020202020203C7061746820643D224D362E
- 312C333963302E322C302E382C302E362C312E352C312E322C326833332E3263
- 302E362D302E352C312D312E322C312E322D3248362E317A222F3E0D0A202020
- 20202020203C7061746820643D224D362E312C396833352E37632D302E322D30
- 2E382D302E362D312E352D312E322D3248372E3443362E382C372E352C362E33
- 2C382E322C362E312C397A222F3E0D0A20202020202020203C7265637420783D
- 22362220793D223233222077696474683D22333622206865696768743D223222
- 2F3E0D0A20202020202020203C7265637420783D22362220793D223237222077
- 696474683D22333622206865696768743D2232222F3E0D0A2020202020202020
- 3C7265637420783D22362220793D223135222077696474683D22333622206865
- 696768743D2232222F3E0D0A20202020202020203C7265637420783D22362220
- 793D223131222077696474683D22333622206865696768743D2232222F3E0D0A
- 20202020202020203C7265637420783D22362220793D22313922207769647468
- 3D22333622206865696768743D2232222F3E0D0A202020203C2F673E0D0A2020
- 20203C672066696C6C3D2223464638413635223E0D0A20202020202020203C72
- 65637420783D2232372220793D2236222077696474683D223222206865696768
- 743D2235222F3E0D0A20202020202020203C7265637420783D2232372220793D
- 223133222077696474683D223222206865696768743D2236222F3E0D0A202020
- 20202020203C7265637420783D2232372220793D223239222077696474683D22
- 3222206865696768743D2236222F3E0D0A20202020202020203C726563742078
- 3D2233312220793D2236222077696474683D223222206865696768743D223122
- 2F3E0D0A20202020202020203C7265637420783D2231392220793D2232392220
- 77696474683D223222206865696768743D2236222F3E0D0A2020202020202020
- 3C7265637420783D2233312220793D2239222077696474683D22322220686569
- 6768743D2236222F3E0D0A20202020202020203C7265637420783D2232332220
- 793D2236222077696474683D223222206865696768743D2231222F3E0D0A2020
- 2020202020203C7265637420783D2232332220793D223235222077696474683D
- 223222206865696768743D2236222F3E0D0A20202020202020203C7265637420
- 783D2232332220793D2239222077696474683D223222206865696768743D2236
- 222F3E0D0A20202020202020203C7265637420783D2231392220793D22323122
- 2077696474683D223222206865696768743D2236222F3E0D0A20202020202020
- 203C7265637420783D2232332220793D223137222077696474683D2232222068
- 65696768743D2236222F3E0D0A20202020202020203C7265637420783D223233
- 2220793D223333222077696474683D223222206865696768743D2236222F3E0D
- 0A20202020202020203C7265637420783D2232372220793D2232312220776964
- 74683D223222206865696768743D2236222F3E0D0A20202020202020203C7265
- 637420783D2233392220793D223333222077696474683D223222206865696768
- 743D2236222F3E0D0A20202020202020203C7265637420783D2233392220793D
- 223137222077696474683D223222206865696768743D2236222F3E0D0A202020
- 20202020203C7265637420783D2233392220793D223235222077696474683D22
- 3222206865696768743D2236222F3E0D0A20202020202020203C706174682064
- 3D224D33392C362E31563768312E364334302E322C362E362C33392E362C362E
- 332C33392C362E317A222F3E0D0A20202020202020203C7265637420783D2233
- 312220793D223137222077696474683D223222206865696768743D2236222F3E
- 0D0A20202020202020203C7061746820643D224D34302E362C34314833397630
- 2E394333392E362C34312E372C34302E322C34312E342C34302E362C34317A22
- 2F3E0D0A20202020202020203C7265637420783D2233352220793D2231332220
- 77696474683D223222206865696768743D2236222F3E0D0A2020202020202020
- 3C7265637420783D2233312220793D223333222077696474683D223222206865
- 696768743D2236222F3E0D0A20202020202020203C7265637420783D22333522
- 20793D223239222077696474683D223222206865696768743D2236222F3E0D0A
- 20202020202020203C7265637420783D2233392220793D223922207769647468
- 3D223222206865696768743D2236222F3E0D0A20202020202020203C72656374
- 20783D2233352220793D223231222077696474683D223222206865696768743D
- 2236222F3E0D0A20202020202020203C7265637420783D2233312220793D2232
- 35222077696474683D223222206865696768743D2236222F3E0D0A2020202020
- 2020203C7265637420783D2233352220793D223337222077696474683D223222
- 206865696768743D2235222F3E0D0A20202020202020203C7265637420783D22
- 33352220793D2236222077696474683D223222206865696768743D2235222F3E
- 0D0A20202020202020203C7265637420783D2233312220793D22343122207769
- 6474683D223222206865696768743D2231222F3E0D0A20202020202020203C72
- 65637420783D2232332220793D223431222077696474683D2232222068656967
- 68743D2231222F3E0D0A20202020202020203C7265637420783D223237222079
- 3D223337222077696474683D223222206865696768743D2235222F3E0D0A2020
- 2020202020203C7265637420783D2231392220793D223337222077696474683D
- 223222206865696768743D2235222F3E0D0A20202020202020203C7265637420
- 783D22372220793D223137222077696474683D223222206865696768743D2236
- 222F3E0D0A20202020202020203C7061746820643D224D392C343148372E3463
- 302E352C302E342C312C302E372C312E362C302E395634317A222F3E0D0A2020
- 2020202020203C7061746820643D224D372E342C37483956362E3143382E342C
- 362E332C372E382C362E362C372E342C377A222F3E0D0A20202020202020203C
- 7265637420783D22372220793D223333222077696474683D2232222068656967
- 68743D2236222F3E0D0A20202020202020203C7265637420783D22372220793D
- 223235222077696474683D223222206865696768743D2236222F3E0D0A202020
- 20202020203C7265637420783D22372220793D2239222077696474683D223222
- 206865696768743D2236222F3E0D0A20202020202020203C7265637420783D22
- 31312220793D223239222077696474683D223222206865696768743D2236222F
- 3E0D0A20202020202020203C7265637420783D2231352220793D223137222077
- 696474683D223222206865696768743D2236222F3E0D0A20202020202020203C
- 7265637420783D2231352220793D223333222077696474683D22322220686569
- 6768743D2236222F3E0D0A20202020202020203C7265637420783D2231352220
- 793D2239222077696474683D223222206865696768743D2236222F3E0D0A2020
- 2020202020203C7265637420783D2231352220793D2236222077696474683D22
- 3222206865696768743D2231222F3E0D0A20202020202020203C726563742078
- 3D2231392220793D2236222077696474683D223222206865696768743D223522
- 2F3E0D0A20202020202020203C7265637420783D2231352220793D2232352220
- 77696474683D223222206865696768743D2236222F3E0D0A2020202020202020
- 3C7265637420783D2231352220793D223431222077696474683D223222206865
- 696768743D2231222F3E0D0A20202020202020203C7265637420783D22313122
- 20793D223231222077696474683D223222206865696768743D2236222F3E0D0A
- 20202020202020203C7265637420783D2231312220793D223622207769647468
- 3D223222206865696768743D2235222F3E0D0A20202020202020203C72656374
- 20783D2231312220793D223337222077696474683D223222206865696768743D
- 2235222F3E0D0A20202020202020203C7265637420783D2231392220793D2231
- 33222077696474683D223222206865696768743D2236222F3E0D0A2020202020
- 2020203C7265637420783D2231312220793D223133222077696474683D223222
- 206865696768743D2236222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D
- 0A0D00000063006F006C006C00610062006F0072006100740069006F006E005D
- 0200003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
- 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
- 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
- 7720302030203438203438223E0D0A202020203C706174682066696C6C3D2223
- 3135363543302220643D224D32352C32326831336C362C3656313163302D322E
- 322D312E382D342D342D34483235632D322E322C302D342C312E382D342C3476
- 374332312C32302E322C32322E382C32322C32352C32327A222F3E0D0A202020
- 203C706174682066696C6C3D22233231393646332220643D224D32332C313948
- 31306C2D362C36563863302D322E322C312E382D342C342D3468313563322E32
- 2C302C342C312E382C342C3476374332372C31372E322C32352E322C31392C32
- 332C31397A222F3E0D0A202020203C672066696C6C3D2223464641373236223E
- 0D0A20202020202020203C636972636C652063783D223132222063793D223331
- 2220723D2235222F3E0D0A20202020202020203C636972636C652063783D2233
- 36222063793D2233312220723D2235222F3E0D0A202020203C2F673E0D0A2020
- 20203C672066696C6C3D2223363037443842223E0D0A20202020202020203C70
- 61746820643D224D32302C343263302C302D322E322D342D382D34732D382C34
- 2D382C3476326831365634327A222F3E0D0A20202020202020203C7061746820
- 643D224D34342C343263302C302D322E322D342D382D34732D382C342D382C34
- 76326831365634327A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A
- 0700000063006F006C006C00650063007400C60200003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C672066696C6C3D2223303039363838223E0D0A202020202020
- 20203C7265637420783D2232322220793D223335222077696474683D22342220
- 6865696768743D223131222F3E0D0A20202020202020203C706F6C79676F6E20
- 706F696E74733D2232342C32392E362033312C33382031372C3338222F3E0D0A
- 202020203C2F673E0D0A202020203C672066696C6C3D2223303039363838223E
- 0D0A20202020202020203C7265637420783D2232322220793D22322220776964
- 74683D223422206865696768743D223131222F3E0D0A20202020202020203C70
- 6F6C79676F6E20706F696E74733D2232342C31382E342031372C31302033312C
- 3130222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D222330
- 3039363838223E0D0A20202020202020203C7265637420783D22322220793D22
- 3232222077696474683D22313122206865696768743D2234222F3E0D0A202020
- 20202020203C706F6C79676F6E20706F696E74733D2231382E342C3234203130
- 2C33312031302C3137222F3E0D0A202020203C2F673E0D0A202020203C672066
- 696C6C3D2223303039363838223E0D0A20202020202020203C7265637420783D
- 2233352220793D223232222077696474683D22313122206865696768743D2234
- 222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D223239
- 2E362C32342033382C31372033382C3331222F3E0D0A202020203C2F673E0D0A
- 202020203C636972636C652066696C6C3D2223463434333336222063783D2232
- 34222063793D2232342220723D2233222F3E0D0A3C2F7376673E0D0A0B000000
- 63006F006D0062006F005F0063006800610072007400080300003C7376672076
- 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
- 6F72672F323030302F737667222076696577426F783D22302030203438203438
- 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
- 3438223E0D0A202020203C672066696C6C3D2223303042434434223E0D0A2020
- 2020202020203C7265637420783D2233372220793D223138222077696474683D
- 223622206865696768743D223234222F3E0D0A20202020202020203C72656374
- 20783D2232392220793D223236222077696474683D223622206865696768743D
- 223136222F3E0D0A20202020202020203C7265637420783D2232312220793D22
- 3232222077696474683D223622206865696768743D223230222F3E0D0A202020
- 20202020203C7265637420783D2231332220793D223332222077696474683D22
- 3622206865696768743D223130222F3E0D0A20202020202020203C7265637420
- 783D22352220793D223238222077696474683D223622206865696768743D2231
- 34222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D22233346
- 35314235223E0D0A20202020202020203C636972636C652063783D2238222063
- 793D2231362220723D2233222F3E0D0A20202020202020203C636972636C6520
- 63783D223136222063793D2231382220723D2233222F3E0D0A20202020202020
- 203C636972636C652063783D223234222063793D2231312220723D2233222F3E
- 0D0A20202020202020203C636972636C652063783D223332222063793D223133
- 2220723D2233222F3E0D0A20202020202020203C636972636C652063783D2234
- 30222063793D22392220723D2233222F3E0D0A20202020202020203C706F6C79
- 676F6E20706F696E74733D2233392E312C372E322033312E382C31302E392032
- 332E352C382E382031352E352C31352E3820382E352C31342E3120372E352C31
- 372E392031362E352C32302E322032342E352C31332E322033322E322C31352E
- 312034302E392C31302E38222F3E0D0A202020203C2F673E0D0A3C2F7376673E
- 0D0A0C00000063006F006D006D0061006E0064005F006C0069006E006500EB05
- 00003C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D22
- 7574662D38223F3E0D0A3C212D2D2047656E657261746F723A2041646F626520
- 496C6C7573747261746F722031392E312E312C20535647204578706F72742050
- 6C75672D496E202E205356472056657273696F6E3A20362E3030204275696C64
- 20302920202D2D3E0D0A3C7376672076657273696F6E3D22312E31222020786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 20786D6C6E733A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F
- 313939392F786C696E6B2220783D223070782220793D22307078220D0A092076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E6577203020302034382034382220786D6C3A73706163653D22
- 7072657365727665223E0D0A3C673E0D0A093C706174682066696C6C3D222343
- 46443844432220643D224D34312C36483743362E342C362C362C362E342C362C
- 3776333568333656374334322C362E342C34312E362C362C34312C367A222F3E
- 0D0A3C2F673E0D0A3C7265637420783D22382220793D223133222066696C6C3D
- 2223323633323338222077696474683D22333222206865696768743D22323722
- 2F3E0D0A3C673E0D0A093C706174682066696C6C3D2223373646463033222064
- 3D224D32322C32372E36632D302E312C312E312D302E342C312E392D312C322E
- 35632D302E362C302E362D312E342C302E392D322E352C302E39632D312E312C
- 302D322D302E342D322E362D312E31632D302E362D302E372D302E392D312E38
- 2D302E392D332E310D0A0909762D312E3663302D312E332C302E332D322E342C
- 302E392D332E3163302E362D302E372C312E352D312E312C322E362D312E3163
- 312E312C302C312E392C302E332C322E352C302E3963302E362C302E362C302E
- 392C312E342C312C322E36682D3263302D302E372D302E312D312E322D302E33
- 2D312E340D0A0909632D302E322D302E332D302E362D302E342D312E312D302E
- 34632D302E352C302D302E392C302E322D312E322C302E36632D302E322C302E
- 342D302E332C312D302E342C312E3876312E3863302C312C302E312C312E362C
- 302E332C3263302E322C302E342C302E362C302E352C312E312C302E350D0A09
- 0963302E352C302C302E392D302E312C312E312D302E3463302E322D302E332C
- 302E332D302E372C302E332D312E344832327A222F3E0D0A093C706174682066
- 696C6C3D22233736464630332220643D224D32342C323463302D302E332C302E
- 312D302E352C302E332D302E3763302E322D302E322C302E342D302E332C302E
- 372D302E3363302E332C302C302E352C302E312C302E372C302E3363302E322C
- 302E322C302E332C302E342C302E332C302E370D0A090963302C302E332D302E
- 312C302E352D302E332C302E375332352E332C32352C32352C3235632D302E33
- 2C302D302E352D302E312D302E372D302E335332342C32342E332C32342C3234
- 7A222F3E0D0A093C706174682066696C6C3D22233736464630332220643D224D
- 32342C333063302D302E332C302E312D302E352C302E332D302E3763302E322D
- 302E322C302E342D302E332C302E372D302E3363302E332C302C302E352C302E
- 312C302E372C302E3363302E322C302E322C302E332C302E342C302E332C302E
- 370D0A090963302C302E332D302E312C302E352D302E332C302E375332352E33
- 2C33312C32352C3331632D302E332C302D302E352D302E312D302E372D302E33
- 5332342C33302E332C32342C33307A222F3E0D0A093C706174682066696C6C3D
- 22233736464630332220643D224D32382C323168326C332C3130682D324C3238
- 2C32317A222F3E0D0A3C2F673E0D0A3C673E0D0A093C636972636C652066696C
- 6C3D2223393041344145222063783D2231332E35222063793D22392E35222072
- 3D22312E35222F3E0D0A093C636972636C652066696C6C3D2223393041344145
- 222063783D22392E35222063793D22392E352220723D22312E35222F3E0D0A3C
- 2F673E0D0A3C2F7376673E0D0A0800000063006F006D006D0065006E00740073
- 00E30000003C7376672076657273696F6E3D22312220786D6C6E733D22687474
- 703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F78
- 3D223020302034382034382220656E61626C652D6261636B67726F756E643D22
- 6E657720302030203438203438223E0D0A202020203C706174682066696C6C3D
- 22233842433334412220643D224D33372C33394831316C2D362C365631316330
- 2D332E332C322E372D362C362D3668323663332E332C302C362C322E372C362C
- 367632324334332C33362E332C34302E332C33392C33372C33397A222F3E0D0A
- 3C2F7376673E0D0A0E00000063006F006D0070006100630074005F0063006100
- 6D00650072006100770200003C7376672076657273696F6E3D22312220786D6C
- 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
- 76696577426F783D223020302034382034382220656E61626C652D6261636B67
- 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
- 682066696C6C3D22233630374438422220643D224D34302C33394838632D322E
- 322C302D342D312E382D342D3456313363302D322E322C312E382D342C342D34
- 68333263322E322C302C342C312E382C342C347632324334342C33372E322C34
- 322E322C33392C34302C33397A222F3E0D0A202020203C636972636C65206669
- 6C6C3D2223343535413634222063783D223239222063793D2232342220723D22
- 3132222F3E0D0A202020203C636972636C652066696C6C3D2223343241354635
- 222063783D223239222063793D2232342220723D2239222F3E0D0A202020203C
- 706174682066696C6C3D22233930434146392220643D224D33332E382C323163
- 2D312E322D312E342D332D322E322D342E382D322E32732D332E362C302E382D
- 342E382C322E32632D302E352C302E352D302E342C312E332C302E312C312E38
- 63302E352C302E352C312E332C302E342C312E382D302E312063312E352D312E
- 372C342E332D312E372C352E382C3063302E332C302E332C302E362C302E342C
- 312C302E3463302E332C302C302E362D302E312C302E392D302E334333342E32
- 2C32322E342C33342E332C32312E352C33332E382C32317A222F3E0D0A202020
- 203C7265637420783D22382220793D223133222066696C6C3D22234144443846
- 42222077696474683D223622206865696768743D2233222F3E0D0A3C2F737667
- 3E0D0A0F00000063006F006E0066006500720065006E00630065005F00630061
- 006C006C00860200003C7376672076657273696F6E3D22312220786D6C6E733D
- 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
- 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
- 6E643D226E657720302030203438203438223E0D0A202020203C636972636C65
- 2066696C6C3D2223464641373236222063783D223132222063793D2232312220
- 723D2235222F3E0D0A202020203C672066696C6C3D2223343535413634223E0D
- 0A20202020202020203C7061746820643D224D322C33342E3763302C302C322E
- 382D362E332C31302D362E337331302C362E332C31302C362E33563338483256
- 33342E377A222F3E0D0A20202020202020203C7061746820643D224D34362C33
- 342E3763302C302D322E382D362E332D31302D362E33732D31302C362E332D31
- 302C362E335633386832305633342E377A222F3E0D0A202020203C2F673E0D0A
- 202020203C636972636C652066696C6C3D2223464642373444222063783D2232
- 34222063793D2231372220723D2236222F3E0D0A202020203C70617468206669
- 6C6C3D22233630374438422220643D224D33362C33342E3163302C302D332E33
- 2D372E352D31322D372E35732D31322C372E352D31322C372E35563338683234
- 5633342E317A222F3E0D0A202020203C636972636C652066696C6C3D22234646
- 41373236222063783D223336222063793D2232312220723D2235222F3E0D0A20
- 2020203C636972636C652066696C6C3D2223464641373236222063783D223132
- 222063793D2232312220723D2235222F3E0D0A202020203C636972636C652066
- 696C6C3D2223464641373236222063783D223336222063793D2232312220723D
- 2235222F3E0D0A3C2F7376673E0D0A120000006300720079007300740061006C
- 005F006F007300630069006C006C00610074006F007200AD0100003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C672066696C6C3D2223464639383030223E0D0A20
- 202020202020203C7265637420783D22332220793D223238222077696474683D
- 22323622206865696768743D2234222F3E0D0A20202020202020203C72656374
- 20783D22332220793D223136222077696474683D22323622206865696768743D
- 2234222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C3D
- 22233231393646332220643D224D34332C313148323076323668323363312E31
- 2C302C322D302E392C322D325631334334352C31312E392C34342E312C31312C
- 34332C31317A222F3E0D0A202020203C706174682066696C6C3D222336344235
- 46362220643D224D32302C39682D32763330683263312E312C302C322D302E39
- 2C322D325631314332322C392E392C32312E312C392C32302C397A222F3E0D0A
- 3C2F7376673E0D0A11000000630075007200720065006E00630079005F006500
- 78006300680061006E0067006500F30700003C7376672076657273696F6E3D22
- 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
- 2F737667222076696577426F783D223020302034382034382220656E61626C65
- 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
- 20203C636972636C652066696C6C3D2223334635314235222063783D22313822
- 2063793D2231382220723D223135222F3E0D0A202020203C706174682066696C
- 6C3D22234646463539442220643D224D32302E332C313676312E37682D332E38
- 76312E3468332E3876312E37682D332E3863302C302E362C302E312C312E322C
- 302E332C312E3663302E322C302E342C302E342C302E382C302E372C3163302E
- 332C302E332C302E372C302E342C312E312C302E362063302E342C302E312C30
- 2E392C302E322C312E342C302E3263302E342C302C302E372C302C312E312D30
- 2E3163302E342D302E312C302E372D302E312C312D302E336C302E342C322E37
- 632D302E342C302E312D302E392C302E322D312E342C302E32632D302E352C30
- 2E312D312C302E312D312E352C302E3120632D302E392C302D312E382D302E31
- 2D322E362D302E34632D302E382D302E322D312E352D302E362D322D312E3163
- 2D302E362D302E352D312D312E312D312E342D312E39632D302E332D302E372D
- 302E352D312E362D302E352D322E36682D312E39762D312E3768312E39762D31
- 2E34682D312E3956313668312E392063302E312D312C302E332D312E382C302E
- 362D322E3663302E342D302E372C302E382D312E342C312E342D312E3963302E
- 362D302E352C312E332D302E392C322E312D312E3163302E382D302E332C312E
- 372D302E342C322E362D302E3463302E342C302C302E392C302C312E332C302E
- 312063302E342C302E312C302E392C302E312C312E332C302E336C2D302E342C
- 322E37632D302E332D302E312D302E362D302E322D312D302E33632D302E342D
- 302E312D302E372D302E312D312E312D302E31632D302E352C302D312C302E31
- 2D312E342C302E32632D302E342C302E312D302E382C302E332D312C302E3620
- 632D302E332C302E332D302E352C302E362D302E372C31732D302E332C302E39
- 2D302E332C312E354832302E337A222F3E0D0A202020203C636972636C652066
- 696C6C3D2223344341463530222063783D223330222063793D2233302220723D
- 223135222F3E0D0A202020203C706174682066696C6C3D22236666662220643D
- 224D32382E342C323763302E312C302E322C302E322C302E342C302E342C302E
- 3663302E322C302E322C302E342C302E342C302E372C302E3563302E332C302E
- 322C302E372C302E332C312E312C302E3563302E372C302E332C312E342C302E
- 362C322C302E392063302E362C302E332C312E312C302E372C312E352C312E31
- 63302E342C302E342C302E382C302E392C312C312E3463302E322C302E352C30
- 2E342C312E322C302E342C312E3963302C302E372D302E312C312E332D302E33
- 2C312E38632D302E322C302E352D302E352C312D302E392C312E3420732D302E
- 392C302E372D312E342C302E39632D302E362C302E322D312E322C302E342D31
- 2E382C302E3576322E32682D312E38762D322E32632D302E362D302E312D312E
- 322D302E322D312E382D302E34732D312E312D302E352D312E352D31632D302E
- 352D302E342D302E382D312D312E312D312E3620632D302E332D302E362D302E
- 342D312E342D302E342D322E3368332E3363302C302E352C302E312C312C302E
- 322C312E3363302E312C302E342C302E332C302E362C302E362C302E3963302E
- 322C302E322C302E352C302E342C302E382C302E3563302E332C302E312C302E
- 362C302E312C302E392C302E312063302E342C302C302E372C302C302E392D30
- 2E3163302E332D302E312C302E352D302E322C302E372D302E3463302E322D30
- 2E322C302E332D302E342C302E342D302E3663302E312D302E322C302E312D30
- 2E352C302E312D302E3863302D302E332C302D302E362D302E312D302E382063
- 2D302E312D302E322D302E322D302E352D302E342D302E37732D302E342D302E
- 342D302E372D302E35632D302E332D302E322D302E372D302E332D312E312D30
- 2E35632D302E372D302E332D312E342D302E362D322D302E39632D302E362D30
- 2E332D312E312D302E372D312E352D312E3120632D302E342D302E342D302E38
- 2D302E392D312D312E34632D302E322D302E352D302E342D312E322D302E342D
- 312E3963302D302E362C302E312D312E322C302E332D312E3763302E322D302E
- 352C302E352D312C302E392D312E3463302E342D302E342C302E392D302E372C
- 312E342D312063302E352D302E322C312E322D302E342C312E382D302E35762D
- 322E3468312E3876322E3463302E362C302E312C312E322C302E332C312E382C
- 302E3663302E352C302E332C312C302E362C312E332C312E3163302E342C302E
- 342C302E372C312C302E392C312E3663302E322C302E362C302E332C312E332C
- 302E332C3220682D332E3363302D302E392D302E322D312E362D302E362D3263
- 2D302E342D302E342D302E392D302E372D312E352D302E37632D302E332C302D
- 302E362C302E312D302E392C302E32632D302E322C302E312D302E342C302E32
- 2D302E362C302E34632D302E322C302E322D302E332C302E342D302E332C302E
- 3620632D302E312C302E322D302E312C302E352D302E312C302E384332382E33
- 2C32362E352C32382E342C32362E382C32382E342C32377A222F3E0D0A3C2F73
- 76673E0D0A0600000063007500720073006F007200D70300003C737667207665
- 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
- 72672F323030302F737667222076696577426F783D2230203020343820343822
- 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
- 38223E0D0A202020203C706174682066696C6C3D22234530453045302220643D
- 224D32372E382C33392E37632D302E312C302D302E322C302D302E342D302E31
- 632D302E322D302E312D302E342D302E332D302E362D302E356C2D332E372D38
- 2E366C2D342E352C342E324331382E352C33342E392C31382E332C33352C3138
- 2C333520632D302E312C302D302E332C302D302E342D302E314331372E332C33
- 342E382C31372C33342E342C31372C33346C302D323263302D302E342C302E32
- 2D302E382C302E362D302E394331372E372C31312C31372E392C31312C31382C
- 313163302E322C302C302E352C302E312C302E372C302E336C31362C31352063
- 302E332C302E332C302E342C302E372C302E332C312E31632D302E312C302E34
- 2D302E352C302E362D302E392C302E376C2D362E332C302E366C332E392C382E
- 3563302E312C302E322C302E312C302E352C302C302E38632D302E312C302E32
- 2D302E332C302E352D302E352C302E366C2D322E392C312E33204332382E312C
- 33392E372C32372E392C33392E372C32372E382C33392E377A222F3E0D0A2020
- 20203C706174682066696C6C3D22233231323132312220643D224D31382C3132
- 6C31362C31356C2D372E372C302E376C342E352C392E386C2D322E392C312E33
- 6C2D342E332D392E394C31382C33344C31382C3132204D31382C3130632D302E
- 332C302D302E352C302E312D302E382C302E3220632D302E372C302E332D312E
- 322C312D312E322C312E386C302C323263302C302E382C302E352C312E352C31
- 2E322C312E384331372E352C33362C31372E382C33362C31382C333663302E35
- 2C302C312D302E322C312E342D302E356C332E342D332E326C332E312C372E33
- 2063302E322C302E352C302E362C302E392C312E312C312E3163302E322C302E
- 312C302E352C302E312C302E372C302E3163302E332C302C302E352D302E312C
- 302E382D302E326C322E392D312E3363302E352D302E322C302E392D302E362C
- 312E312D312E3163302E322D302E352C302E322D312E312C302D312E35206C2D
- 332E332D372E326C342E392D302E3463302E382D302E312C312E352D302E362C
- 312E372D312E3363302E332D302E372C302E312D312E362D302E352D322E316C
- 2D31362D31354331392C31302E322C31382E352C31302C31382C31304C31382C
- 31307A222F3E0D0A3C2F7376673E0D0A1000000063007500730074006F006D00
- 650072005F0073007500700070006F0072007400420400003C73766720766572
- 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
- 672F323030302F737667222076696577426F783D223020302034382034382220
- 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
- 223E0D0A202020203C706174682066696C6C3D22234646423734442220643D22
- 4D32392C3433762D342E366C322E362C302E3563322E392C302E362C352E362D
- 312E352C352E382D342E344C33382C32386C322E392D312E3263312D302E342C
- 312E342D312E362C302E382D322E364C33382C313820632D302E362D372E362D
- 342E392D31352D31362D31354331302E362C332C352C31312E342C352C323063
- 302C332E372C312E332C362E392C332E332C392E3663312E382C322E352C322E
- 372C352E352C322E372C382E356C302C342E384832397A222F3E0D0A20202020
- 3C706F6C79676F6E2066696C6C3D22234646393830302220706F696E74733D22
- 32392C34332032392C33382E342032322C33372032322C3433222F3E0D0A2020
- 20203C636972636C652066696C6C3D2223373834373139222063783D2233332E
- 35222063793D2232312E352220723D22312E35222F3E0D0A202020203C706174
- 682066696C6C3D22234646353732322220643D224D32312E342C334331322E33
- 2C332C352C31302E332C352C31392E3463302C31312E312C362C31312E342C36
- 2C31382E366C322E362D302E3963322E312D302E372C332E392D322E332C342E
- 372D342E346C322E382D362E384C32372C3233762D362063302C302C372D332E
- 382C372D31302E334333312C342E322C32352E372C332C32312E342C337A222F
- 3E0D0A202020203C672066696C6C3D2223353436453741223E0D0A2020202020
- 2020203C7061746820643D224D32312C322E31632D302E362C302D312C302E34
- 2D312C317631332E3963302C302E362C302E342C312C312C3173312D302E342C
- 312D3156332E314332322C322E352C32312E362C322E312C32312C322E317A22
- 2F3E0D0A20202020202020203C7061746820643D224D33362E392C33312E3963
- 2D372E392C302D31302E332D342E392D31302E342D352E31632D302E322D302E
- 352D302E382D302E372D312E332D302E35632D302E352C302E322D302E372C30
- 2E382D302E352C312E332063302E312C302E332C332C362E332C31322E322C36
- 2E3363302E362C302C312D302E342C312D315333372E342C33312E392C33362E
- 392C33312E397A222F3E0D0A202020203C2F673E0D0A202020203C636972636C
- 652066696C6C3D2223333734373446222063783D223337222063793D22333322
- 20723D2232222F3E0D0A202020203C636972636C652066696C6C3D2223333734
- 373446222063783D223231222063793D2232332220723D2237222F3E0D0A2020
- 20203C636972636C652066696C6C3D2223353436453741222063783D22323122
- 2063793D2232332220723D2234222F3E0D0A3C2F7376673E0D0A030000006400
- 61006D006D0800003C7376672076657273696F6E3D22312220786D6C6E733D22
- 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
- 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
- 643D226E657720302030203438203438223E0D0A202020203C672066696C6C3D
- 2223383144344641223E0D0A20202020202020203C7265637420783D22323422
- 20793D223238222077696474683D22313822206865696768743D223134222F3E
- 0D0A20202020202020203C7265637420783D22362220793D2231302220776964
- 74683D22313222206865696768743D223332222F3E0D0A202020203C2F673E0D
- 0A202020203C672066696C6C3D2223313937364432223E0D0A20202020202020
- 203C7061746820643D224D31362C38682D3263302C312E312D302E392C322D32
- 2C32732D322D302E392D322D32483863302C312E312D302E392C322D322C3276
- 3263312E322C302C322E332D302E352C332D312E3463302E372C302E382C312E
- 382C312E342C332C312E342073322E332D302E352C332D312E3463302E372C30
- 2E382C312E382C312E342C332C312E34762D324331362E392C31302C31362C39
- 2E312C31362C387A222F3E0D0A20202020202020203C7061746820643D224D31
- 362C3134682D3263302C312E312D302E392C322D322C32732D322D302E392D32
- 2D32483863302C312E312D302E392C322D322C32763263312E322C302C322E33
- 2D302E352C332D312E3463302E372C302E382C312E382C312E342C332C312E34
- 2073322E332D302E352C332D312E3463302E372C302E382C312E382C312E342C
- 332C312E34762D324331362E392C31362C31362C31352E312C31362C31347A22
- 2F3E0D0A20202020202020203C7061746820643D224D31362C3230682D326330
- 2C312E312D302E392C322D322C32732D322D302E392D322D32483863302C312E
- 312D302E392C322D322C32763263312E322C302C322E332D302E352C332D312E
- 3463302E372C302E382C312E382C312E342C332C312E342073322E332D302E35
- 2C332D312E3463302E372C302E382C312E382C312E342C332C312E34762D3243
- 31362E392C32322C31362C32312E312C31362C32307A222F3E0D0A2020202020
- 2020203C7061746820643D224D31362C3236682D3263302C312E312D302E392C
- 322D322C32732D322D302E392D322D32483863302C312E312D302E392C322D32
- 2C32763263312E322C302C322E332D302E352C332D312E3463302E372C302E38
- 2C312E382C312E342C332C312E342073322E332D302E352C332D312E3463302E
- 372C302E382C312E382C312E342C332C312E34762D324331362E392C32382C31
- 362C32372E312C31362C32367A222F3E0D0A20202020202020203C7061746820
- 643D224D31362C3332682D3263302C312E312D302E392C322D322C32732D322D
- 302E392D322D32483863302C312E312D302E392C322D322C32763263312E322C
- 302C322E332D302E352C332D312E3463302E372C302E382C312E382C312E342C
- 332C312E342073322E332D302E352C332D312E3463302E372C302E382C312E38
- 2C312E342C332C312E34762D324331362E392C33342C31362C33332E312C3136
- 2C33327A222F3E0D0A20202020202020203C7061746820643D224D31362C3338
- 682D3263302C312E312D302E392C322D322C32732D322D302E392D322D324838
- 63302C312E312D302E392C322D322C32763263312E322C302C322E332D302E35
- 2C332D312E3463302E372C302E382C312E382C312E342C332C312E342073322E
- 332D302E352C332D312E3463302E372C302E382C312E382C312E342C332C312E
- 34762D324331362E392C34302C31362C33392E312C31362C33387A222F3E0D0A
- 20202020202020203C7061746820643D224D34302C3332682D3263302C312E31
- 2D302E392C322D322C32732D322D302E392D322D32682D3263302C312E312D30
- 2E392C322D322C32732D322D302E392D322D32682D3263302C312E312D302E39
- 2C322D322C3276322063312E322C302C322E332D302E352C332D312E3463302E
- 372C302E382C312E382C312E342C332C312E3473322E332D302E352C332D312E
- 3463302E372C302E382C312E382C312E342C332C312E3473322E332D302E352C
- 332D312E3463302E372C302E382C312E382C312E342C332C312E34762D322043
- 34302E392C33342C34302C33332E312C34302C33327A222F3E0D0A2020202020
- 2020203C7061746820643D224D34302C3236682D3263302C312E312D302E392C
- 322D322C32732D322D302E392D322D32682D3263302C312E312D302E392C322D
- 322C32732D322D302E392D322D32682D3263302C312E312D302E392C322D322C
- 3276322063312E322C302C322E332D302E352C332D312E3463302E372C302E38
- 2C312E382C312E342C332C312E3473322E332D302E352C332D312E3463302E37
- 2C302E382C312E382C312E342C332C312E3473322E332D302E352C332D312E34
- 63302E372C302E382C312E382C312E342C332C312E34762D32204334302E392C
- 32382C34302C32372E312C34302C32367A222F3E0D0A20202020202020203C70
- 61746820643D224D34302C3338682D3263302C312E312D302E392C322D322C32
- 732D322D302E392D322D32682D3263302C312E312D302E392C322D322C327632
- 63312E322C302C322E332D302E352C332D312E3463302E372C302E382C312E38
- 2C312E342C332C312E342073322E332D302E352C332D312E3463302E372C302E
- 382C312E382C312E342C332C312E34762D324334302E392C34302C34302C3339
- 2E312C34302C33387A222F3E0D0A202020203C2F673E0D0A202020203C706174
- 682066696C6C3D22233435354136342220643D224D32352E312C392E324C3331
- 2E352C3432483138563668332E324332332E312C362C32342E382C372E342C32
- 352E312C392E327A222F3E0D0A3C2F7376673E0D0A0A00000064006100740061
- 005F00730068006500650074000F0200003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706174682066696C6C3D22233930434146392220643D224D33392C313676
- 37682D36762D37682D327637682D36762D37682D327637682D37763268377636
- 682D37763268377636682D3776326832355631364833397A204D33392C323576
- 36682D36762D364833397A204D32352C323568367636682D365632357A204D32
- 352C333368367636682D365633337A204D33332C3339762D3668367636483333
- 7A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223303042434434
- 2220706F696E74733D2234302C3820382C3820382C34302031362C3430203136
- 2C31362034302C3136222F3E0D0A202020203C706174682066696C6C3D222330
- 30393741372220643D224D372C37763334683130563137683234563748377A20
- 4D392C3233762D366836763648397A204D31352C323576364839762D36483135
- 7A204D31372C3968367636682D3656397A204D32352C3968367636682D365639
- 7A204D31352C397636483956394831357A204D392C3339762D36683676364839
- 7A204D33392C3135682D36563968365631357A222F3E0D0A3C2F7376673E0D0A
- 040000006400650062007400300700003C7376672076657273696F6E3D223122
- 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
- 7667222076696577426F783D223020302034382034382220656E61626C652D62
- 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
- 3C706174682066696C6C3D22234646423734442220643D224D31302C3132632D
- 322E382C302D352D322E322D352D3573322E322D352C352D3573352C322E322C
- 352C355331322E382C31322C31302C31327A222F3E0D0A202020203C70617468
- 2066696C6C3D22233630374438422220643D224D322C323276386C332C326C31
- 2C313468386C312D31346C332D32762D3863302D342E342D332E362D382D382D
- 38683043352E362C31342C322C31372E362C322C32327A222F3E0D0A20202020
- 3C672066696C6C3D2223323633323338223E0D0A20202020202020203C706174
- 6820643D224D32322E342C34302E34632D302E362C322E352D312C332E362D32
- 2E342C332E36632D302E362C302D312E322D302E352D312E392D312E31632D31
- 2D302E382D322E322D312E392D342E312D312E39763263312E312C302C312E39
- 2C302E372C322E382C312E342063302E392C302E372C312E392C312E362C332E
- 322C312E3663332E312C302C332E382D322E392C342E342D352E324332352C33
- 382E322C32352E342C33372C32372C3337762D324332332E372C33352C32322E
- 392C33382E312C32322E342C34302E347A222F3E0D0A20202020202020203C70
- 6F6C79676F6E20706F696E74733D2231342E342C34302031302C34302031302C
- 34342031342E312C3434222F3E0D0A202020203C2F673E0D0A202020203C6369
- 72636C652066696C6C3D2223344341463530222063783D223336222063793D22
- 33362220723D223130222F3E0D0A202020203C706174682066696C6C3D222366
- 66662220643D224D33352C333463302E312C302E322C302E312C302E332C302E
- 332C302E3463302E312C302E312C302E332C302E322C302E352C302E3463302E
- 322C302E312C302E352C302E322C302E382C302E3363302E352C302E322C302E
- 392C302E342C312E332C302E362063302E342C302E322C302E372C302E342C31
- 2C302E3763302E332C302E332C302E352C302E362C302E372C302E3963302E32
- 2C302E342C302E322C302E382C302E322C312E3363302C302E342D302E312C30
- 2E382D302E322C312E32632D302E312C302E342D302E332C302E372D302E362C
- 302E3920632D302E332C302E332D302E362C302E352D302E392C302E36632D30
- 2E342C302E322D302E382C302E332D312E322C302E3376312E35682D312E3276
- 2D312E35632D302E342C302D302E382D302E312D312E322D302E33632D302E34
- 2D302E322D302E372D302E342D312D302E3620632D302E332D302E332D302E35
- 2D302E362D302E372D312E31632D302E322D302E342D302E332D302E392D302E
- 332D312E3568322E3263302C302E342C302C302E372C302E312C302E3963302E
- 312C302E322C302E322C302E342C302E342C302E3663302E322C302E312C302E
- 332C302E322C302E352C302E332063302E322C302E312C302E342C302E312C30
- 2E362C302E3163302E322C302C302E342C302C302E362D302E3163302E322D30
- 2E312C302E332D302E322C302E342D302E3363302E312D302E312C302E322D30
- 2E332C302E332D302E3463302E312D302E322C302E312D302E332C302E312D30
- 2E352063302D302E322C302D302E342D302E312D302E36632D302E312D302E32
- 2D302E312D302E332D302E332D302E34632D302E312D302E312D302E332D302E
- 332D302E352D302E34632D302E322D302E312D302E342D302E322D302E372D30
- 2E33632D302E352D302E322D302E392D302E342D312E332D302E3620632D302E
- 342D302E322D302E372D302E342D312D302E37632D302E332D302E332D302E35
- 2D302E362D302E372D302E39632D302E322D302E342D302E322D302E382D302E
- 322D312E3363302D302E342C302E312D302E382C302E322D312E3263302E312D
- 302E332C302E332D302E372C302E362D302E392063302E332D302E332C302E36
- 2D302E352C302E392D302E3663302E342D302E322C302E382D302E332C312E32
- 2D302E33762D312E3668312E3276312E3663302E342C302E312C302E382C302E
- 322C312E322C302E3463302E342C302E322C302E362C302E342C302E392C302E
- 372063302E322C302E332C302E342C302E362C302E362C3163302E312C302E34
- 2C302E322C302E392C302E322C312E34682D322E3263302D302E362D302E312D
- 312D302E342D312E33632D302E322D302E332D302E362D302E342D312D302E34
- 632D302E322C302D302E342C302D302E362C302E3120632D302E322C302E312D
- 302E332C302E322D302E342C302E334333352E312C33322E372C33352C33322E
- 382C33352C3333732D302E312C302E332D302E312C302E354333342E392C3333
- 2E372C33342E392C33332E392C33352C33347A222F3E0D0A3C2F7376673E0D0A
- 0A0000006400650070006100720074006D0065006E007400910300003C737667
- 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
- 332E6F72672F323030302F737667222076696577426F783D2230203020343820
- 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
- 38203438223E0D0A202020203C706F6C79676F6E2066696C6C3D222343354341
- 45392220706F696E74733D2234322C343220362C343220362C392032342C3220
- 34322C39222F3E0D0A202020203C7265637420783D22362220793D2234322220
- 66696C6C3D2223394641384441222077696474683D2233362220686569676874
- 3D2232222F3E0D0A202020203C7265637420783D2232302220793D2233352220
- 66696C6C3D2223424633363043222077696474683D223822206865696768743D
- 2239222F3E0D0A202020203C672066696C6C3D2223313536354330223E0D0A20
- 202020202020203C7265637420783D2233312220793D22323722207769647468
- 3D223622206865696768743D2235222F3E0D0A20202020202020203C72656374
- 20783D2232312220793D223237222077696474683D223622206865696768743D
- 2235222F3E0D0A20202020202020203C7265637420783D2231312220793D2232
- 37222077696474683D223622206865696768743D2235222F3E0D0A2020202020
- 2020203C7265637420783D2233312220793D223335222077696474683D223622
- 206865696768743D2235222F3E0D0A20202020202020203C7265637420783D22
- 31312220793D223335222077696474683D223622206865696768743D2235222F
- 3E0D0A20202020202020203C7265637420783D2233312220793D223139222077
- 696474683D223622206865696768743D2235222F3E0D0A20202020202020203C
- 7265637420783D2232312220793D223139222077696474683D22362220686569
- 6768743D2235222F3E0D0A20202020202020203C7265637420783D2231312220
- 793D223139222077696474683D223622206865696768743D2235222F3E0D0A20
- 202020202020203C7265637420783D2233312220793D22313122207769647468
- 3D223622206865696768743D2235222F3E0D0A20202020202020203C72656374
- 20783D2232312220793D223131222077696474683D223622206865696768743D
- 2235222F3E0D0A20202020202020203C7265637420783D2231312220793D2231
- 31222077696474683D223622206865696768743D2235222F3E0D0A202020203C
- 2F673E0D0A3C2F7376673E0D0A0A0000006400650070006C006F0079006D0065
- 006E007400D80400003C7376672076657273696F6E3D22312220786D6C6E733D
- 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
- 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
- 6E643D226E657720302030203438203438223E0D0A202020203C706174682066
- 696C6C3D22234230424543352220643D224D33372C3432483556333268333263
- 322E382C302C352C322E322C352C3576304334322C33392E382C33392E382C34
- 322C33372C34327A222F3E0D0A202020203C706174682066696C6C3D22233337
- 343734462220643D224D31302C3334632D312E372C302D332C312E332D332C33
- 73312E332C332C332C3373332D312E332C332D335331312E372C33342C31302C
- 33347A204D31302C3338632D302E362C302D312D302E342D312D3163302D302E
- 362C302E342D312C312D312073312C302E342C312C314331312C33372E362C31
- 302E362C33382C31302C33387A222F3E0D0A202020203C706174682066696C6C
- 3D22233337343734462220643D224D31392C3334632D312E372C302D332C312E
- 332D332C3373312E332C332C332C3373332D312E332C332D335332302E372C33
- 342C31392C33347A204D31392C3338632D302E362C302D312D302E342D312D31
- 63302D302E362C302E342D312C312D312073312C302E342C312C314332302C33
- 372E362C31392E362C33382C31392C33387A222F3E0D0A202020203C70617468
- 2066696C6C3D22233337343734462220643D224D33372C3334632D312E372C30
- 2D332C312E332D332C3373312E332C332C332C3373332D312E332C332D335333
- 382E372C33342C33372C33347A204D33372C3338632D302E362C302D312D302E
- 342D312D3163302D302E362C302E342D312C312D312073312C302E342C312C31
- 4333382C33372E362C33372E362C33382C33372C33387A222F3E0D0A20202020
- 3C706174682066696C6C3D22233337343734462220643D224D32382C3334632D
- 312E372C302D332C312E332D332C3373312E332C332C332C3373332D312E332C
- 332D335332392E372C33342C32382C33347A204D32382C3338632D302E362C30
- 2D312D302E342D312D3163302D302E362C302E342D312C312D312073312C302E
- 342C312C314332392C33372E362C32382E362C33382C32382C33387A222F3E0D
- 0A202020203C706174682066696C6C3D22234646393830302220643D224D3335
- 2C3331483131632D312E312C302D322D302E392D322D32563763302D312E312C
- 302E392D322C322D3268323463312E312C302C322C302E392C322C3276323243
- 33372C33302E312C33362E312C33312C33352C33317A222F3E0D0A202020203C
- 706174682066696C6C3D22233841353130302220643D224D32362E352C313368
- 2D37632D302E382C302D312E352D302E372D312E352D312E35763063302D302E
- 382C302E372D312E352C312E352D312E35683763302E382C302C312E352C302E
- 372C312E352C312E357630204332382C31322E332C32372E332C31332C32362E
- 352C31337A222F3E0D0A202020203C706174682066696C6C3D22233630374438
- 422220643D224D33372C33314835763268333263322E322C302C342C312E382C
- 342C34732D312E382C342D342C344835763268333263332E332C302C362D322E
- 372C362D365334302E332C33312C33372C33317A222F3E0D0A3C2F7376673E0D
- 0A090000006400690070006C006F006D0061005F003100B60200003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C7265637420783D22342220793D2239222066696C
- 6C3D2223453845414636222077696474683D22343022206865696768743D2233
- 30222F3E0D0A202020203C672066696C6C3D2223354336424330223E0D0A2020
- 2020202020203C706F6C79676F6E20706F696E74733D2233302C33342033322E
- 382C33342032372E382C32392032352C33312E382033302C33362E38222F3E0D
- 0A20202020202020203C706F6C79676F6E20706F696E74733D2231382C333420
- 31352E322C33342032302E322C32392032332C33312E382031382C33362E3822
- 2F3E0D0A202020203C2F673E0D0A202020203C7265637420783D223131222079
- 3D223135222066696C6C3D2223394641384441222077696474683D2232362220
- 6865696768743D2234222F3E0D0A202020203C706174682066696C6C3D222339
- 46413844412220643D224D32342C3233632D322E382C302D352C322E322D352C
- 3573322E322C352C352C3573352D322E322C352D355332362E382C32332C3234
- 2C32337A204D32342C3331632D312E372C302D332D312E332D332D3373312E33
- 2D332C332D3373332C312E332C332C33205332352E372C33312C32342C33317A
- 222F3E0D0A202020203C706174682066696C6C3D22233946413844412220643D
- 224D332C38763332683432563848337A204D34332C3335632D312E372C302D33
- 2C312E332D332C33483863302D312E372D312E332D332D332D3356313363312E
- 372C302C332D312E332C332D3368333263302C312E372C312E332C332C332C33
- 5633357A222F3E0D0A3C2F7376673E0D0A090000006400690070006C006F006D
- 0061005F003200F60200003C7376672076657273696F6E3D22312220786D6C6E
- 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E657720302030203438203438223E0D0A202020203C72656374
- 20783D22392220793D2234222066696C6C3D2223464245394537222077696474
- 683D22333022206865696768743D223430222F3E0D0A202020203C672066696C
- 6C3D2223463435313145223E0D0A20202020202020203C706F6C79676F6E2070
- 6F696E74733D2233302C33372033322E382C33372032372E382C33322032352C
- 33342E382033302C33392E38222F3E0D0A20202020202020203C706F6C79676F
- 6E20706F696E74733D2231382C33372031352E322C33372032302E322C333220
- 32332C33342E382031382C33392E38222F3E0D0A202020203C2F673E0D0A2020
- 20203C7265637420783D2231352220793D223133222066696C6C3D2223464638
- 413635222077696474683D22313822206865696768743D2234222F3E0D0A2020
- 20203C7265637420783D2231352220793D223230222066696C6C3D2223464638
- 413635222077696474683D22313822206865696768743D2232222F3E0D0A2020
- 20203C706174682066696C6C3D22234646384136352220643D224D32342C3236
- 632D322E382C302D352C322E322D352C3573322E322C352C352C3573352D322E
- 322C352D355332362E382C32362C32342C32367A204D32342C3334632D312E37
- 2C302D332D312E332D332D3373312E332D332C332D3373332C312E332C332C33
- 205332352E372C33342C32342C33347A222F3E0D0A202020203C706174682066
- 696C6C3D22234646384136352220643D224D382C33763432683332563348387A
- 204D33382C3430632D312E372C302D332C312E332D332C3348313363302D312E
- 372D312E332D332D332D33563863312E372C302C332D312E332C332D33683232
- 63302C312E372C312E332C332C332C335634307A222F3E0D0A3C2F7376673E0D
- 0A0700000064006900730070006C0061007900140300003C7376672076657273
- 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
- 2F323030302F737667222076696577426F783D22302030203438203438222065
- 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
- 3E0D0A202020203C706174682066696C6C3D22233830444545412220643D224D
- 34302C34314838632D322E322C302D342D312E382D342D3456313163302D322E
- 322C312E382D342C342D3468333263322E322C302C342C312E382C342C347632
- 364334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A202020
- 203C672066696C6C3D2223323936324646223E0D0A20202020202020203C706F
- 6C79676F6E20706F696E74733D2233362C31372033312C31372032392C313520
- 33312C31332033362C31332033382C3135222F3E0D0A20202020202020203C70
- 6F6C79676F6E20706F696E74733D2233362C33352033312C33352032392C3333
- 2033312C33312033362C33312033382C3333222F3E0D0A20202020202020203C
- 706F6C79676F6E20706F696E74733D2233372C33302033372C31382033392C31
- 362034312C31382034312C33302033392C3332222F3E0D0A2020202020202020
- 3C706F6C79676F6E20706F696E74733D2232362C33302032362C31382032382C
- 31362033302C31382033302C33302032382C3332222F3E0D0A20202020202020
- 203C706F6C79676F6E20706F696E74733D2231372C31372031322C3137203130
- 2C31352031322C31332031372C31332031392C3135222F3E0D0A202020202020
- 20203C706F6C79676F6E20706F696E74733D2231372C33352031322C33352031
- 302C33332031322C33312031372C33312031392C3333222F3E0D0A2020202020
- 2020203C706F6C79676F6E20706F696E74733D2231382C33302031382C313820
- 32302C31362032322C31382032322C33302032302C3332222F3E0D0A20202020
- 202020203C706F6C79676F6E20706F696E74733D22372C333020372C31382039
- 2C31362031312C31382031312C333020392C3332222F3E0D0A202020203C2F67
- 3E0D0A3C2F7376673E0D0A0800000064006F00630075006D0065006E007400E9
- 0100003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
- 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
- 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
- 7720302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C
- 3D22233930434146392220706F696E74733D2234302C343520382C343520382C
- 332033302C332034302C3133222F3E0D0A202020203C706F6C79676F6E206669
- 6C6C3D22234531463546452220706F696E74733D2233382E352C31342032392C
- 31342032392C342E35222F3E0D0A202020203C672066696C6C3D222331393736
- 4432223E0D0A20202020202020203C7265637420783D2231362220793D223231
- 222077696474683D22313722206865696768743D2232222F3E0D0A2020202020
- 2020203C7265637420783D2231362220793D223235222077696474683D223133
- 22206865696768743D2232222F3E0D0A20202020202020203C7265637420783D
- 2231362220793D223239222077696474683D22313722206865696768743D2232
- 222F3E0D0A20202020202020203C7265637420783D2231362220793D22333322
- 2077696474683D22313322206865696768743D2232222F3E0D0A202020203C2F
- 673E0D0A3C2F7376673E0D0A0600000064006F006E0061007400650009040000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 4536393332392220706F696E74733D2231312E372C32312E362031362E382C33
- 312E352032362E332C32372E362033302E372C31342E392031352E392C31352E
- 37222F3E0D0A202020203C636972636C652066696C6C3D222335343645374122
- 2063783D223135222063793D2233362220723D22372E38222F3E0D0A20202020
- 3C672066696C6C3D2223393041344145223E0D0A20202020202020203C706174
- 6820643D224D31352C3237632D352C302D392C342D392C3963302C352C342C39
- 2C392C3973392D342C392D394332342C33312C32302C32372C31352C32377A20
- 4D31352C3433632D332E392C302D372D332E312D372D3763302D332E392C332E
- 312D372C372D372073372C332E312C372C374332322C33392E392C31382E392C
- 34332C31352C34337A222F3E0D0A20202020202020203C7265637420783D2231
- 342220793D223333222077696474683D223222206865696768743D2238222F3E
- 0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223464642373444
- 223E0D0A20202020202020203C7061746820643D224D31322E392C33364C3132
- 2E392C333663312C312E392C332E322C322E372C352E312C312E376C31362E35
- 2D382E3563312D302E352C312E372D312E322C322E322D312E3963312E372D33
- 2E322C352E362D31302E372C382E322D31372E32206C2D31382E322C382E374C
- 32312E392C32366C2D362E382C332E364331322E352C33302E392C31312E372C
- 33332E382C31322E392C33367A222F3E0D0A20202020202020203C7061746820
- 643D224D33302E322C334C31332E372C392E33632D302E372C302E322D312E35
- 2C312D322E322C312E376C2D352E362C372E35632D312C312E352D312E322C33
- 2E342D302E352C352E3163302E342C312C312E372C332E342C332E312C362E31
- 2063312E362D312E372C332E392D322E372C362E352D322E3763302E342C302C
- 302E392C302C312E332C302E316C2D322E312D342E326C342E362D342E316838
- 63302C302C31352E352D322E322C31382E322D382E374C33302E322C337A222F
- 3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C3D22234646
- 434444322220643D224D31382E322C3336632D312E332C302E362D322E382C30
- 2D332E332D312E33632D302E362D312E332C302D322E382C312E332D332E3343
- 31372E342C33302E382C31392E342C33352E342C31382E322C33367A222F3E0D
- 0A3C2F7376673E0D0A0E00000064006F007500670068006E00750074005F0063
- 006800610072007400C70100003C7376672076657273696F6E3D22312220786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 2076696577426F783D223020302034382034382220656E61626C652D6261636B
- 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
- 74682066696C6C3D22233030424344342220643D224D32342C3330632D332E33
- 2C302D362D322E372D362D3673322E372D362C362D3656354331332E352C352C
- 352C31332E352C352C323473382E352C31392C31392C313963342E342C302C38
- 2E352D312E352C31312E382D342E316C2D382D31302E32204332362E372C3239
- 2E352C32352E342C33302C32342C33307A222F3E0D0A202020203C7061746820
- 66696C6C3D22233434384146462220643D224D33302C323468313363302D3130
- 2E352D382E352D31392D31392D31397631334332372E332C31382C33302C3230
- 2E372C33302C32347A222F3E0D0A202020203C706174682066696C6C3D222333
- 46353142352220643D224D34332C323448333063302C312E392D302E392C332E
- 362D322E332C342E376C382C31302E324334302E322C33352E342C34332C3330
- 2C34332C32347A222F3E0D0A3C2F7376673E0D0A0400000064006F0077006E00
- FD0000003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C672066696C6C3D22233346
- 35314235223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D
- 2232342C34342031322E332C33302033352E372C3330222F3E0D0A2020202020
- 2020203C7265637420783D2232302220793D2236222077696474683D22382220
- 6865696768743D223237222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D
- 0A0900000064006F0077006E005F006C006500660074000F0100003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22233346353142
- 352220706F696E74733D22342C32392031382C31372E332031382C34302E3722
- 2F3E0D0A202020203C706174682066696C6C3D22233346353142352220643D22
- 4D34322C32315638682D3876313363302C322E322D312E382C342D342C344831
- 3376386831374333362E362C33332C34322C32372E362C34322C32317A222F3E
- 0D0A3C2F7376673E0D0A0A00000064006F0077006E005F007200690067006800
- 74000C0100003C7376672076657273696F6E3D22312220786D6C6E733D226874
- 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
- 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
- 226E657720302030203438203438223E0D0A202020203C706F6C79676F6E2066
- 696C6C3D22233346353142352220706F696E74733D2234342C32392033302C31
- 372E332033302C34302E37222F3E0D0A202020203C706174682066696C6C3D22
- 233346353142352220643D224D362C32315638683876313363302C322E322C31
- 2E382C342C342C3468313776384831384331312E342C33332C362C32372E362C
- 362C32317A222F3E0D0A3C2F7376673E0D0A0800000064006F0077006E006C00
- 6F0061006400970100003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C672066696C
- 6C3D2223313536354330223E0D0A20202020202020203C706F6C79676F6E2070
- 6F696E74733D2232342C33372E312031332C32342033352C3234222F3E0D0A20
- 202020202020203C7265637420783D2232302220793D2234222077696474683D
- 223822206865696768743D2234222F3E0D0A20202020202020203C7265637420
- 783D2232302220793D223130222077696474683D223822206865696768743D22
- 34222F3E0D0A20202020202020203C7265637420783D2232302220793D223136
- 222077696474683D223822206865696768743D223131222F3E0D0A2020202020
- 2020203C7265637420783D22362220793D223430222077696474683D22333622
- 206865696768743D2234222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D
- 0A080000006400720069006200620062006C006500ED0500003C3F786D6C2076
- 657273696F6E3D22312E302220656E636F64696E673D227574662D38223F3E0D
- 0A3C212D2D2047656E657261746F723A2041646F626520496C6C757374726174
- 6F722031352E302E302C20535647204578706F727420506C75672D496E202E20
- 5356472056657273696F6E3A20362E3030204275696C6420302920202D2D3E0D
- 0A3C21444F435459504520737667205055424C494320222D2F2F5733432F2F44
- 54442053564720312E312F2F454E222022687474703A2F2F7777772E77332E6F
- 72672F47726170686963732F5356472F312E312F4454442F73766731312E6474
- 64223E0D0A3C7376672076657273696F6E3D22312E31222020786D6C6E733D22
- 687474703A2F2F7777772E77332E6F72672F323030302F7376672220786D6C6E
- 733A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F313939392F
- 786C696E6B2220783D223070782220793D22307078220D0A092077696474683D
- 223438707822206865696768743D2234387078222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 3020302034382034382220786D6C3A73706163653D227072657365727665223E
- 0D0A3C706174682066696C6C3D22234646343038312220643D224D34322C3337
- 63302C322E3736322D322E3233382C352D352C35483131632D322E3736312C30
- 2D352D322E3233382D352D3556313163302D322E3736322C322E3233392D352C
- 352D3568323663322E3736322C302C352C322E3233382C352C355633377A222F
- 3E0D0A3C706174682066696C6C3D22234646464646462220643D224D33332E30
- 36312C32362E323733632D302E3730332D302E3232312D312E3436342C302E31
- 37352D312E3638362C302E383935632D302E3832342C322E3635382D322E3331
- 362C352E3431392D322E3939332C352E35370D0A09632D302E3530372C302D31
- 2E3233362D302E34332D312E3935382D312E343463312E3637342D332E353934
- 2C322E3535312D382E3130362C322E3535312D31312E31313863302D382E3431
- 332D322E3132342D31302E31382D332E3930382D31302E31380D0A09632D332E
- 3735372C302D332E382C392E3931322D332E382C31302E30313263302C312E31
- 36362C302E3034322C322E3234382C302E3132312C332E323536632D302E3531
- 382D302E3138392D312E3131332D302E3331392D312E37372D302E3331390D0A
- 09632D332E38362C302D352E3631382C332E3830392D352E3631382C372E3334
- 374331342C33332E36332C31352E3837312C33372C32302E3034362C33376331
- 2E3937322C302C332E3633342D312E3239312C342E3937352D332E3232310D0A
- 0963312E3138382C312E3233352C322E3433322C312E3639362C332E33362C31
- 2E36393663322E3932332C302C342E3835382D352E3233332C352E3535362D37
- 2E3438364333342E31362C32372E32372C33332E3736372C32362E3530322C33
- 332E3036312C32362E3237337A204D32302E3034382C33342E3236340D0A0963
- 2D332E3033312C302D332E33362D322E3737352D332E33362D332E3936396330
- 2D302E3138382C302E3033342D342E3631312C322E3933322D342E3631316331
- 2E3134342C302C322E3032322C302E3838352C322E3032322C302E3838350D0A
- 0963302E3036352C302E30372C302E3133372C302E3133312C302E3231322C30
- 2E31383463302E3337352C312E3930342C302E3930342C332E3432362C312E35
- 31362C342E3633324332322E3336362C33332E3132332C32312E3230332C3334
- 2E3236342C32302E3034382C33342E3236347A0D0A09204D32342E3930312C32
- 372E393236632D302E3535392D312E39332D302E3934362D342E3532312D302E
- 3934362D372E39313463302D332E3132362C302E3636362D362E3036382C312E
- 3231392D372E30373363302E3432342C302E3634342C312E3131352C322E3635
- 2C312E3131352C372E3234310D0A094332362E3238392C32322E3631362C3235
- 2E37352C32352E3434362C32342E3930312C32372E3932367A222F3E0D0A3C2F
- 7376673E0D0A080000006400760064005F006C006F0067006F00660700003C3F
- 786D6C2076657273696F6E3D22312E302220656E636F64696E673D227574662D
- 38223F3E0D0A3C212D2D2047656E657261746F723A2041646F626520496C6C75
- 73747261746F722031352E302E302C20535647204578706F727420506C75672D
- 496E202E205356472056657273696F6E3A20362E3030204275696C6420302920
- 202D2D3E0D0A3C21444F435459504520737667205055424C494320222D2F2F57
- 33432F2F4454442053564720312E312F2F454E222022687474703A2F2F777777
- 2E77332E6F72672F47726170686963732F5356472F312E312F4454442F737667
- 31312E647464223E0D0A3C7376672076657273696F6E3D22312E31222020786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 20786D6C6E733A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F
- 313939392F786C696E6B2220783D223070782220793D22307078220D0A092077
- 696474683D223438707822206865696768743D2234387078222076696577426F
- 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
- 226E6577203020302034382034382220786D6C3A73706163653D227072657365
- 727665223E0D0A3C706174682066696C6C3D22233432413546352220643D224D
- 32342E3030322C3237632D31322E3135342C302D32322C312E3334332D32322C
- 332E30303663302C312E3635332C392E3834352C322E3939342C32322C322E39
- 39346331322E3135362C302C32322D312E3334312C32322D322E3939340D0A09
- 4334362E3030322C32382E3334332C33362E3135382C32372C32342E3030322C
- 32377A204D32342E3030322C33302E393732632D322E3836332C302D352E3139
- 312D302E3439342D352E3139312D312E31303463302D302E3630392C322E3332
- 392D312E3130342C352E3139312D312E3130340D0A0963322E3836322C302C35
- 2E3139332C302E3439352C352E3139332C312E3130344332392E3139352C3330
- 2E3437382C32362E3836342C33302E3937322C32342E3030322C33302E393732
- 7A222F3E0D0A3C706174682066696C6C3D22233135363543302220643D224D32
- 312E32392C31356C322E3337312C362E34334C32392E32352C313568392E3438
- 3663342E3634372C302C372E3930362C322E3134382C372E3135382C342E3930
- 34632D302E3734352C322E3735362D352E3137382C342E3930342D392E383033
- 2C342E3930340D0A09682D362E32393563302C302C302E3134312D302E303433
- 2C302E3137322D302E31323663302E3234362D302E3934342C312E3730372D36
- 2E3236342C312E3732352D362E33343763302E30322D302E3130322D302E3130
- 352D302E3133332D302E3130352D302E31333368342E3537320D0A0963302C30
- 2D302E3038382D302E3030362D302E3132352C302E313333632D302E3032332C
- 302E3037382D302E3934372C332E3432392D312E3134352C342E313736632D30
- 2E3032332C302E3039342D302E3136322C302E3133392D302E3136322C302E31
- 333968312E3039340D0A0963322E3539342C302C352E3034372D302E3832382C
- 352E3536332D322E37343863302E3437332D312E3735322D312E3234342D322E
- 3734362D342E3033392D322E373436682D312E3031346C2D342E3337352C302E
- 3030346C2D31302E3034332C392E3933326C2D332E3834352D392E3735340D0A
- 0963302C302D302E3033362D302E3036362D302E3036352D302E313437632D30
- 2E3031342D302E3032362D302E3130382D302E3130362D302E3230362D302E30
- 3633632D302E3036352C302E3033362D302E3037342C302E3131372D302E3036
- 362C302E3134360D0A0963302E3033362C302E3036362C302E3034322C302E30
- 382C302E3034382C302E31313163302E3536392C302E39332C302E3436372C32
- 2E3030392C302E33332C322E3532632D302E3737342C322E37352D352E313836
- 2C342E3930342D392E3831322C342E39303448322E3030320D0A0963302C302C
- 302E3134392D302E3034332C302E3137322D302E31323663302E3235342D302E
- 3934362C312E3731372D362E3239342C312E3732362D362E33343763302E3031
- 382D302E30392D302E3039392D302E3133332D302E3039392D302E3133336834
- 2E3630340D0A0963302C302D302E3133322C302E3033372D302E3135382C302E
- 313331632D302E3032342C302E3037382D302E3935342C332E3433322D312E31
- 35312C342E313738632D302E3032332C302E3039342D302E3137382C302E3133
- 392D302E3137382C302E31333968312E3131380D0A0963322E3539372C302C35
- 2E3033322D302E3832382C352E3534372D322E37343863302E3437322D312E37
- 35322D312E32332D322E3734362D342E3032312D322E37343648382E35333968
- 2D342E343563302C302C302E3132352D302E3035392C302E3134372D302E3133
- 390D0A0963302E3132332D302E3434332C302E3439372D312E3833342C302E35
- 31352D312E38393943342E3737312C31352E3034372C342E3634362C31352C34
- 2E3634362C31354832312E32394C32312E32392C31357A222F3E0D0A3C2F7376
- 673E0D0A1100000065006C0065006300740072006900630061006C005F007300
- 65006E0073006F0072001A0200003C7376672076657273696F6E3D2231222078
- 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
- 222076696577426F783D223020302034382034382220656E61626C652D626163
- 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C63
- 6972636C652066696C6C3D2223423245424632222063783D223332222063793D
- 2232342220723D2239222F3E0D0A202020203C706174682066696C6C3D222334
- 44443045312220643D224D33322C3132632D362E362C302D31322C352E342D31
- 322C313263302C362E362C352E342C31322C31322C31327331322D352E342C31
- 322D31324334342C31372E342C33382E362C31322C33322C31327A204D33322C
- 333220632D342E342C302D382D332E362D382D3873332E362D382C382D387338
- 2C332E362C382C385333362E342C33322C33322C33327A222F3E0D0A20202020
- 3C672066696C6C3D2223334635314235223E0D0A20202020202020203C706F6C
- 79676F6E20706F696E74733D2232352E342C32322031392E382C352E31203133
- 2E362C32372E372031312E342C323220342C323220342C323620382E362C3236
- 2031342E342C34302E332032302E322C31382E392032322E362C32362033302C
- 32362033302C3232222F3E0D0A20202020202020203C636972636C652063783D
- 223332222063793D2232342220723D2234222F3E0D0A202020203C2F673E0D0A
- 3C2F7376673E0D0A1400000065006C0065006300740072006900630061006C00
- 5F007400680072006500730068006F006C006400F20100003C73766720766572
- 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
- 672F323030302F737667222076696577426F783D223020302034382034382220
- 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
- 223E0D0A202020203C7265637420783D22332220793D223132222066696C6C3D
- 2223383044454541222077696474683D22343222206865696768743D22323422
- 2F3E0D0A202020203C7265637420783D22332220793D223233222066696C6C3D
- 2223303341394634222077696474683D22343222206865696768743D2232222F
- 3E0D0A202020203C706174682066696C6C3D226E6F6E6522207374726F6B653D
- 222333463531423522207374726F6B652D77696474683D223422207374726F6B
- 652D6D697465726C696D69743D2231302220643D224D342C31386C342E352D31
- 2E3563302E392D302E332C312E392C302E312C322E332C302E396C382E372C31
- 342E332063302E372C312E322C322E342C312E332C332E322C302E326C322E33
- 2D322E3863302E352D302E362C312E342D302E392C322E322D302E366C332C31
- 63312C302E332C322E312D302E322C322E352D312E316C342E332D31302E3163
- 302E352D312E312C312E392D312E362C322E392D302E396C342C322E37222F3E
- 0D0A3C2F7376673E0D0A0B00000065006C006500630074007200690063006900
- 74007900E70000003C7376672076657273696F6E3D22312220786D6C6E733D22
- 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
- 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
- 643D226E657720302030203438203438223E0D0A202020203C70617468206669
- 6C6C3D22233030424344342220643D224D33332E372C354C32322C31376C3135
- 2C354C32312E332C33362E376C352E312C322E384C31322C34336C322E372D31
- 342E386C322E392C352E314C32372C32346C2D31352D354C32352C354833332E
- 377A222F3E0D0A3C2F7376673E0D0A0F00000065006C0065006300740072006F
- 005F006400650076006900630065007300490100003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D22302030203438203438223E0D0A20
- 2020203C706174682066696C6C3D22233346353142352220643D224D33392C34
- 334839632D322E322C302D342D312E382D342D34563963302D322E322C312E38
- 2D342C342D3468333063322E322C302C342C312E382C342C347633304334332C
- 34312E322C34312E322C34332C33392C34337A222F3E0D0A202020203C706174
- 682066696C6C3D22233830444545412220643D224D33332E322C356C2D392E38
- 2C31302E314C33362C31392E334C32322E382C33312E376C342E332C322E344C
- 31352C33376C322E332D31322E356C322E342C342E336C382D372E384C31352C
- 31362E384C32352E392C354833332E327A222F3E0D0A3C2F7376673E0D0A0B00
- 000065006C0065006300740072006F006E00690063007300000200003C737667
- 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
- 332E6F72672F323030302F737667222076696577426F783D2230203020343820
- 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
- 38203438223E0D0A202020203C706174682066696C6C3D222346463938303022
- 20643D224D34342C3138762D344833345634682D34763130682D345634682D34
- 763130682D345634682D34763130483476346831307634483476346831307634
- 4834763468313076313068345633346834763130683456333468347631306834
- 563334683130762D3448333420762D34683130762D34483334762D344834347A
- 222F3E0D0A202020203C706174682066696C6C3D22233443414635302220643D
- 224D382C313276323463302C322E322C312E382C342C342C3468323463322E32
- 2C302C342D312E382C342D3456313263302D322E322D312E382D342D342D3448
- 313243392E382C382C382C392E382C382C31327A222F3E0D0A202020203C7061
- 74682066696C6C3D22233337343734462220643D224D33312C3331483137632D
- 312E312C302D322D302E392D322D3256313963302D312E312C302E392D322C32
- 2D3268313463312E312C302C322C302E392C322C327631304333332C33302E31
- 2C33322E312C33312C33312C33317A222F3E0D0A3C2F7376673E0D0A0D000000
- 65006D007000740079005F006200610074007400650072007900720100003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C672066696C6C3D2223434644384443223E
- 0D0A20202020202020203C7061746820643D224D33342C3434483134632D312E
- 312C302D322D302E392D322D32563863302D312E312C302E392D322C322D3268
- 323063312E312C302C322C302E392C322C327633344333362C34332E312C3335
- 2E312C34342C33342C34347A222F3E0D0A20202020202020203C706174682064
- 3D224D32382C3133682D38632D302E362C302D312D302E342D312D3156356330
- 2D302E362C302E342D312C312D31683863302E362C302C312C302E342C312C31
- 76374332392C31322E362C32382E362C31332C32382C31337A222F3E0D0A2020
- 20203C2F673E0D0A3C2F7376673E0D0A0C00000065006D007000740079005F00
- 660069006C00740065007200740100003C7376672076657273696F6E3D223122
- 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
- 7667222076696577426F783D223020302034382034382220656E61626C652D62
- 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
- 3C672066696C6C3D2223464643433830223E0D0A20202020202020203C706F6C
- 79676F6E20706F696E74733D2232392C32332031392C323320372C392034312C
- 39222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2232
- 392C33382031392C34342031392C32332032392C3233222F3E0D0A2020202020
- 2020203C7061746820643D224D34312E352C39682D333543352E372C392C352C
- 382E332C352C372E35763043352C362E372C352E372C362C362E352C36683335
- 4334322E332C362C34332C362E372C34332C372E3576304334332C382E332C34
- 322E332C392C34312E352C397A222F3E0D0A202020203C2F673E0D0A3C2F7376
- 673E0D0A0B00000065006D007000740079005F00740072006100730068005B01
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C706174682066696C6C3D222342
- 33394444422220643D224D33302E362C34344831372E34632D322C302D332E37
- 2D312E342D342D332E344C392C31316833306C2D342E352C32392E364333342E
- 322C34322E362C33322E352C34342C33302E362C34347A222F3E0D0A20202020
- 3C706174682066696C6C3D22233745353743322220643D224D33382C31334831
- 30632D312E312C302D322D302E392D322D32763063302D312E312C302E392D32
- 2C322D3268323863312E312C302C322C302E392C322C3276304334302C31322E
- 312C33392E312C31332C33382C31337A222F3E0D0A3C2F7376673E0D0A080000
- 0065006E0064005F00630061006C006C00FE0100003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22234634343333362220643D224D3433
- 2E352C31362E386C2D322E332D322E33632D382E312D372E392D32372E352D36
- 2E382D33342E352C306C2D322E332C322E33632D302E362C302E362D302E362C
- 312E362C302C322E336C342E362C342E352063302E362C302E362C312E372C30
- 2E362C322E332C306C352E312D342E394C31362C31332E3463312E362D312E36
- 2C31342E342D312E362C31362C306C2D302E332C352E356C342E392C342E3763
- 302E362C302E362C312E372C302E362C322E332C306C342E362D342E35204334
- 342E322C31382E342C34342E322C31372E342C34332E352C31362E387A222F3E
- 0D0A202020203C672066696C6C3D2223423731433143223E0D0A202020202020
- 20203C706F6C79676F6E20706F696E74733D2232342C34302E352031362C3331
- 2033322C3331222F3E0D0A20202020202020203C7265637420783D2232312220
- 793D223234222077696474683D223622206865696768743D22372E35222F3E0D
- 0A202020203C2F673E0D0A3C2F7376673E0D0A0B00000065006E00670069006E
- 0065006500720069006E0067005B0400003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706174682066696C6C3D22234546364330302220643D224D33372E342C32
- 342E366C2D31312E362D322E326C2D332E392D31312E326C2D332E382C312E33
- 4C32322C32332E366C2D372E382C396C332C322E366C372E382D396C31312E36
- 2C322E324C33372E342C32342E367A222F3E0D0A202020203C672066696C6C3D
- 2223464639383030223E0D0A20202020202020203C7061746820643D224D3234
- 2C3139632D322E382C302D352C322E322D352C3563302C322E382C322E322C35
- 2C352C3573352D322E322C352D354332392C32312E322C32362E382C31392C32
- 342C31397A204D32342C3236632D312E312C302D322D302E392D322D32206330
- 2D312E312C302E392D322C322D3273322C302E392C322C324332362C32352E31
- 2C32352E312C32362C32342C32367A222F3E0D0A20202020202020203C706174
- 6820643D224D34302E372C323763302E322D312C302E332D322C302E332D3363
- 302D312D302E312D322D302E332D336C332E332D322E3463302E342D302E332C
- 302E362D302E392C302E332D312E344C34302C392E3820632D302E332D302E35
- 2D302E382D302E372D312E332D302E344C33352C3131632D312E352D312E332D
- 332E332D322E332D352E322D336C2D302E342D342E31632D302E312D302E352D
- 302E352D302E392D312D302E39682D382E36632D302E352C302D312C302E342D
- 312C302E394C31382E322C3820632D312E392C302E372D332E372C312E372D35
- 2E322C334C392E332C392E3343382E382C392E312C382E322C392E332C382C39
- 2E386C2D342E332C372E34632D302E332C302E352D302E312C312E312C302E33
- 2C312E344C372E332C323143372E312C32322C372C32332C372C32342063302C
- 312C302E312C322C302E332C334C342C32392E34632D302E342C302E332D302E
- 362C302E392D302E332C312E344C382C33382E3263302E332C302E352C302E38
- 2C302E372C312E332C302E344C31332C333763312E352C312E332C332E332C32
- 2E332C352E322C336C302E342C342E312063302E312C302E352C302E352C302E
- 392C312C302E3968382E3663302E352C302C312D302E342C312D302E396C302E
- 342D342E3163312E392D302E372C332E372D312E372C352E322D336C332E372C
- 312E3763302E352C302E322C312E312C302C312E332D302E346C342E332D372E
- 342063302E332D302E352C302E312D312E312D302E332D312E344C34302E372C
- 32377A204D32342C3335632D362E312C302D31312D342E392D31312D31316330
- 2D362E312C342E392D31312C31312D31317331312C342E392C31312C31314333
- 352C33302E312C33302E312C33352C32342C33357A222F3E0D0A202020203C2F
- 673E0D0A3C2F7376673E0D0A1500000065006E0074006500720069006E006700
- 5F00680065006100760065006E005F0061006C00690076006500A70200003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C7265637420783D2231372220793D223239
- 222066696C6C3D2223303339424535222077696474683D223134222068656967
- 68743D2232222F3E0D0A202020203C7265637420783D2231332220793D223333
- 222066696C6C3D2223303339424535222077696474683D223232222068656967
- 68743D2232222F3E0D0A202020203C7265637420783D22392220793D22333722
- 2066696C6C3D2223303339424535222077696474683D22333022206865696768
- 743D2232222F3E0D0A202020203C7265637420783D22352220793D2234312220
- 66696C6C3D2223303339424535222077696474683D2233382220686569676874
- 3D2232222F3E0D0A202020203C706174682066696C6C3D222338314434464122
- 20643D224D33352C3133632D302E342C302D302E382C302D312E322C302E3143
- 33322E392C382E352C32382E392C352C32342C35632D342E312C302D372E362C
- 322E352D392E322C36632D302E332C302D302E352C302D302E382C3020632D34
- 2E342C302D382C332E362D382C3873332E362C382C382C3863322E342C302C31
- 382E352C302C32312C3063332E392C302C372D332E312C372D374334322C3136
- 2E312C33382E392C31332C33352C31337A222F3E0D0A202020203C7061746820
- 66696C6C3D22233033394245352220643D224D32382C323163302D322E322D31
- 2E382D342D342D34732D342C312E382D342C3463302C302E352C302C362C302C
- 3668384332382C32372C32382C32312E352C32382C32317A222F3E0D0A3C2F73
- 76673E0D0A0600000065007800700061006E006400C80000003C737667207665
- 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
- 72672F323030302F737667222076696577426F783D2230203020343820343822
- 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
- 38223E0D0A202020203C706F6C79676F6E2066696C6C3D222332313936463322
- 20706F696E74733D2234332C31372E312033392E392C31342032342C32392E39
- 20382E312C313420352C31372E312032342C3336222F3E0D0A3C2F7376673E0D
- 0A060000006500780070006F0072007400710100003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22234646434342432220643D224D372C
- 3430563863302D322E322C312E382D342C342D3468323463322E322C302C342C
- 312E382C342C3476333263302C322E322D312E382C342D342C3448313143382E
- 382C34342C372C34322E322C372C34307A222F3E0D0A202020203C672066696C
- 6C3D2223464635373232223E0D0A20202020202020203C706F6C79676F6E2070
- 6F696E74733D2234322E372C32342033322C33332033322C3135222F3E0D0A20
- 202020202020203C7265637420783D2231342220793D22323122207769647468
- 3D22323322206865696768743D2236222F3E0D0A202020203C2F673E0D0A3C2F
- 7376673E0D0A08000000650078007400650072006E0061006C00300100003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C636972636C652066696C6C3D2223423244
- 464442222063783D223234222063793D2233312220723D223134222F3E0D0A20
- 2020203C672066696C6C3D2223303039363838223E0D0A20202020202020203C
- 706F6C79676F6E20706F696E74733D2232342C332E332033332C31342031352C
- 3134222F3E0D0A20202020202020203C7265637420783D2232312220793D2231
- 31222077696474683D223622206865696768743D223233222F3E0D0A20202020
- 3C2F673E0D0A3C2F7376673E0D0A0700000066006100630074006F0072007900
- 6F0200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
- 234246333630432220643D224D34312E322C35682D372E334C33322C34336831
- 314C34312E322C357A222F3E0D0A202020203C706174682066696C6C3D222345
- 36344131392220643D224D33332C3233682D34762D366C2D31322C36762D364C
- 352C32337632306832385632337A222F3E0D0A202020203C7265637420783D22
- 392220793D223237222066696C6C3D2223464643313037222077696474683D22
- 3422206865696768743D2234222F3E0D0A202020203C7265637420783D223137
- 2220793D223237222066696C6C3D2223464643313037222077696474683D2234
- 22206865696768743D2234222F3E0D0A202020203C7265637420783D22323522
- 20793D223237222066696C6C3D2223464643313037222077696474683D223422
- 206865696768743D2234222F3E0D0A202020203C7265637420783D2239222079
- 3D223335222066696C6C3D2223464643313037222077696474683D2234222068
- 65696768743D2234222F3E0D0A202020203C7265637420783D2231372220793D
- 223335222066696C6C3D2223464643313037222077696474683D223422206865
- 696768743D2234222F3E0D0A202020203C7265637420783D2232352220793D22
- 3335222066696C6C3D2223464643313037222077696474683D22342220686569
- 6768743D2234222F3E0D0A3C2F7376673E0D0A1100000066006100630074006F
- 00720079005F0062007200650061006B0064006F0077006E00720200003C7376
- 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
- 77332E6F72672F323030302F737667222076696577426F783D22302030203438
- 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
- 3438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223453634
- 4131392220706F696E74733D2232392C32332032392C31372032312C32312032
- 312C32332031372C32332031372C32372031332C32372031332C323320352C32
- 3320352C34332033332C34332033332C3233222F3E0D0A202020203C72656374
- 20783D2232352220793D223237222066696C6C3D222339393242304122207769
- 6474683D223422206865696768743D2234222F3E0D0A202020203C7265637420
- 783D22392220793D223335222066696C6C3D2223393932423041222077696474
- 683D223422206865696768743D2234222F3E0D0A202020203C7265637420783D
- 2232352220793D223335222066696C6C3D222339393242304122207769647468
- 3D223422206865696768743D2234222F3E0D0A202020203C7265637420783D22
- 31372220793D223335222066696C6C3D2223393932423041222077696474683D
- 223422206865696768743D2234222F3E0D0A202020203C7265637420783D2231
- 372220793D223237222066696C6C3D2223393932423041222077696474683D22
- 3422206865696768743D2234222F3E0D0A202020203C706F6C79676F6E206669
- 6C6C3D22234246333630432220706F696E74733D2234312E322C352033382C35
- 2033382C372033362C372033362C392033332E372C392033322C34332034332C
- 3433222F3E0D0A3C2F7376673E0D0A03000000660061007100740400003C7376
- 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
- 77332E6F72672F323030302F737667222076696577426F783D22302030203438
- 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
- 3438203438223E0D0A202020203C706174682066696C6C3D2223353538423246
- 2220643D224D31352C34306832336C362C3656323563302D322E322D312E382D
- 342D342D34483135632D322E322C302D342C312E382D342C347631314331312C
- 33382E322C31322E382C34302C31352C34307A222F3E0D0A202020203C706174
- 682066696C6C3D22233142354532302220643D224D32382E382C33322E38682D
- 332E366C2D302E372C322E31682D322E326C332E372D313068312E396C332E37
- 2C3130682D322E324C32382E382C33322E387A204D32352E372C33312E326832
- 2E354C32372C32372E344C32352E372C33312E327A222F3E0D0A202020203C70
- 6174682066696C6C3D22233842433334412220643D224D33332C32354831306C
- 2D362C36563863302D322E322C312E382D342C342D3468323563322E322C302C
- 342C312E382C342C347631334333372C32332E322C33352E322C32352C33332C
- 32357A222F3E0D0A202020203C706174682066696C6C3D22236666662220643D
- 224D32352E342C31342E3263302C312D302E322C312E382D302E352C322E3563
- 2D302E332C302E372D302E372C312E332D312E332C312E376C312E372C312E33
- 4C32342C32302E396C2D322E322D312E37632D302E322C302D302E352C302E31
- 2D302E382C302E3120632D302E362C302D312E322D302E312D312E382D302E33
- 632D302E352D302E322D312D302E362D312E342D31632D302E342D302E342D30
- 2E372D312D302E392D312E36632D302E322D302E362D302E332D312E332D302E
- 332D322E31762D302E3463302D302E382C302E312D312E352C302E332D322E31
- 2063302E322D302E362C302E352D312E322C302E392D312E3663302E342D302E
- 342C302E382D302E382C312E342D3163302E352D302E322C312E312D302E332C
- 312E382D302E3363302E362C302C312E322C302E312C312E382C302E3363302E
- 352C302E322C312C302E362C312E342C312063302E342C302E342C302E372C31
- 2C302E392C312E3663302E322C302E362C302E332C312E332C302E332C322E31
- 5631342E327A204D32332E322C31332E3763302D312E312D302E322D312E392D
- 302E362D322E34632D302E342D302E362D302E392D302E382D312E362D302E38
- 20632D302E372C302D312E332C302E332D312E362C302E38632D302E342C302E
- 362D302E362C312E342D302E362C322E3476302E3563302C302E352C302E312C
- 312C302E322C312E3463302E312C302E342C302E322C302E382C302E342C3163
- 302E322C302E332C302E342C302E352C302E372C302E362063302E332C302E31
- 2C302E362C302E322C302E392C302E3263302E372C302C312E332D302E332C31
- 2E362D302E3863302E342D302E362C302E362D312E342C302E362D322E355631
- 332E377A222F3E0D0A3C2F7376673E0D0A0700000066006500650064005F0069
- 006E00570200003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
- 6C3D22233231393646332220643D224D33382C323476313263302C312E312D30
- 2E392C322D322C32483132632D312E312C302D322D302E392D322D3256323463
- 302D332E332D322E372D362D362D3668307634683063312E312C302C322C302E
- 392C322C327631322063302C332E332C322E372C362C362C3668323463332E33
- 2C302C362D322E372C362D3656323463302D312E312C302E392D322C322D3268
- 30762D3468304334302E372C31382C33382C32302E372C33382C32347A222F3E
- 0D0A202020203C672066696C6C3D2223334635314235223E0D0A202020202020
- 20203C706F6C79676F6E20706F696E74733D2233382E362C352E362032392C31
- 352E322032392C32382033332C32382033332C31362E382034312E342C382E34
- 222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22362E
- 362C382E342031352C31362E382031352C32382031392C32382031392C31352E
- 3220392E342C352E36222F3E0D0A20202020202020203C706F6C79676F6E2070
- 6F696E74733D2233372C32372033312C33332032352C3237222F3E0D0A202020
- 20202020203C706F6C79676F6E20706F696E74733D2232332C32372031372C33
- 332031312C3237222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0800
- 000066006500650064006200610063006B00380200003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C706174682066696C6C3D22233738393039432220643D224D34
- 302C34314838632D322E322C302D342D312E382D342D346C302D32302E396330
- 2D312E332C302E362D322E352C312E372D332E334C32342C306C31382E332C31
- 322E3863312E312C302E372C312E372C322C312E372C332E3356333720433434
- 2C33392E322C34322E322C34312C34302C34317A222F3E0D0A202020203C7265
- 637420783D2231322220793D223131222066696C6C3D22236666662220776964
- 74683D22323422206865696768743D223232222F3E0D0A202020203C706F6C79
- 676F6E2066696C6C3D22233943323742302220706F696E74733D2232342C3133
- 2E362031382C32312E342033302C32312E34222F3E0D0A202020203C70617468
- 2066696C6C3D22234346443844432220643D224D34302C34314838632D322E32
- 2C302D342D312E382D342D346C302D32306C32302C31336C32302D3133763230
- 4334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A20202020
- 3C706F6C79676F6E2066696C6C3D22233943323742302220706F696E74733D22
- 32342C32382032362C32362E372032362C32302032322C32302032322C32362E
- 37222F3E0D0A3C2F7376673E0D0A04000000660069006C006500F30000003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22233930
- 434146392220706F696E74733D2234302C343520382C343520382C332033302C
- 332034302C3133222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 4531463546452220706F696E74733D2233382E352C31342032392C3134203239
- 2C342E35222F3E0D0A3C2F7376673E0D0A0E000000660069006C0069006E0067
- 005F0063006100620069006E0065007400100300003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C7265637420783D2231322220793D223434222066696C6C3D2223
- 323633323338222077696474683D223422206865696768743D2232222F3E0D0A
- 202020203C7265637420783D2233322220793D223434222066696C6C3D222332
- 3633323338222077696474683D223422206865696768743D2232222F3E0D0A20
- 2020203C706174682066696C6C3D22233630374438422220643D224D382C3431
- 563763302D322E322C312E382D342C342D3468323463322E322C302C342C312E
- 382C342C3476333463302C322E322D312E382C342D342C3448313243392E382C
- 34352C382C34332E322C382C34317A222F3E0D0A202020203C70617468206669
- 6C6C3D22234230424543352220643D224D31322C3137563863302D302E362C30
- 2E342D312C312D3168323263302E362C302C312C302E342C312C317639483132
- 7A222F3E0D0A202020203C7265637420783D2231322220793D22313922206669
- 6C6C3D2223423042454335222077696474683D22323422206865696768743D22
- 3130222F3E0D0A202020203C706174682066696C6C3D22234230424543352220
- 643D224D31322C3430762D39683234763963302C302E362D302E342C312D312C
- 314831334331322E342C34312C31322C34302E362C31322C34307A222F3E0D0A
- 202020203C7265637420783D2232302220793D223131222066696C6C3D222335
- 3436453741222077696474683D223822206865696768743D2232222F3E0D0A20
- 2020203C7265637420783D2232302220793D223233222066696C6C3D22233534
- 36453741222077696474683D223822206865696768743D2232222F3E0D0A2020
- 20203C7265637420783D2232302220793D223335222066696C6C3D2223353436
- 453741222077696474683D223822206865696768743D2232222F3E0D0A3C2F73
- 76673E0D0A0D000000660069006C006C00650064005F00660069006C00740065
- 0072007F0100003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C706F6C79676F6E20
- 66696C6C3D22234635374330302220706F696E74733D2232392C32332031392C
- 323320372C392034312C39222F3E0D0A202020203C672066696C6C3D22234646
- 39383030223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D
- 2232392C33382031392C34342031392C32332032392C3233222F3E0D0A202020
- 20202020203C7061746820643D224D34312E352C39682D333543352E372C392C
- 352C382E332C352C372E35763043352C362E372C352E372C362C362E352C3668
- 33354334322E332C362C34332C362E372C34332C372E3576304334332C382E33
- 2C34322E332C392C34312E352C397A222F3E0D0A202020203C2F673E0D0A3C2F
- 7376673E0D0A13000000440065006C007000680069005F00500072006F006400
- 7500630074002000690063006F006E008D2300003C3F786D6C2076657273696F
- 6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A3C737667
- 2076657273696F6E3D22312E312220783D223070782220793D22307078222076
- 696577426F783D223020302038303030203830303022207374796C653D22656E
- 61626C652D6261636B67726F756E643A6E657720302030203830303020383030
- 303B2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
- 302F737667223E0D0A20203C7374796C6520747970653D22746578742F637373
- 223E0D0A092E7374307B646973706C61793A6E6F6E653B66696C6C3A23464646
- 4646463B7374726F6B653A234331323732443B7374726F6B652D77696474683A
- 32303B7374726F6B652D6D697465726C696D69743A31303B7D0D0A092E737431
- 7B66696C6C3A234633323733353B7D0D0A092E7374327B66696C6C3A23394530
- 4632303B7D0D0A092E7374337B66696C6C3A234646464646463B7D0D0A3C2F73
- 74796C653E0D0A20203C672069643D2243616D6164615F31223E0D0A20202020
- 3C673E0D0A2020202020203C673E0D0A20202020202020203C636972636C6520
- 63783D2234303030222063793D22333939392E39392220723D22333938392E38
- 33222066696C6C3D2223463332373335222F3E0D0A20202020202020203C7061
- 746820636C6173733D227374322220643D224D363830392E39382C313136372E
- 35344C313139302E32392C363833322E3763302E31322C302E31322C302E3234
- 2C302E32342C302E33352C302E33352063313536342E35362C313535312E3637
- 2C343039302E37362C313534312E32312C353634322E34322D32332E33354338
- 3338342E36342C353234352E32342C383337342E32382C323731392E32332C36
- 3830392E39382C313136372E35347A222066696C6C3D2223394530463230222F
- 3E0D0A2020202020203C2F673E0D0A2020202020203C673E0D0A202020202020
- 20203C7061746820636C6173733D227374332220643D224D20333431382E3535
- 20343636332E3838204320333532322E303720343539342E353920333632342E
- 313920343532332E3220333732372E303320343435322E383920432034313430
- 2E363620343137302E313220343535342E333520333838372E34332034393638
- 2E303320333630342E3733204C20353432382E383920333238382E3436204320
- 353430342E393520333236362E343620353338332E393820333234362E303720
- 353336312E383120333232372E3132204320353233302E393820333131352E33
- 3120353039302E363320333031372E343820343933382E3420323933362E3636
- 204320343730302E373720323831302E353120343434392E333720323732392E
- 313220343138302E333920323731312E3334204320343034312E373720323730
- 322E313820333930322E363220323730392E3534203337363520323733332E31
- 34204320333535382E303820323736382E363220333336312E37342032383334
- 2E383320333137362E343620323933332E3934204320323930322E3735203330
- 38302E333420323637362E323920333238302E333120323439362E3835203335
- 33332E3239204320323239302E303620333832342E383420323137352E333220
- 343135302E3320323134352E393120343530352E3632204320323133342E3132
- 20343634382E303720323134302E373520343739302E373720323136322E3838
- 20343933322E3131204320323139312E323120353131332E313220323234322E
- 343120353238372E363220323331392E353820353435342E3120432032343035
- 2E3320353633392E303220323531372E373920353830362E303520323635362E
- 393920353935342E3835204320323639302E383220353939312E303120323732
- 372E343620363032342E353320323736332E373720363036302E322043203238
- 31372E333920353938352E363520323839302E3235203539343520323937302E
- 383920353931362E3333204320333131352E343120353836342E393620333236
- 362E353220353835352E3820333431372E363620353835322E34322043203335
- 30312E373820353835302E353420333538362E333120353835362E3338203336
- 37302E333120353836322E3939204320333736352E363120353837302E343920
- 333836302E353820353838322E333320333935352E3620353839332E31322043
- 20343030302E363420353839382E323320343034352E343620353930352E3239
- 20343039342E363820353931322E3036204320333935352E333120353631392E
- 343220333831382E313120353333312E333320333638302E393520353034332E
- 3332204320333630392E383420353035372E333520333534322E353720353037
- 302E363220333437332E373220353038342E32204320333437312E3134203530
- 37372E323220333436382E383920353037322E383820333436372E3933203530
- 36382E3237204320333434332E373820343935322E363120333432312E313620
- 343833362E3620333339342E373720343732312E3436204320333338382E3134
- 20343639322E353620333339352E353620343637392E323720333431382E3535
- 20343636332E3838205A204D20333232362E393320333232382E383120432032
- 3932372E373520333437372E343820323638382E3320333736392E3638203235
- 36342E343520343134352E3139204320323532392E393320343234392E383420
- 323531302E3220343335372E323620323530302E353320343436372E31382043
- 20323437342E303220343736382E343520323534322E353320353035302E3438
- 20323637332E383220353331382E3637204320323732322E313220353431372E
- 333420323738322E313520353531302E323720323833362E383320353630352E
- 3832204320323834302E3520353631322E323320323834342E3120353631382E
- 363720323835302E303520353632392E32204320323830392E32392035363439
- 2E393620323737302E353920353637302E363320323733302E39362035363839
- 2E3331204320323731372E343320353639352E363820323730332E3731203536
- 39382E323420323639322E363820353637382E3933204320323537372E393420
- 353437372E393220323438332E3620353236382E343220323432362E33362035
- 3034332E3436204320323338362E353620343838372E303220323336342E3034
- 20343732372E383520323337302E313520343536362E3434204320323338302E
- 333720343239362E353620323435362E303320343034352E363620323539382E
- 373220333831352E3335204320323732332E333420333631342E322032383832
- 2E323520333434342E343520333036362E333620333239372E30382043203332
- 32332E333320333137312E343320333339322E303820333036342E3838203335
- 37342E353620323938302E3238204320333538322E393220323937362E343120
- 333539312E3439203239373320333539392E393620323936392E333820432033
- 3436372E383620333034352E393620333334332E353320333133312E39203332
- 32362E393320333232382E3831205A222066696C6C3D2223666666666666222F
- 3E0D0A20202020202020203C7061746820636C6173733D227374332220643D22
- 4D333831302E31352C353132362E39356337312E33342D31332E37382C313431
- 2E30392D32372E37332C3231312E31342D34302E303363372E30362D312E3234
- 2C31372E35332C352E38352C32332E36322C31312E3920633130312E32362C31
- 30302E36322C3139392E30362C3230342E39352C3330332E392C3330312E3635
- 6338372E39312C38312E312C3138332E38322C3135332E35342C3237362E3337
- 2C3232392E3539633133312E39322C3130382E342C3234372E32322C3233322E
- 35362C3334362E34342C3337312E313720633137332E342C3234322E32362C32
- 39382E37352C3530372E33362C3336382E33362C3739372E3563362E31322C32
- 352E35312D312E36362C35362E392D31302E35332C38322E3939632D33302E31
- 322C38382E36342D39342E30322C3135322E35382D3136342E36362C3230392E
- 373520632D39382E39362C38302E30392D3230392E38332C3133392E39322D33
- 32372E332C3138382E3431632D32342E34322C31302E30382D33332E32392C35
- 2E32352D34342E32322D31382E3637632D3132302E39352D3236342E35392D32
- 34332E34342D3532382E34382D3336352E33362D3739322E363320632D313635
- 2E32392D3335382E312D3333302E34332D3731362E32372D3439352E36372D31
- 3037342E3339632D33382E34382D38332E33392D37372E30392D3136362E3731
- 2D3131352E35372D3235302E312043333831342E33332C353133392E30342C33
- 3831322E36382C353133332E36362C333831302E31352C353132362E39357A22
- 2066696C6C3D2223666666666666222F3E0D0A20202020202020203C70617468
- 20636C6173733D227374332220643D224D20343038312E3520363033382E3539
- 204320343037372E363320363033302E323620343036352E353920363032312E
- 343620343035362E3520363032302E3434204320333837372E39352036303030
- 2E333820333639392E353320353937382E333920333532302E35332035393633
- 2E3331204320333339352E323720353935322E373620333236392E3420353936
- 302E333220333134342E373920353937372E3938204320333035362E35372035
- 3939302E343820323937302E323120363031312E343420323839312E31203630
- 35342E3832204320323834342E363420363038302E3320323831302E30322036
- 3131342E343920323738382E393720363136362E3038204320323732372E3835
- 20363331352E393120323636322E3520363436342E303220323539382E373420
- 363631322E3737204320323536352E363420363638392E393920323533322E34
- 20363736372E313620323439372E313320363834392E3233204320323530352E
- 343320363834362E373520323530382E363820363834352E383720323531312E
- 383720363834342E38204320323638352E333720363738362E35382032383635
- 2E313720363736392E383920333034362E3420363736392E3732204320333135
- 342E343820363736392E363220333236322E373720363737372E333120333337
- 302E353920363738362E3131204320333437362E323720363739342E37342033
- 3538312E393120363830362E323920333638362E373820363832312E38352043
- 20333832332E323520363834322E303920333935382E393520363836372E3536
- 20343039372E393820363839312E3239204320343136332E333420363737332E
- 353420343233302E333820363635332E313120343239362E3720363533322E32
- 38204320343330302E313220363532362E303520343330302E30352036353135
- 2E313720343239372E303320363530382E3533204320343232352E3737203633
- 35312E363220343135342E303920363139342E383920343038312E3520363033
- 382E3539205A204D20333036302E303720363136322E3336204320333034352E
- 393420363136362E363920333033312E303720363137372E343120333032322E
- 333920363138392E34204320323932362E343220363332312E39372032383331
- 2E353920363435352E333620323733362E363120363538382E36342043203237
- 33342E303220363539322E323720323733332E323820363539372E3232203237
- 33312E363720363630312E3535204320323732392E313920363539392E343120
- 323732362E373120363539372E323820323732342E323320363539352E313420
- 4320323734302E373120363536302E303320323735362E393520363532342E38
- 3120323737332E373220363438392E3834204320323832392E31332036333734
- 2E323620323838342E343120363235382E363220323934302E38312036313433
- 2E3532204320323934352E393520363133332E303420323935372E3434203631
- 32312E383620323936382E323720363131382E3538204320333038322E373120
- 363038332E393320333139392E353720363036322E383420333331382E393420
- 363035322E3537204320333430372E3420363034342E393620333439342E3437
- 20363034372E353120333538312E333320363036342E3537204320333539302E
- 343620363036362E333620333539392E333420363036392E343420333630382E
- 333320363037312E3933204320333431372E333320363035382E313520333233
- 382E323120363130372E373920333036302E303720363136322E3336205A2220
- 66696C6C3D2223666666666666222F3E0D0A20202020202020203C7061746820
- 636C6173733D227374332220643D224D20353832372E313320343235322E3231
- 204320353830352E3620343131392E373720353738332E383420333938372E33
- 3720353736322E353720333835342E3839204320353734332E36362033373337
- 2E313420353732352E353420333631392E323720353730362E35372033353031
- 2E3533204320353639322E313120333431312E373620353637372E3031203333
- 32322E303620353636312E363720333232392E3534204C20333439312E373820
- 343731382E3637204320333438342E333720343732352E333920333437372E31
- 3420343733382E303720333437382E393520343734352E313720432033343936
- 2E373120343831342E393320333531362E393120343838342E30362033353336
- 2E323720343935322E3938204320333534312E313720343935332E3233203335
- 34342E313320343935332E393720333534362E383520343935332E3433204320
- 333731382E373120343931392E333120333839302E343620343838342E363520
- 343036322E3420343835302E3938204320343339312E343320343738362E3535
- 20343732302E363220343732322E393520353034392E363320343635382E3439
- 204320353331332E323720343630362E383320353537362E3638203435353420
- 353834302E34352034353033204320353836332E363320343439382E35322035
- 3836352E383220343438382E393320353836322E363320343436392E39352043
- 20353835302E343420343339372E343420353833382E393320343332342E3820
- 353832372E313320343235322E3231205A222066696C6C3D2223666666666666
- 222F3E0D0A20202020202020203C673E0D0A202020202020202020203C706174
- 6820636C6173733D227374332220643D224D343538312E352C323433382E3332
- 632D35312E35392C37342E37342D3130332E32332C3134392E34352D3135342E
- 30392C3232332E3038633238342E30322C34382E372C3530382E39352C313635
- 2E35362C3633302E39332C3233362E3038206331382E382C382E35382C33302E
- 33362C372E30342C34352E35322D352E39376339352E32382D38312E37382C31
- 39312E30342D3136332E30312C3238372E31382D3234332E38633139302E3034
- 2D3135392E372C3338302E35382D3331382E38322C3537302E36332D3437382E
- 353120633139392E38312D3136372E38382C3339392E33342D3333362E30382C
- 3539382E39322D3530342E3233632D3332362E33392D3233322E30372D363935
- 2E322D3430372E33312D313039322E32312D3531312E3320632D39312E39312C
- 3133332E37352D3138342E34342C3236372E30382D3237362E36362C3430302E
- 363243343938382E32362C313834382E39332C343738342E39312C323134332E
- 36352C343538312E352C323433382E33327A222066696C6C3D22236666666666
- 66222F3E0D0A202020202020202020203C7061746820636C6173733D22737433
- 2220643D224D333532342E31392C323436372E3438632D32312E34392C37392E
- 38372D34342E36372C3136352E39372D36362E39382C3235302E32376334362E
- 35362D31302E33372C3332332E31372D3131352E322C3731382E38382D38382E
- 3832206331392E30382C312E31362C32382E39372D352E36382C33372E38362D
- 32322E33326338352E332D3135392E36362C3136362E35362D3331312E38352C
- 3235322E342D3437312E3232633132342E30342D3233302E32382C3234372E39
- 392D3436302E36322C3337312E39392D3639302E3933206336362E34322D3132
- 332E33362C3133322E38382D3234362E37312C3230312E31362D3337332E3436
- 632D3133372E33352D31372E32332D3237372E32322D32362E31362D3431392E
- 31332D32362E3136632D3235322E35312C302D3439382E36312C32382E31372D
- 3733352E34332C38312E343520632D362E38342C32382E36332D31342E39352C
- 35362E39372D32322E362C38352E343143333734392E36332C313633302E332C
- 333633362E38332C323034382E38372C333532342E31392C323436372E34387A
- 222066696C6C3D2223666666666666222F3E0D0A202020202020202020203C70
- 61746820636C6173733D227374332220643D224D323534352E38362C31383336
- 2E353363362E36332C37382E31342C31332E33342C3135362E32372C31392E38
- 382C3233342E343263362E332C37352E332C31322E32322C3135302E36332C31
- 382E372C3232352E39312063362E35362C37362E31382C31332E38382C313532
- 2E32392C32302E33342C3232382E343863362E36322C37382E322C31322E3538
- 2C3135362E34372C31382E38362C3233342E3763362E30352C37352E33392C31
- 312E39382C3135302E37392C31382E32382C3232362E31362063352E36392C36
- 382E30382C31312E34332C3133392E36312C31372E37312C3231312E36386337
- 372E33382D37352E36332C3331372E30312D3238392E33312C3631322E34382D
- 3431312E39386331332E37352D352E37312C32372E33382D382E38322C33302E
- 38342D33302E3931206331382E34362D3131372E36372C33362E35322D323135
- 2E32322C35372E30332D3333322E35386332382E36382D3136342E31312C3537
- 2E33332D3332382E32332C38352E392D3439322E33376333352E37372D323035
- 2E35342C37312E35322D3431312E30392C3130372E30362D3631362E36372063
- 352E35392D33322E33332C31302E34392D36342E38322C31352E38362D39392E
- 3336632D3337352E37312C3132342E35342D3732322E35322C3331332E392D31
- 3032372E33322C3535342E3935632D302E31342C302E362D302E33312C312E32
- 312D302E33322C312E382043323534302E36352C313739322E36352C32353433
- 2E39392C313831342E36312C323534352E38362C313833362E35337A22206669
- 6C6C3D2223666666666666222F3E0D0A202020202020202020203C7061746820
- 636C6173733D227374332220643D224D323135312E36392C333630322E303363
- 32382E39352C35382E32362C36322E36312C3132362E34352C39322E34342C31
- 38362E33356336322E38382D3133392E33382C3139342E32362D3334372E3537
- 2C3331382E31332D3438382E37322063362E34312D372E33312C31302E31342D
- 32312E34392C382E31322D33302E3938632D32302E38312D39372E38392D3433
- 2E31342D3138392E36362D36352E30352D3238372E3332632D35372E39312D32
- 35382E312D3131352E38362D3531362E322D3137332E38322D3737342E323920
- 632D31352E32312D36372E37332D33302E35362D3133352E34322D34372E3533
- 2D3231302E3539632D32322E37342C32342E32332D34302E34372C34322E3835
- 2D35372E392C36312E3734632D37322E38332C37382E39362D3135312E35372C
- 3135332E33392D3231362E39362C3233382E3120632D38382E30392C3131342E
- 312D3136382E38332C3233332E38362D3235312E39322C3335312E3835632D31
- 342E30362C32322E36362D32372E38362C34352E35312D34312E342C36382E35
- 3263302E30312C362E362C322E32362C31332E32352C362E30342C32302E3834
- 2043313836352E34312C333032352E35362C323030382E34382C333331332E38
- 322C323135312E36392C333630322E30337A222066696C6C3D22236666666666
- 66222F3E0D0A202020202020202020203C7061746820636C6173733D22737433
- 2220643D224D313436332E33392C333737332E3235633136362E37352C313437
- 2E32342C3333332E35382C3239342E342C3530302E34332C3434312E35336333
- 382C33332E35312C37382E392C36392E33382C3132302E32362C3130352E3631
- 206331352E38332D3132342E38372C35382E322D3237392E37362C3130352E39
- 362D3430312E383763392E31362D32332E34332D302E30342D33372E33322D31
- 322E33312D35332E3738632D3136382E37382D3232362E34322D3333392E3236
- 2D3435322E35352D3530372E39332D3637392E303620632D33372E39392D3531
- 2E30322D37362E33322D3130312E382D3131352E39342D3135342E3632632D34
- 2E34372C382E34312D372E33332C31332E31382D392E36332C31382E32632D35
- 2E39372C31332E30362D31312E38342C32362E31352D31372E36332C33392E32
- 3720632D37382E31392C3138302E32332D3134312E32392C3336382E35382D31
- 38372E37372C3536332E333763312E35342C362E36382C352E30322C31332E35
- 342C392E31322C31372E343143313338352E362C333730342E38342C31343234
- 2E35372C333733382E39372C313436332E33392C333737332E32357A22206669
- 6C6C3D2223666666666666222F3E0D0A202020202020202020203C7061746820
- 636C6173733D227374332220643D224D313933372E322C343837322E30366334
- 342E36352C31352E34352C39342E34392C33322E39342C3134302E32392C3438
- 2E3934632D32362E38322D3136352E37362D31342E37382D3430302E392D3131
- 2E38372D3435312E35362063312E31392D32302E36342D352E36382D33322E32
- 382D32332E38352D34332E3439632D3138392E30382D3131362E35372D333831
- 2E33362D3233352E30332D3536392E39352D3335322E34632D36322E352D3338
- 2E38392D3132352E31332D37372E36322D3139302E39332D3131382E34322063
- 2D32332E32372C3136312E30322D33352E33392C3332352E36342D33352E3339
- 2C3439332E303763302C36322E33382C312E37322C3132342E33352C352E3033
- 2C3138352E393163322E38382C312E36322C362E32352C332E30382C31302E32
- 322C342E34342043313438362E34342C343731352E38312C313731312E37382C
- 343739342E30332C313933372E322C343837322E30367A222066696C6C3D2223
- 666666666666222F3E0D0A202020202020202020203C7061746820636C617373
- 3D227374332220643D224D323235322E39322C353530372E3534632D31312E31
- 382D31392E36322D32322E39352D32322E37342D34332E31352D31372E383863
- 2D3139302E35382C34352E38322D3338362E34352C39322E31382D3537372E31
- 352C3133372E353420632D35342E31352C31322E38382D3130382E33332C3235
- 2E39312D3136332E36322C33392E31386336322E332C3136332E33362C313336
- 2E37332C3332302E36392C3232322E32312C3437302E3836633233342E38342D
- 3132352E34312C3437302E33342D3235302E38322C3730352E34392D3337362E
- 34342043323330352E36382C353632302E312C323239362E39392C353538342E
- 392C323235322E39322C353530372E35347A222066696C6C3D22236666666666
- 66222F3E0D0A202020202020202020203C7061746820636C6173733D22737433
- 2220643D224D313734372E31352C353337332E3531633130342E35392D302E38
- 392C3230392E322D302E31382C3331332E382D302E31386334332E35362C302C
- 38372E31332C302C3133332E36332C3020632D322E36382D31302E33322D3635
- 2E36352D3139302E32372D38352E34342D3238332E3438632D312E32362D382E
- 38352D31352E392D32302E35322D32362E30372D32322E3639632D3233312E38
- 352D34392E34352D3436312E392D39362E38372D3639332E39382D3134352E32
- 3420632D33372E33342D372E37382D37342E39332D31342E38342D3131332E39
- 372D32322E346332312E36322C3136332E38342C35342E37382C3332342E3035
- 2C39382E37342C3437392E373363302E382C302C312E35382C302E30312C322E
- 34312D302E30312043313439392E38382C353337362E352C313632332E35312C
- 353337342E35362C313734372E31352C353337332E35317A222066696C6C3D22
- 23666666666666222F3E0D0A20202020202020203C2F673E0D0A202020202020
- 3C2F673E0D0A202020203C2F673E0D0A202020203C673E0D0A2020202020203C
- 656C6C6970736520636C6173733D22737430222063783D22373335362E313822
- 2063793D223830312E3031222072783D223132342E36222072793D223132352E
- 3731222F3E0D0A202020203C2F673E0D0A20203C2F673E0D0A3C2F7376673E0D
- 0A04000000660069006C006D00560100003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706174682066696C6C3D22233346353142352220643D224D34352C394833
- 76333068343256397A204D32322C3337762D34683476344832327A204D33302C
- 3337762D34683476344833307A204D33382C3337762D34683476344833387A20
- 4D31342C3337762D34683476344831347A204D362C3337762D34683476344836
- 207A204D32322C3135762D34683476344832327A204D33302C3135762D346834
- 76344833307A204D33382C3135762D34683476344833387A204D31342C313576
- 2D34683476344831347A204D362C3135762D346834763448367A222F3E0D0A3C
- 2F7376673E0D0A09000000660069006C006D005F007200650065006C00F90100
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C706174682066696C6C3D22233346
- 353142352220643D224D34332C3339563234682D3476313563302C352C342C39
- 2C392C39762D344334352E322C34342C34332C34312E382C34332C33397A222F
- 3E0D0A202020203C636972636C652066696C6C3D222339304134414522206378
- 3D223234222063793D2232342220723D223139222F3E0D0A202020203C636972
- 636C652066696C6C3D2223333734373446222063783D223234222063793D2232
- 342220723D2232222F3E0D0A202020203C672066696C6C3D2223323533323738
- 223E0D0A20202020202020203C636972636C652063783D223234222063793D22
- 31342220723D2235222F3E0D0A20202020202020203C636972636C652063783D
- 223234222063793D2233342220723D2235222F3E0D0A20202020202020203C63
- 6972636C652063783D223334222063793D2232342220723D2235222F3E0D0A20
- 202020202020203C636972636C652063783D223134222063793D223234222072
- 3D2235222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0A0000006600
- 6C006100730068005F006100750074006F00440100003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C706F6C79676F6E2066696C6C3D22234646433130372220706F
- 696E74733D2233332C32322032332E362C32322033302C352031392C35203133
- 2C32362032312E362C32362031372C3435222F3E0D0A202020203C7061746820
- 66696C6C3D22234634343333362220643D224D34302E382C31342E35682D342E
- 334C33352E362C31374833336C342E352D313268322E336C342E352C3132682D
- 322E364C34302E382C31342E357A204D33372E312C31322E3568334C33382E36
- 2C384C33372E312C31322E357A222F3E0D0A3C2F7376673E0D0A080000006600
- 6C006100730068005F006F006E00C80000003C7376672076657273696F6E3D22
- 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
- 2F737667222076696577426F783D223020302034382034382220656E61626C65
- 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
- 20203C706F6C79676F6E2066696C6C3D22234646433130372220706F696E7473
- 3D2233332C32322032332E362C32322033302C352031392C352031332C323620
- 32312E362C32362031372C3435222F3E0D0A3C2F7376673E0D0A0A0000006600
- 6C006F0077005F0063006800610072007400FC0100003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C706F6C79676F6E2066696C6C3D22234346443844432220706F
- 696E74733D2233352C33362033392C33362033392C32322032362C3232203236
- 2C31332032322C31332032322C323220392C323220392C33362031332C333620
- 31332C32362032322C32362032322C33362032362C33362032362C3236203335
- 2C3236222F3E0D0A202020203C7265637420783D2231372220793D2236222066
- 696C6C3D2223334635314235222077696474683D22313422206865696768743D
- 223130222F3E0D0A202020203C7265637420783D2233322220793D2233322220
- 66696C6C3D2223303042434434222077696474683D2231302220686569676874
- 3D223130222F3E0D0A202020203C7265637420783D22362220793D2233322220
- 66696C6C3D2223303042434434222077696474683D2231302220686569676874
- 3D223130222F3E0D0A202020203C7265637420783D2231392220793D22333222
- 2066696C6C3D2223303042434434222077696474683D22313022206865696768
- 743D223130222F3E0D0A3C2F7376673E0D0A0600000066006F006C0064006500
- 72004F0100003C7376672076657273696F6E3D22312220786D6C6E733D226874
- 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
- 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
- 226E657720302030203438203438223E0D0A202020203C706174682066696C6C
- 3D22234646413030302220643D224D34302C31324832326C2D342D344838632D
- 322E322C302D342C312E382D342C347638683430762D344334342C31332E382C
- 34322E322C31322C34302C31327A222F3E0D0A202020203C706174682066696C
- 6C3D22234646434132382220643D224D34302C31324838632D322E322C302D34
- 2C312E382D342C3476323063302C322E322C312E382C342C342C346833326332
- 2E322C302C342D312E382C342D345631364334342C31332E382C34322E322C31
- 322C34302C31327A222F3E0D0A3C2F7376673E0D0A050000006600720061006D
- 006500DD0300003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
- 6C3D22233339343941422220643D224D34302E362C34302E31682D312E34632D
- 302E322C302D302E332C302D302E352C306C2D332E312D302E34632D322E342D
- 302E332D342E392D302E322D372E332C302E346C2D332E362C302E39632D302E
- 352C302E312D312E312C302E312D312E362C30204C31392E362C3430632D322E
- 342D302E362D342E382D302E372D372E332D302E346C2D332E312C302E34632D
- 302E322C302D302E332C302D302E352C3048372E34632D312E392C302D332E34
- 2D312E352D332E342D332E34763063302D302E342C302E312D302E392C302E32
- 2D312E336C302E322D302E362063312D322E352C312E312D352E332C302E342D
- 372E396C2D302E362D32632D302E322D302E372D302E322D312E332C302D326C
- 302E332D302E3863302E392D322E372C302E382D352E372D302E322D382E346C
- 2D302E312D302E3343342E312C31332E312C342C31322E372C342C31322E3376
- 2D312063302D312E392C312E352D332E342C332E342D332E346C312E342C3063
- 302E322C302C302E332C302C302E352C306C332E312C302E3463322E342C302E
- 332C342E392C302E322C372E332D302E346C332E362D302E3963302E352D302E
- 312C312E312D302E312C312E362C304C32382E342C382063322E342C302E362C
- 342E382C302E372C372E332C302E346C332E312D302E3463302E322C302C302E
- 332C302C302E352C306C312E342C3063312E392C302C332E342C312E352C332E
- 342C332E34763163302C302E342D302E312C302E392D302E322C312E336C2D30
- 2E312C302E3320632D312E312C322E372D312E322C352E362D302E322C382E34
- 6C302E332C302E3863302E322C302E362C302E322C312E332C302C326C2D302E
- 362C32632D302E372C322E362D302E362C352E342C302E342C372E396C302E32
- 2C302E3663302E322C302E342C302E322C302E382C302E322C312E3376302043
- 34342C33382E362C34322E352C34302E312C34302E362C34302E317A222F3E0D
- 0A202020203C706174682066696C6C3D22234242444546422220643D224D3338
- 2C3336483130632D302E362C302D312D302E342D312D3156313363302D302E36
- 2C302E342D312C312D3168323863302E362C302C312C302E342C312C31763232
- 4333392C33352E362C33382E362C33362C33382C33367A222F3E0D0A3C2F7376
- 673E0D0A0C000000660075006C006C005F006200610074007400650072007900
- 720100003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C672066696C6C3D22233842
- 43333441223E0D0A20202020202020203C7061746820643D224D33342C343448
- 3134632D312E312C302D322D302E392D322D32563863302D312E312C302E392D
- 322C322D3268323063312E312C302C322C302E392C322C327633344333362C34
- 332E312C33352E312C34342C33342C34347A222F3E0D0A20202020202020203C
- 7061746820643D224D32382C3133682D38632D302E362C302D312D302E342D31
- 2D31563563302D302E362C302E342D312C312D31683863302E362C302C312C30
- 2E342C312C3176374332392C31322E362C32382E362C31332C32382C31337A22
- 2F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0A000000660075006C00
- 6C005F0074007200610073006800E90100003C7376672076657273696F6E3D22
- 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
- 2F737667222076696577426F783D223020302034382034382220656E61626C65
- 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
- 20203C706F6C79676F6E2066696C6C3D22234646384136352220706F696E7473
- 3D2232342C32312E332031322E372C31302032362C312E372033382E332C3130
- 222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222346464142393122
- 20706F696E74733D2232342C32312E332031322E372C31302031372C342E3720
- 33382E332C3130222F3E0D0A202020203C706174682066696C6C3D2223423339
- 4444422220643D224D33302E362C34344831372E34632D322C302D332E372D31
- 2E342D342D332E344C392C31316833306C2D342E352C32392E364333342E322C
- 34322E362C33322E352C34342C33302E362C34347A222F3E0D0A202020203C70
- 6174682066696C6C3D22233745353743322220643D224D33382C313348313063
- 2D312E312C302D322D302E392D322D32763063302D312E312C302E392D322C32
- 2D3268323863312E312C302C322C302E392C322C3276304334302C31322E312C
- 33392E312C31332C33382C31337A222F3E0D0A3C2F7376673E0D0A0700000067
- 0061006C006C00650072007900140200003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706174682066696C6C3D22234536353130302220643D224D34312C343248
- 3133632D322E322C302D342D312E382D342D3456313863302D322E322C312E38
- 2D342C342D3468323863322E322C302C342C312E382C342C347632304334352C
- 34302E322C34332E322C34322C34312C34327A222F3E0D0A202020203C706174
- 682066696C6C3D22234635374330302220643D224D33352C33364837632D322E
- 322C302D342D312E382D342D3456313263302D322E322C312E382D342C342D34
- 68323863322E322C302C342C312E382C342C347632304333392C33342E322C33
- 372E322C33362C33352C33367A222F3E0D0A202020203C636972636C65206669
- 6C6C3D2223464646394334222063783D223330222063793D2231362220723D22
- 33222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223393432413039
- 2220706F696E74733D2231372C31372E3920382C33312032362C3331222F3E0D
- 0A202020203C706F6C79676F6E2066696C6C3D22234246333630432220706F69
- 6E74733D2232382C32332E352032322C33312033342C3331222F3E0D0A3C2F73
- 76673E0D0A09000000670065006E00650061006C006F0067007900EC0200003C
- 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
- 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
- 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
- 30203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D222343
- 46443844432220706F696E74733D2234302C392034302C372033312C37203331
- 2C31322032342C31322031352C31322031352C323320382C323320382C323520
- 31352C32352031352C33362032342C33362033312C33362033312C3431203430
- 2C34312034302C33392033332C33392033332C33312034302C33312034302C32
- 392033312C32392033312C33342032342C33342031372C33342031372C313420
- 32342C31342033312C31342033312C31392034302C31392034302C3137203333
- 2C31372033332C39222F3E0D0A202020203C7265637420783D22342220793D22
- 3230222066696C6C3D2223303042434434222077696474683D22382220686569
- 6768743D2238222F3E0D0A202020203C672066696C6C3D222333463531423522
- 3E0D0A20202020202020203C7265637420783D2233362220793D223134222077
- 696474683D223822206865696768743D2238222F3E0D0A20202020202020203C
- 7265637420783D2233362220793D2234222077696474683D2238222068656967
- 68743D2238222F3E0D0A20202020202020203C7265637420783D223230222079
- 3D2239222077696474683D223822206865696768743D2238222F3E0D0A202020
- 20202020203C7265637420783D2232302220793D223331222077696474683D22
- 3822206865696768743D2238222F3E0D0A20202020202020203C726563742078
- 3D2233362220793D223336222077696474683D223822206865696768743D2238
- 222F3E0D0A20202020202020203C7265637420783D2233362220793D22323622
- 2077696474683D223822206865696768743D2238222F3E0D0A202020203C2F67
- 3E0D0A3C2F7376673E0D0A13000000670065006E0065007200690063005F0073
- 006F007200740069006E0067005F00610073006300AD0100003C737667207665
- 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
- 72672F323030302F737667222076696577426F783D2230203020343820343822
- 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
- 38223E0D0A202020203C7265637420783D22362220793D2236222066696C6C3D
- 2223323139364633222077696474683D223422206865696768743D2234222F3E
- 0D0A202020203C7265637420783D22362220793D223134222066696C6C3D2223
- 323139364633222077696474683D22313222206865696768743D2234222F3E0D
- 0A202020203C7265637420783D22362220793D223232222066696C6C3D222332
- 3139364633222077696474683D22323022206865696768743D2234222F3E0D0A
- 202020203C7265637420783D22362220793D223330222066696C6C3D22233231
- 39364633222077696474683D22323822206865696768743D2234222F3E0D0A20
- 2020203C7265637420783D22362220793D223338222066696C6C3D2223323139
- 364633222077696474683D22333622206865696768743D2234222F3E0D0A3C2F
- 7376673E0D0A14000000670065006E0065007200690063005F0073006F007200
- 740069006E0067005F006400650073006300AD0100003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C7265637420783D22362220793D223338222066696C6C3D2223
- 323139364633222077696474683D223422206865696768743D2234222F3E0D0A
- 202020203C7265637420783D22362220793D223330222066696C6C3D22233231
- 39364633222077696474683D22313222206865696768743D2234222F3E0D0A20
- 2020203C7265637420783D22362220793D223232222066696C6C3D2223323139
- 364633222077696474683D22323022206865696768743D2234222F3E0D0A2020
- 20203C7265637420783D22362220793D223134222066696C6C3D222332313936
- 4633222077696474683D22323822206865696768743D2234222F3E0D0A202020
- 203C7265637420783D22362220793D2236222066696C6C3D2223323139364633
- 222077696474683D22333622206865696768743D2234222F3E0D0A3C2F737667
- 3E0D0A0500000067006C006F0062006500530900003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22233743423334322220643D224D3234
- 2C344331332C342C342C31332C342C323473392C32302C32302C32307332302D
- 392C32302D32305333352C342C32342C347A222F3E0D0A202020203C70617468
- 2066696C6C3D22233032373742442220643D224D34352C323463302C31312E37
- 2D392E352C32312D32312C323153332C33352E372C332C32345331322E332C33
- 2C32342C335334352C31322E332C34352C32347A204D32332E382C33332E3763
- 302D302E342D302E322D302E362D302E362D302E3820632D312E332D302E342D
- 322E352D302E342D332E362D312E35632D302E322D302E342D302E322D302E38
- 2D302E342D312E33632D302E342D302E342D312E352D302E362D322E312D302E
- 38632D302E382C302D312E372C302D322E372C30632D302E342C302D312E312C
- 302D312E352C3020632D302E362D302E322D312E312D312E312D312E352D312E
- 3763302D302E322C302D302E362D302E342D302E36632D302E342D302E322D30
- 2E382C302E322D312E332C30632D302E322D302E322D302E322D302E342D302E
- 322D302E3663302D302E362C302E342D312E332C302E382D312E372063302E36
- 2D302E342C312E332C302E322C312E392C302E3263302E322C302C302E322C30
- 2C302E342C302E3263302E362C302E322C302E382C312C302E382C312E376330
- 2C302E322C302C302E342C302C302E3463302C302E322C302E322C302E322C30
- 2E342C302E322063302E322D312E312C302E322D322E312C302E342D332E3263
- 302D312E332C312E332D322E352C322E332D322E3963302E342D302E322C302E
- 362C302E322C312E312C3063312E332D302E342C342E342D312E372C332E382D
- 332E34632D302E342D312E352D312E372D322E392D332E342D322E3720632D30
- 2E342C302E322D302E362C302E342D312C302E36632D302E362C302E342D312E
- 392C312E372D322E352C312E37632D312E312D302E322D312E312D312E372D30
- 2E382D322E3363302E322D302E382C322E312D332E362C332E342D332E316330
- 2E322C302E322C302E362C302E362C302E382C302E382063302E342C302E322C
- 312E312C302E322C312E372C302E3263302E322C302C302E342C302C302E362D
- 302E3263302E322D302E322C302E322D302E322C302E322D302E3463302D302E
- 362D302E362D312E332D312D312E37632D302E342D302E342D312E312D302E38
- 2D312E372D312E3120632D322E312D302E362D352E352C302E322D372E312C31
- 2E37732D322E392C342D332E382C362E31632D302E342C312E332D302E382C32
- 2E392D312C342E34632D302E322C312D302E342C312E392C302E322C322E3963
- 302E362C312E332C312E392C322E352C332E322C332E342063302E382C302E36
- 2C322E352C302E362C332E342C312E3763302E362C302E382C302E342C312E39
- 2C302E342C322E3963302C312E332C302E382C322E332C312E332C332E346330
- 2E322C302E362C302E342C312E352C302E362C322E3163302C302E322C302E32
- 2C312E352C302E322C312E372063312E332C302E362C322E332C312E332C332E
- 382C312E3763302E322C302C312D312E332C312D312E3563302E362D302E362C
- 312E312D312E352C312E372D312E3963302E342D302E322C302E382D302E342C
- 312E332D302E3863302E342D302E342C302E362D312E332C302E382D312E3920
- 4332332E382C33352E312C32342C33342E332C32332E382C33332E377A204D32
- 342E322C31342E3363302E322C302C302E342D302E322C302E382D302E346330
- 2E362D302E342C312E332D312E312C312E392D312E3563302E362D302E342C31
- 2E332D312E312C312E372D312E352063302E362D302E342C312E312D312E332C
- 312E332D312E3963302E322D302E342C302E382D312E332C302E362D312E3963
- 2D302E322D302E342D312E332D302E362D312E372D302E38632D312E372D302E
- 342D332E312D302E362D342E382D302E36632D302E362C302D312E352C302E32
- 2D312E372C302E3820632D302E322C312E312C302E362C302E382C312E352C31
- 2E3163302C302C302E322C312E372C302E322C312E3963302E322C312D302E34
- 2C312E372D302E342C322E3763302C302E362C302C312E372C302E342C322E31
- 4C32342E322C31342E337A204D34312E382C32392063302E322D302E342C302E
- 322D312E312C302E342D312E3563302E322D312C302E322D322E312C302E322D
- 332E3163302D322E312D302E322D342E322D302E382D362E31632D302E342D30
- 2E362D302E362D312E332D302E382D312E39632D302E342D312E312D312D322E
- 312D312E392D322E3920632D302E382D312E312D312E392D342D332E382D332E
- 31632D302E362C302E322D312C312D312E352C312E35632D302E342C302E362D
- 302E382C312E332D312E332C312E39632D302E322C302E322D302E342C302E36
- 2D302E322C302E3863302C302E322C302E322C302E322C302E342C302E322063
- 302E342C302E322C302E362C302E322C312C302E3463302E322C302C302E342C
- 302E322C302E322C302E3463302C302C302C302E322D302E322C302E32632D31
- 2C312E312D322E312C312E392D332E312C322E39632D302E322C302E322D302E
- 342C302E362D302E342C302E382063302C302E322C302E322C302E322C302E32
- 2C302E3463302C302E322D302E322C302E322D302E342C302E34632D302E342C
- 302E322D302E382C302E342D312E312C302E36632D302E322C302E342C302C31
- 2E312D302E322C312E35632D302E322C312E312D302E382C312E392D312E332C
- 322E3920632D302E342C302E362D302E362C312E332D312C312E3963302C302E
- 382D302E322C312E352C302E322C322E3163312C312E352C322E392C302E362C
- 342E342C312E3363302E342C302E322C302E382C302E322C312E312C302E3663
- 302E362C302E362C302E362C312E372C302E382C322E332063302E322C302E38
- 2C302E342C312E372C302E382C322E3563302E322C312C302E362C322E312C30
- 2E382C322E3963312E392D312E352C332E362D332E312C342E382D352E324334
- 302E362C33322E342C34312E322C33302E372C34312E382C32397A222F3E0D0A
- 3C2F7376673E0D0A0D00000067006F006F0064005F0064006500630069007300
- 69006F006E00790200003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C672066696C
- 6C3D2223464643433830223E0D0A20202020202020203C636972636C65206378
- 3D223338222063793D2232362220723D2234222F3E0D0A20202020202020203C
- 636972636C652063783D223130222063793D2232362220723D2234222F3E0D0A
- 20202020202020203C7061746820643D224D33392C313963302D31322E372D33
- 302D382E332D33302C3063302C312E382C302C382E322C302C313063302C382E
- 332C362E372C31352C31352C31357331352D362E372C31352D31354333392C32
- 372E322C33392C32302E382C33392C31397A222F3E0D0A20202020202020203C
- 7061746820643D224D32342C344331352E322C342C382C31312E322C382C3230
- 63302C312E322C302C332E352C302C332E356C322E312C302E365631396C3139
- 2E352D362E336C382E322C362E3376352E316C322E312D302E3663302C302C30
- 2D322E332C302D332E35204334302C31322E352C33342E362C342C32342C347A
- 222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223344341
- 463530223E0D0A20202020202020203C7265637420783D2232322220793D2231
- 36222077696474683D223422206865696768743D223138222F3E0D0A20202020
- 202020203C7265637420783D2231352220793D223233222077696474683D2231
- 3822206865696768743D2234222F3E0D0A202020203C2F673E0D0A3C2F737667
- 3E0D0A0600000067006F006F0067006C006500660500003C3F786D6C20766572
- 73696F6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A3C
- 212D2D2047656E657261746F723A2041646F626520496C6C7573747261746F72
- 2031352E302E302C20535647204578706F727420506C75672D496E202E205356
- 472056657273696F6E3A20362E3030204275696C6420302920202D2D3E0D0A3C
- 21444F435459504520737667205055424C494320222D2F2F5733432F2F445444
- 2053564720312E312F2F454E222022687474703A2F2F7777772E77332E6F7267
- 2F47726170686963732F5356472F312E312F4454442F73766731312E64746422
- 3E0D0A3C7376672076657273696F6E3D22312E31222020786D6C6E733D226874
- 74703A2F2F7777772E77332E6F72672F323030302F7376672220786D6C6E733A
- 786C696E6B3D22687474703A2F2F7777772E77332E6F72672F313939392F786C
- 696E6B2220783D223070782220793D22307078220D0A092077696474683D2234
- 38707822206865696768743D2234387078222076696577426F783D2230203020
- 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
- 302034382034382220786D6C3A73706163653D227072657365727665223E0D0A
- 3C706174682066696C6C3D22234646433130372220643D224D34332E3631312C
- 32302E30383348343256323048323476386831312E333033632D312E3634392C
- 342E3635372D362E30382C382D31312E3330332C38632D362E3632372C302D31
- 322D352E3337332D31322D31320D0A0963302D362E3632372C352E3337332D31
- 322C31322D313263332E3035392C302C352E3834322C312E3135342C372E3936
- 312C332E3033396C352E3635372D352E3635374333342E3034362C362E303533
- 2C32392E3236382C342C32342C344331322E3935352C342C342C31322E393535
- 2C342C32340D0A0963302C31312E3034352C382E3935352C32302C32302C3230
- 6331312E3034352C302C32302D382E3935352C32302D32304334342C32322E36
- 35392C34332E3836322C32312E33352C34332E3631312C32302E3038337A222F
- 3E0D0A3C706174682066696C6C3D22234646334430302220643D224D362E3330
- 362C31342E3639316C362E3537312C342E3831394331342E3635352C31352E31
- 30382C31382E3936312C31322C32342C313263332E3035392C302C352E383432
- 2C312E3135342C372E3936312C332E3033396C352E3635372D352E3635370D0A
- 094333342E3034362C362E3035332C32392E3236382C342C32342C344331362E
- 3331382C342C392E3635362C382E3333372C362E3330362C31342E3639317A22
- 2F3E0D0A3C706174682066696C6C3D22233443414635302220643D224D32342C
- 343463352E3136362C302C392E38362D312E3937372C31332E3430392D352E31
- 39326C2D362E31392D352E3233384332392E3231312C33352E3039312C32362E
- 3731352C33362C32342C33360D0A09632D352E3230322C302D392E3631392D33
- 2E3331372D31312E3238332D372E3934366C2D362E3532322C352E3032354339
- 2E3530352C33392E3535362C31362E3232372C34342C32342C34347A222F3E0D
- 0A3C706174682066696C6C3D22233139373644322220643D224D34332E363131
- 2C32302E30383348343256323048323476386831312E333033632D302E373932
- 2C322E3233372D322E3233312C342E3136362D342E3038372C352E3537310D0A
- 0963302E3030312D302E3030312C302E3030322D302E3030312C302E3030332D
- 302E3030326C362E31392C352E3233384333362E3937312C33392E3230352C34
- 342C33342C34342C32344334342C32322E3635392C34332E3836322C32312E33
- 352C34332E3631312C32302E3038337A222F3E0D0A3C2F7376673E0D0A0E0000
- 00670072006100640075006100740069006F006E005F00630061007000E70200
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C672066696C6C3D22233337343734
- 46223E0D0A20202020202020203C7265637420783D22392220793D2232302220
- 77696474683D22333022206865696768743D223133222F3E0D0A202020202020
- 20203C656C6C697073652063783D223234222063793D223333222072783D2231
- 35222072793D2236222F3E0D0A202020203C2F673E0D0A202020203C70617468
- 2066696C6C3D22233738393039432220643D224D32332E312C382E324C302E36
- 2C31382E31632D302E382C302E342D302E382C312E352C302C312E396C32322E
- 352C392E3963302E362C302E322C312E322C302E322C312E382C306C32322E35
- 2D392E3963302E382D302E342C302E382D312E352C302D312E39204C32342E39
- 2C382E324332342E332C372E392C32332E372C372E392C32332E312C382E327A
- 222F3E0D0A202020203C672066696C6C3D2223333734373446223E0D0A202020
- 20202020203C7061746820643D224D34332E322C32302E346C2D32302D332E34
- 632D302E352D302E312D312E312C302E332D312E322C302E38632D302E312C30
- 2E352C302E332C312E312C302E382C312E324C34322C32322E3256333763302C
- 302E362C302E342C312C312C312073312D302E342C312D315632312E34433434
- 2C32302E392C34332E362C32302E352C34332E322C32302E347A222F3E0D0A20
- 202020202020203C636972636C652063783D223433222063793D223337222072
- 3D2232222F3E0D0A20202020202020203C7061746820643D224D34362C343063
- 302C312E372D332C362D332C36732D332D342E332D332D3673312E332D332C33
- 2D335334362C33382E332C34362C34307A222F3E0D0A202020203C2F673E0D0A
- 3C2F7376673E0D0A040000006700720069006400C40100003C73766720766572
- 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
- 672F323030302F737667222076696577426F783D223020302034382034382220
- 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
- 223E0D0A202020203C706174682066696C6C3D22233930434146392220643D22
- 4D372C37763334683334563748377A204D33392C3135682D3656396836563135
- 7A204D32352C31355639683676364832357A204D33312C31377636682D36762D
- 364833317A204D32332C3135682D36563968365631357A204D32332C31377636
- 682D36762D36204832337A204D31352C32334839762D3668365632337A204D31
- 352C323576364839762D364831357A204D31372C323568367636682D36563235
- 7A204D32332C33337636682D36762D364832337A204D32352C33336836763668
- 2D365633337A204D32352C3331762D36683676364832357A204D33332C323568
- 367636682D36205632357A204D33332C3233762D36683676364833337A204D31
- 352C397636483956394831357A204D392C33336836763648395633337A204D33
- 332C3339762D36683676364833337A222F3E0D0A3C2F7376673E0D0A07000000
- 6800650061006400730065007400A10100003C7376672076657273696F6E3D22
- 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
- 2F737667222076696577426F783D223020302034382034382220656E61626C65
- 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
- 20203C706174682066696C6C3D22233030393741372220643D224D32342C3543
- 31342E312C352C362C31332E312C362C3233763135683456323363302D372E37
- 2C362E332D31342C31342D31347331342C362E332C31342C3134763135683456
- 32334334322C31332E312C33332E392C352C32342C357A222F3E0D0A20202020
- 3C706174682066696C6C3D22233337343734462220643D224D33382C3433682D
- 34563331683463322E322C302C342C312E382C342C3476344334322C34312E32
- 2C34302E322C34332C33382C34337A222F3E0D0A202020203C70617468206669
- 6C6C3D22233337343734462220643D224D31302C34336834563331682D34632D
- 322E322C302D342C312E382D342C34763443362C34312E322C372E382C34332C
- 31302C34337A222F3E0D0A3C2F7376673E0D0A0800000068006500610074005F
- 006D00610070009F0200003C7376672076657273696F6E3D22312220786D6C6E
- 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E657720302030203438203438223E0D0A202020203C706F6C79
- 676F6E2066696C6C3D22234346443844432220706F696E74733D22392C333920
- 392C3620372C3620372C34312034322C34312034322C3339222F3E0D0A202020
- 203C672066696C6C3D2223303042434434223E0D0A20202020202020203C6369
- 72636C652063783D223134222063793D2231312220723D2232222F3E0D0A2020
- 2020202020203C636972636C652063783D223332222063793D2231312220723D
- 2232222F3E0D0A20202020202020203C636972636C652063783D223339222063
- 793D2231312220723D2232222F3E0D0A20202020202020203C636972636C6520
- 63783D223233222063793D2231312220723D2234222F3E0D0A20202020202020
- 203C636972636C652063783D223134222063793D2233332220723D2232222F3E
- 0D0A20202020202020203C636972636C652063783D223330222063793D223333
- 2220723D2232222F3E0D0A20202020202020203C636972636C652063783D2232
- 32222063793D2233332220723D2233222F3E0D0A20202020202020203C636972
- 636C652063783D223338222063793D2233332220723D2234222F3E0D0A202020
- 20202020203C636972636C652063783D223134222063793D2232322220723D22
- 32222F3E0D0A20202020202020203C636972636C652063783D22333922206379
- 3D2232322220723D2232222F3E0D0A20202020202020203C636972636C652063
- 783D223332222063793D2232322220723D2233222F3E0D0A202020203C2F673E
- 0D0A3C2F7376673E0D0A0C00000068006900670068005F006200610074007400
- 650072007900CD0100003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C672066696C
- 6C3D2223434644384443223E0D0A20202020202020203C7061746820643D224D
- 33342C3434483134632D312E312C302D322D302E392D322D32563863302D312E
- 312C302E392D322C322D3268323063312E312C302C322C302E392C322C327633
- 344333362C34332E312C33352E312C34342C33342C34347A222F3E0D0A202020
- 20202020203C7061746820643D224D32382C3133682D38632D302E362C302D31
- 2D302E342D312D31563563302D302E362C302E342D312C312D31683863302E36
- 2C302C312C302E342C312C3176374332392C31322E362C32382E362C31332C32
- 382C31337A222F3E0D0A202020203C2F673E0D0A202020203C70617468206669
- 6C6C3D22233842433334412220643D224D33342C3434483134632D312E312C30
- 2D322D302E392D322D325631336832347632394333362C34332E312C33352E31
- 2C34342C33342C34347A222F3E0D0A3C2F7376673E0D0A0D0000006800690067
- 0068005F007000720069006F007200690074007900B70200003C737667207665
- 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
- 72672F323030302F737667222076696577426F783D2230203020343820343822
- 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
- 38223E0D0A202020203C706174682066696C6C3D22234634343333362220643D
- 224D32312E322C34342E386C2D31382D3138632D312E362D312E362D312E362D
- 342E312C302D352E376C31382D313863312E362D312E362C342E312D312E362C
- 352E372C306C31382C313863312E362C312E362C312E362C342E312C302C352E
- 376C2D31382C3138204332352E332C34362E342C32322E372C34362E342C3231
- 2E322C34342E387A222F3E0D0A202020203C706174682066696C6C3D22236666
- 662220643D224D32312E362C33322E3763302D302E332C302E312D302E362C30
- 2E322D302E3963302E312D302E332C302E332D302E352C302E352D302E376330
- 2E322D302E322C302E352D302E342C302E382D302E3573302E362D302E322C31
- 2D302E322073302E372C302E312C312C302E3263302E332C302E312C302E362C
- 302E332C302E382C302E3563302E322C302E322C302E342C302E342C302E352C
- 302E3763302E312C302E332C302E322C302E362C302E322C302E39732D302E31
- 2C302E362D302E322C302E39732D302E332C302E352D302E352C302E3720632D
- 302E322C302E322D302E352C302E342D302E382C302E35632D302E332C302E31
- 2D302E362C302E322D312C302E32732D302E372D302E312D312D302E32732D30
- 2E352D302E332D302E382D302E35632D302E322D302E322D302E342D302E342D
- 302E352D302E375332312E362C33332E312C32312E362C33322E377A204D3235
- 2E382C32382E31682D332E364C32312E372C313368342E364C32352E382C3238
- 2E317A222F3E0D0A3C2F7376673E0D0A0400000068006F006D0065009C020000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 4538454146362220706F696E74733D2234322C333920362C333920362C323320
- 32342C362034322C3233222F3E0D0A202020203C672066696C6C3D2223433543
- 414539223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22
- 33392C32312033342C31362033342C392033392C39222F3E0D0A202020202020
- 20203C7265637420783D22362220793D223339222077696474683D2233362220
- 6865696768743D2235222F3E0D0A202020203C2F673E0D0A202020203C706F6C
- 79676F6E2066696C6C3D22234237314331432220706F696E74733D2232342C34
- 2E3320342C32322E3920362C32352E312032342C382E342034322C32352E3120
- 34342C32322E39222F3E0D0A202020203C7265637420783D2231382220793D22
- 3238222066696C6C3D2223443834333135222077696474683D22313222206865
- 696768743D223136222F3E0D0A202020203C7265637420783D2232312220793D
- 223137222066696C6C3D2223303135373942222077696474683D223622206865
- 696768743D2236222F3E0D0A202020203C706174682066696C6C3D2223464638
- 4136352220643D224D32372E352C33352E35632D302E332C302D302E352C302E
- 322D302E352C302E35763263302C302E332C302E322C302E352C302E352C302E
- 355332382C33382E332C32382C3338762D324332382C33352E372C32372E382C
- 33352E352C32372E352C33352E357A222F3E0D0A3C2F7376673E0D0A0A000000
- 690063006F006E00730038005F00630075007000070300003C73766720766572
- 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
- 672F323030302F737667222076696577426F783D223020302034382034382220
- 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
- 223E0D0A202020203C706174682066696C6C3D22233443414635302220643D22
- 4D34302C313448386C332E382C32382E3363302E312C312C312C312E372C322C
- 312E376832302E3563312C302C312E382D302E372C322D312E374C34302C3134
- 7A222F3E0D0A202020203C672066696C6C3D2223383143373834223E0D0A2020
- 2020202020203C7061746820643D224D34322C31344836762D3363302D322E32
- 2C312E382D342C342D3468323863322E322C302C342C312E382C342C34563134
- 7A222F3E0D0A20202020202020203C7061746820643D224D33372E322C313048
- 31302E386C312E372D342E3763302E332D302E382C312D312E332C312E392D31
- 2E336831392E3263302E382C302C312E362C302E352C312E392C312E334C3337
- 2E322C31307A222F3E0D0A202020203C2F673E0D0A202020203C706174682066
- 696C6C3D22234538463545392220643D224D32382C32382E3563312E322D312E
- 312C322D322E372C322D342E3563302D332E332D322E372D362D362D36632D33
- 2E332C302D362C322E372D362C3663302C312E382C302E382C332E342C322C34
- 2E35632D312E322C312E312D322C322E372D322C342E352063302C332E332C32
- 2E372C362C362C3663332E332C302C362D322E372C362D364333302C33312E32
- 2C32392E322C32392E362C32382C32382E357A204D32342C3336632D312E372C
- 302D332D312E332D332D3363302D312E372C312E332D332C332D3363312E372C
- 302C332C312E332C332C33204332372C33342E372C32352E372C33362C32342C
- 33367A204D32342C3237632D312E372C302D332D312E332D332D3363302D312E
- 372C312E332D332C332D3363312E372C302C332C312E332C332C334332372C32
- 352E372C32352E372C32372C32342C32377A222F3E0D0A3C2F7376673E0D0A04
- 0000006900640065006100160400003C7376672076657273696F6E3D22312220
- 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
- 67222076696577426F783D223020302034382034382220656E61626C652D6261
- 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
- 636972636C652066696C6C3D2223464646353944222063783D22323422206379
- 3D2232322220723D223230222F3E0D0A202020203C706174682066696C6C3D22
- 234642433032442220643D224D33372C323263302D372E372D362E362D31332E
- 382D31342E352D31322E39632D362C302E372D31302E382C352E352D31312E34
- 2C31312E35632D302E352C342E362C312E342C382E372C342E362C31312E3320
- 63312E342C312E322C322E332C322E392C322E332C342E38563337683132762D
- 302E3163302D312E382C302E382D332E362C322E322D342E384333352E312C32
- 392E372C33372C32362E312C33372C32327A222F3E0D0A202020203C70617468
- 2066696C6C3D22234646463539442220643D224D33302E362C32302E326C2D33
- 2D32632D302E332D302E322D302E382D302E322D312E312C304C32342C31392E
- 386C2D322E342D312E36632D302E332D302E322D302E382D302E322D312E312C
- 306C2D332C3220632D302E322C302E322D302E342C302E342D302E342C302E37
- 73302C302E362C302E322C302E386C332E382C342E3756333768325632366330
- 2D302E322D302E312D302E342D302E322D302E366C2D332E332D342E316C312E
- 352D316C322E342C312E3663302E332C302E322C302E382C302E322C312E312C
- 30206C322E342D312E366C312E352C316C2D332E332C342E314332352E312C32
- 352E362C32352C32352E382C32352C323676313168325632362E346C332E382D
- 342E3763302E322D302E322C302E332D302E352C302E322D302E385333302E38
- 2C32302E332C33302E362C32302E327A222F3E0D0A202020203C636972636C65
- 2066696C6C3D2223354336424330222063783D223234222063793D2234342220
- 723D2233222F3E0D0A202020203C706174682066696C6C3D2223394641384441
- 2220643D224D32362C3435682D34632D322E322C302D342D312E382D342D3476
- 2D3568313276354333302C34332E322C32382E322C34352C32362C34357A222F
- 3E0D0A202020203C672066696C6C3D2223354336424330223E0D0A2020202020
- 2020203C7061746820643D224D33302C34316C2D31312E362C312E3663302E33
- 2C302E372C302E392C312E342C312E362C312E386C392E342D312E334332392E
- 382C34322E352C33302C34312E382C33302C34317A222F3E0D0A202020202020
- 20203C706F6C79676F6E20706F696E74733D2231382C33382E372031382C3430
- 2E372033302C33392033302C3337222F3E0D0A202020203C2F673E0D0A3C2F73
- 76673E0D0A0A00000069006D006100670065005F00660069006C006500A30100
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22
- 233930434146392220706F696E74733D2234302C343520382C343520382C3320
- 33302C332034302C3133222F3E0D0A202020203C706F6C79676F6E2066696C6C
- 3D22234531463546452220706F696E74733D2233382E352C31342032392C3134
- 2032392C342E35222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 3135363543302220706F696E74733D2232312C32332031342C33332032382C33
- 33222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223313937364432
- 2220706F696E74733D2232382C32362E342032332C33332033332C3333222F3E
- 0D0A202020203C636972636C652066696C6C3D2223313937364432222063783D
- 2233312E35222063793D2232342E352220723D22312E35222F3E0D0A3C2F7376
- 673E0D0A0600000069006D0070006F0072007400710100003C73766720766572
- 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
- 672F323030302F737667222076696577426F783D223020302034382034382220
- 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
- 223E0D0A202020203C706174682066696C6C3D22234638424244302220643D22
- 4D372C3430563863302D322E322C312E382D342C342D3468323463322E322C30
- 2C342C312E382C342C3476333263302C322E322D312E382C342D342C34483131
- 43382E382C34342C372C34322E322C372C34307A222F3E0D0A202020203C6720
- 66696C6C3D2223453931453633223E0D0A20202020202020203C706F6C79676F
- 6E20706F696E74733D2231332E332C32342032342C31352032342C3333222F3E
- 0D0A20202020202020203C7265637420783D2231392220793D22323122207769
- 6474683D22323322206865696768743D2236222F3E0D0A202020203C2F673E0D
- 0A3C2F7376673E0D0A0A00000069006E005F007400720061006E007300690074
- 00E20400003C7376672076657273696F6E3D22312220786D6C6E733D22687474
- 703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F78
- 3D223020302034382034382220656E61626C652D6261636B67726F756E643D22
- 6E657720302030203438203438223E0D0A202020203C706174682066696C6C3D
- 22234646433130372220643D224D34342C333648333056313663302D312E312C
- 302E392D322C322D32683863302E362C302C312E322C302E332C312E362C302E
- 386C362C372E3763302E332C302E342C302E342C302E382C302E342C312E3256
- 3332204334382C33342E322C34362E322C33362C34342C33367A222F3E0D0A20
- 2020203C672066696C6C3D2223393537354344223E0D0A20202020202020203C
- 7061746820643D224D382C333668323256313363302D322E322D312E382D342D
- 342D34483476323343342C33342E322C352E382C33362C382C33367A222F3E0D
- 0A20202020202020203C7265637420793D2239222077696474683D2231302220
- 6865696768743D2232222F3E0D0A20202020202020203C7265637420793D2231
- 34222077696474683D22313022206865696768743D2232222F3E0D0A20202020
- 202020203C7265637420793D223139222077696474683D223130222068656967
- 68743D2232222F3E0D0A20202020202020203C7265637420793D223234222077
- 696474683D22313022206865696768743D2232222F3E0D0A202020203C2F673E
- 0D0A202020203C672066696C6C3D2223374535374332223E0D0A202020202020
- 20203C7265637420783D22342220793D223131222077696474683D2231362220
- 6865696768743D2232222F3E0D0A20202020202020203C7265637420783D2234
- 2220793D223136222077696474683D22313222206865696768743D2232222F3E
- 0D0A20202020202020203C7265637420783D22342220793D2232312220776964
- 74683D223822206865696768743D2232222F3E0D0A20202020202020203C7265
- 637420783D22342220793D223236222077696474683D22342220686569676874
- 3D2232222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223
- 333734373446223E0D0A20202020202020203C636972636C652063783D223339
- 222063793D2233362220723D2235222F3E0D0A20202020202020203C63697263
- 6C652063783D223136222063793D2233362220723D2235222F3E0D0A20202020
- 3C2F673E0D0A202020203C672066696C6C3D2223373839303943223E0D0A2020
- 2020202020203C636972636C652063783D223339222063793D2233362220723D
- 22322E35222F3E0D0A20202020202020203C636972636C652063783D22313622
- 2063793D2233362220723D22322E35222F3E0D0A202020203C2F673E0D0A2020
- 20203C706174682066696C6C3D22233435354136342220643D224D34342C3236
- 682D332E36632D302E332C302D302E352D302E312D302E372D302E336C2D312E
- 342D312E34632D302E322D302E322D302E342D302E332D302E372D302E334833
- 34632D302E362C302D312D302E342D312D31762D362063302D302E362C302E34
- 2D312C312D3168352E3563302E332C302C302E362C302E312C302E382C302E34
- 6C342E352C352E3463302E312C302E322C302E322C302E342C302E322C302E36
- 5632354334352C32352E362C34342E362C32362C34342C32367A222F3E0D0A3C
- 2F7376673E0D0A0400000069006E0066006F001B0100003C7376672076657273
- 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
- 2F323030302F737667222076696577426F783D22302030203438203438222065
- 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
- 3E0D0A202020203C636972636C652066696C6C3D222332313936463322206378
- 3D223234222063793D2232342220723D223231222F3E0D0A202020203C726563
- 7420783D2232322220793D223232222066696C6C3D2223666666222077696474
- 683D223422206865696768743D223131222F3E0D0A202020203C636972636C65
- 2066696C6C3D2223666666222063783D223234222063793D2231362E35222072
- 3D22322E35222F3E0D0A3C2F7376673E0D0A0A00000069006E00730070006500
- 6300740069006F006E00EF0200003C7376672076657273696F6E3D2231222078
- 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
- 222076696577426F783D223020302034382034382220656E61626C652D626163
- 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C70
- 6174682066696C6C3D22233435354136342220643D224D33362C344832366330
- 2C312E312D302E392C322D322C32732D322D302E392D322D3248313243392E38
- 2C342C382C352E382C382C3876333263302C322E322C312E382C342C342C3468
- 323463322E322C302C342D312E382C342D345638204334302C352E382C33382E
- 322C342C33362C347A222F3E0D0A202020203C706174682066696C6C3D222366
- 66662220643D224D33362C3431483132632D302E362C302D312D302E342D312D
- 31563863302D302E362C302E342D312C312D3168323463302E362C302C312C30
- 2E342C312C317633324333372C34302E362C33362E362C34312C33362C34317A
- 222F3E0D0A202020203C672066696C6C3D2223393041344145223E0D0A202020
- 20202020203C7061746820643D224D32362C3463302C312E312D302E392C322D
- 322C32732D322D302E392D322D32682D37763463302C312E312C302E392C322C
- 322C3268313463312E312C302C322D302E392C322D3256344832367A222F3E0D
- 0A20202020202020203C7061746820643D224D32342C30632D322E322C302D34
- 2C312E382D342C3473312E382C342C342C3473342D312E382C342D345332362E
- 322C302C32342C307A204D32342C36632D312E312C302D322D302E392D322D32
- 73302E392D322C322D3273322C302E392C322C32205332352E312C362C32342C
- 367A222F3E0D0A202020203C2F673E0D0A202020203C706F6C79676F6E206669
- 6C6C3D22233443414635302220706F696E74733D2233302E362C31382E362032
- 312E362C32372E362031372E342C32332E332031342E392C32352E382032312E
- 372C33322E352033332E312C32312E31222F3E0D0A3C2F7376673E0D0A110000
- 0069006E00740065006700720061007400650064005F00770065006200630061
- 006D003A0200003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
- 6C3D22233630374438422220643D224D33382C3432483130632D322E322C302D
- 342D312E382D342D3456313063302D322E322C312E382D342C342D3468323863
- 322E322C302C342C312E382C342C347632384334322C34302E322C34302E322C
- 34322C33382C34327A222F3E0D0A202020203C636972636C652066696C6C3D22
- 23343535413634222063783D223234222063793D2232342220723D223132222F
- 3E0D0A202020203C636972636C652066696C6C3D222334324135463522206378
- 3D223234222063793D2232342220723D2239222F3E0D0A202020203C70617468
- 2066696C6C3D22233930434146392220643D224D32382E382C3231632D312E32
- 2D312E342D332D322E322D342E382D322E32732D332E362C302E382D342E382C
- 322E32632D302E352C302E352D302E342C312E332C302E312C312E3863302E35
- 2C302E352C312E332C302E342C312E382D302E312063312E352D312E372C342E
- 332D312E372C352E382C3063302E332C302E332C302E362C302E342C312C302E
- 3463302E332C302C302E362D302E312C302E392D302E334332392E322C32322E
- 342C32392E332C32312E352C32382E382C32317A222F3E0D0A3C2F7376673E0D
- 0A0800000069006E007400650072006E0061006C00300100003C737667207665
- 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
- 72672F323030302F737667222076696577426F783D2230203020343820343822
- 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
- 38223E0D0A202020203C636972636C652066696C6C3D22234233453546432220
- 63783D223234222063793D2233302220723D223135222F3E0D0A202020203C67
- 2066696C6C3D2223313536354330223E0D0A20202020202020203C706F6C7967
- 6F6E20706F696E74733D2232342C33382E372031352C32382033332C3238222F
- 3E0D0A20202020202020203C7265637420783D2232312220793D223522207769
- 6474683D223622206865696768743D223236222F3E0D0A202020203C2F673E0D
- 0A3C2F7376673E0D0A0600000069006E0076006900740065003A0200003C7376
- 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
- 77332E6F72672F323030302F737667222076696577426F783D22302030203438
- 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
- 3438203438223E0D0A202020203C706174682066696C6C3D2223373839303943
- 2220643D224D34302C34314838632D322E322C302D342D312E382D342D346C30
- 2D32302E3963302D312E332C302E362D322E352C312E372D332E334C32342C30
- 6C31382E332C31322E3863312E312C302E372C312E372C322C312E372C332E33
- 563337204334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A
- 202020203C7265637420783D2231322220793D223131222066696C6C3D222366
- 6666222077696474683D22323422206865696768743D223232222F3E0D0A2020
- 20203C706174682066696C6C3D22234346443844432220643D224D34302C3431
- 4838632D322E322C302D342D312E382D342D346C302D32306C32302C31336C32
- 302D31337632304334342C33392E322C34322E322C34312C34302C34317A222F
- 3E0D0A202020203C672066696C6C3D2223344341463530223E0D0A2020202020
- 2020203C7265637420783D2232322220793D223134222077696474683D223422
- 206865696768743D223132222F3E0D0A20202020202020203C7265637420783D
- 2231382220793D223138222077696474683D22313222206865696768743D2234
- 222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A040000006900700061
- 006400950100003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
- 6C3D22234533383933392220643D224D382C3431563763302D322E322C312E38
- 2D342C342D3468323463322E322C302C342C312E382C342C3476333463302C32
- 2E322D312E382C342D342C3448313243392E382C34352C382C34332E322C382C
- 34317A222F3E0D0A202020203C706174682066696C6C3D222346464633453022
- 20643D224D33362C36483132632D302E362C302D312C302E342D312C31763331
- 63302C302E362C302E342C312C312C3168323463302E362C302C312D302E342C
- 312D3156374333372C362E342C33362E362C362C33362C367A222F3E0D0A2020
- 20203C636972636C652066696C6C3D2223413636343241222063783D22323422
- 2063793D2234322220723D22312E35222F3E0D0A3C2F7376673E0D0A06000000
- 6900700068006F006E006500990100003C7376672076657273696F6E3D223122
- 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
- 7667222076696577426F783D223020302034382034382220656E61626C652D62
- 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
- 3C706174682066696C6C3D22234533383933392220643D224D31322C34305638
- 63302D322E322C312E382D342C342D3468313663322E322C302C342C312E382C
- 342C3476333263302C322E322D312E382C342D342C344831364331332E382C34
- 342C31322C34322E322C31322C34307A222F3E0D0A202020203C706174682066
- 696C6C3D22234646463345302220643D224D33322C37483136632D302E362C30
- 2D312C302E342D312C3176323963302C302E362C302E342C312C312C31683136
- 63302E362C302C312D302E342C312D3156384333332C372E342C33322E362C37
- 2C33322C377A222F3E0D0A202020203C636972636C652066696C6C3D22234136
- 36343241222063783D223234222063793D2234312220723D22312E35222F3E0D
- 0A3C2F7376673E0D0A030000006B0065007900AB0200003C7376672076657273
- 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
- 2F323030302F737667222076696577426F783D22302030203438203438222065
- 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
- 3E0D0A202020203C672066696C6C3D2223464641303030223E0D0A2020202020
- 2020203C706F6C79676F6E20706F696E74733D2233302C34312032362C343520
- 32322C34352031382C34312031382C32312033302C32312033302C3239203238
- 2C33312033302C33332033302C33352032382C33372033302C3339222F3E0D0A
- 20202020202020203C7061746820643D224D33382C372E384333372E352C362C
- 33362C342E372C33342E332C342E324333312E392C332E372C32382E322C332C
- 32342C33732D372E392C302E372D31302E332C312E324331322C342E372C3130
- 2E352C362C31302C372E3820632D302E352C312E372D312C342E312D312C362E
- 3763302C322E362C302E352C352C312C362E3763302E352C312E382C312E392C
- 332E312C332E372C332E354331362E312C32352E332C31392E382C32362C3234
- 2C323673372E392D302E372C31302E332D312E322063312E382D302E342C332E
- 322D312E382C332E372D332E3563302E352D312E372C312D342E312C312D362E
- 374333392C31312E392C33382E352C392E352C33382C372E387A204D32392C31
- 33483139632D312E312C302D322D302E392D322D32563963302D302E362C332E
- 312D312C372D3173372C302E342C372C317632204333312C31322E312C33302E
- 312C31332C32392C31337A222F3E0D0A202020203C2F673E0D0A202020203C72
- 65637420783D2232332220793D223236222066696C6C3D222344363836303022
- 2077696474683D223222206865696768743D223139222F3E0D0A3C2F7376673E
- 0D0A060000006B0069006E0064006C006500C60200003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C706174682066696C6C3D22233337343734462220643D224D38
- 2C3431563763302D322E322C312E382D342C342D3468323463322E322C302C34
- 2C312E382C342C3476333463302C322E322D312E382C342D342C344831324339
- 2E382C34352C382C34332E322C382C34317A222F3E0D0A202020203C70617468
- 2066696C6C3D22236565652220643D224D33352C36483133632D302E362C302D
- 312C302E342D312C3176323963302C302E362C302E342C312C312C3168323263
- 302E362C302C312D302E342C312D3156374333362C362E342C33352E362C362C
- 33352C367A222F3E0D0A202020203C7265637420783D2232302220793D223430
- 222066696C6C3D2223353436453741222077696474683D223822206865696768
- 743D2232222F3E0D0A202020203C672066696C6C3D2223413141314131223E0D
- 0A20202020202020203C7265637420783D2231362220793D2231312220776964
- 74683D22313622206865696768743D2233222F3E0D0A20202020202020203C72
- 65637420783D2231362220793D223138222077696474683D2231362220686569
- 6768743D2232222F3E0D0A20202020202020203C7265637420783D2231362220
- 793D223232222077696474683D22313222206865696768743D2232222F3E0D0A
- 20202020202020203C7265637420783D2231362220793D223236222077696474
- 683D22313622206865696768743D2232222F3E0D0A20202020202020203C7265
- 637420783D2231362220793D223330222077696474683D223132222068656967
- 68743D2232222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A09000000
- 6C0061006E00640073006300610070006500EB0100003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C672066696C6C3D2223464639383030223E0D0A202020202020
- 20203C7265637420783D2233362E312220793D22382E3122207472616E73666F
- 726D3D226D6174726978282E373037202E373037202D2E373037202E37303720
- 32312E323031202D32352E31383429222077696474683D22392E392220686569
- 6768743D22392E39222F3E0D0A20202020202020203C7265637420783D223336
- 2220793D2238222077696474683D22313022206865696768743D223130222F3E
- 0D0A202020203C2F673E0D0A202020203C636972636C652066696C6C3D222346
- 4645423342222063783D223431222063793D2231332220723D2233222F3E0D0A
- 202020203C706F6C79676F6E2066696C6C3D22233245374433322220706F696E
- 74733D2231362E352C313820302C34322033332C3432222F3E0D0A202020203C
- 706F6C79676F6E2066696C6C3D22233443414635302220706F696E74733D2233
- 332E362C32342031392E322C34322034382C3432222F3E0D0A3C2F7376673E0D
- 0A050000006C006500610076006500180400003C7376672076657273696F6E3D
- 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
- 302F737667222076696577426F783D223020302034382034382220656E61626C
- 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
- 2020203C706174682066696C6C3D22234646434444322220643D224D352C3338
- 56313468333876323463302C322E322D312E382C342D342C34483943362E382C
- 34322C352C34302E322C352C33387A222F3E0D0A202020203C70617468206669
- 6C6C3D22234634343333362220643D224D34332C313076364835762D3663302D
- 322E322C312E382D342C342D346833304334312E322C362C34332C372E382C34
- 332C31307A222F3E0D0A202020203C672066696C6C3D2223423731433143223E
- 0D0A20202020202020203C636972636C652063783D223333222063793D223130
- 2220723D2233222F3E0D0A20202020202020203C636972636C652063783D2231
- 35222063793D2231302220723D2233222F3E0D0A202020203C2F673E0D0A2020
- 20203C672066696C6C3D2223424442444244223E0D0A20202020202020203C70
- 61746820643D224D33332C33632D312E312C302D322C302E392D322C32763563
- 302C312E312C302E392C322C322C3273322D302E392C322D3256354333352C33
- 2E392C33342E312C332C33332C337A222F3E0D0A20202020202020203C706174
- 6820643D224D31352C33632D312E312C302D322C302E392D322C32763563302C
- 312E312C302E392C322C322C3273322D302E392C322D3256354331372C332E39
- 2C31362E312C332C31352C337A222F3E0D0A202020203C2F673E0D0A20202020
- 3C706174682066696C6C3D22234634343333362220643D224D32322E322C3335
- 2E3363302D302E322C302D302E352C302E312D302E3763302E312D302E322C30
- 2E322D302E342C302E342D302E3573302E332D302E332C302E352D302E336330
- 2E322D302E312C302E352D302E312C302E372D302E312073302E352C302C302E
- 372C302E3163302E322C302E312C302E342C302E322C302E362C302E3373302E
- 332C302E332C302E342C302E3563302E312C302E322C302E312C302E342C302E
- 312C302E3763302C302E322C302C302E352D302E312C302E37632D302E312C30
- 2E322D302E322C302E342D302E342C302E3520632D302E322C302E312D302E33
- 2C302E332D302E362C302E335332342E332C33372C32342C3337732D302E352C
- 302D302E372D302E31632D302E322D302E312D302E342D302E322D302E352D30
- 2E33632D302E322D302E312D302E332D302E332D302E342D302E35204332322E
- 332C33352E382C32322E322C33352E362C32322E322C33352E337A204D32352E
- 332C3331682D322E366C2D302E342D313168332E334C32352E332C33317A222F
- 3E0D0A3C2F7376673E0D0A040000006C00650066007400FD0000003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C672066696C6C3D2223334635314235223E0D0A20
- 202020202020203C706F6C79676F6E20706F696E74733D22342C32342031382C
- 31322E332031382C33352E37222F3E0D0A20202020202020203C726563742078
- 3D2231352220793D223230222077696474683D22323722206865696768743D22
- 38222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0A0000006C006500
- 660074005F0064006F0077006E0032000E0100003C7376672076657273696F6E
- 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
- 30302F737667222076696577426F783D223020302034382034382220656E6162
- 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
- 202020203C706F6C79676F6E2066696C6C3D22233346353142352220706F696E
- 74733D2231392C34342033302E372C333020372E332C3330222F3E0D0A202020
- 203C706174682066696C6C3D22233346353142352220643D224D32372C366831
- 337638483237632D322E322C302D342C312E382D342C34763137682D38563138
- 4331352C31312E342C32302E342C362C32372C367A222F3E0D0A3C2F7376673E
- 0D0A080000006C006500660074005F00750070003200110100003C7376672076
- 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
- 6F72672F323030302F737667222076696577426F783D22302030203438203438
- 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
- 3438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223334635314235
- 2220706F696E74733D2231392C342033302E372C313820372E332C3138222F3E
- 0D0A202020203C706174682066696C6C3D22233346353142352220643D224D32
- 372C3432683133762D38483237632D322E322C302D342D312E382D342D345631
- 33682D387631374331352C33362E362C32302E342C34322C32372C34327A222F
- 3E0D0A3C2F7376673E0D0A070000006C00690062007200610072007900290400
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C672066696C6C3D22234646393830
- 30223E0D0A20202020202020203C7265637420783D22312220793D2233382220
- 77696474683D22343622206865696768743D2232222F3E0D0A20202020202020
- 203C7265637420783D2232352220793D223138222077696474683D2234222068
- 65696768743D223136222F3E0D0A20202020202020203C7265637420783D2233
- 312220793D223138222077696474683D223422206865696768743D223136222F
- 3E0D0A20202020202020203C7265637420783D2233372220793D223138222077
- 696474683D223422206865696768743D223136222F3E0D0A2020202020202020
- 3C7265637420783D2231392220793D223138222077696474683D223422206865
- 696768743D223136222F3E0D0A20202020202020203C7265637420783D223133
- 2220793D223138222077696474683D223422206865696768743D223136222F3E
- 0D0A20202020202020203C7265637420783D22372220793D2231382220776964
- 74683D223422206865696768743D223136222F3E0D0A20202020202020203C70
- 6F6C79676F6E20706F696E74733D2234332C313620352C313620352C31332032
- 342C342034332C3133222F3E0D0A20202020202020203C7265637420783D2235
- 2220793D223334222077696474683D22333822206865696768743D2232222F3E
- 0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223454636433030
- 223E0D0A20202020202020203C7265637420783D2232352220793D2231362220
- 77696474683D223422206865696768743D2232222F3E0D0A2020202020202020
- 3C7265637420783D2233312220793D223136222077696474683D223422206865
- 696768743D2232222F3E0D0A20202020202020203C7265637420783D22333722
- 20793D223136222077696474683D223422206865696768743D2232222F3E0D0A
- 20202020202020203C7265637420783D2231392220793D223136222077696474
- 683D223422206865696768743D2232222F3E0D0A20202020202020203C726563
- 7420783D2231332220793D223136222077696474683D22342220686569676874
- 3D2232222F3E0D0A20202020202020203C7265637420783D22372220793D2231
- 36222077696474683D223422206865696768743D2232222F3E0D0A2020202020
- 2020203C7265637420783D22332220793D223336222077696474683D22343222
- 206865696768743D2232222F3E0D0A20202020202020203C636972636C652063
- 783D223234222063793D2231312220723D2232222F3E0D0A202020203C2F673E
- 0D0A3C2F7376673E0D0A1A0000006C0069006700680074005F00610074005F00
- 7400680065005F0065006E0064005F006F0066005F00740075006E006E006500
- 6C004C0200003C7376672076657273696F6E3D22312220786D6C6E733D226874
- 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
- 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
- 226E657720302030203438203438223E0D0A202020203C706174682066696C6C
- 3D22233346353142352220643D224D362C313076323863302C322E322C312E38
- 2C342C342C3468323863322E322C302C342D312E382C342D3456313063302D32
- 2E322D312E382D342D342D3448313043372E382C362C362C372E382C362C3130
- 7A222F3E0D0A202020203C706174682066696C6C3D2223434346324636222064
- 3D224D32372E392C32382E39682D352E386C2D382E342C372E326C362D372E32
- 762D322E346C2D332C302E386C332D312E39762D312E3563302D302E382C302E
- 312D312E372C302E362D322E346C2D372E352D382E336C382E372C372E322063
- 302E372D302E372C312E352D312E312C322E352D312E326C302E362D372E336C
- 312E312C372E3363302E332C302C302E362C302E312C302E382C302E316C312E
- 322D312E326C2D302E332C312E3763302E332C302E312C302E342C302E332C30
- 2E372C302E366C342E342D322E386C2D332E362C332E392063302E332C302E34
- 2C302E362C312C302E372C312E376C322E322C302E316C2D322E322C302E3863
- 302C302E332C302C312E352C302C312E356C322E362C312E346C2D322E362D30
- 2E3363302C302C302C312E382C302C322E326C362E322C372E314C32372E392C
- 32382E397A222F3E0D0A3C2F7376673E0D0A040000006C0069006B0065000D01
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C706174682066696C6C3D222346
- 34343333362220643D224D33342C39632D342E322C302D372E392C322E312D31
- 302C352E344332312E392C31312E312C31382E322C392C31342C3943372E342C
- 392C322C31342E342C322C323163302C31312E392C32322C32342C32322C3234
- 7332322D31322C32322D3234204334362C31342E342C34302E362C392C33342C
- 397A222F3E0D0A3C2F7376673E0D0A100000006C0069006B0065005F0070006C
- 0061006300650068006F006C006400650072000D0100003C7376672076657273
- 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
- 2F323030302F737667222076696577426F783D22302030203438203438222065
- 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
- 3E0D0A202020203C706174682066696C6C3D22234646434444322220643D224D
- 33342C39632D342E322C302D372E392C322E312D31302C352E344332312E392C
- 31312E312C31382E322C392C31342C3943372E342C392C322C31342E342C322C
- 323163302C31312E392C32322C32342C32322C32347332322D31322C32322D32
- 34204334362C31342E342C34302E362C392C33342C397A222F3E0D0A3C2F7376
- 673E0D0A0A0000006C0069006E0065005F006300680061007200740094030000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C672066696C6C3D2223334635314235
- 223E0D0A20202020202020203C636972636C652063783D2238222063793D2233
- 382220723D2233222F3E0D0A20202020202020203C636972636C652063783D22
- 3136222063793D2234302220723D2233222F3E0D0A20202020202020203C6369
- 72636C652063783D223234222063793D2233332220723D2233222F3E0D0A2020
- 2020202020203C636972636C652063783D223332222063793D2233352220723D
- 2233222F3E0D0A20202020202020203C636972636C652063783D223430222063
- 793D2233312220723D2233222F3E0D0A20202020202020203C706F6C79676F6E
- 20706F696E74733D2233392E312C32392E322033312E382C33322E392032332E
- 352C33302E382031352E352C33372E3820382E352C33362E3120372E352C3339
- 2E392031362E352C34322E322032342E352C33352E322033322E322C33372E31
- 2034302E392C33322E38222F3E0D0A202020203C2F673E0D0A202020203C6720
- 66696C6C3D2223303042434434223E0D0A20202020202020203C636972636C65
- 2063783D2238222063793D2232302220723D2233222F3E0D0A20202020202020
- 203C636972636C652063783D223136222063793D2232322220723D2233222F3E
- 0D0A20202020202020203C636972636C652063783D223234222063793D223135
- 2220723D2233222F3E0D0A20202020202020203C636972636C652063783D2233
- 32222063793D2232302220723D2233222F3E0D0A20202020202020203C636972
- 636C652063783D223430222063793D22382220723D2233222F3E0D0A20202020
- 202020203C7061746820643D224D33382E332C362E39632D322E312C332E322D
- 352E332C382D362E392C31302E34632D312E322D302E372D332E312D322D362E
- 342D346C2D312E332D302E386C2D382E332C372E336C2D372D312E376C2D312C
- 332E396C392C322E336C372E372D362E372063322E362C312E362C352E382C33
- 2E362C362E352C342E316C302E352C302E356C302E392D302E3163312E312D30
- 2E312C312E312D302E312C392E352D31322E394C33382E332C362E397A222F3E
- 0D0A202020203C2F673E0D0A3C2F7376673E0D0A040000006C0069006E006B00
- 520200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C672066696C6C3D22233139
- 37364432223E0D0A20202020202020203C7061746820643D224D33382C313368
- 2D33632D352E352C302D31302C342E352D31302C313073342E352C31302C3130
- 2C3130683363352E352C302C31302D342E352C31302D31305334332E352C3133
- 2C33382C31337A204D33382C3239682D3320632D332E332C302D362D322E372D
- 362D3673322E372D362C362D36683363332E332C302C362C322E372C362C3653
- 34312E332C32392C33382C32397A222F3E0D0A20202020202020203C70617468
- 20643D224D31332C3133682D3343342E352C31332C302C31372E352C302C3233
- 73342E352C31302C31302C3130683363352E352C302C31302D342E352C31302D
- 31305331382E352C31332C31332C31337A204D31332C3239682D3320632D332E
- 332C302D362D322E372D362D3673322E372D362C362D36683363332E332C302C
- 362C322E372C362C365331362E332C32392C31332C32397A222F3E0D0A202020
- 203C2F673E0D0A202020203C706174682066696C6C3D22233432413546352220
- 643D224D33332C3231483135632D312E312C302D322C302E392D322C3273302E
- 392C322C322C3268313863312E312C302C322D302E392C322D325333342E312C
- 32312C33332C32317A222F3E0D0A3C2F7376673E0D0A050000006C0069006E00
- 750078006F0F00003C3F786D6C2076657273696F6E3D22312E302220656E636F
- 64696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F723A20
- 41646F626520496C6C7573747261746F722031392E312E312C20535647204578
- 706F727420506C75672D496E202E205356472056657273696F6E3A20362E3030
- 204275696C6420302920202D2D3E0D0A3C7376672076657273696F6E3D22312E
- 31222020786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
- 302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F7777772E77
- 332E6F72672F313939392F786C696E6B2220783D223070782220793D22307078
- 220D0A092076696577426F783D223020322034382034382220656E61626C652D
- 6261636B67726F756E643D226E6577203020322034382034382220786D6C3A73
- 706163653D227072657365727665223E0D0A3C706F6C79676F6E2066696C6C3D
- 22234543454646312220706F696E74733D2232302E312C31382E322032302E32
- 2C32302E352031382E362C32332E352031362E312C32382E342031352E362C33
- 322E352031372E342C33382E332032312E352C34302E362032372E372C34302E
- 362033332E352C33362E32200D0A0933362E312C32392E332033302E312C3232
- 2032382E342C31372E3920222F3E0D0A3C706174682066696C6C3D2223323633
- 3233382220643D224D33342E332C32332E39632D312E362D322E332D322E392D
- 332E372D332E362D362E36632D302E372D322E392C302E322D322E312D302E34
- 2D342E36632D302E332D312E332D302E382D322E322D312E332D322E390D0A09
- 632D302E362D302E372D312E332D312E312D312E372D312E32632D302E392D30
- 2E352D332D312E332D352E362C302E31632D322E372C312E342D322E342C342E
- 342D312E392C31302E3563302C302E342D302E312C302E392D302E332C312E33
- 632D302E342C302E392D312E312C312E372D312E372C322E340D0A09632D302E
- 372C312D312E342C322D312E392C332E31632D312E322C322E332D322E332C35
- 2E322D322C362E3363302E352D302E312C362E382C392E352C362E382C392E37
- 63302E342D302E312C322E312D302E312C332E362D302E3163322E312D302E31
- 2C332E332D302E322C352C302E320D0A0963302D302E332D302E312D302E362D
- 302E312D302E3963302D302E362C302E312D312E312C302E322D312E3863302E
- 312D302E352C302E322D312C302E332D312E36632D312C302E392D322E382C31
- 2E392D342E352C322E32632D312E352C302E332D342D302E322D352E322D312E
- 370D0A0963302E312C302C302E332C302C302E342D302E3163302E332D302E31
- 2C302E362D302E322C302E372D302E3463302E332D302E352C302E312D312D30
- 2E312D312E33632D302E322D302E332D312E372D312E342D322E342D32632D30
- 2E372D302E362D312E312D302E392D312E352D312E330D0A0963302C302D302E
- 362D302E362D302E382D302E38632D302E322D302E322D302E332D302E342D30
- 2E342D302E35632D302E322D302E352D302E332D312E312D302E322D312E3963
- 302E312D312E312C302E352D322C312D3363302E322D302E342C302E372D312E
- 322C302E372D312E320D0A09732D312E372C342E322D302E382C352E3563302C
- 302C302E312D312E332C302E352D322E3663302E332D302E392C302E382D322E
- 322C312E342D322E3973322E312D332E332C322E322D342E3963302D302E372C
- 302E312D312E342C302E312D312E39632D302E342D302E342C362E362D312E34
- 2C372D302E330D0A0963302E312C302E342C312E352C342C322E332C352E3963
- 302E342C302E392C302E392C312E372C312E322C322E3763302E332C312E312C
- 302E352C322E362C302E352C342E3163302C302E332C302C302E382D302E312C
- 312E3363302E322C302C342E312D342E322D302E352D372E370D0A0963302C30
- 2C322E382C312E332C322E392C332E3963302E312C322E312D302E382C332E38
- 2D312C342E3163302E312C302C322E312C302E392C322E322C302E3963302E34
- 2C302C312E322D302E332C312E322D302E3363302E312D302E332C302E342D31
- 2E312C302E342D312E340D0A094333372E362C32392E392C33352E392C32362E
- 322C33342E332C32332E397A222F3E0D0A3C673E0D0A093C656C6C6970736520
- 66696C6C3D2223454345464631222063783D2232312E36222063793D2231352E
- 33222072783D22312E33222072793D2232222F3E0D0A093C656C6C6970736520
- 66696C6C3D2223454345464631222063783D2232362E31222063793D2231352E
- 32222072783D22312E37222072793D22322E33222F3E0D0A3C2F673E0D0A3C67
- 3E0D0A090D0A09093C656C6C69707365207472616E73666F726D3D226D617472
- 6978282D302E31323534202D302E3939323120302E39393231202D302E313235
- 3420382E393735342033382E3939363929222066696C6C3D2223323132313231
- 222063783D2232312E37222063793D2231352E35222072783D22312E32222072
- 793D22302E37222F3E0D0A093C656C6C697073652066696C6C3D222332313231
- 3231222063783D223236222063793D2231352E36222072783D2231222072793D
- 22312E33222F3E0D0A3C2F673E0D0A3C673E0D0A093C706174682066696C6C3D
- 22234646433130372220643D224D33392E332C33372E36632D302E342D302E32
- 2D312E312D302E352D312E372D312E34632D302E332D302E352D302E322D312E
- 392D302E372D322E35632D302E332D302E342D302E372D302E322D302E382D30
- 2E320D0A0909632D302E392C302E322D332C312E362D342E342C30632D302E32
- 2D302E322D302E352D302E352D312D302E35632D302E352C302D302E372C302E
- 322D302E392C302E36732D302E322C302E372D302E322C312E3763302C302E38
- 2C302C312E372D302E312C322E340D0A0909632D302E322C312E372D302E352C
- 322E372D302E352C332E3763302C312E312C302E332C312E382C302E372C322E
- 3163302E332C302E332C302E382C302E352C312E392C302E3563312E312C302C
- 312E382D302E342C322E352D312E3163302E352D302E352C302E392D302E372C
- 322E332D312E370D0A090963312E312D302E372C322E382D312E362C332E312D
- 312E3963302E322D302E322C302E352D302E332C302E352D302E394334302C33
- 372E392C33392E362C33372E372C33392E332C33372E367A222F3E0D0A093C70
- 6174682066696C6C3D22234646433130372220643D224D31392E322C33372E39
- 632D312D312E362D312E312D312E392D312E382D322E39632D302E362D312D31
- 2E392D322E392D322E372D322E39632D302E362C302D302E392C302E332D312E
- 332C302E370D0A0909632D302E342C302E342D302E382C312E332D312E352C31
- 2E38632D302E362C302E352D322E332C302E342D322E372C31632D302E342C30
- 2E362C302E342C312E352C302E342C3363302C302E362D302E352C312D302E36
- 2C312E34632D302E312C302E352D302E322C302E382C302C312E320D0A090963
- 302E342C302E362C302E392C302E382C342E332C312E3563312E382C302E342C
- 332E352C312E342C342E362C312E3563312E312C302E312C332C302C332D322E
- 374332312C33392E392C32302E312C33392E352C31392E322C33372E397A222F
- 3E0D0A093C706174682066696C6C3D22234646433130372220643D224D32312E
- 312C31392E384332302E352C31392E342C32302C31392C32302C31382E346330
- 2D302E362C302E342D302E382C312D312E3363302E312D302E312C312E322D31
- 2E312C322E332D312E3173322E342C302E372C322E392C302E390D0A09096330
- 2E392C302E322C312E382C302E342C312E372C312E31632D302E312C312D302E
- 322C312E322D312E322C312E37632D302E372C302E322D322C312E332D322E39
- 2C312E33632D302E342C302D312C302D312E342D302E314332322E312C32302E
- 382C32312E362C32302E332C32312E312C31392E387A222F3E0D0A3C2F673E0D
- 0A3C673E0D0A093C706174682066696C6C3D22233633343730332220643D224D
- 32302E392C313963302E322C302E322C302E352C302E342C302E382C302E3563
- 302E322C302E312C302E352C302E322C302E352C302E3263302E342C302C302E
- 372C302C302E392C3063302E352C302C312E322D302E322C312E392D302E360D
- 0A090963302E372D302E332C302E382D302E352C312E332D302E3763302E352D
- 302E332C312D302E362C302E382D302E37632D302E322D302E312D302E342C30
- 2D312E312C302E34632D302E362C302E342D312E312C302E362D312E372C302E
- 39632D302E332C302E312D302E372C302E332D312C302E330D0A0909632D302E
- 332C302D302E362C302D302E392C30632D302E332C302D302E352D302E312D30
- 2E382D302E32632D302E322D302E312D302E332D302E322D302E342D302E3263
- 2D302E322D302E312D302E362D302E352D302E382D302E3663302C302D302E32
- 2C302D302E312C302E310D0A09094332302E362C31382E372C32302E372C3138
- 2E382C32302E392C31397A222F3E0D0A093C706174682066696C6C3D22233633
- 343730332220643D224D32332E392C31362E3863302E312C302E322C302E332C
- 302E322C302E342C302E3363302E312C302E312C302E322C302E312C302E322C
- 302E3163302E312D302E312C302D302E332D302E312D302E330D0A0909433234
- 2E342C31362E372C32332E392C31362E372C32332E392C31362E387A222F3E0D
- 0A093C706174682066696C6C3D22233633343730332220643D224D32322E332C
- 313763302C302E312C302E322C302E322C302E322C302E3163302E312D302E31
- 2C302E322D302E322C302E332D302E3263302E322D302E312C302E312D302E32
- 2D302E322D302E320D0A09094332322E342C31362E382C32322E342C31362E39
- 2C32322E332C31377A222F3E0D0A3C2F673E0D0A3C706174682066696C6C3D22
- 233435354136342220643D224D33322C33342E3763302C302E312C302C302E32
- 2C302C302E3363302E322C302E342C302E372C302E352C312E312C302E356330
- 2E362C302C312E322D302E342C312E352D302E3863302D302E312C302E312D30
- 2E322C302E322D302E330D0A0963302E322D302E332C302E332D302E352C302E
- 342D302E3663302C302D302E312D302E312D302E312D302E32632D302E312D30
- 2E322D302E342D302E342D302E382D302E35632D302E332D302E312D302E382D
- 302E322D312D302E32632D302E392D302E312D312E342C302E322D312E372C30
- 2E350D0A0963302C302C302E312C302C302E312C302E3163302E322C302E322C
- 302E332C302E342C302E332C302E374333322E312C33342E342C33322C33342E
- 352C33322C33342E377A222F3E0D0A3C2F7376673E0D0A040000006C00690073
- 007400BE0200003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C672066696C6C3D22
- 23323139364633223E0D0A20202020202020203C7265637420783D2236222079
- 3D223232222077696474683D223422206865696768743D2234222F3E0D0A2020
- 2020202020203C7265637420783D22362220793D223134222077696474683D22
- 3422206865696768743D2234222F3E0D0A20202020202020203C726563742078
- 3D22362220793D223330222077696474683D223422206865696768743D223422
- 2F3E0D0A20202020202020203C7265637420783D22362220793D223622207769
- 6474683D223422206865696768743D2234222F3E0D0A20202020202020203C72
- 65637420783D22362220793D223338222077696474683D223422206865696768
- 743D2234222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D22
- 23323139364633223E0D0A20202020202020203C7265637420783D2231342220
- 793D223232222077696474683D22323822206865696768743D2234222F3E0D0A
- 20202020202020203C7265637420783D2231342220793D223134222077696474
- 683D22323822206865696768743D2234222F3E0D0A20202020202020203C7265
- 637420783D2231342220793D223330222077696474683D223238222068656967
- 68743D2234222F3E0D0A20202020202020203C7265637420783D223134222079
- 3D2236222077696474683D22323822206865696768743D2234222F3E0D0A2020
- 2020202020203C7265637420783D2231342220793D223338222077696474683D
- 22323822206865696768743D2234222F3E0D0A202020203C2F673E0D0A3C2F73
- 76673E0D0A040000006C006F0063006B00990100003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22233432343234322220643D224D3234
- 2C34632D352E352C302D31302C342E352D31302C313076346834762D3463302D
- 332E332C322E372D362C362D3673362C322E372C362C3676346834762D344333
- 342C382E352C32392E352C342C32342C347A222F3E0D0A202020203C70617468
- 2066696C6C3D22234642384330302220643D224D33362C3434483132632D322E
- 322C302D342D312E382D342D3456323263302D322E322C312E382D342C342D34
- 68323463322E322C302C342C312E382C342C347631384334302C34322E322C33
- 382E322C34342C33362C34347A222F3E0D0A202020203C636972636C65206669
- 6C6C3D2223433736453030222063783D223234222063793D2233312220723D22
- 33222F3E0D0A3C2F7376673E0D0A0E0000006C006F0063006B005F006C006100
- 6E00640073006300610070006500610200003C7376672076657273696F6E3D22
- 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
- 2F737667222076696577426F783D223020302034382034382220656E61626C65
- 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
- 20203C706174682066696C6C3D22233337343734462220643D224D372C313068
- 333463322E322C302C342C312E382C342C3476323063302C322E322D312E382C
- 342D342C344837632D322E322C302D342D312E382D342D3456313443332C3131
- 2E382C342E382C31302C372C31307A222F3E0D0A202020203C70617468206669
- 6C6C3D22234242444546422220643D224D34322C333456313463302D302E362D
- 302E342D312D312D314837632D302E362C302D312C302E342D312C3176323063
- 302C302E362C302E342C312C312C316833344334312E362C33352C34322C3334
- 2E362C34322C33347A222F3E0D0A202020203C672066696C6C3D222333463531
- 4235223E0D0A20202020202020203C7061746820643D224D32392C3331483139
- 632D302E362C302D312D302E342D312D31762D3663302D302E362C302E342D31
- 2C312D3168313063302E362C302C312C302E342C312C3176364333302C33302E
- 362C32392E362C33312C32392C33317A222F3E0D0A20202020202020203C7061
- 746820643D224D32342C3137632D322E322C302D342C312E382D342C34763368
- 32762D3363302D312E312C302E392D322C322D3273322C302E392C322C327633
- 6832762D334332382C31382E382C32362E322C31372C32342C31377A222F3E0D
- 0A202020203C2F673E0D0A3C2F7376673E0D0A0D0000006C006F0063006B005F
- 0070006F00720074007200610069007400600200003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22233337343734462220643D224D3130
- 2C3431563763302D322E322C312E382D342C342D3468323063322E322C302C34
- 2C312E382C342C3476333463302C322E322D312E382C342D342C344831344331
- 312E382C34352C31302C34332E322C31302C34317A222F3E0D0A202020203C70
- 6174682066696C6C3D22234242444546422220643D224D33342C36483134632D
- 302E362C302D312C302E342D312C3176333463302C302E362C302E342C312C31
- 2C3168323063302E362C302C312D302E342C312D3156374333352C362E342C33
- 342E362C362C33342C367A222F3E0D0A202020203C672066696C6C3D22233346
- 35314235223E0D0A20202020202020203C7061746820643D224D32392C333048
- 3139632D302E362C302D312D302E342D312D31762D3663302D302E362C302E34
- 2D312C312D3168313063302E362C302C312C302E342C312C3176364333302C32
- 392E362C32392E362C33302C32392C33307A222F3E0D0A20202020202020203C
- 7061746820643D224D32342C3136632D322E322C302D342C312E382D342C3476
- 336832762D3363302D312E312C302E392D322C322D3273322C302E392C322C32
- 76336832762D334332382C31372E382C32362E322C31362C32342C31367A222F
- 3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0B0000006C006F0077005F
- 006200610074007400650072007900CC0100003C7376672076657273696F6E3D
- 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
- 302F737667222076696577426F783D223020302034382034382220656E61626C
- 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
- 2020203C672066696C6C3D2223434644384443223E0D0A20202020202020203C
- 7061746820643D224D33342C3434483134632D312E312C302D322D302E392D32
- 2D32563863302D312E312C302E392D322C322D3268323063312E312C302C322C
- 302E392C322C327633344333362C34332E312C33352E312C34342C33342C3434
- 7A222F3E0D0A20202020202020203C7061746820643D224D32382C3133682D38
- 632D302E362C302D312D302E342D312D31563563302D302E362C302E342D312C
- 312D31683863302E362C302C312C302E342C312C3176374332392C31322E362C
- 32382E362C31332C32382C31337A222F3E0D0A202020203C2F673E0D0A202020
- 203C706174682066696C6C3D22233842433334412220643D224D33342C343448
- 3134632D312E312C302D322D302E392D322D32762D3968323476394333362C34
- 332E312C33352E312C34342C33342C34347A222F3E0D0A3C2F7376673E0D0A0C
- 0000006C006F0077005F007000720069006F007200690074007900A80100003C
- 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
- 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
- 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
- 30203438203438223E0D0A202020203C706174682066696C6C3D222334434146
- 35302220643D224D32312E322C34342E386C2D31382D3138632D312E362D312E
- 362D312E362D342E312C302D352E376C31382D313863312E362D312E362C342E
- 312D312E362C352E372C306C31382C313863312E362C312E362C312E362C342E
- 312C302C352E376C2D31382C3138204332352E332C34362E342C32322E372C34
- 362E342C32312E322C34342E387A222F3E0D0A202020203C672066696C6C3D22
- 23464645423342223E0D0A20202020202020203C706F6C79676F6E20706F696E
- 74733D2232342C33332E342031372C32352033312C3235222F3E0D0A20202020
- 202020203C7265637420783D2232322220793D2231342E38222077696474683D
- 223422206865696768743D2231322E33222F3E0D0A202020203C2F673E0D0A3C
- 2F7376673E0D0A0D0000006D0061006B0065005F006400650063006900730069
- 006F006E00020300003C7376672076657273696F6E3D22312220786D6C6E733D
- 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
- 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
- 6E643D226E657720302030203438203438223E0D0A202020203C672066696C6C
- 3D2223464643433830223E0D0A20202020202020203C636972636C652063783D
- 223338222063793D2232362220723D2234222F3E0D0A20202020202020203C63
- 6972636C652063783D223130222063793D2232362220723D2234222F3E0D0A20
- 202020202020203C7061746820643D224D33392C313963302D31322E372D3330
- 2D382E332D33302C3063302C312E382C302C382E322C302C313063302C382E33
- 2C362E372C31352C31352C31357331352D362E372C31352D31354333392C3237
- 2E322C33392C32302E382C33392C31397A222F3E0D0A20202020202020203C70
- 61746820643D224D32342C344331352E322C342C382C31312E322C382C323063
- 302C312E322C302C332E352C302C332E356C322E312C302E365631396C31392E
- 352D362E336C382E322C362E3376352E316C322E312D302E3663302C302C302D
- 322E332C302D332E35204334302C31322E352C33342E362C342C32342C347A22
- 2F3E0D0A202020203C2F673E0D0A202020203C706F6C79676F6E2066696C6C3D
- 22234646353732322220706F696E74733D2232342C32332E352032342C31322E
- 352033302E362C3138222F3E0D0A202020203C706174682066696C6C3D222346
- 46353732322220643D224D32382E392C32342E3463302C302E322C302E312C30
- 2E342C302E312C302E3663302C322E382D322E322C352D352C35732D352D322E
- 322D352D3573322E322D352C352D3563302E372C302C312E342C302E322C322C
- 302E34762D342E3220632D302E362D302E312D312E332D302E322D322D302E32
- 632D352C302D392C342D392C3973342C392C392C3973392D342C392D3963302D
- 312E322D302E322D322E342D302E372D332E344C32382E392C32342E347A222F
- 3E0D0A3C2F7376673E0D0A070000006D0061006E0061006700650072004E0300
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22
- 234646393830302220706F696E74733D2232342C33372031392C33312031392C
- 32352032392C32352032392C3331222F3E0D0A202020203C672066696C6C3D22
- 23464641373236223E0D0A20202020202020203C636972636C652063783D2233
- 33222063793D2231392220723D2232222F3E0D0A20202020202020203C636972
- 636C652063783D223135222063793D2231392220723D2232222F3E0D0A202020
- 203C2F673E0D0A202020203C706174682066696C6C3D22234646423734442220
- 643D224D33332C313363302D372E362D31382D352D31382C3063302C312E312C
- 302C352E392C302C3763302C352C342C392C392C3973392D342C392D39433333
- 2C31382E392C33332C31342E312C33332C31337A222F3E0D0A202020203C7061
- 74682066696C6C3D22234646353732322220643D224D32342C34632D362E312C
- 302D31302C342E392D31302C313163302C302E382C302C322E332C302C322E33
- 6C322C312E37762D356C31322D346C342C3476356C322D312E3763302C302C30
- 2D312E352C302D322E3363302D342D312D382D362D396C2D312D32204832347A
- 222F3E0D0A202020203C672066696C6C3D2223373834373139223E0D0A202020
- 20202020203C636972636C652063783D223238222063793D2231392220723D22
- 31222F3E0D0A20202020202020203C636972636C652063783D22323022206379
- 3D2231392220723D2231222F3E0D0A202020203C2F673E0D0A202020203C7061
- 74682066696C6C3D22234346443844432220643D224D32392C33314C32392C33
- 316C2D352C316C2D352D3163302C302D31312C322D31312C3133683332433430
- 2C33332C32392C33312C32392C33317A222F3E0D0A202020203C706F6C79676F
- 6E2066696C6C3D22233346353142352220706F696E74733D2232332C33352032
- 322C34342032362C34342032352C33352032362C33342032342C33322032322C
- 3334222F3E0D0A3C2F7376673E0D0A0F0000006D0065006400690075006D005F
- 007000720069006F007200690074007900B90100003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22234646433130372220643D224D3231
- 2E322C34342E386C2D31382D3138632D312E362D312E362D312E362D342E312C
- 302D352E376C31382D313863312E362D312E362C342E312D312E362C352E372C
- 306C31382C313863312E362C312E362C312E362C342E312C302C352E376C2D31
- 382C3138204332352E332C34362E342C32322E372C34362E342C32312E322C34
- 342E387A222F3E0D0A202020203C672066696C6C3D2223333734373446223E0D
- 0A20202020202020203C636972636C652063783D223234222063793D22323422
- 20723D2232222F3E0D0A20202020202020203C636972636C652063783D223332
- 222063793D2232342220723D2232222F3E0D0A20202020202020203C63697263
- 6C652063783D223136222063793D2232342220723D2232222F3E0D0A20202020
- 3C2F673E0D0A3C2F7376673E0D0A040000006D0065006E007500320100003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C672066696C6C3D2223363037443842223E
- 0D0A20202020202020203C7265637420783D22362220793D2232322220776964
- 74683D22333622206865696768743D2234222F3E0D0A20202020202020203C72
- 65637420783D22362220793D223130222077696474683D223336222068656967
- 68743D2234222F3E0D0A20202020202020203C7265637420783D22362220793D
- 223334222077696474683D22333622206865696768743D2234222F3E0D0A2020
- 20203C2F673E0D0A3C2F7376673E0D0A0E0000006D006900640064006C006500
- 5F006200610074007400650072007900CD0100003C7376672076657273696F6E
- 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
- 30302F737667222076696577426F783D223020302034382034382220656E6162
- 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
- 202020203C672066696C6C3D2223434644384443223E0D0A2020202020202020
- 3C7061746820643D224D33342C3434483134632D312E312C302D322D302E392D
- 322D32563863302D312E312C302E392D322C322D3268323063312E312C302C32
- 2C302E392C322C327633344333362C34332E312C33352E312C34342C33342C34
- 347A222F3E0D0A20202020202020203C7061746820643D224D32382C3133682D
- 38632D302E362C302D312D302E342D312D31563563302D302E362C302E342D31
- 2C312D31683863302E362C302C312C302E342C312C3176374332392C31322E36
- 2C32382E362C31332C32382C31337A222F3E0D0A202020203C2F673E0D0A2020
- 20203C706174682066696C6C3D22233842433334412220643D224D33342C3434
- 483134632D312E312C302D322D302E392D322D32563233683234763139433336
- 2C34332E312C33352E312C34342C33342C34347A222F3E0D0A3C2F7376673E0D
- 0A080000006D0069006E0064005F006D00610070003E0200003C737667207665
- 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
- 72672F323030302F737667222076696577426F783D2230203020343820343822
- 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
- 38223E0D0A202020203C706F6C79676F6E2066696C6C3D222343464438444322
- 20706F696E74733D2233392E342C32332033382E362C31392032362C32312E36
- 2032362C382032322C382032322C32302E3320382E312C31312E3320352E392C
- 31342E372032312E312C32342E3520392E342C33392E382031322E362C34322E
- 322032332E392C32372E342033322E332C34302E312033352E372C33372E3920
- 32372E332C32352E34222F3E0D0A202020203C636972636C652066696C6C3D22
- 23334635314235222063783D223234222063793D2232342220723D2237222F3E
- 0D0A202020203C672066696C6C3D2223303042434434223E0D0A202020202020
- 20203C636972636C652063783D223234222063793D22382220723D2235222F3E
- 0D0A20202020202020203C636972636C652063783D223339222063793D223231
- 2220723D2235222F3E0D0A20202020202020203C636972636C652063783D2237
- 222063793D2231332220723D2235222F3E0D0A20202020202020203C63697263
- 6C652063783D223131222063793D2234312220723D2235222F3E0D0A20202020
- 202020203C636972636C652063783D223334222063793D2233392220723D2235
- 222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0B0000006D00690073
- 007300650064005F00630061006C006C001D0200003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C672066696C6C3D2223463434333336223E0D0A20202020202020
- 203C706F6C79676F6E20706F696E74733D2233302E332C31322E392032342C31
- 392E322031352E372C31302E392031322E392C31332E372032342C32342E3820
- 33332E312C31352E37222F3E0D0A20202020202020203C706F6C79676F6E2070
- 6F696E74733D2233362C31392032372C31302033362C3130222F3E0D0A202020
- 203C2F673E0D0A202020203C706174682066696C6C3D22233030393638382220
- 643D224D34342E352C33302E386C2D322E342D322E34632D382E352D382E332D
- 32382E392D372E312D33362E322C306C2D322E342C322E34632D302E372C302E
- 372D302E372C312E372C302C322E346C342E382C342E372063302E372C302E37
- 2C312E372C302E372C322E342C306C352E332D352E316C2D302E342D352E3663
- 312E372D312E372C31352E312D312E372C31362E382C304C33322E312C33336C
- 352E312C342E3963302E372C302E372C312E372C302E372C322E342C306C342E
- 382D342E37204334352E322C33322E352C34352E322C33312E342C34342E352C
- 33302E387A222F3E0D0A3C2F7376673E0D0A030000006D006D00730099010000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C706174682066696C6C3D2223453931
- 4536332220643D224D33372C33394831316C2D362C3656313163302D332E332C
- 322E372D362C362D3668323663332E332C302C362C322E372C362C3676323243
- 34332C33362E332C34302E332C33392C33372C33397A222F3E0D0A202020203C
- 706F6C79676F6E2066696C6C3D22234634384642312220706F696E74733D2232
- 302C31362E352031302C33312033302C3331222F3E0D0A202020203C67206669
- 6C6C3D2223463842424430223E0D0A20202020202020203C636972636C652063
- 783D223334222063793D2231352220723D2233222F3E0D0A2020202020202020
- 3C706F6C79676F6E20706F696E74733D2233302C32312032322C33312033382C
- 3331222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0E0000006D006F
- 006E00650079005F007400720061006E007300660065007200050300003C7376
- 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
- 77332E6F72672F323030302F737667222076696577426F783D22302030203438
- 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
- 3438203438223E0D0A202020203C706174682066696C6C3D2223373839303943
- 2220643D224D34302C34314838632D322E322C302D342D312E382D342D346C30
- 2D32302E3963302D312E332C302E362D322E352C312E372D332E334C32342C30
- 6C31382E332C31322E3863312E312C302E372C312E372C322C312E372C332E33
- 563337204334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A
- 202020203C7265637420783D2231342220793D2231222066696C6C3D22234145
- 44353831222077696474683D22323022206865696768743D223331222F3E0D0A
- 202020203C672066696C6C3D2223353538423246223E0D0A2020202020202020
- 3C7061746820643D224D31332C3076333368323256304831337A204D33332C33
- 3148313556326831385633317A222F3E0D0A20202020202020203C7061746820
- 643D224D33342C3363302C312E372D302E332C332D322C33632D312E372C302D
- 332D312E332D332D3373312E332D322C332D324333332E372C312C33342C312E
- 332C33342C337A222F3E0D0A20202020202020203C7061746820643D224D3136
- 2C3163312E372C302C332C302E332C332C32732D312E332C332D332C33732D32
- 2D312E332D322D335331342E332C312C31362C317A222F3E0D0A202020202020
- 20203C636972636C652063783D223234222063793D22382220723D2232222F3E
- 0D0A20202020202020203C636972636C652063783D223234222063793D223230
- 2220723D2236222F3E0D0A202020203C2F673E0D0A202020203C706174682066
- 696C6C3D22234346443844432220643D224D34302C34314838632D322E322C30
- 2D342D312E382D342D346C302D32306C32302C31336C32302D31337632304334
- 342C33392E322C34322E322C34312C34302C34317A222F3E0D0A3C2F7376673E
- 0D0A100000006D0075006C007400690070006C0065005F00630061006D006500
- 720061007300F40200003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
- 66696C6C3D22233435354136342220643D224D34322C3431483132632D322E32
- 2C302D342D312E382D342D3456313763302D322E322C312E382D342C342D3468
- 333063322E322C302C342C312E382C342C347632304334362C33392E322C3434
- 2E322C34312C34322C34317A222F3E0D0A202020203C706174682066696C6C3D
- 22233738393039432220643D224D33362C33364836632D322E322C302D342D31
- 2E382D342D3456313263302D322E322C312E382D342C342D3468333063322E32
- 2C302C342C312E382C342C347632304334302C33342E322C33382E322C33362C
- 33362C33367A222F3E0D0A202020203C636972636C652066696C6C3D22233435
- 35413634222063783D223236222063793D2232322220723D223130222F3E0D0A
- 202020203C636972636C652066696C6C3D2223343241354635222063783D2232
- 36222063793D2232322220723D2237222F3E0D0A202020203C70617468206669
- 6C6C3D22233930434146392220643D224D32392E372C31392E37632D312D312E
- 312D322E332D312E372D332E372D312E37732D322E382C302E362D332E372C31
- 2E37632D302E342C302E342D302E332C312C302E312C312E3463302E342C302E
- 342C312C302E332C312E342D302E312063312E322D312E332C332E332D312E33
- 2C342E352C3063302E322C302E322C302E352C302E332C302E372C302E336330
- 2E322C302C302E352D302E312C302E372D302E334333302E312C32302E372C33
- 302E312C32302E312C32392E372C31392E377A222F3E0D0A202020203C726563
- 7420783D22362220793D223132222066696C6C3D222341444438464222207769
- 6474683D223622206865696768743D2233222F3E0D0A3C2F7376673E0D0A1000
- 00006D0075006C007400690070006C0065005F00640065007600690063006500
- 7300E10200003C7376672076657273696F6E3D22312220786D6C6E733D226874
- 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
- 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
- 226E657720302030203438203438223E0D0A202020203C706174682066696C6C
- 3D22233534364537412220643D224D342C3238563863302D322E322C312E382D
- 342C342D3468323863322E322C302C342C312E382C342C3476323063302C322E
- 322D312E382C342D342C34483843352E382C33322C342C33302E322C342C3238
- 7A222F3E0D0A202020203C706174682066696C6C3D2223424244454642222064
- 3D224D33362C37483843372E342C372C372C372E342C372C3876323063302C30
- 2E362C302E342C312C312C3168323863302E362C302C312D302E342C312D3156
- 384333372C372E342C33362E362C372C33362C377A222F3E0D0A202020203C70
- 6174682066696C6C3D22233337343734462220643D224D33382C33334836632D
- 322E322C302D342D312E382D342D34763068343076304334322C33312E322C34
- 302E322C33332C33382C33337A222F3E0D0A202020203C706174682066696C6C
- 3D22234533383933392220643D224D32342C343056313663302D322E322C312E
- 382D342C342D3468313263322E322C302C342C312E382C342C3476323463302C
- 322E322D312E382C342D342C344832384332352E382C34342C32342C34322E32
- 2C32342C34307A222F3E0D0A202020203C706174682066696C6C3D2223464646
- 3345302220643D224D34302C3135483238632D302E362C302D312C302E342D31
- 2C3176323263302C302E362C302E342C312C312C3168313263302E362C302C31
- 2D302E342C312D315631364334312C31352E342C34302E362C31352C34302C31
- 357A222F3E0D0A202020203C636972636C652066696C6C3D2223413636343241
- 222063783D223334222063793D2234312E352220723D22312E35222F3E0D0A3C
- 2F7376673E0D0A0F0000006D0075006C007400690070006C0065005F0069006E
- 007000750074007300C00200003C7376672076657273696F6E3D22312220786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 2076696577426F783D223020302034382034382220656E61626C652D6261636B
- 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
- 74682066696C6C3D22233930413441452220643D224D34302C33357635483876
- 2D354834763563302C322E322C312E382C342C342C3468333263322E322C302C
- 342D312E382C342D34762D354834307A222F3E0D0A202020203C672066696C6C
- 3D2223313536354330223E0D0A20202020202020203C706F6C79676F6E20706F
- 696E74733D2232342C32332E342031372C31352033312C3135222F3E0D0A2020
- 2020202020203C7265637420783D2232322220793D2234222077696474683D22
- 3422206865696768743D223134222F3E0D0A20202020202020203C7061746820
- 643D224D33312E352C32362E394C33302E382C32386C332E352C312E396C302E
- 362D312E3263312E362D332C322E362D342E372C332E352D352E324333392E33
- 2C32332C34312C32332C34342C3233762D34204333362E332C31392C33352E36
- 2C31392E342C33312E352C32362E397A222F3E0D0A20202020202020203C706F
- 6C79676F6E20706F696E74733D2233382E342C33312032392E342C3335203238
- 2C3235222F3E0D0A20202020202020203C7061746820643D224D31362E352C32
- 362E396C302E362C312E324C31332E362C33304C31332C32382E38632D312E36
- 2D332D322E362D342E372D332E352D352E3243382E372C32332C372C32332C34
- 2C3233762D34204331312E372C31392C31322E342C31392E342C31362E352C32
- 362E397A222F3E0D0A20202020202020203C706F6C79676F6E20706F696E7473
- 3D2232302C32352031382E362C333520392E362C3331222F3E0D0A202020203C
- 2F673E0D0A3C2F7376673E0D0A140000006D0075006C007400690070006C0065
- 005F0073006D00610072007400700068006F006E0065007300EE0300003C7376
- 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
- 77332E6F72672F323030302F737667222076696577426F783D22302030203438
- 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
- 3438203438223E0D0A202020203C706174682066696C6C3D2223343535413634
- 2220643D224D342C3331563863302D322E322C312E382D342C342D3468313263
- 322E322C302C342C312E382C342C3476323363302C322E322D312E382C342D34
- 2C34483843352E382C33352C342C33332E322C342C33317A222F3E0D0A202020
- 203C706174682066696C6C3D22234242444546422220643D224D32302C374838
- 43372E342C372C372C372E342C372C3876323163302C302E362C302E342C312C
- 312C3168313263302E362C302C312D302E342C312D3156384332312C372E342C
- 32302E362C372C32302C377A222F3E0D0A202020203C636972636C652066696C
- 6C3D2223333734373446222063783D223134222063793D2233322E352220723D
- 22312E35222F3E0D0A202020203C706174682066696C6C3D2223353436453741
- 2220643D224D31342C333656313363302D322E322C312E382D342C342D346831
- 3263322E322C302C342C312E382C342C3476323363302C322E322D312E382C34
- 2D342C344831384331352E382C34302C31342C33382E322C31342C33367A222F
- 3E0D0A202020203C706174682066696C6C3D22234242444546422220643D224D
- 33302C3132483138632D302E362C302D312C302E342D312C3176323163302C30
- 2E362C302E342C312C312C3168313263302E362C302C312D302E342C312D3156
- 31334333312C31322E342C33302E362C31322C33302C31327A222F3E0D0A2020
- 20203C636972636C652066696C6C3D2223333734373446222063783D22323422
- 2063793D2233372E352220723D22312E35222F3E0D0A202020203C7061746820
- 66696C6C3D22234533383933392220643D224D32342C343056313863302D322E
- 322C312E382D342C342D3468313263322E322C302C342C312E382C342C347632
- 3263302C322E322D312E382C342D342C344832384332352E382C34342C32342C
- 34322E322C32342C34307A222F3E0D0A202020203C706174682066696C6C3D22
- 234646463345302220643D224D34302C3137483238632D302E362C302D312C30
- 2E342D312C3176323063302C302E362C302E342C312C312C3168313263302E36
- 2C302C312D302E342C312D315631384334312C31372E342C34302E362C31372C
- 34302C31377A222F3E0D0A202020203C636972636C652066696C6C3D22234136
- 36343241222063783D223334222063793D2234312E352220723D22312E35222F
- 3E0D0A3C2F7376673E0D0A050000006D007500730069006300FF0000003C7376
- 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
- 77332E6F72672F323030302F737667222076696577426F783D22302030203438
- 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
- 3438203438223E0D0A202020203C672066696C6C3D2223453931453633223E0D
- 0A20202020202020203C636972636C652063783D223139222063793D22333322
- 20723D2239222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74
- 733D2232342C362032342C33332032382C33332032382C31342033392C313720
- 33392C3130222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A10000000
- 6E00650075007400720061006C005F006400650063006900730069006F006E00
- 8A0200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C672066696C6C3D22234646
- 43433830223E0D0A20202020202020203C636972636C652063783D2233382220
- 63793D2232362220723D2234222F3E0D0A20202020202020203C636972636C65
- 2063783D223130222063793D2232362220723D2234222F3E0D0A202020202020
- 20203C7061746820643D224D33392C313963302D31322E372D33302D382E332D
- 33302C3063302C312E382C302C382E322C302C313063302C382E332C362E372C
- 31352C31352C31357331352D362E372C31352D31354333392C32372E322C3339
- 2C32302E382C33392C31397A222F3E0D0A20202020202020203C706174682064
- 3D224D32342C344331352E322C342C382C31312E322C382C323063302C312E32
- 2C302C332E352C302C332E356C322E312C302E365631396C31392E352D362E33
- 6C382E322C362E3376352E316C322E312D302E3663302C302C302D322E332C30
- 2D332E35204334302C31322E352C33342E362C342C32342C347A222F3E0D0A20
- 2020203C2F673E0D0A202020203C672066696C6C3D2223333734373446223E0D
- 0A20202020202020203C636972636C652063783D223234222063793D22323522
- 20723D2232222F3E0D0A20202020202020203C636972636C652063783D223332
- 222063793D2232352220723D2232222F3E0D0A20202020202020203C63697263
- 6C652063783D223136222063793D2232352220723D2232222F3E0D0A20202020
- 3C2F673E0D0A3C2F7376673E0D0A0F0000006E00650075007400720061006C00
- 5F00740072006100640069006E0067008E0200003C7376672076657273696F6E
- 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
- 30302F737667222076696577426F783D223020302034382034382220656E6162
- 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
- 202020203C672066696C6C3D2223313536354330223E0D0A2020202020202020
- 3C706F6C79676F6E20706F696E74733D2234332E342C31332033352C32302033
- 352C36222F3E0D0A20202020202020203C7265637420783D22342220793D2231
- 31222077696474683D22333422206865696768743D2234222F3E0D0A20202020
- 3C2F673E0D0A202020203C672066696C6C3D2223323139364633223E0D0A2020
- 2020202020203C7265637420783D2234302220793D223233222077696474683D
- 223422206865696768743D223139222F3E0D0A20202020202020203C72656374
- 20783D2233342220793D223233222077696474683D223422206865696768743D
- 223139222F3E0D0A20202020202020203C7265637420783D2232382220793D22
- 3233222077696474683D223422206865696768743D223139222F3E0D0A202020
- 20202020203C7265637420783D2232322220793D223233222077696474683D22
- 3422206865696768743D223139222F3E0D0A20202020202020203C7265637420
- 783D2231362220793D223233222077696474683D223422206865696768743D22
- 3139222F3E0D0A20202020202020203C7265637420783D2231302220793D2232
- 33222077696474683D223422206865696768743D223139222F3E0D0A20202020
- 202020203C7265637420783D22342220793D223233222077696474683D223422
- 206865696768743D223139222F3E0D0A202020203C2F673E0D0A3C2F7376673E
- 0D0A040000006E00650077007300D20300003C7376672076657273696F6E3D22
- 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
- 2F737667222076696577426F783D223020302034382034382220656E61626C65
- 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
- 20203C706174682066696C6C3D22234646353732322220643D224D33322C3135
- 763238483130632D322E322C302D342D312E382D342D345631354833327A222F
- 3E0D0A202020203C706174682066696C6C3D22234646434342432220643D224D
- 31342C3576333463302C322E322D312E382C342D342C3468323963322E322C30
- 2C342D312E382C342D3456354831347A222F3E0D0A202020203C672066696C6C
- 3D2223464635373232223E0D0A20202020202020203C7265637420783D223230
- 2220793D223130222077696474683D22313822206865696768743D2234222F3E
- 0D0A20202020202020203C7265637420783D2232302220793D22313722207769
- 6474683D223822206865696768743D2232222F3E0D0A20202020202020203C72
- 65637420783D2233302220793D223137222077696474683D2238222068656967
- 68743D2232222F3E0D0A20202020202020203C7265637420783D223230222079
- 3D223231222077696474683D223822206865696768743D2232222F3E0D0A2020
- 2020202020203C7265637420783D2233302220793D223231222077696474683D
- 223822206865696768743D2232222F3E0D0A20202020202020203C7265637420
- 783D2232302220793D223235222077696474683D223822206865696768743D22
- 32222F3E0D0A20202020202020203C7265637420783D2233302220793D223235
- 222077696474683D223822206865696768743D2232222F3E0D0A202020202020
- 20203C7265637420783D2232302220793D223239222077696474683D22382220
- 6865696768743D2232222F3E0D0A20202020202020203C7265637420783D2233
- 302220793D223239222077696474683D223822206865696768743D2232222F3E
- 0D0A20202020202020203C7265637420783D2232302220793D22333322207769
- 6474683D223822206865696768743D2232222F3E0D0A20202020202020203C72
- 65637420783D2233302220793D223333222077696474683D2238222068656967
- 68743D2232222F3E0D0A20202020202020203C7265637420783D223230222079
- 3D223337222077696474683D223822206865696768743D2232222F3E0D0A2020
- 2020202020203C7265637420783D2233302220793D223337222077696474683D
- 223822206865696768743D2232222F3E0D0A202020203C2F673E0D0A3C2F7376
- 673E0D0A040000006E00650078007400C80000003C7376672076657273696F6E
- 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
- 30302F737667222076696577426F783D223020302034382034382220656E6162
- 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
- 202020203C706F6C79676F6E2066696C6C3D22233231393646332220706F696E
- 74733D2231372E312C352031342C382E312032392E392C32342031342C33392E
- 392031372E312C34332033362C3234222F3E0D0A3C2F7376673E0D0A08000000
- 6E00660063005F007300690067006E00B10400003C3F786D6C2076657273696F
- 6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A3C212D2D
- 2047656E657261746F723A2041646F626520496C6C7573747261746F72203139
- 2E312E312C20535647204578706F727420506C75672D496E202E205356472056
- 657273696F6E3A20362E3030204275696C6420302920202D2D3E0D0A3C737667
- 2076657273696F6E3D22312E31222020786D6C6E733D22687474703A2F2F7777
- 772E77332E6F72672F323030302F7376672220786D6C6E733A786C696E6B3D22
- 687474703A2F2F7777772E77332E6F72672F313939392F786C696E6B2220783D
- 223070782220793D22307078220D0A092076696577426F783D22302030203438
- 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
- 34382034382220786D6C3A73706163653D227072657365727665223E0D0A3C70
- 6174682066696C6C3D22233231393646332220643D224D33372C3432632D302E
- 332C302D302E372D302E312D312D302E33632D312D302E352D312E332D312E38
- 2D302E382D322E3763302D302E312C332E372D362E382C332E372D3135533335
- 2E332C392C33352E332C390D0A09632D302E352D312D302E322D322E322C302E
- 382D322E3763312D302E352C322E322D302E322C322E372C302E3863302E322C
- 302E332C342E332C372E362C342E332C3137732D342E312C31362E372D342E33
- 2C31374333382E342C34312E362C33372E372C34322C33372C34327A204D3332
- 2E382C33352E380D0A0963302E312D302E322C322E322D352C322E322D31312E
- 3863302D362E382D322E312D31312E362D322E322D31312E38632D302E342D31
- 2D312E362D312E352D322E362D31632D312C302E342D312E352C312E362D312C
- 322E3663302C302C312E382C342E332C312E382C31302E320D0A0963302C352E
- 392D312E382C31302E322D312E382C31302E32632D302E342C312C302C322E32
- 2C312C322E3663302E332C302E312C302E352C302E322C302E382C302E324333
- 312E382C33372C33322E352C33362E362C33322E382C33352E387A204D32332E
- 332C333363302E362D302E312C312E312D302E352C312E342D310D0A0963302E
- 312D302E322C322E332D332E392C322E332D3863302D342E312D322E322D372E
- 392D322E332D38632D302E362D312D312E382D312E332D322E372D302E37632D
- 312C302E362D312E332C312E382D302E372C322E3763302C302C312E372C332C
- 312E372C3663302C312E332D302E332C322E372D302E372C332E370D0A096C2D
- 31332D31312E32632D302E352D302E342D312E322D302E362D312E382D302E34
- 632D302E362C302E322D312E322C302E362D312E342C312E3343362E312C3137
- 2E352C352C32302E352C352C323463302C332E352C312E312C362E352C312E31
- 2C362E3763302E342C312C312E352C312E362C322E362C312E320D0A0963312D
- 302E342C312E362D312E352C312E322D322E3663302C302D302E392D322E362D
- 302E392D352E3363302D302E382C302E312D312E362C302E322D322E336C3132
- 2E352C31302E3863302E342C302E332C302E382C302E352C312E332C302E3543
- 32332E312C33332C32332E322C33332C32332E332C33337A222F3E0D0A3C2F73
- 76673E0D0A0F0000006E0069006700680074005F006C0061006E006400730063
- 00610070006500950100003C7376672076657273696F6E3D22312220786D6C6E
- 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E657720302030203438203438223E0D0A202020203C706F6C79
- 676F6E2066696C6C3D22233637334142372220706F696E74733D2231362E352C
- 313820302C34322033332C3432222F3E0D0A202020203C706F6C79676F6E2066
- 696C6C3D22233935373543442220706F696E74733D2233332E362C3234203139
- 2E322C34322034382C3432222F3E0D0A202020203C706174682066696C6C3D22
- 233430433446462220643D224D34322E392C362E334334332E362C372E342C34
- 342C382E362C34342C313063302C332E392D332E312C372D372C37632D302E37
- 2C302D312E332D302E312D312E392D302E3363312E322C322C332E342C332E33
- 2C352E392C332E332063332E392C302C372D332E312C372D374334382C392E38
- 2C34352E392C372E312C34322E392C362E337A222F3E0D0A3C2F7376673E0D0A
- 0E0000006E0069006700680074005F0070006F00720074007200610069007400
- 890300003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
- 233430433446462220643D224D34322E392C362E334334332E362C372E342C34
- 342C382E362C34342C313063302C332E392D332E312C372D372C37632D302E37
- 2C302D312E332D302E312D312E392D302E3363312E322C322C332E342C332E33
- 2C352E392C332E332063332E392C302C372D332E312C372D374334382C392E38
- 2C34352E392C372E312C34322E392C362E337A222F3E0D0A202020203C672066
- 696C6C3D2223423339444442223E0D0A20202020202020203C636972636C6520
- 63783D223331222063793D2231392220723D2232222F3E0D0A20202020202020
- 203C636972636C652063783D223133222063793D2231392220723D2232222F3E
- 0D0A20202020202020203C706F6C79676F6E20706F696E74733D2232322C3337
- 2031372C33312031372C32352032372C32352032372C3331222F3E0D0A202020
- 203C2F673E0D0A202020203C706174682066696C6C3D22234431433445392220
- 643D224D33312C313363302D372E362D31382D352D31382C3063302C312E312C
- 302C352E392C302C3763302C352C342C392C392C3973392D342C392D39433331
- 2C31382E392C33312C31342E312C33312C31337A222F3E0D0A202020203C6720
- 66696C6C3D2223363733414237223E0D0A20202020202020203C636972636C65
- 2063783D223236222063793D2231392220723D2231222F3E0D0A202020202020
- 20203C636972636C652063783D223138222063793D2231392220723D2231222F
- 3E0D0A20202020202020203C7061746820643D224D32322C34632D362E312C30
- 2D31302C342E392D31302C313163302C302E382C302C322E332C302C322E336C
- 322C312E37762D356C31322D346C342C3476356C322D312E3763302C302C302D
- 312E352C302D322E3363302D342D312D382D362D396C2D312D32204832327A22
- 2F3E0D0A20202020202020203C7061746820643D224D32372C33314C32372C33
- 3163302C302D322C312D352C31732D352D312D352D3153362C33332C362C3434
- 6833324333382C33332C32372C33312C32372C33317A222F3E0D0A202020203C
- 2F673E0D0A3C2F7376673E0D0A070000006E006F005F00690064006500610058
- 0400003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
- 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
- 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
- 7720302030203438203438223E0D0A202020203C706174682066696C6C3D2223
- 4642433032442220643D224D33372C323263302D372E372D362E362D31332E38
- 2D31342E352D31322E39632D362C302E372D31302E382C352E352D31312E342C
- 31312E35632D302E352C342E362C312E342C382E372C342E362C31312E332063
- 312E342C312E322C322E332C322E392C322E332C342E38563337683132762D30
- 2E3163302D312E382C302E382D332E362C322E322D342E384333352E312C3239
- 2E372C33372C32362E312C33372C32327A222F3E0D0A202020203C7061746820
- 66696C6C3D22234646463539442220643D224D33302E362C32302E326C2D332D
- 32632D302E332D302E322D302E382D302E322D312E312C304C32342C31392E38
- 6C2D322E342D312E36632D302E332D302E322D302E382D302E322D312E312C30
- 6C2D332C3220632D302E322C302E322D302E342C302E342D302E342C302E3773
- 302C302E362C302E322C302E386C332E382C342E37563337683256323663302D
- 302E322D302E312D302E342D302E322D302E366C2D332E332D342E316C312E35
- 2D316C322E342C312E3663302E332C302E322C302E382C302E322C312E312C30
- 206C322E342D312E366C312E352C316C2D332E332C342E314332352E312C3235
- 2E362C32352C32352E382C32352C323676313168325632362E346C332E382D34
- 2E3763302E322D302E322C302E332D302E352C302E322D302E385333302E382C
- 32302E332C33302E362C32302E327A222F3E0D0A202020203C636972636C6520
- 66696C6C3D2223354336424330222063783D223234222063793D223434222072
- 3D2233222F3E0D0A202020203C706174682066696C6C3D222339464138444122
- 20643D224D32362C3435682D34632D322E322C302D342D312E382D342D34762D
- 3568313276354333302C34332E322C32382E322C34352C32362C34357A222F3E
- 0D0A202020203C672066696C6C3D2223354336424330223E0D0A202020202020
- 20203C7061746820643D224D33302C34316C2D31312E362C312E3663302E332C
- 302E372C302E392C312E342C312E362C312E386C392E342D312E334332392E38
- 2C34322E352C33302C34312E382C33302C34317A222F3E0D0A20202020202020
- 203C706F6C79676F6E20706F696E74733D2231382C33382E372031382C34302E
- 372033302C33392033302C3337222F3E0D0A202020203C2F673E0D0A20202020
- 3C7265637420783D2232322220793D222D322E3922207472616E73666F726D3D
- 226D6174726978282E373037202D2E373037202E373037202E373037202D392E
- 39343120323429222066696C6C3D2223333734373446222077696474683D2234
- 22206865696768743D2235332E37222F3E0D0A3C2F7376673E0D0A080000006E
- 006F005F0076006900640065006F00B20100003C7376672076657273696F6E3D
- 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
- 302F737667222076696577426F783D223020302034382034382220656E61626C
- 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
- 2020203C706174682066696C6C3D22233443414635302220643D224D382C3132
- 68323263322E322C302C342C312E382C342C3476313663302C322E322D312E38
- 2C342D342C344838632D322E322C302D342D312E382D342D3456313643342C31
- 332E382C352E382C31322C382C31327A222F3E0D0A202020203C706F6C79676F
- 6E2066696C6C3D22233338384533432220706F696E74733D2234342C33352033
- 342C32392033342C31392034342C3133222F3E0D0A202020203C6C696E652066
- 696C6C3D226E6F6E6522207374726F6B653D222332313231323122207374726F
- 6B652D77696474683D223422207374726F6B652D6C696E656A6F696E3D22726F
- 756E6422207374726F6B652D6D697465726C696D69743D223130222078313D22
- 35222079313D2235222078323D223433222079323D223433222F3E0D0A3C2F73
- 76673E0D0A040000006E006F006F006B000C0300003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22233930413441452220643D224D382C
- 3339563963302D332E332C322E372D362C362D3668323063332E332C302C362C
- 322E372C362C3676333063302C332E332D322E372C362D362C36483134433130
- 2E372C34352C382C34322E332C382C33397A222F3E0D0A202020203C70617468
- 2066696C6C3D22234543454646312220643D224D33342C37483134632D312E31
- 2C302D322C302E392D322C3276323663302C312E312C302E392C322C322C3268
- 323063312E312C302C322D302E392C322D3256394333362C372E392C33352E31
- 2C372C33342C377A222F3E0D0A202020203C672066696C6C3D22234230424543
- 35223E0D0A20202020202020203C7265637420783D2231362220793D22313222
- 2077696474683D22313622206865696768743D2233222F3E0D0A202020202020
- 20203C7265637420783D2231362220793D223139222077696474683D22313622
- 206865696768743D2232222F3E0D0A20202020202020203C7265637420783D22
- 31362220793D223233222077696474683D22313222206865696768743D223222
- 2F3E0D0A20202020202020203C7265637420783D2231362220793D2232372220
- 77696474683D22313622206865696768743D2232222F3E0D0A20202020202020
- 203C7265637420783D2231362220793D223331222077696474683D2231322220
- 6865696768743D2232222F3E0D0A202020203C2F673E0D0A202020203C706174
- 682066696C6C3D226E6F6E6522207374726F6B653D222365656522207374726F
- 6B652D77696474683D223222207374726F6B652D6D697465726C696D69743D22
- 31302220643D224D32322C3433762D3163302D312E312C302E392D322C322D32
- 683063312E312C302C322C302E392C322C327631222F3E0D0A3C2F7376673E0D
- 0A140000006E0075006D00650072006900630061006C005F0073006F00720074
- 0069006E0067005F0031003200430300003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706F6C79676F6E2066696C6C3D22233534364537412220706F696E74733D
- 2233382C33332033382C352033342C352033342C33332032382C33332033362C
- 34332034342C3333222F3E0D0A202020203C672066696C6C3D22233231393646
- 33223E0D0A20202020202020203C7061746820643D224D31362E342C3230682D
- 3356382E364C392E392C392E3756372E334C31362C352E3168302E335632307A
- 222F3E0D0A20202020202020203C7061746820643D224D31392E342C34334839
- 2E32762D326C342E382D352E3163302E342D302E342C302E372D302E382C302E
- 392D312E3163302E322D302E332C302E352D302E362C302E362D302E3963302E
- 322D302E332C302E332D302E352C302E332D302E382063302E312D302E322C30
- 2E312D302E352C302E312D302E3763302D302E372D302E322D312E322D302E35
- 2D312E36632D302E332D302E342D302E382D302E362D312E342D302E36632D30
- 2E332C302D302E372C302E312D302E392C302E32632D302E332C302E312D302E
- 352C302E332D302E372C302E3520632D302E322C302E322D302E332C302E352D
- 302E342C302E38732D302E312C302E362D302E312C31682D3363302D302E372C
- 302E312D312E332C302E342D312E3963302E322D302E362C302E362D312E312C
- 312D312E3663302E352D302E342C312D302E382C312E362D312E312063302E36
- 2D302E332C312E342D302E342C322E322D302E3463302E382C302C312E352C30
- 2E312C322E312C302E3363302E362C302E322C312E312C302E352C312E352C30
- 2E3873302E372C302E382C302E392C312E3373302E332C312E312C302E332C31
- 2E3863302C302E352D302E312C312D302E322C312E34205331382E332C33342E
- 352C31382C3335732D302E362C302E392D312C312E34632D302E342C302E352D
- 302E392C312D312E342C312E354C31332C34302E3668362E345634337A222F3E
- 0D0A202020203C2F673E0D0A3C2F7376673E0D0A140000006E0075006D006500
- 72006900630061006C005F0073006F007200740069006E0067005F0032003100
- 4F0300003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C706F6C79676F6E2066696C
- 6C3D22233534364537412220706F696E74733D2233382C33332033382C352033
- 342C352033342C33332032382C33332033362C34332034342C3333222F3E0D0A
- 202020203C672066696C6C3D2223323139364633223E0D0A2020202020202020
- 3C7061746820643D224D31392E322C32304839762D326C342E382D352E316330
- 2E342D302E342C302E372D302E382C302E392D312E3163302E322D302E332C30
- 2E352D302E362C302E362D302E3963302E322D302E332C302E332D302E352C30
- 2E332D302E382063302E312D302E322C302E312D302E352C302E312D302E3763
- 302D302E372D302E322D312E322D302E352D312E36632D302E332D302E342D30
- 2E382D302E362D312E342D302E36632D302E332C302D302E372C302E312D302E
- 392C302E32632D302E332C302E312D302E352C302E332D302E372C302E352063
- 2D302E322C302E322D302E332C302E352D302E342C302E38732D302E312C302E
- 362D302E312C31682D3363302D302E372C302E312D312E332C302E342D312E39
- 63302E322D302E362C302E362D312E312C312D312E3663302E352D302E342C31
- 2D302E382C312E362D312E312063302E362D302E332C312E342D302E342C322E
- 322D302E3463302E382C302C312E352C302E312C322E312C302E3363302E362C
- 302E322C312E312C302E352C312E352C302E3873302E372C302E382C302E392C
- 312E3363302E322C302E352C302E332C312E312C302E332C312E382063302C30
- 2E352D302E312C312D302E322C312E34732D302E342C302E392D302E372C312E
- 34732D302E362C302E392D312C312E34632D302E342C302E352D302E392C312D
- 312E342C312E356C2D322E362C322E3868362E345632307A222F3E0D0A202020
- 20202020203C7061746820643D224D31362E322C3433682D335633312E366C2D
- 332E352C312E31762D322E346C362E322D322E3268302E335634337A222F3E0D
- 0A202020203C2F673E0D0A3C2F7376673E0D0A020000006F006B00090100003C
- 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
- 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
- 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
- 30203438203438223E0D0A202020203C636972636C652066696C6C3D22233443
- 41463530222063783D223234222063793D2232342220723D223231222F3E0D0A
- 202020203C706F6C79676F6E2066696C6C3D22234343464639302220706F696E
- 74733D2233342E362C31342E362032312C32382E322031352E342C32322E3620
- 31322E362C32352E342032312C33332E382033372E342C31372E34222F3E0D0A
- 3C2F7376673E0D0A0F0000006F006C0064005F00740069006D0065005F006300
- 61006D006500720061001B0400003C7376672076657273696F6E3D2231222078
- 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
- 222076696577426F783D223020302034382034382220656E61626C652D626163
- 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C70
- 6174682066696C6C3D22233534364537412220643D224D31342C31334838762D
- 312E3843382C31302E352C382E352C31302C392E322C313068332E3663302E37
- 2C302C312E322C302E352C312E322C312E325631337A222F3E0D0A202020203C
- 706174682066696C6C3D22233545333542312220643D224D34302C3430483863
- 2D322E322C302D342D312E382D342D345632326834307631344334342C33382E
- 322C34322E322C34302C34302C34307A222F3E0D0A202020203C706174682066
- 696C6C3D22233432323537412220643D224D31322E372C3232632D302E342C31
- 2E332D302E372C322E362D302E372C3463302C362E362C352E342C31322C3132
- 2C31327331322D352E342C31322D313263302D312E342D302E332D322E372D30
- 2E372D344831322E377A222F3E0D0A202020203C706174682066696C6C3D2223
- 3738393039432220643D224D382C313268333263322E322C302C342C312E382C
- 342C3476364834762D3643342C31332E382C352E382C31322C382C31327A222F
- 3E0D0A202020203C706174682066696C6C3D22233738393039432220643D224D
- 33332E392C31332E314831342E324C31372E362C3863302E342D302E362C312D
- 302E392C312E372D302E3968392E3663302E372C302C312E332C302E332C312E
- 372C302E394C33332E392C31332E317A222F3E0D0A202020203C706174682066
- 696C6C3D22233435354136342220643D224D33352E332C3232632D312E362D34
- 2E372D362E312D382D31312E332D38732D392E372C332E332D31312E332C3848
- 33352E337A222F3E0D0A202020203C636972636C652066696C6C3D2223423338
- 384646222063783D223234222063793D2232362220723D2239222F3E0D0A2020
- 20203C706174682066696C6C3D22234337413746462220643D224D32392C3233
- 632D312E322D312E342D332D322E322D342E382D322E32632D312E382C302D33
- 2E362C302E382D342E382C322E32632D302E352C302E352D302E342C312E332C
- 302E312C312E3863302E352C302E352C312E332C302E342C312E382D302E3120
- 63312E352D312E372C342E332D312E372C352E382C3063302E332C302E332C30
- 2E362C302E342C312C302E3463302E332C302C302E362D302E312C302E392D30
- 2E334332392E342C32342E342C32392E352C32332E352C32392C32337A222F3E
- 0D0A202020203C7265637420783D2233362220793D223135222066696C6C3D22
- 23444245324535222077696474683D223522206865696768743D2234222F3E0D
- 0A3C2F7376673E0D0A0E0000006F006E006C0069006E0065005F007300750070
- 0070006F00720074004C0400003C7376672076657273696F6E3D22312220786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 2076696577426F783D223020302034382034382220656E61626C652D6261636B
- 67726F756E643D226E657720302030203438203438223E0D0A202020203C7265
- 637420783D2231332220793D223330222066696C6C3D22234246333630432220
- 77696474683D22323222206865696768743D223132222F3E0D0A202020203C67
- 2066696C6C3D2223464641373236223E0D0A20202020202020203C636972636C
- 652063783D223130222063793D2232362220723D2234222F3E0D0A2020202020
- 2020203C636972636C652063783D223338222063793D2232362220723D223422
- 2F3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C3D222346
- 46423734442220643D224D33392C313963302D31322E372D33302D382E332D33
- 302C3063302C312E382C302C382E322C302C313063302C382E332C362E372C31
- 352C31352C31357331352D362E372C31352D31354333392C32372E322C33392C
- 32302E382C33392C31397A222F3E0D0A202020203C672066696C6C3D22233738
- 34373139223E0D0A20202020202020203C636972636C652063783D2233302220
- 63793D2232362220723D2232222F3E0D0A20202020202020203C636972636C65
- 2063783D223138222063793D2232362220723D2232222F3E0D0A202020203C2F
- 673E0D0A202020203C706174682066696C6C3D22234646353732322220643D22
- 4D32342C324331352E352C322C332C372E382C332C33352E364C31332C343256
- 32346C31362E382D392E384C33352C32317632316C31302D382E3263302D352E
- 362D302E392D32392D31352E342D32394C32382E322C324832347A222F3E0D0A
- 202020203C706174682066696C6C3D22233735373537352220643D224D34352C
- 3234632D302E362C302D312C302E342D312C31762D3763302D382E382D372E32
- 2D31362D31362D3136682D39632D302E362C302D312C302E342D312C3173302E
- 342C312C312C31683963372E372C302C31342C362E332C31342C313476313020
- 63302C302E362C302E342C312C312C3173312D302E342C312D31763263302C33
- 2E392D332E312C372D372C37483234632D302E362C302D312C302E342D312C31
- 73302E342C312C312C3168313363352C302C392D342C392D39762D354334362C
- 32342E342C34352E362C32342C34352C32347A222F3E0D0A202020203C672066
- 696C6C3D2223333734373446223E0D0A20202020202020203C7061746820643D
- 224D34352C3232682D31632D312E312C302D322C302E392D322C32763463302C
- 312E312C302E392C322C322C32683163312E312C302C322D302E392C322D3276
- 2D344334372C32322E392C34362E312C32322C34352C32327A222F3E0D0A2020
- 2020202020203C636972636C652063783D223234222063793D2233382220723D
- 2232222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0D0000006F0070
- 0065006E00650064005F0066006F006C006400650072007D0100003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C706174682066696C6C3D22234646413030302220
- 643D224D33382C31324832326C2D342D344838632D322E322C302D342C312E38
- 2D342C3476323463302C322E322C312E382C342C342C3468333163312E372C30
- 2C332D312E332C332D335631364334322C31332E382C34302E322C31322C3338
- 2C31327A222F3E0D0A202020203C706174682066696C6C3D2223464643413238
- 2220643D224D34322E322C31384831352E33632D312E392C302D332E362C312E
- 342D332E392C332E334C382C34306833312E3763312E392C302C332E362D312E
- 342C332E392D332E336C322E352D31344334362E362C32302E332C34342E372C
- 31382C34322E322C31387A222F3E0D0A3C2F7376673E0D0A080000006F007200
- 67005F0075006E0069007400BD0100003C7376672076657273696F6E3D223122
- 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
- 7667222076696577426F783D223020302034382034382220656E61626C652D62
- 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
- 3C706174682066696C6C3D22233930434146392220643D224D31302C31307632
- 386832385631304831307A204D33342C33344831345631346832305633347A22
- 2F3E0D0A202020203C7265637420783D22362220793D2236222066696C6C3D22
- 23443831423630222077696474683D22313222206865696768743D223132222F
- 3E0D0A202020203C672066696C6C3D2223323139364633223E0D0A2020202020
- 2020203C7265637420783D2233302220793D2236222077696474683D22313222
- 206865696768743D223132222F3E0D0A20202020202020203C7265637420783D
- 22362220793D223330222077696474683D22313222206865696768743D223132
- 222F3E0D0A20202020202020203C7265637420783D2233302220793D22333022
- 2077696474683D22313222206865696768743D223132222F3E0D0A202020203C
- 2F673E0D0A3C2F7376673E0D0A0C0000006F007200670061006E0069007A0061
- 00740069006F006E00980300003C7376672076657273696F6E3D22312220786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 2076696577426F783D223020302034382034382220656E61626C652D6261636B
- 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
- 74682066696C6C3D22233930434146392220643D224D34322C34324836563130
- 63302D322E322C312E382D342C342D3468323863322E322C302C342C312E382C
- 342C345634327A222F3E0D0A202020203C7265637420783D22362220793D2234
- 32222066696C6C3D2223363442354636222077696474683D2233362220686569
- 6768743D2232222F3E0D0A202020203C672066696C6C3D222331353635433022
- 3E0D0A20202020202020203C7265637420783D2233312220793D223237222077
- 696474683D223622206865696768743D2235222F3E0D0A20202020202020203C
- 7265637420783D2232312220793D223237222077696474683D22362220686569
- 6768743D2235222F3E0D0A20202020202020203C7265637420783D2231312220
- 793D223237222077696474683D223622206865696768743D2235222F3E0D0A20
- 202020202020203C7265637420783D2233312220793D22333522207769647468
- 3D223622206865696768743D2235222F3E0D0A20202020202020203C72656374
- 20783D2231312220793D223335222077696474683D223622206865696768743D
- 2235222F3E0D0A20202020202020203C7265637420783D2233312220793D2231
- 39222077696474683D223622206865696768743D2235222F3E0D0A2020202020
- 2020203C7265637420783D2232312220793D223139222077696474683D223622
- 206865696768743D2235222F3E0D0A20202020202020203C7265637420783D22
- 31312220793D223139222077696474683D223622206865696768743D2235222F
- 3E0D0A20202020202020203C7265637420783D2233312220793D223131222077
- 696474683D223622206865696768743D2235222F3E0D0A20202020202020203C
- 7265637420783D2232312220793D223131222077696474683D22362220686569
- 6768743D2235222F3E0D0A20202020202020203C7265637420783D2231312220
- 793D223131222077696474683D223622206865696768743D2235222F3E0D0A20
- 202020202020203C7265637420783D2232312220793D22333522207769647468
- 3D223622206865696768743D2239222F3E0D0A202020203C2F673E0D0A3C2F73
- 76673E0D0A070000007000610063006B00610067006500800100003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C706174682066696C6C3D22234646393830302220
- 643D224D33382C3432483130632D322E322C302D342D312E382D342D34563130
- 63302D322E322C312E382D342C342D3468323863322E322C302C342C312E382C
- 342C347632384334322C34302E322C34302E322C34322C33382C34327A222F3E
- 0D0A202020203C706174682066696C6C3D22233841353130302220643D224D32
- 392E352C3136682D3131632D302E382C302D312E352D302E372D312E352D312E
- 35763063302D302E382C302E372D312E352C312E352D312E3568313163302E38
- 2C302C312E352C302E372C312E352C312E357630204333312C31352E332C3330
- 2E332C31362C32392E352C31367A222F3E0D0A3C2F7376673E0D0A0400000070
- 00610069006400010300003C7376672076657273696F6E3D22312220786D6C6E
- 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E657720302030203438203438223E0D0A202020203C70617468
- 2066696C6C3D22233245374433322220643D224D32352E342C352E36632D302E
- 382D302E382D322D302E382D322E382C306C2D31322C3132632D302E382C302E
- 382D302E382C322C302C322E384331312C32302E382C31312E352C32312C3132
- 2C323173312D302E322C312E342D302E366C31322D3132204332362E322C372E
- 362C32362E322C362E342C32352E342C352E367A222F3E0D0A202020203C7061
- 74682066696C6C3D22233142354532302220643D224D33372E342C31372E366C
- 2D31322D3132632D302E382D302E382D322D302E382D322E382C30632D302E38
- 2C302E382D302E382C322C302C322E386C31322C31324333352C32302E382C33
- 352E352C32312C33362C323173312D302E322C312E342D302E36204333382E32
- 2C31392E362C33382E322C31382E342C33372E342C31372E367A222F3E0D0A20
- 2020203C706174682066696C6C3D22233338384533432220643D224D33372E34
- 2C34314831302E36632D312C302D312E382D302E372D322D312E364C352C3231
- 6833386C2D332E372C31382E344333392E312C34302E332C33382E332C34312C
- 33372E342C34317A222F3E0D0A202020203C706174682066696C6C3D22233443
- 414635302220643D224D34332C32334835632D312E312C302D322D302E392D32
- 2D32762D3263302D312E312C302E392D322C322D3268333863312E312C302C32
- 2C302E392C322C3276324334352C32322E312C34342E312C32332C34332C3233
- 7A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223444345444338
- 2220706F696E74733D2233302E382C32342E382032322E392C33322E37203139
- 2E322C32382E392031372C33312E312032322E392C33372033332C32362E3922
- 2F3E0D0A3C2F7376673E0D0A08000000700061006E006F00720061006D006100
- 2C0200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
- 234635374330302220643D224D342C3976333263302C302C382E342D332C3230
- 2D337332302C332C32302C33563963302C302D362E372C332D32302C3353342C
- 392C342C397A222F3E0D0A202020203C706174682066696C6C3D222339343241
- 30392220643D224D32342C333463302E312C302C302E332C302C302E342C304C
- 31352C31394C362E392C33362E324331302E332C33352E332C31362E352C3334
- 2C32342C33347A222F3E0D0A202020203C706174682066696C6C3D2223424633
- 3630432220643D224D32342C333463332E332C302C362E332C302E322C392C30
- 2E366C2D382D31312E386C2D372E382C31312E354331392E332C33342E312C32
- 312E362C33342C32342C33347A222F3E0D0A202020203C706174682066696C6C
- 3D22234536353130302220643D224D34302E372C33364C33352C32362E356C2D
- 352C372E384333342E352C33342E372C33382E322C33352E342C34302E372C33
- 367A222F3E0D0A202020203C656C6C697073652066696C6C3D22234646463943
- 34222063783D223336222063793D2231392E35222072783D2232222072793D22
- 322E35222F3E0D0A3C2F7376673E0D0A0E00000070006100720061006C006C00
- 65006C005F007400610073006B007300FC0100003C7376672076657273696F6E
- 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
- 30302F737667222076696577426F783D223020302034382034382220656E6162
- 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
- 202020203C706F6C79676F6E2066696C6C3D22233930434146392220706F696E
- 74733D2233362C31332033362C392032322C392032322C32322031332C323220
- 31332C32362032322C32362032322C33392033362C33392033362C3335203236
- 2C33352032362C32362033362C32362033362C32322032362C32322032362C31
- 33222F3E0D0A202020203C7265637420783D22362220793D223137222066696C
- 6C3D2223443831423630222077696474683D22313022206865696768743D2231
- 34222F3E0D0A202020203C7265637420783D2233322220793D2236222066696C
- 6C3D2223323139364633222077696474683D22313022206865696768743D2231
- 30222F3E0D0A202020203C7265637420783D2233322220793D22333222206669
- 6C6C3D2223323139364633222077696474683D22313022206865696768743D22
- 3130222F3E0D0A202020203C7265637420783D2233322220793D223139222066
- 696C6C3D2223323139364633222077696474683D22313022206865696768743D
- 223130222F3E0D0A3C2F7376673E0D0A05000000700068006F006E0065005D01
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C706174682066696C6C3D222330
- 30393638382220643D224D33392E312C376C2D332E372C304332322E322C372E
- 322C372E312C32342E312C372C33352E346C302C332E3763302C312C302E382C
- 312E392C312E392C312E396C372E352D302E3163312C302C312E392D302E392C
- 312E392D312E396C302E322D382E32206C2D342E372D3463302D322E362C3130
- 2E352D31332E312C31332E322D31332E326C342E332C342E376C372E392D302E
- 3263312C302C312E392D302E392C312E392D312E394C34312C382E394334312C
- 372E382C34302E322C372C33392E312C377A222F3E0D0A3C2F7376673E0D0A0D
- 000000700068006F006E0065005F0061006E00640072006F0069006400A20100
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C706174682066696C6C3D22233337
- 343734462220643D224D31322C3430563863302D322E322C312E382D342C342D
- 3468313663322E322C302C342C312E382C342C3476333263302C322E322D312E
- 382C342D342C344831364331332E382C34342C31322C34322E322C31322C3430
- 7A222F3E0D0A202020203C706174682066696C6C3D2223424244454642222064
- 3D224D33322C37483136632D302E362C302D312C302E342D312C317632396330
- 2C302E362C302E342C312C312C3168313663302E362C302C312D302E342C312D
- 3156384333332C372E342C33322E362C372C33322C377A222F3E0D0A20202020
- 3C7265637420783D2232312220793D223430222066696C6C3D22233738393039
- 43222077696474683D223622206865696768743D2232222F3E0D0A3C2F737667
- 3E0D0A0A000000700068006F0074006F005F007200650065006C006D0200003C
- 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
- 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
- 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
- 30203438203438223E0D0A202020203C706174682066696C6C3D222336373341
- 42372220643D224D31302C39632D322E322C302D342C312E382D342C34763236
- 63302C322E322C312E382C342C342C3468313663322E322C302C342D312E382C
- 342D3456313363302D322E322D312E382D342D342D34222F3E0D0A202020203C
- 672066696C6C3D2223333131423932223E0D0A20202020202020203C72656374
- 20783D2231342220793D223133222077696474683D223222206865696768743D
- 223236222F3E0D0A20202020202020203C7061746820643D224D32342C395637
- 63302D312E322D302E382D322D322D32682D38632D312E322C302D322C302E38
- 2D322C3276324832347A222F3E0D0A202020203C2F673E0D0A202020203C7061
- 74682066696C6C3D22234438343331352220643D224D33302C31334831367632
- 366831345631337A204D32312C3337682D33762D3468335633377A204D32312C
- 3139682D33762D3468335631397A204D32372C3337682D33762D346833563337
- 7A204D32342C3139762D34683376344832347A222F3E0D0A202020203C706174
- 682066696C6C3D22234646353732322220643D224D33302C3133763268337634
- 682D3376313468337634682D3376326831325631334833307A204D33392C3337
- 682D33762D3468335633377A204D33392C3139682D33762D3468335631397A22
- 2F3E0D0A3C2F7376673E0D0A0700000070006900630074007500720065009501
- 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
- 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
- 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
- 20302030203438203438223E0D0A202020203C706174682066696C6C3D222346
- 35374330302220643D224D34302C34314838632D322E322C302D342D312E382D
- 342D3456313163302D322E322C312E382D342C342D3468333263322E322C302C
- 342C312E382C342C347632364334342C33392E322C34322E322C34312C34302C
- 34317A222F3E0D0A202020203C636972636C652066696C6C3D22234646463943
- 34222063783D223335222063793D2231362220723D2233222F3E0D0A20202020
- 3C706F6C79676F6E2066696C6C3D22233934324130392220706F696E74733D22
- 32302C313620392C33322033312C3332222F3E0D0A202020203C706F6C79676F
- 6E2066696C6C3D22234246333630432220706F696E74733D2233312C32322032
- 332C33322033392C3332222F3E0D0A3C2F7376673E0D0A090000007000690065
- 005F0063006800610072007400670100003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706174682066696C6C3D22233030424344342220643D224D32342C364331
- 342E312C362C362C31342E312C362C323473382E312C31382C31382C31386335
- 2E322C302C392E392D322E322C31332E312D352E374C32342C323456367A222F
- 3E0D0A202020203C706174682066696C6C3D22233434384146462220643D224D
- 34322C323463302D392E392D382E312D31382D31382D31387631384834327A22
- 2F3E0D0A202020203C706174682066696C6C3D22233346353142352220643D22
- 4D32342C32346C31332E312C31322E3363332D332E322C342E392D372E352C34
- 2E392D31322E334832347A222F3E0D0A3C2F7376673E0D0A0700000070006C00
- 61006E006E0065007200D60300003C7376672076657273696F6E3D2231222078
- 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
- 222076696577426F783D223020302034382034382220656E61626C652D626163
- 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C70
- 6174682066696C6C3D22234346443844432220643D224D352C33385631346833
- 3876323463302C322E322D312E382C342D342C34483943362E382C34322C352C
- 34302E322C352C33387A222F3E0D0A202020203C706174682066696C6C3D2223
- 4634343333362220643D224D34332C313076364835762D3663302D322E322C31
- 2E382D342C342D346833304334312E322C362C34332C372E382C34332C31307A
- 222F3E0D0A202020203C672066696C6C3D2223423731433143223E0D0A202020
- 20202020203C636972636C652063783D223333222063793D2231302220723D22
- 33222F3E0D0A20202020202020203C636972636C652063783D22313522206379
- 3D2231302220723D2233222F3E0D0A202020203C2F673E0D0A202020203C6720
- 66696C6C3D2223423042454335223E0D0A20202020202020203C706174682064
- 3D224D33332C33632D312E312C302D322C302E392D322C32763563302C312E31
- 2C302E392C322C322C3273322D302E392C322D3256354333352C332E392C3334
- 2E312C332C33332C337A222F3E0D0A20202020202020203C7061746820643D22
- 4D31352C33632D312E312C302D322C302E392D322C32763563302C312E312C30
- 2E392C322C322C3273322D302E392C322D3256354331372C332E392C31362E31
- 2C332C31352C337A222F3E0D0A202020203C2F673E0D0A202020203C67206669
- 6C6C3D2223423042454335223E0D0A20202020202020203C7265637420783D22
- 31332220793D223231222077696474683D223622206865696768743D2236222F
- 3E0D0A20202020202020203C7265637420783D2232312220793D223231222077
- 696474683D223622206865696768743D2236222F3E0D0A20202020202020203C
- 7265637420783D2232392220793D223231222077696474683D22362220686569
- 6768743D2236222F3E0D0A20202020202020203C7265637420783D2231332220
- 793D223239222077696474683D223622206865696768743D2236222F3E0D0A20
- 202020202020203C7265637420783D2232312220793D22323922207769647468
- 3D223622206865696768743D2236222F3E0D0A202020203C2F673E0D0A202020
- 203C7265637420783D2232392220793D223239222066696C6C3D222346343433
- 3336222077696474683D223622206865696768743D2236222F3E0D0A3C2F7376
- 673E0D0A0400000070006C0075007300320100003C7376672076657273696F6E
- 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
- 30302F737667222076696577426F783D223020302034382034382220656E6162
- 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
- 202020203C636972636C652066696C6C3D2223344341463530222063783D2232
- 34222063793D2232342220723D223231222F3E0D0A202020203C672066696C6C
- 3D2223666666223E0D0A20202020202020203C7265637420783D223231222079
- 3D223134222077696474683D223622206865696768743D223230222F3E0D0A20
- 202020202020203C7265637420783D2231342220793D22323122207769647468
- 3D22323022206865696768743D2236222F3E0D0A202020203C2F673E0D0A3C2F
- 7376673E0D0A1400000070006F006400690075006D005F007700690074006800
- 5F00610075006400690065006E00630065000C0200003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C706F6C79676F6E2066696C6C3D22234230424543352220706F
- 696E74733D2234312C313220372C313220362C31362031312C313920392C3136
- 2033392C31362033372C31392034322C3136222F3E0D0A202020203C706F6C79
- 676F6E2066696C6C3D22233738393039432220706F696E74733D22392C313620
- 33392C31362033352C32382031332C3238222F3E0D0A202020203C636972636C
- 652066696C6C3D2223464642373444222063783D223234222063793D22323822
- 20723D2234222F3E0D0A202020203C636972636C652066696C6C3D2223464642
- 373444222063783D223336222063793D2232382220723D2234222F3E0D0A2020
- 20203C636972636C652066696C6C3D2223464642373444222063783D22313222
- 2063793D2232382220723D2234222F3E0D0A202020203C636972636C65206669
- 6C6C3D2223464642373444222063783D223138222063793D2233372220723D22
- 35222F3E0D0A202020203C636972636C652066696C6C3D222346464237344422
- 2063783D223330222063793D2233372220723D2235222F3E0D0A3C2F7376673E
- 0D0A1300000070006F006400690075006D005F0077006900740068005F007300
- 7000650061006B0065007200930100003C7376672076657273696F6E3D223122
- 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
- 7667222076696577426F783D223020302034382034382220656E61626C652D62
- 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
- 3C636972636C652066696C6C3D2223464642373444222063783D223234222063
- 793D2231312220723D2236222F3E0D0A202020203C706174682066696C6C3D22
- 233630374438422220643D224D33362C32362E3163302C302D332E332D372E31
- 2D31322D372E31732D31322C372E312D31322C372E315633306832345632362E
- 317A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D22234230424543
- 352220706F696E74733D2234312C323520372C323520362C32392031312C3332
- 20392C32392033392C32392033372C33322034322C3239222F3E0D0A20202020
- 3C706F6C79676F6E2066696C6C3D22233738393039432220706F696E74733D22
- 392C32392033392C32392033352C34312031332C3431222F3E0D0A3C2F737667
- 3E0D0A1600000070006F006400690075006D005F0077006900740068006F0075
- 0074005F0073007000650061006B0065007200070100003C7376672076657273
- 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
- 2F323030302F737667222076696577426F783D22302030203438203438222065
- 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
- 3E0D0A202020203C706F6C79676F6E2066696C6C3D2223423042454335222070
- 6F696E74733D2234332C313620352C313620342C323020392C323320372C3230
- 2034312C32302033392C32332034342C3230222F3E0D0A202020203C706F6C79
- 676F6E2066696C6C3D22233738393039432220706F696E74733D22372C323020
- 34312C32302033372C33362031312C3336222F3E0D0A3C2F7376673E0D0A0D00
- 000070006F007200740072006100690074005F006D006F00640065000E040000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C706174682066696C6C3D2223464639
- 3830302220643D224D32322C3338632D342E382C302D352D372D352D37762D36
- 68313076364332372C33312C32362E382C33382C32322C33387A222F3E0D0A20
- 2020203C672066696C6C3D2223464641373236223E0D0A20202020202020203C
- 636972636C652063783D223331222063793D2231392220723D2232222F3E0D0A
- 20202020202020203C636972636C652063783D223133222063793D2231392220
- 723D2232222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C
- 6C3D22234646423734442220643D224D33312C313363302D372E362D31382D35
- 2D31382C3063302C312E312C302C352E392C302C3763302C352C342C392C392C
- 3973392D342C392D394333312C31382E392C33312C31342E312C33312C31337A
- 222F3E0D0A202020203C706174682066696C6C3D22233432343234322220643D
- 224D32322C34632D362E312C302D31302C342E392D31302C313163302C302E38
- 2C302C322E332C302C322E336C322C312E37762D356C31322D346C342C347635
- 6C322D312E3763302C302C302D312E352C302D322E3363302D342D312D382D36
- 2D396C2D312D32204832327A222F3E0D0A202020203C672066696C6C3D222337
- 3834373139223E0D0A20202020202020203C636972636C652063783D22323622
- 2063793D2231392220723D2231222F3E0D0A20202020202020203C636972636C
- 652063783D223138222063793D2231392220723D2231222F3E0D0A202020203C
- 2F673E0D0A202020203C706174682066696C6C3D22233030393638382220643D
- 224D32372C33314C32372C333163302C302D312E382C322D352C32732D352D32
- 2D352D3253362C33332C362C34346833324333382C33332C32372C33312C3237
- 2C33317A222F3E0D0A202020203C672066696C6C3D2223464639383030223E0D
- 0A20202020202020203C7265637420783D2233362E312220793D22362E312220
- 7472616E73666F726D3D226D6174726978282E373037202E373037202D2E3730
- 37202E3730372031392E373837202D32352E373729222077696474683D22392E
- 3922206865696768743D22392E39222F3E0D0A20202020202020203C72656374
- 20783D2233362220793D2236222077696474683D22313022206865696768743D
- 223130222F3E0D0A202020203C2F673E0D0A202020203C636972636C65206669
- 6C6C3D2223464645423342222063783D223431222063793D2231312220723D22
- 33222F3E0D0A3C2F7376673E0D0A08000000700072006500760069006F007500
- 7300C80000003C7376672076657273696F6E3D22312220786D6C6E733D226874
- 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
- 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
- 226E657720302030203438203438223E0D0A202020203C706F6C79676F6E2066
- 696C6C3D22233231393646332220706F696E74733D2233302E392C3433203334
- 2C33392E392031382E312C32342033342C382E312033302E392C352031322C32
- 34222F3E0D0A3C2F7376673E0D0A050000007000720069006E0074006A030000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C7265637420783D22392220793D2231
- 31222066696C6C3D2223343234323432222077696474683D2233302220686569
- 6768743D2233222F3E0D0A202020203C706174682066696C6C3D222336313631
- 36312220643D224D342C3235683430762D3763302D322E322D312E382D342D34
- 2D344838632D322E322C302D342C312E382D342C345632357A222F3E0D0A2020
- 20203C706174682066696C6C3D22233432343234322220643D224D382C333668
- 333263322E322C302C342D312E382C342D34762D384834763843342C33342E32
- 2C352E382C33362C382C33367A222F3E0D0A202020203C636972636C65206669
- 6C6C3D2223303045363736222063783D223430222063793D2231382220723D22
- 31222F3E0D0A202020203C7265637420783D2231312220793D2234222066696C
- 6C3D2223393043414639222077696474683D22323622206865696768743D2231
- 30222F3E0D0A202020203C706174682066696C6C3D2223323432343234222064
- 3D224D33372E352C3331682D323743392E372C33312C392C33302E332C392C32
- 392E35763063302D302E382C302E372D312E352C312E352D312E356832376330
- 2E382C302C312E352C302E372C312E352C312E357630204333392C33302E332C
- 33382E332C33312C33372E352C33317A222F3E0D0A202020203C726563742078
- 3D2231312220793D223331222066696C6C3D2223393043414639222077696474
- 683D22323622206865696768743D223131222F3E0D0A202020203C7265637420
- 783D2231312220793D223239222066696C6C3D22233432413546352220776964
- 74683D22323622206865696768743D2232222F3E0D0A202020203C672066696C
- 6C3D2223313937364432223E0D0A20202020202020203C7265637420783D2231
- 362220793D223333222077696474683D22313722206865696768743D2232222F
- 3E0D0A20202020202020203C7265637420783D2231362220793D223337222077
- 696474683D22313322206865696768743D2232222F3E0D0A202020203C2F673E
- 0D0A3C2F7376673E0D0A070000007000720069007600610063007900FE010000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C706174682066696C6C3D2223343234
- 3234322220643D224D32342C34632D352E352C302D31302C342E352D31302C31
- 3076346834762D3463302D332E332C322E372D362C362D3673362C322E372C36
- 2C3676346834762D344333342C382E352C32392E352C342C32342C347A222F3E
- 0D0A202020203C706174682066696C6C3D22234642384330302220643D224D33
- 362C3434483132632D322E322C302D342D312E382D342D3456323263302D322E
- 322C312E382D342C342D3468323463322E322C302C342C312E382C342C347631
- 384334302C34322E322C33382E322C34342C33362C34347A222F3E0D0A202020
- 203C636972636C652066696C6C3D2223454645424539222063783D2232342220
- 63793D2233312220723D2236222F3E0D0A202020203C636972636C652066696C
- 6C3D2223314538384535222063783D223234222063793D2233312220723D2233
- 222F3E0D0A202020203C636972636C652066696C6C3D2223666666222063783D
- 223236222063793D2232392220723D2231222F3E0D0A3C2F7376673E0D0A0700
- 0000700072006F006300650073007300A00300003C7376672076657273696F6E
- 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
- 30302F737667222076696577426F783D223020302034382034382220656E6162
- 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
- 202020203C672066696C6C3D2223394332374230223E0D0A2020202020202020
- 3C706F6C79676F6E20706F696E74733D2233312C382034322E392C392E362033
- 332E312C31392E34222F3E0D0A20202020202020203C706F6C79676F6E20706F
- 696E74733D2231372C343020352E312C33382E342031342E392C32382E36222F
- 3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22382C3137
- 20392E362C352E312031392E342C31342E39222F3E0D0A20202020202020203C
- 7061746820643D224D392E332C32312E324C352E312C323243352C32322E372C
- 352C32332E332C352C323463302C342E362C312E362C392C342E362C31322E34
- 6C332D322E364331302E332C33312E312C392C32372E362C392C32342043392C
- 32332E312C392E312C32322E312C392E332C32312E327A222F3E0D0A20202020
- 202020203C7061746820643D224D32342C35632D352E342C302D31302E322C32
- 2E332D31332E372C352E396C322E382C322E384331352E392C31302E382C3139
- 2E372C392C32342C3963302E392C302C312E392C302E312C322E382C302E336C
- 302E372D332E39204332362E342C352E312C32352E322C352C32342C357A222F
- 3E0D0A20202020202020203C7061746820643D224D33382E372C32362E386C34
- 2E322D302E3863302E312D302E372C302E312D312E332C302E312D3263302D34
- 2E342D312E352D382E372D342E332D31322E316C2D332E312C322E3563322E32
- 2C322E372C332E342C362E312C332E342C392E35204333392C32342E392C3338
- 2E392C32352E392C33382E372C32362E387A222F3E0D0A20202020202020203C
- 7061746820643D224D33342E392C33342E334333322E312C33372E322C32382E
- 332C33392C32342C3339632D302E392C302D312E392D302E312D322E382D302E
- 336C2D302E372C332E3963312E322C302E322C322E342C302E332C332E352C30
- 2E332063352E342C302C31302E322D322E332C31332E372D352E394C33342E39
- 2C33342E337A222F3E0D0A20202020202020203C706F6C79676F6E20706F696E
- 74733D2234302C33312033382E342C34322E392032382E362C33332E31222F3E
- 0D0A202020203C2F673E0D0A3C2F7376673E0D0A06000000700075007A007A00
- 6C006500F30100003C7376672076657273696F6E3D22312220786D6C6E733D22
- 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
- 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
- 643D226E657720302030203438203438223E0D0A202020203C70617468206669
- 6C6C3D22233842433334412220643D224D33392C313563302D322E322D312E38
- 2D342D342D34682D36632D302E372C302D312E312D302E382D302E372D312E34
- 63302E362D312C302E392D322E322C302E362D332E35632D302E342D322D312E
- 392D332E362D332E382D34204332312E382C312E342C31392C332E392C31392C
- 3763302C312C302E332C312E382C302E372C322E3663302E342C302E362C302C
- 312E342D302E382C312E34682D36632D322E322C302D342C312E382D342C3476
- 3763302C302E372C302E382C312E312C312E342C302E372063312D302E362C32
- 2E322D302E392C332E352D302E3663322C302E342C332E362C312E392C342C33
- 2E3863302E372C332E322D312E382C362E312D342E392C362E31632D312C302D
- 312E382D302E332D322E362D302E3743392E382C33302E392C392C33312E332C
- 392C3332763663302C322E322C312E382C342C342C342068323263322E322C30
- 2C342D312E382C342D345631357A222F3E0D0A3C2F7376673E0D0A0900000071
- 00750065007300740069006F006E007300560200003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706F6C79676F6E2066696C6C3D22233432413546352220706F69
- 6E74733D2233362C343420382C343420382C382032382C382033362C3136222F
- 3E0D0A202020203C706F6C79676F6E2066696C6C3D2223393043414639222070
- 6F696E74733D2234302C34302031322C34302031322C342033322C342034302C
- 3132222F3E0D0A202020203C706F6C79676F6E2066696C6C3D22234531463546
- 452220706F696E74733D2233382E352C31332033312C31332033312C352E3522
- 2F3E0D0A202020203C706174682066696C6C3D22233139373644322220643D22
- 4D32342E352C32382E3363302D342E372C332E362D342E342C332E362D372E32
- 63302D302E372D302E322D322E312D322D322E31632D322C302D322E312C312E
- 362D322E312C32682D322E3763302D302E372C302E332D342E322C342E382D34
- 2E322063342E362C302C342E372C332E362C342E372C342E3363302C332E352D
- 332E382C342D332E382C372E334832342E357A204D32342E332C33312E386330
- 2D302E322C302D312E352C312E352D312E3563312E342C302C312E352C312E33
- 2C312E352C312E3563302C302E342D302E322C312E342D312E352C312E342043
- 32342E352C33332E322C32342E332C33322E322C32342E332C33312E387A222F
- 3E0D0A3C2F7376673E0D0A0A000000720061006400610072005F0070006C006F
- 007400600200003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
- 6C3D22234346443844432220643D224D33382E342C31334C32342E312C362E34
- 4C342E362C31322E316C382E382C31332E326C2D322E322C31352E316832322E
- 376C362E362D31332E334C33382E342C31337A204D33322E312C33372E354831
- 342E376C312E382D31322E394C392E342C31332E39206C31342E352D342E334C
- 33352E362C31356C312E382C31312E374C33322E312C33372E357A222F3E0D0A
- 202020203C672066696C6C3D2223303042434434223E0D0A2020202020202020
- 3C636972636C652063783D223234222063793D22382220723D2234222F3E0D0A
- 20202020202020203C636972636C652063783D223337222063793D2231342220
- 723D2234222F3E0D0A20202020202020203C636972636C652063783D22333922
- 2063793D2232372220723D2234222F3E0D0A20202020202020203C636972636C
- 652063783D2237222063793D2231332220723D2234222F3E0D0A202020202020
- 20203C636972636C652063783D223133222063793D2233392220723D2234222F
- 3E0D0A20202020202020203C636972636C652063783D223135222063793D2232
- 352220723D2234222F3E0D0A20202020202020203C636972636C652063783D22
- 3333222063793D2233392220723D2234222F3E0D0A202020203C2F673E0D0A3C
- 2F7376673E0D0A0600000072006100740069006E0067002B0100003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C636972636C652066696C6C3D2223463434333336
- 222063783D223234222063793D2232342220723D223231222F3E0D0A20202020
- 3C706F6C79676F6E2066696C6C3D22234646434132382220706F696E74733D22
- 32342C31312032372E392C31382E392033362E362C32302E322033302E332C32
- 362E332033312E382C33352032342C33302E392031362E322C33352031372E37
- 2C32362E332031312E342C32302E322032302E312C31382E39222F3E0D0A3C2F
- 7376673E0D0A0700000072006100740069006E0067007300B90100003C737667
- 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
- 332E6F72672F323030302F737667222076696577426F783D2230203020343820
- 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
- 38203438223E0D0A202020203C706F6C79676F6E2066696C6C3D222334324135
- 46352220706F696E74733D2233362C343420382C343420382C382032382C3820
- 33362C3136222F3E0D0A202020203C706F6C79676F6E2066696C6C3D22233930
- 434146392220706F696E74733D2234302C34302031322C34302031322C342033
- 322C342034302C3132222F3E0D0A202020203C706F6C79676F6E2066696C6C3D
- 22234531463546452220706F696E74733D2233382E352C31332033312C313320
- 33312C352E35222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222331
- 39373644322220706F696E74733D2233342C32302032372C32302032392E342C
- 32322E342032372C32342E392032332C32302E392031362E392C32362E392031
- 392E312C32392E312032332C32352E312032372C32392E312033312E362C3234
- 2E362033342C3237222F3E0D0A3C2F7376673E0D0A0700000072006500610064
- 0069006E006700310200003C7376672076657273696F6E3D22312220786D6C6E
- 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E657720302030203438203438223E0D0A202020203C70617468
- 2066696C6C3D22233543364243302220643D224D34302C3430632D362E392C30
- 2D31362C342D31362C3456323263302C302C392D342C31382D344C34302C3430
- 7A222F3E0D0A202020203C706174682066696C6C3D2223373938364342222064
- 3D224D382C343063362E392C302C31362C342C31362C3456323263302C302D39
- 2D342D31382D344C382C34307A222F3E0D0A202020203C672066696C6C3D2223
- 464642373444223E0D0A20202020202020203C636972636C652063783D223234
- 222063793D2231322220723D2238222F3E0D0A20202020202020203C70617468
- 20643D224D34312C3332683163302E362C302C312D302E342C312D31762D3463
- 302D302E362D302E342D312D312D31682D31632D312E372C302D332C312E332D
- 332C3376304333382C33302E372C33392E332C33322C34312C33327A222F3E0D
- 0A20202020202020203C7061746820643D224D372C32364836632D302E362C30
- 2D312C302E342D312C31763463302C302E362C302E342C312C312C3168316331
- 2E372C302C332D312E332C332D3376304331302C32372E332C382E372C32362C
- 372C32367A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0D000000
- 720065006100640069006E0067005F00650062006F006F006B00220300003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C706174682066696C6C3D22233231393646
- 332220643D224D33332E352C3237632D322E322D332D352E322D352D392E352D
- 35732D372E332C322D392E352C354833332E357A222F3E0D0A202020203C7061
- 74682066696C6C3D22233534364537412220643D224D33342E312C3433483133
- 2E39632D312E312C302D312E392D302E382D322D312E396C2D302E382D313343
- 31312E312C32372C31322C32362C31332E312C32366832312E3863312E322C30
- 2C322E312C312C322C322E316C2D302E382C3133204333362C34322E322C3335
- 2E322C34332C33342E312C34337A222F3E0D0A202020203C636972636C652066
- 696C6C3D2223423042454335222063783D223334222063793D2232392220723D
- 2231222F3E0D0A202020203C672066696C6C3D2223464642373444223E0D0A20
- 202020202020203C636972636C652063783D223234222063793D223132222072
- 3D2238222F3E0D0A20202020202020203C7061746820643D224D31362E312C34
- 322E344C31352C34332E35632D302E362C302E362D312E362C302E362D322E32
- 2C306C2D332E332D332E33632D302E362D302E362D302E362D312E362C302D32
- 2E326C312E312D312E3163312E332D312E332C332E312D312E332C342E342C30
- 206C312E312C312E314331372E332C33392E332C31372E332C34312E322C3136
- 2E312C34322E347A222F3E0D0A20202020202020203C7061746820643D224D33
- 312E392C33386C312E312D312E3163312E332D312E332C332E312D312E332C34
- 2E342C306C312E312C312E3163302E362C302E362C302E362C312E362C302C32
- 2E326C2D332E332C332E33632D302E362C302E362D312E362C302E362D322E32
- 2C30206C2D312E312D312E314333302E372C34312E322C33302E372C33392E33
- 2C33312E392C33387A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A
- 06000000720065006400640069007400200B00003C3F786D6C2076657273696F
- 6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A3C212D2D
- 2047656E657261746F723A2041646F626520496C6C7573747261746F72203135
- 2E302E302C20535647204578706F727420506C75672D496E202E205356472056
- 657273696F6E3A20362E3030204275696C6420302920202D2D3E0D0A3C21444F
- 435459504520737667205055424C494320222D2F2F5733432F2F445444205356
- 4720312E312F2F454E222022687474703A2F2F7777772E77332E6F72672F4772
- 6170686963732F5356472F312E312F4454442F73766731312E647464223E0D0A
- 3C7376672076657273696F6E3D22312E31222020786D6C6E733D22687474703A
- 2F2F7777772E77332E6F72672F323030302F7376672220786D6C6E733A786C69
- 6E6B3D22687474703A2F2F7777772E77332E6F72672F313939392F786C696E6B
- 2220783D223070782220793D22307078220D0A092077696474683D2234387078
- 22206865696768743D2234387078222076696577426F783D2230203020343820
- 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
- 382034382220786D6C3A73706163653D227072657365727665223E0D0A3C673E
- 0D0A093C706174682066696C6C3D22234646464646462220643D224D31322E31
- 39332C31392E353535632D312E39342D312E3734312D342E37392D312E373237
- 2D362E3336352C302E303239632D312E3537362C312E3735362D312E3330312C
- 352E3032332C302E3932362C362E3633324C31322E3139332C31392E3535357A
- 220D0A09092F3E0D0A093C706174682066696C6C3D2223464646464646222064
- 3D224D33352E3830372C31392E35353563312E3933392D312E3734312C342E37
- 38392D312E3732372C362E3336352C302E30323963312E3537352C312E373536
- 2C312E3330322C352E3032332D302E3932372C362E3633324C33352E3830372C
- 31392E3535357A220D0A09092F3E0D0A093C673E0D0A09093C636972636C6520
- 66696C6C3D2223464646464646222063783D2233382E3332222063793D223130
- 2E3437352220723D22332E35222F3E0D0A093C2F673E0D0A093C673E0D0A0909
- 3C656C6C697073652066696C6C3D2223464646464646222063783D2232342E30
- 3835222063793D2232382E363131222072783D2231382E303835222072793D22
- 31322E393436222F3E0D0A093C2F673E0D0A3C2F673E0D0A3C673E0D0A093C63
- 6972636C652066696C6C3D2223443834333135222063783D2233302E33363522
- 2063793D2232362E33392220723D22322E383834222F3E0D0A093C636972636C
- 652066696C6C3D2223443834333135222063783D2231372E363335222063793D
- 2232362E33392220723D22322E383834222F3E0D0A3C2F673E0D0A3C673E0D0A
- 093C706174682066696C6C3D22233337343734462220643D224D32342E303032
- 2C33342E393032632D332E3235322C302D362E31342D302E3734352D382E3030
- 322D312E39303263312E3032342C322E3034342C342E3139362C342C382E3030
- 322C3463332E3830322C302C362E3937362D312E3935362C372E3939382D340D
- 0A09094333302E3134332C33342E3135372C32372E3235342C33342E3930322C
- 32342E3030322C33342E3930327A222F3E0D0A093C706174682066696C6C3D22
- 233337343734462220643D224D34312E38332C32372E3032366C2D312E31372D
- 312E36323163302E3833312D302E362C312E3337332D312E3535362C312E3438
- 382D322E36323363302E3130352D302E39382D302E3135372D312E3930332D30
- 2E3732312D322E3533310D0A0909632D302E3537312D302E3633372D312E3339
- 312D302E39392D322E3330372D302E393934632D302E3932372C302E3031332D
- 312E3839342C302E3336352D322E3634362C312E3034316C2D312E3333362D31
- 2E34383863312E3132332D312E3030382C322E3534352D312E3532332C332E39
- 39312D312E3535330D0A090963312E3438382C302E3030372C322E3833332C30
- 2E3539362C332E3738362C312E36353863302E3934322C312E30352C312E3338
- 372C322E3533372C312E3232312C342E3038314334332E3936312C32342E3632
- 362C34332E3132312C32362E3039362C34312E38332C32372E3032367A222F3E
- 0D0A093C706174682066696C6C3D22233337343734462220643D224D362E3136
- 392C32372E303236632D312E32392D302E3933322D322E3133312D322E343031
- 2D322E3330362D342E303331632D302E3136362D312E3534332C302E3237392D
- 332E30332C312E3232312D342E3037390D0A090963302E3935332D312E303632
- 2C322E3239372D312E3635312C332E3738352D312E36353863302E3030392C30
- 2C302E3031382C302C302E3032372C3063312E3434312C302C322E3834392C30
- 2E3535312C332E3936352C312E3535336C2D312E3333362C312E3438380D0A09
- 09632D302E3735332D302E3637362D312E3638392D312E3030352D322E363436
- 2D312E303431632D302E3931362C302E3030342D312E3733352C302E3335372D
- 322E3330362C302E393934632D302E3536332C302E3632382D302E3832362C31
- 2E35352D302E3732312C322E35330D0A090963302E3131352C312E3036372C30
- 2E3635372C322E3032332C312E3438382C322E3632344C362E3136392C32372E
- 3032367A222F3E0D0A093C706174682066696C6C3D2223333734373446222064
- 3D224D32352C31362E3834682D3263302D322E3838352C302D31302E3534382C
- 342E3937392D31302E35343863322E3135342C302C332E3139332C312E323131
- 2C332E3935322C322E3039360D0A090963302E3632392C302E3733342C302E39
- 36312C312E3038362C312E3631362C312E30383668312E33377632682D312E33
- 37632D312E3630342C302D322E3435332D302E39392D332E3133352D312E3738
- 35632D302E36372D302E3738312D312E3139382D312E3339382D322E3433342D
- 312E3339380D0A09094332352E3937352C382E3239322C32352C31312E303838
- 2C32352C31362E38347A222F3E0D0A093C706174682066696C6C3D2223333734
- 3734462220643D224D32342E3038352C31362E393563392E3432312C302C3137
- 2E3038352C352E3233312C31372E3038352C31312E36363163302C362E343331
- 2D372E3636342C31312E3636322D31372E3038352C31312E36363253372C3335
- 2E3034322C372C32382E3631310D0A090943372C32322E3138312C31342E3636
- 342C31362E39352C32342E3038352C31362E3935204D32342E3038352C31342E
- 39354331332E3534342C31342E39352C352C32312E3036362C352C32382E3631
- 3163302C372E3534362C382E3534352C31332E3636322C31392E3038352C3133
- 2E3636320D0A09096331302E35342C302C31392E3038352D362E3131362C3139
- 2E3038352D31332E3636324334332E31372C32312E3036362C33342E3632352C
- 31342E39352C32342E3038352C31342E39354C32342E3038352C31342E39357A
- 222F3E0D0A093C706174682066696C6C3D22233337343734462220643D224D33
- 382E33322C372E39373563312E3337392C302C322E352C312E3132322C322E35
- 2C322E35732D312E3132312C322E352D322E352C322E35732D322E352D312E31
- 32322D322E352D322E355333362E3934312C372E3937352C33382E33322C372E
- 3937350D0A0909204D33382E33322C352E393735632D322E3438342C302D342E
- 352C322E3031352D342E352C342E3573322E3031362C342E352C342E352C342E
- 3563322E3438362C302C342E352D322E3031352C342E352D342E355334302E38
- 30372C352E3937352C33382E33322C352E3937354C33382E33322C352E393735
- 7A222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A040000007200650064006F00
- 310100003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C672066696C6C3D22233030
- 42434434223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D
- 2234332C31382032392C362E332032392C32392E37222F3E0D0A202020202020
- 20203C7061746820643D224D32302C31346831327638483230632D322E382C30
- 2D352C322E322D352C3573322E322C352C352C3568337638682D33632D372E32
- 2C302D31332D352E382D31332D31335331322E382C31342C32302C31347A222F
- 3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0700000072006500660072
- 006500730068000A0200003C7376672076657273696F6E3D22312220786D6C6E
- 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E657720302030203438203438223E0D0A202020203C67206669
- 6C6C3D2223313536354330223E0D0A20202020202020203C7061746820643D22
- 4D31332C313363302D332E332C322E372D362C362D3668313063332E332C302C
- 362C322E372C362C36683463302D352E352D342E352D31302D31302D31304831
- 394331332E352C332C392C372E352C392C31337631312E3268345631337A222F
- 3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22342E362C
- 32322031312C33302E342031372E342C3232222F3E0D0A202020203C2F673E0D
- 0A202020203C672066696C6C3D2223313536354330223E0D0A20202020202020
- 203C7061746820643D224D33352C333563302C332E332D322E372C362D362C36
- 483139632D332E332C302D362D322E372D362D36483963302C352E352C342E35
- 2C31302C31302C313068313063352E352C302C31302D342E352C31302D313056
- 3233682D345633357A222F3E0D0A20202020202020203C706F6C79676F6E2070
- 6F696E74733D2233302E362C32362033372C31372E362034332E342C3236222F
- 3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A1400000072006500670069
- 007300740065007200650064005F00740072006100640065006D00610072006B
- 00540200003C7376672076657273696F6E3D22312220786D6C6E733D22687474
- 703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F78
- 3D223020302034382034382220656E61626C652D6261636B67726F756E643D22
- 6E657720302030203438203438223E0D0A202020203C636972636C652066696C
- 6C3D2223394332374230222063783D223234222063793D2232342220723D2232
- 31222F3E0D0A202020203C706174682066696C6C3D2223453142454537222064
- 3D224D32352C32362E38682D342E357639682D345631322E3568382E3263312E
- 332C302C322E352C302E322C332E362C302E3563312C302E332C312E392C302E
- 382C322E362C312E3363302E372C302E362C312E332C312E332C312E362C322E
- 322073302E362C312E392C302E362C3363302C312E362D302E342C322E392D31
- 2E312C332E39632D302E382C312D312E382C312E392D332E312C322E346C352E
- 322C392E3776302E32682D342E334C32352C32362E387A204D32302E352C3233
- 2E3668342E3263302E372C302C312E342D302E312C312E392D302E332063302E
- 352D302E322C312D302E352C312E342D302E3863302E342D302E332C302E362D
- 302E372C302E382D312E3263302E322D302E352C302E332D312C302E332D312E
- 3663302D302E362D302E312D312E312D302E332D312E36632D302E322D302E35
- 2D302E342D302E392D302E382D312E3220632D302E342D302E332D302E382D30
- 2E362D312E342D302E38632D302E352D302E322D312E322D302E332D322D302E
- 33682D342E315632332E367A222F3E0D0A3C2F7376673E0D0A0C000000720065
- 006D006F00760065005F0069006D00610067006500BF0200003C737667207665
- 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
- 72672F323030302F737667222076696577426F783D2230203020343820343822
- 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
- 38223E0D0A202020203C706174682066696C6C3D22233843424344362220643D
- 224D34302C34314838632D322E322C302D342D312E382D342D3456313163302D
- 322E322C312E382D342C342D3468333263322E322C302C342C312E382C342C34
- 7632364334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A20
- 2020203C636972636C652066696C6C3D2223423344444635222063783D223335
- 222063793D2231362220723D2233222F3E0D0A202020203C706F6C79676F6E20
- 66696C6C3D22233941433945332220706F696E74733D2232302C313620392C33
- 322033312C3332222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 4233444446352220706F696E74733D2233312C32322032332C33322033392C33
- 32222F3E0D0A202020203C636972636C652066696C6C3D222346343433333622
- 2063783D223338222063793D2233382220723D223130222F3E0D0A202020203C
- 672066696C6C3D2223666666223E0D0A20202020202020203C7265637420783D
- 2233362E352220793D22333222207472616E73666F726D3D226D617472697828
- 2D2E373037202E373037202D2E373037202D2E3730372039312E373420333829
- 222077696474683D223322206865696768743D223132222F3E0D0A2020202020
- 2020203C7265637420783D2233362E352220793D22333222207472616E73666F
- 726D3D226D6174726978282D2E373037202D2E373037202E373037202D2E3730
- 372033382039312E373429222077696474683D223322206865696768743D2231
- 32222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0500000072006500
- 750073006500010300003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C706F6C7967
- 6F6E2066696C6C3D22233435354136342220706F696E74733D2231322E312C34
- 322031372E322C34322031362E352C31382E322031302E392C32302E32222F3E
- 0D0A202020203C636972636C652066696C6C3D2223464642373444222063783D
- 2233362E35222063793D2231302220723D2235222F3E0D0A202020203C706F6C
- 79676F6E2066696C6C3D22233630374438422220706F696E74733D2231312C34
- 3220362C343220372E382C31382E362031342E322C32302E39222F3E0D0A2020
- 20203C706174682066696C6C3D22233630374438422220643D224D33312E372C
- 31352E39632D302E362D322D312E332D342D322E352D352E38632D312E332D31
- 2E362D332E322D332E312D362E312D32632D332E312C312E332D392E322C332E
- 362D31312E322C342E3520632D322E332C312E312D342E312C322E372D342E31
- 2C352E3963302C332E342C342E332C352E332C342E332C352E336C31342E372D
- 362E316C312E372C342E356C352E332C302E314333332E382C32322E342C3332
- 2E332C31372E392C33312E372C31352E397A222F3E0D0A202020203C70617468
- 2066696C6C3D22234233394444422220643D224D33372E392C3432682D372E39
- 632D312C302D312E382D302E372D322D312E376C2D322E362D31372E31683137
- 6C2D322E362C31372E314333392E382C34312E332C33382E392C34322C33372E
- 392C34327A222F3E0D0A202020203C706174682066696C6C3D22233745353743
- 322220643D224D34322C3234483236632D302E362C302D312D302E342D312D31
- 763063302D302E362C302E342D312C312D3168313663302E362C302C312C302E
- 342C312C3176304334332C32332E362C34322E362C32342C34322C32347A222F
- 3E0D0A3C2F7376673E0D0A0500000072006900670068007400FD0000003C7376
- 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
- 77332E6F72672F323030302F737667222076696577426F783D22302030203438
- 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
- 3438203438223E0D0A202020203C672066696C6C3D2223334635314235223E0D
- 0A20202020202020203C706F6C79676F6E20706F696E74733D2234342C323420
- 33302C33352E372033302C31322E33222F3E0D0A20202020202020203C726563
- 7420783D22362220793D223230222077696474683D2232372220686569676874
- 3D2238222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0B0000007200
- 69006700680074005F0064006F0077006E0032000C0100003C73766720766572
- 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
- 672F323030302F737667222076696577426F783D223020302034382034382220
- 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
- 223E0D0A202020203C706F6C79676F6E2066696C6C3D22233346353142352220
- 706F696E74733D2232392C34342031372E332C33302034302E372C3330222F3E
- 0D0A202020203C706174682066696C6C3D22233346353142352220643D224D32
- 312C364838763868313363322E322C302C342C312E382C342C34763137683856
- 31384333332C31312E342C32372E362C362C32312C367A222F3E0D0A3C2F7376
- 673E0D0A09000000720069006700680074005F007500700032000F0100003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22233346
- 353142352220706F696E74733D2232392C342031372E332C31382034302E372C
- 3138222F3E0D0A202020203C706174682066696C6C3D22233346353142352220
- 643D224D32312C34324838762D3868313363322E322C302C342D312E382C342D
- 3456313368387631374333332C33362E362C32372E362C34322C32312C34327A
- 222F3E0D0A3C2F7376673E0D0A0D00000072006F0074006100740065005F0063
- 0061006D00650072006100540200003C7376672076657273696F6E3D22312220
- 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
- 67222076696577426F783D223020302034382034382220656E61626C652D6261
- 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
- 672066696C6C3D2223354533354231223E0D0A20202020202020203C70617468
- 20643D224D33332E392C31322E314831342E324C31372E362C3763302E342D30
- 2E362C312D302E392C312E372D302E3968392E3663302E372C302C312E332C30
- 2E332C312E372C302E394C33332E392C31322E317A222F3E0D0A202020202020
- 20203C7061746820643D224D31342C3131483856392E3243382C382E352C382E
- 352C382C392E322C3868332E364331332E352C382C31342C382E352C31342C39
- 2E325631317A222F3E0D0A20202020202020203C7061746820643D224D34302C
- 34324838632D322E322C302D342D312E382D342D3456313463302D322E322C31
- 2E382D342C342D3468333263322E322C302C342C312E382C342C347632344334
- 342C34302E322C34322E322C34322C34302C34327A222F3E0D0A202020203C2F
- 673E0D0A202020203C706174682066696C6C3D22234538454146362220643D22
- 4D33342C323563302D352E352D342E352D31302D31302D3130732D31302C342E
- 352D31302C313073342E352C31302C31302C3130762D32632D342E342C302D38
- 2D332E362D382D3873332E362D382C382D3873382C332E362C382C38682D332E
- 35206C342E352C352E366C342E352D352E364833347A222F3E0D0A3C2F737667
- 3E0D0A1300000072006F0074006100740065005F0074006F005F006C0061006E
- 00640073006300610070006500180200003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706174682066696C6C3D22233337343734462220643D224D31302C343156
- 3763302D322E322C312E382D342C342D3468323063322E322C302C342C312E38
- 2C342C3476333463302C322E322D312E382C342D342C344831344331312E382C
- 34352C31302C34332E322C31302C34317A222F3E0D0A202020203C7061746820
- 66696C6C3D22234633453546352220643D224D33342C36483134632D302E362C
- 302D312C302E342D312C3176333463302C302E362C302E342C312C312C316832
- 3063302E362C302C312D302E342C312D3156374333352C362E342C33342E362C
- 362C33342C367A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 3943323742302220706F696E74733D2232322C33342032372E392C3237203136
- 2E312C3237222F3E0D0A202020203C706174682066696C6C3D22233943323742
- 302220643D224D32362C3136632D332E332C302D362C322E372D362C36763668
- 34762D3663302D312E312C302E392D322C322D3273322C302E392C322C327632
- 6834762D324333322C31382E372C32392E332C31362C32362C31367A222F3E0D
- 0A3C2F7376673E0D0A1200000072006F0074006100740065005F0074006F005F
- 0070006F007200740072006100690074000E0200003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22233337343734462220643D224D3431
- 2C33384837632D322E322C302D342D312E382D342D3456313463302D322E322C
- 312E382D342C342D3468333463322E322C302C342C312E382C342C3476323043
- 34352C33362E322C34332E322C33382C34312C33387A222F3E0D0A202020203C
- 706174682066696C6C3D22234633453546352220643D224D362C313476323063
- 302C302E362C302E342C312C312C3168333463302E362C302C312D302E342C31
- 2D3156313463302D302E362D302E342D312D312D31483743362E342C31332C36
- 2C31332E342C362C31347A222F3E0D0A202020203C706F6C79676F6E2066696C
- 6C3D22233943323742302220706F696E74733D2232362C31352032302E312C32
- 322033312E392C3232222F3E0D0A202020203C706174682066696C6C3D222339
- 43323742302220643D224D32342C3231763663302C312E312D302E392C322D32
- 2C32732D322D302E392D322D32762D32682D34763263302C332E332C322E372C
- 362C362C3673362D322E372C362D36762D364832347A222F3E0D0A3C2F737667
- 3E0D0A05000000720075006C0065007300530300003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22233432413546352220643D224D3339
- 2C3435483963302C302D332D302E312D332D386833364334322C34342E392C33
- 392C34352C33392C34357A222F3E0D0A202020203C7265637420783D22382220
- 793D2233222066696C6C3D2223393043414639222077696474683D2233322220
- 6865696768743D223334222F3E0D0A202020203C672066696C6C3D2223313937
- 364432223E0D0A20202020202020203C7265637420783D2231382220793D2231
- 35222077696474683D22313622206865696768743D2232222F3E0D0A20202020
- 202020203C7265637420783D2231382220793D223139222077696474683D2231
- 3622206865696768743D2232222F3E0D0A20202020202020203C726563742078
- 3D2231382220793D223233222077696474683D22313622206865696768743D22
- 32222F3E0D0A20202020202020203C7265637420783D2231382220793D223237
- 222077696474683D22313622206865696768743D2232222F3E0D0A2020202020
- 2020203C7265637420783D2231382220793D223331222077696474683D223136
- 22206865696768743D2232222F3E0D0A202020203C2F673E0D0A202020203C67
- 2066696C6C3D2223313937364432223E0D0A20202020202020203C7265637420
- 783D2231342220793D223135222077696474683D223222206865696768743D22
- 32222F3E0D0A20202020202020203C7265637420783D2231342220793D223139
- 222077696474683D223222206865696768743D2232222F3E0D0A202020202020
- 20203C7265637420783D2231342220793D223233222077696474683D22322220
- 6865696768743D2232222F3E0D0A20202020202020203C7265637420783D2231
- 342220793D223237222077696474683D223222206865696768743D2232222F3E
- 0D0A20202020202020203C7265637420783D2231342220793D22333122207769
- 6474683D223222206865696768743D2232222F3E0D0A202020203C2F673E0D0A
- 3C2F7376673E0D0A040000007300610066006500340700003C73766720766572
- 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
- 672F323030302F737667222076696577426F783D223020302034382034382220
- 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
- 223E0D0A202020203C7265637420783D22382220793D223339222066696C6C3D
- 2223343535413634222077696474683D223622206865696768743D2233222F3E
- 0D0A202020203C7265637420783D2233342220793D223339222066696C6C3D22
- 23343535413634222077696474683D223622206865696768743D2233222F3E0D
- 0A202020203C706174682066696C6C3D22233738393039432220643D224D3430
- 2C34314838632D322E322C302D342D312E382D342D3456313163302D322E322C
- 312E382D342C342D3468333263322E322C302C342C312E382C342C3476323643
- 34342C33392E322C34322E322C34312C34302C34317A222F3E0D0A202020203C
- 706174682066696C6C3D22233930413441452220643D224D34302C3338483863
- 2D302E362C302D312D302E342D312D3156313163302D302E362C302E342D312C
- 312D3168333263302E362C302C312C302E342C312C317632364334312C33372E
- 362C34302E362C33382C34302C33387A222F3E0D0A202020203C706174682066
- 696C6C3D22233337343734462220643D224D32392C3134632D352E352C302D31
- 302C342E352D31302C313063302C352E352C342E352C31302C31302C31307331
- 302D342E352C31302D31304333392C31382E352C33342E352C31342C32392C31
- 347A204D32392C333120632D332E392C302D372D332E312D372D3763302D332E
- 392C332E312D372C372D3773372C332E312C372C374333362C32372E392C3332
- 2E392C33312C32392C33317A222F3E0D0A202020203C672066696C6C3D222342
- 3042454335223E0D0A20202020202020203C7061746820643D224D33352E332C
- 31392E316C302E342D302E3463302E342D302E342C302E342D312C302D312E34
- 732D312D302E342D312E342C306C2D302E342C302E344333342E342C31382E31
- 2C33342E392C31382E362C33352E332C31392E317A222F3E0D0A202020202020
- 20203C7061746820643D224D32322E372C31392E3163302E342D302E352C302E
- 392D312C312E342D312E346C2D302E342D302E34632D302E342D302E342D312D
- 302E342D312E342C30732D302E342C312C302C312E344C32322E372C31392E31
- 7A222F3E0D0A20202020202020203C7061746820643D224D32312C323463302D
- 302E332C302D302E372C302E312D31682D302E36632D302E362C302D312C302E
- 342D312C3173302E342C312C312C3168302E364332312C32342E372C32312C32
- 342E332C32312C32347A222F3E0D0A20202020202020203C7061746820643D22
- 4D32392C313663302E332C302C302E372C302C312C302E31762D302E3663302D
- 302E362D302E342D312D312D31732D312C302E342D312C3176302E364332382E
- 332C31362C32382E372C31362C32392C31367A222F3E0D0A2020202020202020
- 3C7061746820643D224D33352E332C32382E39632D302E342C302E352D302E39
- 2C312D312E342C312E346C302E342C302E3463302E322C302E322C302E352C30
- 2E332C302E372C302E3373302E352D302E312C302E372D302E3363302E342D30
- 2E342C302E342D312C302D312E34204C33352E332C32382E397A222F3E0D0A20
- 202020202020203C7061746820643D224D32322E372C32382E396C2D302E342C
- 302E34632D302E342C302E342D302E342C312C302C312E3463302E322C302E32
- 2C302E352C302E332C302E372C302E3373302E352D302E312C302E372D302E33
- 6C302E342D302E34204332332E362C32392E392C32332E312C32392E342C3232
- 2E372C32382E397A222F3E0D0A20202020202020203C7061746820643D224D33
- 372E352C3233682D302E3663302C302E332C302E312C302E372C302E312C3173
- 302C302E372D302E312C3168302E3663302E362C302C312D302E342C312D3153
- 33382E312C32332C33372E352C32337A222F3E0D0A20202020202020203C7061
- 746820643D224D32392C3332632D302E332C302D302E372C302D312D302E3176
- 302E3663302C302E362C302E342C312C312C3173312D302E342C312D31762D30
- 2E364332392E372C33322C32392E332C33322C32392C33327A222F3E0D0A2020
- 20203C2F673E0D0A202020203C706174682066696C6C3D222334353541363422
- 20643D224D31322C3230632D312E312C302D322C302E392D322C32763863302C
- 312E312C302E392C322C322C3273322D302E392C322D32762D384331342C3230
- 2E392C31332E312C32302C31322C32307A222F3E0D0A202020203C7061746820
- 66696C6C3D22234346443844432220643D224D31322C3138632D312E312C302D
- 322C302E392D322C32763863302C312E312C302E392C322C322C3273322D302E
- 392C322D32762D384331342C31382E392C31332E312C31382C31322C31387A22
- 2F3E0D0A3C2F7376673E0D0A11000000730061006C00650073005F0070006500
- 720066006F0072006D0061006E0063006500041C00003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C672066696C6C3D2223464641303030223E0D0A202020202020
- 20203C7061746820643D224D33382C3133632D332E332C302D362D302E392D36
- 2D3263302C302E342C302C312E362C302C3263302C312E312C322E372C322C36
- 2C3273362D302E392C362D3263302D302E342C302D312E362C302D324334342C
- 31322E312C34312E332C31332C33382C3133207A222F3E0D0A20202020202020
- 203C7061746820643D224D33382C3130632D332E332C302D362D302E392D362D
- 3263302C302E342C302C312E362C302C3263302C312E312C322E372C322C362C
- 3273362D302E392C362D3263302D302E342C302D312E362C302D324334342C39
- 2E312C34312E332C31302C33382C31307A222F3E0D0A20202020202020203C70
- 61746820643D224D33382C3136632D332E332C302D362D302E392D362D326330
- 2C302E342C302C312E362C302C3263302C312E312C322E372C322C362C327336
- 2D302E392C362D3263302D302E342C302D312E362C302D324334342C31352E31
- 2C34312E332C31362C33382C3136207A222F3E0D0A20202020202020203C7061
- 746820643D224D33382C3139632D332E332C302D362D302E392D362D3263302C
- 302E342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D
- 302E392C362D3263302D302E342C302D312E362C302D324334342C31382E312C
- 34312E332C31392C33382C3139207A222F3E0D0A20202020202020203C706174
- 6820643D224D33382C3232632D332E332C302D362D302E392D362D3263302C30
- 2E342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D30
- 2E392C362D3263302D302E342C302D312E362C302D324334342C32312E312C34
- 312E332C32322C33382C3232207A222F3E0D0A20202020202020203C70617468
- 20643D224D33382C3235632D332E332C302D362D302E392D362D3263302C302E
- 342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E
- 392C362D3263302D302E342C302D312E362C302D324334342C32342E312C3431
- 2E332C32352C33382C3235207A222F3E0D0A20202020202020203C7061746820
- 643D224D33382C3238632D332E332C302D362D302E392D362D3263302C302E34
- 2C302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E39
- 2C362D3263302D302E342C302D312E362C302D324334342C32372E312C34312E
- 332C32382C33382C3238207A222F3E0D0A20202020202020203C706174682064
- 3D224D33382C3331632D332E332C302D362D302E392D362D3263302C302E342C
- 302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C
- 362D3263302D302E342C302D312E362C302D324334342C33302E312C34312E33
- 2C33312C33382C3331207A222F3E0D0A20202020202020203C7061746820643D
- 224D33382C3334632D332E332C302D362D302E392D362D3263302C302E342C30
- 2C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C36
- 2D3263302D302E342C302D312E362C302D324334342C33332E312C34312E332C
- 33342C33382C3334207A222F3E0D0A20202020202020203C7061746820643D22
- 4D33382C3337632D332E332C302D362D302E392D362D3263302C302E342C302C
- 312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D
- 3263302D302E342C302D312E362C302D324334342C33362E312C34312E332C33
- 372C33382C3337207A222F3E0D0A20202020202020203C7061746820643D224D
- 33382C3430632D332E332C302D362D302E392D362D3263302C302E342C302C31
- 2E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D32
- 63302D302E342C302D312E362C302D324334342C33392E312C34312E332C3430
- 2C33382C3430207A222F3E0D0A202020203C2F673E0D0A202020203C67206669
- 6C6C3D2223464643313037223E0D0A20202020202020203C656C6C6970736520
- 63783D223338222063793D2238222072783D2236222072793D2232222F3E0D0A
- 20202020202020203C7061746820643D224D33382C3132632D322E382C302D35
- 2E312D302E362D352E382D312E354333322E312C31302E372C33322C31302E38
- 2C33322C313163302C312E312C322E372C322C362C3273362D302E392C362D32
- 63302D302E322D302E312D302E332D302E322D302E35204334332E312C31312E
- 342C34302E382C31322C33382C31327A222F3E0D0A20202020202020203C7061
- 746820643D224D33382C3135632D322E382C302D352E312D302E362D352E382D
- 312E354333322E312C31332E372C33322C31332E382C33322C313463302C312E
- 312C322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D
- 302E332D302E322D302E35204334332E312C31342E342C34302E382C31352C33
- 382C31357A222F3E0D0A20202020202020203C7061746820643D224D33382C31
- 38632D322E382C302D352E312D302E362D352E382D312E354333322E312C3136
- 2E372C33322C31362E382C33322C313763302C312E312C322E372C322C362C32
- 73362D302E392C362D3263302D302E322D302E312D302E332D302E322D302E35
- 204334332E312C31372E342C34302E382C31382C33382C31387A222F3E0D0A20
- 202020202020203C7061746820643D224D33382C3231632D322E382C302D352E
- 312D302E362D352E382D312E354333322E312C31392E372C33322C31392E382C
- 33322C323063302C312E312C322E372C322C362C3273362D302E392C362D3263
- 302D302E322D302E312D302E332D302E322D302E35204334332E312C32302E34
- 2C34302E382C32312C33382C32317A222F3E0D0A20202020202020203C706174
- 6820643D224D33382C3234632D322E382C302D352E312D302E362D352E382D31
- 2E354333322E312C32322E372C33322C32322E382C33322C323363302C312E31
- 2C322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D30
- 2E332D302E322D302E35204334332E312C32332E342C34302E382C32342C3338
- 2C32347A222F3E0D0A20202020202020203C7061746820643D224D33382C3237
- 632D322E382C302D352E312D302E362D352E382D312E354333322E312C32352E
- 372C33322C32352E382C33322C323663302C312E312C322E372C322C362C3273
- 362D302E392C362D3263302D302E322D302E312D302E332D302E322D302E3520
- 4334332E312C32362E342C34302E382C32372C33382C32377A222F3E0D0A2020
- 2020202020203C7061746820643D224D33382C3330632D322E382C302D352E31
- 2D302E362D352E382D312E354333322E312C32382E372C33322C32382E382C33
- 322C323963302C312E312C322E372C322C362C3273362D302E392C362D326330
- 2D302E322D302E312D302E332D302E322D302E35204334332E312C32392E342C
- 34302E382C33302C33382C33307A222F3E0D0A20202020202020203C70617468
- 20643D224D33382C3333632D322E382C302D352E312D302E362D352E382D312E
- 354333322E312C33312E372C33322C33312E382C33322C333263302C312E312C
- 322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D302E
- 332D302E322D302E35204334332E312C33322E342C34302E382C33332C33382C
- 33337A222F3E0D0A20202020202020203C7061746820643D224D33382C333663
- 2D322E382C302D352E312D302E362D352E382D312E354333322E312C33342E37
- 2C33322C33342E382C33322C333563302C312E312C322E372C322C362C327336
- 2D302E392C362D3263302D302E322D302E312D302E332D302E322D302E352043
- 34332E312C33352E342C34302E382C33362C33382C33367A222F3E0D0A202020
- 20202020203C7061746820643D224D33382C3339632D322E382C302D352E312D
- 302E362D352E382D312E354333322E312C33372E372C33322C33372E382C3332
- 2C333863302C312E312C322E372C322C362C3273362D302E392C362D3263302D
- 302E322D302E312D302E332D302E322D302E35204334332E312C33382E342C34
- 302E382C33392C33382C33397A222F3E0D0A202020203C2F673E0D0A20202020
- 3C672066696C6C3D2223464641303030223E0D0A20202020202020203C706174
- 6820643D224D31302C3139632D332E332C302D362D302E392D362D3263302C30
- 2E342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D30
- 2E392C362D3263302D302E342C302D312E362C302D324331362C31382E312C31
- 332E332C31392C31302C3139207A222F3E0D0A20202020202020203C70617468
- 20643D224D31302C3136632D332E332C302D362D302E392D362D3263302C302E
- 342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E
- 392C362D3263302D302E342C302D312E362C302D324331362C31352E312C3133
- 2E332C31362C31302C3136207A222F3E0D0A20202020202020203C7061746820
- 643D224D31302C3232632D332E332C302D362D302E392D362D3263302C302E34
- 2C302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E39
- 2C362D3263302D302E342C302D312E362C302D324331362C32312E312C31332E
- 332C32322C31302C3232207A222F3E0D0A20202020202020203C706174682064
- 3D224D31302C3235632D332E332C302D362D302E392D362D3263302C302E342C
- 302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C
- 362D3263302D302E342C302D312E362C302D324331362C32342E312C31332E33
- 2C32352C31302C3235207A222F3E0D0A20202020202020203C7061746820643D
- 224D31302C3238632D332E332C302D362D302E392D362D3263302C302E342C30
- 2C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C36
- 2D3263302D302E342C302D312E362C302D324331362C32372E312C31332E332C
- 32382C31302C3238207A222F3E0D0A20202020202020203C7061746820643D22
- 4D31302C3331632D332E332C302D362D302E392D362D3263302C302E342C302C
- 312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D
- 3263302D302E342C302D312E362C302D324331362C33302E312C31332E332C33
- 312C31302C3331207A222F3E0D0A20202020202020203C7061746820643D224D
- 31302C3334632D332E332C302D362D302E392D362D3263302C302E342C302C31
- 2E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D32
- 63302D302E342C302D312E362C302D324331362C33332E312C31332E332C3334
- 2C31302C3334207A222F3E0D0A20202020202020203C7061746820643D224D31
- 302C3337632D332E332C302D362D302E392D362D3263302C302E342C302C312E
- 362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D3263
- 302D302E342C302D312E362C302D324331362C33362E312C31332E332C33372C
- 31302C3337207A222F3E0D0A20202020202020203C7061746820643D224D3130
- 2C3430632D332E332C302D362D302E392D362D3263302C302E342C302C312E36
- 2C302C3263302C312E312C322E372C322C362C3273362D302E392C362D326330
- 2D302E342C302D312E362C302D324331362C33392E312C31332E332C34302C31
- 302C3430207A222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C
- 3D2223464643313037223E0D0A20202020202020203C656C6C69707365206378
- 3D223130222063793D223134222072783D2236222072793D2232222F3E0D0A20
- 202020202020203C7061746820643D224D31302C3138632D322E382C302D352E
- 312D302E362D352E382D312E3543342E312C31362E372C342C31362E382C342C
- 313763302C312E312C322E372C322C362C3273362D302E392C362D3263302D30
- 2E322D302E312D302E332D302E322D302E35204331352E312C31372E342C3132
- 2E382C31382C31302C31387A222F3E0D0A20202020202020203C706174682064
- 3D224D31302C3231632D322E382C302D352E312D302E362D352E382D312E3543
- 342E312C31392E372C342C31392E382C342C323063302C312E312C322E372C32
- 2C362C3273362D302E392C362D3263302D302E322D302E312D302E332D302E32
- 2D302E35204331352E312C32302E342C31322E382C32312C31302C32317A222F
- 3E0D0A20202020202020203C7061746820643D224D31302C3234632D322E382C
- 302D352E312D302E362D352E382D312E3543342E312C32322E372C342C32322E
- 382C342C323363302C312E312C322E372C322C362C3273362D302E392C362D32
- 63302D302E322D302E312D302E332D302E322D302E35204331352E312C32332E
- 342C31322E382C32342C31302C32347A222F3E0D0A20202020202020203C7061
- 746820643D224D31302C3237632D322E382C302D352E312D302E362D352E382D
- 312E3543342E312C32352E372C342C32352E382C342C323663302C312E312C32
- 2E372C322C362C3273362D302E392C362D3263302D302E322D302E312D302E33
- 2D302E322D302E35204331352E312C32362E342C31322E382C32372C31302C32
- 377A222F3E0D0A20202020202020203C7061746820643D224D31302C3330632D
- 322E382C302D352E312D302E362D352E382D312E3543342E312C32382E372C34
- 2C32382E382C342C323963302C312E312C322E372C322C362C3273362D302E39
- 2C362D3263302D302E322D302E312D302E332D302E322D302E35204331352E31
- 2C32392E342C31322E382C33302C31302C33307A222F3E0D0A20202020202020
- 203C7061746820643D224D31302C3333632D322E382C302D352E312D302E362D
- 352E382D312E3543342E312C33312E372C342C33312E382C342C333263302C31
- 2E312C322E372C322C362C3273362D302E392C362D3263302D302E322D302E31
- 2D302E332D302E322D302E35204331352E312C33322E342C31322E382C33332C
- 31302C33337A222F3E0D0A20202020202020203C7061746820643D224D31302C
- 3336632D322E382C302D352E312D302E362D352E382D312E3543342E312C3334
- 2E372C342C33342E382C342C333563302C312E312C322E372C322C362C327336
- 2D302E392C362D3263302D302E322D302E312D302E332D302E322D302E352043
- 31352E312C33352E342C31322E382C33362C31302C33367A222F3E0D0A202020
- 20202020203C7061746820643D224D31302C3339632D322E382C302D352E312D
- 302E362D352E382D312E3543342E312C33372E372C342C33372E382C342C3338
- 63302C312E312C322E372C322C362C3273362D302E392C362D3263302D302E32
- 2D302E312D302E332D302E322D302E35204331352E312C33382E342C31322E38
- 2C33392C31302C33397A222F3E0D0A202020203C2F673E0D0A202020203C6720
- 66696C6C3D2223464641303030223E0D0A20202020202020203C706174682064
- 3D224D32342C3238632D332E332C302D362D302E392D362D3263302C302E342C
- 302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C
- 362D3263302D302E342C302D312E362C302D324333302C32372E312C32372E33
- 2C32382C32342C3238207A222F3E0D0A20202020202020203C7061746820643D
- 224D32342C3235632D332E332C302D362D302E392D362D3263302C302E342C30
- 2C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C36
- 2D3263302D302E342C302D312E362C302D324333302C32342E312C32372E332C
- 32352C32342C3235207A222F3E0D0A20202020202020203C7061746820643D22
- 4D32342C3331632D332E332C302D362D302E392D362D3263302C302E342C302C
- 312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D
- 3263302D302E342C302D312E362C302D324333302C33302E312C32372E332C33
- 312C32342C3331207A222F3E0D0A20202020202020203C7061746820643D224D
- 32342C3334632D332E332C302D362D302E392D362D3263302C302E342C302C31
- 2E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D32
- 63302D302E342C302D312E362C302D324333302C33332E312C32372E332C3334
- 2C32342C3334207A222F3E0D0A20202020202020203C7061746820643D224D32
- 342C3337632D332E332C302D362D302E392D362D3263302C302E342C302C312E
- 362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D3263
- 302D302E342C302D312E362C302D324333302C33362E312C32372E332C33372C
- 32342C3337207A222F3E0D0A20202020202020203C7061746820643D224D3234
- 2C3430632D332E332C302D362D302E392D362D3263302C302E342C302C312E36
- 2C302C3263302C312E312C322E372C322C362C3273362D302E392C362D326330
- 2D302E342C302D312E362C302D324333302C33392E312C32372E332C34302C32
- 342C3430207A222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C
- 3D2223464643313037223E0D0A20202020202020203C656C6C69707365206378
- 3D223234222063793D223233222072783D2236222072793D2232222F3E0D0A20
- 202020202020203C7061746820643D224D32342C3237632D322E382C302D352E
- 312D302E362D352E382D312E354331382E312C32352E372C31382C32352E382C
- 31382C323663302C312E312C322E372C322C362C3273362D302E392C362D3263
- 302D302E322D302E312D302E332D302E322D302E35204332392E312C32362E34
- 2C32362E382C32372C32342C32377A222F3E0D0A20202020202020203C706174
- 6820643D224D32342C3330632D322E382C302D352E312D302E362D352E382D31
- 2E354331382E312C32382E372C31382C32382E382C31382C323963302C312E31
- 2C322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D30
- 2E332D302E322D302E35204332392E312C32392E342C32362E382C33302C3234
- 2C33307A222F3E0D0A20202020202020203C7061746820643D224D32342C3333
- 632D322E382C302D352E312D302E362D352E382D312E354331382E312C33312E
- 372C31382C33312E382C31382C333263302C312E312C322E372C322C362C3273
- 362D302E392C362D3263302D302E322D302E312D302E332D302E322D302E3520
- 4332392E312C33322E342C32362E382C33332C32342C33337A222F3E0D0A2020
- 2020202020203C7061746820643D224D32342C3336632D322E382C302D352E31
- 2D302E362D352E382D312E354331382E312C33342E372C31382C33342E382C31
- 382C333563302C312E312C322E372C322C362C3273362D302E392C362D326330
- 2D302E322D302E312D302E332D302E322D302E35204332392E312C33352E342C
- 32362E382C33362C32342C33367A222F3E0D0A20202020202020203C70617468
- 20643D224D32342C3339632D322E382C302D352E312D302E362D352E382D312E
- 354331382E312C33372E372C31382C33372E382C31382C333863302C312E312C
- 322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D302E
- 332D302E322D302E35204332392E312C33382E342C32362E382C33392C32342C
- 33397A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0C0000007300
- 6300610074007400650072005F0070006C006F0074004D0200003C7376672076
- 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
- 6F72672F323030302F737667222076696577426F783D22302030203438203438
- 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
- 3438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223434644384443
- 2220706F696E74733D22392C333920392C3620372C3620372C34312034322C34
- 312034322C3339222F3E0D0A202020203C672066696C6C3D2223303042434434
- 223E0D0A20202020202020203C636972636C652063783D223339222063793D22
- 31312220723D2233222F3E0D0A20202020202020203C636972636C652063783D
- 223331222063793D2231332220723D2233222F3E0D0A20202020202020203C63
- 6972636C652063783D223337222063793D2231392220723D2233222F3E0D0A20
- 202020202020203C636972636C652063783D223334222063793D223236222072
- 3D2233222F3E0D0A20202020202020203C636972636C652063783D2232382220
- 63793D2232302220723D2233222F3E0D0A20202020202020203C636972636C65
- 2063783D223236222063793D2232382220723D2233222F3E0D0A202020202020
- 20203C636972636C652063783D223230222063793D2232332220723D2233222F
- 3E0D0A20202020202020203C636972636C652063783D223231222063793D2233
- 332220723D2233222F3E0D0A20202020202020203C636972636C652063783D22
- 3134222063793D2233302220723D2233222F3E0D0A202020203C2F673E0D0A3C
- 2F7376673E0D0A06000000730065006100720063006800DA0200003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C672066696C6C3D2223363136313631223E0D0A20
- 202020202020203C7265637420783D2233342E362220793D2232382E31222074
- 72616E73666F726D3D226D6174726978282E373037202D2E373037202E373037
- 202E373037202D31352E3135342033362E35383629222077696474683D223422
- 206865696768743D223137222F3E0D0A20202020202020203C636972636C6520
- 63783D223230222063793D2232302220723D223136222F3E0D0A202020203C2F
- 673E0D0A202020203C7265637420783D2233362E322220793D2233322E312220
- 7472616E73666F726D3D226D6174726978282E373037202D2E373037202E3730
- 37202E373037202D31352E3833392033382E32333929222066696C6C3D222333
- 3734373446222077696474683D223422206865696768743D2231322E33222F3E
- 0D0A202020203C636972636C652066696C6C3D2223363442354636222063783D
- 223230222063793D2232302220723D223133222F3E0D0A202020203C70617468
- 2066696C6C3D22234242444546422220643D224D32362E392C31342E32632D31
- 2E372D322D342E322D332E322D362E392D332E32732D352E322C312E322D362E
- 392C332E32632D302E342C302E342D302E332C312E312C302E312C312E346330
- 2E342C302E342C312E312C302E332C312E342D302E31204331362C31332E392C
- 31372E392C31332C32302C313373342C302E392C352E342C322E3563302E322C
- 302E322C302E352C302E342C302E382C302E3463302E322C302C302E352D302E
- 312C302E362D302E324332372E322C31352E332C32372E322C31342E362C3236
- 2E392C31342E327A222F3E0D0A3C2F7376673E0D0A12000000730065006C0066
- 005F0073006500720076006900630065005F006B0069006F0073006B00600200
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C706174682066696C6C3D22233534
- 364537412220643D224D34342C3330483456313163302D322E322C312E382D34
- 2C342D3468333263322E322C302C342C312E382C342C345633307A222F3E0D0A
- 202020203C706174682066696C6C3D22233634423546362220643D224D34302C
- 32374838632D302E362C302D312D302E342D312D3156313163302D302E362C30
- 2E342D312C312D3168333263302E362C302C312C302E342C312C317631354334
- 312C32362E362C34302E362C32372C34302C32377A222F3E0D0A202020203C70
- 6174682066696C6C3D22233738393039432220643D224D34302C34314838632D
- 322E322C302D342D312E382D342D34762D3768343076374334342C33392E322C
- 34322E322C34312C34302C34317A222F3E0D0A202020203C672066696C6C3D22
- 23333734373446223E0D0A20202020202020203C7265637420783D2232372220
- 793D223334222077696474683D22313222206865696768743D2232222F3E0D0A
- 20202020202020203C7265637420783D22392220793D22333422207769647468
- 3D22313222206865696768743D2232222F3E0D0A20202020202020203C706174
- 6820643D224D31382C333563302C312E312D312E332C322D332C32732D332D30
- 2E392D332D324831387A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D
- 0A06000000730065006C00660069006500E90400003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22234646423734442220643D224D3332
- 2E392C323263302D302E332C302E312D302E372C302E312D3163302D312E312C
- 302D352E392C302D3763302D372E362D31382D352D31382C3063302C312E312C
- 302C352E392C302C3763302C302E332C302C302E372C302E312C314833322E39
- 7A222F3E0D0A202020203C706174682066696C6C3D2223333734373446222064
- 3D224D34302C34344838632D322E322C302D342D312E382D342D345632366330
- 2D322E322C312E382D342C342D3468333263322E322C302C342C312E382C342C
- 347631344334342C34322E322C34322E322C34342C34302C34347A222F3E0D0A
- 202020203C706174682066696C6C3D22234242444546422220643D224D372C32
- 3676313463302C302E362C302E342C312C312C3168323963302E362C302C312D
- 302E342C312D3156323663302D302E362D302E342D312D312D31483843372E34
- 2C32352C372C32352E342C372C32367A222F3E0D0A202020203C726563742078
- 3D2234302220793D223330222066696C6C3D2223373839303943222077696474
- 683D223222206865696768743D2236222F3E0D0A202020203C7265637420783D
- 2231392220793D223332222066696C6C3D222342463336304322207769647468
- 3D223822206865696768743D2239222F3E0D0A202020203C7265637420783D22
- 32302E352220793D2233372E35222066696C6C3D222346463938303022207769
- 6474683D223522206865696768743D22332E35222F3E0D0A202020203C706174
- 682066696C6C3D22234646423734442220643D224D32372E352C333263302D33
- 2E382D392D322E352D392C3063302C302E352C302C332C302C332E3563302C32
- 2E352C322C342E352C342E352C342E3573342E352D322C342E352D342E354332
- 372E352C33352C32372E352C33322E352C32372E352C33327A222F3E0D0A2020
- 20203C672066696C6C3D2223373834373139223E0D0A20202020202020203C63
- 6972636C652063783D223238222063793D2232312220723D2231222F3E0D0A20
- 202020202020203C636972636C652063783D223230222063793D223231222072
- 3D2231222F3E0D0A20202020202020203C636972636C652063783D2232352220
- 63793D2233352E352220723D222E35222F3E0D0A20202020202020203C636972
- 636C652063783D223231222063793D2233352E352220723D222E35222F3E0D0A
- 202020203C2F673E0D0A202020203C672066696C6C3D2223464635373232223E
- 0D0A20202020202020203C7061746820643D224D32332C3237632D332C302D38
- 2C312E332D382C31316C342C33762D362E356C362D332E356C322C322E355634
- 316C342D3363302D322D302E382D31302D362D31306C2D302E352D314832337A
- 222F3E0D0A20202020202020203C7061746820643D224D31362C3232762D336C
- 31322D376C342C35763568362E384333382E332C31352E382C33362E312C362C
- 32382C366C2D312D32682D334331382E352C342C31302E372C362E382C392E32
- 2C32324831367A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0C00
- 0000730065007200690061006C005F007400610073006B007300F40100003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C706174682066696C6C3D22233930434146
- 392220643D224D33332C39483131763468323263312E312C302C322C302E392C
- 322C3276323048323376346831365631354333392C31312E372C33362E332C39
- 2C33332C397A222F3E0D0A202020203C7265637420783D22362220793D223622
- 2066696C6C3D2223443831423630222077696474683D22313022206865696768
- 743D223130222F3E0D0A202020203C672066696C6C3D2223323139364633223E
- 0D0A20202020202020203C7265637420783D2233322220793D22313722207769
- 6474683D22313022206865696768743D223130222F3E0D0A2020202020202020
- 3C7265637420783D2231362220793D223332222077696474683D223130222068
- 65696768743D223130222F3E0D0A20202020202020203C636972636C65206378
- 3D223236222063793D2231312220723D2235222F3E0D0A20202020202020203C
- 636972636C652063783D223337222063793D2233372220723D2235222F3E0D0A
- 202020203C2F673E0D0A3C2F7376673E0D0A0C00000073006500720076006900
- 630065005F006D00610072006B00520200003C7376672076657273696F6E3D22
- 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
- 2F737667222076696577426F783D223020302034382034382220656E61626C65
- 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
- 20203C636972636C652066696C6C3D2223394332374230222063783D22323422
- 2063793D2232342220723D223231222F3E0D0A202020203C672066696C6C3D22
- 23453142454537223E0D0A20202020202020203C7061746820643D224D31362E
- 372C32382E3263302D332E382D372E332D322E322D372E332D382E3163302D30
- 2E372C302E342D342E382C352E352D342E3863352E312C302C352E342C342E35
- 2C352E342C352E33682D332E3563302D302E342C302D322E352D322D322E3520
- 632D312E382C302D312E392C312E372D312E392C3263302C332C372E342C322C
- 372E342C382E3163302C322D312E312C342E382D352E332C342E384331302E33
- 2C33332C392C32392E362C392C32372E3368332E3563302C302E352D302E322C
- 322E382C322E352C322E38204331362E382C33302E322C31362E372C32382E35
- 2C31362E372C32382E327A222F3E0D0A20202020202020203C7061746820643D
- 224D32372E312C31352E364C33302E332C32386C332E322D31322E3468342E35
- 7631372E32682D332E35762D342E366C302E332D372E326C2D332E342C31312E
- 38682D322E346C2D332E342D31312E386C302E332C372E3276342E36682D332E
- 355631352E36204832372E317A222F3E0D0A202020203C2F673E0D0A3C2F7376
- 673E0D0A0800000073006500720076006900630065007300160600003C737667
- 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
- 332E6F72672F323030302F737667222076696577426F783D2230203020343820
- 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
- 38203438223E0D0A202020203C706174682066696C6C3D222345363531303022
- 20643D224D32352E362C33342E3463302E312D302E342C302E312D302E392C30
- 2E312D312E3473302D302E392D302E312D312E346C322E382D3263302E332D30
- 2E322C302E342D302E362C302E322D302E396C2D322E372D342E3620632D302E
- 322D302E332D302E352D302E342D302E382D302E334C32322C32352E33632D30
- 2E372D302E362D312E352D312D322E342D312E346C2D302E332D332E3463302D
- 302E332D302E332D302E362D302E362D302E36682D352E33632D302E332C302D
- 302E362C302E332D302E362C302E364C31322E342C323420632D302E392C302E
- 332D312E362C302E382D322E342C312E346C2D332E312D312E34632D302E332D
- 302E312D302E372C302D302E382C302E336C2D322E372C342E36632D302E322C
- 302E332D302E312C302E372C302E322C302E396C322E382C32632D302E312C30
- 2E342D302E312C302E392D302E312C312E342073302C302E392C302E312C312E
- 346C2D322E382C32632D302E332C302E322D302E342C302E362D302E322C302E
- 396C322E372C342E3663302E322C302E332C302E352C302E342C302E382C302E
- 336C332E312D312E3463302E372C302E362C312E352C312C322E342C312E346C
- 302E332C332E342063302C302E332C302E332C302E362C302E362C302E366835
- 2E3363302E332C302C302E362D302E332C302E362D302E366C302E332D332E34
- 63302E392D302E332C312E362D302E382C322E342D312E346C332E312C312E34
- 63302E332C302E312C302E372C302C302E382D302E336C322E372D342E362063
- 302E322D302E332C302E312D302E372D302E322D302E394C32352E362C33342E
- 347A204D31362C3338632D322E382C302D352D322E322D352D3563302D322E38
- 2C322E322D352C352D3563322E382C302C352C322E322C352C354332312C3335
- 2E382C31382E382C33382C31362C33387A222F3E0D0A202020203C7061746820
- 66696C6C3D22234646413030302220643D224D34312E392C31352E334334322C
- 31342E382C34322C31342E342C34322C313473302D302E382D302E312D312E33
- 6C322E352D312E3863302E332D302E322C302E332D302E352C302E322D302E38
- 6C2D322E352D342E3320632D302E322D302E332D302E352D302E342D302E382D
- 302E326C2D322E392C312E33632D302E372D302E352D312E342D302E392D322E
- 322D312E336C2D302E332D332E314333362C322E322C33352E382C322C33352E
- 352C32682D342E39632D302E332C302D302E362C302E322D302E362C302E356C
- 2D302E332C332E3120632D302E382C302E332D312E352C302E372D322E322C31
- 2E336C2D322E392D312E33632D302E332D302E312D302E362C302D302E382C30
- 2E326C2D322E352C342E33632D302E322C302E332D302E312C302E362C302E32
- 2C302E386C322E352C312E384332342C31332E322C32342C31332E362C32342C
- 31342073302C302E382C302E312C312E336C2D322E352C312E38632D302E332C
- 302E322D302E332C302E352D302E322C302E386C322E352C342E3363302E322C
- 302E332C302E352C302E342C302E382C302E326C322E392D312E3363302E372C
- 302E352C312E342C302E392C322E322C312E336C302E332C332E312063302C30
- 2E332C302E332C302E352C302E362C302E3568342E3963302E332C302C302E36
- 2D302E322C302E362D302E356C302E332D332E3163302E382D302E332C312E35
- 2D302E372C322E322D312E336C322E392C312E3363302E332C302E312C302E36
- 2C302C302E382D302E326C322E352D342E332063302E322D302E332C302E312D
- 302E362D302E322D302E384C34312E392C31352E337A204D33332C3139632D32
- 2E382C302D352D322E322D352D3563302D322E382C322E322D352C352D356332
- 2E382C302C352C322E322C352C354333382C31362E382C33352E382C31392C33
- 332C31397A222F3E0D0A3C2F7376673E0D0A0800000073006500740074006900
- 6E0067007300050400003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
- 66696C6C3D22233630374438422220643D224D33392E362C32372E3263302E31
- 2D302E372C302E322D312E342C302E322D322E32732D302E312D312E352D302E
- 322D322E326C342E352D332E3263302E342D302E332C302E362D302E392C302E
- 332D312E344C34302C31302E3820632D302E332D302E352D302E382D302E372D
- 312E332D302E346C2D352C322E33632D312E322D302E392D322E342D312E362D
- 332E382D322E326C2D302E352D352E35632D302E312D302E352D302E352D302E
- 392D312D302E39682D382E36632D302E352C302D312C302E342D312C302E396C
- 2D302E352C352E3520632D312E342C302E362D322E372C312E332D332E382C32
- 2E326C2D352D322E33632D302E352D302E322D312E312C302D312E332C302E34
- 6C2D342E332C372E34632D302E332C302E352D302E312C312E312C302E332C31
- 2E346C342E352C332E32632D302E312C302E372D302E322C312E342D302E322C
- 322E322073302E312C312E352C302E322C322E324C342C33302E34632D302E34
- 2C302E332D302E362C302E392D302E332C312E344C382C33392E3263302E332C
- 302E352C302E382C302E372C312E332C302E346C352D322E3363312E322C302E
- 392C322E342C312E362C332E382C322E326C302E352C352E352063302E312C30
- 2E352C302E352C302E392C312C302E3968382E3663302E352C302C312D302E34
- 2C312D302E396C302E352D352E3563312E342D302E362C322E372D312E332C33
- 2E382D322E326C352C322E3363302E352C302E322C312E312C302C312E332D30
- 2E346C342E332D372E342063302E332D302E352C302E312D312E312D302E332D
- 312E344C33392E362C32372E327A204D32342C3335632D352E352C302D31302D
- 342E352D31302D313063302D352E352C342E352D31302C31302D313063352E35
- 2C302C31302C342E352C31302C31304333342C33302E352C32392E352C33352C
- 32342C33357A222F3E0D0A202020203C706174682066696C6C3D222334353541
- 36342220643D224D32342C3133632D362E362C302D31322C352E342D31322C31
- 3263302C362E362C352E342C31322C31322C31327331322D352E342C31322D31
- 324333362C31382E342C33302E362C31332C32342C31337A204D32342C333020
- 632D322E382C302D352D322E322D352D3563302D322E382C322E322D352C352D
- 3573352C322E322C352C354332392C32372E382C32362E382C33302C32342C33
- 307A222F3E0D0A3C2F7376673E0D0A0500000073006800610072006500FE0100
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C706174682066696C6C3D22233139
- 373644322220643D224D33382E312C33312E324C31392E342C32346C31382E37
- 2D372E3263312E352D302E362C322E332D322E332C312E372D332E39632D302E
- 362D312E352D322E332D322E332D332E392D312E376C2D32362C313043382E38
- 2C32312E362C382C32322E382C382C32342073302E382C322E342C312E392C32
- 2E386C32362C313063302E342C302E312C302E372C302E322C312E312C302E32
- 63312E322C302C322E332D302E372C322E382D312E394334302E342C33332E35
- 2C33392E362C33312E382C33382E312C33312E327A222F3E0D0A202020203C67
- 2066696C6C3D2223314538384535223E0D0A20202020202020203C636972636C
- 652063783D223131222063793D2232342220723D2237222F3E0D0A2020202020
- 2020203C636972636C652063783D223337222063793D2231342220723D223722
- 2F3E0D0A20202020202020203C636972636C652063783D223337222063793D22
- 33342220723D2237222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A07
- 0000007300680069007000700065006400240300003C7376672076657273696F
- 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
- 3030302F737667222076696577426F783D223020302034382034382220656E61
- 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
- 0A202020203C706174682066696C6C3D22233842433334412220643D224D3433
- 2C33364832395631346831302E3663302E392C302C312E362C302E362C312E39
- 2C312E344C34352C323676384334352C33352E312C34342E312C33362C34332C
- 33367A222F3E0D0A202020203C706174682066696C6C3D222333383845334322
- 20643D224D32392C33364835632D312E312C302D322D302E392D322D32563963
- 302D312E312C302E392D322C322D3268323263312E312C302C322C302E392C32
- 2C325633367A222F3E0D0A202020203C672066696C6C3D222333373437344622
- 3E0D0A20202020202020203C636972636C652063783D223337222063793D2233
- 362220723D2235222F3E0D0A20202020202020203C636972636C652063783D22
- 3133222063793D2233362220723D2235222F3E0D0A202020203C2F673E0D0A20
- 2020203C672066696C6C3D2223373839303943223E0D0A20202020202020203C
- 636972636C652063783D223337222063793D2233362220723D2232222F3E0D0A
- 20202020202020203C636972636C652063783D223133222063793D2233362220
- 723D2232222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C
- 6C3D22233337343734462220643D224D34312C3235682D37632D302E362C302D
- 312D302E342D312D31762D3763302D302E362C302E342D312C312D3168352E33
- 63302E342C302C302E382C302E332C302E392C302E376C312E372C352E326330
- 2C302E312C302E312C302E322C302E312C302E33563234204334322C32342E36
- 2C34312E362C32352C34312C32357A222F3E0D0A202020203C706F6C79676F6E
- 2066696C6C3D22234443454443382220706F696E74733D2232312E382C31332E
- 382031332E392C32312E372031302E322C31372E3920382C32302E312031332E
- 392C32362032342C31352E39222F3E0D0A3C2F7376673E0D0A04000000730068
- 006F007000DF0500003C7376672076657273696F6E3D22312220786D6C6E733D
- 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
- 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
- 6E643D226E657720302030203438203438223E0D0A202020203C726563742078
- 3D22352220793D223139222066696C6C3D222343464438444322207769647468
- 3D22333822206865696768743D223139222F3E0D0A202020203C726563742078
- 3D22352220793D223338222066696C6C3D222342304245433522207769647468
- 3D22333822206865696768743D2234222F3E0D0A202020203C7265637420783D
- 2232372220793D223234222066696C6C3D222334353541363422207769647468
- 3D22313222206865696768743D223138222F3E0D0A202020203C726563742078
- 3D22392220793D223234222066696C6C3D222345334632464422207769647468
- 3D22313422206865696768743D223131222F3E0D0A202020203C726563742078
- 3D2231302220793D223235222066696C6C3D2223314538384535222077696474
- 683D22313222206865696768743D2239222F3E0D0A202020203C706174682066
- 696C6C3D22233930413441452220643D224D33362E352C33332E35632D302E33
- 2C302D302E352C302E322D302E352C302E35763263302C302E332C302E322C30
- 2E352C302E352C302E355333372C33362E332C33372C3336762D324333372C33
- 332E372C33362E382C33332E352C33362E352C33332E357A222F3E0D0A202020
- 203C672066696C6C3D2223353538423246223E0D0A20202020202020203C6369
- 72636C652063783D223234222063793D2231392220723D2233222F3E0D0A2020
- 2020202020203C636972636C652063783D223336222063793D2231392220723D
- 2233222F3E0D0A20202020202020203C636972636C652063783D223132222063
- 793D2231392220723D2233222F3E0D0A202020203C2F673E0D0A202020203C70
- 6174682066696C6C3D22233743423334322220643D224D34302C36483843362E
- 392C362C362C362E392C362C38763368333656384334322C362E392C34312E31
- 2C362C34302C367A222F3E0D0A202020203C7265637420783D2232312220793D
- 223131222066696C6C3D2223374342333432222077696474683D223622206865
- 696768743D2238222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 3743423334322220706F696E74733D2233372C31312033322C31312033332C31
- 392033392C3139222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 3743423334322220706F696E74733D2231312C31312031362C31312031352C31
- 3920392C3139222F3E0D0A202020203C672066696C6C3D222346464130303022
- 3E0D0A20202020202020203C636972636C652063783D223330222063793D2231
- 392220723D2233222F3E0D0A20202020202020203C7061746820643D224D3435
- 2C313963302C312E372D312E332C332D332C33732D332D312E332D332D337331
- 2E332D332C332D334C34352C31397A222F3E0D0A20202020202020203C636972
- 636C652063783D223138222063793D2231392220723D2233222F3E0D0A202020
- 20202020203C7061746820643D224D332C313963302C312E372C312E332C332C
- 332C3373332D312E332C332D33732D312E332D332D332D334C332C31397A222F
- 3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D22234646433130
- 37223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D223332
- 2C31312032372C31312032372C31392033332C3139222F3E0D0A202020202020
- 20203C706F6C79676F6E20706F696E74733D2234322C31312033372C31312033
- 392C31392034352C3139222F3E0D0A20202020202020203C706F6C79676F6E20
- 706F696E74733D2231362C31312032312C31312032312C31392031352C313922
- 2F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22362C31
- 312031312C313120392C313920332C3139222F3E0D0A202020203C2F673E0D0A
- 3C2F7376673E0D0A08000000730069006D005F006300610072006400F5010000
- 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
- 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 2030203438203438223E0D0A202020203C706174682066696C6C3D2223303039
- 3638382220643D224D33362C3435483132632D322E322C302D342D312E382D34
- 2D34563763302D322E322C312E382D342C342D346831362E3363312E312C302C
- 322E312C302E342C322E382C312E326C372E372C372E3763302E382C302E382C
- 312E322C312E382C312E322C322E38205634314334302C34332E322C33382E32
- 2C34352C33362C34357A222F3E0D0A202020203C706174682066696C6C3D2223
- 4646393830302220643D224D33322C3338483136632D312E312C302D322D302E
- 392D322D3256323463302D312E312C302E392D322C322D3268313663312E312C
- 302C322C302E392C322C327631324333342C33372E312C33332E312C33382C33
- 322C33387A222F3E0D0A202020203C706174682066696C6C3D22234646443534
- 462220643D224D32392C3330763368357632682D357633682D32563232683276
- 36683576324832397A204D31342C3239763268357632682D3576326835763368
- 32762D394831347A222F3E0D0A3C2F7376673E0D0A0D000000730069006D005F
- 0063006100720064005F006300680069007000730200003C7376672076657273
- 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
- 2F323030302F737667222076696577426F783D22302030203438203438222065
- 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
- 3E0D0A202020203C706174682066696C6C3D22234646393830302220643D224D
- 352C333556313363302D322E322C312E382D342C342D3468333063322E322C30
- 2C342C312E382C342C3476323263302C322E322D312E382C342D342C34483943
- 362E382C33392C352C33372E322C352C33357A222F3E0D0A202020203C672066
- 696C6C3D2223464644353446223E0D0A20202020202020203C7061746820643D
- 224D34332C3231762D32483331632D312E312C302D322D302E392D322D327330
- 2E392D322C322D326831762D32682D31632D322E322C302D342C312E382D342C
- 3473312E382C342C342C3468337636682D33632D322E382C302D352C322E322D
- 352C352073322E322C352C352C356832762D32682D32632D312E372C302D332D
- 312E332D332D3373312E332D332C332D33683132762D32682D37762D36483433
- 7A222F3E0D0A20202020202020203C7061746820643D224D31372C3237682D33
- 762D36683363322E322C302C342D312E382C342D34732D312E382D342D342D34
- 682D337632683363312E312C302C322C302E392C322C32732D302E392C322D32
- 2C324835763268377636483576326831322063312E372C302C332C312E332C33
- 2C33732D312E332C332D332C33682D327632683263322E382C302C352D322E32
- 2C352D355331392E382C32372C31372C32377A222F3E0D0A202020203C2F673E
- 0D0A3C2F7376673E0D0A0D00000073006C0072005F006200610063006B005F00
- 73006900640065004E0300003C7376672076657273696F6E3D22312220786D6C
- 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
- 76696577426F783D223020302034382034382220656E61626C652D6261636B67
- 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
- 682066696C6C3D22233545333542312220643D224D34302C3130682D372E366C
- 2D322D33632D302E342D302E362D312D302E392D312E372D302E39682D392E36
- 632D302E372C302D312E332C302E332D312E372C302E396C2D322C334838632D
- 322E322C302D342C312E382D342C347632342063302C322E322C312E382C342C
- 342C3468333263322E322C302C342D312E382C342D345631344334342C31312E
- 382C34322E322C31302C34302C31307A222F3E0D0A202020203C706174682066
- 696C6C3D22234635374330302220643D224D31312C313668323063302E362C30
- 2C312C302E342C312C3176313663302C302E362D302E342C312D312C31483131
- 632D302E362C302D312D302E342D312D315631374331302C31362E342C31302E
- 342C31362C31312C31367A222F3E0D0A202020203C706F6C79676F6E2066696C
- 6C3D22233934324130392220706F696E74733D2231382E392C32322031322C33
- 322032352E382C3332222F3E0D0A202020203C636972636C652066696C6C3D22
- 23464646394334222063783D223237222063793D2232312220723D2232222F3E
- 0D0A202020203C706F6C79676F6E2066696C6C3D22234246333630432220706F
- 696E74733D2232352E322C32362032302E342C33322033302C3332222F3E0D0A
- 202020203C672066696C6C3D2223383636374334223E0D0A2020202020202020
- 3C7061746820643D224D33342C3130683656392E324334302C382E352C33392E
- 352C382C33382E382C38682D332E364333342E352C382C33342C382E352C3334
- 2C392E325631307A222F3E0D0A20202020202020203C636972636C652063783D
- 223338222063793D2231382220723D2232222F3E0D0A20202020202020203C63
- 6972636C652063783D223338222063793D2232342220723D2232222F3E0D0A20
- 202020202020203C636972636C652063783D223338222063793D223330222072
- 3D2232222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A110000007300
- 6D00610072007400700068006F006E0065005F007400610062006C0065007400
- C80200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
- 233337343734462220643D224D342C3339563763302D322E322C312E382D342C
- 342D3468323263322E322C302C342C312E382C342C3476333263302C322E322D
- 312E382C342D342C34483843352E382C34332C342C34312E322C342C33397A22
- 2F3E0D0A202020203C706174682066696C6C3D22234242444546422220643D22
- 4D33302C36483843372E342C362C372C362E342C372C3776323963302C302E36
- 2C302E342C312C312C3168323263302E362C302C312D302E342C312D31563743
- 33312C362E342C33302E362C362C33302C367A222F3E0D0A202020203C726563
- 7420783D2231352220793D223339222066696C6C3D2223373839303943222077
- 696474683D223622206865696768743D2232222F3E0D0A202020203C70617468
- 2066696C6C3D22234533383933392220643D224D32342C343156313763302D32
- 2E322C312E382D342C342D3468313263322E322C302C342C312E382C342C3476
- 323463302C322E322D312E382C342D342C344832384332352E382C34352C3234
- 2C34332E322C32342C34317A222F3E0D0A202020203C706174682066696C6C3D
- 22234646463345302220643D224D34302C3136483238632D302E362C302D312C
- 302E342D312C3176323263302C302E362C302E342C312C312C3168313263302E
- 362C302C312D302E342C312D315631374334312C31362E342C34302E362C3136
- 2C34302C31367A222F3E0D0A202020203C636972636C652066696C6C3D222341
- 3636343241222063783D223334222063793D2234322E352220723D22312E3522
- 2F3E0D0A3C2F7376673E0D0A0300000073006D0073007D0100003C7376672076
- 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
- 6F72672F323030302F737667222076696577426F783D22302030203438203438
- 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
- 3438223E0D0A202020203C706174682066696C6C3D2223303039363838222064
- 3D224D33372C33394831316C2D362C3656313163302D332E332C322E372D362C
- 362D3668323663332E332C302C362C322E372C362C367632324334332C33362E
- 332C34302E332C33392C33372C33397A222F3E0D0A202020203C672066696C6C
- 3D2223666666223E0D0A20202020202020203C636972636C652063783D223234
- 222063793D2232322220723D2233222F3E0D0A20202020202020203C63697263
- 6C652063783D223334222063793D2232322220723D2233222F3E0D0A20202020
- 202020203C636972636C652063783D223134222063793D2232322220723D2233
- 222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A1900000073006F0075
- 006E0064005F007200650063006F007200640069006E0067005F0063006F0070
- 00790072006900670068007400720200003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C636972636C652066696C6C3D2223394332374230222063783D2232342220
- 63793D2232342220723D223231222F3E0D0A202020203C706174682066696C6C
- 3D22234531424545372220643D224D32302E372C32372E3276382E34682D332E
- 395631322E3968382E3763312E332C302C322E352C302E322C332E352C302E35
- 63312C302E342C312E392C302E392C322E362C312E3563302E372C302E362C31
- 2E322C312E342C312E362C322E332063302E342C302E392C302E362C312E382C
- 302E362C322E3963302C312E312D302E322C322E312D302E362C33632D302E34
- 2C302E392D302E392C312E362D312E362C322E32632D302E372C302E362D312E
- 362C312E312D322E362C312E34632D312C302E332D322E322C302E352D332E35
- 2C302E354832302E377A204D32302E372C323468342E3763302E382C302C312E
- 342D302E312C322D302E3363302E352D302E322C312D302E352C312E342D302E
- 3863302E342D302E332C302E362D302E382C302E382D312E3263302E322D302E
- 352C302E322D312C302E322D312E3663302D302E352D302E312D312D302E322D
- 312E3520632D302E322D302E352D302E342D302E392D302E382D312E33632D30
- 2E342D302E342D302E382D302E372D312E342D302E39632D302E352D302E322D
- 312E322D302E332D322D302E33682D342E375632347A222F3E0D0A3C2F737667
- 3E0D0A0700000073007000650061006B0065007200700200003C737667207665
- 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
- 72672F323030302F737667222076696577426F783D2230203020343820343822
- 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
- 38223E0D0A202020203C706174682066696C6C3D22233831443446412220643D
- 224D32382C372E31763263372E332C312C31332C372E332C31332C31342E3973
- 2D352E372C31332E392D31332C31342E39763263382E342D312C31352D382E32
- 2C31352D31362E395333362E342C382E312C32382C372E317A222F3E0D0A2020
- 20203C706174682066696C6C3D22233534364537412220643D224D31342C3332
- 4837632D312E312C302D322D302E392D322D3256313863302D312E312C302E39
- 2D322C322D3268375633327A222F3E0D0A202020203C706F6C79676F6E206669
- 6C6C3D22233738393039432220706F696E74733D2232362C34322031342C3332
- 2031342C31362032362C36222F3E0D0A202020203C706174682066696C6C3D22
- 233033413946342220643D224D32382C31372E3376322E3163312E382C302E38
- 2C332C322E352C332C342E36732D312E322C332E382D332C342E3676322E3163
- 322E392D302E392C352D332E352C352D362E375333302E392C31382E322C3238
- 2C31372E337A222F3E0D0A202020203C706174682066696C6C3D222334464333
- 46372220643D224D32382C31322E32763263342E362C302E392C382C352C382C
- 392E38732D332E342C382E392D382C392E38763263352E372D312C31302D352E
- 392C31302D31312E385333332E372C31332E312C32382C31322E327A222F3E0D
- 0A3C2F7376673E0D0A0B000000730070006F007200740073005F006D006F0064
- 006500F90300003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C636972636C652066
- 696C6C3D2223464639383030222063783D223238222063793D22392220723D22
- 35222F3E0D0A202020203C706174682066696C6C3D2223303037393642222064
- 3D224D32392C32372E336C2D392E322D342E31632D312D302E352D312E352C31
- 2D322C32632D302E352C312D342E312C372E322D332E382C382E3363302E332C
- 302E392C312E312C312E342C312E392C312E3463302E322C302C302E342C302C
- 302E362D302E31204C32382E382C333163302E382D302E322C312E342D312C31
- 2E342D312E384333302E322C32382E342C32392E372C32372E362C32392C3237
- 2E337A222F3E0D0A202020203C706174682066696C6C3D222330303936383822
- 20643D224D32362E382C31352E326C2D322E322D31632D312E332D302E362D32
- 2E392C302D332E352C312E334C392E322C34312E31632D302E352C312C302C32
- 2E322C312C322E3763302E332C302E312C302E362C302E322C302E392C302E32
- 2063302E382C302C312E352D302E342C312E382D312E3163302C302C392E362D
- 31332E332C31302E342D31342E3973342E392D392E332C342E392D392E334332
- 382E372C31372E342C32382E322C31352E382C32362E382C31352E327A222F3E
- 0D0A202020203C706174682066696C6C3D22234646393830302220643D224D34
- 302E352C31352E37632D302E372D302E382D322D312D322E382D302E336C2D35
- 2C342E326C2D362E342D332E35632D312E312D302E362D322E362D302E342D33
- 2E332C302E39632D302E382C312E332D302E342C322E392C302E382C332E3420
- 6C382E332C332E3463302E332C302E312C302E362C302E322C302E392C302E32
- 63302E352C302C302E392D302E322C312E332D302E356C362D354334312E312C
- 31372E382C34312E322C31362E362C34302E352C31352E377A222F3E0D0A2020
- 20203C706174682066696C6C3D22234646393830302220643D224D31312E372C
- 32332E316C332E342D352E316C342E362C302E366C312E352D332E3163302E34
- 2D302E392C312E322D312E342C322E312D312E35632D302E312C302D302E322C
- 302D302E322C30682D39632D302E372C302D312E332C302E332D312E372C302E
- 39206C2D342C36632D302E362C302E392D302E342C322E322C302E362C322E38
- 43392E322C32332E392C392E362C32342C31302C32344331302E362C32342C31
- 312E332C32332E372C31312E372C32332E317A222F3E0D0A3C2F7376673E0D0A
- 0F00000073007400610063006B005F006F0066005F00700068006F0074006F00
- 7300B90500003C7376672076657273696F6E3D22312220786D6C6E733D226874
- 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
- 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
- 226E657720302030203438203438223E0D0A202020203C7265637420783D2231
- 322E332220793D2231322E3322207472616E73666F726D3D226D617472697828
- 2E393438202E333138202D2E333138202E39343820392E373235202D362E3939
- 3429222066696C6C3D2223363442354636222077696474683D22323822206865
- 696768743D223238222F3E0D0A202020203C7265637420783D2231352E362220
- 793D2231352E3422207472616E73666F726D3D226D6174726978282E39353120
- 2E3331202D2E3331202E39353120392E313736202D362E39373729222066696C
- 6C3D2223314538384535222077696474683D22323222206865696768743D2232
- 30222F3E0D0A202020203C7265637420783D22382E312220793D22382E312220
- 7472616E73666F726D3D226D6174726978282E393833202E313831202D2E3138
- 31202E39383320342E333835202D332E363529222066696C6C3D222339304341
- 4639222077696474683D22323822206865696768743D223238222F3E0D0A2020
- 20203C7265637420783D2231312E332220793D2231312E3222207472616E7366
- 6F726D3D226D6174726978282E393835202E313735202D2E313735202E393835
- 20342E303438202D332E35363629222066696C6C3D2223343241354635222077
- 696474683D22323222206865696768743D223230222F3E0D0A202020203C7265
- 637420783D22342220793D2234222066696C6C3D222342424445464222207769
- 6474683D22323822206865696768743D223238222F3E0D0A202020203C726563
- 7420783D22372220793D2237222066696C6C3D22233443414635302220776964
- 74683D22323222206865696768743D223230222F3E0D0A202020203C70617468
- 2066696C6C3D22236666662220643D224D31362C313363302D312E312C302E39
- 2D322C322D3273322C302E392C322C32732D322C342D322C345331362C31342E
- 312C31362C31337A222F3E0D0A202020203C706174682066696C6C3D22236666
- 662220643D224D32302C323163302C312E312D302E392C322D322C32732D322D
- 302E392D322D3273322D342C322D345332302C31392E392C32302C32317A222F
- 3E0D0A202020203C706174682066696C6C3D22236666662220643D224D31332E
- 352C31362E37632D312D302E362D312E332D312E382D302E372D322E3763302E
- 362D312C312E382D312E332C322E372D302E3763312C302E362C322E352C332E
- 372C322E352C332E375331342E352C31372E332C31332E352C31362E377A222F
- 3E0D0A202020203C706174682066696C6C3D22236666662220643D224D32322E
- 352C31372E3363312C302E362C312E332C312E382C302E372C322E37632D302E
- 362C312D312E382C312E332D322E372C302E374331392E352C32302E322C3138
- 2C31372C31382C31375332312E352C31362E372C32322E352C31372E337A222F
- 3E0D0A202020203C706174682066696C6C3D22236666662220643D224D32322E
- 352C31362E3763312D302E362C312E332D312E382C302E372D322E37632D302E
- 362D312D312E382D312E332D322E372D302E374331392E352C31332E382C3138
- 2C31372C31382C31375332312E352C31372E332C32322E352C31362E377A222F
- 3E0D0A202020203C706174682066696C6C3D22236666662220643D224D31332E
- 352C31372E33632D312C302E362D312E332C312E382D302E372C322E3763302E
- 362C312C312E382C312E332C322E372C302E3763312D302E362C322E352D332E
- 372C322E352D332E375331342E352C31362E372C31332E352C31372E337A222F
- 3E0D0A202020203C636972636C652066696C6C3D222346464331303722206378
- 3D223138222063793D2231372220723D2232222F3E0D0A3C2F7376673E0D0A05
- 00000073007400610072007400260100003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706174682066696C6C3D22234634343333362220643D224D33382C343248
- 3130632D322E322C302D342D312E382D342D3456313063302D322E322C312E38
- 2D342C342D3468323863322E322C302C342C312E382C342C347632384334322C
- 34302E322C34302E322C34322C33382C34327A222F3E0D0A202020203C706F6C
- 79676F6E2066696C6C3D22236666662220706F696E74733D2233312C32342032
- 302C31362032302C3332222F3E0D0A3C2F7376673E0D0A050000007300740065
- 0061006D00770700003C3F786D6C2076657273696F6E3D22312E302220656E63
- 6F64696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F723A
- 2041646F626520496C6C7573747261746F722031352E302E302C205356472045
- 78706F727420506C75672D496E202E205356472056657273696F6E3A20362E30
- 30204275696C6420302920202D2D3E0D0A3C21444F4354595045207376672050
- 55424C494320222D2F2F5733432F2F4454442053564720312E312F2F454E2220
- 22687474703A2F2F7777772E77332E6F72672F47726170686963732F5356472F
- 312E312F4454442F73766731312E647464223E0D0A3C7376672076657273696F
- 6E3D22312E31222020786D6C6E733D22687474703A2F2F7777772E77332E6F72
- 672F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F
- 7777772E77332E6F72672F313939392F786C696E6B2220783D22307078222079
- 3D22307078220D0A092077696474683D223438707822206865696768743D2234
- 387078222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E6577203020302034382034382220786D6C3A73
- 706163653D227072657365727665223E0D0A3C706174682066696C6C3D222346
- 46464646462220643D224D34322C333863302C322E3230392D312E3739312C34
- 2D342C34483130632D322E3230392C302D342D312E3739312D342D3456313063
- 302D322E3230392C312E3739312D342C342D3468323863322E3230392C302C34
- 2C312E3739312C342C345633387A222F3E0D0A3C673E0D0A093C706174682066
- 696C6C3D22233435354136342220643D224D31382E3435392C33332E36343563
- 2D302E3238382C302D302E35362D302E3035372D302E3832322D302E3134316C
- 2D302E3030352C302E30326C2D332E36372D312E3036320D0A090963302E3634
- 342C312E3837382C322E3430362C332E3233372C342E352C332E32333763322E
- 3634312C302C342E3737362D322E3133362C342E3737362D342E373736732D32
- 2E3133352D342E3737372D342E3737362D342E373737632D312E3134312C302D
- 322E3137352C302E3431382D322E3939382C312E3038370D0A09094C31392C32
- 382E32353563302E3032392C302E3030372C302E3035352C302E3031382C302E
- 3038342C302E3032346C302E3034392C302E30313676302E30303263312E3137
- 372C302E3330312C322E3034392C312E3335392C322E3034392C322E3632360D
- 0A09094332312E3138342C33322E3432342C31392E3936342C33332E3634352C
- 31382E3435392C33332E3634357A222F3E0D0A093C706174682066696C6C3D22
- 233435354136342220643D224D33302E3932332C32342E32393963332E323232
- 2C302C352E3833372D322E3631352C352E3833372D352E38333863302D332E32
- 32322D322E3631352D352E3833372D352E3833372D352E3833370D0A0909632D
- 332E3232312C302D352E3833372C322E3631352D352E3833372C352E38333743
- 32352E3038362C32312E3638342C32372E3730322C32342E3239392C33302E39
- 32332C32342E3239397A204D33302E39322C31342E34303963322E32342C302C
- 342E3035362C312E3831332C342E3035362C342E3035320D0A090963302C322E
- 3234312D312E3831352C342E3035332D342E3035362C342E303533632D322E32
- 33362C302D342E3034392D312E3831322D342E3034392D342E3035334332362E
- 3837312C31362E3232332C32382E3638342C31342E3430392C33302E39322C31
- 342E3430397A222F3E0D0A093C706174682066696C6C3D222334353541363422
- 20643D224D33382C36682D322E3735682D32322E35483130632D322E3230392C
- 302D342C312E3739312D342C3476322E373576342E32333676372E3530396C37
- 2E3032372C322E3033330D0A090963312E3238372D312E35392C332E3232392D
- 322E3632362C352E3433342D322E36323663302E30372C302C302E3133352C30
- 2E30322C302E3230342C302E3032316C332E3837362D352E33353563302D302E
- 3033352D302E3030352D302E3037322D302E3030352D302E3130350D0A090963
- 302D342E36332C332E3735352D382E3338382C382E3338372D382E3338386334
- 2E3633332C302C382E3338362C332E3735372C382E3338362C382E3338366330
- 2C342E3633332D332E3735332C382E3338372D382E3338362C382E3338370D0A
- 0909632D302E3034342C302D302E3038372D302E3030362D302E3133322D302E
- 3030376C2D352E33332C332E38373163302E3030322C302E30372C302E303231
- 2C302E31342C302E3032312C302E32313163302C332E3837382D332E3134322C
- 372E3032312D372E3032312C372E3032310D0A0909632D332E3539332C302D36
- 2E35322D322E3730372D362E3933372D362E3138384C362C33302E3135387632
- 2E35383376322E35303956333863302C322E3230392C312E3739312C342C342C
- 3468322E37356832322E3548333863322E3230392C302C342D312E3739312C34
- 2D34762D322E3735762D32322E355631300D0A09094334322C372E3739312C34
- 302E3230392C362C33382C367A222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A
- 0B0000007300740075006D0062006C006500750070006F006E00B60400003C3F
- 786D6C2076657273696F6E3D22312E302220656E636F64696E673D227574662D
- 38223F3E0D0A3C212D2D2047656E657261746F723A2041646F626520496C6C75
- 73747261746F722031352E302E302C20535647204578706F727420506C75672D
- 496E202E205356472056657273696F6E3A20362E3030204275696C6420302920
- 202D2D3E0D0A3C21444F435459504520737667205055424C494320222D2F2F57
- 33432F2F4454442053564720312E312F2F454E222022687474703A2F2F777777
- 2E77332E6F72672F47726170686963732F5356472F312E312F4454442F737667
- 31312E647464223E0D0A3C7376672076657273696F6E3D22312E31222020786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 20786D6C6E733A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F
- 313939392F786C696E6B2220783D223070782220793D22307078220D0A092077
- 696474683D223438707822206865696768743D2234387078222076696577426F
- 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
- 226E6577203020302034382034382220786D6C3A73706163653D227072657365
- 727665223E0D0A3C706174682066696C6C3D22234536344131392220643D224D
- 32342E3030312C35632D31302E3439342C302D31392C382E3530362D31392C31
- 3963302C31302E3439332C382E3530362C31392C31392C31396331302E343933
- 2C302C31392D382E3530372C31392D31390D0A094334332E3030312C31332E35
- 30362C33342E3439342C352C32342E3030312C357A222F3E0D0A3C673E0D0A09
- 3C706174682066696C6C3D22234646464646462220643D224D32342E3030312C
- 31394332332E3939382C31392C32342E3030342C31392C32342E3030312C3139
- 632D302E3036322D302E3030342D312C302D312C3176372E3837364332322E39
- 31362C32392E3838382C32312E3530342C33332C31372E3935392C33330D0A09
- 09632D332E3630372C302D342E3935382D332E3036352D342E3935382D342E39
- 35385632346834763463302E3033382C302E3730392C302E3632392C312C312C
- 3163302E3636352C302C302E3937322D302E3336312C312D31762D382E313234
- 63302D322E30312C312E3333322D352C352D350D0A090963302E3034352C302C
- 302E3038362C302E3030362C302E3133312C302E30303763302C302C342E3836
- 392D302E3030392C342E3836392C352E31313763302C312E3130342D302E3839
- 362C312E3837362D322C312E383736732D322D302E3737312D322D312E383736
- 0D0A09094332352E3030312C31392E3132342C32342E3034312C31392E303033
- 2C32342E3030312C31397A204D33352E3030312C32372E38373663302C322E30
- 312D312E3333312C352E3132342D352C352E313234732D352D332E3131342D35
- 2D352E313234762D332E3433390D0A090963302E3631342C302E3237322C312E
- 3238352C302E3433392C322C302E34333963302E3731322C302C312E3338362D
- 302E3135342C322D302E34323456323863302E3033382C312C302E3636332C31
- 2C312C3163302E3234372C302C312C302C312D31762D3468345632372E383736
- 7A222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A070000007300750070007000
- 6F0072007400060200003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
- 66696C6C3D22233630374438422220643D224D34342E372C31314C33362C3139
- 2E3663302C302D322E362C302D352E322D322E36732D322E362D352E322D322E
- 362D352E326C382E372D382E37632D342E392D312E322D31302E382C302E342D
- 31342E342C3420632D352E342C352E342D302E362C31322E332D322C31332E37
- 4331322E392C32382E372C352E312C33342E372C342E392C3335632D322E332C
- 322E332D322E342C362D302E322C382E3263322E322C322E322C352E392C322E
- 312C382E322D302E3263302E332D302E332C362E372D382E342C31342E322D31
- 352E392063312E342D312E342C382C332E372C31332E362D312E384334342E32
- 2C32312E372C34352E392C31352E392C34342E372C31317A204D392E342C3431
- 2E31632D312E342C302D322E352D312E312D322E352D322E3543362E392C3337
- 2E312C382C33362C392E342C33362063312E342C302C322E352C312E312C322E
- 352C322E354331312E392C33392E392C31302E382C34312E312C392E342C3431
- 2E317A222F3E0D0A3C2F7376673E0D0A06000000730075007200760065007900
- A10300003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
- 233435354136342220643D224D33362C3448323663302C312E312D302E392C32
- 2D322C32732D322D302E392D322D3248313243392E382C342C382C352E382C38
- 2C3876333263302C322E322C312E382C342C342C3468323463322E322C302C34
- 2D312E382C342D345638204334302C352E382C33382E322C342C33362C347A22
- 2F3E0D0A202020203C706174682066696C6C3D22236666662220643D224D3336
- 2C3431483132632D302E362C302D312D302E342D312D31563863302D302E362C
- 302E342D312C312D3168323463302E362C302C312C302E342C312C3176333243
- 33372C34302E362C33362E362C34312C33362C34317A222F3E0D0A202020203C
- 672066696C6C3D2223393041344145223E0D0A20202020202020203C70617468
- 20643D224D32362C3463302C312E312D302E392C322D322C32732D322D302E39
- 2D322D32682D37763463302C312E312C302E392C322C322C3268313463312E31
- 2C302C322D302E392C322D3256344832367A222F3E0D0A20202020202020203C
- 7061746820643D224D32342C30632D322E322C302D342C312E382D342C347331
- 2E382C342C342C3473342D312E382C342D345332362E322C302C32342C307A20
- 4D32342C36632D312E312C302D322D302E392D322D3273302E392D322C322D32
- 73322C302E392C322C32205332352E312C362C32342C367A222F3E0D0A202020
- 203C2F673E0D0A202020203C672066696C6C3D2223434644384443223E0D0A20
- 202020202020203C7265637420783D2232312220793D22323022207769647468
- 3D22313222206865696768743D2232222F3E0D0A20202020202020203C726563
- 7420783D2231352220793D223139222077696474683D22342220686569676874
- 3D2234222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223
- 303341394634223E0D0A20202020202020203C7265637420783D223231222079
- 3D223239222077696474683D22313222206865696768743D2232222F3E0D0A20
- 202020202020203C7265637420783D2231352220793D22323822207769647468
- 3D223422206865696768743D2234222F3E0D0A202020203C2F673E0D0A3C2F73
- 76673E0D0A0D0000007300770069007400630068005F00630061006D00650072
- 006100F80200003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C672066696C6C3D22
- 23354533354231223E0D0A20202020202020203C7061746820643D224D33332E
- 392C31322E314831342E324C31372E362C3763302E342D302E362C312D302E39
- 2C312E372D302E3968392E3663302E372C302C312E332C302E332C312E372C30
- 2E394C33332E392C31322E317A222F3E0D0A20202020202020203C7061746820
- 643D224D31342C3131483856392E3243382C382E352C382E352C382C392E322C
- 3868332E364331332E352C382C31342C382E352C31342C392E325631317A222F
- 3E0D0A20202020202020203C7061746820643D224D34302C34324838632D322E
- 322C302D342D312E382D342D3456313463302D322E322C312E382D342C342D34
- 68333263322E322C302C342C312E382C342C347632344334342C34302E322C34
- 322E322C34322C34302C34327A222F3E0D0A202020203C2F673E0D0A20202020
- 3C706174682066696C6C3D22234538454146362220643D224D33342C32356330
- 2D352E352D342E352D31302D31302D3130632D322E342C302D342E362C302E38
- 2D362E332C322E326C312E322C312E3663312E342D312E312C332E312D312E38
- 2C352E312D312E3863342E342C302C382C332E362C382C38682D332E35206C34
- 2E352C352E366C342E352D352E364833347A222F3E0D0A202020203C70617468
- 2066696C6C3D22234538454146362220643D224D32392E312C33312E32433237
- 2E372C33322E332C32352E392C33332C32342C3333632D342E342C302D382D33
- 2E362D382D3868332E354C31352C31392E344C31302E352C323548313463302C
- 352E352C342E352C31302C31302C31302063322E342C302C342E362D302E382C
- 362E332D322E324C32392E312C33312E327A222F3E0D0A3C2F7376673E0D0A0B
- 000000730079006E006300680072006F006E0069007A006500700200003C7376
- 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
- 77332E6F72672F323030302F737667222076696577426F783D22302030203438
- 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
- 3438203438223E0D0A202020203C706174682066696C6C3D2223464636463030
- 2220643D224D33382E372C31312E396C2D332E312C322E3563322E322C322E37
- 2C332E342C362E312C332E342C392E3563302C382E332D362E372C31352D3135
- 2C3135632D302E392C302D312E392D302E312D322E382D302E336C2D302E372C
- 332E392063312E322C302E322C322E342C302E332C332E352C302E336331302E
- 352C302C31392D382E352C31392D31394334332C31392E362C34312E352C3135
- 2E332C33382E372C31312E397A222F3E0D0A202020203C706F6C79676F6E2066
- 696C6C3D22234646364630322220706F696E74733D2233312C382034322E392C
- 392E362033332E312C31392E34222F3E0D0A202020203C706174682066696C6C
- 3D22234646364630302220643D224D32342C354331332E352C352C352C31332E
- 352C352C323463302C342E362C312E362C392C342E362C31322E346C332D322E
- 364331302E332C33312E312C392C32372E362C392C323463302D382E332C362E
- 372D31352C31352D31352063302E392C302C312E392C302E312C322E382C302E
- 336C302E372D332E394332362E342C352E312C32352E322C352C32342C357A22
- 2F3E0D0A202020203C706F6C79676F6E2066696C6C3D22234646364630322220
- 706F696E74733D2231372C343020352E312C33382E342031342E392C32382E36
- 222F3E0D0A3C2F7376673E0D0A0E0000007400610062006C00650074005F0061
- 006E00640072006F00690064009E0100003C7376672076657273696F6E3D2231
- 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
- 737667222076696577426F783D223020302034382034382220656E61626C652D
- 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
- 203C706174682066696C6C3D22233337343734462220643D224D382C34315637
- 63302D322E322C312E382D342C342D3468323463322E322C302C342C312E382C
- 342C3476333463302C322E322D312E382C342D342C3448313243392E382C3435
- 2C382C34332E322C382C34317A222F3E0D0A202020203C706174682066696C6C
- 3D22234242444546422220643D224D33362C36483132632D302E362C302D312C
- 302E342D312C3176333163302C302E362C302E342C312C312C3168323463302E
- 362C302C312D302E342C312D3156374333372C362E342C33362E362C362C3336
- 2C367A222F3E0D0A202020203C7265637420783D2232312220793D2234312220
- 66696C6C3D2223373839303943222077696474683D223622206865696768743D
- 2232222F3E0D0A3C2F7376673E0D0A08000000740065006D0070006C00610074
- 0065007F0100003C7376672076657273696F6E3D22312220786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
- 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
- 3D226E657720302030203438203438223E0D0A202020203C7265637420783D22
- 342220793D2237222066696C6C3D2223424244454642222077696474683D2234
- 3022206865696768743D223334222F3E0D0A202020203C7265637420783D2239
- 2220793D223132222066696C6C3D2223334635314235222077696474683D2233
- 3022206865696768743D2235222F3E0D0A202020203C672066696C6C3D222332
- 3139364633223E0D0A20202020202020203C7265637420783D22392220793D22
- 3231222077696474683D22313322206865696768743D223136222F3E0D0A2020
- 2020202020203C7265637420783D2232362220793D223231222077696474683D
- 22313322206865696768743D223136222F3E0D0A202020203C2F673E0D0A3C2F
- 7376673E0D0A08000000740069006D0065006C0069006E006500520300003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C706174682066696C6C3D22233346353142
- 352220643D224D34322C32394832302E38632D302E352C302D312D302E322D31
- 2E342D302E366C2D332E372D332E37632D302E342D302E342D302E342D312C30
- 2D312E346C332E372D332E3763302E342D302E342C302E392D302E362C312E34
- 2D302E364834322063302E362C302C312C302E342C312C3176384334332C3238
- 2E362C34322E362C32392C34322C32397A222F3E0D0A202020203C7265637420
- 783D22392220793D2236222066696C6C3D222343464438444322207769647468
- 3D223222206865696768743D223336222F3E0D0A202020203C672066696C6C3D
- 2223393041344145223E0D0A20202020202020203C636972636C652063783D22
- 3130222063793D2231302220723D2233222F3E0D0A20202020202020203C6369
- 72636C652063783D223130222063793D2232342220723D2233222F3E0D0A2020
- 2020202020203C636972636C652063783D223130222063793D2233382220723D
- 2233222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C3D
- 22233434384146462220643D224D33342C34334832302E38632D302E352C302D
- 312D302E322D312E342D302E366C2D332E372D332E37632D302E342D302E342D
- 302E342D312C302D312E346C332E372D332E3763302E342D302E342C302E392D
- 302E362C312E342D302E364833342063302E362C302C312C302E342C312C3176
- 384333352C34322E362C33342E362C34332C33342C34337A222F3E0D0A202020
- 203C706174682066696C6C3D22233030424344342220643D224D33352C313548
- 32302E38632D302E352C302D312D302E322D312E342D302E366C2D332E372D33
- 2E37632D302E342D302E342D302E342D312C302D312E346C332E372D332E3743
- 31392E382C352E322C32302E332C352C32302E382C354833352063302E362C30
- 2C312C302E342C312C3176384333362C31342E362C33352E362C31352C33352C
- 31357A222F3E0D0A3C2F7376673E0D0A0900000074006F0064006F005F006C00
- 6900730074004C0200003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C672066696C
- 6C3D2223334635314235223E0D0A20202020202020203C706F6C79676F6E2070
- 6F696E74733D2231372E382C31382E312031302E342C32352E3420362E322C32
- 312E3320342C32332E352031302E342C32392E392032302C32302E33222F3E0D
- 0A20202020202020203C706F6C79676F6E20706F696E74733D2231372E382C35
- 2E312031302E342C31322E3420362E322C382E3320342C31302E352031302E34
- 2C31362E392032302C372E33222F3E0D0A20202020202020203C706F6C79676F
- 6E20706F696E74733D2231372E382C33312E312031302E342C33382E3420362E
- 322C33342E3320342C33362E352031302E342C34322E392032302C33332E3322
- 2F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D222339304341
- 4639223E0D0A20202020202020203C7265637420783D2232342220793D223232
- 222077696474683D22323022206865696768743D2234222F3E0D0A2020202020
- 2020203C7265637420783D2232342220793D2239222077696474683D22323022
- 206865696768743D2234222F3E0D0A20202020202020203C7265637420783D22
- 32342220793D223335222077696474683D22323022206865696768743D223422
- 2F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A1600000074006F007500
- 63006800730063007200650065006E005F0073006D0061007200740070006800
- 6F006E006500920200003C7376672076657273696F6E3D22312220786D6C6E73
- 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
- 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
- 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
- 66696C6C3D22234533383933392220643D224D31322C3430563863302D322E32
- 2C312E382D342C342D3468313663322E322C302C342C312E382C342C34763332
- 63302C322E322D312E382C342D342C344831364331332E382C34342C31322C34
- 322E322C31322C34307A222F3E0D0A202020203C706174682066696C6C3D2223
- 4646463345302220643D224D33322C37483136632D302E362C302D312C302E34
- 2D312C3176323963302C302E362C302E342C312C312C3168313663302E362C30
- 2C312D302E342C312D3156384333332C372E342C33322E362C372C33322C377A
- 222F3E0D0A202020203C636972636C652066696C6C3D22234136363432412220
- 63783D223234222063793D2234312220723D22312E35222F3E0D0A202020203C
- 636972636C652066696C6C3D2223453931453633222063783D22323422206379
- 3D2232332220723D2232222F3E0D0A202020203C636972636C652066696C6C3D
- 226E6F6E6522207374726F6B653D222346343846423122207374726F6B652D77
- 696474683D223222207374726F6B652D6D697465726C696D69743D2231302220
- 63783D223234222063793D2232332220723D2234222F3E0D0A202020203C6369
- 72636C652066696C6C3D226E6F6E6522207374726F6B653D2223463842424430
- 22207374726F6B652D6D697465726C696D69743D223130222063783D22323422
- 2063793D2232332220723D22362E35222F3E0D0A3C2F7376673E0D0A09000000
- 740072006100640065006D00610072006B00930100003C737667207665727369
- 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F737667222076696577426F783D223020302034382034382220656E
- 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
- 0D0A202020203C636972636C652066696C6C3D2223394332374230222063783D
- 223234222063793D2232342220723D223231222F3E0D0A202020203C67206669
- 6C6C3D2223453142454537223E0D0A20202020202020203C7061746820643D22
- 4D32302E362C31382E35682D342E327631342E32682D332E355631382E354838
- 2E37762D322E396831312E395631382E357A222F3E0D0A20202020202020203C
- 7061746820643D224D32372E312C31352E364C33302E332C32386C332E322D31
- 322E3468342E357631372E31682D332E35762D342E366C302E332D372E316C2D
- 332E342C31312E38682D322E344C32352E372C32316C302E332C372E3176342E
- 36682D332E355631352E36204832372E317A222F3E0D0A202020203C2F673E0D
- 0A3C2F7376673E0D0A0E00000074007200650065005F00730074007200750063
- 007400750072006500A00100003C7376672076657273696F6E3D22312220786D
- 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
- 2076696577426F783D223020302034382034382220656E61626C652D6261636B
- 67726F756E643D226E657720302030203438203438223E0D0A202020203C706F
- 6C79676F6E2066696C6C3D22233930434146392220706F696E74733D2233362E
- 392C31332E382033352E312C31302E3220372E352C32342033352E312C33372E
- 382033362E392C33342E322031362E352C3234222F3E0D0A202020203C726563
- 7420783D22362220793D223138222066696C6C3D222344383142363022207769
- 6474683D22313222206865696768743D223132222F3E0D0A202020203C672066
- 696C6C3D2223323139364633223E0D0A20202020202020203C7265637420783D
- 2233302220793D2236222077696474683D22313222206865696768743D223132
- 222F3E0D0A20202020202020203C7265637420783D2233302220793D22333022
- 2077696474683D22313222206865696768743D223132222F3E0D0A202020203C
- 2F673E0D0A3C2F7376673E0D0A0F000000740077006F005F0073006D00610072
- 007400700068006F006E0065007300C80200003C7376672076657273696F6E3D
- 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
- 302F737667222076696577426F783D223020302034382034382220656E61626C
- 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
- 2020203C706174682066696C6C3D22233337343734462220643D224D362C3336
- 563863302D322E322C312E382D342C342D3468313463322E322C302C342C312E
- 382C342C3476323863302C322E322D312E382C342D342C3448313043372E382C
- 34302C362C33382E322C362C33367A222F3E0D0A202020203C70617468206669
- 6C6C3D22234242444546422220643D224D32342C3748313043392E342C372C39
- 2C372E342C392C3876323563302C302E362C302E342C312C312C316831346330
- 2E362C302C312D302E342C312D3156384332352C372E342C32342E362C372C32
- 342C377A222F3E0D0A202020203C7265637420783D2231342220793D22333622
- 2066696C6C3D2223373839303943222077696474683D22362220686569676874
- 3D2232222F3E0D0A202020203C706174682066696C6C3D222345333839333922
- 20643D224D32302C343056313263302D322E322C312E382D342C342D34683134
- 63322E322C302C342C312E382C342C3476323863302C322E322D312E382C342D
- 342C344832344332312E382C34342C32302C34322E322C32302C34307A222F3E
- 0D0A202020203C706174682066696C6C3D22234646463345302220643D224D33
- 382C3131483234632D302E362C302D312C302E342D312C3176323563302C302E
- 362C302E342C312C312C3168313463302E362C302C312D302E342C312D315631
- 324333392C31312E342C33382E362C31312C33382C31317A222F3E0D0A202020
- 203C636972636C652066696C6C3D2223413636343241222063783D2233312220
- 63793D2234312220723D22312E35222F3E0D0A3C2F7376673E0D0A0400000075
- 006E0064006F002F0100003C7376672076657273696F6E3D22312220786D6C6E
- 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
- 696577426F783D223020302034382034382220656E61626C652D6261636B6772
- 6F756E643D226E657720302030203438203438223E0D0A202020203C67206669
- 6C6C3D2223303042434434223E0D0A20202020202020203C706F6C79676F6E20
- 706F696E74733D22352C31382031392C362E332031392C32392E37222F3E0D0A
- 20202020202020203C7061746820643D224D32382C3134483136763868313263
- 322E382C302C352C322E322C352C35732D322E322C352D352C35682D33763868
- 3363372E322C302C31332D352E382C31332D31335333352E322C31342C32382C
- 31347A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A060000007500
- 6E006C006F0063006B00940100003C7376672076657273696F6E3D2231222078
- 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
- 222076696577426F783D223020302034382034382220656E61626C652D626163
- 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C70
- 6174682066696C6C3D22233432343234322220643D224D32342C34632D352E35
- 2C302D31302C342E352D31302C313076346834762D3463302D332E332C322E37
- 2D362C362D3673362C322E372C362C3668344333342C382E352C32392E352C34
- 2C32342C347A222F3E0D0A202020203C706174682066696C6C3D222346423843
- 30302220643D224D33362C3434483132632D322E322C302D342D312E382D342D
- 3456323263302D322E322C312E382D342C342D3468323463322E322C302C342C
- 312E382C342C347631384334302C34322E322C33382E322C34342C33362C3434
- 7A222F3E0D0A202020203C636972636C652066696C6C3D222343373645303022
- 2063783D223234222063793D2233312220723D2233222F3E0D0A3C2F7376673E
- 0D0A0200000075007000FD0000003C7376672076657273696F6E3D2231222078
- 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
- 222076696577426F783D223020302034382034382220656E61626C652D626163
- 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C67
- 2066696C6C3D2223334635314235223E0D0A20202020202020203C706F6C7967
- 6F6E20706F696E74733D2232342C342033352E372C31382031322E332C313822
- 2F3E0D0A20202020202020203C7265637420783D2232302220793D2231352220
- 77696474683D223822206865696768743D223237222F3E0D0A202020203C2F67
- 3E0D0A3C2F7376673E0D0A07000000750070005F006C00650066007400100100
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22
- 233346353142352220706F696E74733D22342C31392031382C33302E37203138
- 2C372E33222F3E0D0A202020203C706174682066696C6C3D2223334635314235
- 2220643D224D34322C3237763133682D3856323763302D322E322D312E382D34
- 2D342D34483133762D386831374333362E362C31352C34322C32302E342C3432
- 2C32377A222F3E0D0A3C2F7376673E0D0A08000000750070005F007200690067
- 0068007400A60100003C7376672076657273696F6E3D22312220786D6C6E733D
- 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
- 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
- 6E643D226E657720302030203438203438223E0D0A202020203C706F6C79676F
- 6E2066696C6C3D22233346353142352220706F696E74733D2234342C31392033
- 302C33302E372033302C372E33222F3E0D0A202020203C706174682066696C6C
- 3D22233346353142352220643D224D362C3237763133683856323763302D322E
- 322C312E382D342C342D34683137762D384831384331312E342C31352C362C32
- 302E342C362C32377A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D
- 22233346353142352220706F696E74733D2234342C31392033302C33302E3720
- 33302C372E33222F3E0D0A202020203C706174682066696C6C3D222333463531
- 42352220643D224D362C3237763133683856323763302D322E322C312E382D34
- 2C342D34683137762D384831384331312E342C31352C362C32302E342C362C32
- 377A222F3E0D0A3C2F7376673E0D0A06000000750070006C006F006100640097
- 0100003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
- 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
- 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
- 7720302030203438203438223E0D0A202020203C672066696C6C3D2223303039
- 363838223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22
- 32342C31302E392033352C32342031332C3234222F3E0D0A2020202020202020
- 3C7265637420783D2232302220793D223430222077696474683D223822206865
- 696768743D2234222F3E0D0A20202020202020203C7265637420783D22323022
- 20793D223334222077696474683D223822206865696768743D2234222F3E0D0A
- 20202020202020203C7265637420783D2232302220793D223231222077696474
- 683D223822206865696768743D223131222F3E0D0A20202020202020203C7265
- 637420783D22362220793D2234222077696474683D2233362220686569676874
- 3D2234222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A030000007500
- 73006200970800003C3F786D6C2076657273696F6E3D22312E302220656E636F
- 64696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F723A20
- 41646F626520496C6C7573747261746F722031352E302E302C20535647204578
- 706F727420506C75672D496E202E205356472056657273696F6E3A20362E3030
- 204275696C6420302920202D2D3E0D0A3C21444F435459504520737667205055
- 424C494320222D2F2F5733432F2F4454442053564720312E312F2F454E222022
- 687474703A2F2F7777772E77332E6F72672F47726170686963732F5356472F31
- 2E312F4454442F73766731312E647464223E0D0A3C7376672076657273696F6E
- 3D22312E31222020786D6C6E733D22687474703A2F2F7777772E77332E6F7267
- 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77
- 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D
- 22307078220D0A092077696474683D223438707822206865696768743D223438
- 7078222076696577426F783D223020302034382034382220656E61626C652D62
- 61636B67726F756E643D226E6577203020302034382034382220786D6C3A7370
- 6163653D227072657365727665223E0D0A3C706174682066696C6C3D22233135
- 363543302220643D224D33382E3730312C32342E333535682D322E3138396C2D
- 302E3436372C322E32363563302C302C322E3237372C302C322E35312C306330
- 2E3233332C302C312E3534352D302E3136372C312E3534352D312E3236370D0A
- 094334302E312C32342E3236362C33382E3730312C32342E3335352C33382E37
- 30312C32342E3335357A204D33392E3532312C32302E333339682D322E31356C
- 2D302E3337342C312E37393663302C302C322E3136312C302C322E3333372C30
- 63302E3138382C302C312E3131332D302E3134362C312E3131332D312E303036
- 0D0A094334302E3434372C32302E3237312C33392E3532312C32302E3333392C
- 33392E3532312C32302E3333397A204D34342E3036342C32332E31303963302C
- 302C312E3433362D302E3734332C312E3433362D332E30393363302D332E3731
- 352D342E3337372D332E3531362D342E3337372D332E353136682D322E383635
- 0D0A096C302E3637342D3363302C302D31322E342C302D32302E3937312C3063
- 2D392E3334342C302D31322E3135382C362E3737342D31322E3135382C362E37
- 37344C352E3733362C32302E3548322E3534376C2D312E3034372C3668332E33
- 376C302E3030312C302E3134330D0A0963302C302D302E3238352C362E383537
- 2C31302E3436332C362E3835376331302E3734372C302C31392E3034322C302C
- 31392E3034322C306C302E3637392D3363302E38342C302C322E322C302C342E
- 3338392C3063342E3732392C302C352E3539312D332E3335342C352E3539312D
- 342E390D0A094334352E3033322C32332E3833382C34342E3036342C32332E31
- 30392C34342E3036342C32332E3130397A222F3E0D0A3C706174682066696C6C
- 3D22234646464646462220643D224D33382E3730312C32342E333535682D322E
- 3138396C2D302E3436372C322E32363563302C302C322E3237372C302C322E35
- 312C3063302E3233332C302C312E3534352D302E3136372C312E3534352D312E
- 3236370D0A094334302E312C32342E3236362C33382E3730312C32342E333535
- 2C33382E3730312C32342E3335357A204D33392E3532312C32302E333339682D
- 322E31356C2D302E3337342C312E37393663302C302C322E3136312C302C322E
- 3333372C3063302E3138382C302C312E3131332D302E3134362C312E3131332D
- 312E3030360D0A094334302E3434372C32302E3237312C33392E3532312C3230
- 2E3333392C33392E3532312C32302E3333397A204D31342E3032322C32392E35
- 632D352E3330362C302D352E3330362D332E3632342D352E3233382D332E3938
- 3663302E3036392D302E3336332C312E3738392D382E3031342C312E3738392D
- 382E3031340D0A0968332E38346C2D312E3335382C362E33353463302C302D30
- 2E3937312C322E3732382C312E3235312C322E37323863322E3038312C302C32
- 2E3333362D322E3533352C322E3333362D322E3533356C312E3436352D362E35
- 343368332E3833396C2D312E3538322C362E3937390D0A094332302E3336352C
- 32342E34382C32302E3235382C32392E352C31342E3032322C32392E357A204D
- 32362E3039382C32392E353231632D322E3637342C302D342E3935382D312E32
- 36322D342E3835362D342E313468332E34333863302C302E3537362C302E3038
- 362C312E3632372C312E3633332C312E3632370D0A0963302E3632372C302C31
- 2E3638382D302E3236362C312E3638382D312E31333363302D312E3633312D35
- 2E3539372D302E3738352D352E3539372D342E353763302D322E3036332C312E
- 3839392D332E3738352C342E3938392D332E37383563342E3937362C302C342E
- 3631332C332E3734392C342E3631332C332E3734390D0A09682D332E33363963
- 302D312E3034342D302E3636342D312E3230342D312E3436332D312E32303463
- 2D302E382C302D312E3337322C302E3334332D312E3337322C302E3934346330
- 2C312E3437312C352E3633342C302E3435362C352E3633342C342E3533310D0A
- 094333312E3433362C32372E3330352C33302E3031322C32392E3532312C3236
- 2E3039382C32392E3532317A204D33392E3336362C32392E35632D302E343139
- 2C302D372E3531352C302D372E3531352C306C322E3630312D313263302C302C
- 352E3434342C302C362E3535362C300D0A0963312E3131332C302C332E34332C
- 302E3233342C332E34332C322E35343263302C322E3630322D322E3232372C33
- 2E3031332D322E3232372C332E30313373312E3736342C302E3430372C312E37
- 36342C322E3437334334332E3937352C32392E3435372C33392E3737352C3239
- 2E352C33392E3336362C32392E357A220D0A092F3E0D0A3C2F7376673E0D0A0A
- 00000076006900640065006F005F00630061006C006C002A0100003C73766720
- 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
- 2E6F72672F323030302F737667222076696577426F783D223020302034382034
- 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
- 203438223E0D0A202020203C706174682066696C6C3D22233443414635302220
- 643D224D382C313268323263322E322C302C342C312E382C342C347631366330
- 2C322E322D312E382C342D342C344838632D322E322C302D342D312E382D342D
- 3456313643342C31332E382C352E382C31322C382C31327A222F3E0D0A202020
- 203C706F6C79676F6E2066696C6C3D22233338384533432220706F696E74733D
- 2234342C33352033342C32392033342C31392034342C3133222F3E0D0A3C2F73
- 76673E0D0A0A00000076006900640065006F005F00660069006C0065002D0100
- 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
- 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
- 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
- 302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22
- 233930434146392220706F696E74733D2234302C343520382C343520382C3320
- 33302C332034302C3133222F3E0D0A202020203C706F6C79676F6E2066696C6C
- 3D22234531463546452220706F696E74733D2233382E352C31342032392C3134
- 2032392C342E35222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
- 3139373644322220706F696E74733D2233302C32382032302C32322032302C33
- 34222F3E0D0A3C2F7376673E0D0A0F00000076006900640065006F005F007000
- 72006F006A006500630074006F007200E80500003C7376672076657273696F6E
- 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
- 30302F737667222076696577426F783D223020302034382034382220656E6162
- 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
- 202020203C672066696C6C3D2223353436453741223E0D0A2020202020202020
- 3C7265637420783D22352220793D223334222077696474683D22362220686569
- 6768743D2233222F3E0D0A20202020202020203C7265637420783D2233372220
- 793D223334222077696474683D223622206865696768743D2233222F3E0D0A20
- 2020203C2F673E0D0A202020203C706174682066696C6C3D2223373839303943
- 2220643D224D34342C33354834632D322E322C302D342D312E382D342D345631
- 3763302D322E322C312E382D342C342D3468343063322E322C302C342C312E38
- 2C342C347631344334382C33332E322C34362E322C33352C34342C33357A222F
- 3E0D0A202020203C672066696C6C3D2223333734373446223E0D0A2020202020
- 2020203C7265637420783D22352220793D223139222077696474683D22322220
- 6865696768743D2232222F3E0D0A20202020202020203C7265637420783D2235
- 2220793D223233222077696474683D223222206865696768743D2232222F3E0D
- 0A20202020202020203C7265637420783D22352220793D223237222077696474
- 683D223222206865696768743D2232222F3E0D0A20202020202020203C726563
- 7420783D22392220793D223139222077696474683D223222206865696768743D
- 2232222F3E0D0A20202020202020203C7265637420783D22392220793D223233
- 222077696474683D223222206865696768743D2232222F3E0D0A202020202020
- 20203C7265637420783D22392220793D223237222077696474683D2232222068
- 65696768743D2232222F3E0D0A20202020202020203C7265637420783D223133
- 2220793D223139222077696474683D223222206865696768743D2232222F3E0D
- 0A20202020202020203C7265637420783D2231332220793D2232332220776964
- 74683D223222206865696768743D2232222F3E0D0A20202020202020203C7265
- 637420783D2231332220793D223237222077696474683D223222206865696768
- 743D2232222F3E0D0A20202020202020203C7265637420783D2231372220793D
- 223139222077696474683D223222206865696768743D2232222F3E0D0A202020
- 20202020203C7265637420783D2231372220793D223233222077696474683D22
- 3222206865696768743D2232222F3E0D0A20202020202020203C726563742078
- 3D2231372220793D223237222077696474683D223222206865696768743D2232
- 222F3E0D0A20202020202020203C7265637420783D2232312220793D22313922
- 2077696474683D223222206865696768743D2232222F3E0D0A20202020202020
- 203C7265637420783D2232312220793D223233222077696474683D2232222068
- 65696768743D2232222F3E0D0A20202020202020203C7265637420783D223231
- 2220793D223237222077696474683D223222206865696768743D2232222F3E0D
- 0A202020203C2F673E0D0A202020203C636972636C652066696C6C3D22233337
- 34373446222063783D223337222063793D2232342220723D2238222F3E0D0A20
- 2020203C636972636C652066696C6C3D2223613066222063783D223337222063
- 793D2232342220723D2236222F3E0D0A202020203C706174682066696C6C3D22
- 234541383046432220643D224D34302E372C32312E37632D312D312E312D322E
- 332D312E372D332E372D312E37732D322E382C302E362D332E372C312E37632D
- 302E342C302E342D302E332C312C302E312C312E3463302E342C302E342C312C
- 302E332C312E342D302E312063312E322D312E332C332E332D312E332C342E35
- 2C3063302E322C302E322C302E352C302E332C302E372C302E3363302E322C30
- 2C302E352D302E312C302E372D302E334334312E312C32322E372C34312E312C
- 32322E312C34302E372C32312E377A222F3E0D0A3C2F7376673E0D0A0C000000
- 76006900650077005F00640065007400610069006C007300790200003C737667
- 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
- 332E6F72672F323030302F737667222076696577426F783D2230203020343820
- 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
- 38203438223E0D0A202020203C7265637420783D22372220793D223422206669
- 6C6C3D2223424244454642222077696474683D22333422206865696768743D22
- 3430222F3E0D0A202020203C672066696C6C3D2223323139364633223E0D0A20
- 202020202020203C7265637420783D2231332220793D22323622207769647468
- 3D223422206865696768743D2234222F3E0D0A20202020202020203C72656374
- 20783D2231332220793D223138222077696474683D223422206865696768743D
- 2234222F3E0D0A20202020202020203C7265637420783D2231332220793D2233
- 34222077696474683D223422206865696768743D2234222F3E0D0A2020202020
- 2020203C7265637420783D2231332220793D223130222077696474683D223422
- 206865696768743D2234222F3E0D0A20202020202020203C7265637420783D22
- 32312220793D223236222077696474683D22313422206865696768743D223422
- 2F3E0D0A20202020202020203C7265637420783D2232312220793D2231382220
- 77696474683D22313422206865696768743D2234222F3E0D0A20202020202020
- 203C7265637420783D2232312220793D223334222077696474683D2231342220
- 6865696768743D2234222F3E0D0A20202020202020203C7265637420783D2232
- 312220793D223130222077696474683D22313422206865696768743D2234222F
- 3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A030000007600690070003A
- 0200003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
- 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
- 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
- 7720302030203438203438223E0D0A202020203C706174682066696C6C3D2223
- 3838304534462220643D224D33382C3433483130632D322E322C302D342D312E
- 382D342D3456313163302D322E322C312E382D342C342D3468323863322E322C
- 302C342C312E382C342C347632384334322C34312E322C34302E322C34332C33
- 382C34337A222F3E0D0A202020203C672066696C6C3D2223464644353446223E
- 0D0A20202020202020203C7061746820643D224D31352E392C32386C322E312D
- 392E3168322E386C2D332E362C31322E36682D322E364C31312C31382E396832
- 2E384C31352E392C32387A222F3E0D0A20202020202020203C7061746820643D
- 224D32352E362C33312E35682D322E355631382E3968322E355633312E357A22
- 2F3E0D0A20202020202020203C7061746820643D224D33312E322C32372E3176
- 342E34682D322E355631382E3968342E3363332E372C302C342E312C332E342C
- 342E312C342E3263302C312E322D302E352C342D342E312C344833312E327A20
- 4D33312E322C32342E3968312E372063312E332C302C312E352D312E312C312E
- 352D312E3963302D312E362D302E392D322E312D312E352D322E31682D312E37
- 5632342E397A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A030000
- 0076006C006300C80600003C3F786D6C2076657273696F6E3D22312E30222065
- 6E636F64696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F
- 723A2041646F626520496C6C7573747261746F722031352E302E302C20535647
- 204578706F727420506C75672D496E202E205356472056657273696F6E3A2036
- 2E3030204275696C6420302920202D2D3E0D0A3C21444F435459504520737667
- 205055424C494320222D2F2F5733432F2F4454442053564720312E312F2F454E
- 222022687474703A2F2F7777772E77332E6F72672F47726170686963732F5356
- 472F312E312F4454442F73766731312E647464223E0D0A3C7376672076657273
- 696F6E3D22312E31222020786D6C6E733D22687474703A2F2F7777772E77332E
- 6F72672F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A
- 2F2F7777772E77332E6F72672F313939392F786C696E6B2220783D2230707822
- 20793D22307078220D0A092077696474683D223438707822206865696768743D
- 2234387078222076696577426F783D223020302034382034382220656E61626C
- 652D6261636B67726F756E643D226E6577203020302034382034382220786D6C
- 3A73706163653D227072657365727665223E0D0A3C706174682066696C6C3D22
- 234635374330302220643D224D33362E3235382C32382E38333763302C302D30
- 2E31312D302E3833372D312E3235372D302E383337632D302E3231362C302D32
- 2E3339322C302D332E3731392C3063302E3739382C322E3637312C312E343937
- 2C352E3133352C312E3439372C352E3237390D0A0963302C322E3338372D332E
- 3430312C332E3339332D382E3931372C332E333933632D352E3531352C302D38
- 2E3635312D302E39342D382E3635312D332E33323663302D302E3136372C302E
- 3939382D322E3639322C312E3739312D352E333436632D312E3539312C302D33
- 2E3836332C302D342E3036332C300D0A09632D302E3830362C302D302E393337
- 2C302E3734392D302E3933372C302E3734394C382E3135392C34302E3938364C
- 382E3831352C34326833302E3635326C302E3337362D312E3031344C33362E32
- 35382C32382E3833377A222F3E0D0A3C706174682066696C6C3D222345304530
- 45302220643D224D32342E3030312C36632D312E3032392C302D312E3836342C
- 302E3137392D312E3836342C302E333938632D302E3439322C312E3438332D38
- 2E3132322C32362E3134332D382E3132322C32362E3737340D0A0963302C322E
- 3338382C342E3437312C332E3832372C392E3938352C332E38323773392E3938
- 362D312E3433392C392E3938362D332E38323763302D302E3534392D372E3631
- 342D32352E3236382D382E3132322D32362E3737344332352E3836352C362E31
- 37392C32352E3033312C362C32342E3030312C360D0A094C32342E3030312C36
- 7A222F3E0D0A3C673E0D0A093C706174682066696C6C3D222346463938303022
- 20643D224D33332E3139362C33302E3434374333322E3033322C33322E323332
- 2C32382E3334312C33342C32342E3034362C3334632D342E33342C302D382E31
- 35362D312E3639362D392E3238312D332E35310D0A0909632D302E3439392C31
- 2E3438332D302E3839322C322E3634372D302E3839322C332E323863302C322E
- 3338362C342E3533332C342E3232392C31302E3132382C342E32323963352E35
- 39352C302C31302E3133312D312E3834342C31302E3133312D342E3232390D0A
- 09094333342E3133322C33332E3232322C33332E3731332C33312E3935352C33
- 332E3139362C33302E3434377A222F3E0D0A093C706174682066696C6C3D2223
- 4646393830302220643D224D33312E3338372C32342E3331346C2D322E303734
- 2D362E37393463302C302D312E3835372C312E3437392D352E3331312C312E34
- 3739632D332E3435332C302D352E3331362D312E3437392D352E3331362D312E
- 3437396C2D322E3038312C362E3830360D0A090963302C302C322E3036382C32
- 2E3637342C372E3339372C322E3637344332392E3337352C32372C33312E3338
- 372C32342E3331342C33312E3338372C32342E3331347A222F3E0D0A093C7061
- 74682066696C6C3D22234646393830302220643D224D32372E3234312C31302E
- 3830396C2D312E3337362D342E343163302C302D302E3038332D302E3339382D
- 312E3836342D302E333938632D312E3834342C302D312E3836342C302E333938
- 2D312E3836342C302E3339386C2D312E3337362C342E3430370D0A090963302C
- 302C302E3838352C312E3139342C332E3233392C312E3139344332362E333535
- 2C31322C32372E3234312C31302E3830392C32372E3234312C31302E3830397A
- 222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A1200000076006F006900630065
- 005F00700072006500730065006E0074006100740069006F006E006B0100003C
- 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
- 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
- 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
- 30203438203438223E0D0A202020203C706174682066696C6C3D222332313936
- 46332220643D224D34302C3232682D386C2D342C3456313263302D322E322C31
- 2E382D342C342D34683863322E322C302C342C312E382C342C3476364334342C
- 32302E322C34322E322C32322C34302C32327A222F3E0D0A202020203C636972
- 636C652066696C6C3D2223464641373236222063783D223137222063793D2231
- 392220723D2238222F3E0D0A202020203C706174682066696C6C3D2223363037
- 4438422220643D224D33302C33362E3763302C302D332E362D362E372D31332D
- 362E3753342C33362E372C342C33362E375634306832365633362E377A222F3E
- 0D0A3C2F7376673E0D0A0900000076006F006900630065006D00610069006C00
- B10100003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
- 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
- 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
- 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
- 233443414635302220643D224D34382C323463302D362E312D342E392D31312D
- 31312D3131732D31312C342E392D31312C313163302C322E372C302E392C352E
- 312C322E352C37682D3963312E362D312E392C322E352D342E332C322E352D37
- 63302D362E312D342E392D31312D31312D31312053302C31372E392C302C3234
- 73342E392C31312C31312C3131683237762D302E314334332E362C33342E342C
- 34382C32392E372C34382C32347A204D342C323463302D332E392C332E312D37
- 2C372D3773372C332E312C372C37732D332E312C372D372C3753342C32372E39
- 2C342C32347A204D33372C333120632D332E392C302D372D332E312D372D3773
- 332E312D372C372D3763332E392C302C372C332E312C372C375334302E392C33
- 312C33372C33317A222F3E0D0A3C2F7376673E0D0A0600000077006500620063
- 0061006D00A20200003C7376672076657273696F6E3D22312220786D6C6E733D
- 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
- 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
- 6E643D226E657720302030203438203438223E0D0A202020203C706174682066
- 696C6C3D22233435354136342220643D224D33362E352C34344831312E35632D
- 312E312C302D312E382D312E322D312E332D322E324C31332C33376832326C32
- 2E372C342E384333382E332C34322E382C33372E362C34342C33362E352C3434
- 7A222F3E0D0A202020203C636972636C652066696C6C3D222337383930394322
- 2063783D223234222063793D2232332220723D223138222F3E0D0A202020203C
- 706174682066696C6C3D22233435354136342220643D224D32342C3335632D36
- 2E362C302D31322D352E342D31322D313263302D362E362C352E342D31322C31
- 322D31327331322C352E342C31322C31324333362C32392E362C33302E362C33
- 352C32342C33357A222F3E0D0A202020203C636972636C652066696C6C3D2223
- 343241354635222063783D223234222063793D2232332220723D2239222F3E0D
- 0A202020203C706174682066696C6C3D22233930434146392220643D224D3238
- 2E382C3230632D312E322D312E342D332D322E322D342E382D322E32732D332E
- 362C302E382D342E382C322E32632D302E352C302E352D302E342C312E332C30
- 2E312C312E3863302E352C302E352C312E332C302E342C312E382D302E312063
- 312E352D312E372C342E332D312E372C352E382C3063302E332C302E332C302E
- 362C302E342C312C302E3463302E332C302C302E362D302E312C302E392D302E
- 334332392E322C32312E342C32392E332C32302E352C32382E382C32307A222F
- 3E0D0A3C2F7376673E0D0A0A000000770069002D00660069005F006C006F0067
- 006F00170600003C3F786D6C2076657273696F6E3D22312E302220656E636F64
- 696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F723A2041
- 646F626520496C6C7573747261746F722031352E302E302C2053564720457870
- 6F727420506C75672D496E202E205356472056657273696F6E3A20362E303020
- 4275696C6420302920202D2D3E0D0A3C21444F43545950452073766720505542
- 4C494320222D2F2F5733432F2F4454442053564720312E312F2F454E22202268
- 7474703A2F2F7777772E77332E6F72672F47726170686963732F5356472F312E
- 312F4454442F73766731312E647464223E0D0A3C7376672076657273696F6E3D
- 22312E31222020786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
- 323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F7777
- 772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D22
- 307078220D0A092077696474683D223438707822206865696768743D22343870
- 78222076696577426F783D223020302034382034382220656E61626C652D6261
- 636B67726F756E643D226E6577203020302034382034382220786D6C3A737061
- 63653D227072657365727665223E0D0A3C673E0D0A093C706174682066696C6C
- 3D22233346353142352220643D224D34362C32362E343863302C342E3532372D
- 332E3236382C372E35322D372E332C372E353248392E32393943352E3236392C
- 33342C322C33302E3633342C322C32362E34385632312E353243322C31372E33
- 36362C352E3236392C31342C392E3239392C31340D0A09094833382E3763342E
- 3033322C302C372E332C332E3336362C372E332C372E35325632362E34387A22
- 2F3E0D0A093C656C6C697073652066696C6C3D2223334635314235222063783D
- 223234222063793D223234222072783D2231342E393032222072793D22313522
- 2F3E0D0A3C2F673E0D0A3C673E0D0A093C706F6C79676F6E2066696C6C3D2223
- 4646464646462220706F696E74733D2231372C31392031342E3236342C313920
- 31332E3432372C32342E3835392031322E3338382C31392E30323820392E3933
- 2C31392E30323820382E3836342C32342E38353920382E3035342C31392E3032
- 3820352E3236362C31392E303238200D0A0909372E3539372C32392031302E30
- 35362C32392031312E31322C32322E3835342031322E3230392C32392031342E
- 3639332C32392009222F3E0D0A093C7265637420783D2231392220793D223232
- 222066696C6C3D2223464646464646222077696474683D22322E353038222068
- 65696768743D2237222F3E0D0A093C706174682066696C6C3D22234646464646
- 462220643D224D32312E352C31392E3734374332312E352C32302E34342C3230
- 2E39342C32312C32302E32352C32315331392C32302E34342C31392C31392E37
- 343763302D302E3639362C302E35362D312E3235382C312E32352D312E323538
- 0D0A09095332312E352C31392E3035312C32312E352C31392E3734377A222F3E
- 0D0A093C706174682066696C6C3D22234646464646462220643D224D33382E35
- 36312C3136632D342E3831382C302D372E3937392C302D372E3937392C305332
- 352C31362E3139332C32352C32312E39313476342E33333663302C302C302E31
- 30312C322E3934312D332C352E37356831362E3738350D0A090963302C302C35
- 2E3231352C302C352E3231352D352E35353363302D342E3837392C302D342E38
- 37392C302D342E3837395334332E3737322C31362C33382E3536312C31367A20
- 4D33372E3333392C32312E333639682D352E36353176322E32333668352E3039
- 3476322E333434682D352E3039345632394832395631390D0A090968382E3333
- 395632312E3336397A204D34302E32352C31382E34383963302E3638392C302C
- 312E32352C302E3536322C312E32352C312E3235384334312E352C32302E3434
- 2C34302E3933392C32312C34302E32352C32315333392C32302E34342C33392C
- 31392E3734370D0A09094333392C31392E3035312C33392E3536312C31382E34
- 38392C34302E32352C31382E3438397A204D34312E3530382C3239483339762D
- 3768322E3530385632397A222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A0900
- 0000770069006B006900700065006400690061002E0600003C3F786D6C207665
- 7273696F6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A
- 3C212D2D2047656E657261746F723A2041646F626520496C6C7573747261746F
- 722031352E302E302C20535647204578706F727420506C75672D496E202E2053
- 56472056657273696F6E3A20362E3030204275696C6420302920202D2D3E0D0A
- 3C21444F435459504520737667205055424C494320222D2F2F5733432F2F4454
- 442053564720312E312F2F454E222022687474703A2F2F7777772E77332E6F72
- 672F47726170686963732F5356472F312E312F4454442F73766731312E647464
- 223E0D0A3C7376672076657273696F6E3D22312E31222020786D6C6E733D2268
- 7474703A2F2F7777772E77332E6F72672F323030302F7376672220786D6C6E73
- 3A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F313939392F78
- 6C696E6B2220783D223070782220793D22307078220D0A092077696474683D22
- 3438707822206865696768743D2234387078222076696577426F783D22302030
- 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
- 20302034382034382220786D6C3A73706163653D227072657365727665223E0D
- 0A3C706174682066696C6C3D22234346443844432220643D224D362C31306330
- 2D322E3230392C312E3739312D342C342D3468323863322E3230392C302C342C
- 312E3739312C342C3476323863302C322E3230392D312E3739312C342D342C34
- 483130632D322E3230392C302D342D312E3739312D342D345631307A222F3E0D
- 0A3C706174682066696C6C3D22233337343734462220643D224D33392C31372E
- 32373163302C302E3139312D302E3134382C302E3334392D302E3333342C302E
- 333439682D312E3739396C2D382E3136342C31382E313739632D302E3035322C
- 302E31322D302E31372C302E322D302E3239372C302E323032682D302E303034
- 0D0A09632D302E3132372C302D302E3234322D302E3037342D302E3239382D30
- 2E3139336C2D332E3837342D382E3033396C2D342E31382C382E303439632D30
- 2E30362C302E3131362D302E3136372C302E3138312D302E3330332C302E3138
- 340D0A09632D302E3132352D302E3030342D302E3233392D302E3038322D302E
- 3239322D302E3139396C2D382E3235322D31382E313832682D312E383743392E
- 3134392C31372E3631392C392C31372E3436322C392C31372E3237315631362E
- 333543392C31362E3135352C392E3134392C31362C392E3333332C313668362E
- 3635370D0A0963302E3138342C302C302E3333332C302E3135352C302E333333
- 2C302E333576302E39323163302C302E3139312D302E3134392C302E3334392D
- 302E3333332C302E333439682D312E3433336C352E3639362C31332E3734386C
- 322E3936342D352E3739336C2D332E3735372D372E393533682D302E3930340D
- 0A09632D302E3138342C302D302E3333332D302E3135372D302E3333332D302E
- 33355631362E333563302D302E3139312C302E3134392D302E3334382C302E33
- 33332D302E33343868342E39323463302E3138342C302C302E3333332C302E31
- 35362C302E3333332C302E33343876302E3932320D0A0963302C302E3139322D
- 302E3134392C302E33352D302E3333332C302E3335682D302E3836376C322E31
- 36322C342E3934386C322E3537322D342E3934384832352E3737632D302E3138
- 372C302D302E3333342D302E3135372D302E3333342D302E33355631362E3335
- 0D0A0963302D302E3139312C302E3134372D302E3334382C302E3333342D302E
- 33343868342E37383463302E3138372C302C302E3333332C302E3135362C302E
- 3333332C302E33343876302E39323263302C302E3139322D302E3134362C302E
- 33352D302E3333332C302E3335682D312E30356C2D332E3735372C372E313431
- 0D0A096C332E3036332C362E3538346C352E3930352D31332E373235682D312E
- 383732632D302E3138342C302D302E3333342D302E3135372D302E3333342D30
- 2E33355631362E333563302D302E3139312C302E31352D302E3334382C302E33
- 33342D302E33343868352E3832320D0A0963302E3138362C302C302E3333342C
- 302E3135362C302E3333342C302E3334385631372E3237317A222F3E0D0A3C2F
- 7376673E0D0A0800000077006F0072006B0066006C006F007700540300003C73
- 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
- 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
- 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
- 203438203438223E0D0A202020203C7265637420783D22372220793D22333122
- 2066696C6C3D2223303042434434222077696474683D22313022206865696768
- 743D223130222F3E0D0A202020203C706174682066696C6C3D22233030424344
- 342220643D224D33352E332C31392E336C2D352E362D352E36632D302E342D30
- 2E342D302E342D312C302D312E346C352E362D352E3663302E342D302E342C31
- 2D302E342C312E342C306C352E362C352E3663302E342C302E342C302E342C31
- 2C302C312E34206C2D352E362C352E364333362E332C31392E372C33352E372C
- 31392E372C33352E332C31392E337A222F3E0D0A202020203C636972636C6520
- 66696C6C3D2223334635314235222063783D223132222063793D223133222072
- 3D2236222F3E0D0A202020203C636972636C652066696C6C3D22233434384146
- 46222063783D223336222063793D2233362220723D2236222F3E0D0A20202020
- 3C672066696C6C3D2223393041344145223E0D0A20202020202020203C726563
- 7420783D2231312220793D223234222077696474683D22322220686569676874
- 3D2235222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D
- 2231322C323120392C32352031352C3235222F3E0D0A202020203C2F673E0D0A
- 202020203C672066696C6C3D2223393041344145223E0D0A2020202020202020
- 3C7265637420783D2232302220793D223132222077696474683D223522206865
- 696768743D2232222F3E0D0A20202020202020203C706F6C79676F6E20706F69
- 6E74733D2232382C31332032342C31302032342C3136222F3E0D0A202020203C
- 2F673E0D0A202020203C672066696C6C3D2223393041344145223E0D0A202020
- 20202020203C7265637420783D2233352220793D223231222077696474683D22
- 3222206865696768743D2235222F3E0D0A20202020202020203C706F6C79676F
- 6E20706F696E74733D2233362C32392033392C32352033332C3235222F3E0D0A
- 202020203C2F673E0D0A3C2F7376673E0D0A}
- end
-end
+object ImageDataModule: TImageDataModule
+ OldCreateOrder = False
+ Height = 150
+ Width = 215
+ object SVGIconImageCollection: TSVGIconImageCollection
+ Left = 87
+ Top = 30
+ Images = {
+ 1B0100000B00000062007500730069006E006500730073006D0061006E009D03
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D
+ 22234646393830302220706F696E74733D2232342C33372031392C3331203139
+ 2C32352032392C32352032392C3331222F3E0D0A202020203C672066696C6C3D
+ 2223464641373236223E0D0A20202020202020203C636972636C652063783D22
+ 3333222063793D2231392220723D2232222F3E0D0A20202020202020203C6369
+ 72636C652063783D223135222063793D2231392220723D2232222F3E0D0A2020
+ 20203C2F673E0D0A202020203C706174682066696C6C3D222346464237344422
+ 20643D224D33332C313363302D372E362D31382D352D31382C3063302C312E31
+ 2C302C352E392C302C3763302C352C342C392C392C3973392D342C392D394333
+ 332C31382E392C33332C31342E312C33332C31337A222F3E0D0A202020203C70
+ 6174682066696C6C3D22233432343234322220643D224D32342C34632D362E31
+ 2C302D31302C342E392D31302C313163302C302E382C302C322E332C302C322E
+ 336C322C312E37762D356C31322D346C342C3476356C322D312E3763302C302C
+ 302D312E352C302D322E3363302D342D312D382D362D396C2D312D3220483234
+ 7A222F3E0D0A202020203C672066696C6C3D2223373834373139223E0D0A2020
+ 2020202020203C636972636C652063783D223238222063793D2231392220723D
+ 2231222F3E0D0A20202020202020203C636972636C652063783D223230222063
+ 793D2231392220723D2231222F3E0D0A202020203C2F673E0D0A202020203C70
+ 6F6C79676F6E2066696C6C3D22236666662220706F696E74733D2232342C3433
+ 2031392C33312032342C33322032392C3331222F3E0D0A202020203C706F6C79
+ 676F6E2066696C6C3D22234433324632462220706F696E74733D2232332C3335
+ 2032322E332C33392E352032342C34332E352032352E372C33392E352032352C
+ 33352032362C33342032342C33322032322C3334222F3E0D0A202020203C7061
+ 74682066696C6C3D22233534364537412220643D224D32392C33314C32392C33
+ 316C2D352C31326C2D352D313263302C302D31312C322D31312C313368333243
+ 34302C33332C32392C33312C32392C33317A222F3E0D0A3C2F7376673E0D0A0D
+ 00000062007500730069006E0065007300730077006F006D0061006E00F60200
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C7265637420783D2231362220793D
+ 223135222066696C6C3D2223424633363043222077696474683D223136222068
+ 65696768743D223138222F3E0D0A202020203C706174682066696C6C3D222337
+ 38393039432220643D224D34302C3434483863302D31312C31312D31332C3131
+ 2D31336831304332392C33312C34302C33332C34302C34347A222F3E0D0A2020
+ 20203C706174682066696C6C3D22234646393830302220643D224D32342C3337
+ 632D322E322C302D352D362D352D36762D3668313076364332392C33312C3236
+ 2E322C33372C32342C33377A222F3E0D0A202020203C706174682066696C6C3D
+ 22234646423734442220643D224D33332C313463302D372E362D31382D352D31
+ 382C3063302C312E312C302C352E392C302C3763302C352C342C392C392C3973
+ 392D342C392D394333332C31392E392C33332C31352E312C33332C31347A222F
+ 3E0D0A202020203C706174682066696C6C3D22234646353732322220643D224D
+ 32342C344331372E392C342C392C372E342C392C32372E336C372C342E375631
+ 396C31322D376C342C357631356C372D3663302D342D302E372D32302D31312D
+ 32306C2D312D324832347A222F3E0D0A202020203C706174682066696C6C3D22
+ 234646423734442220643D224D32342C3338632D342E342C302D352D372D352D
+ 3773322E352C342C352C3473352D342C352D345332382E342C33382C32342C33
+ 387A222F3E0D0A202020203C636972636C652066696C6C3D2223373834373139
+ 222063783D223238222063793D2232312220723D2231222F3E0D0A202020203C
+ 636972636C652066696C6C3D2223373834373139222063783D22323022206379
+ 3D2232312220723D2231222F3E0D0A3C2F7376673E0D0A08000000630061006C
+ 0065006E00640061007200030500003C7376672076657273696F6E3D22312220
+ 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
+ 67222076696577426F783D223020302034382034382220656E61626C652D6261
+ 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
+ 706174682066696C6C3D22234346443844432220643D224D352C333856313468
+ 333876323463302C322E322D312E382C342D342C34483943362E382C34322C35
+ 2C34302E322C352C33387A222F3E0D0A202020203C706174682066696C6C3D22
+ 234634343333362220643D224D34332C313076364835762D3663302D322E322C
+ 312E382D342C342D346833304334312E322C362C34332C372E382C34332C3130
+ 7A222F3E0D0A202020203C672066696C6C3D2223423731433143223E0D0A2020
+ 2020202020203C636972636C652063783D223333222063793D2231302220723D
+ 2233222F3E0D0A20202020202020203C636972636C652063783D223135222063
+ 793D2231302220723D2233222F3E0D0A202020203C2F673E0D0A202020203C67
+ 2066696C6C3D2223423042454335223E0D0A20202020202020203C7061746820
+ 643D224D33332C33632D312E312C302D322C302E392D322C32763563302C312E
+ 312C302E392C322C322C3273322D302E392C322D3256354333352C332E392C33
+ 342E312C332C33332C337A222F3E0D0A20202020202020203C7061746820643D
+ 224D31352C33632D312E312C302D322C302E392D322C32763563302C312E312C
+ 302E392C322C322C3273322D302E392C322D3256354331372C332E392C31362E
+ 312C332C31352C337A222F3E0D0A202020203C2F673E0D0A202020203C672066
+ 696C6C3D2223393041344145223E0D0A20202020202020203C7265637420783D
+ 2231332220793D223230222077696474683D223422206865696768743D223422
+ 2F3E0D0A20202020202020203C7265637420783D2231392220793D2232302220
+ 77696474683D223422206865696768743D2234222F3E0D0A2020202020202020
+ 3C7265637420783D2232352220793D223230222077696474683D223422206865
+ 696768743D2234222F3E0D0A20202020202020203C7265637420783D22333122
+ 20793D223230222077696474683D223422206865696768743D2234222F3E0D0A
+ 20202020202020203C7265637420783D2231332220793D223236222077696474
+ 683D223422206865696768743D2234222F3E0D0A20202020202020203C726563
+ 7420783D2231392220793D223236222077696474683D22342220686569676874
+ 3D2234222F3E0D0A20202020202020203C7265637420783D2232352220793D22
+ 3236222077696474683D223422206865696768743D2234222F3E0D0A20202020
+ 202020203C7265637420783D2233312220793D223236222077696474683D2234
+ 22206865696768743D2234222F3E0D0A20202020202020203C7265637420783D
+ 2231332220793D223332222077696474683D223422206865696768743D223422
+ 2F3E0D0A20202020202020203C7265637420783D2231392220793D2233322220
+ 77696474683D223422206865696768743D2234222F3E0D0A2020202020202020
+ 3C7265637420783D2232352220793D223332222077696474683D223422206865
+ 696768743D2234222F3E0D0A20202020202020203C7265637420783D22333122
+ 20793D223332222077696474683D223422206865696768743D2234222F3E0D0A
+ 202020203C2F673E0D0A3C2F7376673E0D0A05000000610062006F0075007400
+ 600100003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
+ 233231393646332220643D224D33372C34304831316C2D362C3656313263302D
+ 332E332C322E372D362C362D3668323663332E332C302C362C322E372C362C36
+ 7632324334332C33372E332C34302E332C34302C33372C34307A222F3E0D0A20
+ 2020203C672066696C6C3D2223666666223E0D0A20202020202020203C726563
+ 7420783D2232322220793D223230222077696474683D22342220686569676874
+ 3D223131222F3E0D0A20202020202020203C636972636C652063783D22323422
+ 2063793D2231352220723D2232222F3E0D0A202020203C2F673E0D0A3C2F7376
+ 673E0D0A0A000000630061006C00630075006C00610074006F0072004D090000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C706174682066696C6C3D2223363136
+ 3136312220643D224D34302C3136483876323463302C322E322C312E382C342C
+ 342C3468323463322E322C302C342D312E382C342D345631367A222F3E0D0A20
+ 2020203C706174682066696C6C3D22233432343234322220643D224D33362C34
+ 48313243392E382C342C382C352E382C382C38763968333256384334302C352E
+ 382C33382E322C342C33362C347A222F3E0D0A202020203C706174682066696C
+ 6C3D22233943434336352220643D224D33362C3134483132632D302E362C302D
+ 312D302E342D312D31563863302D302E362C302E342D312C312D316832346330
+ 2E362C302C312C302E342C312C3176354333372C31332E362C33362E362C3134
+ 2C33362C31347A222F3E0D0A202020203C672066696C6C3D2223333336393145
+ 223E0D0A20202020202020203C7265637420783D2233332220793D2231302220
+ 77696474683D223222206865696768743D2232222F3E0D0A2020202020202020
+ 3C7265637420783D2232392220793D223130222077696474683D223222206865
+ 696768743D2232222F3E0D0A202020203C2F673E0D0A202020203C7061746820
+ 66696C6C3D22234646353235322220643D224D33362C3233682D33632D302E36
+ 2C302D312D302E342D312D31762D3263302D302E362C302E342D312C312D3168
+ 3363302E362C302C312C302E342C312C3176324333372C32322E362C33362E36
+ 2C32332C33362C32337A222F3E0D0A202020203C672066696C6C3D2223453045
+ 304530223E0D0A20202020202020203C7061746820643D224D31352C3233682D
+ 33632D302E362C302D312D302E342D312D31762D3263302D302E362C302E342D
+ 312C312D31683363302E362C302C312C302E342C312C3176324331362C32322E
+ 362C31352E362C32332C31352C32337A222F3E0D0A20202020202020203C7061
+ 746820643D224D32322C3233682D33632D302E362C302D312D302E342D312D31
+ 762D3263302D302E362C302E342D312C312D31683363302E362C302C312C302E
+ 342C312C3176324332332C32322E362C32322E362C32332C32322C32337A222F
+ 3E0D0A20202020202020203C7061746820643D224D32392C3233682D33632D30
+ 2E362C302D312D302E342D312D31762D3263302D302E362C302E342D312C312D
+ 31683363302E362C302C312C302E342C312C3176324333302C32322E362C3239
+ 2E362C32332C32392C32337A222F3E0D0A20202020202020203C706174682064
+ 3D224D31352C3239682D33632D302E362C302D312D302E342D312D31762D3263
+ 302D302E362C302E342D312C312D31683363302E362C302C312C302E342C312C
+ 3176324331362C32382E362C31352E362C32392C31352C32397A222F3E0D0A20
+ 202020202020203C7061746820643D224D32322C3239682D33632D302E362C30
+ 2D312D302E342D312D31762D3263302D302E362C302E342D312C312D31683363
+ 302E362C302C312C302E342C312C3176324332332C32382E362C32322E362C32
+ 392C32322C32397A222F3E0D0A20202020202020203C7061746820643D224D32
+ 392C3239682D33632D302E362C302D312D302E342D312D31762D3263302D302E
+ 362C302E342D312C312D31683363302E362C302C312C302E342C312C31763243
+ 33302C32382E362C32392E362C32392C32392C32397A222F3E0D0A2020202020
+ 2020203C7061746820643D224D31352C3335682D33632D302E362C302D312D30
+ 2E342D312D31762D3263302D302E362C302E342D312C312D31683363302E362C
+ 302C312C302E342C312C3176324331362C33342E362C31352E362C33352C3135
+ 2C33357A222F3E0D0A20202020202020203C7061746820643D224D32322C3335
+ 682D33632D302E362C302D312D302E342D312D31762D3263302D302E362C302E
+ 342D312C312D31683363302E362C302C312C302E342C312C3176324332332C33
+ 342E362C32322E362C33352C32322C33357A222F3E0D0A20202020202020203C
+ 7061746820643D224D32392C3335682D33632D302E362C302D312D302E342D31
+ 2D31762D3263302D302E362C302E342D312C312D31683363302E362C302C312C
+ 302E342C312C3176324333302C33342E362C32392E362C33352C32392C33357A
+ 222F3E0D0A20202020202020203C7061746820643D224D31352C3431682D3363
+ 2D302E362C302D312D302E342D312D31762D3263302D302E362C302E342D312C
+ 312D31683363302E362C302C312C302E342C312C3176324331362C34302E362C
+ 31352E362C34312C31352C34317A222F3E0D0A20202020202020203C70617468
+ 20643D224D32322C3431682D33632D302E362C302D312D302E342D312D31762D
+ 3263302D302E362C302E342D312C312D31683363302E362C302C312C302E342C
+ 312C3176324332332C34302E362C32322E362C34312C32322C34317A222F3E0D
+ 0A20202020202020203C7061746820643D224D32392C3431682D33632D302E36
+ 2C302D312D302E342D312D31762D3263302D302E362C302E342D312C312D3168
+ 3363302E362C302C312C302E342C312C3176324333302C34302E362C32392E36
+ 2C34312C32392C34317A222F3E0D0A202020203C2F673E0D0A202020203C6720
+ 66696C6C3D2223424442444244223E0D0A20202020202020203C706174682064
+ 3D224D33362C3239682D33632D302E362C302D312D302E342D312D31762D3263
+ 302D302E362C302E342D312C312D31683363302E362C302C312C302E342C312C
+ 3176324333372C32382E362C33362E362C32392C33362C32397A222F3E0D0A20
+ 202020202020203C7061746820643D224D33362C3335682D33632D302E362C30
+ 2D312D302E342D312D31762D3263302D302E362C302E342D312C312D31683363
+ 302E362C302C312C302E342C312C3176324333372C33342E362C33362E362C33
+ 352C33362C33357A222F3E0D0A20202020202020203C7061746820643D224D33
+ 362C3431682D33632D302E362C302D312D302E342D312D31762D3263302D302E
+ 362C302E342D312C312D31683363302E362C302C312C302E342C312C31763243
+ 33372C34302E362C33362E362C34312C33362C34317A222F3E0D0A202020203C
+ 2F673E0D0A3C2F7376673E0D0A0A000000630065006C006C005F00700068006F
+ 006E006500EB0500003C7376672076657273696F6E3D22312220786D6C6E733D
+ 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
+ 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
+ 6E643D226E657720302030203438203438223E0D0A202020203C706174682066
+ 696C6C3D22233534364537412220643D224D31322C343056313068323063322E
+ 322C302C342C312E382C342C3476323663302C322E322D312E382C342D342C34
+ 4831364331332E382C34342C31322C34322E322C31322C34307A222F3E0D0A20
+ 2020203C706174682066696C6C3D22233446433346372220643D224D33322C31
+ 33483136632D302E362C302D312C302E342D312C31763863302C302E362C302E
+ 342C312C312C3168313663302E362C302C312D302E342C312D31762D38433333
+ 2C31332E342C33322E362C31332C33322C31337A222F3E0D0A202020203C7061
+ 74682066696C6C3D22234233453546432220643D224D31392C3330682D32632D
+ 302E362C302D312D302E342D312D31762D3163302D302E362C302E342D312C31
+ 2D31683263302E362C302C312C302E342C312C3176314332302C32392E362C31
+ 392E362C33302C31392C33307A222F3E0D0A202020203C706174682066696C6C
+ 3D22234233453546432220643D224D32352C3330682D32632D302E362C302D31
+ 2D302E342D312D31762D3163302D302E362C302E342D312C312D31683263302E
+ 362C302C312C302E342C312C3176314332362C32392E362C32352E362C33302C
+ 32352C33307A222F3E0D0A202020203C706174682066696C6C3D222342334535
+ 46432220643D224D33312C3330682D32632D302E362C302D312D302E342D312D
+ 31762D3163302D302E362C302E342D312C312D31683263302E362C302C312C30
+ 2E342C312C3176314333322C32392E362C33312E362C33302C33312C33307A22
+ 2F3E0D0A202020203C706174682066696C6C3D22234233453546432220643D22
+ 4D31392C3335682D32632D302E362C302D312D302E342D312D31762D3163302D
+ 302E362C302E342D312C312D31683263302E362C302C312C302E342C312C3176
+ 314332302C33342E362C31392E362C33352C31392C33357A222F3E0D0A202020
+ 203C706174682066696C6C3D22234233453546432220643D224D32352C333568
+ 2D32632D302E362C302D312D302E342D312D31762D3163302D302E362C302E34
+ 2D312C312D31683263302E362C302C312C302E342C312C3176314332362C3334
+ 2E362C32352E362C33352C32352C33357A222F3E0D0A202020203C7061746820
+ 66696C6C3D22234233453546432220643D224D33312C3335682D32632D302E36
+ 2C302D312D302E342D312D31762D3163302D302E362C302E342D312C312D3168
+ 3263302E362C302C312C302E342C312C3176314333322C33342E362C33312E36
+ 2C33352C33312C33357A222F3E0D0A202020203C706174682066696C6C3D2223
+ 4233453546432220643D224D31392C3430682D32632D302E362C302D312D302E
+ 342D312D31762D3163302D302E362C302E342D312C312D31683263302E362C30
+ 2C312C302E342C312C3176314332302C33392E362C31392E362C34302C31392C
+ 34307A222F3E0D0A202020203C706174682066696C6C3D222342334535464322
+ 20643D224D32352C3430682D32632D302E362C302D312D302E342D312D31762D
+ 3163302D302E362C302E342D312C312D31683263302E362C302C312C302E342C
+ 312C3176314332362C33392E362C32352E362C34302C32352C34307A222F3E0D
+ 0A202020203C706174682066696C6C3D22234233453546432220643D224D3331
+ 2C3430682D32632D302E362C302D312D302E342D312D31762D3163302D302E36
+ 2C302E342D312C312D31683263302E362C302C312C302E342C312C3176314333
+ 322C33392E362C33312E362C34302C33312C34307A222F3E0D0A202020203C70
+ 6174682066696C6C3D22233337343734462220643D224D31362C3130682D3456
+ 3463302D312E312C302E392D322C322D32683063312E312C302C322C302E392C
+ 322C325631307A222F3E0D0A3C2F7376673E0D0A0800000063006F006E007400
+ 6100630074007300AD0100003C7376672076657273696F6E3D22312220786D6C
+ 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
+ 76696577426F783D223020302034382034382220656E61626C652D6261636B67
+ 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
+ 682066696C6C3D22234646373034332220643D224D33382C3434483132563468
+ 323663322E322C302C342C312E382C342C347633324334322C34322E322C3430
+ 2E322C34342C33382C34347A222F3E0D0A202020203C706174682066696C6C3D
+ 22234246333630432220643D224D31302C346832763430682D32632D322E322C
+ 302D342D312E382D342D34563843362C352E382C372E382C342C31302C347A22
+ 2F3E0D0A202020203C672066696C6C3D2223414233303042223E0D0A20202020
+ 202020203C636972636C652063783D223236222063793D2232302220723D2234
+ 222F3E0D0A20202020202020203C7061746820643D224D33332C333063302C30
+ 2D312E392D342D372D34632D352E312C302D372C342D372C3476326831345633
+ 307A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0B000000610064
+ 0076006500720074006900730069006E006700350300003C7376672076657273
+ 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
+ 2F323030302F737667222076696577426F783D22302030203438203438222065
+ 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
+ 3E0D0A202020203C672066696C6C3D2223393043414639223E0D0A2020202020
+ 2020203C7061746820643D224D31372E342C3333483135762D3468346C302E34
+ 2C312E354331392E372C33312E382C31382E372C33332C31372E342C33337A22
+ 2F3E0D0A20202020202020203C7061746820643D224D33372C333663302C302D
+ 31312E382D372D31382D3756313563352E382C302C31382D372C31382D375633
+ 367A222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D222332
+ 3833353933223E0D0A20202020202020203C636972636C652063783D22392220
+ 63793D2232322220723D2235222F3E0D0A20202020202020203C706174682064
+ 3D224D34302C3139682D337636683363312E372C302C332D312E332C332D3353
+ 34312E372C31392C34302C31397A222F3E0D0A20202020202020203C70617468
+ 20643D224D31382E362C34312E32632D302E392C302E362D322E352C312E322D
+ 342E362C312E34632D302E362C302E312D312E322D302E332D312E342D314C38
+ 2E322C32372E3963302C302C382E382D362E322C382E382C312E312063302C35
+ 2E352C312E352C382E342C322E322C392E3563302E352C302E372C302E352C31
+ 2E362C302C322E334331392C34312C31382E382C34312E312C31382E362C3431
+ 2E327A222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C
+ 3D22233346353142352220643D224D392C32396831305631354839632D312E31
+ 2C302D322C302E392D322C3276313043372C32382E312C372E392C32392C392C
+ 32397A222F3E0D0A202020203C706174682066696C6C3D222334324135463522
+ 20643D224D33382C33384C33382C3338632D312E312C302D322D302E392D322D
+ 32563863302D312E312C302E392D322C322D32683063312E312C302C322C302E
+ 392C322C327632384334302C33372E312C33392E312C33382C33382C33387A22
+ 2F3E0D0A3C2F7376673E0D0A1700000061006C00700068006100620065007400
+ 6900630061006C005F0073006F007200740069006E0067005F0061007A00B001
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D
+ 22233534364537412220706F696E74733D2233382C33332033382C352033342C
+ 352033342C33332032382C33332033362C34332034342C3333222F3E0D0A2020
+ 20203C672066696C6C3D2223323139364633223E0D0A20202020202020203C70
+ 61746820643D224D31362E382C31372E32682D352E336C2D312E312C3348362E
+ 394C31322E362C3568322E396C352E372C31352E32682D332E324C31362E382C
+ 31372E327A204D31322E322C31342E354831366C2D312E392D352E374C31322E
+ 322C31342E357A222F3E0D0A20202020202020203C7061746820643D224D3132
+ 2E342C34302E3548323056343348382E34762D312E394C31362C33302E334838
+ 2E34762D322E356831312E3476312E374C31322E342C34302E357A222F3E0D0A
+ 202020203C2F673E0D0A3C2F7376673E0D0A1700000061006C00700068006100
+ 6200650074006900630061006C005F0073006F007200740069006E0067005F00
+ 7A006100AA0100003C7376672076657273696F6E3D22312220786D6C6E733D22
+ 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
+ 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
+ 643D226E657720302030203438203438223E0D0A202020203C672066696C6C3D
+ 2223323139364633223E0D0A20202020202020203C7061746820643D224D3136
+ 2E382C3430682D352E336C2D312E312C3348362E396C352E372D31352E326832
+ 2E394C32312E312C3433682D332E324C31362E382C34307A204D31322E322C33
+ 372E334831366C2D312E392D352E374C31322E322C33372E337A222F3E0D0A20
+ 202020202020203C7061746820643D224D31322E342C31372E3748323076322E
+ 3548382E34762D312E394C31362C372E3548382E3456356831312E3476312E37
+ 4C31322E342C31372E377A222F3E0D0A202020203C2F673E0D0A202020203C70
+ 6F6C79676F6E2066696C6C3D22233534364537412220706F696E74733D223338
+ 2C33332033382C352033342C352033342C33332032382C33332033362C343320
+ 34342C3333222F3E0D0A3C2F7376673E0D0A0A00000061006E00640072006F00
+ 690064005F006F007300520600003C3F786D6C2076657273696F6E3D22312E30
+ 2220656E636F64696E673D227574662D38223F3E0D0A3C212D2D2047656E6572
+ 61746F723A2041646F626520496C6C7573747261746F722031352E302E302C20
+ 535647204578706F727420506C75672D496E202E205356472056657273696F6E
+ 3A20362E3030204275696C6420302920202D2D3E0D0A3C21444F435459504520
+ 737667205055424C494320222D2F2F5733432F2F4454442053564720312E312F
+ 2F454E222022687474703A2F2F7777772E77332E6F72672F4772617068696373
+ 2F5356472F312E312F4454442F73766731312E647464223E0D0A3C7376672076
+ 657273696F6E3D22312E31222020786D6C6E733D22687474703A2F2F7777772E
+ 77332E6F72672F323030302F7376672220786D6C6E733A786C696E6B3D226874
+ 74703A2F2F7777772E77332E6F72672F313939392F786C696E6B2220783D2230
+ 70782220793D22307078220D0A092077696474683D2234387078222068656967
+ 68743D2234387078222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E6577203020302034382034382220
+ 786D6C3A73706163653D227072657365727665223E0D0A3C673E0D0A093C7061
+ 74682066696C6C3D22233743423334322220643D224D31322C32392E30303163
+ 302C312E3130342D302E3839362C322D322C326C302C30632D312E3130342C30
+ 2D322D302E3839362D322D32762D3963302D312E3130342C302E3839362D322C
+ 322D326C302C3063312E3130342C302C322C302E3839362C322C320D0A090956
+ 32392E3030317A222F3E0D0A093C706174682066696C6C3D2223374342333432
+ 2220643D224D34302C32392E30303163302C312E3130342D302E3839362C322D
+ 322C326C302C30632D312E3130342C302D322D302E3839362D322D32762D3963
+ 302D312E3130342C302E3839362D322C322D326C302C3063312E3130342C302C
+ 322C302E3839362C322C320D0A09095632392E3030317A222F3E0D0A093C7061
+ 74682066696C6C3D22233743423334322220643D224D32322C343063302C312E
+ 3130342D302E3839362C322D322C326C302C30632D312E3130342C302D322D30
+ 2E3839362D322D32762D3963302D312E3130342C302E3839362D322C322D326C
+ 302C3063312E3130342C302C322C302E3839362C322C325634307A220D0A0909
+ 2F3E0D0A093C706174682066696C6C3D22233743423334322220643D224D3330
+ 2C343063302C312E3130342D302E3839362C322D322C326C302C30632D312E31
+ 30342C302D322D302E3839362D322D32762D3963302D312E3130342C302E3839
+ 362D322C322D326C302C3063312E3130342C302C322C302E3839362C322C3256
+ 34307A220D0A09092F3E0D0A093C706174682066696C6C3D2223374342333432
+ 2220643D224D31342C31382E30303156333363302C312E3130342C302E383936
+ 2C322C322C3268313663312E3130342C302C322D302E3839362C322D32563138
+ 2E3030314831347A222F3E0D0A093C706174682066696C6C3D22233743423334
+ 322220643D224D32342C38632D362C302D392E3635352C332E3634352D31302C
+ 386832304333332E3635342C31312E3634352C33302C382C32342C387A204D32
+ 302C31332E353938632D302E3535322C302D312D302E3434382D312D3173302E
+ 3434382D312C312D310D0A090973312C302E3434382C312C315332302E353532
+ 2C31332E3539382C32302C31332E3539387A204D32382C31332E353938632D30
+ 2E3535332C302D312D302E3434382D312D3173302E3434372D312C312D317331
+ 2C302E3434382C312C315332382E3535332C31332E3539382C32382C31332E35
+ 39387A222F3E0D0A093C6C696E652066696C6C3D226E6F6E6522207374726F6B
+ 653D222337434233343222207374726F6B652D77696474683D22322220737472
+ 6F6B652D6C696E656361703D22726F756E64222078313D223330222079313D22
+ 37222078323D2232382E333334222079323D22392E343939222F3E0D0A093C6C
+ 696E652066696C6C3D226E6F6E6522207374726F6B653D222337434233343222
+ 207374726F6B652D77696474683D223222207374726F6B652D6C696E65636170
+ 3D22726F756E64222078313D223138222079313D2237222078323D2231392E33
+ 3333222079323D22392E303832222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A
+ 0700000061006E0073007700650072007300920200003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C706F6C79676F6E2066696C6C3D22233432413546352220706F
+ 696E74733D2233362C343420382C343420382C382032382C382033362C313622
+ 2F3E0D0A202020203C706F6C79676F6E2066696C6C3D22233930434146392220
+ 706F696E74733D2234302C34302031322C34302031322C342033322C34203430
+ 2C3132222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222345314635
+ 46452220706F696E74733D2233382E352C31332033312C31332033312C352E35
+ 222F3E0D0A202020203C706174682066696C6C3D22233139373644322220643D
+ 224D32332E342C32392E3963302D302E322C302D302E342C302E312D302E3673
+ 302E322D302E332C302E332D302E3573302E332D302E322C302E352D302E3373
+ 302E342D302E312C302E362D302E3173302E352C302C302E372C302E31207330
+ 2E342C302E322C302E352C302E3373302E322C302E332C302E332C302E357330
+ 2E312C302E342C302E312C302E3673302C302E342D302E312C302E36732D302E
+ 322C302E332D302E332C302E35732D302E332C302E322D302E352C302E33732D
+ 302E342C302E312D302E372C302E3120732D302E352C302D302E362D302E3173
+ 2D302E342D302E322D302E352D302E33732D302E322D302E332D302E332D302E
+ 355332332E342C33302E312C32332E342C32392E397A204D32362E312C32362E
+ 38682D322E334C32332E342C313768334C32362E312C32362E387A222F3E0D0A
+ 3C2F7376673E0D0A0800000061007000700072006F00760061006C00D2010000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 3842433334412220706F696E74733D2232342C332032382E372C362E36203334
+ 2E352C352E382033362E372C31312E332034322E322C31332E352034312E342C
+ 31392E332034352C32342034312E342C32382E372034322E322C33342E352033
+ 362E372C33362E372033342E352C34322E322032382E372C34312E342032342C
+ 34352031392E332C34312E342031332E352C34322E322031312E332C33362E37
+ 20352E382C33342E3520362E362C32382E3720332C323420362E362C31392E33
+ 20352E382C31332E352031312E332C31312E332031332E352C352E382031392E
+ 332C362E36222F3E0D0A202020203C706F6C79676F6E2066696C6C3D22234343
+ 464639302220706F696E74733D2233342E362C31342E362032312C32382E3220
+ 31352E342C32322E362031322E362C32352E342032312C33332E382033372E34
+ 2C31372E34222F3E0D0A3C2F7376673E0D0A0700000061007000700072006F00
+ 760065004F0200003C7376672076657273696F6E3D22312220786D6C6E733D22
+ 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
+ 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
+ 643D226E657720302030203438203438223E0D0A202020203C672066696C6C3D
+ 2223464643433830223E0D0A20202020202020203C636972636C652063783D22
+ 3338222063793D2232362220723D2234222F3E0D0A20202020202020203C6369
+ 72636C652063783D223130222063793D2232362220723D2234222F3E0D0A2020
+ 2020202020203C7061746820643D224D33392C313963302D31322E372D33302D
+ 382E332D33302C3063302C312E382C302C382E322C302C313063302C382E332C
+ 362E372C31352C31352C31357331352D362E372C31352D31354333392C32372E
+ 322C33392C32302E382C33392C31397A222F3E0D0A20202020202020203C7061
+ 746820643D224D32342C344331352E322C342C382C31312E322C382C32306330
+ 2C312E322C302C332E352C302C332E356C322E312C302E365631396C31392E35
+ 2D362E336C382E322C362E3376352E316C322E312D302E3663302C302C302D32
+ 2E332C302D332E35204334302C31322E352C33342E362C342C32342C347A222F
+ 3E0D0A202020203C2F673E0D0A202020203C706F6C79676F6E2066696C6C3D22
+ 233443414635302220706F696E74733D2233322E362C31382E362032322E332C
+ 32382E392031372E342C32342031342E362C32362E382032322E332C33342E35
+ 2033352E342C32312E34222F3E0D0A3C2F7376673E0D0A0A0000006100720065
+ 0061005F0063006800610072007400070100003C7376672076657273696F6E3D
+ 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
+ 302F737667222076696577426F783D223020302034382034382220656E61626C
+ 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
+ 2020203C706F6C79676F6E2066696C6C3D22233346353142352220706F696E74
+ 733D2234322C333720362C333720362C32352031362C31302033302C31372034
+ 322C36222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222330304243
+ 44342220706F696E74733D2234322C343220362C343220362C33322031362C32
+ 342033302C32362034322C3137222F3E0D0A3C2F7376673E0D0A090000006100
+ 7300730069007300740061006E0074001B0400003C7376672076657273696F6E
+ 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
+ 30302F737667222076696577426F783D223020302034382034382220656E6162
+ 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
+ 202020203C672066696C6C3D2223464641373236223E0D0A2020202020202020
+ 3C636972636C652063783D223130222063793D2232362220723D2234222F3E0D
+ 0A20202020202020203C636972636C652063783D223338222063793D22323622
+ 20723D2234222F3E0D0A202020203C2F673E0D0A202020203C70617468206669
+ 6C6C3D22234646423734442220643D224D33392C313963302D31322E372D3330
+ 2D382E332D33302C3063302C312E382C302C382E322C302C313063302C382E33
+ 2C362E372C31352C31352C31357331352D362E372C31352D31354333392C3237
+ 2E322C33392C32302E382C33392C31397A222F3E0D0A202020203C7061746820
+ 66696C6C3D22234646353732322220643D224D32342C334331342E362C332C37
+ 2C31302E362C372C323063302C312E322C302C332E342C302C332E344C392C32
+ 35762D336C32312D392E386C392C392E3876336C322D312E3663302C302C302D
+ 322E312C302D332E34204334312C31322C33352E332C332C32342C337A222F3E
+ 0D0A202020203C672066696C6C3D2223373834373139223E0D0A202020202020
+ 20203C636972636C652063783D223331222063793D2232362220723D2232222F
+ 3E0D0A20202020202020203C636972636C652063783D223137222063793D2232
+ 362220723D2232222F3E0D0A202020203C2F673E0D0A202020203C7061746820
+ 66696C6C3D22233735373537352220643D224D34332C3234632D302E362C302D
+ 312C302E342D312C31762D3763302D382E382D372E322D31362D31362D313668
+ 2D37632D302E362C302D312C302E342D312C3173302E342C312C312C31683763
+ 372E372C302C31342C362E332C31342C31347631302063302C302E362C302E34
+ 2C312C312C3173312D302E342C312D31763263302C332E392D332E312C372D37
+ 2C37483234632D302E362C302D312C302E342D312C3173302E342C312C312C31
+ 68313163352C302C392D342C392D39762D354334342C32342E342C34332E362C
+ 32342C34332C32347A222F3E0D0A202020203C672066696C6C3D222333373437
+ 3446223E0D0A20202020202020203C7061746820643D224D34332C3232682D31
+ 632D312E312C302D322C302E392D322C32763463302C312E312C302E392C322C
+ 322C32683163312E312C302C322D302E392C322D32762D344334352C32322E39
+ 2C34342E312C32322C34332C32327A222F3E0D0A20202020202020203C636972
+ 636C652063783D223234222063793D2233382220723D2232222F3E0D0A202020
+ 203C2F673E0D0A3C2F7376673E0D0A0A00000061007500640069006F005F0066
+ 0069006C006500D70200003C7376672076657273696F6E3D22312220786D6C6E
+ 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E657720302030203438203438223E0D0A202020203C72656374
+ 20783D22323034222066696C6C3D226E6F6E65222077696474683D2234382220
+ 6865696768743D223438222F3E0D0A202020203C706F6C79676F6E2066696C6C
+ 3D22233930434146392220706F696E74733D223234342C3435203231322C3435
+ 203231322C33203233342C33203234342C3133222F3E0D0A202020203C706F6C
+ 79676F6E2066696C6C3D22234531463546452220706F696E74733D223234322E
+ 352C3134203233332C3134203233332C342E35222F3E0D0A202020203C672066
+ 696C6C3D2223313937364432223E0D0A20202020202020203C636972636C6520
+ 63783D22323237222063793D2233302220723D2234222F3E0D0A202020202020
+ 20203C706F6C79676F6E20706F696E74733D223233342C3231203232392C3139
+ 203232392C3330203233312C3330203233312C32322E39203233342C3234222F
+ 3E0D0A202020203C2F673E0D0A202020203C706F6C79676F6E2066696C6C3D22
+ 233930434146392220706F696E74733D2234302C343520382C343520382C3320
+ 33302C332034302C3133222F3E0D0A202020203C706F6C79676F6E2066696C6C
+ 3D22234531463546452220706F696E74733D2233382E352C31342032392C3134
+ 2032392C342E35222F3E0D0A202020203C672066696C6C3D2223313937364432
+ 223E0D0A20202020202020203C636972636C652063783D223233222063793D22
+ 33302220723D2234222F3E0D0A20202020202020203C706F6C79676F6E20706F
+ 696E74733D2233302C32312032352C31392032352C33302032372C3330203237
+ 2C32322E392033302C3234222F3E0D0A202020203C2F673E0D0A3C2F7376673E
+ 0D0A090000006100750074006F006D006100740069006300BB0300003C737667
+ 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
+ 332E6F72672F323030302F737667222076696577426F783D2230203020343820
+ 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
+ 38203438223E0D0A202020203C706174682066696C6C3D222333463531423522
+ 20643D224D33392C34334839632D322E322C302D342D312E382D342D34563963
+ 302D322E322C312E382D342C342D3468333063322E322C302C342C312E382C34
+ 2C347633304334332C34312E322C34312E322C34332C33392C34337A222F3E0D
+ 0A202020203C706174682066696C6C3D22234233453546432220643D224D3333
+ 2E362C32352E3463302E312D302E342C302E312D302E392C302E312D312E3473
+ 302D302E392D302E312D312E346C322E382D3263302E332D302E322C302E342D
+ 302E362C302E322D302E396C2D322E372D342E3620632D302E322D302E332D30
+ 2E352D302E342D302E382D302E334C33302C31362E33632D302E372D302E362D
+ 312E352D312D322E342D312E346C2D302E332D332E3463302D302E332D302E33
+ 2D302E362D302E362D302E36682D352E33632D302E332C302D302E362C302E33
+ 2D302E362C302E364C32302E342C313520632D302E392C302E332D312E362C30
+ 2E382D322E342C312E346C2D332E312D312E34632D302E332D302E312D302E37
+ 2C302D302E382C302E336C2D322E372C342E36632D302E322C302E332D302E31
+ 2C302E372C302E322C302E396C322E382C32632D302E312C302E342D302E312C
+ 302E392D302E312C312E342073302C302E392C302E312C312E346C2D322E382C
+ 32632D302E332C302E322D302E342C302E362D302E322C302E396C322E372C34
+ 2E3663302E322C302E332C302E352C302E342C302E382C302E336C332E312D31
+ 2E3463302E372C302E362C312E352C312C322E342C312E346C302E332C332E34
+ 2063302C302E332C302E332C302E362C302E362C302E3668352E3363302E332C
+ 302C302E362D302E332C302E362D302E366C302E332D332E3463302E392D302E
+ 332C312E362D302E382C322E342D312E346C332E312C312E3463302E332C302E
+ 312C302E372C302C302E382D302E336C322E372D342E362063302E322D302E33
+ 2C302E312D302E372D302E322D302E394C33332E362C32352E347A204D32342C
+ 3239632D322E382C302D352D322E322D352D3563302D322E382C322E322D352C
+ 352D3563322E382C302C352C322E322C352C354332392C32362E382C32362E38
+ 2C32392C32342C32397A222F3E0D0A3C2F7376673E0D0A0A0000006100750074
+ 006F006D006F007400690076006500480300003C7376672076657273696F6E3D
+ 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
+ 302F737667222076696577426F783D223020302034382034382220656E61626C
+ 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
+ 2020203C706174682066696C6C3D226E6F6E6522207374726F6B653D22234634
+ 3433333622207374726F6B652D77696474683D223422207374726F6B652D6D69
+ 7465726C696D69743D2231302220643D224D372C3230762D3863302D322E322C
+ 312E382D342C342D3468313463312E322C302C322E342C302E362C332E322C31
+ 2E36204C33352C3138222F3E0D0A202020203C672066696C6C3D222333373437
+ 3446223E0D0A20202020202020203C636972636C652063783D22333522206379
+ 3D2233372220723D2235222F3E0D0A20202020202020203C636972636C652063
+ 783D223133222063793D2233372220723D2235222F3E0D0A202020203C2F673E
+ 0D0A202020203C706174682066696C6C3D22234634343333362220643D224D34
+ 302E322C31374C33332C31344837632D312E322C302D322C302E382D322C3276
+ 313063302C312E322C302E382C322C322C32683163302D322E382C322E322D35
+ 2C352D3573352C322E322C352C3568313263302D322E382C322E322D352C352D
+ 352073352C322E322C352C35683163312E322C302C322D302E382C322D32762D
+ 352E324334332C31392E322C34312E382C31372E362C34302E322C31377A222F
+ 3E0D0A202020203C672066696C6C3D2223353436453741223E0D0A2020202020
+ 2020203C636972636C652063783D223234222063793D2233372220723D223322
+ 2F3E0D0A20202020202020203C636972636C652063783D223335222063793D22
+ 33372220723D2232222F3E0D0A20202020202020203C636972636C652063783D
+ 223133222063793D2233372220723D2232222F3E0D0A20202020202020203C70
+ 61746820643D224D33302E342C3339632D302E332D302E362D302E342D312E33
+ 2D302E342D3273302E322D312E342C302E342D324831372E3663302E332C302E
+ 362C302E342C312E332C302E342C32732D302E322C312E342D302E342C324833
+ 302E347A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0C00000062
+ 00610064005F006400650063006900730069006F006E002D0200003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C672066696C6C3D2223464643433830223E0D0A20
+ 202020202020203C636972636C652063783D223338222063793D223236222072
+ 3D2234222F3E0D0A20202020202020203C636972636C652063783D2231302220
+ 63793D2232362220723D2234222F3E0D0A20202020202020203C706174682064
+ 3D224D33392C313963302D31322E372D33302D382E332D33302C3063302C312E
+ 382C302C382E322C302C313063302C382E332C362E372C31352C31352C313573
+ 31352D362E372C31352D31354333392C32372E322C33392C32302E382C33392C
+ 31397A222F3E0D0A20202020202020203C7061746820643D224D32342C344331
+ 352E322C342C382C31312E322C382C323063302C312E322C302C332E352C302C
+ 332E356C322E312C302E365631396C31392E352D362E336C382E322C362E3376
+ 352E316C322E312D302E3663302C302C302D322E332C302D332E35204334302C
+ 31322E352C33342E362C342C32342C347A222F3E0D0A202020203C2F673E0D0A
+ 202020203C7265637420783D2231362220793D223234222066696C6C3D222346
+ 3434333336222077696474683D22313622206865696768743D2234222F3E0D0A
+ 3C2F7376673E0D0A090000006200610072005F00630068006100720074003601
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C672066696C6C3D222330304243
+ 4434223E0D0A20202020202020203C7265637420783D2231392220793D223232
+ 222077696474683D22313022206865696768743D223230222F3E0D0A20202020
+ 202020203C7265637420783D22362220793D223132222077696474683D223130
+ 22206865696768743D223330222F3E0D0A20202020202020203C726563742078
+ 3D2233322220793D2236222077696474683D22313022206865696768743D2233
+ 36222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0700000062006500
+ 61007200690073006800D90200003C7376672076657273696F6E3D2231222078
+ 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
+ 222076696577426F783D223020302034382034382220656E61626C652D626163
+ 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C67
+ 2066696C6C3D2223463434333336223E0D0A20202020202020203C7265637420
+ 783D2234302220793D223334222077696474683D223422206865696768743D22
+ 3130222F3E0D0A20202020202020203C7265637420783D2233342220793D2232
+ 39222077696474683D223422206865696768743D223135222F3E0D0A20202020
+ 202020203C7265637420783D2232382220793D223333222077696474683D2234
+ 22206865696768743D223131222F3E0D0A20202020202020203C726563742078
+ 3D2232322220793D223235222077696474683D223422206865696768743D2231
+ 39222F3E0D0A20202020202020203C7265637420783D2231362220793D223238
+ 222077696474683D223422206865696768743D223136222F3E0D0A2020202020
+ 2020203C7265637420783D2231302220793D223234222077696474683D223422
+ 206865696768743D223230222F3E0D0A20202020202020203C7265637420783D
+ 22342220793D223139222077696474683D223422206865696768743D22323522
+ 2F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D222344333246
+ 3246223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2233
+ 342C31332E322033302C31372E322032302C372E322031352C31322E3220372E
+ 342C342E3620342E362C372E342031352C31372E382032302C31322E38203330
+ 2C32322E382033342C31382E382034302E312C32342E392034322E392C32322E
+ 31222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2234
+ 342C32362033352C32362034342C3137222F3E0D0A202020203C2F673E0D0A3C
+ 2F7376673E0D0A0A000000620069006E006F00630075006C006100720073004F
+ 0400003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
+ 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
+ 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
+ 7720302030203438203438223E0D0A202020203C672066696C6C3D2223333734
+ 373446223E0D0A20202020202020203C636972636C652063783D223333222063
+ 793D2231362220723D2236222F3E0D0A20202020202020203C636972636C6520
+ 63783D223135222063793D2231362220723D2236222F3E0D0A20202020202020
+ 203C7061746820643D224D34362E372C32356C2D31352E332C334831362E374C
+ 312E342C32356C342E332D372E3963312E312D312E392C332E312D332E312C35
+ 2E332D332E316832362E3263322E322C302C342E322C312E322C352E332C332E
+ 314C34362E372C32357A222F3E0D0A20202020202020203C636972636C652063
+ 783D223338222063793D2233302220723D223130222F3E0D0A20202020202020
+ 203C636972636C652063783D223130222063793D2233302220723D223130222F
+ 3E0D0A20202020202020203C636972636C652063783D223234222063793D2232
+ 382220723D2235222F3E0D0A202020203C2F673E0D0A202020203C636972636C
+ 652066696C6C3D2223353436453741222063783D223234222063793D22323822
+ 20723D2232222F3E0D0A202020203C672066696C6C3D2223613066223E0D0A20
+ 202020202020203C636972636C652063783D223338222063793D223330222072
+ 3D2237222F3E0D0A20202020202020203C636972636C652063783D2231302220
+ 63793D2233302220723D2237222F3E0D0A202020203C2F673E0D0A202020203C
+ 672066696C6C3D2223434539334438223E0D0A20202020202020203C70617468
+ 20643D224D34312E372C32372E37632D312D312E312D322E332D312E372D332E
+ 372D312E37732D322E382C302E362D332E372C312E37632D302E342C302E342D
+ 302E332C312C302E312C312E3463302E342C302E342C312C302E332C312E342D
+ 302E312063312E322D312E332C332E332D312E332C342E352C3063302E322C30
+ 2E322C302E352C302E332C302E372C302E3363302E322C302C302E352D302E31
+ 2C302E372D302E334334322E312C32382E372C34322E312C32382E312C34312E
+ 372C32372E377A222F3E0D0A20202020202020203C7061746820643D224D3130
+ 2C3236632D312E342C302D322E382C302E362D332E372C312E37632D302E342C
+ 302E342D302E332C312C302E312C312E3463302E342C302E342C312C302E332C
+ 312E342D302E3163312E322D312E332C332E332D312E332C342E352C30206330
+ 2E322C302E322C302E352C302E332C302E372C302E3363302E322C302C302E35
+ 2D302E312C302E372D302E3363302E342D302E342C302E342D312C302E312D31
+ 2E344331322E382C32362E362C31312E342C32362C31302C32367A222F3E0D0A
+ 202020203C2F673E0D0A3C2F7376673E0D0A09000000620069006F0068006100
+ 7A00610072006400EA0A00003C7376672076657273696F6E3D22312220786D6C
+ 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
+ 76696577426F783D223020302034382034382220656E61626C652D6261636B67
+ 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
+ 682066696C6C3D22233030413334342220643D224D32342C3133632D372E322C
+ 302D31332C352E382D31332C313373352E382C31332C31332C31337331332D35
+ 2E382C31332D31335333312E322C31332C32342C31337A204D32342C3335632D
+ 352C302D392D342D392D3973342D392C392D3973392C342C392C39205332392C
+ 33352C32342C33357A222F3E0D0A202020203C706174682066696C6C3D222330
+ 30433835332220643D224D382E352C32352E3463342D322E322C392D312E312C
+ 31312E352C322E3563302E312C302E312C302E322C302E312C302E332C302E31
+ 6C312E322D302E3763302E312D302E312C302E322D302E322C302E312D302E33
+ 2063302D302E322D302E312D302E342D302E312D302E3663302C302C302C302C
+ 302C3063302D302E312C302D302E312C302D302E3263302C302C302C302C302C
+ 3063302D302E312C302D302E312C302D302E3263302C302C302C302C302C3063
+ 302D302E312C302D302E312C302D302E326C302C302063302D302E312C302D30
+ 2E312C302E312D302E3263302C302C302C302C302C3063302D302E312C302D30
+ 2E312C302E312D302E3263302C302C302C302C302C3063302C302C302D302E31
+ 2C302E312D302E3163302C302C302D302E312C302E312D302E3163302C302C30
+ 2D302E312C302E312D302E312063302C302C302E312D302E312C302E312D302E
+ 3163302C302C302C302C302C3063302C302C302E312D302E312C302E312D302E
+ 3163302C302C302C302C302C3063302C302C302E312D302E312C302E312D302E
+ 3163302C302C302C302C302C3063302C302C302E312D302E312C302E312D302E
+ 312063302C302C302C302C302C3063302C302C302E312D302E312C302E312D30
+ 2E3163302C302C302C302C302E312C3063302E322D302E312C302E342D302E32
+ 2C302E352D302E3263302E312C302C302E322D302E312C302E322D302E33762D
+ 312E3363302D302E312D302E312D302E322D302E322D302E3220632D342E352D
+ 302E342D382D342E312D382D382E3663302D342E312C332D372E362C362E392D
+ 382E3463302E312C302C302E322D302E312C302E322D302E3356342E3863302D
+ 302E312D302E312D302E322D302E322D302E324331362E342C352E352C31322C
+ 31302E342C31322C31362E332063302C312E332C302E322C322E362C302E362C
+ 332E38632D312E322C302E322D322E352C302E372D332E362C312E33632D352E
+ 322C332D372E332C392E322D352E322C31342E3543332E392C33362C342C3336
+ 2C342E312C33366C302E332D302E3263302E312D302E312C302E322D302E322C
+ 302E312D302E332043332E332C33312E372C342E382C32372E342C382E352C32
+ 352E344C382E352C32352E347A204D33392C32312E34632D312E322D302E372D
+ 322E342D312E312D332E362D312E3363302E342D312E322C302E362D322E342C
+ 302E362D332E3863302D352E392D342E342D31302E382D31302E322D31312E37
+ 20632D302E312C302D302E322C302E312D302E322C302E3276302E3463302C30
+ 2E312C302E312C302E322C302E322C302E3363342C302E382C362E392C342E33
+ 2C362E392C382E3463302C342E352D332E352C382E322D382C382E36632D302E
+ 312C302D302E322C302E312D302E322C302E3276312E332063302C302E312C30
+ 2E312C302E322C302E322C302E3363302E322C302E312C302E342C302E312C30
+ 2E362C302E3263302C302C302C302C302C3063302C302C302E312C302E312C30
+ 2E312C302E3163302C302C302C302C302C3063302E312C302C302E312C302E31
+ 2C302E312C302E3163302C302C302C302C302C302063302E312C302E312C302E
+ 322C302E322C302E332C302E3363302C302C302C302C302C3063302C302C302E
+ 312C302E312C302E312C302E3163302C302C302C302C302C3063302C302C302E
+ 312C302E312C302E312C302E3163302C302C302C302E312C302C302E3163302C
+ 302C302C302E312C302C302E312063302C302C302C302E312C302E312C302E31
+ 63302C302C302C302C302C3063302C302E312C302C302E312C302E312C302E32
+ 63302C302C302C302C302C3063302C302E312C302C302E312C302C302E326330
+ 2C302C302C302C302C3063302C302E312C302C302E312C302C302E3263302C30
+ 2C302C302C302C302E312063302C302C302C302E312C302C302E3163302C302C
+ 302C302C302C302E3163302C302E322C302C302E342D302E312C302E3663302C
+ 302E312C302C302E322C302E312C302E336C312E322C302E3763302E312C302E
+ 312C302E322C302C302E332D302E3163322E362D332E362C372E362D342E382C
+ 31312E352D322E352063332E362C322E312C352E322C362E332C332E392C3130
+ 2E3163302C302E312C302C302E322C302E312C302E336C302E332C302E326330
+ 2E312C302E312C302E322C302C302E332D302E314334362E332C33302E352C34
+ 342E322C32342E332C33392C32312E344C33392C32312E347A204D33302E382C
+ 34302E3320632D342D322E322D352E352D372E312D332E352D31312E3163302E
+ 312D302E312C302D302E322D302E312D302E334C32362C32382E32632D302E31
+ 2D302E312D302E322C302D302E332C30632D302E322C302E312D302E332C302E
+ 332D302E352C302E3363302C302C302C302C302C3020632D302E312C302D302E
+ 312C302E312D302E322C302E3163302C302C302C302C302C30632D302E312C30
+ 2D302E312C302D302E322C302E3163302C302C302C302C302C30632D302E312C
+ 302D302E332C302E312D302E342C302E3163302C302C302C302C302C30632D30
+ 2E312C302D302E312C302D302E322C302063302C302C302C302D302E312C3063
+ 302C302D302E312C302D302E312C3063302C302D302E312C302D302E312C3063
+ 302C302D302E312C302D302E312C3063302C302D302E312C302D302E312C3063
+ 302C302C302C302D302E312C30632D302E312C302D302E312C302D302E322C30
+ 63302C302C302C302C302C3020632D302E312C302D302E312C302D302E322C30
+ 63302C302C302C302C302C30632D302E312C302D302E312C302D302E322D302E
+ 3163302C302C302C302C302C3063302C302D302E312C302D302E312D302E3163
+ 302C302C302C302D302E312C30632D302E322D302E312D302E332D302E322D30
+ 2E352D302E3320632D302E312D302E312D302E322D302E312D302E332C306C2D
+ 312E322C302E37632D302E312C302E312D302E312C302E322D302E312C302E33
+ 63312E392C342C302E342C382E382D332E352C31312E31632D332E362C322E31
+ 2D382E322C312E332D31302E392D312E3720632D302E312D302E312D302E322D
+ 302E312D302E332D302E316C2D302E332C302E32632D302E312C302E312D302E
+ 312C302E322D302E312C302E3363332E362C342E352C31302E322C352E382C31
+ 352E342C322E3863312E322D302E372C322E322D312E352C332D322E34206330
+ 2E382C302E392C312E382C312E382C332C322E3463352E322C332C31312E372C
+ 312E362C31352E342D322E3863302E312D302E312C302D302E322D302E312D30
+ 2E334C34322C33382E35632D302E312D302E312D302E322C302D302E332C302E
+ 314333392C34312E352C33342E342C34322E332C33302E382C34302E33204C33
+ 302E382C34302E337A222F3E0D0A3C2F7376673E0D0A07000000620069006F00
+ 6D00610073007300890200003C7376672076657273696F6E3D22312220786D6C
+ 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
+ 76696577426F783D223020302034382034382220656E61626C652D6261636B67
+ 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
+ 682066696C6C3D22233943434336352220643D224D33322C3135563748313676
+ 384C362E322C3430632D302E362C312E352C302E352C332C322E312C33683331
+ 2E3563312E362C302C322E362D312E362C322E312D334C33322C31357A222F3E
+ 0D0A202020203C706174682066696C6C3D22233842433334412220643D224D33
+ 322C39483136632D312E312C302D322D302E392D322D32763063302D312E312C
+ 302E392D322C322D3268313663312E312C302C322C302E392C322C3276304333
+ 342C382E312C33332E312C392C33322C397A222F3E0D0A202020203C70617468
+ 2066696C6C3D22233245374433322220643D224D32382C333063302C342E342D
+ 342C382D342C38732D342D332E362D342D3873342D382C342D385332382C3235
+ 2E362C32382C33307A222F3E0D0A202020203C706174682066696C6C3D222333
+ 38384533432220643D224D33312E312C33322E36632D322C342D372E312C352E
+ 342D372E312C352E34732D322D352C302D382E3973372E312D352E342C372E31
+ 2D352E345333332E312C32382E362C33312E312C33322E367A222F3E0D0A2020
+ 20203C706174682066696C6C3D22233433413034372220643D224D31362E392C
+ 33322E3663322C342C372E312C352E342C372E312C352E3473322D352C302D38
+ 2E39732D372E312D352E342D372E312D352E345331342E392C32382E362C3136
+ 2E392C33322E367A222F3E0D0A3C2F7376673E0D0A07000000620069006F0074
+ 00650063006800BF0400003C7376672076657273696F6E3D22312220786D6C6E
+ 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E657720302030203438203438223E0D0A202020203C70617468
+ 2066696C6C3D22234144313435372220643D224D33362C3463302C392E332D36
+ 2C31332E322D31322E382C31372E384331362E312C32362E352C382C33312E38
+ 2C382C3434683463302D31302E312C362E352D31342E342C31332E342D31382E
+ 394333322E322C32302E362C34302C31352E342C34302C34204833367A222F3E
+ 0D0A202020203C706174682066696C6C3D22234144313435372220643D224D33
+ 382C3431483131632D302E362C302D312D302E342D312D3173302E342D312C31
+ 2D3168323763302E362C302C312C302E342C312C315333382E362C34312C3338
+ 2C34317A222F3E0D0A202020203C706174682066696C6C3D2223414431343537
+ 2220643D224D33362C3337483132632D302E362C302D312D302E342D312D3173
+ 302E342D312C312D3168323463302E362C302C312C302E342C312C315333362E
+ 362C33372C33362C33377A222F3E0D0A202020203C706174682066696C6C3D22
+ 234144313435372220643D224D33342C3333483134632D302E362C302D312D30
+ 2E342D312D3173302E342D312C312D3168323063302E362C302C312C302E342C
+ 312C315333342E362C33332C33342C33337A222F3E0D0A202020203C70617468
+ 2066696C6C3D22234144313435372220643D224D32392C3239483139632D302E
+ 362C302D312D302E342D312D3173302E342D312C312D3168313063302E362C30
+ 2C312C302E342C312C315332392E362C32392C32392C32397A222F3E0D0A2020
+ 20203C706174682066696C6C3D22234539314536332220643D224D33372C3948
+ 313043392E342C392C392C382E362C392C3873302E342D312C312D3168323763
+ 302E362C302C312C302E342C312C315333372E362C392C33372C397A222F3E0D
+ 0A202020203C706174682066696C6C3D22234539314536332220643D224D3336
+ 2C3133483132632D302E362C302D312D302E342D312D3173302E342D312C312D
+ 3168323463302E362C302C312C302E342C312C315333362E362C31332C33362C
+ 31337A222F3E0D0A202020203C706174682066696C6C3D222345393145363322
+ 20643D224D33342C3137483134632D302E362C302D312D302E342D312D317330
+ 2E342D312C312D3168323063302E362C302C312C302E342C312C315333342E36
+ 2C31372C33342C31377A222F3E0D0A202020203C706174682066696C6C3D2223
+ 4539314536332220643D224D32392C3231483139632D302E362C302D312D302E
+ 342D312D3173302E342D312C312D3168313063302E362C302C312C302E342C31
+ 2C315332392E362C32312C32392C32317A222F3E0D0A202020203C7061746820
+ 66696C6C3D22234539314536332220643D224D34302C3434682D3463302D3130
+ 2E312D362E352D31342E342D31332E342D31382E394331352E382C32302E362C
+ 382C31352E342C382C34683463302C392E332C362C31332E322C31322E382C31
+ 372E38204333312E392C32362E352C34302C33312E382C34302C34347A222F3E
+ 0D0A3C2F7376673E0D0A0800000062006F006F006B006D00610072006B00D000
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C706174682066696C6C3D222346
+ 34343333362220643D224D33372C34336C2D31332D366C2D31332C3656396330
+ 2D322E322C312E382D342C342D3468313863322E322C302C342C312E382C342C
+ 345634337A222F3E0D0A3C2F7376673E0D0A0900000062007200690065006600
+ 63006100730065005E0200003C7376672076657273696F6E3D22312220786D6C
+ 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
+ 76696577426F783D223020302034382034382220656E61626C652D6261636B67
+ 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
+ 682066696C6C3D22233432343234322220643D224D32372C37682D36632D312E
+ 372C302D332C312E332D332C3376336832762D3363302D302E362C302E342D31
+ 2C312D31683663302E362C302C312C302E342C312C3176336832762D33433330
+ 2C382E332C32382E372C372C32372C377A222F3E0D0A202020203C7061746820
+ 66696C6C3D22234536353130302220643D224D34302C34334838632D322E322C
+ 302D342D312E382D342D3456313563302D322E322C312E382D342C342D346833
+ 3263322E322C302C342C312E382C342C347632344334342C34312E322C34322E
+ 322C34332C34302C34337A222F3E0D0A202020203C706174682066696C6C3D22
+ 234646364534302220643D224D34302C32384838632D322E322C302D342D312E
+ 382D342D34762D3963302D322E322C312E382D342C342D3468333263322E322C
+ 302C342C312E382C342C3476394334342C32362E322C34322E322C32382C3430
+ 2C32387A222F3E0D0A202020203C706174682066696C6C3D2223464646334530
+ 2220643D224D32362C3236682D34632D302E362C302D312D302E342D312D3176
+ 2D3263302D302E362C302E342D312C312D31683463302E362C302C312C302E34
+ 2C312C3176324332372C32352E362C32362E362C32362C32362C32367A222F3E
+ 0D0A3C2F7376673E0D0A07000000620075006C006C00690073006800D9020000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C672066696C6C3D2223344341463530
+ 223E0D0A20202020202020203C7265637420783D2234302220793D2232312220
+ 77696474683D223422206865696768743D223233222F3E0D0A20202020202020
+ 203C7265637420783D2233342220793D223238222077696474683D2234222068
+ 65696768743D223136222F3E0D0A20202020202020203C7265637420783D2232
+ 382220793D223233222077696474683D223422206865696768743D223231222F
+ 3E0D0A20202020202020203C7265637420783D2232322220793D223239222077
+ 696474683D223422206865696768743D223135222F3E0D0A2020202020202020
+ 3C7265637420783D2231362220793D223332222077696474683D223422206865
+ 696768743D223132222F3E0D0A20202020202020203C7265637420783D223130
+ 2220793D223330222077696474683D223422206865696768743D223134222F3E
+ 0D0A20202020202020203C7265637420783D22342220793D2233342220776964
+ 74683D223422206865696768743D223130222F3E0D0A202020203C2F673E0D0A
+ 202020203C672066696C6C3D2223333838453343223E0D0A2020202020202020
+ 3C706F6C79676F6E20706F696E74733D2234302E312C392E312033342C31352E
+ 322033302C31312E322032302C32312E322031352C31362E3220342E362C3236
+ 2E3620372E342C32392E342031352C32312E382032302C32362E382033302C31
+ 362E382033342C32302E382034322E392C31312E39222F3E0D0A202020202020
+ 20203C706F6C79676F6E20706F696E74733D2234342C382033352C382034342C
+ 3137222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A08000000620075
+ 00730069006E00650073007300290200003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C672066696C6C3D2223323633323338223E0D0A20202020202020203C7061
+ 746820643D224D31312C34344839632D302E362C302D312D302E342D312D3176
+ 2D32683476324331322C34332E362C31312E362C34342C31312C34347A222F3E
+ 0D0A20202020202020203C7061746820643D224D33392C3434682D32632D302E
+ 362C302D312D302E342D312D31762D32683476324334302C34332E362C33392E
+ 362C34342C33392C34347A222F3E0D0A202020203C2F673E0D0A202020203C70
+ 6174682066696C6C3D22233337343734462220643D224D32372C37682D36632D
+ 312E372C302D332C312E332D332C3376336832762D3363302D302E362C302E34
+ 2D312C312D31683663302E362C302C312C302E342C312C3176336832762D3343
+ 33302C382E332C32382E372C372C32372C377A222F3E0D0A202020203C706174
+ 682066696C6C3D22233738393039432220643D224D34302C34334838632D322E
+ 322C302D342D312E382D342D3456313563302D322E322C312E382D342C342D34
+ 68333263322E322C302C342C312E382C342C347632344334342C34312E322C34
+ 322E322C34332C34302C34337A222F3E0D0A3C2F7376673E0D0A100000006200
+ 7500730069006E006500730073005F0063006F006E0074006100630074000F02
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C706174682066696C6C3D222336
+ 37334142372220643D224D34302C374838632D322E322C302D342C312E382D34
+ 2C3476323663302C322E322C312E382C342C342C346835762D312E33632D302E
+ 362D302E332D312D312D312D312E3763302D312E312C302E392D322C322D3273
+ 322C302E392C322C322063302C302E372D302E342C312E342D312C312E375634
+ 31683138762D312E33632D302E362D302E332D312D312D312D312E3763302D31
+ 2E312C302E392D322C322D3273322C302E392C322C3263302C302E372D302E34
+ 2C312E342D312C312E37563431683563322E322C302C342D312E382C342D3456
+ 3131204334342C382E382C34322E322C372C34302C377A222F3E0D0A20202020
+ 3C672066696C6C3D2223443143344539223E0D0A20202020202020203C636972
+ 636C652063783D223234222063793D2231382220723D2234222F3E0D0A202020
+ 20202020203C7061746820643D224D33312C323863302C302D312E392D342D37
+ 2D34632D352E312C302D372C342D372C3476326831345632387A222F3E0D0A20
+ 2020203C2F673E0D0A3C2F7376673E0D0A0A000000620075007400740069006E
+ 0067005F0069006E008B0400003C7376672076657273696F6E3D22312220786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 2076696577426F783D223020302034382034382220656E61626C652D6261636B
+ 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
+ 74682066696C6C3D22234346443844432220643D224D32342C334331322E342C
+ 332C332C31322E342C332C323463302C31312E362C392E342C32312C32312C32
+ 3163302E332C302C302E372C302C312D302E3156332E314332342E372C332C32
+ 342E332C332C32342C337A222F3E0D0A202020203C706174682066696C6C3D22
+ 233337343734462220643D224D32352C332E317634312E3963342E312D302E32
+ 2C372E392D312E352C31312D332E3756362E384333322E392C342E362C32392E
+ 312C332E322C32352C332E317A222F3E0D0A202020203C706174682066696C6C
+ 3D22234646423734442220643D224D32302E352C31334331342E312C31332E33
+ 2C382E392C31382E372C392C32352E3163302C322E382C312C352E342C322E37
+ 2C372E3563312E342C312E372C322E332C332E392C322E332C362E3176332E38
+ 63332C312E362C362E342C322E352C31302C322E352063302E332C302C302E37
+ 2C302C312D302E3163302E372C302C312E332D302E312C322D302E32762D392E
+ 3463332E362D322E312C362D352E392C362D31302E344333332C31382E322C32
+ 372E342C31322E372C32302E352C31337A222F3E0D0A202020203C7061746820
+ 66696C6C3D22234646423734442220643D224D32392C33382E364C32352C3338
+ 762D3968386C2D302E372C374333322E312C33372E362C33302E372C33382E38
+ 2C32392C33382E367A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D
+ 22234646423734442220706F696E74733D2233392C32392033322C3331203331
+ 2C32362033322C3232222F3E0D0A202020203C636972636C652066696C6C3D22
+ 23373834373139222063783D2232392E35222063793D2232352E352220723D22
+ 312E35222F3E0D0A202020203C706174682066696C6C3D222346463537323222
+ 20643D224D32312C3132632D372E322C302D31332C352E382D31332C31336330
+ 2C372E362C352E312C392C362C31336C342D33762D386C352D326C312D346333
+ 2E322C302C362D332E392C362D362E314332372E392C31332C32342E342C3132
+ 2C32312C31327A222F3E0D0A202020203C636972636C652066696C6C3D222346
+ 4642373444222063783D223139222063793D2232372220723D2233222F3E0D0A
+ 202020203C706174682066696C6C3D22234346443844432220643D224D34352C
+ 323463302D372E312D332E362D31332E342D392D31372E327633342E34433431
+ 2E342C33372E342C34352C33312E312C34352C32347A222F3E0D0A202020203C
+ 706174682066696C6C3D22234646393830302220643D224D32302C34342E3663
+ 312E332C302E322C322E362C302E342C342C302E3463302E332C302C302E372C
+ 302C312D302E3163302E372C302C312E332D302E312C322D302E32762D362E35
+ 6C2D372D315634342E367A222F3E0D0A3C2F7376673E0D0A0D00000063006100
+ 62006C0065005F00720065006C006500610073006500750200003C7376672076
+ 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
+ 6F72672F323030302F737667222076696577426F783D22302030203438203438
+ 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
+ 3438223E0D0A202020203C706174682066696C6C3D2223333734373446222064
+ 3D224D33342E392C32392E31632D322E372D322E372D372E312D322E372D392E
+ 382C306C2D342C34632D312E372C312E372D342E352C312E372D362E322C3063
+ 2D312E372D312E372D312E372D342E352C302D362E326C342E352D342E356C2D
+ 322E382D322E38206C2D342E352C342E35632D332E332C332E332D332E332C38
+ 2E362C302C31312E3863332E332C332E332C382E362C332E332C31312E382C30
+ 6C342D3463312E322D312E312C332D312E312C342E322C3063312E312C312E32
+ 2C312E312C332C302C342E324C32372C34312E326C322E382C322E386C352E31
+ 2D352E31204333372E362C33362E322C33372E362C33312E382C33342E392C32
+ 392E317A222F3E0D0A202020203C706174682066696C6C3D2223303237374244
+ 2220643D224D31362E312C32322E394C31362E312C32322E39632D322E382D32
+ 2E382D322E382D372E332C302D31306C362E382D362E3863322E382D322E382C
+ 372E332D322E382C31302C306C302C3063322E382C322E382C322E382C372E33
+ 2C302C3130206C2D362E382C362E384332332E332C32352E372C31382E392C32
+ 352E372C31362E312C32322E397A222F3E0D0A202020203C636972636C652066
+ 696C6C3D2223423345354643222063783D223238222063793D2231312220723D
+ 2234222F3E0D0A3C2F7376673E0D0A0D000000630061006C006C005F00740072
+ 0061006E007300660065007200E90200003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706174682066696C6C3D22233030393638382220643D224D33392E322C38
+ 2E346C2D312E382C312E38632D362E332C362E352D352E342C32322C302C3237
+ 2E366C312E382C312E3863302E352C302E352C312E332C302E352C312E382C30
+ 6C332E362D332E3763302E352D302E352C302E352D312E332C302D312E38206C
+ 2D332E342D332E34682D342E38632D312E332D312E332D312E332D31322E312C
+ 302D31332E3468342E386C332E332D332E3463302E352D302E352C302E352D31
+ 2E332C302D312E384C34312C382E344334302E352C372E392C33392E372C372E
+ 392C33392E322C382E347A222F3E0D0A202020203C706174682066696C6C3D22
+ 233030393638382220643D224D31312E322C382E346C2D312E382C312E38632D
+ 362E332C362E352D352E342C32322C302C32372E366C312E382C312E3863302E
+ 352C302E352C312E332C302E352C312E382C306C332E362D332E3763302E352D
+ 302E352C302E352D312E332C302D312E38206C2D332E342D332E3448382E3563
+ 2D312E332D312E332D312E332D31322E312C302D31332E3468342E386C332E33
+ 2D332E3463302E352D302E352C302E352D312E332C302D312E384C31332C382E
+ 344331322E352C372E392C31312E372C372E392C31312E322C382E347A222F3E
+ 0D0A202020203C672066696C6C3D2223323139364633223E0D0A202020202020
+ 20203C706F6C79676F6E20706F696E74733D2232352E332C31382E362033302E
+ 372C32342032352E332C32392E34222F3E0D0A20202020202020203C72656374
+ 20783D2231362220793D223232222077696474683D2231312220686569676874
+ 3D2234222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A080000006300
+ 61006C006C006200610063006B00840200003C7376672076657273696F6E3D22
+ 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
+ 2F737667222076696577426F783D223020302034382034382220656E61626C65
+ 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
+ 20203C706174682066696C6C3D22233231393646332220643D224D32362E342C
+ 33332E3963302C302C342D322E362C342E382D3363302E382D302E342C312E37
+ 2D302E362C322E322D302E3263302E382C302E352C372E352C342E392C382E31
+ 2C352E3363302E362C302E342C302E382C312E352C302E312C322E3620632D30
+ 2E382C312E312D342E332C352E352D352E382C352E34632D312E352C302D382E
+ 342C302E342D32302E332D31312E3443332E362C32302E372C342C31332E382C
+ 342C31322E3363302D312E352C342E332D352E312C352E342D352E3863312E31
+ 2D302E382C322E322D302E352C322E362C302E312063302E342C302E362C342E
+ 382C372E332C352E332C382E3163302E332C302E352C302E322C312E342D302E
+ 322C322E32632D302E342C302E382D332C342E382D332C342E3873302E372C32
+ 2E382C352C372E324332332E352C33332E322C32362E342C33332E392C32362E
+ 342C33332E397A222F3E0D0A202020203C672066696C6C3D2223334635314235
+ 223E0D0A20202020202020203C7061746820643D224D33352C39483235763468
+ 313063312E312C302C322C302E392C322C3276313068345631354334312C3131
+ 2E372C33382E332C392C33352C397A222F3E0D0A20202020202020203C706F6C
+ 79676F6E20706F696E74733D2232382C31362032312E332C31312032382C3622
+ 2F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A09000000630061006D00
+ 63006F007200640065007200510400003C7376672076657273696F6E3D223122
+ 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
+ 7667222076696577426F783D223020302034382034382220656E61626C652D62
+ 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
+ 3C706174682066696C6C3D22233630374438422220643D224D32302C34324831
+ 30632D322E322C302D342D312E382D342D3456313563302D352C342D392C392D
+ 39683063352C302C392C342C392C397632334332342C34302E322C32322E322C
+ 34322C32302C34327A222F3E0D0A202020203C636972636C652066696C6C3D22
+ 23343535413634222063783D223135222063793D2231352220723D2237222F3E
+ 0D0A202020203C636972636C652066696C6C3D2223343241354635222063783D
+ 223135222063793D2231352220723D22352E32222F3E0D0A202020203C706174
+ 682066696C6C3D22233930434146392220643D224D31382E332C3133632D302E
+ 382D302E392D322D312E352D332E332D312E355331322E362C31322C31312E37
+ 2C3133632D302E332C302E342D302E332C302E392C302E312C312E3263302E34
+ 2C302E332C302E392C302E332C312E322D302E312063312D312E322C322E392D
+ 312E322C332E392C3063302E322C302E322C302E342C302E332C302E372C302E
+ 3363302E322C302C302E342D302E312C302E362D302E324331382E362C31332E
+ 392C31382E362C31332E332C31382E332C31337A222F3E0D0A202020203C7061
+ 74682066696C6C3D22233630374438422220643D224D34302C3331483238632D
+ 312E312C302D322D302E392D322D3256313963302D312E312C302E392D322C32
+ 2D3268313263312E312C302C322C302E392C322C327631304334322C33302E31
+ 2C34312E312C33312C34302C33317A222F3E0D0A202020203C7265637420783D
+ 2232342220793D223139222066696C6C3D222334353541363422207769647468
+ 3D223222206865696768743D223130222F3E0D0A202020203C7265637420783D
+ 2232382220793D223139222066696C6C3D222330334139463422207769647468
+ 3D22313222206865696768743D223130222F3E0D0A202020203C706F6C79676F
+ 6E2066696C6C3D22233446433346372220706F696E74733D2233332C32322E32
+ 2032392C32382033372C3238222F3E0D0A202020203C672066696C6C3D222342
+ 3345354643223E0D0A20202020202020203C636972636C652063783D2233372E
+ 35222063793D2232312E352220723D2231222F3E0D0A20202020202020203C70
+ 6F6C79676F6E20706F696E74733D2233362C32342E322033332C32382033392C
+ 3238222F3E0D0A202020203C2F673E0D0A202020203C636972636C652066696C
+ 6C3D2223343535413634222063783D223135222063793D2233352220723D2233
+ 222F3E0D0A202020203C636972636C652066696C6C3D22234634343333362220
+ 63783D223135222063793D2233352220723D2232222F3E0D0A3C2F7376673E0D
+ 0A0D000000630061006D0063006F0072006400650072005F00700072006F0011
+ 0400003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
+ 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
+ 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
+ 7720302030203438203438223E0D0A202020203C7265637420783D2232372220
+ 793D2238222066696C6C3D2223333734373446222077696474683D2231302220
+ 6865696768743D2234222F3E0D0A202020203C706174682066696C6C3D222336
+ 30374438422220643D224D32372C38682D392E37632D312E352C302D322E382C
+ 302E382D332E352C322E316C2D332E332C364C31342C31386C332E332D364832
+ 3776372E3268345631324333312C392E382C32392E322C382C32372C387A222F
+ 3E0D0A202020203C706174682066696C6C3D22233630374438422220643D224D
+ 33302C34304836632D322E322C302D342D312E382D342D3456323063302D322E
+ 322C312E382D342C342D3468323463322E322C302C342C312E382C342C347631
+ 364333342C33382E322C33322E322C34302C33302C34307A222F3E0D0A202020
+ 203C706174682066696C6C3D22233630374438422220643D224D33382C33356C
+ 352C356833563138682D336C2D352C355633357A222F3E0D0A202020203C7061
+ 74682066696C6C3D22233534364537412220643D224D32322C33354838632D31
+ 2E312C302D322D302E392D322D3256323363302D312E312C302E392D322C322D
+ 3268313463312E312C302C322C302E392C322C327631304332342C33342E312C
+ 32332E312C33352C32322C33357A222F3E0D0A202020203C7265637420783D22
+ 33342220793D223233222066696C6C3D2223343535413634222077696474683D
+ 223422206865696768743D223132222F3E0D0A202020203C706174682066696C
+ 6C3D22233236333233382220643D224D34312C3133682D34632D302E362C302D
+ 312D302E342D312D31563863302D302E362C302E342D312C312D31683463312E
+ 372C302C332C312E332C332C3376304334342C31312E372C34322E372C31332C
+ 34312C31337A222F3E0D0A202020203C7265637420783D22382220793D223233
+ 222066696C6C3D2223303341394634222077696474683D223134222068656967
+ 68743D223130222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222334
+ 46433346372220706F696E74733D2231332E352C32352E3520392C3332203138
+ 2C3332222F3E0D0A202020203C672066696C6C3D2223423345354643223E0D0A
+ 20202020202020203C636972636C652063783D2231392E35222063793D223235
+ 2E352220723D22312E35222F3E0D0A20202020202020203C706F6C79676F6E20
+ 706F696E74733D2231372E352C32372E362031342C33322032312C3332222F3E
+ 0D0A202020203C2F673E0D0A3C2F7376673E0D0A06000000630061006D006500
+ 720061004A0300003C7376672076657273696F6E3D22312220786D6C6E733D22
+ 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
+ 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
+ 643D226E657720302030203438203438223E0D0A202020203C70617468206669
+ 6C6C3D22233531324441382220643D224D33332E392C31322E314831342E324C
+ 31372E362C3763302E342D302E362C312D302E392C312E372D302E3968392E36
+ 63302E372C302C312E332C302E332C312E372C302E394C33332E392C31322E31
+ 7A222F3E0D0A202020203C706174682066696C6C3D2223383636374334222064
+ 3D224D31342C3131483856392E3243382C382E352C382E352C382C392E322C38
+ 68332E364331332E352C382C31342C382E352C31342C392E325631317A222F3E
+ 0D0A202020203C706174682066696C6C3D22233545333542312220643D224D34
+ 302C34324838632D322E322C302D342D312E382D342D3456313463302D322E32
+ 2C312E382D342C342D3468333263322E322C302C342C312E382C342C34763234
+ 4334342C34302E322C34322E322C34322C34302C34327A222F3E0D0A20202020
+ 3C636972636C652066696C6C3D2223353132444138222063783D223234222063
+ 793D2232362220723D223132222F3E0D0A202020203C636972636C652066696C
+ 6C3D2223423338384646222063783D223234222063793D2232362220723D2239
+ 222F3E0D0A202020203C706174682066696C6C3D22234337413746462220643D
+ 224D32392C3233632D312E322D312E342D332D322E322D342E382D322E32632D
+ 312E382C302D332E362C302E382D342E382C322E32632D302E352C302E352D30
+ 2E342C312E332C302E312C312E3863302E352C302E352C312E332C302E342C31
+ 2E382D302E312063312E352D312E372C342E332D312E372C352E382C3063302E
+ 332C302E332C302E362C302E342C312C302E3463302E332C302C302E362D302E
+ 312C302E392D302E334332392E342C32342E342C32392E352C32332E352C3239
+ 2C32337A222F3E0D0A202020203C656C6C697073652066696C6C3D2223383636
+ 374334222063783D223131222063793D2231332E35222072783D223222207279
+ 3D22312E35222F3E0D0A3C2F7376673E0D0A0C000000630061006D0065007200
+ 61005F006100640064006F006E00FF0400003C7376672076657273696F6E3D22
+ 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
+ 2F737667222076696577426F783D223020302034382034382220656E61626C65
+ 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
+ 20203C706174682066696C6C3D22233531324441382220643D224D33332E392C
+ 31322E314831342E324C31372E362C3763302E342D302E362C312D302E392C31
+ 2E372D302E3968392E3663302E372C302C312E332C302E332C312E372C302E39
+ 4C33332E392C31322E317A222F3E0D0A202020203C706174682066696C6C3D22
+ 233836363743342220643D224D31342C3131483856392E3243382C382E352C38
+ 2E352C382C392E322C3868332E364331332E352C382C31342C382E352C31342C
+ 392E325631317A222F3E0D0A202020203C706174682066696C6C3D2223354533
+ 3542312220643D224D34302C34324838632D322E322C302D342D312E382D342D
+ 3456313463302D322E322C312E382D342C342D3468333263322E322C302C342C
+ 312E382C342C347632344334342C34302E322C34322E322C34322C34302C3432
+ 7A222F3E0D0A202020203C636972636C652066696C6C3D222335313244413822
+ 2063783D223234222063793D2232362220723D223132222F3E0D0A202020203C
+ 636972636C652066696C6C3D2223423338384646222063783D22323422206379
+ 3D2232362220723D2239222F3E0D0A202020203C706174682066696C6C3D2223
+ 4337413746462220643D224D32382E382C3233632D312E322D312E342D332D32
+ 2E322D342E382D322E32732D332E362C302E382D342E382C322E32632D302E35
+ 2C302E352D302E342C312E332C302E312C312E3863302E352C302E352C312E33
+ 2C302E342C312E382D302E312063312E352D312E372C342E332D312E372C352E
+ 382C3063302E332C302E332C302E362C302E342C312C302E3463302E332C302C
+ 302E362D302E312C302E392D302E334332392E322C32342E342C32392E332C32
+ 332E352C32382E382C32337A222F3E0D0A202020203C656C6C69707365206669
+ 6C6C3D2223383636374334222063783D223131222063793D2231332E35222072
+ 783D2232222072793D22312E35222F3E0D0A202020203C706174682066696C6C
+ 3D22233842433334412220643D224D34382C33332E3863302D312E332D312E31
+ 2D322E342D322E342D322E34483432632D302E342C302D302E372D302E352D30
+ 2E342D302E3863302E342D302E362C302E352D312E332C302E342D322E312063
+ 2D302E322D312E322D312E312D322E312D322E332D322E344333372E372C3235
+ 2E372C33362C32372E312C33362C323963302C302E362C302E322C312E312C30
+ 2E342C312E3663302E322C302E342C302C302E382D302E352C302E38682D332E
+ 36632D312E332C302D322E342C312E312D322E342C322E345633372063302C30
+ 2E342C302E352C302E372C302E382C302E3463302E362D302E342C312E332D30
+ 2E352C322E312D302E3463312E322C302E322C322E312C312E312C322E342C32
+ 2E3363302E342C312E392D312E312C332E362D322E392C332E36632D302E362C
+ 302D312E312D302E322D312E362D302E3420632D302E342D302E322D302E382C
+ 302D302E382C302E3576322E3663302C312E332C312E312C322E342C322E342C
+ 322E346831332E3263312E332C302C322E342D312E312C322E342D322E345633
+ 332E387A222F3E0D0A3C2F7376673E0D0A06000000630061006E00630065006C
+ 007B0100003C7376672076657273696F6E3D22312220786D6C6E733D22687474
+ 703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F78
+ 3D223020302034382034382220656E61626C652D6261636B67726F756E643D22
+ 6E657720302030203438203438223E0D0A202020203C706174682066696C6C3D
+ 22234435303030302220643D224D32342C364331342E312C362C362C31342E31
+ 2C362C323473382E312C31382C31382C31387331382D382E312C31382D313853
+ 33332E392C362C32342C367A204D32342C313063332E312C302C362C312E312C
+ 382E342C322E384C31322E382C33322E34204331312E312C33302C31302C3237
+ 2E312C31302C32344331302C31362E332C31362E332C31302C32342C31307A20
+ 4D32342C3338632D332E312C302D362D312E312D382E342D322E386C31392E36
+ 2D31392E364333362E392C31382C33382C32302E392C33382C32344333382C33
+ 312E372C33312E372C33382C32342C3338207A222F3E0D0A3C2F7376673E0D0A
+ 0D000000630061006E0064006C0065005F0073007400690063006B0073004303
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C672066696C6C3D222335343645
+ 3741223E0D0A20202020202020203C7265637420783D2233382220793D223422
+ 2077696474683D223222206865696768743D223230222F3E0D0A202020202020
+ 20203C7265637420783D2231352220793D2237222077696474683D2232222068
+ 65696768743D223137222F3E0D0A20202020202020203C7265637420783D2238
+ 2220793D223237222077696474683D223222206865696768743D223137222F3E
+ 0D0A20202020202020203C7265637420783D2232382220793D22313922207769
+ 6474683D223222206865696768743D223232222F3E0D0A202020203C2F673E0D
+ 0A202020203C706174682066696C6C3D22233443414635302220643D224D3336
+ 2C37683663312E312C302C322C302E392C322C3276313063302C312E312D302E
+ 392C322D322C32682D36632D312E312C302D322D302E392D322D325639433334
+ 2C372E392C33342E392C372C33362C377A222F3E0D0A202020203C7061746820
+ 66696C6C3D22233443414635302220643D224D31332C3130683663312E312C30
+ 2C322C302E392C322C32763763302C312E312D302E392C322D322C32682D3663
+ 2D312E312C302D322D302E392D322D32762D374331312C31302E392C31312E39
+ 2C31302C31332C31307A222F3E0D0A202020203C706174682066696C6C3D2223
+ 4634343333362220643D224D362C3330683663312E312C302C322C302E392C32
+ 2C32763763302C312E312D302E392C322D322C324836632D312E312C302D322D
+ 302E392D322D32762D3743342C33302E392C342E392C33302C362C33307A222F
+ 3E0D0A202020203C706174682066696C6C3D22234634343333362220643D224D
+ 32362C3232683663312E312C302C322C302E392C322C3276313263302C312E31
+ 2D302E392C322D322C32682D36632D312E312C302D322D302E392D322D325632
+ 344332342C32322E392C32342E392C32322C32362C32327A222F3E0D0A3C2F73
+ 76673E0D0A0900000063006100700061006300690074006F0072001B0200003C
+ 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
+ 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
+ 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
+ 30203438203438223E0D0A202020203C672066696C6C3D222346463938303022
+ 3E0D0A20202020202020203C7265637420793D223237222077696474683D2232
+ 3522206865696768743D2234222F3E0D0A20202020202020203C726563742079
+ 3D223137222077696474683D22323522206865696768743D2234222F3E0D0A20
+ 2020203C2F673E0D0A202020203C672066696C6C3D2223334635314235223E0D
+ 0A20202020202020203C7061746820643D224D34362C333563312E312C302C32
+ 2D302E392C322D3256313563302D312E312D302E392D322D322D324832377632
+ 324834367A222F3E0D0A20202020202020203C7061746820643D224D32312C31
+ 33632D312E312C302D322C302E392D322C3276313863302C312E312C302E392C
+ 322C322C3268325631334832317A222F3E0D0A202020203C2F673E0D0A202020
+ 203C706174682066696C6C3D22233330334639462220643D224D32352C333363
+ 312E312C302C322C302E392C322C3256313363302C312E312D302E392C322D32
+ 2C32632D312E312C302D322D302E392D322D327632324332332C33332E392C32
+ 332E392C33332C32352C33337A222F3E0D0A3C2F7376673E0D0A070000006300
+ 64005F006C006F0067006F005B0D00003C3F786D6C2076657273696F6E3D2231
+ 2E302220656E636F64696E673D227574662D38223F3E0D0A3C212D2D2047656E
+ 657261746F723A2041646F626520496C6C7573747261746F722031352E302E30
+ 2C20535647204578706F727420506C75672D496E202E20535647205665727369
+ 6F6E3A20362E3030204275696C6420302920202D2D3E0D0A3C21444F43545950
+ 4520737667205055424C494320222D2F2F5733432F2F4454442053564720312E
+ 312F2F454E222022687474703A2F2F7777772E77332E6F72672F477261706869
+ 63732F5356472F312E312F4454442F73766731312E647464223E0D0A3C737667
+ 2076657273696F6E3D22312E31222020786D6C6E733D22687474703A2F2F7777
+ 772E77332E6F72672F323030302F7376672220786D6C6E733A786C696E6B3D22
+ 687474703A2F2F7777772E77332E6F72672F313939392F786C696E6B2220783D
+ 223070782220793D22307078220D0A092077696474683D223438707822206865
+ 696768743D2234387078222076696577426F783D223020302034382034382220
+ 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
+ 2220786D6C3A73706163653D227072657365727665223E0D0A3C673E0D0A093C
+ 706174682066696C6C3D22233231393646332220643D224D31372E3831342C31
+ 384832302E3263302E352C302C302E382C302E342C302E382C302E387631362E
+ 3463302C302E3339392D302E342C302E382D302E382C302E38682D322E333834
+ 632D302E342C302D302E382D302E342D302E382D302E385631382E380D0A0909
+ 4331362E3931362C31382E332C31372E3331342C31382C31372E3831342C3138
+ 7A222F3E0D0A093C706174682066696C6C3D22233231393646332220643D224D
+ 31342E322C3131682D332E33632D302E352C302D302E392C302E3430332D302E
+ 392C302E38303756313748322E3243312E362C31372C312C31372E3630352C31
+ 2C31382E32317631362E353843312C33352E3339362C312E362C33362C322E32
+ 2C33366831320D0A090963302E342C302C302E382D302E3330352C302E382D30
+ 2E3830395631312E3830374331352C31312E3430332C31342E372C31312C3134
+ 2E322C31317A204D31302C33312E32383363302C302E3339382D302E342C302E
+ 382D302E382C302E3848362E38632D302E342C302D302E382D302E3339392D30
+ 2E382D302E380D0A09095632312E3843362C32312E342C362E332C32312C362E
+ 382C323168322E3463302E352C302C302E382C302E342C302E382C302E385633
+ 312E3238337A222F3E0D0A093C706174682066696C6C3D222332313936463322
+ 20643D224D33332E322C323563302E352C302C302E382C302E362C302E382C30
+ 2E3876392E3463302C302E3339392D302E3432322C302E382D302E382C302E38
+ 682D392E34632D302E3432352C302D302E382D302E342D302E382D302E38762D
+ 322E3338360D0A090963302D302E352C302E342D302E3739392C302E382D302E
+ 3739394C33302C3332762D33682D362E32632D302E3333312C302D302E382D30
+ 2E342D302E382D302E3830315631382E3863302D302E352C302E342D302E382C
+ 302E382D302E3868392E3463302E3339392C302C302E382C302E342C302E382C
+ 302E3876322E340D0A090963302C302E332D302E3236362C302E382D302E382C
+ 302E3848323776334833332E327A222F3E0D0A093C706174682066696C6C3D22
+ 233231393646332220643D224D34382C323876372E3263302C302E3339392D30
+ 2E342C302E382D302E3830312C302E384833362E38632D302E322C302D302E38
+ 2D302E342D302E382D302E385631382E3863302D302E352C302E3433322D302E
+ 382C302E3833312D302E384834372E320D0A090963302C302C302E382C302C30
+ 2E382C302E38563235682D34762D322E3263302C302C302E312D302E382D302E
+ 382D302E38682D322E34632D302E352C302D302E382C302E342D302E382C302E
+ 3876382E3463302C302E3339392C302E352C302E382C302E382C302E3868322E
+ 340D0A090963302E3339392C302C302E382D302E342C302E382D302E38563238
+ 4834387A222F3E0D0A3C2F673E0D0A3C673E0D0A093C706F6C79676F6E206669
+ 6C6C3D22233044343741312220706F696E74733D2234352E3739392C31352E39
+ 382034362E392C31352E39382034362E392C31322E3838312034382C31322E38
+ 38312034382C31312E39382034342E3739392C31312E39382034342E3739392C
+ 31322E383831200D0A090934352E3739392C31322E3838312009222F3E0D0A09
+ 3C706174682066696C6C3D22233044343741312220643D224D34342E3031342C
+ 31342E343736682D312E31343376302E30393563302C302E3338322D302E3039
+ 362C302E3537332D302E3537322C302E353733632D302E3437352C302D302E35
+ 372D302E3139312D302E35372D302E373632762D302E3636380D0A090963302D
+ 302E3537322C302D302E3736322C302E35372D302E37363263302E3338312C30
+ 2C302E3537322C302E3039352C302E3537322C302E34373776302E3039356831
+ 2E303437762D302E30393563302D312E3034372D302E3338312D312E3432392D
+ 312E3532332D312E343239682D302E3238370D0A0909632D312E3134312C302D
+ 312E3532332C302E3338322D312E3532332C312E36313876302E37363463302C
+ 312E3134322C302E3338312C312E3631382C312E3532332C312E36313868302E
+ 33383363312E3034372C302C312E3432382D302E3437372C312E3432382D312E
+ 3433762D302E3039354834342E3031347A222F3E0D0A093C706F6C79676F6E20
+ 66696C6C3D22233044343741312220706F696E74733D2232392E3531362C3132
+ 2032382E3731372C31342E392032372E3831362C31322032362E3231372C3132
+ 2032362E3231372C31362032372E3331362C31362032372E3331362C31332032
+ 382E3131352C31362032392E3231372C3136200D0A090933302E3131352C3133
+ 2E312033302E3131352C31362033312E3131352C31362033312E3131352C3132
+ 2009222F3E0D0A093C706174682066696C6C3D22233044343741312220643D22
+ 4D33382E3731332C3132682D302E39682D302E3839386C2D312E3139392C3468
+ 312E3139396C302E3139392D302E3768302E36303268302E3739396C302E3139
+ 392C302E3768312E3139394C33382E3731332C31327A204D33372E3931342C31
+ 342E350D0A0909682D302E346C302E342D312E376C302C306C302C306C302E33
+ 39382C312E374833372E3931347A222F3E0D0A093C706174682066696C6C3D22
+ 233044343741312220643D224D33332E39322C3132682D302E3139394833322E
+ 3032763468312E313032762D312E3168302E3668302E31393963312E3130322C
+ 302C312E352D302E342C312E352D312E34762D302E334333352E34322C31322E
+ 332C33352E30322C31322C33332E39322C31320D0A09097A204D33342E33322C
+ 31332E3663302C302E342D302E312C302E352D302E342C302E35682D302E3139
+ 39682D302E36762D312E3268302E3668302E3163302E342C302C302E352C302E
+ 312C302E352C302E345631332E367A222F3E0D0A093C706174682066696C6C3D
+ 22233044343741312220643D224D32332E3539342C3132682D302E323836682D
+ 302E323836632D312E3134332C302D312E3532332C302E3338322D312E353233
+ 2C312E36313876302E37363263302C312E3134342C302E3338312C312E36322C
+ 312E3532332C312E363268302E3238360D0A090968302E32383663312E313433
+ 2C302C312E3532332D302E3437372C312E3532332D312E3632762D302E373632
+ 4332352E3131372C31322E3338322C32342E3733372C31322C32332E3539342C
+ 31327A204D32332E3937352C31342E313963302C302E3537312C302C302E3736
+ 332D302E3537312C302E3736330D0A0909682D302E303935682D302E30393563
+ 2D302E3537312C302D302E3537312D302E3139312D302E3537312D302E373633
+ 762D302E35373263302D302E35372C302D302E3736322C302E3537312D302E37
+ 363268302E30393568302E30393563302E3537312C302C302E3537312C302E31
+ 39312C302E3537312C302E3736320D0A09095631342E31397A222F3E0D0A093C
+ 706174682066696C6C3D22233044343741312220643D224D32302E3432322C31
+ 342E343737682D312E31343476302E30393563302C302E3338322D302E303935
+ 2C302E3537312D302E3537312C302E353731632D302E3437362C302D302E3537
+ 312D302E3138392D302E3537312D302E373632762D302E3636360D0A09096330
+ 2D302E3537332C302D302E3736322C302E3537312D302E37363263302E333831
+ 2C302C302E3537312C302E3039352C302E3537312C302E34373576302E303936
+ 68312E303438762D302E30393663302D312E3034372D302E3338312D312E3432
+ 382D312E3532332D312E343238682D302E3238360D0A0909632D312E3134332C
+ 302D312E3532342C302E3338312D312E3532342C312E36313876302E37363363
+ 302C312E3134332C302E3338312C312E3631392C312E3532342C312E36313968
+ 302E33383163312E3034382C302C312E3432392D302E3437372C312E3432392D
+ 312E343239762D302E3039354832302E3432327A220D0A09092F3E0D0A3C2F67
+ 3E0D0A3C2F7376673E0D0A0E0000006300680061007200670065005F00620061
+ 0074007400650072007900C60100003C7376672076657273696F6E3D22312220
+ 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
+ 67222076696577426F783D223020302034382034382220656E61626C652D6261
+ 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
+ 672066696C6C3D2223384243333441223E0D0A20202020202020203C70617468
+ 20643D224D33342C3434483134632D312E312C302D322D302E392D322D325638
+ 63302D312E312C302E392D322C322D3268323063312E312C302C322C302E392C
+ 322C327633344333362C34332E312C33352E312C34342C33342C34347A222F3E
+ 0D0A20202020202020203C7061746820643D224D32382C3133682D38632D302E
+ 362C302D312D302E342D312D31563563302D302E362C302E342D312C312D3168
+ 3863302E362C302C312C302E342C312C3176374332392C31322E362C32382E36
+ 2C31332C32382C31337A222F3E0D0A202020203C2F673E0D0A202020203C706F
+ 6C79676F6E2066696C6C3D22234646454233422220706F696E74733D2233302C
+ 32342032342E352C32342032362E372C31332031382C32362032332E352C3236
+ 2032312E332C3337222F3E0D0A3C2F7376673E0D0A0900000063006800650063
+ 006B006D00610072006B00D00000003C7376672076657273696F6E3D22312220
+ 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
+ 67222076696577426F783D223020302034382034382220656E61626C652D6261
+ 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
+ 706F6C79676F6E2066696C6C3D22233433413034372220706F696E74733D2234
+ 302E362C31322E312031372C33352E3720372E342C32362E3120342E362C3239
+ 2031372C34312E332034332E342C31342E39222F3E0D0A3C2F7376673E0D0A07
+ 0000006300690072006300750069007400550400003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22233443414635302220643D224D362C
+ 313076323863302C322E322C312E382C342C342C3468323863322E322C302C34
+ 2D312E382C342D3456313063302D322E322D312E382D342D342D344831304337
+ 2E382C362C362C372E382C362C31307A222F3E0D0A202020203C672066696C6C
+ 3D2223464643313037223E0D0A20202020202020203C7061746820643D224D36
+ 2E362C386C362C36632D302E342C302E362D302E362C312E332D302E362C3263
+ 302C322E322C312E382C342C342C3473342D312E382C342D34732D312E382D34
+ 2D342D34632D302E372C302D312E342C302E322D322C302E366C2D362D362043
+ 372E342C362E392C362E392C372E342C362E362C387A204D31362C31342E3563
+ 302E382C302C312E352C302E372C312E352C312E35732D302E372C312E352D31
+ 2E352C312E35732D312E352D302E372D312E352D312E355331352E322C31342E
+ 352C31362C31342E357A222F3E0D0A20202020202020203C7061746820643D22
+ 4D34312E342C34306C2D362D3663302E342D302E362C302E362D312E332C302E
+ 362D3263302D322E322D312E382D342D342D34732D342C312E382D342C347331
+ 2E382C342C342C3463302E372C302C312E342D302E322C322D302E366C362C36
+ 204334302E362C34312E312C34312E312C34302E362C34312E342C34307A204D
+ 33322C33332E35632D302E382C302D312E352D302E372D312E352D312E357330
+ 2E372D312E352C312E352D312E3573312E352C302E372C312E352C312E355333
+ 322E382C33332E352C33322C33332E357A222F3E0D0A20202020202020203C70
+ 61746820643D224D31362C333663322E322C302C342D312E382C342D3463302D
+ 302E372D302E322D312E342D302E362D324C33302C31392E3463302E362C302E
+ 342C312E332C302E362C322C302E3663322E322C302C342D312E382C342D3473
+ 2D312E382D342D342D3420732D342C312E382D342C3463302C302E372C302E32
+ 2C312E342C302E362C324C31382C32382E36632D302E362D302E342D312E332D
+ 302E362D322D302E36632D322E322C302D342C312E382D342C345331332E382C
+ 33362C31362C33367A204D33322C31342E3563302E382C302C312E352C302E37
+ 2C312E352C312E3520732D302E372C312E352D312E352C312E35732D312E352D
+ 302E372D312E352D312E355333312E322C31342E352C33322C31342E357A204D
+ 31362C33302E3563302E382C302C312E352C302E372C312E352C312E35732D30
+ 2E372C312E352D312E352C312E35732D312E352D302E372D312E352D312E3520
+ 5331352E322C33302E352C31362C33302E357A222F3E0D0A202020203C2F673E
+ 0D0A3C2F7376673E0D0A0C00000063006C006100700070006500720062006F00
+ 610072006400CE0300003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
+ 66696C6C3D22233346353142352220643D224D34332E342C382E334C342C3135
+ 6C2D302E332D32632D302E342D322E322C312E312D342E322C332E332D342E36
+ 6C33312E362D352E3363322E322D302E342C342E322C312E312C342E362C332E
+ 334C34332E342C382E337A222F3E0D0A202020203C706174682066696C6C3D22
+ 233346353142352220643D224D34302C34314838632D322E322C302D342D312E
+ 382D342D345631356834307632324334342C33392E322C34322E322C34312C34
+ 302C34317A222F3E0D0A202020203C672066696C6C3D2223394641384441223E
+ 0D0A20202020202020203C706F6C79676F6E20706F696E74733D2231382E382C
+ 362E342032332E372C31312E372032372E372C31312032322E372C352E37222F
+ 3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2231302E39
+ 2C372E372031352E382C31332031392E382C31322E332031342E382C372E3122
+ 2F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2232362E
+ 372C352E312033312E362C31302E332033352E352C392E372033302E362C342E
+ 34222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2233
+ 342E352C332E382033392E352C392034332E342C382E332033382E352C332E31
+ 222F3E0D0A202020203C2F673E0D0A202020203C636972636C652066696C6C3D
+ 2223394641384441222063783D22372E35222063793D2231312E352220723D22
+ 312E35222F3E0D0A202020203C672066696C6C3D2223394641384441223E0D0A
+ 20202020202020203C706F6C79676F6E20706F696E74733D2234302C31352033
+ 362C32312034302C32312034342C3135222F3E0D0A20202020202020203C706F
+ 6C79676F6E20706F696E74733D2233322C31352032382C32312033322C323120
+ 33362C3135222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74
+ 733D2232342C31352032302C32312032342C32312032382C3135222F3E0D0A20
+ 202020202020203C706F6C79676F6E20706F696E74733D2231362C3135203132
+ 2C32312031362C32312032302C3135222F3E0D0A20202020202020203C706F6C
+ 79676F6E20706F696E74733D22382C313520342C323120382C32312031322C31
+ 35222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0D00000063006C00
+ 6500610072005F00660069006C007400650072007300F10100003C7376672076
+ 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
+ 6F72672F323030302F737667222076696577426F783D22302030203438203438
+ 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
+ 3438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223463537433030
+ 2220706F696E74733D2232392C32332031392C323320372C392034312C39222F
+ 3E0D0A202020203C672066696C6C3D2223464639383030223E0D0A2020202020
+ 2020203C706F6C79676F6E20706F696E74733D2232392C33382031392C343420
+ 31392C32332032392C3233222F3E0D0A20202020202020203C7061746820643D
+ 224D34312E352C39682D333543352E372C392C352C382E332C352C372E357630
+ 43352C362E372C352E372C362C362E352C366833354334322E332C362C34332C
+ 362E372C34332C372E3576304334332C382E332C34322E332C392C34312E352C
+ 397A222F3E0D0A202020203C2F673E0D0A202020203C636972636C652066696C
+ 6C3D2223463434333336222063783D223338222063793D2233382220723D2231
+ 30222F3E0D0A202020203C7265637420783D2233322220793D22333622206669
+ 6C6C3D2223666666222077696474683D22313222206865696768743D2234222F
+ 3E0D0A3C2F7376673E0D0A0D00000063006C006F00730065005F00750070005F
+ 006D006F00640065006D0300003C7376672076657273696F6E3D22312220786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 2076696577426F783D223020302034382034382220656E61626C652D6261636B
+ 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
+ 74682066696C6C3D22233245374433322220643D224D352C323463302C31382E
+ 392C31342E382C31392C31372C313973342C302C342C305332342E312C32362E
+ 352C352C32347A222F3E0D0A202020203C7265637420783D2232322220793D22
+ 3236222066696C6C3D2223333838453343222077696474683D22342220686569
+ 6768743D223137222F3E0D0A202020203C706174682066696C6C3D2223433632
+ 3832382220643D224D33342C313663302C352E312D352E322C382E322D382C38
+ 2E32732D322D332E312D322D382E3273352D392E322C352D392E325333342C31
+ 302E392C33342C31367A222F3E0D0A202020203C706174682066696C6C3D2223
+ 4336323832382220643D224D31342C313663302C352E312C352E322C382E322C
+ 382C382E3273322D332E312C322D382E32732D352D392E322D352D392E325331
+ 342C31302E392C31342C31367A222F3E0D0A202020203C706174682066696C6C
+ 3D22234535333933352220643D224D32342C3237632D322E322D312E362D312E
+ 392D342E352C322E342D382E384333302E382C31332E382C33322C372C33322C
+ 3773352C332E342C352C394333372C32312E392C33312E332C32372C32342C32
+ 377A222F3E0D0A202020203C706174682066696C6C3D22234535333933352220
+ 643D224D32342C323763322E322D312E362C312E392D342E352D322E342D382E
+ 384331372E322C31332E382C31362C372C31362C37732D352C332E342D352C39
+ 4331312C32312E392C31362E372C32372C32342C32377A222F3E0D0A20202020
+ 3C706174682066696C6C3D22234634343333362220643D224D33302C31366330
+ 2C362E312D322E372C31312D362C3131732D362D342E392D362D313173362D31
+ 312C362D31315333302C392E392C33302C31367A222F3E0D0A202020203C7061
+ 74682066696C6C3D22233443414635302220643D224D32322C343363302C302C
+ 312E382C302C342C307331372D302E312C31372D31394332332E392C32362E35
+ 2C32322C34332C32322C34337A222F3E0D0A3C2F7376673E0D0A050000006300
+ 6C006F0074006800750D00003C7376672076657273696F6E3D22312220786D6C
+ 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
+ 76696577426F783D223020302034382034382220656E61626C652D6261636B67
+ 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
+ 682066696C6C3D22234646353732322220643D224D362C313076323863302C32
+ 2E322C312E382C342C342C3468323863322E322C302C342D312E382C342D3456
+ 313063302D322E322D312E382D342D342D3448313043372E382C362C362C372E
+ 382C362C31307A222F3E0D0A202020203C672066696C6C3D2223424633363043
+ 223E0D0A20202020202020203C7265637420783D22362220793D223335222077
+ 696474683D22333622206865696768743D2232222F3E0D0A2020202020202020
+ 3C7265637420783D22362220793D223331222077696474683D22333622206865
+ 696768743D2232222F3E0D0A20202020202020203C7061746820643D224D362E
+ 312C333963302E322C302E382C302E362C312E352C312E322C326833332E3263
+ 302E362D302E352C312D312E322C312E322D3248362E317A222F3E0D0A202020
+ 20202020203C7061746820643D224D362E312C396833352E37632D302E322D30
+ 2E382D302E362D312E352D312E322D3248372E3443362E382C372E352C362E33
+ 2C382E322C362E312C397A222F3E0D0A20202020202020203C7265637420783D
+ 22362220793D223233222077696474683D22333622206865696768743D223222
+ 2F3E0D0A20202020202020203C7265637420783D22362220793D223237222077
+ 696474683D22333622206865696768743D2232222F3E0D0A2020202020202020
+ 3C7265637420783D22362220793D223135222077696474683D22333622206865
+ 696768743D2232222F3E0D0A20202020202020203C7265637420783D22362220
+ 793D223131222077696474683D22333622206865696768743D2232222F3E0D0A
+ 20202020202020203C7265637420783D22362220793D22313922207769647468
+ 3D22333622206865696768743D2232222F3E0D0A202020203C2F673E0D0A2020
+ 20203C672066696C6C3D2223464638413635223E0D0A20202020202020203C72
+ 65637420783D2232372220793D2236222077696474683D223222206865696768
+ 743D2235222F3E0D0A20202020202020203C7265637420783D2232372220793D
+ 223133222077696474683D223222206865696768743D2236222F3E0D0A202020
+ 20202020203C7265637420783D2232372220793D223239222077696474683D22
+ 3222206865696768743D2236222F3E0D0A20202020202020203C726563742078
+ 3D2233312220793D2236222077696474683D223222206865696768743D223122
+ 2F3E0D0A20202020202020203C7265637420783D2231392220793D2232392220
+ 77696474683D223222206865696768743D2236222F3E0D0A2020202020202020
+ 3C7265637420783D2233312220793D2239222077696474683D22322220686569
+ 6768743D2236222F3E0D0A20202020202020203C7265637420783D2232332220
+ 793D2236222077696474683D223222206865696768743D2231222F3E0D0A2020
+ 2020202020203C7265637420783D2232332220793D223235222077696474683D
+ 223222206865696768743D2236222F3E0D0A20202020202020203C7265637420
+ 783D2232332220793D2239222077696474683D223222206865696768743D2236
+ 222F3E0D0A20202020202020203C7265637420783D2231392220793D22323122
+ 2077696474683D223222206865696768743D2236222F3E0D0A20202020202020
+ 203C7265637420783D2232332220793D223137222077696474683D2232222068
+ 65696768743D2236222F3E0D0A20202020202020203C7265637420783D223233
+ 2220793D223333222077696474683D223222206865696768743D2236222F3E0D
+ 0A20202020202020203C7265637420783D2232372220793D2232312220776964
+ 74683D223222206865696768743D2236222F3E0D0A20202020202020203C7265
+ 637420783D2233392220793D223333222077696474683D223222206865696768
+ 743D2236222F3E0D0A20202020202020203C7265637420783D2233392220793D
+ 223137222077696474683D223222206865696768743D2236222F3E0D0A202020
+ 20202020203C7265637420783D2233392220793D223235222077696474683D22
+ 3222206865696768743D2236222F3E0D0A20202020202020203C706174682064
+ 3D224D33392C362E31563768312E364334302E322C362E362C33392E362C362E
+ 332C33392C362E317A222F3E0D0A20202020202020203C7265637420783D2233
+ 312220793D223137222077696474683D223222206865696768743D2236222F3E
+ 0D0A20202020202020203C7061746820643D224D34302E362C34314833397630
+ 2E394333392E362C34312E372C34302E322C34312E342C34302E362C34317A22
+ 2F3E0D0A20202020202020203C7265637420783D2233352220793D2231332220
+ 77696474683D223222206865696768743D2236222F3E0D0A2020202020202020
+ 3C7265637420783D2233312220793D223333222077696474683D223222206865
+ 696768743D2236222F3E0D0A20202020202020203C7265637420783D22333522
+ 20793D223239222077696474683D223222206865696768743D2236222F3E0D0A
+ 20202020202020203C7265637420783D2233392220793D223922207769647468
+ 3D223222206865696768743D2236222F3E0D0A20202020202020203C72656374
+ 20783D2233352220793D223231222077696474683D223222206865696768743D
+ 2236222F3E0D0A20202020202020203C7265637420783D2233312220793D2232
+ 35222077696474683D223222206865696768743D2236222F3E0D0A2020202020
+ 2020203C7265637420783D2233352220793D223337222077696474683D223222
+ 206865696768743D2235222F3E0D0A20202020202020203C7265637420783D22
+ 33352220793D2236222077696474683D223222206865696768743D2235222F3E
+ 0D0A20202020202020203C7265637420783D2233312220793D22343122207769
+ 6474683D223222206865696768743D2231222F3E0D0A20202020202020203C72
+ 65637420783D2232332220793D223431222077696474683D2232222068656967
+ 68743D2231222F3E0D0A20202020202020203C7265637420783D223237222079
+ 3D223337222077696474683D223222206865696768743D2235222F3E0D0A2020
+ 2020202020203C7265637420783D2231392220793D223337222077696474683D
+ 223222206865696768743D2235222F3E0D0A20202020202020203C7265637420
+ 783D22372220793D223137222077696474683D223222206865696768743D2236
+ 222F3E0D0A20202020202020203C7061746820643D224D392C343148372E3463
+ 302E352C302E342C312C302E372C312E362C302E395634317A222F3E0D0A2020
+ 2020202020203C7061746820643D224D372E342C37483956362E3143382E342C
+ 362E332C372E382C362E362C372E342C377A222F3E0D0A20202020202020203C
+ 7265637420783D22372220793D223333222077696474683D2232222068656967
+ 68743D2236222F3E0D0A20202020202020203C7265637420783D22372220793D
+ 223235222077696474683D223222206865696768743D2236222F3E0D0A202020
+ 20202020203C7265637420783D22372220793D2239222077696474683D223222
+ 206865696768743D2236222F3E0D0A20202020202020203C7265637420783D22
+ 31312220793D223239222077696474683D223222206865696768743D2236222F
+ 3E0D0A20202020202020203C7265637420783D2231352220793D223137222077
+ 696474683D223222206865696768743D2236222F3E0D0A20202020202020203C
+ 7265637420783D2231352220793D223333222077696474683D22322220686569
+ 6768743D2236222F3E0D0A20202020202020203C7265637420783D2231352220
+ 793D2239222077696474683D223222206865696768743D2236222F3E0D0A2020
+ 2020202020203C7265637420783D2231352220793D2236222077696474683D22
+ 3222206865696768743D2231222F3E0D0A20202020202020203C726563742078
+ 3D2231392220793D2236222077696474683D223222206865696768743D223522
+ 2F3E0D0A20202020202020203C7265637420783D2231352220793D2232352220
+ 77696474683D223222206865696768743D2236222F3E0D0A2020202020202020
+ 3C7265637420783D2231352220793D223431222077696474683D223222206865
+ 696768743D2231222F3E0D0A20202020202020203C7265637420783D22313122
+ 20793D223231222077696474683D223222206865696768743D2236222F3E0D0A
+ 20202020202020203C7265637420783D2231312220793D223622207769647468
+ 3D223222206865696768743D2235222F3E0D0A20202020202020203C72656374
+ 20783D2231312220793D223337222077696474683D223222206865696768743D
+ 2235222F3E0D0A20202020202020203C7265637420783D2231392220793D2231
+ 33222077696474683D223222206865696768743D2236222F3E0D0A2020202020
+ 2020203C7265637420783D2231312220793D223133222077696474683D223222
+ 206865696768743D2236222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D
+ 0A0D00000063006F006C006C00610062006F0072006100740069006F006E005D
+ 0200003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
+ 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
+ 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
+ 7720302030203438203438223E0D0A202020203C706174682066696C6C3D2223
+ 3135363543302220643D224D32352C32326831336C362C3656313163302D322E
+ 322D312E382D342D342D34483235632D322E322C302D342C312E382D342C3476
+ 374332312C32302E322C32322E382C32322C32352C32327A222F3E0D0A202020
+ 203C706174682066696C6C3D22233231393646332220643D224D32332C313948
+ 31306C2D362C36563863302D322E322C312E382D342C342D3468313563322E32
+ 2C302C342C312E382C342C3476374332372C31372E322C32352E322C31392C32
+ 332C31397A222F3E0D0A202020203C672066696C6C3D2223464641373236223E
+ 0D0A20202020202020203C636972636C652063783D223132222063793D223331
+ 2220723D2235222F3E0D0A20202020202020203C636972636C652063783D2233
+ 36222063793D2233312220723D2235222F3E0D0A202020203C2F673E0D0A2020
+ 20203C672066696C6C3D2223363037443842223E0D0A20202020202020203C70
+ 61746820643D224D32302C343263302C302D322E322D342D382D34732D382C34
+ 2D382C3476326831365634327A222F3E0D0A20202020202020203C7061746820
+ 643D224D34342C343263302C302D322E322D342D382D34732D382C342D382C34
+ 76326831365634327A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A
+ 0700000063006F006C006C00650063007400C60200003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C672066696C6C3D2223303039363838223E0D0A202020202020
+ 20203C7265637420783D2232322220793D223335222077696474683D22342220
+ 6865696768743D223131222F3E0D0A20202020202020203C706F6C79676F6E20
+ 706F696E74733D2232342C32392E362033312C33382031372C3338222F3E0D0A
+ 202020203C2F673E0D0A202020203C672066696C6C3D2223303039363838223E
+ 0D0A20202020202020203C7265637420783D2232322220793D22322220776964
+ 74683D223422206865696768743D223131222F3E0D0A20202020202020203C70
+ 6F6C79676F6E20706F696E74733D2232342C31382E342031372C31302033312C
+ 3130222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D222330
+ 3039363838223E0D0A20202020202020203C7265637420783D22322220793D22
+ 3232222077696474683D22313122206865696768743D2234222F3E0D0A202020
+ 20202020203C706F6C79676F6E20706F696E74733D2231382E342C3234203130
+ 2C33312031302C3137222F3E0D0A202020203C2F673E0D0A202020203C672066
+ 696C6C3D2223303039363838223E0D0A20202020202020203C7265637420783D
+ 2233352220793D223232222077696474683D22313122206865696768743D2234
+ 222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D223239
+ 2E362C32342033382C31372033382C3331222F3E0D0A202020203C2F673E0D0A
+ 202020203C636972636C652066696C6C3D2223463434333336222063783D2232
+ 34222063793D2232342220723D2233222F3E0D0A3C2F7376673E0D0A0B000000
+ 63006F006D0062006F005F0063006800610072007400080300003C7376672076
+ 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
+ 6F72672F323030302F737667222076696577426F783D22302030203438203438
+ 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
+ 3438223E0D0A202020203C672066696C6C3D2223303042434434223E0D0A2020
+ 2020202020203C7265637420783D2233372220793D223138222077696474683D
+ 223622206865696768743D223234222F3E0D0A20202020202020203C72656374
+ 20783D2232392220793D223236222077696474683D223622206865696768743D
+ 223136222F3E0D0A20202020202020203C7265637420783D2232312220793D22
+ 3232222077696474683D223622206865696768743D223230222F3E0D0A202020
+ 20202020203C7265637420783D2231332220793D223332222077696474683D22
+ 3622206865696768743D223130222F3E0D0A20202020202020203C7265637420
+ 783D22352220793D223238222077696474683D223622206865696768743D2231
+ 34222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D22233346
+ 35314235223E0D0A20202020202020203C636972636C652063783D2238222063
+ 793D2231362220723D2233222F3E0D0A20202020202020203C636972636C6520
+ 63783D223136222063793D2231382220723D2233222F3E0D0A20202020202020
+ 203C636972636C652063783D223234222063793D2231312220723D2233222F3E
+ 0D0A20202020202020203C636972636C652063783D223332222063793D223133
+ 2220723D2233222F3E0D0A20202020202020203C636972636C652063783D2234
+ 30222063793D22392220723D2233222F3E0D0A20202020202020203C706F6C79
+ 676F6E20706F696E74733D2233392E312C372E322033312E382C31302E392032
+ 332E352C382E382031352E352C31352E3820382E352C31342E3120372E352C31
+ 372E392031362E352C32302E322032342E352C31332E322033322E322C31352E
+ 312034302E392C31302E38222F3E0D0A202020203C2F673E0D0A3C2F7376673E
+ 0D0A0C00000063006F006D006D0061006E0064005F006C0069006E006500EB05
+ 00003C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D22
+ 7574662D38223F3E0D0A3C212D2D2047656E657261746F723A2041646F626520
+ 496C6C7573747261746F722031392E312E312C20535647204578706F72742050
+ 6C75672D496E202E205356472056657273696F6E3A20362E3030204275696C64
+ 20302920202D2D3E0D0A3C7376672076657273696F6E3D22312E31222020786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 20786D6C6E733A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F
+ 313939392F786C696E6B2220783D223070782220793D22307078220D0A092076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E6577203020302034382034382220786D6C3A73706163653D22
+ 7072657365727665223E0D0A3C673E0D0A093C706174682066696C6C3D222343
+ 46443844432220643D224D34312C36483743362E342C362C362C362E342C362C
+ 3776333568333656374334322C362E342C34312E362C362C34312C367A222F3E
+ 0D0A3C2F673E0D0A3C7265637420783D22382220793D223133222066696C6C3D
+ 2223323633323338222077696474683D22333222206865696768743D22323722
+ 2F3E0D0A3C673E0D0A093C706174682066696C6C3D2223373646463033222064
+ 3D224D32322C32372E36632D302E312C312E312D302E342C312E392D312C322E
+ 35632D302E362C302E362D312E342C302E392D322E352C302E39632D312E312C
+ 302D322D302E342D322E362D312E31632D302E362D302E372D302E392D312E38
+ 2D302E392D332E310D0A0909762D312E3663302D312E332C302E332D322E342C
+ 302E392D332E3163302E362D302E372C312E352D312E312C322E362D312E3163
+ 312E312C302C312E392C302E332C322E352C302E3963302E362C302E362C302E
+ 392C312E342C312C322E36682D3263302D302E372D302E312D312E322D302E33
+ 2D312E340D0A0909632D302E322D302E332D302E362D302E342D312E312D302E
+ 34632D302E352C302D302E392C302E322D312E322C302E36632D302E322C302E
+ 342D302E332C312D302E342C312E3876312E3863302C312C302E312C312E362C
+ 302E332C3263302E322C302E342C302E362C302E352C312E312C302E350D0A09
+ 0963302E352C302C302E392D302E312C312E312D302E3463302E322D302E332C
+ 302E332D302E372C302E332D312E344832327A222F3E0D0A093C706174682066
+ 696C6C3D22233736464630332220643D224D32342C323463302D302E332C302E
+ 312D302E352C302E332D302E3763302E322D302E322C302E342D302E332C302E
+ 372D302E3363302E332C302C302E352C302E312C302E372C302E3363302E322C
+ 302E322C302E332C302E342C302E332C302E370D0A090963302C302E332D302E
+ 312C302E352D302E332C302E375332352E332C32352C32352C3235632D302E33
+ 2C302D302E352D302E312D302E372D302E335332342C32342E332C32342C3234
+ 7A222F3E0D0A093C706174682066696C6C3D22233736464630332220643D224D
+ 32342C333063302D302E332C302E312D302E352C302E332D302E3763302E322D
+ 302E322C302E342D302E332C302E372D302E3363302E332C302C302E352C302E
+ 312C302E372C302E3363302E322C302E322C302E332C302E342C302E332C302E
+ 370D0A090963302C302E332D302E312C302E352D302E332C302E375332352E33
+ 2C33312C32352C3331632D302E332C302D302E352D302E312D302E372D302E33
+ 5332342C33302E332C32342C33307A222F3E0D0A093C706174682066696C6C3D
+ 22233736464630332220643D224D32382C323168326C332C3130682D324C3238
+ 2C32317A222F3E0D0A3C2F673E0D0A3C673E0D0A093C636972636C652066696C
+ 6C3D2223393041344145222063783D2231332E35222063793D22392E35222072
+ 3D22312E35222F3E0D0A093C636972636C652066696C6C3D2223393041344145
+ 222063783D22392E35222063793D22392E352220723D22312E35222F3E0D0A3C
+ 2F673E0D0A3C2F7376673E0D0A0800000063006F006D006D0065006E00740073
+ 00E30000003C7376672076657273696F6E3D22312220786D6C6E733D22687474
+ 703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F78
+ 3D223020302034382034382220656E61626C652D6261636B67726F756E643D22
+ 6E657720302030203438203438223E0D0A202020203C706174682066696C6C3D
+ 22233842433334412220643D224D33372C33394831316C2D362C365631316330
+ 2D332E332C322E372D362C362D3668323663332E332C302C362C322E372C362C
+ 367632324334332C33362E332C34302E332C33392C33372C33397A222F3E0D0A
+ 3C2F7376673E0D0A0E00000063006F006D0070006100630074005F0063006100
+ 6D00650072006100770200003C7376672076657273696F6E3D22312220786D6C
+ 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
+ 76696577426F783D223020302034382034382220656E61626C652D6261636B67
+ 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
+ 682066696C6C3D22233630374438422220643D224D34302C33394838632D322E
+ 322C302D342D312E382D342D3456313363302D322E322C312E382D342C342D34
+ 68333263322E322C302C342C312E382C342C347632324334342C33372E322C34
+ 322E322C33392C34302C33397A222F3E0D0A202020203C636972636C65206669
+ 6C6C3D2223343535413634222063783D223239222063793D2232342220723D22
+ 3132222F3E0D0A202020203C636972636C652066696C6C3D2223343241354635
+ 222063783D223239222063793D2232342220723D2239222F3E0D0A202020203C
+ 706174682066696C6C3D22233930434146392220643D224D33332E382C323163
+ 2D312E322D312E342D332D322E322D342E382D322E32732D332E362C302E382D
+ 342E382C322E32632D302E352C302E352D302E342C312E332C302E312C312E38
+ 63302E352C302E352C312E332C302E342C312E382D302E312063312E352D312E
+ 372C342E332D312E372C352E382C3063302E332C302E332C302E362C302E342C
+ 312C302E3463302E332C302C302E362D302E312C302E392D302E334333342E32
+ 2C32322E342C33342E332C32312E352C33332E382C32317A222F3E0D0A202020
+ 203C7265637420783D22382220793D223133222066696C6C3D22234144443846
+ 42222077696474683D223622206865696768743D2233222F3E0D0A3C2F737667
+ 3E0D0A0F00000063006F006E0066006500720065006E00630065005F00630061
+ 006C006C00860200003C7376672076657273696F6E3D22312220786D6C6E733D
+ 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
+ 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
+ 6E643D226E657720302030203438203438223E0D0A202020203C636972636C65
+ 2066696C6C3D2223464641373236222063783D223132222063793D2232312220
+ 723D2235222F3E0D0A202020203C672066696C6C3D2223343535413634223E0D
+ 0A20202020202020203C7061746820643D224D322C33342E3763302C302C322E
+ 382D362E332C31302D362E337331302C362E332C31302C362E33563338483256
+ 33342E377A222F3E0D0A20202020202020203C7061746820643D224D34362C33
+ 342E3763302C302D322E382D362E332D31302D362E33732D31302C362E332D31
+ 302C362E335633386832305633342E377A222F3E0D0A202020203C2F673E0D0A
+ 202020203C636972636C652066696C6C3D2223464642373444222063783D2232
+ 34222063793D2231372220723D2236222F3E0D0A202020203C70617468206669
+ 6C6C3D22233630374438422220643D224D33362C33342E3163302C302D332E33
+ 2D372E352D31322D372E35732D31322C372E352D31322C372E35563338683234
+ 5633342E317A222F3E0D0A202020203C636972636C652066696C6C3D22234646
+ 41373236222063783D223336222063793D2232312220723D2235222F3E0D0A20
+ 2020203C636972636C652066696C6C3D2223464641373236222063783D223132
+ 222063793D2232312220723D2235222F3E0D0A202020203C636972636C652066
+ 696C6C3D2223464641373236222063783D223336222063793D2232312220723D
+ 2235222F3E0D0A3C2F7376673E0D0A120000006300720079007300740061006C
+ 005F006F007300630069006C006C00610074006F007200AD0100003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C672066696C6C3D2223464639383030223E0D0A20
+ 202020202020203C7265637420783D22332220793D223238222077696474683D
+ 22323622206865696768743D2234222F3E0D0A20202020202020203C72656374
+ 20783D22332220793D223136222077696474683D22323622206865696768743D
+ 2234222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C3D
+ 22233231393646332220643D224D34332C313148323076323668323363312E31
+ 2C302C322D302E392C322D325631334334352C31312E392C34342E312C31312C
+ 34332C31317A222F3E0D0A202020203C706174682066696C6C3D222336344235
+ 46362220643D224D32302C39682D32763330683263312E312C302C322D302E39
+ 2C322D325631314332322C392E392C32312E312C392C32302C397A222F3E0D0A
+ 3C2F7376673E0D0A11000000630075007200720065006E00630079005F006500
+ 78006300680061006E0067006500F30700003C7376672076657273696F6E3D22
+ 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
+ 2F737667222076696577426F783D223020302034382034382220656E61626C65
+ 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
+ 20203C636972636C652066696C6C3D2223334635314235222063783D22313822
+ 2063793D2231382220723D223135222F3E0D0A202020203C706174682066696C
+ 6C3D22234646463539442220643D224D32302E332C313676312E37682D332E38
+ 76312E3468332E3876312E37682D332E3863302C302E362C302E312C312E322C
+ 302E332C312E3663302E322C302E342C302E342C302E382C302E372C3163302E
+ 332C302E332C302E372C302E342C312E312C302E362063302E342C302E312C30
+ 2E392C302E322C312E342C302E3263302E342C302C302E372C302C312E312D30
+ 2E3163302E342D302E312C302E372D302E312C312D302E336C302E342C322E37
+ 632D302E342C302E312D302E392C302E322D312E342C302E32632D302E352C30
+ 2E312D312C302E312D312E352C302E3120632D302E392C302D312E382D302E31
+ 2D322E362D302E34632D302E382D302E322D312E352D302E362D322D312E3163
+ 2D302E362D302E352D312D312E312D312E342D312E39632D302E332D302E372D
+ 302E352D312E362D302E352D322E36682D312E39762D312E3768312E39762D31
+ 2E34682D312E3956313668312E392063302E312D312C302E332D312E382C302E
+ 362D322E3663302E342D302E372C302E382D312E342C312E342D312E3963302E
+ 362D302E352C312E332D302E392C322E312D312E3163302E382D302E332C312E
+ 372D302E342C322E362D302E3463302E342C302C302E392C302C312E332C302E
+ 312063302E342C302E312C302E392C302E312C312E332C302E336C2D302E342C
+ 322E37632D302E332D302E312D302E362D302E322D312D302E33632D302E342D
+ 302E312D302E372D302E312D312E312D302E31632D302E352C302D312C302E31
+ 2D312E342C302E32632D302E342C302E312D302E382C302E332D312C302E3620
+ 632D302E332C302E332D302E352C302E362D302E372C31732D302E332C302E39
+ 2D302E332C312E354832302E337A222F3E0D0A202020203C636972636C652066
+ 696C6C3D2223344341463530222063783D223330222063793D2233302220723D
+ 223135222F3E0D0A202020203C706174682066696C6C3D22236666662220643D
+ 224D32382E342C323763302E312C302E322C302E322C302E342C302E342C302E
+ 3663302E322C302E322C302E342C302E342C302E372C302E3563302E332C302E
+ 322C302E372C302E332C312E312C302E3563302E372C302E332C312E342C302E
+ 362C322C302E392063302E362C302E332C312E312C302E372C312E352C312E31
+ 63302E342C302E342C302E382C302E392C312C312E3463302E322C302E352C30
+ 2E342C312E322C302E342C312E3963302C302E372D302E312C312E332D302E33
+ 2C312E38632D302E322C302E352D302E352C312D302E392C312E3420732D302E
+ 392C302E372D312E342C302E39632D302E362C302E322D312E322C302E342D31
+ 2E382C302E3576322E32682D312E38762D322E32632D302E362D302E312D312E
+ 322D302E322D312E382D302E34732D312E312D302E352D312E352D31632D302E
+ 352D302E342D302E382D312D312E312D312E3620632D302E332D302E362D302E
+ 342D312E342D302E342D322E3368332E3363302C302E352C302E312C312C302E
+ 322C312E3363302E312C302E342C302E332C302E362C302E362C302E3963302E
+ 322C302E322C302E352C302E342C302E382C302E3563302E332C302E312C302E
+ 362C302E312C302E392C302E312063302E342C302C302E372C302C302E392D30
+ 2E3163302E332D302E312C302E352D302E322C302E372D302E3463302E322D30
+ 2E322C302E332D302E342C302E342D302E3663302E312D302E322C302E312D30
+ 2E352C302E312D302E3863302D302E332C302D302E362D302E312D302E382063
+ 2D302E312D302E322D302E322D302E352D302E342D302E37732D302E342D302E
+ 342D302E372D302E35632D302E332D302E322D302E372D302E332D312E312D30
+ 2E35632D302E372D302E332D312E342D302E362D322D302E39632D302E362D30
+ 2E332D312E312D302E372D312E352D312E3120632D302E342D302E342D302E38
+ 2D302E392D312D312E34632D302E322D302E352D302E342D312E322D302E342D
+ 312E3963302D302E362C302E312D312E322C302E332D312E3763302E322D302E
+ 352C302E352D312C302E392D312E3463302E342D302E342C302E392D302E372C
+ 312E342D312063302E352D302E322C312E322D302E342C312E382D302E35762D
+ 322E3468312E3876322E3463302E362C302E312C312E322C302E332C312E382C
+ 302E3663302E352C302E332C312C302E362C312E332C312E3163302E342C302E
+ 342C302E372C312C302E392C312E3663302E322C302E362C302E332C312E332C
+ 302E332C3220682D332E3363302D302E392D302E322D312E362D302E362D3263
+ 2D302E342D302E342D302E392D302E372D312E352D302E37632D302E332C302D
+ 302E362C302E312D302E392C302E32632D302E322C302E312D302E342C302E32
+ 2D302E362C302E34632D302E322C302E322D302E332C302E342D302E332C302E
+ 3620632D302E312C302E322D302E312C302E352D302E312C302E384332382E33
+ 2C32362E352C32382E342C32362E382C32382E342C32377A222F3E0D0A3C2F73
+ 76673E0D0A0600000063007500720073006F007200D70300003C737667207665
+ 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
+ 72672F323030302F737667222076696577426F783D2230203020343820343822
+ 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
+ 38223E0D0A202020203C706174682066696C6C3D22234530453045302220643D
+ 224D32372E382C33392E37632D302E312C302D302E322C302D302E342D302E31
+ 632D302E322D302E312D302E342D302E332D302E362D302E356C2D332E372D38
+ 2E366C2D342E352C342E324331382E352C33342E392C31382E332C33352C3138
+ 2C333520632D302E312C302D302E332C302D302E342D302E314331372E332C33
+ 342E382C31372C33342E342C31372C33346C302D323263302D302E342C302E32
+ 2D302E382C302E362D302E394331372E372C31312C31372E392C31312C31382C
+ 313163302E322C302C302E352C302E312C302E372C302E336C31362C31352063
+ 302E332C302E332C302E342C302E372C302E332C312E31632D302E312C302E34
+ 2D302E352C302E362D302E392C302E376C2D362E332C302E366C332E392C382E
+ 3563302E312C302E322C302E312C302E352C302C302E38632D302E312C302E32
+ 2D302E332C302E352D302E352C302E366C2D322E392C312E33204332382E312C
+ 33392E372C32372E392C33392E372C32372E382C33392E377A222F3E0D0A2020
+ 20203C706174682066696C6C3D22233231323132312220643D224D31382C3132
+ 6C31362C31356C2D372E372C302E376C342E352C392E386C2D322E392C312E33
+ 6C2D342E332D392E394C31382C33344C31382C3132204D31382C3130632D302E
+ 332C302D302E352C302E312D302E382C302E3220632D302E372C302E332D312E
+ 322C312D312E322C312E386C302C323263302C302E382C302E352C312E352C31
+ 2E322C312E384331372E352C33362C31372E382C33362C31382C333663302E35
+ 2C302C312D302E322C312E342D302E356C332E342D332E326C332E312C372E33
+ 2063302E322C302E352C302E362C302E392C312E312C312E3163302E322C302E
+ 312C302E352C302E312C302E372C302E3163302E332C302C302E352D302E312C
+ 302E382D302E326C322E392D312E3363302E352D302E322C302E392D302E362C
+ 312E312D312E3163302E322D302E352C302E322D312E312C302D312E35206C2D
+ 332E332D372E326C342E392D302E3463302E382D302E312C312E352D302E362C
+ 312E372D312E3363302E332D302E372C302E312D312E362D302E352D322E316C
+ 2D31362D31354331392C31302E322C31382E352C31302C31382C31304C31382C
+ 31307A222F3E0D0A3C2F7376673E0D0A1000000063007500730074006F006D00
+ 650072005F0073007500700070006F0072007400420400003C73766720766572
+ 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
+ 672F323030302F737667222076696577426F783D223020302034382034382220
+ 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
+ 223E0D0A202020203C706174682066696C6C3D22234646423734442220643D22
+ 4D32392C3433762D342E366C322E362C302E3563322E392C302E362C352E362D
+ 312E352C352E382D342E344C33382C32386C322E392D312E3263312D302E342C
+ 312E342D312E362C302E382D322E364C33382C313820632D302E362D372E362D
+ 342E392D31352D31362D31354331302E362C332C352C31312E342C352C323063
+ 302C332E372C312E332C362E392C332E332C392E3663312E382C322E352C322E
+ 372C352E352C322E372C382E356C302C342E384832397A222F3E0D0A20202020
+ 3C706F6C79676F6E2066696C6C3D22234646393830302220706F696E74733D22
+ 32392C34332032392C33382E342032322C33372032322C3433222F3E0D0A2020
+ 20203C636972636C652066696C6C3D2223373834373139222063783D2233332E
+ 35222063793D2232312E352220723D22312E35222F3E0D0A202020203C706174
+ 682066696C6C3D22234646353732322220643D224D32312E342C334331322E33
+ 2C332C352C31302E332C352C31392E3463302C31312E312C362C31312E342C36
+ 2C31382E366C322E362D302E3963322E312D302E372C332E392D322E332C342E
+ 372D342E346C322E382D362E384C32372C3233762D362063302C302C372D332E
+ 382C372D31302E334333312C342E322C32352E372C332C32312E342C337A222F
+ 3E0D0A202020203C672066696C6C3D2223353436453741223E0D0A2020202020
+ 2020203C7061746820643D224D32312C322E31632D302E362C302D312C302E34
+ 2D312C317631332E3963302C302E362C302E342C312C312C3173312D302E342C
+ 312D3156332E314332322C322E352C32312E362C322E312C32312C322E317A22
+ 2F3E0D0A20202020202020203C7061746820643D224D33362E392C33312E3963
+ 2D372E392C302D31302E332D342E392D31302E342D352E31632D302E322D302E
+ 352D302E382D302E372D312E332D302E35632D302E352C302E322D302E372C30
+ 2E382D302E352C312E332063302E312C302E332C332C362E332C31322E322C36
+ 2E3363302E362C302C312D302E342C312D315333372E342C33312E392C33362E
+ 392C33312E397A222F3E0D0A202020203C2F673E0D0A202020203C636972636C
+ 652066696C6C3D2223333734373446222063783D223337222063793D22333322
+ 20723D2232222F3E0D0A202020203C636972636C652066696C6C3D2223333734
+ 373446222063783D223231222063793D2232332220723D2237222F3E0D0A2020
+ 20203C636972636C652066696C6C3D2223353436453741222063783D22323122
+ 2063793D2232332220723D2234222F3E0D0A3C2F7376673E0D0A030000006400
+ 61006D006D0800003C7376672076657273696F6E3D22312220786D6C6E733D22
+ 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
+ 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
+ 643D226E657720302030203438203438223E0D0A202020203C672066696C6C3D
+ 2223383144344641223E0D0A20202020202020203C7265637420783D22323422
+ 20793D223238222077696474683D22313822206865696768743D223134222F3E
+ 0D0A20202020202020203C7265637420783D22362220793D2231302220776964
+ 74683D22313222206865696768743D223332222F3E0D0A202020203C2F673E0D
+ 0A202020203C672066696C6C3D2223313937364432223E0D0A20202020202020
+ 203C7061746820643D224D31362C38682D3263302C312E312D302E392C322D32
+ 2C32732D322D302E392D322D32483863302C312E312D302E392C322D322C3276
+ 3263312E322C302C322E332D302E352C332D312E3463302E372C302E382C312E
+ 382C312E342C332C312E342073322E332D302E352C332D312E3463302E372C30
+ 2E382C312E382C312E342C332C312E34762D324331362E392C31302C31362C39
+ 2E312C31362C387A222F3E0D0A20202020202020203C7061746820643D224D31
+ 362C3134682D3263302C312E312D302E392C322D322C32732D322D302E392D32
+ 2D32483863302C312E312D302E392C322D322C32763263312E322C302C322E33
+ 2D302E352C332D312E3463302E372C302E382C312E382C312E342C332C312E34
+ 2073322E332D302E352C332D312E3463302E372C302E382C312E382C312E342C
+ 332C312E34762D324331362E392C31362C31362C31352E312C31362C31347A22
+ 2F3E0D0A20202020202020203C7061746820643D224D31362C3230682D326330
+ 2C312E312D302E392C322D322C32732D322D302E392D322D32483863302C312E
+ 312D302E392C322D322C32763263312E322C302C322E332D302E352C332D312E
+ 3463302E372C302E382C312E382C312E342C332C312E342073322E332D302E35
+ 2C332D312E3463302E372C302E382C312E382C312E342C332C312E34762D3243
+ 31362E392C32322C31362C32312E312C31362C32307A222F3E0D0A2020202020
+ 2020203C7061746820643D224D31362C3236682D3263302C312E312D302E392C
+ 322D322C32732D322D302E392D322D32483863302C312E312D302E392C322D32
+ 2C32763263312E322C302C322E332D302E352C332D312E3463302E372C302E38
+ 2C312E382C312E342C332C312E342073322E332D302E352C332D312E3463302E
+ 372C302E382C312E382C312E342C332C312E34762D324331362E392C32382C31
+ 362C32372E312C31362C32367A222F3E0D0A20202020202020203C7061746820
+ 643D224D31362C3332682D3263302C312E312D302E392C322D322C32732D322D
+ 302E392D322D32483863302C312E312D302E392C322D322C32763263312E322C
+ 302C322E332D302E352C332D312E3463302E372C302E382C312E382C312E342C
+ 332C312E342073322E332D302E352C332D312E3463302E372C302E382C312E38
+ 2C312E342C332C312E34762D324331362E392C33342C31362C33332E312C3136
+ 2C33327A222F3E0D0A20202020202020203C7061746820643D224D31362C3338
+ 682D3263302C312E312D302E392C322D322C32732D322D302E392D322D324838
+ 63302C312E312D302E392C322D322C32763263312E322C302C322E332D302E35
+ 2C332D312E3463302E372C302E382C312E382C312E342C332C312E342073322E
+ 332D302E352C332D312E3463302E372C302E382C312E382C312E342C332C312E
+ 34762D324331362E392C34302C31362C33392E312C31362C33387A222F3E0D0A
+ 20202020202020203C7061746820643D224D34302C3332682D3263302C312E31
+ 2D302E392C322D322C32732D322D302E392D322D32682D3263302C312E312D30
+ 2E392C322D322C32732D322D302E392D322D32682D3263302C312E312D302E39
+ 2C322D322C3276322063312E322C302C322E332D302E352C332D312E3463302E
+ 372C302E382C312E382C312E342C332C312E3473322E332D302E352C332D312E
+ 3463302E372C302E382C312E382C312E342C332C312E3473322E332D302E352C
+ 332D312E3463302E372C302E382C312E382C312E342C332C312E34762D322043
+ 34302E392C33342C34302C33332E312C34302C33327A222F3E0D0A2020202020
+ 2020203C7061746820643D224D34302C3236682D3263302C312E312D302E392C
+ 322D322C32732D322D302E392D322D32682D3263302C312E312D302E392C322D
+ 322C32732D322D302E392D322D32682D3263302C312E312D302E392C322D322C
+ 3276322063312E322C302C322E332D302E352C332D312E3463302E372C302E38
+ 2C312E382C312E342C332C312E3473322E332D302E352C332D312E3463302E37
+ 2C302E382C312E382C312E342C332C312E3473322E332D302E352C332D312E34
+ 63302E372C302E382C312E382C312E342C332C312E34762D32204334302E392C
+ 32382C34302C32372E312C34302C32367A222F3E0D0A20202020202020203C70
+ 61746820643D224D34302C3338682D3263302C312E312D302E392C322D322C32
+ 732D322D302E392D322D32682D3263302C312E312D302E392C322D322C327632
+ 63312E322C302C322E332D302E352C332D312E3463302E372C302E382C312E38
+ 2C312E342C332C312E342073322E332D302E352C332D312E3463302E372C302E
+ 382C312E382C312E342C332C312E34762D324334302E392C34302C34302C3339
+ 2E312C34302C33387A222F3E0D0A202020203C2F673E0D0A202020203C706174
+ 682066696C6C3D22233435354136342220643D224D32352E312C392E324C3331
+ 2E352C3432483138563668332E324332332E312C362C32342E382C372E342C32
+ 352E312C392E327A222F3E0D0A3C2F7376673E0D0A0A00000064006100740061
+ 005F00730068006500650074000F0200003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706174682066696C6C3D22233930434146392220643D224D33392C313676
+ 37682D36762D37682D327637682D36762D37682D327637682D37763268377636
+ 682D37763268377636682D3776326832355631364833397A204D33392C323576
+ 36682D36762D364833397A204D32352C323568367636682D365632357A204D32
+ 352C333368367636682D365633337A204D33332C3339762D3668367636483333
+ 7A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223303042434434
+ 2220706F696E74733D2234302C3820382C3820382C34302031362C3430203136
+ 2C31362034302C3136222F3E0D0A202020203C706174682066696C6C3D222330
+ 30393741372220643D224D372C37763334683130563137683234563748377A20
+ 4D392C3233762D366836763648397A204D31352C323576364839762D36483135
+ 7A204D31372C3968367636682D3656397A204D32352C3968367636682D365639
+ 7A204D31352C397636483956394831357A204D392C3339762D36683676364839
+ 7A204D33392C3135682D36563968365631357A222F3E0D0A3C2F7376673E0D0A
+ 040000006400650062007400300700003C7376672076657273696F6E3D223122
+ 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
+ 7667222076696577426F783D223020302034382034382220656E61626C652D62
+ 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
+ 3C706174682066696C6C3D22234646423734442220643D224D31302C3132632D
+ 322E382C302D352D322E322D352D3573322E322D352C352D3573352C322E322C
+ 352C355331322E382C31322C31302C31327A222F3E0D0A202020203C70617468
+ 2066696C6C3D22233630374438422220643D224D322C323276386C332C326C31
+ 2C313468386C312D31346C332D32762D3863302D342E342D332E362D382D382D
+ 38683043352E362C31342C322C31372E362C322C32327A222F3E0D0A20202020
+ 3C672066696C6C3D2223323633323338223E0D0A20202020202020203C706174
+ 6820643D224D32322E342C34302E34632D302E362C322E352D312C332E362D32
+ 2E342C332E36632D302E362C302D312E322D302E352D312E392D312E31632D31
+ 2D302E382D322E322D312E392D342E312D312E39763263312E312C302C312E39
+ 2C302E372C322E382C312E342063302E392C302E372C312E392C312E362C332E
+ 322C312E3663332E312C302C332E382D322E392C342E342D352E324332352C33
+ 382E322C32352E342C33372C32372C3337762D324332332E372C33352C32322E
+ 392C33382E312C32322E342C34302E347A222F3E0D0A20202020202020203C70
+ 6F6C79676F6E20706F696E74733D2231342E342C34302031302C34302031302C
+ 34342031342E312C3434222F3E0D0A202020203C2F673E0D0A202020203C6369
+ 72636C652066696C6C3D2223344341463530222063783D223336222063793D22
+ 33362220723D223130222F3E0D0A202020203C706174682066696C6C3D222366
+ 66662220643D224D33352C333463302E312C302E322C302E312C302E332C302E
+ 332C302E3463302E312C302E312C302E332C302E322C302E352C302E3463302E
+ 322C302E312C302E352C302E322C302E382C302E3363302E352C302E322C302E
+ 392C302E342C312E332C302E362063302E342C302E322C302E372C302E342C31
+ 2C302E3763302E332C302E332C302E352C302E362C302E372C302E3963302E32
+ 2C302E342C302E322C302E382C302E322C312E3363302C302E342D302E312C30
+ 2E382D302E322C312E32632D302E312C302E342D302E332C302E372D302E362C
+ 302E3920632D302E332C302E332D302E362C302E352D302E392C302E36632D30
+ 2E342C302E322D302E382C302E332D312E322C302E3376312E35682D312E3276
+ 2D312E35632D302E342C302D302E382D302E312D312E322D302E33632D302E34
+ 2D302E322D302E372D302E342D312D302E3620632D302E332D302E332D302E35
+ 2D302E362D302E372D312E31632D302E322D302E342D302E332D302E392D302E
+ 332D312E3568322E3263302C302E342C302C302E372C302E312C302E3963302E
+ 312C302E322C302E322C302E342C302E342C302E3663302E322C302E312C302E
+ 332C302E322C302E352C302E332063302E322C302E312C302E342C302E312C30
+ 2E362C302E3163302E322C302C302E342C302C302E362D302E3163302E322D30
+ 2E312C302E332D302E322C302E342D302E3363302E312D302E312C302E322D30
+ 2E332C302E332D302E3463302E312D302E322C302E312D302E332C302E312D30
+ 2E352063302D302E322C302D302E342D302E312D302E36632D302E312D302E32
+ 2D302E312D302E332D302E332D302E34632D302E312D302E312D302E332D302E
+ 332D302E352D302E34632D302E322D302E312D302E342D302E322D302E372D30
+ 2E33632D302E352D302E322D302E392D302E342D312E332D302E3620632D302E
+ 342D302E322D302E372D302E342D312D302E37632D302E332D302E332D302E35
+ 2D302E362D302E372D302E39632D302E322D302E342D302E322D302E382D302E
+ 322D312E3363302D302E342C302E312D302E382C302E322D312E3263302E312D
+ 302E332C302E332D302E372C302E362D302E392063302E332D302E332C302E36
+ 2D302E352C302E392D302E3663302E342D302E322C302E382D302E332C312E32
+ 2D302E33762D312E3668312E3276312E3663302E342C302E312C302E382C302E
+ 322C312E322C302E3463302E342C302E322C302E362C302E342C302E392C302E
+ 372063302E322C302E332C302E342C302E362C302E362C3163302E312C302E34
+ 2C302E322C302E392C302E322C312E34682D322E3263302D302E362D302E312D
+ 312D302E342D312E33632D302E322D302E332D302E362D302E342D312D302E34
+ 632D302E322C302D302E342C302D302E362C302E3120632D302E322C302E312D
+ 302E332C302E322D302E342C302E334333352E312C33322E372C33352C33322E
+ 382C33352C3333732D302E312C302E332D302E312C302E354333342E392C3333
+ 2E372C33342E392C33332E392C33352C33347A222F3E0D0A3C2F7376673E0D0A
+ 0A0000006400650070006100720074006D0065006E007400910300003C737667
+ 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
+ 332E6F72672F323030302F737667222076696577426F783D2230203020343820
+ 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
+ 38203438223E0D0A202020203C706F6C79676F6E2066696C6C3D222343354341
+ 45392220706F696E74733D2234322C343220362C343220362C392032342C3220
+ 34322C39222F3E0D0A202020203C7265637420783D22362220793D2234322220
+ 66696C6C3D2223394641384441222077696474683D2233362220686569676874
+ 3D2232222F3E0D0A202020203C7265637420783D2232302220793D2233352220
+ 66696C6C3D2223424633363043222077696474683D223822206865696768743D
+ 2239222F3E0D0A202020203C672066696C6C3D2223313536354330223E0D0A20
+ 202020202020203C7265637420783D2233312220793D22323722207769647468
+ 3D223622206865696768743D2235222F3E0D0A20202020202020203C72656374
+ 20783D2232312220793D223237222077696474683D223622206865696768743D
+ 2235222F3E0D0A20202020202020203C7265637420783D2231312220793D2232
+ 37222077696474683D223622206865696768743D2235222F3E0D0A2020202020
+ 2020203C7265637420783D2233312220793D223335222077696474683D223622
+ 206865696768743D2235222F3E0D0A20202020202020203C7265637420783D22
+ 31312220793D223335222077696474683D223622206865696768743D2235222F
+ 3E0D0A20202020202020203C7265637420783D2233312220793D223139222077
+ 696474683D223622206865696768743D2235222F3E0D0A20202020202020203C
+ 7265637420783D2232312220793D223139222077696474683D22362220686569
+ 6768743D2235222F3E0D0A20202020202020203C7265637420783D2231312220
+ 793D223139222077696474683D223622206865696768743D2235222F3E0D0A20
+ 202020202020203C7265637420783D2233312220793D22313122207769647468
+ 3D223622206865696768743D2235222F3E0D0A20202020202020203C72656374
+ 20783D2232312220793D223131222077696474683D223622206865696768743D
+ 2235222F3E0D0A20202020202020203C7265637420783D2231312220793D2231
+ 31222077696474683D223622206865696768743D2235222F3E0D0A202020203C
+ 2F673E0D0A3C2F7376673E0D0A0A0000006400650070006C006F0079006D0065
+ 006E007400D80400003C7376672076657273696F6E3D22312220786D6C6E733D
+ 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
+ 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
+ 6E643D226E657720302030203438203438223E0D0A202020203C706174682066
+ 696C6C3D22234230424543352220643D224D33372C3432483556333268333263
+ 322E382C302C352C322E322C352C3576304334322C33392E382C33392E382C34
+ 322C33372C34327A222F3E0D0A202020203C706174682066696C6C3D22233337
+ 343734462220643D224D31302C3334632D312E372C302D332C312E332D332C33
+ 73312E332C332C332C3373332D312E332C332D335331312E372C33342C31302C
+ 33347A204D31302C3338632D302E362C302D312D302E342D312D3163302D302E
+ 362C302E342D312C312D312073312C302E342C312C314331312C33372E362C31
+ 302E362C33382C31302C33387A222F3E0D0A202020203C706174682066696C6C
+ 3D22233337343734462220643D224D31392C3334632D312E372C302D332C312E
+ 332D332C3373312E332C332C332C3373332D312E332C332D335332302E372C33
+ 342C31392C33347A204D31392C3338632D302E362C302D312D302E342D312D31
+ 63302D302E362C302E342D312C312D312073312C302E342C312C314332302C33
+ 372E362C31392E362C33382C31392C33387A222F3E0D0A202020203C70617468
+ 2066696C6C3D22233337343734462220643D224D33372C3334632D312E372C30
+ 2D332C312E332D332C3373312E332C332C332C3373332D312E332C332D335333
+ 382E372C33342C33372C33347A204D33372C3338632D302E362C302D312D302E
+ 342D312D3163302D302E362C302E342D312C312D312073312C302E342C312C31
+ 4333382C33372E362C33372E362C33382C33372C33387A222F3E0D0A20202020
+ 3C706174682066696C6C3D22233337343734462220643D224D32382C3334632D
+ 312E372C302D332C312E332D332C3373312E332C332C332C3373332D312E332C
+ 332D335332392E372C33342C32382C33347A204D32382C3338632D302E362C30
+ 2D312D302E342D312D3163302D302E362C302E342D312C312D312073312C302E
+ 342C312C314332392C33372E362C32382E362C33382C32382C33387A222F3E0D
+ 0A202020203C706174682066696C6C3D22234646393830302220643D224D3335
+ 2C3331483131632D312E312C302D322D302E392D322D32563763302D312E312C
+ 302E392D322C322D3268323463312E312C302C322C302E392C322C3276323243
+ 33372C33302E312C33362E312C33312C33352C33317A222F3E0D0A202020203C
+ 706174682066696C6C3D22233841353130302220643D224D32362E352C313368
+ 2D37632D302E382C302D312E352D302E372D312E352D312E35763063302D302E
+ 382C302E372D312E352C312E352D312E35683763302E382C302C312E352C302E
+ 372C312E352C312E357630204332382C31322E332C32372E332C31332C32362E
+ 352C31337A222F3E0D0A202020203C706174682066696C6C3D22233630374438
+ 422220643D224D33372C33314835763268333263322E322C302C342C312E382C
+ 342C34732D312E382C342D342C344835763268333263332E332C302C362D322E
+ 372C362D365334302E332C33312C33372C33317A222F3E0D0A3C2F7376673E0D
+ 0A090000006400690070006C006F006D0061005F003100B60200003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C7265637420783D22342220793D2239222066696C
+ 6C3D2223453845414636222077696474683D22343022206865696768743D2233
+ 30222F3E0D0A202020203C672066696C6C3D2223354336424330223E0D0A2020
+ 2020202020203C706F6C79676F6E20706F696E74733D2233302C33342033322E
+ 382C33342032372E382C32392032352C33312E382033302C33362E38222F3E0D
+ 0A20202020202020203C706F6C79676F6E20706F696E74733D2231382C333420
+ 31352E322C33342032302E322C32392032332C33312E382031382C33362E3822
+ 2F3E0D0A202020203C2F673E0D0A202020203C7265637420783D223131222079
+ 3D223135222066696C6C3D2223394641384441222077696474683D2232362220
+ 6865696768743D2234222F3E0D0A202020203C706174682066696C6C3D222339
+ 46413844412220643D224D32342C3233632D322E382C302D352C322E322D352C
+ 3573322E322C352C352C3573352D322E322C352D355332362E382C32332C3234
+ 2C32337A204D32342C3331632D312E372C302D332D312E332D332D3373312E33
+ 2D332C332D3373332C312E332C332C33205332352E372C33312C32342C33317A
+ 222F3E0D0A202020203C706174682066696C6C3D22233946413844412220643D
+ 224D332C38763332683432563848337A204D34332C3335632D312E372C302D33
+ 2C312E332D332C33483863302D312E372D312E332D332D332D3356313363312E
+ 372C302C332D312E332C332D3368333263302C312E372C312E332C332C332C33
+ 5633357A222F3E0D0A3C2F7376673E0D0A090000006400690070006C006F006D
+ 0061005F003200F60200003C7376672076657273696F6E3D22312220786D6C6E
+ 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E657720302030203438203438223E0D0A202020203C72656374
+ 20783D22392220793D2234222066696C6C3D2223464245394537222077696474
+ 683D22333022206865696768743D223430222F3E0D0A202020203C672066696C
+ 6C3D2223463435313145223E0D0A20202020202020203C706F6C79676F6E2070
+ 6F696E74733D2233302C33372033322E382C33372032372E382C33322032352C
+ 33342E382033302C33392E38222F3E0D0A20202020202020203C706F6C79676F
+ 6E20706F696E74733D2231382C33372031352E322C33372032302E322C333220
+ 32332C33342E382031382C33392E38222F3E0D0A202020203C2F673E0D0A2020
+ 20203C7265637420783D2231352220793D223133222066696C6C3D2223464638
+ 413635222077696474683D22313822206865696768743D2234222F3E0D0A2020
+ 20203C7265637420783D2231352220793D223230222066696C6C3D2223464638
+ 413635222077696474683D22313822206865696768743D2232222F3E0D0A2020
+ 20203C706174682066696C6C3D22234646384136352220643D224D32342C3236
+ 632D322E382C302D352C322E322D352C3573322E322C352C352C3573352D322E
+ 322C352D355332362E382C32362C32342C32367A204D32342C3334632D312E37
+ 2C302D332D312E332D332D3373312E332D332C332D3373332C312E332C332C33
+ 205332352E372C33342C32342C33347A222F3E0D0A202020203C706174682066
+ 696C6C3D22234646384136352220643D224D382C33763432683332563348387A
+ 204D33382C3430632D312E372C302D332C312E332D332C3348313363302D312E
+ 372D312E332D332D332D33563863312E372C302C332D312E332C332D33683232
+ 63302C312E372C312E332C332C332C335634307A222F3E0D0A3C2F7376673E0D
+ 0A0700000064006900730070006C0061007900140300003C7376672076657273
+ 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
+ 2F323030302F737667222076696577426F783D22302030203438203438222065
+ 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
+ 3E0D0A202020203C706174682066696C6C3D22233830444545412220643D224D
+ 34302C34314838632D322E322C302D342D312E382D342D3456313163302D322E
+ 322C312E382D342C342D3468333263322E322C302C342C312E382C342C347632
+ 364334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A202020
+ 203C672066696C6C3D2223323936324646223E0D0A20202020202020203C706F
+ 6C79676F6E20706F696E74733D2233362C31372033312C31372032392C313520
+ 33312C31332033362C31332033382C3135222F3E0D0A20202020202020203C70
+ 6F6C79676F6E20706F696E74733D2233362C33352033312C33352032392C3333
+ 2033312C33312033362C33312033382C3333222F3E0D0A20202020202020203C
+ 706F6C79676F6E20706F696E74733D2233372C33302033372C31382033392C31
+ 362034312C31382034312C33302033392C3332222F3E0D0A2020202020202020
+ 3C706F6C79676F6E20706F696E74733D2232362C33302032362C31382032382C
+ 31362033302C31382033302C33302032382C3332222F3E0D0A20202020202020
+ 203C706F6C79676F6E20706F696E74733D2231372C31372031322C3137203130
+ 2C31352031322C31332031372C31332031392C3135222F3E0D0A202020202020
+ 20203C706F6C79676F6E20706F696E74733D2231372C33352031322C33352031
+ 302C33332031322C33312031372C33312031392C3333222F3E0D0A2020202020
+ 2020203C706F6C79676F6E20706F696E74733D2231382C33302031382C313820
+ 32302C31362032322C31382032322C33302032302C3332222F3E0D0A20202020
+ 202020203C706F6C79676F6E20706F696E74733D22372C333020372C31382039
+ 2C31362031312C31382031312C333020392C3332222F3E0D0A202020203C2F67
+ 3E0D0A3C2F7376673E0D0A0800000064006F00630075006D0065006E007400E9
+ 0100003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
+ 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
+ 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
+ 7720302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C
+ 3D22233930434146392220706F696E74733D2234302C343520382C343520382C
+ 332033302C332034302C3133222F3E0D0A202020203C706F6C79676F6E206669
+ 6C6C3D22234531463546452220706F696E74733D2233382E352C31342032392C
+ 31342032392C342E35222F3E0D0A202020203C672066696C6C3D222331393736
+ 4432223E0D0A20202020202020203C7265637420783D2231362220793D223231
+ 222077696474683D22313722206865696768743D2232222F3E0D0A2020202020
+ 2020203C7265637420783D2231362220793D223235222077696474683D223133
+ 22206865696768743D2232222F3E0D0A20202020202020203C7265637420783D
+ 2231362220793D223239222077696474683D22313722206865696768743D2232
+ 222F3E0D0A20202020202020203C7265637420783D2231362220793D22333322
+ 2077696474683D22313322206865696768743D2232222F3E0D0A202020203C2F
+ 673E0D0A3C2F7376673E0D0A0600000064006F006E0061007400650009040000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 4536393332392220706F696E74733D2231312E372C32312E362031362E382C33
+ 312E352032362E332C32372E362033302E372C31342E392031352E392C31352E
+ 37222F3E0D0A202020203C636972636C652066696C6C3D222335343645374122
+ 2063783D223135222063793D2233362220723D22372E38222F3E0D0A20202020
+ 3C672066696C6C3D2223393041344145223E0D0A20202020202020203C706174
+ 6820643D224D31352C3237632D352C302D392C342D392C3963302C352C342C39
+ 2C392C3973392D342C392D394332342C33312C32302C32372C31352C32377A20
+ 4D31352C3433632D332E392C302D372D332E312D372D3763302D332E392C332E
+ 312D372C372D372073372C332E312C372C374332322C33392E392C31382E392C
+ 34332C31352C34337A222F3E0D0A20202020202020203C7265637420783D2231
+ 342220793D223333222077696474683D223222206865696768743D2238222F3E
+ 0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223464642373444
+ 223E0D0A20202020202020203C7061746820643D224D31322E392C33364C3132
+ 2E392C333663312C312E392C332E322C322E372C352E312C312E376C31362E35
+ 2D382E3563312D302E352C312E372D312E322C322E322D312E3963312E372D33
+ 2E322C352E362D31302E372C382E322D31372E32206C2D31382E322C382E374C
+ 32312E392C32366C2D362E382C332E364331322E352C33302E392C31312E372C
+ 33332E382C31322E392C33367A222F3E0D0A20202020202020203C7061746820
+ 643D224D33302E322C334C31332E372C392E33632D302E372C302E322D312E35
+ 2C312D322E322C312E376C2D352E362C372E35632D312C312E352D312E322C33
+ 2E342D302E352C352E3163302E342C312C312E372C332E342C332E312C362E31
+ 2063312E362D312E372C332E392D322E372C362E352D322E3763302E342C302C
+ 302E392C302C312E332C302E316C2D322E312D342E326C342E362D342E316838
+ 63302C302C31352E352D322E322C31382E322D382E374C33302E322C337A222F
+ 3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C3D22234646
+ 434444322220643D224D31382E322C3336632D312E332C302E362D322E382C30
+ 2D332E332D312E33632D302E362D312E332C302D322E382C312E332D332E3343
+ 31372E342C33302E382C31392E342C33352E342C31382E322C33367A222F3E0D
+ 0A3C2F7376673E0D0A0E00000064006F007500670068006E00750074005F0063
+ 006800610072007400C70100003C7376672076657273696F6E3D22312220786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 2076696577426F783D223020302034382034382220656E61626C652D6261636B
+ 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
+ 74682066696C6C3D22233030424344342220643D224D32342C3330632D332E33
+ 2C302D362D322E372D362D3673322E372D362C362D3656354331332E352C352C
+ 352C31332E352C352C323473382E352C31392C31392C313963342E342C302C38
+ 2E352D312E352C31312E382D342E316C2D382D31302E32204332362E372C3239
+ 2E352C32352E342C33302C32342C33307A222F3E0D0A202020203C7061746820
+ 66696C6C3D22233434384146462220643D224D33302C323468313363302D3130
+ 2E352D382E352D31392D31392D31397631334332372E332C31382C33302C3230
+ 2E372C33302C32347A222F3E0D0A202020203C706174682066696C6C3D222333
+ 46353142352220643D224D34332C323448333063302C312E392D302E392C332E
+ 362D322E332C342E376C382C31302E324334302E322C33352E342C34332C3330
+ 2C34332C32347A222F3E0D0A3C2F7376673E0D0A0400000064006F0077006E00
+ FD0000003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C672066696C6C3D22233346
+ 35314235223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D
+ 2232342C34342031322E332C33302033352E372C3330222F3E0D0A2020202020
+ 2020203C7265637420783D2232302220793D2236222077696474683D22382220
+ 6865696768743D223237222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D
+ 0A0900000064006F0077006E005F006C006500660074000F0100003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22233346353142
+ 352220706F696E74733D22342C32392031382C31372E332031382C34302E3722
+ 2F3E0D0A202020203C706174682066696C6C3D22233346353142352220643D22
+ 4D34322C32315638682D3876313363302C322E322D312E382C342D342C344831
+ 3376386831374333362E362C33332C34322C32372E362C34322C32317A222F3E
+ 0D0A3C2F7376673E0D0A0A00000064006F0077006E005F007200690067006800
+ 74000C0100003C7376672076657273696F6E3D22312220786D6C6E733D226874
+ 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
+ 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
+ 226E657720302030203438203438223E0D0A202020203C706F6C79676F6E2066
+ 696C6C3D22233346353142352220706F696E74733D2234342C32392033302C31
+ 372E332033302C34302E37222F3E0D0A202020203C706174682066696C6C3D22
+ 233346353142352220643D224D362C32315638683876313363302C322E322C31
+ 2E382C342C342C3468313776384831384331312E342C33332C362C32372E362C
+ 362C32317A222F3E0D0A3C2F7376673E0D0A0800000064006F0077006E006C00
+ 6F0061006400970100003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C672066696C
+ 6C3D2223313536354330223E0D0A20202020202020203C706F6C79676F6E2070
+ 6F696E74733D2232342C33372E312031332C32342033352C3234222F3E0D0A20
+ 202020202020203C7265637420783D2232302220793D2234222077696474683D
+ 223822206865696768743D2234222F3E0D0A20202020202020203C7265637420
+ 783D2232302220793D223130222077696474683D223822206865696768743D22
+ 34222F3E0D0A20202020202020203C7265637420783D2232302220793D223136
+ 222077696474683D223822206865696768743D223131222F3E0D0A2020202020
+ 2020203C7265637420783D22362220793D223430222077696474683D22333622
+ 206865696768743D2234222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D
+ 0A080000006400720069006200620062006C006500ED0500003C3F786D6C2076
+ 657273696F6E3D22312E302220656E636F64696E673D227574662D38223F3E0D
+ 0A3C212D2D2047656E657261746F723A2041646F626520496C6C757374726174
+ 6F722031352E302E302C20535647204578706F727420506C75672D496E202E20
+ 5356472056657273696F6E3A20362E3030204275696C6420302920202D2D3E0D
+ 0A3C21444F435459504520737667205055424C494320222D2F2F5733432F2F44
+ 54442053564720312E312F2F454E222022687474703A2F2F7777772E77332E6F
+ 72672F47726170686963732F5356472F312E312F4454442F73766731312E6474
+ 64223E0D0A3C7376672076657273696F6E3D22312E31222020786D6C6E733D22
+ 687474703A2F2F7777772E77332E6F72672F323030302F7376672220786D6C6E
+ 733A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F313939392F
+ 786C696E6B2220783D223070782220793D22307078220D0A092077696474683D
+ 223438707822206865696768743D2234387078222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 3020302034382034382220786D6C3A73706163653D227072657365727665223E
+ 0D0A3C706174682066696C6C3D22234646343038312220643D224D34322C3337
+ 63302C322E3736322D322E3233382C352D352C35483131632D322E3736312C30
+ 2D352D322E3233382D352D3556313163302D322E3736322C322E3233392D352C
+ 352D3568323663322E3736322C302C352C322E3233382C352C355633377A222F
+ 3E0D0A3C706174682066696C6C3D22234646464646462220643D224D33332E30
+ 36312C32362E323733632D302E3730332D302E3232312D312E3436342C302E31
+ 37352D312E3638362C302E383935632D302E3832342C322E3635382D322E3331
+ 362C352E3431392D322E3939332C352E35370D0A09632D302E3530372C302D31
+ 2E3233362D302E34332D312E3935382D312E343463312E3637342D332E353934
+ 2C322E3535312D382E3130362C322E3535312D31312E31313863302D382E3431
+ 332D322E3132342D31302E31382D332E3930382D31302E31380D0A09632D332E
+ 3735372C302D332E382C392E3931322D332E382C31302E30313263302C312E31
+ 36362C302E3034322C322E3234382C302E3132312C332E323536632D302E3531
+ 382D302E3138392D312E3131332D302E3331392D312E37372D302E3331390D0A
+ 09632D332E38362C302D352E3631382C332E3830392D352E3631382C372E3334
+ 374331342C33332E36332C31352E3837312C33372C32302E3034362C33376331
+ 2E3937322C302C332E3633342D312E3239312C342E3937352D332E3232310D0A
+ 0963312E3138382C312E3233352C322E3433322C312E3639362C332E33362C31
+ 2E36393663322E3932332C302C342E3835382D352E3233332C352E3535362D37
+ 2E3438364333342E31362C32372E32372C33332E3736372C32362E3530322C33
+ 332E3036312C32362E3237337A204D32302E3034382C33342E3236340D0A0963
+ 2D332E3033312C302D332E33362D322E3737352D332E33362D332E3936396330
+ 2D302E3138382C302E3033342D342E3631312C322E3933322D342E3631316331
+ 2E3134342C302C322E3032322C302E3838352C322E3032322C302E3838350D0A
+ 0963302E3036352C302E30372C302E3133372C302E3133312C302E3231322C30
+ 2E31383463302E3337352C312E3930342C302E3930342C332E3432362C312E35
+ 31362C342E3633324332322E3336362C33332E3132332C32312E3230332C3334
+ 2E3236342C32302E3034382C33342E3236347A0D0A09204D32342E3930312C32
+ 372E393236632D302E3535392D312E39332D302E3934362D342E3532312D302E
+ 3934362D372E39313463302D332E3132362C302E3636362D362E3036382C312E
+ 3231392D372E30373363302E3432342C302E3634342C312E3131352C322E3635
+ 2C312E3131352C372E3234310D0A094332362E3238392C32322E3631362C3235
+ 2E37352C32352E3434362C32342E3930312C32372E3932367A222F3E0D0A3C2F
+ 7376673E0D0A080000006400760064005F006C006F0067006F00660700003C3F
+ 786D6C2076657273696F6E3D22312E302220656E636F64696E673D227574662D
+ 38223F3E0D0A3C212D2D2047656E657261746F723A2041646F626520496C6C75
+ 73747261746F722031352E302E302C20535647204578706F727420506C75672D
+ 496E202E205356472056657273696F6E3A20362E3030204275696C6420302920
+ 202D2D3E0D0A3C21444F435459504520737667205055424C494320222D2F2F57
+ 33432F2F4454442053564720312E312F2F454E222022687474703A2F2F777777
+ 2E77332E6F72672F47726170686963732F5356472F312E312F4454442F737667
+ 31312E647464223E0D0A3C7376672076657273696F6E3D22312E31222020786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 20786D6C6E733A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F
+ 313939392F786C696E6B2220783D223070782220793D22307078220D0A092077
+ 696474683D223438707822206865696768743D2234387078222076696577426F
+ 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
+ 226E6577203020302034382034382220786D6C3A73706163653D227072657365
+ 727665223E0D0A3C706174682066696C6C3D22233432413546352220643D224D
+ 32342E3030322C3237632D31322E3135342C302D32322C312E3334332D32322C
+ 332E30303663302C312E3635332C392E3834352C322E3939342C32322C322E39
+ 39346331322E3135362C302C32322D312E3334312C32322D322E3939340D0A09
+ 4334362E3030322C32382E3334332C33362E3135382C32372C32342E3030322C
+ 32377A204D32342E3030322C33302E393732632D322E3836332C302D352E3139
+ 312D302E3439342D352E3139312D312E31303463302D302E3630392C322E3332
+ 392D312E3130342C352E3139312D312E3130340D0A0963322E3836322C302C35
+ 2E3139332C302E3439352C352E3139332C312E3130344332392E3139352C3330
+ 2E3437382C32362E3836342C33302E3937322C32342E3030322C33302E393732
+ 7A222F3E0D0A3C706174682066696C6C3D22233135363543302220643D224D32
+ 312E32392C31356C322E3337312C362E34334C32392E32352C313568392E3438
+ 3663342E3634372C302C372E3930362C322E3134382C372E3135382C342E3930
+ 34632D302E3734352C322E3735362D352E3137382C342E3930342D392E383033
+ 2C342E3930340D0A09682D362E32393563302C302C302E3134312D302E303433
+ 2C302E3137322D302E31323663302E3234362D302E3934342C312E3730372D36
+ 2E3236342C312E3732352D362E33343763302E30322D302E3130322D302E3130
+ 352D302E3133332D302E3130352D302E31333368342E3537320D0A0963302C30
+ 2D302E3038382D302E3030362D302E3132352C302E313333632D302E3032332C
+ 302E3037382D302E3934372C332E3432392D312E3134352C342E313736632D30
+ 2E3032332C302E3039342D302E3136322C302E3133392D302E3136322C302E31
+ 333968312E3039340D0A0963322E3539342C302C352E3034372D302E3832382C
+ 352E3536332D322E37343863302E3437332D312E3735322D312E3234342D322E
+ 3734362D342E3033392D322E373436682D312E3031346C2D342E3337352C302E
+ 3030346C2D31302E3034332C392E3933326C2D332E3834352D392E3735340D0A
+ 0963302C302D302E3033362D302E3036362D302E3036352D302E313437632D30
+ 2E3031342D302E3032362D302E3130382D302E3130362D302E3230362D302E30
+ 3633632D302E3036352C302E3033362D302E3037342C302E3131372D302E3036
+ 362C302E3134360D0A0963302E3033362C302E3036362C302E3034322C302E30
+ 382C302E3034382C302E31313163302E3536392C302E39332C302E3436372C32
+ 2E3030392C302E33332C322E3532632D302E3737342C322E37352D352E313836
+ 2C342E3930342D392E3831322C342E39303448322E3030320D0A0963302C302C
+ 302E3134392D302E3034332C302E3137322D302E31323663302E3235342D302E
+ 3934362C312E3731372D362E3239342C312E3732362D362E33343763302E3031
+ 382D302E30392D302E3039392D302E3133332D302E3039392D302E3133336834
+ 2E3630340D0A0963302C302D302E3133322C302E3033372D302E3135382C302E
+ 313331632D302E3032342C302E3037382D302E3935342C332E3433322D312E31
+ 35312C342E313738632D302E3032332C302E3039342D302E3137382C302E3133
+ 392D302E3137382C302E31333968312E3131380D0A0963322E3539372C302C35
+ 2E3033322D302E3832382C352E3534372D322E37343863302E3437322D312E37
+ 35322D312E32332D322E3734362D342E3032312D322E37343648382E35333968
+ 2D342E343563302C302C302E3132352D302E3035392C302E3134372D302E3133
+ 390D0A0963302E3132332D302E3434332C302E3439372D312E3833342C302E35
+ 31352D312E38393943342E3737312C31352E3034372C342E3634362C31352C34
+ 2E3634362C31354832312E32394C32312E32392C31357A222F3E0D0A3C2F7376
+ 673E0D0A1100000065006C0065006300740072006900630061006C005F007300
+ 65006E0073006F0072001A0200003C7376672076657273696F6E3D2231222078
+ 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
+ 222076696577426F783D223020302034382034382220656E61626C652D626163
+ 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C63
+ 6972636C652066696C6C3D2223423245424632222063783D223332222063793D
+ 2232342220723D2239222F3E0D0A202020203C706174682066696C6C3D222334
+ 44443045312220643D224D33322C3132632D362E362C302D31322C352E342D31
+ 322C313263302C362E362C352E342C31322C31322C31327331322D352E342C31
+ 322D31324334342C31372E342C33382E362C31322C33322C31327A204D33322C
+ 333220632D342E342C302D382D332E362D382D3873332E362D382C382D387338
+ 2C332E362C382C385333362E342C33322C33322C33327A222F3E0D0A20202020
+ 3C672066696C6C3D2223334635314235223E0D0A20202020202020203C706F6C
+ 79676F6E20706F696E74733D2232352E342C32322031392E382C352E31203133
+ 2E362C32372E372031312E342C323220342C323220342C323620382E362C3236
+ 2031342E342C34302E332032302E322C31382E392032322E362C32362033302C
+ 32362033302C3232222F3E0D0A20202020202020203C636972636C652063783D
+ 223332222063793D2232342220723D2234222F3E0D0A202020203C2F673E0D0A
+ 3C2F7376673E0D0A1400000065006C0065006300740072006900630061006C00
+ 5F007400680072006500730068006F006C006400F20100003C73766720766572
+ 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
+ 672F323030302F737667222076696577426F783D223020302034382034382220
+ 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
+ 223E0D0A202020203C7265637420783D22332220793D223132222066696C6C3D
+ 2223383044454541222077696474683D22343222206865696768743D22323422
+ 2F3E0D0A202020203C7265637420783D22332220793D223233222066696C6C3D
+ 2223303341394634222077696474683D22343222206865696768743D2232222F
+ 3E0D0A202020203C706174682066696C6C3D226E6F6E6522207374726F6B653D
+ 222333463531423522207374726F6B652D77696474683D223422207374726F6B
+ 652D6D697465726C696D69743D2231302220643D224D342C31386C342E352D31
+ 2E3563302E392D302E332C312E392C302E312C322E332C302E396C382E372C31
+ 342E332063302E372C312E322C322E342C312E332C332E322C302E326C322E33
+ 2D322E3863302E352D302E362C312E342D302E392C322E322D302E366C332C31
+ 63312C302E332C322E312D302E322C322E352D312E316C342E332D31302E3163
+ 302E352D312E312C312E392D312E362C322E392D302E396C342C322E37222F3E
+ 0D0A3C2F7376673E0D0A0B00000065006C006500630074007200690063006900
+ 74007900E70000003C7376672076657273696F6E3D22312220786D6C6E733D22
+ 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
+ 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
+ 643D226E657720302030203438203438223E0D0A202020203C70617468206669
+ 6C6C3D22233030424344342220643D224D33332E372C354C32322C31376C3135
+ 2C354C32312E332C33362E376C352E312C322E384C31322C34336C322E372D31
+ 342E386C322E392C352E314C32372C32346C2D31352D354C32352C354833332E
+ 377A222F3E0D0A3C2F7376673E0D0A0F00000065006C0065006300740072006F
+ 005F006400650076006900630065007300490100003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D22302030203438203438223E0D0A20
+ 2020203C706174682066696C6C3D22233346353142352220643D224D33392C34
+ 334839632D322E322C302D342D312E382D342D34563963302D322E322C312E38
+ 2D342C342D3468333063322E322C302C342C312E382C342C347633304334332C
+ 34312E322C34312E322C34332C33392C34337A222F3E0D0A202020203C706174
+ 682066696C6C3D22233830444545412220643D224D33332E322C356C2D392E38
+ 2C31302E314C33362C31392E334C32322E382C33312E376C342E332C322E344C
+ 31352C33376C322E332D31322E356C322E342C342E336C382D372E384C31352C
+ 31362E384C32352E392C354833332E327A222F3E0D0A3C2F7376673E0D0A0B00
+ 000065006C0065006300740072006F006E00690063007300000200003C737667
+ 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
+ 332E6F72672F323030302F737667222076696577426F783D2230203020343820
+ 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
+ 38203438223E0D0A202020203C706174682066696C6C3D222346463938303022
+ 20643D224D34342C3138762D344833345634682D34763130682D345634682D34
+ 763130682D345634682D34763130483476346831307634483476346831307634
+ 4834763468313076313068345633346834763130683456333468347631306834
+ 563334683130762D3448333420762D34683130762D34483334762D344834347A
+ 222F3E0D0A202020203C706174682066696C6C3D22233443414635302220643D
+ 224D382C313276323463302C322E322C312E382C342C342C3468323463322E32
+ 2C302C342D312E382C342D3456313263302D322E322D312E382D342D342D3448
+ 313243392E382C382C382C392E382C382C31327A222F3E0D0A202020203C7061
+ 74682066696C6C3D22233337343734462220643D224D33312C3331483137632D
+ 312E312C302D322D302E392D322D3256313963302D312E312C302E392D322C32
+ 2D3268313463312E312C302C322C302E392C322C327631304333332C33302E31
+ 2C33322E312C33312C33312C33317A222F3E0D0A3C2F7376673E0D0A0D000000
+ 65006D007000740079005F006200610074007400650072007900720100003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C672066696C6C3D2223434644384443223E
+ 0D0A20202020202020203C7061746820643D224D33342C3434483134632D312E
+ 312C302D322D302E392D322D32563863302D312E312C302E392D322C322D3268
+ 323063312E312C302C322C302E392C322C327633344333362C34332E312C3335
+ 2E312C34342C33342C34347A222F3E0D0A20202020202020203C706174682064
+ 3D224D32382C3133682D38632D302E362C302D312D302E342D312D3156356330
+ 2D302E362C302E342D312C312D31683863302E362C302C312C302E342C312C31
+ 76374332392C31322E362C32382E362C31332C32382C31337A222F3E0D0A2020
+ 20203C2F673E0D0A3C2F7376673E0D0A0C00000065006D007000740079005F00
+ 660069006C00740065007200740100003C7376672076657273696F6E3D223122
+ 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
+ 7667222076696577426F783D223020302034382034382220656E61626C652D62
+ 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
+ 3C672066696C6C3D2223464643433830223E0D0A20202020202020203C706F6C
+ 79676F6E20706F696E74733D2232392C32332031392C323320372C392034312C
+ 39222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D2232
+ 392C33382031392C34342031392C32332032392C3233222F3E0D0A2020202020
+ 2020203C7061746820643D224D34312E352C39682D333543352E372C392C352C
+ 382E332C352C372E35763043352C362E372C352E372C362C362E352C36683335
+ 4334322E332C362C34332C362E372C34332C372E3576304334332C382E332C34
+ 322E332C392C34312E352C397A222F3E0D0A202020203C2F673E0D0A3C2F7376
+ 673E0D0A0B00000065006D007000740079005F00740072006100730068005B01
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C706174682066696C6C3D222342
+ 33394444422220643D224D33302E362C34344831372E34632D322C302D332E37
+ 2D312E342D342D332E344C392C31316833306C2D342E352C32392E364333342E
+ 322C34322E362C33322E352C34342C33302E362C34347A222F3E0D0A20202020
+ 3C706174682066696C6C3D22233745353743322220643D224D33382C31334831
+ 30632D312E312C302D322D302E392D322D32763063302D312E312C302E392D32
+ 2C322D3268323863312E312C302C322C302E392C322C3276304334302C31322E
+ 312C33392E312C31332C33382C31337A222F3E0D0A3C2F7376673E0D0A080000
+ 0065006E0064005F00630061006C006C00FE0100003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22234634343333362220643D224D3433
+ 2E352C31362E386C2D322E332D322E33632D382E312D372E392D32372E352D36
+ 2E382D33342E352C306C2D322E332C322E33632D302E362C302E362D302E362C
+ 312E362C302C322E336C342E362C342E352063302E362C302E362C312E372C30
+ 2E362C322E332C306C352E312D342E394C31362C31332E3463312E362D312E36
+ 2C31342E342D312E362C31362C306C2D302E332C352E356C342E392C342E3763
+ 302E362C302E362C312E372C302E362C322E332C306C342E362D342E35204334
+ 342E322C31382E342C34342E322C31372E342C34332E352C31362E387A222F3E
+ 0D0A202020203C672066696C6C3D2223423731433143223E0D0A202020202020
+ 20203C706F6C79676F6E20706F696E74733D2232342C34302E352031362C3331
+ 2033322C3331222F3E0D0A20202020202020203C7265637420783D2232312220
+ 793D223234222077696474683D223622206865696768743D22372E35222F3E0D
+ 0A202020203C2F673E0D0A3C2F7376673E0D0A0B00000065006E00670069006E
+ 0065006500720069006E0067005B0400003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706174682066696C6C3D22234546364330302220643D224D33372E342C32
+ 342E366C2D31312E362D322E326C2D332E392D31312E326C2D332E382C312E33
+ 4C32322C32332E366C2D372E382C396C332C322E366C372E382D396C31312E36
+ 2C322E324C33372E342C32342E367A222F3E0D0A202020203C672066696C6C3D
+ 2223464639383030223E0D0A20202020202020203C7061746820643D224D3234
+ 2C3139632D322E382C302D352C322E322D352C3563302C322E382C322E322C35
+ 2C352C3573352D322E322C352D354332392C32312E322C32362E382C31392C32
+ 342C31397A204D32342C3236632D312E312C302D322D302E392D322D32206330
+ 2D312E312C302E392D322C322D3273322C302E392C322C324332362C32352E31
+ 2C32352E312C32362C32342C32367A222F3E0D0A20202020202020203C706174
+ 6820643D224D34302E372C323763302E322D312C302E332D322C302E332D3363
+ 302D312D302E312D322D302E332D336C332E332D322E3463302E342D302E332C
+ 302E362D302E392C302E332D312E344C34302C392E3820632D302E332D302E35
+ 2D302E382D302E372D312E332D302E344C33352C3131632D312E352D312E332D
+ 332E332D322E332D352E322D336C2D302E342D342E31632D302E312D302E352D
+ 302E352D302E392D312D302E39682D382E36632D302E352C302D312C302E342D
+ 312C302E394C31382E322C3820632D312E392C302E372D332E372C312E372D35
+ 2E322C334C392E332C392E3343382E382C392E312C382E322C392E332C382C39
+ 2E386C2D342E332C372E34632D302E332C302E352D302E312C312E312C302E33
+ 2C312E344C372E332C323143372E312C32322C372C32332C372C32342063302C
+ 312C302E312C322C302E332C334C342C32392E34632D302E342C302E332D302E
+ 362C302E392D302E332C312E344C382C33382E3263302E332C302E352C302E38
+ 2C302E372C312E332C302E344C31332C333763312E352C312E332C332E332C32
+ 2E332C352E322C336C302E342C342E312063302E312C302E352C302E352C302E
+ 392C312C302E3968382E3663302E352C302C312D302E342C312D302E396C302E
+ 342D342E3163312E392D302E372C332E372D312E372C352E322D336C332E372C
+ 312E3763302E352C302E322C312E312C302C312E332D302E346C342E332D372E
+ 342063302E332D302E352C302E312D312E312D302E332D312E344C34302E372C
+ 32377A204D32342C3335632D362E312C302D31312D342E392D31312D31316330
+ 2D362E312C342E392D31312C31312D31317331312C342E392C31312C31314333
+ 352C33302E312C33302E312C33352C32342C33357A222F3E0D0A202020203C2F
+ 673E0D0A3C2F7376673E0D0A1500000065006E0074006500720069006E006700
+ 5F00680065006100760065006E005F0061006C00690076006500A70200003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C7265637420783D2231372220793D223239
+ 222066696C6C3D2223303339424535222077696474683D223134222068656967
+ 68743D2232222F3E0D0A202020203C7265637420783D2231332220793D223333
+ 222066696C6C3D2223303339424535222077696474683D223232222068656967
+ 68743D2232222F3E0D0A202020203C7265637420783D22392220793D22333722
+ 2066696C6C3D2223303339424535222077696474683D22333022206865696768
+ 743D2232222F3E0D0A202020203C7265637420783D22352220793D2234312220
+ 66696C6C3D2223303339424535222077696474683D2233382220686569676874
+ 3D2232222F3E0D0A202020203C706174682066696C6C3D222338314434464122
+ 20643D224D33352C3133632D302E342C302D302E382C302D312E322C302E3143
+ 33322E392C382E352C32382E392C352C32342C35632D342E312C302D372E362C
+ 322E352D392E322C36632D302E332C302D302E352C302D302E382C3020632D34
+ 2E342C302D382C332E362D382C3873332E362C382C382C3863322E342C302C31
+ 382E352C302C32312C3063332E392C302C372D332E312C372D374334322C3136
+ 2E312C33382E392C31332C33352C31337A222F3E0D0A202020203C7061746820
+ 66696C6C3D22233033394245352220643D224D32382C323163302D322E322D31
+ 2E382D342D342D34732D342C312E382D342C3463302C302E352C302C362C302C
+ 3668384332382C32372C32382C32312E352C32382C32317A222F3E0D0A3C2F73
+ 76673E0D0A0600000065007800700061006E006400C80000003C737667207665
+ 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
+ 72672F323030302F737667222076696577426F783D2230203020343820343822
+ 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
+ 38223E0D0A202020203C706F6C79676F6E2066696C6C3D222332313936463322
+ 20706F696E74733D2234332C31372E312033392E392C31342032342C32392E39
+ 20382E312C313420352C31372E312032342C3336222F3E0D0A3C2F7376673E0D
+ 0A060000006500780070006F0072007400710100003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22234646434342432220643D224D372C
+ 3430563863302D322E322C312E382D342C342D3468323463322E322C302C342C
+ 312E382C342C3476333263302C322E322D312E382C342D342C3448313143382E
+ 382C34342C372C34322E322C372C34307A222F3E0D0A202020203C672066696C
+ 6C3D2223464635373232223E0D0A20202020202020203C706F6C79676F6E2070
+ 6F696E74733D2234322E372C32342033322C33332033322C3135222F3E0D0A20
+ 202020202020203C7265637420783D2231342220793D22323122207769647468
+ 3D22323322206865696768743D2236222F3E0D0A202020203C2F673E0D0A3C2F
+ 7376673E0D0A08000000650078007400650072006E0061006C00300100003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C636972636C652066696C6C3D2223423244
+ 464442222063783D223234222063793D2233312220723D223134222F3E0D0A20
+ 2020203C672066696C6C3D2223303039363838223E0D0A20202020202020203C
+ 706F6C79676F6E20706F696E74733D2232342C332E332033332C31342031352C
+ 3134222F3E0D0A20202020202020203C7265637420783D2232312220793D2231
+ 31222077696474683D223622206865696768743D223233222F3E0D0A20202020
+ 3C2F673E0D0A3C2F7376673E0D0A0700000066006100630074006F0072007900
+ 6F0200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
+ 234246333630432220643D224D34312E322C35682D372E334C33322C34336831
+ 314C34312E322C357A222F3E0D0A202020203C706174682066696C6C3D222345
+ 36344131392220643D224D33332C3233682D34762D366C2D31322C36762D364C
+ 352C32337632306832385632337A222F3E0D0A202020203C7265637420783D22
+ 392220793D223237222066696C6C3D2223464643313037222077696474683D22
+ 3422206865696768743D2234222F3E0D0A202020203C7265637420783D223137
+ 2220793D223237222066696C6C3D2223464643313037222077696474683D2234
+ 22206865696768743D2234222F3E0D0A202020203C7265637420783D22323522
+ 20793D223237222066696C6C3D2223464643313037222077696474683D223422
+ 206865696768743D2234222F3E0D0A202020203C7265637420783D2239222079
+ 3D223335222066696C6C3D2223464643313037222077696474683D2234222068
+ 65696768743D2234222F3E0D0A202020203C7265637420783D2231372220793D
+ 223335222066696C6C3D2223464643313037222077696474683D223422206865
+ 696768743D2234222F3E0D0A202020203C7265637420783D2232352220793D22
+ 3335222066696C6C3D2223464643313037222077696474683D22342220686569
+ 6768743D2234222F3E0D0A3C2F7376673E0D0A1100000066006100630074006F
+ 00720079005F0062007200650061006B0064006F0077006E00720200003C7376
+ 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
+ 77332E6F72672F323030302F737667222076696577426F783D22302030203438
+ 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
+ 3438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223453634
+ 4131392220706F696E74733D2232392C32332032392C31372032312C32312032
+ 312C32332031372C32332031372C32372031332C32372031332C323320352C32
+ 3320352C34332033332C34332033332C3233222F3E0D0A202020203C72656374
+ 20783D2232352220793D223237222066696C6C3D222339393242304122207769
+ 6474683D223422206865696768743D2234222F3E0D0A202020203C7265637420
+ 783D22392220793D223335222066696C6C3D2223393932423041222077696474
+ 683D223422206865696768743D2234222F3E0D0A202020203C7265637420783D
+ 2232352220793D223335222066696C6C3D222339393242304122207769647468
+ 3D223422206865696768743D2234222F3E0D0A202020203C7265637420783D22
+ 31372220793D223335222066696C6C3D2223393932423041222077696474683D
+ 223422206865696768743D2234222F3E0D0A202020203C7265637420783D2231
+ 372220793D223237222066696C6C3D2223393932423041222077696474683D22
+ 3422206865696768743D2234222F3E0D0A202020203C706F6C79676F6E206669
+ 6C6C3D22234246333630432220706F696E74733D2234312E322C352033382C35
+ 2033382C372033362C372033362C392033332E372C392033322C34332034332C
+ 3433222F3E0D0A3C2F7376673E0D0A03000000660061007100740400003C7376
+ 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
+ 77332E6F72672F323030302F737667222076696577426F783D22302030203438
+ 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
+ 3438203438223E0D0A202020203C706174682066696C6C3D2223353538423246
+ 2220643D224D31352C34306832336C362C3656323563302D322E322D312E382D
+ 342D342D34483135632D322E322C302D342C312E382D342C347631314331312C
+ 33382E322C31322E382C34302C31352C34307A222F3E0D0A202020203C706174
+ 682066696C6C3D22233142354532302220643D224D32382E382C33322E38682D
+ 332E366C2D302E372C322E31682D322E326C332E372D313068312E396C332E37
+ 2C3130682D322E324C32382E382C33322E387A204D32352E372C33312E326832
+ 2E354C32372C32372E344C32352E372C33312E327A222F3E0D0A202020203C70
+ 6174682066696C6C3D22233842433334412220643D224D33332C32354831306C
+ 2D362C36563863302D322E322C312E382D342C342D3468323563322E322C302C
+ 342C312E382C342C347631334333372C32332E322C33352E322C32352C33332C
+ 32357A222F3E0D0A202020203C706174682066696C6C3D22236666662220643D
+ 224D32352E342C31342E3263302C312D302E322C312E382D302E352C322E3563
+ 2D302E332C302E372D302E372C312E332D312E332C312E376C312E372C312E33
+ 4C32342C32302E396C2D322E322D312E37632D302E322C302D302E352C302E31
+ 2D302E382C302E3120632D302E362C302D312E322D302E312D312E382D302E33
+ 632D302E352D302E322D312D302E362D312E342D31632D302E342D302E342D30
+ 2E372D312D302E392D312E36632D302E322D302E362D302E332D312E332D302E
+ 332D322E31762D302E3463302D302E382C302E312D312E352C302E332D322E31
+ 2063302E322D302E362C302E352D312E322C302E392D312E3663302E342D302E
+ 342C302E382D302E382C312E342D3163302E352D302E322C312E312D302E332C
+ 312E382D302E3363302E362C302C312E322C302E312C312E382C302E3363302E
+ 352C302E322C312C302E362C312E342C312063302E342C302E342C302E372C31
+ 2C302E392C312E3663302E322C302E362C302E332C312E332C302E332C322E31
+ 5631342E327A204D32332E322C31332E3763302D312E312D302E322D312E392D
+ 302E362D322E34632D302E342D302E362D302E392D302E382D312E362D302E38
+ 20632D302E372C302D312E332C302E332D312E362C302E38632D302E342C302E
+ 362D302E362C312E342D302E362C322E3476302E3563302C302E352C302E312C
+ 312C302E322C312E3463302E312C302E342C302E322C302E382C302E342C3163
+ 302E322C302E332C302E342C302E352C302E372C302E362063302E332C302E31
+ 2C302E362C302E322C302E392C302E3263302E372C302C312E332D302E332C31
+ 2E362D302E3863302E342D302E362C302E362D312E342C302E362D322E355631
+ 332E377A222F3E0D0A3C2F7376673E0D0A0700000066006500650064005F0069
+ 006E00570200003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
+ 6C3D22233231393646332220643D224D33382C323476313263302C312E312D30
+ 2E392C322D322C32483132632D312E312C302D322D302E392D322D3256323463
+ 302D332E332D322E372D362D362D3668307634683063312E312C302C322C302E
+ 392C322C327631322063302C332E332C322E372C362C362C3668323463332E33
+ 2C302C362D322E372C362D3656323463302D312E312C302E392D322C322D3268
+ 30762D3468304334302E372C31382C33382C32302E372C33382C32347A222F3E
+ 0D0A202020203C672066696C6C3D2223334635314235223E0D0A202020202020
+ 20203C706F6C79676F6E20706F696E74733D2233382E362C352E362032392C31
+ 352E322032392C32382033332C32382033332C31362E382034312E342C382E34
+ 222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22362E
+ 362C382E342031352C31362E382031352C32382031392C32382031392C31352E
+ 3220392E342C352E36222F3E0D0A20202020202020203C706F6C79676F6E2070
+ 6F696E74733D2233372C32372033312C33332032352C3237222F3E0D0A202020
+ 20202020203C706F6C79676F6E20706F696E74733D2232332C32372031372C33
+ 332031312C3237222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0800
+ 000066006500650064006200610063006B00380200003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C706174682066696C6C3D22233738393039432220643D224D34
+ 302C34314838632D322E322C302D342D312E382D342D346C302D32302E396330
+ 2D312E332C302E362D322E352C312E372D332E334C32342C306C31382E332C31
+ 322E3863312E312C302E372C312E372C322C312E372C332E3356333720433434
+ 2C33392E322C34322E322C34312C34302C34317A222F3E0D0A202020203C7265
+ 637420783D2231322220793D223131222066696C6C3D22236666662220776964
+ 74683D22323422206865696768743D223232222F3E0D0A202020203C706F6C79
+ 676F6E2066696C6C3D22233943323742302220706F696E74733D2232342C3133
+ 2E362031382C32312E342033302C32312E34222F3E0D0A202020203C70617468
+ 2066696C6C3D22234346443844432220643D224D34302C34314838632D322E32
+ 2C302D342D312E382D342D346C302D32306C32302C31336C32302D3133763230
+ 4334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A20202020
+ 3C706F6C79676F6E2066696C6C3D22233943323742302220706F696E74733D22
+ 32342C32382032362C32362E372032362C32302032322C32302032322C32362E
+ 37222F3E0D0A3C2F7376673E0D0A04000000660069006C006500F30000003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22233930
+ 434146392220706F696E74733D2234302C343520382C343520382C332033302C
+ 332034302C3133222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 4531463546452220706F696E74733D2233382E352C31342032392C3134203239
+ 2C342E35222F3E0D0A3C2F7376673E0D0A0E000000660069006C0069006E0067
+ 005F0063006100620069006E0065007400100300003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C7265637420783D2231322220793D223434222066696C6C3D2223
+ 323633323338222077696474683D223422206865696768743D2232222F3E0D0A
+ 202020203C7265637420783D2233322220793D223434222066696C6C3D222332
+ 3633323338222077696474683D223422206865696768743D2232222F3E0D0A20
+ 2020203C706174682066696C6C3D22233630374438422220643D224D382C3431
+ 563763302D322E322C312E382D342C342D3468323463322E322C302C342C312E
+ 382C342C3476333463302C322E322D312E382C342D342C3448313243392E382C
+ 34352C382C34332E322C382C34317A222F3E0D0A202020203C70617468206669
+ 6C6C3D22234230424543352220643D224D31322C3137563863302D302E362C30
+ 2E342D312C312D3168323263302E362C302C312C302E342C312C317639483132
+ 7A222F3E0D0A202020203C7265637420783D2231322220793D22313922206669
+ 6C6C3D2223423042454335222077696474683D22323422206865696768743D22
+ 3130222F3E0D0A202020203C706174682066696C6C3D22234230424543352220
+ 643D224D31322C3430762D39683234763963302C302E362D302E342C312D312C
+ 314831334331322E342C34312C31322C34302E362C31322C34307A222F3E0D0A
+ 202020203C7265637420783D2232302220793D223131222066696C6C3D222335
+ 3436453741222077696474683D223822206865696768743D2232222F3E0D0A20
+ 2020203C7265637420783D2232302220793D223233222066696C6C3D22233534
+ 36453741222077696474683D223822206865696768743D2232222F3E0D0A2020
+ 20203C7265637420783D2232302220793D223335222066696C6C3D2223353436
+ 453741222077696474683D223822206865696768743D2232222F3E0D0A3C2F73
+ 76673E0D0A0D000000660069006C006C00650064005F00660069006C00740065
+ 0072007F0100003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C706F6C79676F6E20
+ 66696C6C3D22234635374330302220706F696E74733D2232392C32332031392C
+ 323320372C392034312C39222F3E0D0A202020203C672066696C6C3D22234646
+ 39383030223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D
+ 2232392C33382031392C34342031392C32332032392C3233222F3E0D0A202020
+ 20202020203C7061746820643D224D34312E352C39682D333543352E372C392C
+ 352C382E332C352C372E35763043352C362E372C352E372C362C362E352C3668
+ 33354334322E332C362C34332C362E372C34332C372E3576304334332C382E33
+ 2C34322E332C392C34312E352C397A222F3E0D0A202020203C2F673E0D0A3C2F
+ 7376673E0D0A13000000440065006C007000680069005F00500072006F006400
+ 7500630074002000690063006F006E008D2300003C3F786D6C2076657273696F
+ 6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A3C737667
+ 2076657273696F6E3D22312E312220783D223070782220793D22307078222076
+ 696577426F783D223020302038303030203830303022207374796C653D22656E
+ 61626C652D6261636B67726F756E643A6E657720302030203830303020383030
+ 303B2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
+ 302F737667223E0D0A20203C7374796C6520747970653D22746578742F637373
+ 223E0D0A092E7374307B646973706C61793A6E6F6E653B66696C6C3A23464646
+ 4646463B7374726F6B653A234331323732443B7374726F6B652D77696474683A
+ 32303B7374726F6B652D6D697465726C696D69743A31303B7D0D0A092E737431
+ 7B66696C6C3A234633323733353B7D0D0A092E7374327B66696C6C3A23394530
+ 4632303B7D0D0A092E7374337B66696C6C3A234646464646463B7D0D0A3C2F73
+ 74796C653E0D0A20203C672069643D2243616D6164615F31223E0D0A20202020
+ 3C673E0D0A2020202020203C673E0D0A20202020202020203C636972636C6520
+ 63783D2234303030222063793D22333939392E39392220723D22333938392E38
+ 33222066696C6C3D2223463332373335222F3E0D0A20202020202020203C7061
+ 746820636C6173733D227374322220643D224D363830392E39382C313136372E
+ 35344C313139302E32392C363833322E3763302E31322C302E31322C302E3234
+ 2C302E32342C302E33352C302E33352063313536342E35362C313535312E3637
+ 2C343039302E37362C313534312E32312C353634322E34322D32332E33354338
+ 3338342E36342C353234352E32342C383337342E32382C323731392E32332C36
+ 3830392E39382C313136372E35347A222066696C6C3D2223394530463230222F
+ 3E0D0A2020202020203C2F673E0D0A2020202020203C673E0D0A202020202020
+ 20203C7061746820636C6173733D227374332220643D224D20333431382E3535
+ 20343636332E3838204320333532322E303720343539342E353920333632342E
+ 313920343532332E3220333732372E303320343435322E383920432034313430
+ 2E363620343137302E313220343535342E333520333838372E34332034393638
+ 2E303320333630342E3733204C20353432382E383920333238382E3436204320
+ 353430342E393520333236362E343620353338332E393820333234362E303720
+ 353336312E383120333232372E3132204320353233302E393820333131352E33
+ 3120353039302E363320333031372E343820343933382E3420323933362E3636
+ 204320343730302E373720323831302E353120343434392E333720323732392E
+ 313220343138302E333920323731312E3334204320343034312E373720323730
+ 322E313820333930322E363220323730392E3534203337363520323733332E31
+ 34204320333535382E303820323736382E363220333336312E37342032383334
+ 2E383320333137362E343620323933332E3934204320323930322E3735203330
+ 38302E333420323637362E323920333238302E333120323439362E3835203335
+ 33332E3239204320323239302E303620333832342E383420323137352E333220
+ 343135302E3320323134352E393120343530352E3632204320323133342E3132
+ 20343634382E303720323134302E373520343739302E373720323136322E3838
+ 20343933322E3131204320323139312E323120353131332E313220323234322E
+ 343120353238372E363220323331392E353820353435342E3120432032343035
+ 2E3320353633392E303220323531372E373920353830362E303520323635362E
+ 393920353935342E3835204320323639302E383220353939312E303120323732
+ 372E343620363032342E353320323736332E373720363036302E322043203238
+ 31372E333920353938352E363520323839302E3235203539343520323937302E
+ 383920353931362E3333204320333131352E343120353836342E393620333236
+ 362E353220353835352E3820333431372E363620353835322E34322043203335
+ 30312E373820353835302E353420333538362E333120353835362E3338203336
+ 37302E333120353836322E3939204320333736352E363120353837302E343920
+ 333836302E353820353838322E333320333935352E3620353839332E31322043
+ 20343030302E363420353839382E323320343034352E343620353930352E3239
+ 20343039342E363820353931322E3036204320333935352E333120353631392E
+ 343220333831382E313120353333312E333320333638302E393520353034332E
+ 3332204320333630392E383420353035372E333520333534322E353720353037
+ 302E363220333437332E373220353038342E32204320333437312E3134203530
+ 37372E323220333436382E383920353037322E383820333436372E3933203530
+ 36382E3237204320333434332E373820343935322E363120333432312E313620
+ 343833362E3620333339342E373720343732312E3436204320333338382E3134
+ 20343639322E353620333339352E353620343637392E323720333431382E3535
+ 20343636332E3838205A204D20333232362E393320333232382E383120432032
+ 3932372E373520333437372E343820323638382E3320333736392E3638203235
+ 36342E343520343134352E3139204320323532392E393320343234392E383420
+ 323531302E3220343335372E323620323530302E353320343436372E31382043
+ 20323437342E303220343736382E343520323534322E353320353035302E3438
+ 20323637332E383220353331382E3637204320323732322E313220353431372E
+ 333420323738322E313520353531302E323720323833362E383320353630352E
+ 3832204320323834302E3520353631322E323320323834342E3120353631382E
+ 363720323835302E303520353632392E32204320323830392E32392035363439
+ 2E393620323737302E353920353637302E363320323733302E39362035363839
+ 2E3331204320323731372E343320353639352E363820323730332E3731203536
+ 39382E323420323639322E363820353637382E3933204320323537372E393420
+ 353437372E393220323438332E3620353236382E343220323432362E33362035
+ 3034332E3436204320323338362E353620343838372E303220323336342E3034
+ 20343732372E383520323337302E313520343536362E3434204320323338302E
+ 333720343239362E353620323435362E303320343034352E363620323539382E
+ 373220333831352E3335204320323732332E333420333631342E322032383832
+ 2E323520333434342E343520333036362E333620333239372E30382043203332
+ 32332E333320333137312E343320333339322E303820333036342E3838203335
+ 37342E353620323938302E3238204320333538322E393220323937362E343120
+ 333539312E3439203239373320333539392E393620323936392E333820432033
+ 3436372E383620333034352E393620333334332E353320333133312E39203332
+ 32362E393320333232382E3831205A222066696C6C3D2223666666666666222F
+ 3E0D0A20202020202020203C7061746820636C6173733D227374332220643D22
+ 4D333831302E31352C353132362E39356337312E33342D31332E37382C313431
+ 2E30392D32372E37332C3231312E31342D34302E303363372E30362D312E3234
+ 2C31372E35332C352E38352C32332E36322C31312E3920633130312E32362C31
+ 30302E36322C3139392E30362C3230342E39352C3330332E392C3330312E3635
+ 6338372E39312C38312E312C3138332E38322C3135332E35342C3237362E3337
+ 2C3232392E3539633133312E39322C3130382E342C3234372E32322C3233322E
+ 35362C3334362E34342C3337312E313720633137332E342C3234322E32362C32
+ 39382E37352C3530372E33362C3336382E33362C3739372E3563362E31322C32
+ 352E35312D312E36362C35362E392D31302E35332C38322E3939632D33302E31
+ 322C38382E36342D39342E30322C3135322E35382D3136342E36362C3230392E
+ 373520632D39382E39362C38302E30392D3230392E38332C3133392E39322D33
+ 32372E332C3138382E3431632D32342E34322C31302E30382D33332E32392C35
+ 2E32352D34342E32322D31382E3637632D3132302E39352D3236342E35392D32
+ 34332E34342D3532382E34382D3336352E33362D3739322E363320632D313635
+ 2E32392D3335382E312D3333302E34332D3731362E32372D3439352E36372D31
+ 3037342E3339632D33382E34382D38332E33392D37372E30392D3136362E3731
+ 2D3131352E35372D3235302E312043333831342E33332C353133392E30342C33
+ 3831322E36382C353133332E36362C333831302E31352C353132362E39357A22
+ 2066696C6C3D2223666666666666222F3E0D0A20202020202020203C70617468
+ 20636C6173733D227374332220643D224D20343038312E3520363033382E3539
+ 204320343037372E363320363033302E323620343036352E353920363032312E
+ 343620343035362E3520363032302E3434204320333837372E39352036303030
+ 2E333820333639392E353320353937382E333920333532302E35332035393633
+ 2E3331204320333339352E323720353935322E373620333236392E3420353936
+ 302E333220333134342E373920353937372E3938204320333035362E35372035
+ 3939302E343820323937302E323120363031312E343420323839312E31203630
+ 35342E3832204320323834342E363420363038302E3320323831302E30322036
+ 3131342E343920323738382E393720363136362E3038204320323732372E3835
+ 20363331352E393120323636322E3520363436342E303220323539382E373420
+ 363631322E3737204320323536352E363420363638392E393920323533322E34
+ 20363736372E313620323439372E313320363834392E3233204320323530352E
+ 343320363834362E373520323530382E363820363834352E383720323531312E
+ 383720363834342E38204320323638352E333720363738362E35382032383635
+ 2E313720363736392E383920333034362E3420363736392E3732204320333135
+ 342E343820363736392E363220333236322E373720363737372E333120333337
+ 302E353920363738362E3131204320333437362E323720363739342E37342033
+ 3538312E393120363830362E323920333638362E373820363832312E38352043
+ 20333832332E323520363834322E303920333935382E393520363836372E3536
+ 20343039372E393820363839312E3239204320343136332E333420363737332E
+ 353420343233302E333820363635332E313120343239362E3720363533322E32
+ 38204320343330302E313220363532362E303520343330302E30352036353135
+ 2E313720343239372E303320363530382E3533204320343232352E3737203633
+ 35312E363220343135342E303920363139342E383920343038312E3520363033
+ 382E3539205A204D20333036302E303720363136322E3336204320333034352E
+ 393420363136362E363920333033312E303720363137372E343120333032322E
+ 333920363138392E34204320323932362E343220363332312E39372032383331
+ 2E353920363435352E333620323733362E363120363538382E36342043203237
+ 33342E303220363539322E323720323733332E323820363539372E3232203237
+ 33312E363720363630312E3535204320323732392E313920363539392E343120
+ 323732362E373120363539372E323820323732342E323320363539352E313420
+ 4320323734302E373120363536302E303320323735362E393520363532342E38
+ 3120323737332E373220363438392E3834204320323832392E31332036333734
+ 2E323620323838342E343120363235382E363220323934302E38312036313433
+ 2E3532204320323934352E393520363133332E303420323935372E3434203631
+ 32312E383620323936382E323720363131382E3538204320333038322E373120
+ 363038332E393320333139392E353720363036322E383420333331382E393420
+ 363035322E3537204320333430372E3420363034342E393620333439342E3437
+ 20363034372E353120333538312E333320363036342E3537204320333539302E
+ 343620363036362E333620333539392E333420363036392E343420333630382E
+ 333320363037312E3933204320333431372E333320363035382E313520333233
+ 382E323120363130372E373920333036302E303720363136322E3336205A2220
+ 66696C6C3D2223666666666666222F3E0D0A20202020202020203C7061746820
+ 636C6173733D227374332220643D224D20353832372E313320343235322E3231
+ 204320353830352E3620343131392E373720353738332E383420333938372E33
+ 3720353736322E353720333835342E3839204320353734332E36362033373337
+ 2E313420353732352E353420333631392E323720353730362E35372033353031
+ 2E3533204320353639322E313120333431312E373620353637372E3031203333
+ 32322E303620353636312E363720333232392E3534204C20333439312E373820
+ 343731382E3637204320333438342E333720343732352E333920333437372E31
+ 3420343733382E303720333437382E393520343734352E313720432033343936
+ 2E373120343831342E393320333531362E393120343838342E30362033353336
+ 2E323720343935322E3938204320333534312E313720343935332E3233203335
+ 34342E313320343935332E393720333534362E383520343935332E3433204320
+ 333731382E373120343931392E333120333839302E343620343838342E363520
+ 343036322E3420343835302E3938204320343339312E343320343738362E3535
+ 20343732302E363220343732322E393520353034392E363320343635382E3439
+ 204320353331332E323720343630362E383320353537362E3638203435353420
+ 353834302E34352034353033204320353836332E363320343439382E35322035
+ 3836352E383220343438382E393320353836322E363320343436392E39352043
+ 20353835302E343420343339372E343420353833382E393320343332342E3820
+ 353832372E313320343235322E3231205A222066696C6C3D2223666666666666
+ 222F3E0D0A20202020202020203C673E0D0A202020202020202020203C706174
+ 6820636C6173733D227374332220643D224D343538312E352C323433382E3332
+ 632D35312E35392C37342E37342D3130332E32332C3134392E34352D3135342E
+ 30392C3232332E3038633238342E30322C34382E372C3530382E39352C313635
+ 2E35362C3633302E39332C3233362E3038206331382E382C382E35382C33302E
+ 33362C372E30342C34352E35322D352E39376339352E32382D38312E37382C31
+ 39312E30342D3136332E30312C3238372E31382D3234332E38633139302E3034
+ 2D3135392E372C3338302E35382D3331382E38322C3537302E36332D3437382E
+ 353120633139392E38312D3136372E38382C3339392E33342D3333362E30382C
+ 3539382E39322D3530342E3233632D3332362E33392D3233322E30372D363935
+ 2E322D3430372E33312D313039322E32312D3531312E3320632D39312E39312C
+ 3133332E37352D3138342E34342C3236372E30382D3237362E36362C3430302E
+ 363243343938382E32362C313834382E39332C343738342E39312C323134332E
+ 36352C343538312E352C323433382E33327A222066696C6C3D22236666666666
+ 66222F3E0D0A202020202020202020203C7061746820636C6173733D22737433
+ 2220643D224D333532342E31392C323436372E3438632D32312E34392C37392E
+ 38372D34342E36372C3136352E39372D36362E39382C3235302E32376334362E
+ 35362D31302E33372C3332332E31372D3131352E322C3731382E38382D38382E
+ 3832206331392E30382C312E31362C32382E39372D352E36382C33372E38362D
+ 32322E33326338352E332D3135392E36362C3136362E35362D3331312E38352C
+ 3235322E342D3437312E3232633132342E30342D3233302E32382C3234372E39
+ 392D3436302E36322C3337312E39392D3639302E3933206336362E34322D3132
+ 332E33362C3133322E38382D3234362E37312C3230312E31362D3337332E3436
+ 632D3133372E33352D31372E32332D3237372E32322D32362E31362D3431392E
+ 31332D32362E3136632D3235322E35312C302D3439382E36312C32382E31372D
+ 3733352E34332C38312E343520632D362E38342C32382E36332D31342E39352C
+ 35362E39372D32322E362C38352E343143333734392E36332C313633302E332C
+ 333633362E38332C323034382E38372C333532342E31392C323436372E34387A
+ 222066696C6C3D2223666666666666222F3E0D0A202020202020202020203C70
+ 61746820636C6173733D227374332220643D224D323534352E38362C31383336
+ 2E353363362E36332C37382E31342C31332E33342C3135362E32372C31392E38
+ 382C3233342E343263362E332C37352E332C31322E32322C3135302E36332C31
+ 382E372C3232352E39312063362E35362C37362E31382C31332E38382C313532
+ 2E32392C32302E33342C3232382E343863362E36322C37382E322C31322E3538
+ 2C3135362E34372C31382E38362C3233342E3763362E30352C37352E33392C31
+ 312E39382C3135302E37392C31382E32382C3232362E31362063352E36392C36
+ 382E30382C31312E34332C3133392E36312C31372E37312C3231312E36386337
+ 372E33382D37352E36332C3331372E30312D3238392E33312C3631322E34382D
+ 3431312E39386331332E37352D352E37312C32372E33382D382E38322C33302E
+ 38342D33302E3931206331382E34362D3131372E36372C33362E35322D323135
+ 2E32322C35372E30332D3333322E35386332382E36382D3136342E31312C3537
+ 2E33332D3332382E32332C38352E392D3439322E33376333352E37372D323035
+ 2E35342C37312E35322D3431312E30392C3130372E30362D3631362E36372063
+ 352E35392D33322E33332C31302E34392D36342E38322C31352E38362D39392E
+ 3336632D3337352E37312C3132342E35342D3732322E35322C3331332E392D31
+ 3032372E33322C3535342E3935632D302E31342C302E362D302E33312C312E32
+ 312D302E33322C312E382043323534302E36352C313739322E36352C32353433
+ 2E39392C313831342E36312C323534352E38362C313833362E35337A22206669
+ 6C6C3D2223666666666666222F3E0D0A202020202020202020203C7061746820
+ 636C6173733D227374332220643D224D323135312E36392C333630322E303363
+ 32382E39352C35382E32362C36322E36312C3132362E34352C39322E34342C31
+ 38362E33356336322E38382D3133392E33382C3139342E32362D3334372E3537
+ 2C3331382E31332D3438382E37322063362E34312D372E33312C31302E31342D
+ 32312E34392C382E31322D33302E3938632D32302E38312D39372E38392D3433
+ 2E31342D3138392E36362D36352E30352D3238372E3332632D35372E39312D32
+ 35382E312D3131352E38362D3531362E322D3137332E38322D3737342E323920
+ 632D31352E32312D36372E37332D33302E35362D3133352E34322D34372E3533
+ 2D3231302E3539632D32322E37342C32342E32332D34302E34372C34322E3835
+ 2D35372E392C36312E3734632D37322E38332C37382E39362D3135312E35372C
+ 3135332E33392D3231362E39362C3233382E3120632D38382E30392C3131342E
+ 312D3136382E38332C3233332E38362D3235312E39322C3335312E3835632D31
+ 342E30362C32322E36362D32372E38362C34352E35312D34312E342C36382E35
+ 3263302E30312C362E362C322E32362C31332E32352C362E30342C32302E3834
+ 2043313836352E34312C333032352E35362C323030382E34382C333331332E38
+ 322C323135312E36392C333630322E30337A222066696C6C3D22236666666666
+ 66222F3E0D0A202020202020202020203C7061746820636C6173733D22737433
+ 2220643D224D313436332E33392C333737332E3235633136362E37352C313437
+ 2E32342C3333332E35382C3239342E342C3530302E34332C3434312E35336333
+ 382C33332E35312C37382E392C36392E33382C3132302E32362C3130352E3631
+ 206331352E38332D3132342E38372C35382E322D3237392E37362C3130352E39
+ 362D3430312E383763392E31362D32332E34332D302E30342D33372E33322D31
+ 322E33312D35332E3738632D3136382E37382D3232362E34322D3333392E3236
+ 2D3435322E35352D3530372E39332D3637392E303620632D33372E39392D3531
+ 2E30322D37362E33322D3130312E382D3131352E39342D3135342E3632632D34
+ 2E34372C382E34312D372E33332C31332E31382D392E36332C31382E32632D35
+ 2E39372C31332E30362D31312E38342C32362E31352D31372E36332C33392E32
+ 3720632D37382E31392C3138302E32332D3134312E32392C3336382E35382D31
+ 38372E37372C3536332E333763312E35342C362E36382C352E30322C31332E35
+ 342C392E31322C31372E343143313338352E362C333730342E38342C31343234
+ 2E35372C333733382E39372C313436332E33392C333737332E32357A22206669
+ 6C6C3D2223666666666666222F3E0D0A202020202020202020203C7061746820
+ 636C6173733D227374332220643D224D313933372E322C343837322E30366334
+ 342E36352C31352E34352C39342E34392C33322E39342C3134302E32392C3438
+ 2E3934632D32362E38322D3136352E37362D31342E37382D3430302E392D3131
+ 2E38372D3435312E35362063312E31392D32302E36342D352E36382D33322E32
+ 382D32332E38352D34332E3439632D3138392E30382D3131362E35372D333831
+ 2E33362D3233352E30332D3536392E39352D3335322E34632D36322E352D3338
+ 2E38392D3132352E31332D37372E36322D3139302E39332D3131382E34322063
+ 2D32332E32372C3136312E30322D33352E33392C3332352E36342D33352E3339
+ 2C3439332E303763302C36322E33382C312E37322C3132342E33352C352E3033
+ 2C3138352E393163322E38382C312E36322C362E32352C332E30382C31302E32
+ 322C342E34342043313438362E34342C343731352E38312C313731312E37382C
+ 343739342E30332C313933372E322C343837322E30367A222066696C6C3D2223
+ 666666666666222F3E0D0A202020202020202020203C7061746820636C617373
+ 3D227374332220643D224D323235322E39322C353530372E3534632D31312E31
+ 382D31392E36322D32322E39352D32322E37342D34332E31352D31372E383863
+ 2D3139302E35382C34352E38322D3338362E34352C39322E31382D3537372E31
+ 352C3133372E353420632D35342E31352C31322E38382D3130382E33332C3235
+ 2E39312D3136332E36322C33392E31386336322E332C3136332E33362C313336
+ 2E37332C3332302E36392C3232322E32312C3437302E3836633233342E38342D
+ 3132352E34312C3437302E33342D3235302E38322C3730352E34392D3337362E
+ 34342043323330352E36382C353632302E312C323239362E39392C353538342E
+ 392C323235322E39322C353530372E35347A222066696C6C3D22236666666666
+ 66222F3E0D0A202020202020202020203C7061746820636C6173733D22737433
+ 2220643D224D313734372E31352C353337332E3531633130342E35392D302E38
+ 392C3230392E322D302E31382C3331332E382D302E31386334332E35362C302C
+ 38372E31332C302C3133332E36332C3020632D322E36382D31302E33322D3635
+ 2E36352D3139302E32372D38352E34342D3238332E3438632D312E32362D382E
+ 38352D31352E392D32302E35322D32362E30372D32322E3639632D3233312E38
+ 352D34392E34352D3436312E392D39362E38372D3639332E39382D3134352E32
+ 3420632D33372E33342D372E37382D37342E39332D31342E38342D3131332E39
+ 372D32322E346332312E36322C3136332E38342C35342E37382C3332342E3035
+ 2C39382E37342C3437392E373363302E382C302C312E35382C302E30312C322E
+ 34312D302E30312043313439392E38382C353337362E352C313632332E35312C
+ 353337342E35362C313734372E31352C353337332E35317A222066696C6C3D22
+ 23666666666666222F3E0D0A20202020202020203C2F673E0D0A202020202020
+ 3C2F673E0D0A202020203C2F673E0D0A202020203C673E0D0A2020202020203C
+ 656C6C6970736520636C6173733D22737430222063783D22373335362E313822
+ 2063793D223830312E3031222072783D223132342E36222072793D223132352E
+ 3731222F3E0D0A202020203C2F673E0D0A20203C2F673E0D0A3C2F7376673E0D
+ 0A04000000660069006C006D00560100003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706174682066696C6C3D22233346353142352220643D224D34352C394833
+ 76333068343256397A204D32322C3337762D34683476344832327A204D33302C
+ 3337762D34683476344833307A204D33382C3337762D34683476344833387A20
+ 4D31342C3337762D34683476344831347A204D362C3337762D34683476344836
+ 207A204D32322C3135762D34683476344832327A204D33302C3135762D346834
+ 76344833307A204D33382C3135762D34683476344833387A204D31342C313576
+ 2D34683476344831347A204D362C3135762D346834763448367A222F3E0D0A3C
+ 2F7376673E0D0A09000000660069006C006D005F007200650065006C00F90100
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C706174682066696C6C3D22233346
+ 353142352220643D224D34332C3339563234682D3476313563302C352C342C39
+ 2C392C39762D344334352E322C34342C34332C34312E382C34332C33397A222F
+ 3E0D0A202020203C636972636C652066696C6C3D222339304134414522206378
+ 3D223234222063793D2232342220723D223139222F3E0D0A202020203C636972
+ 636C652066696C6C3D2223333734373446222063783D223234222063793D2232
+ 342220723D2232222F3E0D0A202020203C672066696C6C3D2223323533323738
+ 223E0D0A20202020202020203C636972636C652063783D223234222063793D22
+ 31342220723D2235222F3E0D0A20202020202020203C636972636C652063783D
+ 223234222063793D2233342220723D2235222F3E0D0A20202020202020203C63
+ 6972636C652063783D223334222063793D2232342220723D2235222F3E0D0A20
+ 202020202020203C636972636C652063783D223134222063793D223234222072
+ 3D2235222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0A0000006600
+ 6C006100730068005F006100750074006F00440100003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C706F6C79676F6E2066696C6C3D22234646433130372220706F
+ 696E74733D2233332C32322032332E362C32322033302C352031392C35203133
+ 2C32362032312E362C32362031372C3435222F3E0D0A202020203C7061746820
+ 66696C6C3D22234634343333362220643D224D34302E382C31342E35682D342E
+ 334C33352E362C31374833336C342E352D313268322E336C342E352C3132682D
+ 322E364C34302E382C31342E357A204D33372E312C31322E3568334C33382E36
+ 2C384C33372E312C31322E357A222F3E0D0A3C2F7376673E0D0A080000006600
+ 6C006100730068005F006F006E00C80000003C7376672076657273696F6E3D22
+ 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
+ 2F737667222076696577426F783D223020302034382034382220656E61626C65
+ 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
+ 20203C706F6C79676F6E2066696C6C3D22234646433130372220706F696E7473
+ 3D2233332C32322032332E362C32322033302C352031392C352031332C323620
+ 32312E362C32362031372C3435222F3E0D0A3C2F7376673E0D0A0A0000006600
+ 6C006F0077005F0063006800610072007400FC0100003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C706F6C79676F6E2066696C6C3D22234346443844432220706F
+ 696E74733D2233352C33362033392C33362033392C32322032362C3232203236
+ 2C31332032322C31332032322C323220392C323220392C33362031332C333620
+ 31332C32362032322C32362032322C33362032362C33362032362C3236203335
+ 2C3236222F3E0D0A202020203C7265637420783D2231372220793D2236222066
+ 696C6C3D2223334635314235222077696474683D22313422206865696768743D
+ 223130222F3E0D0A202020203C7265637420783D2233322220793D2233322220
+ 66696C6C3D2223303042434434222077696474683D2231302220686569676874
+ 3D223130222F3E0D0A202020203C7265637420783D22362220793D2233322220
+ 66696C6C3D2223303042434434222077696474683D2231302220686569676874
+ 3D223130222F3E0D0A202020203C7265637420783D2231392220793D22333222
+ 2066696C6C3D2223303042434434222077696474683D22313022206865696768
+ 743D223130222F3E0D0A3C2F7376673E0D0A0600000066006F006C0064006500
+ 72004F0100003C7376672076657273696F6E3D22312220786D6C6E733D226874
+ 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
+ 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
+ 226E657720302030203438203438223E0D0A202020203C706174682066696C6C
+ 3D22234646413030302220643D224D34302C31324832326C2D342D344838632D
+ 322E322C302D342C312E382D342C347638683430762D344334342C31332E382C
+ 34322E322C31322C34302C31327A222F3E0D0A202020203C706174682066696C
+ 6C3D22234646434132382220643D224D34302C31324838632D322E322C302D34
+ 2C312E382D342C3476323063302C322E322C312E382C342C342C346833326332
+ 2E322C302C342D312E382C342D345631364334342C31332E382C34322E322C31
+ 322C34302C31327A222F3E0D0A3C2F7376673E0D0A050000006600720061006D
+ 006500DD0300003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
+ 6C3D22233339343941422220643D224D34302E362C34302E31682D312E34632D
+ 302E322C302D302E332C302D302E352C306C2D332E312D302E34632D322E342D
+ 302E332D342E392D302E322D372E332C302E346C2D332E362C302E39632D302E
+ 352C302E312D312E312C302E312D312E362C30204C31392E362C3430632D322E
+ 342D302E362D342E382D302E372D372E332D302E346C2D332E312C302E34632D
+ 302E322C302D302E332C302D302E352C3048372E34632D312E392C302D332E34
+ 2D312E352D332E342D332E34763063302D302E342C302E312D302E392C302E32
+ 2D312E336C302E322D302E362063312D322E352C312E312D352E332C302E342D
+ 372E396C2D302E362D32632D302E322D302E372D302E322D312E332C302D326C
+ 302E332D302E3863302E392D322E372C302E382D352E372D302E322D382E346C
+ 2D302E312D302E3343342E312C31332E312C342C31322E372C342C31322E3376
+ 2D312063302D312E392C312E352D332E342C332E342D332E346C312E342C3063
+ 302E322C302C302E332C302C302E352C306C332E312C302E3463322E342C302E
+ 332C342E392C302E322C372E332D302E346C332E362D302E3963302E352D302E
+ 312C312E312D302E312C312E362C304C32382E342C382063322E342C302E362C
+ 342E382C302E372C372E332C302E346C332E312D302E3463302E322C302C302E
+ 332C302C302E352C306C312E342C3063312E392C302C332E342C312E352C332E
+ 342C332E34763163302C302E342D302E312C302E392D302E322C312E336C2D30
+ 2E312C302E3320632D312E312C322E372D312E322C352E362D302E322C382E34
+ 6C302E332C302E3863302E322C302E362C302E322C312E332C302C326C2D302E
+ 362C32632D302E372C322E362D302E362C352E342C302E342C372E396C302E32
+ 2C302E3663302E322C302E342C302E322C302E382C302E322C312E3376302043
+ 34342C33382E362C34322E352C34302E312C34302E362C34302E317A222F3E0D
+ 0A202020203C706174682066696C6C3D22234242444546422220643D224D3338
+ 2C3336483130632D302E362C302D312D302E342D312D3156313363302D302E36
+ 2C302E342D312C312D3168323863302E362C302C312C302E342C312C31763232
+ 4333392C33352E362C33382E362C33362C33382C33367A222F3E0D0A3C2F7376
+ 673E0D0A0C000000660075006C006C005F006200610074007400650072007900
+ 720100003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C672066696C6C3D22233842
+ 43333441223E0D0A20202020202020203C7061746820643D224D33342C343448
+ 3134632D312E312C302D322D302E392D322D32563863302D312E312C302E392D
+ 322C322D3268323063312E312C302C322C302E392C322C327633344333362C34
+ 332E312C33352E312C34342C33342C34347A222F3E0D0A20202020202020203C
+ 7061746820643D224D32382C3133682D38632D302E362C302D312D302E342D31
+ 2D31563563302D302E362C302E342D312C312D31683863302E362C302C312C30
+ 2E342C312C3176374332392C31322E362C32382E362C31332C32382C31337A22
+ 2F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0A000000660075006C00
+ 6C005F0074007200610073006800E90100003C7376672076657273696F6E3D22
+ 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
+ 2F737667222076696577426F783D223020302034382034382220656E61626C65
+ 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
+ 20203C706F6C79676F6E2066696C6C3D22234646384136352220706F696E7473
+ 3D2232342C32312E332031322E372C31302032362C312E372033382E332C3130
+ 222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222346464142393122
+ 20706F696E74733D2232342C32312E332031322E372C31302031372C342E3720
+ 33382E332C3130222F3E0D0A202020203C706174682066696C6C3D2223423339
+ 4444422220643D224D33302E362C34344831372E34632D322C302D332E372D31
+ 2E342D342D332E344C392C31316833306C2D342E352C32392E364333342E322C
+ 34322E362C33322E352C34342C33302E362C34347A222F3E0D0A202020203C70
+ 6174682066696C6C3D22233745353743322220643D224D33382C313348313063
+ 2D312E312C302D322D302E392D322D32763063302D312E312C302E392D322C32
+ 2D3268323863312E312C302C322C302E392C322C3276304334302C31322E312C
+ 33392E312C31332C33382C31337A222F3E0D0A3C2F7376673E0D0A0700000067
+ 0061006C006C00650072007900140200003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706174682066696C6C3D22234536353130302220643D224D34312C343248
+ 3133632D322E322C302D342D312E382D342D3456313863302D322E322C312E38
+ 2D342C342D3468323863322E322C302C342C312E382C342C347632304334352C
+ 34302E322C34332E322C34322C34312C34327A222F3E0D0A202020203C706174
+ 682066696C6C3D22234635374330302220643D224D33352C33364837632D322E
+ 322C302D342D312E382D342D3456313263302D322E322C312E382D342C342D34
+ 68323863322E322C302C342C312E382C342C347632304333392C33342E322C33
+ 372E322C33362C33352C33367A222F3E0D0A202020203C636972636C65206669
+ 6C6C3D2223464646394334222063783D223330222063793D2231362220723D22
+ 33222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223393432413039
+ 2220706F696E74733D2231372C31372E3920382C33312032362C3331222F3E0D
+ 0A202020203C706F6C79676F6E2066696C6C3D22234246333630432220706F69
+ 6E74733D2232382C32332E352032322C33312033342C3331222F3E0D0A3C2F73
+ 76673E0D0A09000000670065006E00650061006C006F0067007900EC0200003C
+ 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
+ 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
+ 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
+ 30203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D222343
+ 46443844432220706F696E74733D2234302C392034302C372033312C37203331
+ 2C31322032342C31322031352C31322031352C323320382C323320382C323520
+ 31352C32352031352C33362032342C33362033312C33362033312C3431203430
+ 2C34312034302C33392033332C33392033332C33312034302C33312034302C32
+ 392033312C32392033312C33342032342C33342031372C33342031372C313420
+ 32342C31342033312C31342033312C31392034302C31392034302C3137203333
+ 2C31372033332C39222F3E0D0A202020203C7265637420783D22342220793D22
+ 3230222066696C6C3D2223303042434434222077696474683D22382220686569
+ 6768743D2238222F3E0D0A202020203C672066696C6C3D222333463531423522
+ 3E0D0A20202020202020203C7265637420783D2233362220793D223134222077
+ 696474683D223822206865696768743D2238222F3E0D0A20202020202020203C
+ 7265637420783D2233362220793D2234222077696474683D2238222068656967
+ 68743D2238222F3E0D0A20202020202020203C7265637420783D223230222079
+ 3D2239222077696474683D223822206865696768743D2238222F3E0D0A202020
+ 20202020203C7265637420783D2232302220793D223331222077696474683D22
+ 3822206865696768743D2238222F3E0D0A20202020202020203C726563742078
+ 3D2233362220793D223336222077696474683D223822206865696768743D2238
+ 222F3E0D0A20202020202020203C7265637420783D2233362220793D22323622
+ 2077696474683D223822206865696768743D2238222F3E0D0A202020203C2F67
+ 3E0D0A3C2F7376673E0D0A13000000670065006E0065007200690063005F0073
+ 006F007200740069006E0067005F00610073006300AD0100003C737667207665
+ 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
+ 72672F323030302F737667222076696577426F783D2230203020343820343822
+ 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
+ 38223E0D0A202020203C7265637420783D22362220793D2236222066696C6C3D
+ 2223323139364633222077696474683D223422206865696768743D2234222F3E
+ 0D0A202020203C7265637420783D22362220793D223134222066696C6C3D2223
+ 323139364633222077696474683D22313222206865696768743D2234222F3E0D
+ 0A202020203C7265637420783D22362220793D223232222066696C6C3D222332
+ 3139364633222077696474683D22323022206865696768743D2234222F3E0D0A
+ 202020203C7265637420783D22362220793D223330222066696C6C3D22233231
+ 39364633222077696474683D22323822206865696768743D2234222F3E0D0A20
+ 2020203C7265637420783D22362220793D223338222066696C6C3D2223323139
+ 364633222077696474683D22333622206865696768743D2234222F3E0D0A3C2F
+ 7376673E0D0A14000000670065006E0065007200690063005F0073006F007200
+ 740069006E0067005F006400650073006300AD0100003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C7265637420783D22362220793D223338222066696C6C3D2223
+ 323139364633222077696474683D223422206865696768743D2234222F3E0D0A
+ 202020203C7265637420783D22362220793D223330222066696C6C3D22233231
+ 39364633222077696474683D22313222206865696768743D2234222F3E0D0A20
+ 2020203C7265637420783D22362220793D223232222066696C6C3D2223323139
+ 364633222077696474683D22323022206865696768743D2234222F3E0D0A2020
+ 20203C7265637420783D22362220793D223134222066696C6C3D222332313936
+ 4633222077696474683D22323822206865696768743D2234222F3E0D0A202020
+ 203C7265637420783D22362220793D2236222066696C6C3D2223323139364633
+ 222077696474683D22333622206865696768743D2234222F3E0D0A3C2F737667
+ 3E0D0A0500000067006C006F0062006500530900003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22233743423334322220643D224D3234
+ 2C344331332C342C342C31332C342C323473392C32302C32302C32307332302D
+ 392C32302D32305333352C342C32342C347A222F3E0D0A202020203C70617468
+ 2066696C6C3D22233032373742442220643D224D34352C323463302C31312E37
+ 2D392E352C32312D32312C323153332C33352E372C332C32345331322E332C33
+ 2C32342C335334352C31322E332C34352C32347A204D32332E382C33332E3763
+ 302D302E342D302E322D302E362D302E362D302E3820632D312E332D302E342D
+ 322E352D302E342D332E362D312E35632D302E322D302E342D302E322D302E38
+ 2D302E342D312E33632D302E342D302E342D312E352D302E362D322E312D302E
+ 38632D302E382C302D312E372C302D322E372C30632D302E342C302D312E312C
+ 302D312E352C3020632D302E362D302E322D312E312D312E312D312E352D312E
+ 3763302D302E322C302D302E362D302E342D302E36632D302E342D302E322D30
+ 2E382C302E322D312E332C30632D302E322D302E322D302E322D302E342D302E
+ 322D302E3663302D302E362C302E342D312E332C302E382D312E372063302E36
+ 2D302E342C312E332C302E322C312E392C302E3263302E322C302C302E322C30
+ 2C302E342C302E3263302E362C302E322C302E382C312C302E382C312E376330
+ 2C302E322C302C302E342C302C302E3463302C302E322C302E322C302E322C30
+ 2E342C302E322063302E322D312E312C302E322D322E312C302E342D332E3263
+ 302D312E332C312E332D322E352C322E332D322E3963302E342D302E322C302E
+ 362C302E322C312E312C3063312E332D302E342C342E342D312E372C332E382D
+ 332E34632D302E342D312E352D312E372D322E392D332E342D322E3720632D30
+ 2E342C302E322D302E362C302E342D312C302E36632D302E362C302E342D312E
+ 392C312E372D322E352C312E37632D312E312D302E322D312E312D312E372D30
+ 2E382D322E3363302E322D302E382C322E312D332E362C332E342D332E316330
+ 2E322C302E322C302E362C302E362C302E382C302E382063302E342C302E322C
+ 312E312C302E322C312E372C302E3263302E322C302C302E342C302C302E362D
+ 302E3263302E322D302E322C302E322D302E322C302E322D302E3463302D302E
+ 362D302E362D312E332D312D312E37632D302E342D302E342D312E312D302E38
+ 2D312E372D312E3120632D322E312D302E362D352E352C302E322D372E312C31
+ 2E37732D322E392C342D332E382C362E31632D302E342C312E332D302E382C32
+ 2E392D312C342E34632D302E322C312D302E342C312E392C302E322C322E3963
+ 302E362C312E332C312E392C322E352C332E322C332E342063302E382C302E36
+ 2C322E352C302E362C332E342C312E3763302E362C302E382C302E342C312E39
+ 2C302E342C322E3963302C312E332C302E382C322E332C312E332C332E346330
+ 2E322C302E362C302E342C312E352C302E362C322E3163302C302E322C302E32
+ 2C312E352C302E322C312E372063312E332C302E362C322E332C312E332C332E
+ 382C312E3763302E322C302C312D312E332C312D312E3563302E362D302E362C
+ 312E312D312E352C312E372D312E3963302E342D302E322C302E382D302E342C
+ 312E332D302E3863302E342D302E342C302E362D312E332C302E382D312E3920
+ 4332332E382C33352E312C32342C33342E332C32332E382C33332E377A204D32
+ 342E322C31342E3363302E322C302C302E342D302E322C302E382D302E346330
+ 2E362D302E342C312E332D312E312C312E392D312E3563302E362D302E342C31
+ 2E332D312E312C312E372D312E352063302E362D302E342C312E312D312E332C
+ 312E332D312E3963302E322D302E342C302E382D312E332C302E362D312E3963
+ 2D302E322D302E342D312E332D302E362D312E372D302E38632D312E372D302E
+ 342D332E312D302E362D342E382D302E36632D302E362C302D312E352C302E32
+ 2D312E372C302E3820632D302E322C312E312C302E362C302E382C312E352C31
+ 2E3163302C302C302E322C312E372C302E322C312E3963302E322C312D302E34
+ 2C312E372D302E342C322E3763302C302E362C302C312E372C302E342C322E31
+ 4C32342E322C31342E337A204D34312E382C32392063302E322D302E342C302E
+ 322D312E312C302E342D312E3563302E322D312C302E322D322E312C302E322D
+ 332E3163302D322E312D302E322D342E322D302E382D362E31632D302E342D30
+ 2E362D302E362D312E332D302E382D312E39632D302E342D312E312D312D322E
+ 312D312E392D322E3920632D302E382D312E312D312E392D342D332E382D332E
+ 31632D302E362C302E322D312C312D312E352C312E35632D302E342C302E362D
+ 302E382C312E332D312E332C312E39632D302E322C302E322D302E342C302E36
+ 2D302E322C302E3863302C302E322C302E322C302E322C302E342C302E322063
+ 302E342C302E322C302E362C302E322C312C302E3463302E322C302C302E342C
+ 302E322C302E322C302E3463302C302C302C302E322D302E322C302E32632D31
+ 2C312E312D322E312C312E392D332E312C322E39632D302E322C302E322D302E
+ 342C302E362D302E342C302E382063302C302E322C302E322C302E322C302E32
+ 2C302E3463302C302E322D302E322C302E322D302E342C302E34632D302E342C
+ 302E322D302E382C302E342D312E312C302E36632D302E322C302E342C302C31
+ 2E312D302E322C312E35632D302E322C312E312D302E382C312E392D312E332C
+ 322E3920632D302E342C302E362D302E362C312E332D312C312E3963302C302E
+ 382D302E322C312E352C302E322C322E3163312C312E352C322E392C302E362C
+ 342E342C312E3363302E342C302E322C302E382C302E322C312E312C302E3663
+ 302E362C302E362C302E362C312E372C302E382C322E332063302E322C302E38
+ 2C302E342C312E372C302E382C322E3563302E322C312C302E362C322E312C30
+ 2E382C322E3963312E392D312E352C332E362D332E312C342E382D352E324334
+ 302E362C33322E342C34312E322C33302E372C34312E382C32397A222F3E0D0A
+ 3C2F7376673E0D0A0D00000067006F006F0064005F0064006500630069007300
+ 69006F006E00790200003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C672066696C
+ 6C3D2223464643433830223E0D0A20202020202020203C636972636C65206378
+ 3D223338222063793D2232362220723D2234222F3E0D0A20202020202020203C
+ 636972636C652063783D223130222063793D2232362220723D2234222F3E0D0A
+ 20202020202020203C7061746820643D224D33392C313963302D31322E372D33
+ 302D382E332D33302C3063302C312E382C302C382E322C302C313063302C382E
+ 332C362E372C31352C31352C31357331352D362E372C31352D31354333392C32
+ 372E322C33392C32302E382C33392C31397A222F3E0D0A20202020202020203C
+ 7061746820643D224D32342C344331352E322C342C382C31312E322C382C3230
+ 63302C312E322C302C332E352C302C332E356C322E312C302E365631396C3139
+ 2E352D362E336C382E322C362E3376352E316C322E312D302E3663302C302C30
+ 2D322E332C302D332E35204334302C31322E352C33342E362C342C32342C347A
+ 222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223344341
+ 463530223E0D0A20202020202020203C7265637420783D2232322220793D2231
+ 36222077696474683D223422206865696768743D223138222F3E0D0A20202020
+ 202020203C7265637420783D2231352220793D223233222077696474683D2231
+ 3822206865696768743D2234222F3E0D0A202020203C2F673E0D0A3C2F737667
+ 3E0D0A0600000067006F006F0067006C006500660500003C3F786D6C20766572
+ 73696F6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A3C
+ 212D2D2047656E657261746F723A2041646F626520496C6C7573747261746F72
+ 2031352E302E302C20535647204578706F727420506C75672D496E202E205356
+ 472056657273696F6E3A20362E3030204275696C6420302920202D2D3E0D0A3C
+ 21444F435459504520737667205055424C494320222D2F2F5733432F2F445444
+ 2053564720312E312F2F454E222022687474703A2F2F7777772E77332E6F7267
+ 2F47726170686963732F5356472F312E312F4454442F73766731312E64746422
+ 3E0D0A3C7376672076657273696F6E3D22312E31222020786D6C6E733D226874
+ 74703A2F2F7777772E77332E6F72672F323030302F7376672220786D6C6E733A
+ 786C696E6B3D22687474703A2F2F7777772E77332E6F72672F313939392F786C
+ 696E6B2220783D223070782220793D22307078220D0A092077696474683D2234
+ 38707822206865696768743D2234387078222076696577426F783D2230203020
+ 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
+ 302034382034382220786D6C3A73706163653D227072657365727665223E0D0A
+ 3C706174682066696C6C3D22234646433130372220643D224D34332E3631312C
+ 32302E30383348343256323048323476386831312E333033632D312E3634392C
+ 342E3635372D362E30382C382D31312E3330332C38632D362E3632372C302D31
+ 322D352E3337332D31322D31320D0A0963302D362E3632372C352E3337332D31
+ 322C31322D313263332E3035392C302C352E3834322C312E3135342C372E3936
+ 312C332E3033396C352E3635372D352E3635374333342E3034362C362E303533
+ 2C32392E3236382C342C32342C344331322E3935352C342C342C31322E393535
+ 2C342C32340D0A0963302C31312E3034352C382E3935352C32302C32302C3230
+ 6331312E3034352C302C32302D382E3935352C32302D32304334342C32322E36
+ 35392C34332E3836322C32312E33352C34332E3631312C32302E3038337A222F
+ 3E0D0A3C706174682066696C6C3D22234646334430302220643D224D362E3330
+ 362C31342E3639316C362E3537312C342E3831394331342E3635352C31352E31
+ 30382C31382E3936312C31322C32342C313263332E3035392C302C352E383432
+ 2C312E3135342C372E3936312C332E3033396C352E3635372D352E3635370D0A
+ 094333342E3034362C362E3035332C32392E3236382C342C32342C344331362E
+ 3331382C342C392E3635362C382E3333372C362E3330362C31342E3639317A22
+ 2F3E0D0A3C706174682066696C6C3D22233443414635302220643D224D32342C
+ 343463352E3136362C302C392E38362D312E3937372C31332E3430392D352E31
+ 39326C2D362E31392D352E3233384332392E3231312C33352E3039312C32362E
+ 3731352C33362C32342C33360D0A09632D352E3230322C302D392E3631392D33
+ 2E3331372D31312E3238332D372E3934366C2D362E3532322C352E3032354339
+ 2E3530352C33392E3535362C31362E3232372C34342C32342C34347A222F3E0D
+ 0A3C706174682066696C6C3D22233139373644322220643D224D34332E363131
+ 2C32302E30383348343256323048323476386831312E333033632D302E373932
+ 2C322E3233372D322E3233312C342E3136362D342E3038372C352E3537310D0A
+ 0963302E3030312D302E3030312C302E3030322D302E3030312C302E3030332D
+ 302E3030326C362E31392C352E3233384333362E3937312C33392E3230352C34
+ 342C33342C34342C32344334342C32322E3635392C34332E3836322C32312E33
+ 352C34332E3631312C32302E3038337A222F3E0D0A3C2F7376673E0D0A0E0000
+ 00670072006100640075006100740069006F006E005F00630061007000E70200
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C672066696C6C3D22233337343734
+ 46223E0D0A20202020202020203C7265637420783D22392220793D2232302220
+ 77696474683D22333022206865696768743D223133222F3E0D0A202020202020
+ 20203C656C6C697073652063783D223234222063793D223333222072783D2231
+ 35222072793D2236222F3E0D0A202020203C2F673E0D0A202020203C70617468
+ 2066696C6C3D22233738393039432220643D224D32332E312C382E324C302E36
+ 2C31382E31632D302E382C302E342D302E382C312E352C302C312E396C32322E
+ 352C392E3963302E362C302E322C312E322C302E322C312E382C306C32322E35
+ 2D392E3963302E382D302E342C302E382D312E352C302D312E39204C32342E39
+ 2C382E324332342E332C372E392C32332E372C372E392C32332E312C382E327A
+ 222F3E0D0A202020203C672066696C6C3D2223333734373446223E0D0A202020
+ 20202020203C7061746820643D224D34332E322C32302E346C2D32302D332E34
+ 632D302E352D302E312D312E312C302E332D312E322C302E38632D302E312C30
+ 2E352C302E332C312E312C302E382C312E324C34322C32322E3256333763302C
+ 302E362C302E342C312C312C312073312D302E342C312D315632312E34433434
+ 2C32302E392C34332E362C32302E352C34332E322C32302E347A222F3E0D0A20
+ 202020202020203C636972636C652063783D223433222063793D223337222072
+ 3D2232222F3E0D0A20202020202020203C7061746820643D224D34362C343063
+ 302C312E372D332C362D332C36732D332D342E332D332D3673312E332D332C33
+ 2D335334362C33382E332C34362C34307A222F3E0D0A202020203C2F673E0D0A
+ 3C2F7376673E0D0A040000006700720069006400C40100003C73766720766572
+ 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
+ 672F323030302F737667222076696577426F783D223020302034382034382220
+ 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
+ 223E0D0A202020203C706174682066696C6C3D22233930434146392220643D22
+ 4D372C37763334683334563748377A204D33392C3135682D3656396836563135
+ 7A204D32352C31355639683676364832357A204D33312C31377636682D36762D
+ 364833317A204D32332C3135682D36563968365631357A204D32332C31377636
+ 682D36762D36204832337A204D31352C32334839762D3668365632337A204D31
+ 352C323576364839762D364831357A204D31372C323568367636682D36563235
+ 7A204D32332C33337636682D36762D364832337A204D32352C33336836763668
+ 2D365633337A204D32352C3331762D36683676364832357A204D33332C323568
+ 367636682D36205632357A204D33332C3233762D36683676364833337A204D31
+ 352C397636483956394831357A204D392C33336836763648395633337A204D33
+ 332C3339762D36683676364833337A222F3E0D0A3C2F7376673E0D0A07000000
+ 6800650061006400730065007400A10100003C7376672076657273696F6E3D22
+ 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
+ 2F737667222076696577426F783D223020302034382034382220656E61626C65
+ 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
+ 20203C706174682066696C6C3D22233030393741372220643D224D32342C3543
+ 31342E312C352C362C31332E312C362C3233763135683456323363302D372E37
+ 2C362E332D31342C31342D31347331342C362E332C31342C3134763135683456
+ 32334334322C31332E312C33332E392C352C32342C357A222F3E0D0A20202020
+ 3C706174682066696C6C3D22233337343734462220643D224D33382C3433682D
+ 34563331683463322E322C302C342C312E382C342C3476344334322C34312E32
+ 2C34302E322C34332C33382C34337A222F3E0D0A202020203C70617468206669
+ 6C6C3D22233337343734462220643D224D31302C34336834563331682D34632D
+ 322E322C302D342C312E382D342C34763443362C34312E322C372E382C34332C
+ 31302C34337A222F3E0D0A3C2F7376673E0D0A0800000068006500610074005F
+ 006D00610070009F0200003C7376672076657273696F6E3D22312220786D6C6E
+ 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E657720302030203438203438223E0D0A202020203C706F6C79
+ 676F6E2066696C6C3D22234346443844432220706F696E74733D22392C333920
+ 392C3620372C3620372C34312034322C34312034322C3339222F3E0D0A202020
+ 203C672066696C6C3D2223303042434434223E0D0A20202020202020203C6369
+ 72636C652063783D223134222063793D2231312220723D2232222F3E0D0A2020
+ 2020202020203C636972636C652063783D223332222063793D2231312220723D
+ 2232222F3E0D0A20202020202020203C636972636C652063783D223339222063
+ 793D2231312220723D2232222F3E0D0A20202020202020203C636972636C6520
+ 63783D223233222063793D2231312220723D2234222F3E0D0A20202020202020
+ 203C636972636C652063783D223134222063793D2233332220723D2232222F3E
+ 0D0A20202020202020203C636972636C652063783D223330222063793D223333
+ 2220723D2232222F3E0D0A20202020202020203C636972636C652063783D2232
+ 32222063793D2233332220723D2233222F3E0D0A20202020202020203C636972
+ 636C652063783D223338222063793D2233332220723D2234222F3E0D0A202020
+ 20202020203C636972636C652063783D223134222063793D2232322220723D22
+ 32222F3E0D0A20202020202020203C636972636C652063783D22333922206379
+ 3D2232322220723D2232222F3E0D0A20202020202020203C636972636C652063
+ 783D223332222063793D2232322220723D2233222F3E0D0A202020203C2F673E
+ 0D0A3C2F7376673E0D0A0C00000068006900670068005F006200610074007400
+ 650072007900CD0100003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C672066696C
+ 6C3D2223434644384443223E0D0A20202020202020203C7061746820643D224D
+ 33342C3434483134632D312E312C302D322D302E392D322D32563863302D312E
+ 312C302E392D322C322D3268323063312E312C302C322C302E392C322C327633
+ 344333362C34332E312C33352E312C34342C33342C34347A222F3E0D0A202020
+ 20202020203C7061746820643D224D32382C3133682D38632D302E362C302D31
+ 2D302E342D312D31563563302D302E362C302E342D312C312D31683863302E36
+ 2C302C312C302E342C312C3176374332392C31322E362C32382E362C31332C32
+ 382C31337A222F3E0D0A202020203C2F673E0D0A202020203C70617468206669
+ 6C6C3D22233842433334412220643D224D33342C3434483134632D312E312C30
+ 2D322D302E392D322D325631336832347632394333362C34332E312C33352E31
+ 2C34342C33342C34347A222F3E0D0A3C2F7376673E0D0A0D0000006800690067
+ 0068005F007000720069006F007200690074007900B70200003C737667207665
+ 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
+ 72672F323030302F737667222076696577426F783D2230203020343820343822
+ 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
+ 38223E0D0A202020203C706174682066696C6C3D22234634343333362220643D
+ 224D32312E322C34342E386C2D31382D3138632D312E362D312E362D312E362D
+ 342E312C302D352E376C31382D313863312E362D312E362C342E312D312E362C
+ 352E372C306C31382C313863312E362C312E362C312E362C342E312C302C352E
+ 376C2D31382C3138204332352E332C34362E342C32322E372C34362E342C3231
+ 2E322C34342E387A222F3E0D0A202020203C706174682066696C6C3D22236666
+ 662220643D224D32312E362C33322E3763302D302E332C302E312D302E362C30
+ 2E322D302E3963302E312D302E332C302E332D302E352C302E352D302E376330
+ 2E322D302E322C302E352D302E342C302E382D302E3573302E362D302E322C31
+ 2D302E322073302E372C302E312C312C302E3263302E332C302E312C302E362C
+ 302E332C302E382C302E3563302E322C302E322C302E342C302E342C302E352C
+ 302E3763302E312C302E332C302E322C302E362C302E322C302E39732D302E31
+ 2C302E362D302E322C302E39732D302E332C302E352D302E352C302E3720632D
+ 302E322C302E322D302E352C302E342D302E382C302E35632D302E332C302E31
+ 2D302E362C302E322D312C302E32732D302E372D302E312D312D302E32732D30
+ 2E352D302E332D302E382D302E35632D302E322D302E322D302E342D302E342D
+ 302E352D302E375332312E362C33332E312C32312E362C33322E377A204D3235
+ 2E382C32382E31682D332E364C32312E372C313368342E364C32352E382C3238
+ 2E317A222F3E0D0A3C2F7376673E0D0A0400000068006F006D0065009C020000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 4538454146362220706F696E74733D2234322C333920362C333920362C323320
+ 32342C362034322C3233222F3E0D0A202020203C672066696C6C3D2223433543
+ 414539223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22
+ 33392C32312033342C31362033342C392033392C39222F3E0D0A202020202020
+ 20203C7265637420783D22362220793D223339222077696474683D2233362220
+ 6865696768743D2235222F3E0D0A202020203C2F673E0D0A202020203C706F6C
+ 79676F6E2066696C6C3D22234237314331432220706F696E74733D2232342C34
+ 2E3320342C32322E3920362C32352E312032342C382E342034322C32352E3120
+ 34342C32322E39222F3E0D0A202020203C7265637420783D2231382220793D22
+ 3238222066696C6C3D2223443834333135222077696474683D22313222206865
+ 696768743D223136222F3E0D0A202020203C7265637420783D2232312220793D
+ 223137222066696C6C3D2223303135373942222077696474683D223622206865
+ 696768743D2236222F3E0D0A202020203C706174682066696C6C3D2223464638
+ 4136352220643D224D32372E352C33352E35632D302E332C302D302E352C302E
+ 322D302E352C302E35763263302C302E332C302E322C302E352C302E352C302E
+ 355332382C33382E332C32382C3338762D324332382C33352E372C32372E382C
+ 33352E352C32372E352C33352E357A222F3E0D0A3C2F7376673E0D0A0A000000
+ 690063006F006E00730038005F00630075007000070300003C73766720766572
+ 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
+ 672F323030302F737667222076696577426F783D223020302034382034382220
+ 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
+ 223E0D0A202020203C706174682066696C6C3D22233443414635302220643D22
+ 4D34302C313448386C332E382C32382E3363302E312C312C312C312E372C322C
+ 312E376832302E3563312C302C312E382D302E372C322D312E374C34302C3134
+ 7A222F3E0D0A202020203C672066696C6C3D2223383143373834223E0D0A2020
+ 2020202020203C7061746820643D224D34322C31344836762D3363302D322E32
+ 2C312E382D342C342D3468323863322E322C302C342C312E382C342C34563134
+ 7A222F3E0D0A20202020202020203C7061746820643D224D33372E322C313048
+ 31302E386C312E372D342E3763302E332D302E382C312D312E332C312E392D31
+ 2E336831392E3263302E382C302C312E362C302E352C312E392C312E334C3337
+ 2E322C31307A222F3E0D0A202020203C2F673E0D0A202020203C706174682066
+ 696C6C3D22234538463545392220643D224D32382C32382E3563312E322D312E
+ 312C322D322E372C322D342E3563302D332E332D322E372D362D362D36632D33
+ 2E332C302D362C322E372D362C3663302C312E382C302E382C332E342C322C34
+ 2E35632D312E322C312E312D322C322E372D322C342E352063302C332E332C32
+ 2E372C362C362C3663332E332C302C362D322E372C362D364333302C33312E32
+ 2C32392E322C32392E362C32382C32382E357A204D32342C3336632D312E372C
+ 302D332D312E332D332D3363302D312E372C312E332D332C332D3363312E372C
+ 302C332C312E332C332C33204332372C33342E372C32352E372C33362C32342C
+ 33367A204D32342C3237632D312E372C302D332D312E332D332D3363302D312E
+ 372C312E332D332C332D3363312E372C302C332C312E332C332C334332372C32
+ 352E372C32352E372C32372C32342C32377A222F3E0D0A3C2F7376673E0D0A04
+ 0000006900640065006100160400003C7376672076657273696F6E3D22312220
+ 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
+ 67222076696577426F783D223020302034382034382220656E61626C652D6261
+ 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
+ 636972636C652066696C6C3D2223464646353944222063783D22323422206379
+ 3D2232322220723D223230222F3E0D0A202020203C706174682066696C6C3D22
+ 234642433032442220643D224D33372C323263302D372E372D362E362D31332E
+ 382D31342E352D31322E39632D362C302E372D31302E382C352E352D31312E34
+ 2C31312E35632D302E352C342E362C312E342C382E372C342E362C31312E3320
+ 63312E342C312E322C322E332C322E392C322E332C342E38563337683132762D
+ 302E3163302D312E382C302E382D332E362C322E322D342E384333352E312C32
+ 392E372C33372C32362E312C33372C32327A222F3E0D0A202020203C70617468
+ 2066696C6C3D22234646463539442220643D224D33302E362C32302E326C2D33
+ 2D32632D302E332D302E322D302E382D302E322D312E312C304C32342C31392E
+ 386C2D322E342D312E36632D302E332D302E322D302E382D302E322D312E312C
+ 306C2D332C3220632D302E322C302E322D302E342C302E342D302E342C302E37
+ 73302C302E362C302E322C302E386C332E382C342E3756333768325632366330
+ 2D302E322D302E312D302E342D302E322D302E366C2D332E332D342E316C312E
+ 352D316C322E342C312E3663302E332C302E322C302E382C302E322C312E312C
+ 30206C322E342D312E366C312E352C316C2D332E332C342E314332352E312C32
+ 352E362C32352C32352E382C32352C323676313168325632362E346C332E382D
+ 342E3763302E322D302E322C302E332D302E352C302E322D302E385333302E38
+ 2C32302E332C33302E362C32302E327A222F3E0D0A202020203C636972636C65
+ 2066696C6C3D2223354336424330222063783D223234222063793D2234342220
+ 723D2233222F3E0D0A202020203C706174682066696C6C3D2223394641384441
+ 2220643D224D32362C3435682D34632D322E322C302D342D312E382D342D3476
+ 2D3568313276354333302C34332E322C32382E322C34352C32362C34357A222F
+ 3E0D0A202020203C672066696C6C3D2223354336424330223E0D0A2020202020
+ 2020203C7061746820643D224D33302C34316C2D31312E362C312E3663302E33
+ 2C302E372C302E392C312E342C312E362C312E386C392E342D312E334332392E
+ 382C34322E352C33302C34312E382C33302C34317A222F3E0D0A202020202020
+ 20203C706F6C79676F6E20706F696E74733D2231382C33382E372031382C3430
+ 2E372033302C33392033302C3337222F3E0D0A202020203C2F673E0D0A3C2F73
+ 76673E0D0A0A00000069006D006100670065005F00660069006C006500A30100
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22
+ 233930434146392220706F696E74733D2234302C343520382C343520382C3320
+ 33302C332034302C3133222F3E0D0A202020203C706F6C79676F6E2066696C6C
+ 3D22234531463546452220706F696E74733D2233382E352C31342032392C3134
+ 2032392C342E35222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 3135363543302220706F696E74733D2232312C32332031342C33332032382C33
+ 33222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223313937364432
+ 2220706F696E74733D2232382C32362E342032332C33332033332C3333222F3E
+ 0D0A202020203C636972636C652066696C6C3D2223313937364432222063783D
+ 2233312E35222063793D2232342E352220723D22312E35222F3E0D0A3C2F7376
+ 673E0D0A0600000069006D0070006F0072007400710100003C73766720766572
+ 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
+ 672F323030302F737667222076696577426F783D223020302034382034382220
+ 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
+ 223E0D0A202020203C706174682066696C6C3D22234638424244302220643D22
+ 4D372C3430563863302D322E322C312E382D342C342D3468323463322E322C30
+ 2C342C312E382C342C3476333263302C322E322D312E382C342D342C34483131
+ 43382E382C34342C372C34322E322C372C34307A222F3E0D0A202020203C6720
+ 66696C6C3D2223453931453633223E0D0A20202020202020203C706F6C79676F
+ 6E20706F696E74733D2231332E332C32342032342C31352032342C3333222F3E
+ 0D0A20202020202020203C7265637420783D2231392220793D22323122207769
+ 6474683D22323322206865696768743D2236222F3E0D0A202020203C2F673E0D
+ 0A3C2F7376673E0D0A0A00000069006E005F007400720061006E007300690074
+ 00E20400003C7376672076657273696F6E3D22312220786D6C6E733D22687474
+ 703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F78
+ 3D223020302034382034382220656E61626C652D6261636B67726F756E643D22
+ 6E657720302030203438203438223E0D0A202020203C706174682066696C6C3D
+ 22234646433130372220643D224D34342C333648333056313663302D312E312C
+ 302E392D322C322D32683863302E362C302C312E322C302E332C312E362C302E
+ 386C362C372E3763302E332C302E342C302E342C302E382C302E342C312E3256
+ 3332204334382C33342E322C34362E322C33362C34342C33367A222F3E0D0A20
+ 2020203C672066696C6C3D2223393537354344223E0D0A20202020202020203C
+ 7061746820643D224D382C333668323256313363302D322E322D312E382D342D
+ 342D34483476323343342C33342E322C352E382C33362C382C33367A222F3E0D
+ 0A20202020202020203C7265637420793D2239222077696474683D2231302220
+ 6865696768743D2232222F3E0D0A20202020202020203C7265637420793D2231
+ 34222077696474683D22313022206865696768743D2232222F3E0D0A20202020
+ 202020203C7265637420793D223139222077696474683D223130222068656967
+ 68743D2232222F3E0D0A20202020202020203C7265637420793D223234222077
+ 696474683D22313022206865696768743D2232222F3E0D0A202020203C2F673E
+ 0D0A202020203C672066696C6C3D2223374535374332223E0D0A202020202020
+ 20203C7265637420783D22342220793D223131222077696474683D2231362220
+ 6865696768743D2232222F3E0D0A20202020202020203C7265637420783D2234
+ 2220793D223136222077696474683D22313222206865696768743D2232222F3E
+ 0D0A20202020202020203C7265637420783D22342220793D2232312220776964
+ 74683D223822206865696768743D2232222F3E0D0A20202020202020203C7265
+ 637420783D22342220793D223236222077696474683D22342220686569676874
+ 3D2232222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223
+ 333734373446223E0D0A20202020202020203C636972636C652063783D223339
+ 222063793D2233362220723D2235222F3E0D0A20202020202020203C63697263
+ 6C652063783D223136222063793D2233362220723D2235222F3E0D0A20202020
+ 3C2F673E0D0A202020203C672066696C6C3D2223373839303943223E0D0A2020
+ 2020202020203C636972636C652063783D223339222063793D2233362220723D
+ 22322E35222F3E0D0A20202020202020203C636972636C652063783D22313622
+ 2063793D2233362220723D22322E35222F3E0D0A202020203C2F673E0D0A2020
+ 20203C706174682066696C6C3D22233435354136342220643D224D34342C3236
+ 682D332E36632D302E332C302D302E352D302E312D302E372D302E336C2D312E
+ 342D312E34632D302E322D302E322D302E342D302E332D302E372D302E334833
+ 34632D302E362C302D312D302E342D312D31762D362063302D302E362C302E34
+ 2D312C312D3168352E3563302E332C302C302E362C302E312C302E382C302E34
+ 6C342E352C352E3463302E312C302E322C302E322C302E342C302E322C302E36
+ 5632354334352C32352E362C34342E362C32362C34342C32367A222F3E0D0A3C
+ 2F7376673E0D0A0400000069006E0066006F001B0100003C7376672076657273
+ 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
+ 2F323030302F737667222076696577426F783D22302030203438203438222065
+ 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
+ 3E0D0A202020203C636972636C652066696C6C3D222332313936463322206378
+ 3D223234222063793D2232342220723D223231222F3E0D0A202020203C726563
+ 7420783D2232322220793D223232222066696C6C3D2223666666222077696474
+ 683D223422206865696768743D223131222F3E0D0A202020203C636972636C65
+ 2066696C6C3D2223666666222063783D223234222063793D2231362E35222072
+ 3D22322E35222F3E0D0A3C2F7376673E0D0A0A00000069006E00730070006500
+ 6300740069006F006E00EF0200003C7376672076657273696F6E3D2231222078
+ 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
+ 222076696577426F783D223020302034382034382220656E61626C652D626163
+ 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C70
+ 6174682066696C6C3D22233435354136342220643D224D33362C344832366330
+ 2C312E312D302E392C322D322C32732D322D302E392D322D3248313243392E38
+ 2C342C382C352E382C382C3876333263302C322E322C312E382C342C342C3468
+ 323463322E322C302C342D312E382C342D345638204334302C352E382C33382E
+ 322C342C33362C347A222F3E0D0A202020203C706174682066696C6C3D222366
+ 66662220643D224D33362C3431483132632D302E362C302D312D302E342D312D
+ 31563863302D302E362C302E342D312C312D3168323463302E362C302C312C30
+ 2E342C312C317633324333372C34302E362C33362E362C34312C33362C34317A
+ 222F3E0D0A202020203C672066696C6C3D2223393041344145223E0D0A202020
+ 20202020203C7061746820643D224D32362C3463302C312E312D302E392C322D
+ 322C32732D322D302E392D322D32682D37763463302C312E312C302E392C322C
+ 322C3268313463312E312C302C322D302E392C322D3256344832367A222F3E0D
+ 0A20202020202020203C7061746820643D224D32342C30632D322E322C302D34
+ 2C312E382D342C3473312E382C342C342C3473342D312E382C342D345332362E
+ 322C302C32342C307A204D32342C36632D312E312C302D322D302E392D322D32
+ 73302E392D322C322D3273322C302E392C322C32205332352E312C362C32342C
+ 367A222F3E0D0A202020203C2F673E0D0A202020203C706F6C79676F6E206669
+ 6C6C3D22233443414635302220706F696E74733D2233302E362C31382E362032
+ 312E362C32372E362031372E342C32332E332031342E392C32352E382032312E
+ 372C33322E352033332E312C32312E31222F3E0D0A3C2F7376673E0D0A110000
+ 0069006E00740065006700720061007400650064005F00770065006200630061
+ 006D003A0200003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
+ 6C3D22233630374438422220643D224D33382C3432483130632D322E322C302D
+ 342D312E382D342D3456313063302D322E322C312E382D342C342D3468323863
+ 322E322C302C342C312E382C342C347632384334322C34302E322C34302E322C
+ 34322C33382C34327A222F3E0D0A202020203C636972636C652066696C6C3D22
+ 23343535413634222063783D223234222063793D2232342220723D223132222F
+ 3E0D0A202020203C636972636C652066696C6C3D222334324135463522206378
+ 3D223234222063793D2232342220723D2239222F3E0D0A202020203C70617468
+ 2066696C6C3D22233930434146392220643D224D32382E382C3231632D312E32
+ 2D312E342D332D322E322D342E382D322E32732D332E362C302E382D342E382C
+ 322E32632D302E352C302E352D302E342C312E332C302E312C312E3863302E35
+ 2C302E352C312E332C302E342C312E382D302E312063312E352D312E372C342E
+ 332D312E372C352E382C3063302E332C302E332C302E362C302E342C312C302E
+ 3463302E332C302C302E362D302E312C302E392D302E334332392E322C32322E
+ 342C32392E332C32312E352C32382E382C32317A222F3E0D0A3C2F7376673E0D
+ 0A0800000069006E007400650072006E0061006C00300100003C737667207665
+ 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
+ 72672F323030302F737667222076696577426F783D2230203020343820343822
+ 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
+ 38223E0D0A202020203C636972636C652066696C6C3D22234233453546432220
+ 63783D223234222063793D2233302220723D223135222F3E0D0A202020203C67
+ 2066696C6C3D2223313536354330223E0D0A20202020202020203C706F6C7967
+ 6F6E20706F696E74733D2232342C33382E372031352C32382033332C3238222F
+ 3E0D0A20202020202020203C7265637420783D2232312220793D223522207769
+ 6474683D223622206865696768743D223236222F3E0D0A202020203C2F673E0D
+ 0A3C2F7376673E0D0A0600000069006E0076006900740065003A0200003C7376
+ 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
+ 77332E6F72672F323030302F737667222076696577426F783D22302030203438
+ 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
+ 3438203438223E0D0A202020203C706174682066696C6C3D2223373839303943
+ 2220643D224D34302C34314838632D322E322C302D342D312E382D342D346C30
+ 2D32302E3963302D312E332C302E362D322E352C312E372D332E334C32342C30
+ 6C31382E332C31322E3863312E312C302E372C312E372C322C312E372C332E33
+ 563337204334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A
+ 202020203C7265637420783D2231322220793D223131222066696C6C3D222366
+ 6666222077696474683D22323422206865696768743D223232222F3E0D0A2020
+ 20203C706174682066696C6C3D22234346443844432220643D224D34302C3431
+ 4838632D322E322C302D342D312E382D342D346C302D32306C32302C31336C32
+ 302D31337632304334342C33392E322C34322E322C34312C34302C34317A222F
+ 3E0D0A202020203C672066696C6C3D2223344341463530223E0D0A2020202020
+ 2020203C7265637420783D2232322220793D223134222077696474683D223422
+ 206865696768743D223132222F3E0D0A20202020202020203C7265637420783D
+ 2231382220793D223138222077696474683D22313222206865696768743D2234
+ 222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A040000006900700061
+ 006400950100003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
+ 6C3D22234533383933392220643D224D382C3431563763302D322E322C312E38
+ 2D342C342D3468323463322E322C302C342C312E382C342C3476333463302C32
+ 2E322D312E382C342D342C3448313243392E382C34352C382C34332E322C382C
+ 34317A222F3E0D0A202020203C706174682066696C6C3D222346464633453022
+ 20643D224D33362C36483132632D302E362C302D312C302E342D312C31763331
+ 63302C302E362C302E342C312C312C3168323463302E362C302C312D302E342C
+ 312D3156374333372C362E342C33362E362C362C33362C367A222F3E0D0A2020
+ 20203C636972636C652066696C6C3D2223413636343241222063783D22323422
+ 2063793D2234322220723D22312E35222F3E0D0A3C2F7376673E0D0A06000000
+ 6900700068006F006E006500990100003C7376672076657273696F6E3D223122
+ 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
+ 7667222076696577426F783D223020302034382034382220656E61626C652D62
+ 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
+ 3C706174682066696C6C3D22234533383933392220643D224D31322C34305638
+ 63302D322E322C312E382D342C342D3468313663322E322C302C342C312E382C
+ 342C3476333263302C322E322D312E382C342D342C344831364331332E382C34
+ 342C31322C34322E322C31322C34307A222F3E0D0A202020203C706174682066
+ 696C6C3D22234646463345302220643D224D33322C37483136632D302E362C30
+ 2D312C302E342D312C3176323963302C302E362C302E342C312C312C31683136
+ 63302E362C302C312D302E342C312D3156384333332C372E342C33322E362C37
+ 2C33322C377A222F3E0D0A202020203C636972636C652066696C6C3D22234136
+ 36343241222063783D223234222063793D2234312220723D22312E35222F3E0D
+ 0A3C2F7376673E0D0A030000006B0065007900AB0200003C7376672076657273
+ 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
+ 2F323030302F737667222076696577426F783D22302030203438203438222065
+ 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
+ 3E0D0A202020203C672066696C6C3D2223464641303030223E0D0A2020202020
+ 2020203C706F6C79676F6E20706F696E74733D2233302C34312032362C343520
+ 32322C34352031382C34312031382C32312033302C32312033302C3239203238
+ 2C33312033302C33332033302C33352032382C33372033302C3339222F3E0D0A
+ 20202020202020203C7061746820643D224D33382C372E384333372E352C362C
+ 33362C342E372C33342E332C342E324333312E392C332E372C32382E322C332C
+ 32342C33732D372E392C302E372D31302E332C312E324331322C342E372C3130
+ 2E352C362C31302C372E3820632D302E352C312E372D312C342E312D312C362E
+ 3763302C322E362C302E352C352C312C362E3763302E352C312E382C312E392C
+ 332E312C332E372C332E354331362E312C32352E332C31392E382C32362C3234
+ 2C323673372E392D302E372C31302E332D312E322063312E382D302E342C332E
+ 322D312E382C332E372D332E3563302E352D312E372C312D342E312C312D362E
+ 374333392C31312E392C33382E352C392E352C33382C372E387A204D32392C31
+ 33483139632D312E312C302D322D302E392D322D32563963302D302E362C332E
+ 312D312C372D3173372C302E342C372C317632204333312C31322E312C33302E
+ 312C31332C32392C31337A222F3E0D0A202020203C2F673E0D0A202020203C72
+ 65637420783D2232332220793D223236222066696C6C3D222344363836303022
+ 2077696474683D223222206865696768743D223139222F3E0D0A3C2F7376673E
+ 0D0A060000006B0069006E0064006C006500C60200003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C706174682066696C6C3D22233337343734462220643D224D38
+ 2C3431563763302D322E322C312E382D342C342D3468323463322E322C302C34
+ 2C312E382C342C3476333463302C322E322D312E382C342D342C344831324339
+ 2E382C34352C382C34332E322C382C34317A222F3E0D0A202020203C70617468
+ 2066696C6C3D22236565652220643D224D33352C36483133632D302E362C302D
+ 312C302E342D312C3176323963302C302E362C302E342C312C312C3168323263
+ 302E362C302C312D302E342C312D3156374333362C362E342C33352E362C362C
+ 33352C367A222F3E0D0A202020203C7265637420783D2232302220793D223430
+ 222066696C6C3D2223353436453741222077696474683D223822206865696768
+ 743D2232222F3E0D0A202020203C672066696C6C3D2223413141314131223E0D
+ 0A20202020202020203C7265637420783D2231362220793D2231312220776964
+ 74683D22313622206865696768743D2233222F3E0D0A20202020202020203C72
+ 65637420783D2231362220793D223138222077696474683D2231362220686569
+ 6768743D2232222F3E0D0A20202020202020203C7265637420783D2231362220
+ 793D223232222077696474683D22313222206865696768743D2232222F3E0D0A
+ 20202020202020203C7265637420783D2231362220793D223236222077696474
+ 683D22313622206865696768743D2232222F3E0D0A20202020202020203C7265
+ 637420783D2231362220793D223330222077696474683D223132222068656967
+ 68743D2232222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A09000000
+ 6C0061006E00640073006300610070006500EB0100003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C672066696C6C3D2223464639383030223E0D0A202020202020
+ 20203C7265637420783D2233362E312220793D22382E3122207472616E73666F
+ 726D3D226D6174726978282E373037202E373037202D2E373037202E37303720
+ 32312E323031202D32352E31383429222077696474683D22392E392220686569
+ 6768743D22392E39222F3E0D0A20202020202020203C7265637420783D223336
+ 2220793D2238222077696474683D22313022206865696768743D223130222F3E
+ 0D0A202020203C2F673E0D0A202020203C636972636C652066696C6C3D222346
+ 4645423342222063783D223431222063793D2231332220723D2233222F3E0D0A
+ 202020203C706F6C79676F6E2066696C6C3D22233245374433322220706F696E
+ 74733D2231362E352C313820302C34322033332C3432222F3E0D0A202020203C
+ 706F6C79676F6E2066696C6C3D22233443414635302220706F696E74733D2233
+ 332E362C32342031392E322C34322034382C3432222F3E0D0A3C2F7376673E0D
+ 0A050000006C006500610076006500180400003C7376672076657273696F6E3D
+ 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
+ 302F737667222076696577426F783D223020302034382034382220656E61626C
+ 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
+ 2020203C706174682066696C6C3D22234646434444322220643D224D352C3338
+ 56313468333876323463302C322E322D312E382C342D342C34483943362E382C
+ 34322C352C34302E322C352C33387A222F3E0D0A202020203C70617468206669
+ 6C6C3D22234634343333362220643D224D34332C313076364835762D3663302D
+ 322E322C312E382D342C342D346833304334312E322C362C34332C372E382C34
+ 332C31307A222F3E0D0A202020203C672066696C6C3D2223423731433143223E
+ 0D0A20202020202020203C636972636C652063783D223333222063793D223130
+ 2220723D2233222F3E0D0A20202020202020203C636972636C652063783D2231
+ 35222063793D2231302220723D2233222F3E0D0A202020203C2F673E0D0A2020
+ 20203C672066696C6C3D2223424442444244223E0D0A20202020202020203C70
+ 61746820643D224D33332C33632D312E312C302D322C302E392D322C32763563
+ 302C312E312C302E392C322C322C3273322D302E392C322D3256354333352C33
+ 2E392C33342E312C332C33332C337A222F3E0D0A20202020202020203C706174
+ 6820643D224D31352C33632D312E312C302D322C302E392D322C32763563302C
+ 312E312C302E392C322C322C3273322D302E392C322D3256354331372C332E39
+ 2C31362E312C332C31352C337A222F3E0D0A202020203C2F673E0D0A20202020
+ 3C706174682066696C6C3D22234634343333362220643D224D32322E322C3335
+ 2E3363302D302E322C302D302E352C302E312D302E3763302E312D302E322C30
+ 2E322D302E342C302E342D302E3573302E332D302E332C302E352D302E336330
+ 2E322D302E312C302E352D302E312C302E372D302E312073302E352C302C302E
+ 372C302E3163302E322C302E312C302E342C302E322C302E362C302E3373302E
+ 332C302E332C302E342C302E3563302E312C302E322C302E312C302E342C302E
+ 312C302E3763302C302E322C302C302E352D302E312C302E37632D302E312C30
+ 2E322D302E322C302E342D302E342C302E3520632D302E322C302E312D302E33
+ 2C302E332D302E362C302E335332342E332C33372C32342C3337732D302E352C
+ 302D302E372D302E31632D302E322D302E312D302E342D302E322D302E352D30
+ 2E33632D302E322D302E312D302E332D302E332D302E342D302E35204332322E
+ 332C33352E382C32322E322C33352E362C32322E322C33352E337A204D32352E
+ 332C3331682D322E366C2D302E342D313168332E334C32352E332C33317A222F
+ 3E0D0A3C2F7376673E0D0A040000006C00650066007400FD0000003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C672066696C6C3D2223334635314235223E0D0A20
+ 202020202020203C706F6C79676F6E20706F696E74733D22342C32342031382C
+ 31322E332031382C33352E37222F3E0D0A20202020202020203C726563742078
+ 3D2231352220793D223230222077696474683D22323722206865696768743D22
+ 38222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0A0000006C006500
+ 660074005F0064006F0077006E0032000E0100003C7376672076657273696F6E
+ 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
+ 30302F737667222076696577426F783D223020302034382034382220656E6162
+ 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
+ 202020203C706F6C79676F6E2066696C6C3D22233346353142352220706F696E
+ 74733D2231392C34342033302E372C333020372E332C3330222F3E0D0A202020
+ 203C706174682066696C6C3D22233346353142352220643D224D32372C366831
+ 337638483237632D322E322C302D342C312E382D342C34763137682D38563138
+ 4331352C31312E342C32302E342C362C32372C367A222F3E0D0A3C2F7376673E
+ 0D0A080000006C006500660074005F00750070003200110100003C7376672076
+ 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
+ 6F72672F323030302F737667222076696577426F783D22302030203438203438
+ 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
+ 3438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223334635314235
+ 2220706F696E74733D2231392C342033302E372C313820372E332C3138222F3E
+ 0D0A202020203C706174682066696C6C3D22233346353142352220643D224D32
+ 372C3432683133762D38483237632D322E322C302D342D312E382D342D345631
+ 33682D387631374331352C33362E362C32302E342C34322C32372C34327A222F
+ 3E0D0A3C2F7376673E0D0A070000006C00690062007200610072007900290400
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C672066696C6C3D22234646393830
+ 30223E0D0A20202020202020203C7265637420783D22312220793D2233382220
+ 77696474683D22343622206865696768743D2232222F3E0D0A20202020202020
+ 203C7265637420783D2232352220793D223138222077696474683D2234222068
+ 65696768743D223136222F3E0D0A20202020202020203C7265637420783D2233
+ 312220793D223138222077696474683D223422206865696768743D223136222F
+ 3E0D0A20202020202020203C7265637420783D2233372220793D223138222077
+ 696474683D223422206865696768743D223136222F3E0D0A2020202020202020
+ 3C7265637420783D2231392220793D223138222077696474683D223422206865
+ 696768743D223136222F3E0D0A20202020202020203C7265637420783D223133
+ 2220793D223138222077696474683D223422206865696768743D223136222F3E
+ 0D0A20202020202020203C7265637420783D22372220793D2231382220776964
+ 74683D223422206865696768743D223136222F3E0D0A20202020202020203C70
+ 6F6C79676F6E20706F696E74733D2234332C313620352C313620352C31332032
+ 342C342034332C3133222F3E0D0A20202020202020203C7265637420783D2235
+ 2220793D223334222077696474683D22333822206865696768743D2232222F3E
+ 0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223454636433030
+ 223E0D0A20202020202020203C7265637420783D2232352220793D2231362220
+ 77696474683D223422206865696768743D2232222F3E0D0A2020202020202020
+ 3C7265637420783D2233312220793D223136222077696474683D223422206865
+ 696768743D2232222F3E0D0A20202020202020203C7265637420783D22333722
+ 20793D223136222077696474683D223422206865696768743D2232222F3E0D0A
+ 20202020202020203C7265637420783D2231392220793D223136222077696474
+ 683D223422206865696768743D2232222F3E0D0A20202020202020203C726563
+ 7420783D2231332220793D223136222077696474683D22342220686569676874
+ 3D2232222F3E0D0A20202020202020203C7265637420783D22372220793D2231
+ 36222077696474683D223422206865696768743D2232222F3E0D0A2020202020
+ 2020203C7265637420783D22332220793D223336222077696474683D22343222
+ 206865696768743D2232222F3E0D0A20202020202020203C636972636C652063
+ 783D223234222063793D2231312220723D2232222F3E0D0A202020203C2F673E
+ 0D0A3C2F7376673E0D0A1A0000006C0069006700680074005F00610074005F00
+ 7400680065005F0065006E0064005F006F0066005F00740075006E006E006500
+ 6C004C0200003C7376672076657273696F6E3D22312220786D6C6E733D226874
+ 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
+ 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
+ 226E657720302030203438203438223E0D0A202020203C706174682066696C6C
+ 3D22233346353142352220643D224D362C313076323863302C322E322C312E38
+ 2C342C342C3468323863322E322C302C342D312E382C342D3456313063302D32
+ 2E322D312E382D342D342D3448313043372E382C362C362C372E382C362C3130
+ 7A222F3E0D0A202020203C706174682066696C6C3D2223434346324636222064
+ 3D224D32372E392C32382E39682D352E386C2D382E342C372E326C362D372E32
+ 762D322E346C2D332C302E386C332D312E39762D312E3563302D302E382C302E
+ 312D312E372C302E362D322E346C2D372E352D382E336C382E372C372E322063
+ 302E372D302E372C312E352D312E312C322E352D312E326C302E362D372E336C
+ 312E312C372E3363302E332C302C302E362C302E312C302E382C302E316C312E
+ 322D312E326C2D302E332C312E3763302E332C302E312C302E342C302E332C30
+ 2E372C302E366C342E342D322E386C2D332E362C332E392063302E332C302E34
+ 2C302E362C312C302E372C312E376C322E322C302E316C2D322E322C302E3863
+ 302C302E332C302C312E352C302C312E356C322E362C312E346C2D322E362D30
+ 2E3363302C302C302C312E382C302C322E326C362E322C372E314C32372E392C
+ 32382E397A222F3E0D0A3C2F7376673E0D0A040000006C0069006B0065000D01
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C706174682066696C6C3D222346
+ 34343333362220643D224D33342C39632D342E322C302D372E392C322E312D31
+ 302C352E344332312E392C31312E312C31382E322C392C31342C3943372E342C
+ 392C322C31342E342C322C323163302C31312E392C32322C32342C32322C3234
+ 7332322D31322C32322D3234204334362C31342E342C34302E362C392C33342C
+ 397A222F3E0D0A3C2F7376673E0D0A100000006C0069006B0065005F0070006C
+ 0061006300650068006F006C006400650072000D0100003C7376672076657273
+ 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
+ 2F323030302F737667222076696577426F783D22302030203438203438222065
+ 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
+ 3E0D0A202020203C706174682066696C6C3D22234646434444322220643D224D
+ 33342C39632D342E322C302D372E392C322E312D31302C352E344332312E392C
+ 31312E312C31382E322C392C31342C3943372E342C392C322C31342E342C322C
+ 323163302C31312E392C32322C32342C32322C32347332322D31322C32322D32
+ 34204334362C31342E342C34302E362C392C33342C397A222F3E0D0A3C2F7376
+ 673E0D0A0A0000006C0069006E0065005F006300680061007200740094030000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C672066696C6C3D2223334635314235
+ 223E0D0A20202020202020203C636972636C652063783D2238222063793D2233
+ 382220723D2233222F3E0D0A20202020202020203C636972636C652063783D22
+ 3136222063793D2234302220723D2233222F3E0D0A20202020202020203C6369
+ 72636C652063783D223234222063793D2233332220723D2233222F3E0D0A2020
+ 2020202020203C636972636C652063783D223332222063793D2233352220723D
+ 2233222F3E0D0A20202020202020203C636972636C652063783D223430222063
+ 793D2233312220723D2233222F3E0D0A20202020202020203C706F6C79676F6E
+ 20706F696E74733D2233392E312C32392E322033312E382C33322E392032332E
+ 352C33302E382031352E352C33372E3820382E352C33362E3120372E352C3339
+ 2E392031362E352C34322E322032342E352C33352E322033322E322C33372E31
+ 2034302E392C33322E38222F3E0D0A202020203C2F673E0D0A202020203C6720
+ 66696C6C3D2223303042434434223E0D0A20202020202020203C636972636C65
+ 2063783D2238222063793D2232302220723D2233222F3E0D0A20202020202020
+ 203C636972636C652063783D223136222063793D2232322220723D2233222F3E
+ 0D0A20202020202020203C636972636C652063783D223234222063793D223135
+ 2220723D2233222F3E0D0A20202020202020203C636972636C652063783D2233
+ 32222063793D2232302220723D2233222F3E0D0A20202020202020203C636972
+ 636C652063783D223430222063793D22382220723D2233222F3E0D0A20202020
+ 202020203C7061746820643D224D33382E332C362E39632D322E312C332E322D
+ 352E332C382D362E392C31302E34632D312E322D302E372D332E312D322D362E
+ 342D346C2D312E332D302E386C2D382E332C372E336C2D372D312E376C2D312C
+ 332E396C392C322E336C372E372D362E372063322E362C312E362C352E382C33
+ 2E362C362E352C342E316C302E352C302E356C302E392D302E3163312E312D30
+ 2E312C312E312D302E312C392E352D31322E394C33382E332C362E397A222F3E
+ 0D0A202020203C2F673E0D0A3C2F7376673E0D0A040000006C0069006E006B00
+ 520200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C672066696C6C3D22233139
+ 37364432223E0D0A20202020202020203C7061746820643D224D33382C313368
+ 2D33632D352E352C302D31302C342E352D31302C313073342E352C31302C3130
+ 2C3130683363352E352C302C31302D342E352C31302D31305334332E352C3133
+ 2C33382C31337A204D33382C3239682D3320632D332E332C302D362D322E372D
+ 362D3673322E372D362C362D36683363332E332C302C362C322E372C362C3653
+ 34312E332C32392C33382C32397A222F3E0D0A20202020202020203C70617468
+ 20643D224D31332C3133682D3343342E352C31332C302C31372E352C302C3233
+ 73342E352C31302C31302C3130683363352E352C302C31302D342E352C31302D
+ 31305331382E352C31332C31332C31337A204D31332C3239682D3320632D332E
+ 332C302D362D322E372D362D3673322E372D362C362D36683363332E332C302C
+ 362C322E372C362C365331362E332C32392C31332C32397A222F3E0D0A202020
+ 203C2F673E0D0A202020203C706174682066696C6C3D22233432413546352220
+ 643D224D33332C3231483135632D312E312C302D322C302E392D322C3273302E
+ 392C322C322C3268313863312E312C302C322D302E392C322D325333342E312C
+ 32312C33332C32317A222F3E0D0A3C2F7376673E0D0A050000006C0069006E00
+ 750078006F0F00003C3F786D6C2076657273696F6E3D22312E302220656E636F
+ 64696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F723A20
+ 41646F626520496C6C7573747261746F722031392E312E312C20535647204578
+ 706F727420506C75672D496E202E205356472056657273696F6E3A20362E3030
+ 204275696C6420302920202D2D3E0D0A3C7376672076657273696F6E3D22312E
+ 31222020786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
+ 302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F7777772E77
+ 332E6F72672F313939392F786C696E6B2220783D223070782220793D22307078
+ 220D0A092076696577426F783D223020322034382034382220656E61626C652D
+ 6261636B67726F756E643D226E6577203020322034382034382220786D6C3A73
+ 706163653D227072657365727665223E0D0A3C706F6C79676F6E2066696C6C3D
+ 22234543454646312220706F696E74733D2232302E312C31382E322032302E32
+ 2C32302E352031382E362C32332E352031362E312C32382E342031352E362C33
+ 322E352031372E342C33382E332032312E352C34302E362032372E372C34302E
+ 362033332E352C33362E32200D0A0933362E312C32392E332033302E312C3232
+ 2032382E342C31372E3920222F3E0D0A3C706174682066696C6C3D2223323633
+ 3233382220643D224D33342E332C32332E39632D312E362D322E332D322E392D
+ 332E372D332E362D362E36632D302E372D322E392C302E322D322E312D302E34
+ 2D342E36632D302E332D312E332D302E382D322E322D312E332D322E390D0A09
+ 632D302E362D302E372D312E332D312E312D312E372D312E32632D302E392D30
+ 2E352D332D312E332D352E362C302E31632D322E372C312E342D322E342C342E
+ 342D312E392C31302E3563302C302E342D302E312C302E392D302E332C312E33
+ 632D302E342C302E392D312E312C312E372D312E372C322E340D0A09632D302E
+ 372C312D312E342C322D312E392C332E31632D312E322C322E332D322E332C35
+ 2E322D322C362E3363302E352D302E312C362E382C392E352C362E382C392E37
+ 63302E342D302E312C322E312D302E312C332E362D302E3163322E312D302E31
+ 2C332E332D302E322C352C302E320D0A0963302D302E332D302E312D302E362D
+ 302E312D302E3963302D302E362C302E312D312E312C302E322D312E3863302E
+ 312D302E352C302E322D312C302E332D312E36632D312C302E392D322E382C31
+ 2E392D342E352C322E32632D312E352C302E332D342D302E322D352E322D312E
+ 370D0A0963302E312C302C302E332C302C302E342D302E3163302E332D302E31
+ 2C302E362D302E322C302E372D302E3463302E332D302E352C302E312D312D30
+ 2E312D312E33632D302E322D302E332D312E372D312E342D322E342D32632D30
+ 2E372D302E362D312E312D302E392D312E352D312E330D0A0963302C302D302E
+ 362D302E362D302E382D302E38632D302E322D302E322D302E332D302E342D30
+ 2E342D302E35632D302E322D302E352D302E332D312E312D302E322D312E3963
+ 302E312D312E312C302E352D322C312D3363302E322D302E342C302E372D312E
+ 322C302E372D312E320D0A09732D312E372C342E322D302E382C352E3563302C
+ 302C302E312D312E332C302E352D322E3663302E332D302E392C302E382D322E
+ 322C312E342D322E3973322E312D332E332C322E322D342E3963302D302E372C
+ 302E312D312E342C302E312D312E39632D302E342D302E342C362E362D312E34
+ 2C372D302E330D0A0963302E312C302E342C312E352C342C322E332C352E3963
+ 302E342C302E392C302E392C312E372C312E322C322E3763302E332C312E312C
+ 302E352C322E362C302E352C342E3163302C302E332C302C302E382D302E312C
+ 312E3363302E322C302C342E312D342E322D302E352D372E370D0A0963302C30
+ 2C322E382C312E332C322E392C332E3963302E312C322E312D302E382C332E38
+ 2D312C342E3163302E312C302C322E312C302E392C322E322C302E3963302E34
+ 2C302C312E322D302E332C312E322D302E3363302E312D302E332C302E342D31
+ 2E312C302E342D312E340D0A094333372E362C32392E392C33352E392C32362E
+ 322C33342E332C32332E397A222F3E0D0A3C673E0D0A093C656C6C6970736520
+ 66696C6C3D2223454345464631222063783D2232312E36222063793D2231352E
+ 33222072783D22312E33222072793D2232222F3E0D0A093C656C6C6970736520
+ 66696C6C3D2223454345464631222063783D2232362E31222063793D2231352E
+ 32222072783D22312E37222072793D22322E33222F3E0D0A3C2F673E0D0A3C67
+ 3E0D0A090D0A09093C656C6C69707365207472616E73666F726D3D226D617472
+ 6978282D302E31323534202D302E3939323120302E39393231202D302E313235
+ 3420382E393735342033382E3939363929222066696C6C3D2223323132313231
+ 222063783D2232312E37222063793D2231352E35222072783D22312E32222072
+ 793D22302E37222F3E0D0A093C656C6C697073652066696C6C3D222332313231
+ 3231222063783D223236222063793D2231352E36222072783D2231222072793D
+ 22312E33222F3E0D0A3C2F673E0D0A3C673E0D0A093C706174682066696C6C3D
+ 22234646433130372220643D224D33392E332C33372E36632D302E342D302E32
+ 2D312E312D302E352D312E372D312E34632D302E332D302E352D302E322D312E
+ 392D302E372D322E35632D302E332D302E342D302E372D302E322D302E382D30
+ 2E320D0A0909632D302E392C302E322D332C312E362D342E342C30632D302E32
+ 2D302E322D302E352D302E352D312D302E35632D302E352C302D302E372C302E
+ 322D302E392C302E36732D302E322C302E372D302E322C312E3763302C302E38
+ 2C302C312E372D302E312C322E340D0A0909632D302E322C312E372D302E352C
+ 322E372D302E352C332E3763302C312E312C302E332C312E382C302E372C322E
+ 3163302E332C302E332C302E382C302E352C312E392C302E3563312E312C302C
+ 312E382D302E342C322E352D312E3163302E352D302E352C302E392D302E372C
+ 322E332D312E370D0A090963312E312D302E372C322E382D312E362C332E312D
+ 312E3963302E322D302E322C302E352D302E332C302E352D302E394334302C33
+ 372E392C33392E362C33372E372C33392E332C33372E367A222F3E0D0A093C70
+ 6174682066696C6C3D22234646433130372220643D224D31392E322C33372E39
+ 632D312D312E362D312E312D312E392D312E382D322E39632D302E362D312D31
+ 2E392D322E392D322E372D322E39632D302E362C302D302E392C302E332D312E
+ 332C302E370D0A0909632D302E342C302E342D302E382C312E332D312E352C31
+ 2E38632D302E362C302E352D322E332C302E342D322E372C31632D302E342C30
+ 2E362C302E342C312E352C302E342C3363302C302E362D302E352C312D302E36
+ 2C312E34632D302E312C302E352D302E322C302E382C302C312E320D0A090963
+ 302E342C302E362C302E392C302E382C342E332C312E3563312E382C302E342C
+ 332E352C312E342C342E362C312E3563312E312C302E312C332C302C332D322E
+ 374332312C33392E392C32302E312C33392E352C31392E322C33372E397A222F
+ 3E0D0A093C706174682066696C6C3D22234646433130372220643D224D32312E
+ 312C31392E384332302E352C31392E342C32302C31392C32302C31382E346330
+ 2D302E362C302E342D302E382C312D312E3363302E312D302E312C312E322D31
+ 2E312C322E332D312E3173322E342C302E372C322E392C302E390D0A09096330
+ 2E392C302E322C312E382C302E342C312E372C312E31632D302E312C312D302E
+ 322C312E322D312E322C312E37632D302E372C302E322D322C312E332D322E39
+ 2C312E33632D302E342C302D312C302D312E342D302E314332322E312C32302E
+ 382C32312E362C32302E332C32312E312C31392E387A222F3E0D0A3C2F673E0D
+ 0A3C673E0D0A093C706174682066696C6C3D22233633343730332220643D224D
+ 32302E392C313963302E322C302E322C302E352C302E342C302E382C302E3563
+ 302E322C302E312C302E352C302E322C302E352C302E3263302E342C302C302E
+ 372C302C302E392C3063302E352C302C312E322D302E322C312E392D302E360D
+ 0A090963302E372D302E332C302E382D302E352C312E332D302E3763302E352D
+ 302E332C312D302E362C302E382D302E37632D302E322D302E312D302E342C30
+ 2D312E312C302E34632D302E362C302E342D312E312C302E362D312E372C302E
+ 39632D302E332C302E312D302E372C302E332D312C302E330D0A0909632D302E
+ 332C302D302E362C302D302E392C30632D302E332C302D302E352D302E312D30
+ 2E382D302E32632D302E322D302E312D302E332D302E322D302E342D302E3263
+ 2D302E322D302E312D302E362D302E352D302E382D302E3663302C302D302E32
+ 2C302D302E312C302E310D0A09094332302E362C31382E372C32302E372C3138
+ 2E382C32302E392C31397A222F3E0D0A093C706174682066696C6C3D22233633
+ 343730332220643D224D32332E392C31362E3863302E312C302E322C302E332C
+ 302E322C302E342C302E3363302E312C302E312C302E322C302E312C302E322C
+ 302E3163302E312D302E312C302D302E332D302E312D302E330D0A0909433234
+ 2E342C31362E372C32332E392C31362E372C32332E392C31362E387A222F3E0D
+ 0A093C706174682066696C6C3D22233633343730332220643D224D32322E332C
+ 313763302C302E312C302E322C302E322C302E322C302E3163302E312D302E31
+ 2C302E322D302E322C302E332D302E3263302E322D302E312C302E312D302E32
+ 2D302E322D302E320D0A09094332322E342C31362E382C32322E342C31362E39
+ 2C32322E332C31377A222F3E0D0A3C2F673E0D0A3C706174682066696C6C3D22
+ 233435354136342220643D224D33322C33342E3763302C302E312C302C302E32
+ 2C302C302E3363302E322C302E342C302E372C302E352C312E312C302E356330
+ 2E362C302C312E322D302E342C312E352D302E3863302D302E312C302E312D30
+ 2E322C302E322D302E330D0A0963302E322D302E332C302E332D302E352C302E
+ 342D302E3663302C302D302E312D302E312D302E312D302E32632D302E312D30
+ 2E322D302E342D302E342D302E382D302E35632D302E332D302E312D302E382D
+ 302E322D312D302E32632D302E392D302E312D312E342C302E322D312E372C30
+ 2E350D0A0963302C302C302E312C302C302E312C302E3163302E322C302E322C
+ 302E332C302E342C302E332C302E374333322E312C33342E342C33322C33342E
+ 352C33322C33342E377A222F3E0D0A3C2F7376673E0D0A040000006C00690073
+ 007400BE0200003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C672066696C6C3D22
+ 23323139364633223E0D0A20202020202020203C7265637420783D2236222079
+ 3D223232222077696474683D223422206865696768743D2234222F3E0D0A2020
+ 2020202020203C7265637420783D22362220793D223134222077696474683D22
+ 3422206865696768743D2234222F3E0D0A20202020202020203C726563742078
+ 3D22362220793D223330222077696474683D223422206865696768743D223422
+ 2F3E0D0A20202020202020203C7265637420783D22362220793D223622207769
+ 6474683D223422206865696768743D2234222F3E0D0A20202020202020203C72
+ 65637420783D22362220793D223338222077696474683D223422206865696768
+ 743D2234222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D22
+ 23323139364633223E0D0A20202020202020203C7265637420783D2231342220
+ 793D223232222077696474683D22323822206865696768743D2234222F3E0D0A
+ 20202020202020203C7265637420783D2231342220793D223134222077696474
+ 683D22323822206865696768743D2234222F3E0D0A20202020202020203C7265
+ 637420783D2231342220793D223330222077696474683D223238222068656967
+ 68743D2234222F3E0D0A20202020202020203C7265637420783D223134222079
+ 3D2236222077696474683D22323822206865696768743D2234222F3E0D0A2020
+ 2020202020203C7265637420783D2231342220793D223338222077696474683D
+ 22323822206865696768743D2234222F3E0D0A202020203C2F673E0D0A3C2F73
+ 76673E0D0A040000006C006F0063006B00990100003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22233432343234322220643D224D3234
+ 2C34632D352E352C302D31302C342E352D31302C313076346834762D3463302D
+ 332E332C322E372D362C362D3673362C322E372C362C3676346834762D344333
+ 342C382E352C32392E352C342C32342C347A222F3E0D0A202020203C70617468
+ 2066696C6C3D22234642384330302220643D224D33362C3434483132632D322E
+ 322C302D342D312E382D342D3456323263302D322E322C312E382D342C342D34
+ 68323463322E322C302C342C312E382C342C347631384334302C34322E322C33
+ 382E322C34342C33362C34347A222F3E0D0A202020203C636972636C65206669
+ 6C6C3D2223433736453030222063783D223234222063793D2233312220723D22
+ 33222F3E0D0A3C2F7376673E0D0A0E0000006C006F0063006B005F006C006100
+ 6E00640073006300610070006500610200003C7376672076657273696F6E3D22
+ 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
+ 2F737667222076696577426F783D223020302034382034382220656E61626C65
+ 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
+ 20203C706174682066696C6C3D22233337343734462220643D224D372C313068
+ 333463322E322C302C342C312E382C342C3476323063302C322E322D312E382C
+ 342D342C344837632D322E322C302D342D312E382D342D3456313443332C3131
+ 2E382C342E382C31302C372C31307A222F3E0D0A202020203C70617468206669
+ 6C6C3D22234242444546422220643D224D34322C333456313463302D302E362D
+ 302E342D312D312D314837632D302E362C302D312C302E342D312C3176323063
+ 302C302E362C302E342C312C312C316833344334312E362C33352C34322C3334
+ 2E362C34322C33347A222F3E0D0A202020203C672066696C6C3D222333463531
+ 4235223E0D0A20202020202020203C7061746820643D224D32392C3331483139
+ 632D302E362C302D312D302E342D312D31762D3663302D302E362C302E342D31
+ 2C312D3168313063302E362C302C312C302E342C312C3176364333302C33302E
+ 362C32392E362C33312C32392C33317A222F3E0D0A20202020202020203C7061
+ 746820643D224D32342C3137632D322E322C302D342C312E382D342C34763368
+ 32762D3363302D312E312C302E392D322C322D3273322C302E392C322C327633
+ 6832762D334332382C31382E382C32362E322C31372C32342C31377A222F3E0D
+ 0A202020203C2F673E0D0A3C2F7376673E0D0A0D0000006C006F0063006B005F
+ 0070006F00720074007200610069007400600200003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22233337343734462220643D224D3130
+ 2C3431563763302D322E322C312E382D342C342D3468323063322E322C302C34
+ 2C312E382C342C3476333463302C322E322D312E382C342D342C344831344331
+ 312E382C34352C31302C34332E322C31302C34317A222F3E0D0A202020203C70
+ 6174682066696C6C3D22234242444546422220643D224D33342C36483134632D
+ 302E362C302D312C302E342D312C3176333463302C302E362C302E342C312C31
+ 2C3168323063302E362C302C312D302E342C312D3156374333352C362E342C33
+ 342E362C362C33342C367A222F3E0D0A202020203C672066696C6C3D22233346
+ 35314235223E0D0A20202020202020203C7061746820643D224D32392C333048
+ 3139632D302E362C302D312D302E342D312D31762D3663302D302E362C302E34
+ 2D312C312D3168313063302E362C302C312C302E342C312C3176364333302C32
+ 392E362C32392E362C33302C32392C33307A222F3E0D0A20202020202020203C
+ 7061746820643D224D32342C3136632D322E322C302D342C312E382D342C3476
+ 336832762D3363302D312E312C302E392D322C322D3273322C302E392C322C32
+ 76336832762D334332382C31372E382C32362E322C31362C32342C31367A222F
+ 3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0B0000006C006F0077005F
+ 006200610074007400650072007900CC0100003C7376672076657273696F6E3D
+ 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
+ 302F737667222076696577426F783D223020302034382034382220656E61626C
+ 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
+ 2020203C672066696C6C3D2223434644384443223E0D0A20202020202020203C
+ 7061746820643D224D33342C3434483134632D312E312C302D322D302E392D32
+ 2D32563863302D312E312C302E392D322C322D3268323063312E312C302C322C
+ 302E392C322C327633344333362C34332E312C33352E312C34342C33342C3434
+ 7A222F3E0D0A20202020202020203C7061746820643D224D32382C3133682D38
+ 632D302E362C302D312D302E342D312D31563563302D302E362C302E342D312C
+ 312D31683863302E362C302C312C302E342C312C3176374332392C31322E362C
+ 32382E362C31332C32382C31337A222F3E0D0A202020203C2F673E0D0A202020
+ 203C706174682066696C6C3D22233842433334412220643D224D33342C343448
+ 3134632D312E312C302D322D302E392D322D32762D3968323476394333362C34
+ 332E312C33352E312C34342C33342C34347A222F3E0D0A3C2F7376673E0D0A0C
+ 0000006C006F0077005F007000720069006F007200690074007900A80100003C
+ 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
+ 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
+ 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
+ 30203438203438223E0D0A202020203C706174682066696C6C3D222334434146
+ 35302220643D224D32312E322C34342E386C2D31382D3138632D312E362D312E
+ 362D312E362D342E312C302D352E376C31382D313863312E362D312E362C342E
+ 312D312E362C352E372C306C31382C313863312E362C312E362C312E362C342E
+ 312C302C352E376C2D31382C3138204332352E332C34362E342C32322E372C34
+ 362E342C32312E322C34342E387A222F3E0D0A202020203C672066696C6C3D22
+ 23464645423342223E0D0A20202020202020203C706F6C79676F6E20706F696E
+ 74733D2232342C33332E342031372C32352033312C3235222F3E0D0A20202020
+ 202020203C7265637420783D2232322220793D2231342E38222077696474683D
+ 223422206865696768743D2231322E33222F3E0D0A202020203C2F673E0D0A3C
+ 2F7376673E0D0A0D0000006D0061006B0065005F006400650063006900730069
+ 006F006E00020300003C7376672076657273696F6E3D22312220786D6C6E733D
+ 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
+ 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
+ 6E643D226E657720302030203438203438223E0D0A202020203C672066696C6C
+ 3D2223464643433830223E0D0A20202020202020203C636972636C652063783D
+ 223338222063793D2232362220723D2234222F3E0D0A20202020202020203C63
+ 6972636C652063783D223130222063793D2232362220723D2234222F3E0D0A20
+ 202020202020203C7061746820643D224D33392C313963302D31322E372D3330
+ 2D382E332D33302C3063302C312E382C302C382E322C302C313063302C382E33
+ 2C362E372C31352C31352C31357331352D362E372C31352D31354333392C3237
+ 2E322C33392C32302E382C33392C31397A222F3E0D0A20202020202020203C70
+ 61746820643D224D32342C344331352E322C342C382C31312E322C382C323063
+ 302C312E322C302C332E352C302C332E356C322E312C302E365631396C31392E
+ 352D362E336C382E322C362E3376352E316C322E312D302E3663302C302C302D
+ 322E332C302D332E35204334302C31322E352C33342E362C342C32342C347A22
+ 2F3E0D0A202020203C2F673E0D0A202020203C706F6C79676F6E2066696C6C3D
+ 22234646353732322220706F696E74733D2232342C32332E352032342C31322E
+ 352033302E362C3138222F3E0D0A202020203C706174682066696C6C3D222346
+ 46353732322220643D224D32382E392C32342E3463302C302E322C302E312C30
+ 2E342C302E312C302E3663302C322E382D322E322C352D352C35732D352D322E
+ 322D352D3573322E322D352C352D3563302E372C302C312E342C302E322C322C
+ 302E34762D342E3220632D302E362D302E312D312E332D302E322D322D302E32
+ 632D352C302D392C342D392C3973342C392C392C3973392D342C392D3963302D
+ 312E322D302E322D322E342D302E372D332E344C32382E392C32342E347A222F
+ 3E0D0A3C2F7376673E0D0A070000006D0061006E0061006700650072004E0300
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22
+ 234646393830302220706F696E74733D2232342C33372031392C33312031392C
+ 32352032392C32352032392C3331222F3E0D0A202020203C672066696C6C3D22
+ 23464641373236223E0D0A20202020202020203C636972636C652063783D2233
+ 33222063793D2231392220723D2232222F3E0D0A20202020202020203C636972
+ 636C652063783D223135222063793D2231392220723D2232222F3E0D0A202020
+ 203C2F673E0D0A202020203C706174682066696C6C3D22234646423734442220
+ 643D224D33332C313363302D372E362D31382D352D31382C3063302C312E312C
+ 302C352E392C302C3763302C352C342C392C392C3973392D342C392D39433333
+ 2C31382E392C33332C31342E312C33332C31337A222F3E0D0A202020203C7061
+ 74682066696C6C3D22234646353732322220643D224D32342C34632D362E312C
+ 302D31302C342E392D31302C313163302C302E382C302C322E332C302C322E33
+ 6C322C312E37762D356C31322D346C342C3476356C322D312E3763302C302C30
+ 2D312E352C302D322E3363302D342D312D382D362D396C2D312D32204832347A
+ 222F3E0D0A202020203C672066696C6C3D2223373834373139223E0D0A202020
+ 20202020203C636972636C652063783D223238222063793D2231392220723D22
+ 31222F3E0D0A20202020202020203C636972636C652063783D22323022206379
+ 3D2231392220723D2231222F3E0D0A202020203C2F673E0D0A202020203C7061
+ 74682066696C6C3D22234346443844432220643D224D32392C33314C32392C33
+ 316C2D352C316C2D352D3163302C302D31312C322D31312C3133683332433430
+ 2C33332C32392C33312C32392C33317A222F3E0D0A202020203C706F6C79676F
+ 6E2066696C6C3D22233346353142352220706F696E74733D2232332C33352032
+ 322C34342032362C34342032352C33352032362C33342032342C33322032322C
+ 3334222F3E0D0A3C2F7376673E0D0A0F0000006D0065006400690075006D005F
+ 007000720069006F007200690074007900B90100003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22234646433130372220643D224D3231
+ 2E322C34342E386C2D31382D3138632D312E362D312E362D312E362D342E312C
+ 302D352E376C31382D313863312E362D312E362C342E312D312E362C352E372C
+ 306C31382C313863312E362C312E362C312E362C342E312C302C352E376C2D31
+ 382C3138204332352E332C34362E342C32322E372C34362E342C32312E322C34
+ 342E387A222F3E0D0A202020203C672066696C6C3D2223333734373446223E0D
+ 0A20202020202020203C636972636C652063783D223234222063793D22323422
+ 20723D2232222F3E0D0A20202020202020203C636972636C652063783D223332
+ 222063793D2232342220723D2232222F3E0D0A20202020202020203C63697263
+ 6C652063783D223136222063793D2232342220723D2232222F3E0D0A20202020
+ 3C2F673E0D0A3C2F7376673E0D0A040000006D0065006E007500320100003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C672066696C6C3D2223363037443842223E
+ 0D0A20202020202020203C7265637420783D22362220793D2232322220776964
+ 74683D22333622206865696768743D2234222F3E0D0A20202020202020203C72
+ 65637420783D22362220793D223130222077696474683D223336222068656967
+ 68743D2234222F3E0D0A20202020202020203C7265637420783D22362220793D
+ 223334222077696474683D22333622206865696768743D2234222F3E0D0A2020
+ 20203C2F673E0D0A3C2F7376673E0D0A0E0000006D006900640064006C006500
+ 5F006200610074007400650072007900CD0100003C7376672076657273696F6E
+ 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
+ 30302F737667222076696577426F783D223020302034382034382220656E6162
+ 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
+ 202020203C672066696C6C3D2223434644384443223E0D0A2020202020202020
+ 3C7061746820643D224D33342C3434483134632D312E312C302D322D302E392D
+ 322D32563863302D312E312C302E392D322C322D3268323063312E312C302C32
+ 2C302E392C322C327633344333362C34332E312C33352E312C34342C33342C34
+ 347A222F3E0D0A20202020202020203C7061746820643D224D32382C3133682D
+ 38632D302E362C302D312D302E342D312D31563563302D302E362C302E342D31
+ 2C312D31683863302E362C302C312C302E342C312C3176374332392C31322E36
+ 2C32382E362C31332C32382C31337A222F3E0D0A202020203C2F673E0D0A2020
+ 20203C706174682066696C6C3D22233842433334412220643D224D33342C3434
+ 483134632D312E312C302D322D302E392D322D32563233683234763139433336
+ 2C34332E312C33352E312C34342C33342C34347A222F3E0D0A3C2F7376673E0D
+ 0A080000006D0069006E0064005F006D00610070003E0200003C737667207665
+ 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
+ 72672F323030302F737667222076696577426F783D2230203020343820343822
+ 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
+ 38223E0D0A202020203C706F6C79676F6E2066696C6C3D222343464438444322
+ 20706F696E74733D2233392E342C32332033382E362C31392032362C32312E36
+ 2032362C382032322C382032322C32302E3320382E312C31312E3320352E392C
+ 31342E372032312E312C32342E3520392E342C33392E382031322E362C34322E
+ 322032332E392C32372E342033322E332C34302E312033352E372C33372E3920
+ 32372E332C32352E34222F3E0D0A202020203C636972636C652066696C6C3D22
+ 23334635314235222063783D223234222063793D2232342220723D2237222F3E
+ 0D0A202020203C672066696C6C3D2223303042434434223E0D0A202020202020
+ 20203C636972636C652063783D223234222063793D22382220723D2235222F3E
+ 0D0A20202020202020203C636972636C652063783D223339222063793D223231
+ 2220723D2235222F3E0D0A20202020202020203C636972636C652063783D2237
+ 222063793D2231332220723D2235222F3E0D0A20202020202020203C63697263
+ 6C652063783D223131222063793D2234312220723D2235222F3E0D0A20202020
+ 202020203C636972636C652063783D223334222063793D2233392220723D2235
+ 222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0B0000006D00690073
+ 007300650064005F00630061006C006C001D0200003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C672066696C6C3D2223463434333336223E0D0A20202020202020
+ 203C706F6C79676F6E20706F696E74733D2233302E332C31322E392032342C31
+ 392E322031352E372C31302E392031322E392C31332E372032342C32342E3820
+ 33332E312C31352E37222F3E0D0A20202020202020203C706F6C79676F6E2070
+ 6F696E74733D2233362C31392032372C31302033362C3130222F3E0D0A202020
+ 203C2F673E0D0A202020203C706174682066696C6C3D22233030393638382220
+ 643D224D34342E352C33302E386C2D322E342D322E34632D382E352D382E332D
+ 32382E392D372E312D33362E322C306C2D322E342C322E34632D302E372C302E
+ 372D302E372C312E372C302C322E346C342E382C342E372063302E372C302E37
+ 2C312E372C302E372C322E342C306C352E332D352E316C2D302E342D352E3663
+ 312E372D312E372C31352E312D312E372C31362E382C304C33322E312C33336C
+ 352E312C342E3963302E372C302E372C312E372C302E372C322E342C306C342E
+ 382D342E37204334352E322C33322E352C34352E322C33312E342C34342E352C
+ 33302E387A222F3E0D0A3C2F7376673E0D0A030000006D006D00730099010000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C706174682066696C6C3D2223453931
+ 4536332220643D224D33372C33394831316C2D362C3656313163302D332E332C
+ 322E372D362C362D3668323663332E332C302C362C322E372C362C3676323243
+ 34332C33362E332C34302E332C33392C33372C33397A222F3E0D0A202020203C
+ 706F6C79676F6E2066696C6C3D22234634384642312220706F696E74733D2232
+ 302C31362E352031302C33312033302C3331222F3E0D0A202020203C67206669
+ 6C6C3D2223463842424430223E0D0A20202020202020203C636972636C652063
+ 783D223334222063793D2231352220723D2233222F3E0D0A2020202020202020
+ 3C706F6C79676F6E20706F696E74733D2233302C32312032322C33312033382C
+ 3331222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0E0000006D006F
+ 006E00650079005F007400720061006E007300660065007200050300003C7376
+ 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
+ 77332E6F72672F323030302F737667222076696577426F783D22302030203438
+ 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
+ 3438203438223E0D0A202020203C706174682066696C6C3D2223373839303943
+ 2220643D224D34302C34314838632D322E322C302D342D312E382D342D346C30
+ 2D32302E3963302D312E332C302E362D322E352C312E372D332E334C32342C30
+ 6C31382E332C31322E3863312E312C302E372C312E372C322C312E372C332E33
+ 563337204334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A
+ 202020203C7265637420783D2231342220793D2231222066696C6C3D22234145
+ 44353831222077696474683D22323022206865696768743D223331222F3E0D0A
+ 202020203C672066696C6C3D2223353538423246223E0D0A2020202020202020
+ 3C7061746820643D224D31332C3076333368323256304831337A204D33332C33
+ 3148313556326831385633317A222F3E0D0A20202020202020203C7061746820
+ 643D224D33342C3363302C312E372D302E332C332D322C33632D312E372C302D
+ 332D312E332D332D3373312E332D322C332D324333332E372C312C33342C312E
+ 332C33342C337A222F3E0D0A20202020202020203C7061746820643D224D3136
+ 2C3163312E372C302C332C302E332C332C32732D312E332C332D332C33732D32
+ 2D312E332D322D335331342E332C312C31362C317A222F3E0D0A202020202020
+ 20203C636972636C652063783D223234222063793D22382220723D2232222F3E
+ 0D0A20202020202020203C636972636C652063783D223234222063793D223230
+ 2220723D2236222F3E0D0A202020203C2F673E0D0A202020203C706174682066
+ 696C6C3D22234346443844432220643D224D34302C34314838632D322E322C30
+ 2D342D312E382D342D346C302D32306C32302C31336C32302D31337632304334
+ 342C33392E322C34322E322C34312C34302C34317A222F3E0D0A3C2F7376673E
+ 0D0A100000006D0075006C007400690070006C0065005F00630061006D006500
+ 720061007300F40200003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
+ 66696C6C3D22233435354136342220643D224D34322C3431483132632D322E32
+ 2C302D342D312E382D342D3456313763302D322E322C312E382D342C342D3468
+ 333063322E322C302C342C312E382C342C347632304334362C33392E322C3434
+ 2E322C34312C34322C34317A222F3E0D0A202020203C706174682066696C6C3D
+ 22233738393039432220643D224D33362C33364836632D322E322C302D342D31
+ 2E382D342D3456313263302D322E322C312E382D342C342D3468333063322E32
+ 2C302C342C312E382C342C347632304334302C33342E322C33382E322C33362C
+ 33362C33367A222F3E0D0A202020203C636972636C652066696C6C3D22233435
+ 35413634222063783D223236222063793D2232322220723D223130222F3E0D0A
+ 202020203C636972636C652066696C6C3D2223343241354635222063783D2232
+ 36222063793D2232322220723D2237222F3E0D0A202020203C70617468206669
+ 6C6C3D22233930434146392220643D224D32392E372C31392E37632D312D312E
+ 312D322E332D312E372D332E372D312E37732D322E382C302E362D332E372C31
+ 2E37632D302E342C302E342D302E332C312C302E312C312E3463302E342C302E
+ 342C312C302E332C312E342D302E312063312E322D312E332C332E332D312E33
+ 2C342E352C3063302E322C302E322C302E352C302E332C302E372C302E336330
+ 2E322C302C302E352D302E312C302E372D302E334333302E312C32302E372C33
+ 302E312C32302E312C32392E372C31392E377A222F3E0D0A202020203C726563
+ 7420783D22362220793D223132222066696C6C3D222341444438464222207769
+ 6474683D223622206865696768743D2233222F3E0D0A3C2F7376673E0D0A1000
+ 00006D0075006C007400690070006C0065005F00640065007600690063006500
+ 7300E10200003C7376672076657273696F6E3D22312220786D6C6E733D226874
+ 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
+ 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
+ 226E657720302030203438203438223E0D0A202020203C706174682066696C6C
+ 3D22233534364537412220643D224D342C3238563863302D322E322C312E382D
+ 342C342D3468323863322E322C302C342C312E382C342C3476323063302C322E
+ 322D312E382C342D342C34483843352E382C33322C342C33302E322C342C3238
+ 7A222F3E0D0A202020203C706174682066696C6C3D2223424244454642222064
+ 3D224D33362C37483843372E342C372C372C372E342C372C3876323063302C30
+ 2E362C302E342C312C312C3168323863302E362C302C312D302E342C312D3156
+ 384333372C372E342C33362E362C372C33362C377A222F3E0D0A202020203C70
+ 6174682066696C6C3D22233337343734462220643D224D33382C33334836632D
+ 322E322C302D342D312E382D342D34763068343076304334322C33312E322C34
+ 302E322C33332C33382C33337A222F3E0D0A202020203C706174682066696C6C
+ 3D22234533383933392220643D224D32342C343056313663302D322E322C312E
+ 382D342C342D3468313263322E322C302C342C312E382C342C3476323463302C
+ 322E322D312E382C342D342C344832384332352E382C34342C32342C34322E32
+ 2C32342C34307A222F3E0D0A202020203C706174682066696C6C3D2223464646
+ 3345302220643D224D34302C3135483238632D302E362C302D312C302E342D31
+ 2C3176323263302C302E362C302E342C312C312C3168313263302E362C302C31
+ 2D302E342C312D315631364334312C31352E342C34302E362C31352C34302C31
+ 357A222F3E0D0A202020203C636972636C652066696C6C3D2223413636343241
+ 222063783D223334222063793D2234312E352220723D22312E35222F3E0D0A3C
+ 2F7376673E0D0A0F0000006D0075006C007400690070006C0065005F0069006E
+ 007000750074007300C00200003C7376672076657273696F6E3D22312220786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 2076696577426F783D223020302034382034382220656E61626C652D6261636B
+ 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
+ 74682066696C6C3D22233930413441452220643D224D34302C33357635483876
+ 2D354834763563302C322E322C312E382C342C342C3468333263322E322C302C
+ 342D312E382C342D34762D354834307A222F3E0D0A202020203C672066696C6C
+ 3D2223313536354330223E0D0A20202020202020203C706F6C79676F6E20706F
+ 696E74733D2232342C32332E342031372C31352033312C3135222F3E0D0A2020
+ 2020202020203C7265637420783D2232322220793D2234222077696474683D22
+ 3422206865696768743D223134222F3E0D0A20202020202020203C7061746820
+ 643D224D33312E352C32362E394C33302E382C32386C332E352C312E396C302E
+ 362D312E3263312E362D332C322E362D342E372C332E352D352E324333392E33
+ 2C32332C34312C32332C34342C3233762D34204333362E332C31392C33352E36
+ 2C31392E342C33312E352C32362E397A222F3E0D0A20202020202020203C706F
+ 6C79676F6E20706F696E74733D2233382E342C33312032392E342C3335203238
+ 2C3235222F3E0D0A20202020202020203C7061746820643D224D31362E352C32
+ 362E396C302E362C312E324C31332E362C33304C31332C32382E38632D312E36
+ 2D332D322E362D342E372D332E352D352E3243382E372C32332C372C32332C34
+ 2C3233762D34204331312E372C31392C31322E342C31392E342C31362E352C32
+ 362E397A222F3E0D0A20202020202020203C706F6C79676F6E20706F696E7473
+ 3D2232302C32352031382E362C333520392E362C3331222F3E0D0A202020203C
+ 2F673E0D0A3C2F7376673E0D0A140000006D0075006C007400690070006C0065
+ 005F0073006D00610072007400700068006F006E0065007300EE0300003C7376
+ 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
+ 77332E6F72672F323030302F737667222076696577426F783D22302030203438
+ 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
+ 3438203438223E0D0A202020203C706174682066696C6C3D2223343535413634
+ 2220643D224D342C3331563863302D322E322C312E382D342C342D3468313263
+ 322E322C302C342C312E382C342C3476323363302C322E322D312E382C342D34
+ 2C34483843352E382C33352C342C33332E322C342C33317A222F3E0D0A202020
+ 203C706174682066696C6C3D22234242444546422220643D224D32302C374838
+ 43372E342C372C372C372E342C372C3876323163302C302E362C302E342C312C
+ 312C3168313263302E362C302C312D302E342C312D3156384332312C372E342C
+ 32302E362C372C32302C377A222F3E0D0A202020203C636972636C652066696C
+ 6C3D2223333734373446222063783D223134222063793D2233322E352220723D
+ 22312E35222F3E0D0A202020203C706174682066696C6C3D2223353436453741
+ 2220643D224D31342C333656313363302D322E322C312E382D342C342D346831
+ 3263322E322C302C342C312E382C342C3476323363302C322E322D312E382C34
+ 2D342C344831384331352E382C34302C31342C33382E322C31342C33367A222F
+ 3E0D0A202020203C706174682066696C6C3D22234242444546422220643D224D
+ 33302C3132483138632D302E362C302D312C302E342D312C3176323163302C30
+ 2E362C302E342C312C312C3168313263302E362C302C312D302E342C312D3156
+ 31334333312C31322E342C33302E362C31322C33302C31327A222F3E0D0A2020
+ 20203C636972636C652066696C6C3D2223333734373446222063783D22323422
+ 2063793D2233372E352220723D22312E35222F3E0D0A202020203C7061746820
+ 66696C6C3D22234533383933392220643D224D32342C343056313863302D322E
+ 322C312E382D342C342D3468313263322E322C302C342C312E382C342C347632
+ 3263302C322E322D312E382C342D342C344832384332352E382C34342C32342C
+ 34322E322C32342C34307A222F3E0D0A202020203C706174682066696C6C3D22
+ 234646463345302220643D224D34302C3137483238632D302E362C302D312C30
+ 2E342D312C3176323063302C302E362C302E342C312C312C3168313263302E36
+ 2C302C312D302E342C312D315631384334312C31372E342C34302E362C31372C
+ 34302C31377A222F3E0D0A202020203C636972636C652066696C6C3D22234136
+ 36343241222063783D223334222063793D2234312E352220723D22312E35222F
+ 3E0D0A3C2F7376673E0D0A050000006D007500730069006300FF0000003C7376
+ 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
+ 77332E6F72672F323030302F737667222076696577426F783D22302030203438
+ 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
+ 3438203438223E0D0A202020203C672066696C6C3D2223453931453633223E0D
+ 0A20202020202020203C636972636C652063783D223139222063793D22333322
+ 20723D2239222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74
+ 733D2232342C362032342C33332032382C33332032382C31342033392C313720
+ 33392C3130222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A10000000
+ 6E00650075007400720061006C005F006400650063006900730069006F006E00
+ 8A0200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C672066696C6C3D22234646
+ 43433830223E0D0A20202020202020203C636972636C652063783D2233382220
+ 63793D2232362220723D2234222F3E0D0A20202020202020203C636972636C65
+ 2063783D223130222063793D2232362220723D2234222F3E0D0A202020202020
+ 20203C7061746820643D224D33392C313963302D31322E372D33302D382E332D
+ 33302C3063302C312E382C302C382E322C302C313063302C382E332C362E372C
+ 31352C31352C31357331352D362E372C31352D31354333392C32372E322C3339
+ 2C32302E382C33392C31397A222F3E0D0A20202020202020203C706174682064
+ 3D224D32342C344331352E322C342C382C31312E322C382C323063302C312E32
+ 2C302C332E352C302C332E356C322E312C302E365631396C31392E352D362E33
+ 6C382E322C362E3376352E316C322E312D302E3663302C302C302D322E332C30
+ 2D332E35204334302C31322E352C33342E362C342C32342C347A222F3E0D0A20
+ 2020203C2F673E0D0A202020203C672066696C6C3D2223333734373446223E0D
+ 0A20202020202020203C636972636C652063783D223234222063793D22323522
+ 20723D2232222F3E0D0A20202020202020203C636972636C652063783D223332
+ 222063793D2232352220723D2232222F3E0D0A20202020202020203C63697263
+ 6C652063783D223136222063793D2232352220723D2232222F3E0D0A20202020
+ 3C2F673E0D0A3C2F7376673E0D0A0F0000006E00650075007400720061006C00
+ 5F00740072006100640069006E0067008E0200003C7376672076657273696F6E
+ 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
+ 30302F737667222076696577426F783D223020302034382034382220656E6162
+ 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
+ 202020203C672066696C6C3D2223313536354330223E0D0A2020202020202020
+ 3C706F6C79676F6E20706F696E74733D2234332E342C31332033352C32302033
+ 352C36222F3E0D0A20202020202020203C7265637420783D22342220793D2231
+ 31222077696474683D22333422206865696768743D2234222F3E0D0A20202020
+ 3C2F673E0D0A202020203C672066696C6C3D2223323139364633223E0D0A2020
+ 2020202020203C7265637420783D2234302220793D223233222077696474683D
+ 223422206865696768743D223139222F3E0D0A20202020202020203C72656374
+ 20783D2233342220793D223233222077696474683D223422206865696768743D
+ 223139222F3E0D0A20202020202020203C7265637420783D2232382220793D22
+ 3233222077696474683D223422206865696768743D223139222F3E0D0A202020
+ 20202020203C7265637420783D2232322220793D223233222077696474683D22
+ 3422206865696768743D223139222F3E0D0A20202020202020203C7265637420
+ 783D2231362220793D223233222077696474683D223422206865696768743D22
+ 3139222F3E0D0A20202020202020203C7265637420783D2231302220793D2232
+ 33222077696474683D223422206865696768743D223139222F3E0D0A20202020
+ 202020203C7265637420783D22342220793D223233222077696474683D223422
+ 206865696768743D223139222F3E0D0A202020203C2F673E0D0A3C2F7376673E
+ 0D0A040000006E00650077007300D20300003C7376672076657273696F6E3D22
+ 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
+ 2F737667222076696577426F783D223020302034382034382220656E61626C65
+ 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
+ 20203C706174682066696C6C3D22234646353732322220643D224D33322C3135
+ 763238483130632D322E322C302D342D312E382D342D345631354833327A222F
+ 3E0D0A202020203C706174682066696C6C3D22234646434342432220643D224D
+ 31342C3576333463302C322E322D312E382C342D342C3468323963322E322C30
+ 2C342D312E382C342D3456354831347A222F3E0D0A202020203C672066696C6C
+ 3D2223464635373232223E0D0A20202020202020203C7265637420783D223230
+ 2220793D223130222077696474683D22313822206865696768743D2234222F3E
+ 0D0A20202020202020203C7265637420783D2232302220793D22313722207769
+ 6474683D223822206865696768743D2232222F3E0D0A20202020202020203C72
+ 65637420783D2233302220793D223137222077696474683D2238222068656967
+ 68743D2232222F3E0D0A20202020202020203C7265637420783D223230222079
+ 3D223231222077696474683D223822206865696768743D2232222F3E0D0A2020
+ 2020202020203C7265637420783D2233302220793D223231222077696474683D
+ 223822206865696768743D2232222F3E0D0A20202020202020203C7265637420
+ 783D2232302220793D223235222077696474683D223822206865696768743D22
+ 32222F3E0D0A20202020202020203C7265637420783D2233302220793D223235
+ 222077696474683D223822206865696768743D2232222F3E0D0A202020202020
+ 20203C7265637420783D2232302220793D223239222077696474683D22382220
+ 6865696768743D2232222F3E0D0A20202020202020203C7265637420783D2233
+ 302220793D223239222077696474683D223822206865696768743D2232222F3E
+ 0D0A20202020202020203C7265637420783D2232302220793D22333322207769
+ 6474683D223822206865696768743D2232222F3E0D0A20202020202020203C72
+ 65637420783D2233302220793D223333222077696474683D2238222068656967
+ 68743D2232222F3E0D0A20202020202020203C7265637420783D223230222079
+ 3D223337222077696474683D223822206865696768743D2232222F3E0D0A2020
+ 2020202020203C7265637420783D2233302220793D223337222077696474683D
+ 223822206865696768743D2232222F3E0D0A202020203C2F673E0D0A3C2F7376
+ 673E0D0A040000006E00650078007400C80000003C7376672076657273696F6E
+ 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
+ 30302F737667222076696577426F783D223020302034382034382220656E6162
+ 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
+ 202020203C706F6C79676F6E2066696C6C3D22233231393646332220706F696E
+ 74733D2231372E312C352031342C382E312032392E392C32342031342C33392E
+ 392031372E312C34332033362C3234222F3E0D0A3C2F7376673E0D0A08000000
+ 6E00660063005F007300690067006E00B10400003C3F786D6C2076657273696F
+ 6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A3C212D2D
+ 2047656E657261746F723A2041646F626520496C6C7573747261746F72203139
+ 2E312E312C20535647204578706F727420506C75672D496E202E205356472056
+ 657273696F6E3A20362E3030204275696C6420302920202D2D3E0D0A3C737667
+ 2076657273696F6E3D22312E31222020786D6C6E733D22687474703A2F2F7777
+ 772E77332E6F72672F323030302F7376672220786D6C6E733A786C696E6B3D22
+ 687474703A2F2F7777772E77332E6F72672F313939392F786C696E6B2220783D
+ 223070782220793D22307078220D0A092076696577426F783D22302030203438
+ 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
+ 34382034382220786D6C3A73706163653D227072657365727665223E0D0A3C70
+ 6174682066696C6C3D22233231393646332220643D224D33372C3432632D302E
+ 332C302D302E372D302E312D312D302E33632D312D302E352D312E332D312E38
+ 2D302E382D322E3763302D302E312C332E372D362E382C332E372D3135533335
+ 2E332C392C33352E332C390D0A09632D302E352D312D302E322D322E322C302E
+ 382D322E3763312D302E352C322E322D302E322C322E372C302E3863302E322C
+ 302E332C342E332C372E362C342E332C3137732D342E312C31362E372D342E33
+ 2C31374333382E342C34312E362C33372E372C34322C33372C34327A204D3332
+ 2E382C33352E380D0A0963302E312D302E322C322E322D352C322E322D31312E
+ 3863302D362E382D322E312D31312E362D322E322D31312E38632D302E342D31
+ 2D312E362D312E352D322E362D31632D312C302E342D312E352C312E362D312C
+ 322E3663302C302C312E382C342E332C312E382C31302E320D0A0963302C352E
+ 392D312E382C31302E322D312E382C31302E32632D302E342C312C302C322E32
+ 2C312C322E3663302E332C302E312C302E352C302E322C302E382C302E324333
+ 312E382C33372C33322E352C33362E362C33322E382C33352E387A204D32332E
+ 332C333363302E362D302E312C312E312D302E352C312E342D310D0A0963302E
+ 312D302E322C322E332D332E392C322E332D3863302D342E312D322E322D372E
+ 392D322E332D38632D302E362D312D312E382D312E332D322E372D302E37632D
+ 312C302E362D312E332C312E382D302E372C322E3763302C302C312E372C332C
+ 312E372C3663302C312E332D302E332C322E372D302E372C332E370D0A096C2D
+ 31332D31312E32632D302E352D302E342D312E322D302E362D312E382D302E34
+ 632D302E362C302E322D312E322C302E362D312E342C312E3343362E312C3137
+ 2E352C352C32302E352C352C323463302C332E352C312E312C362E352C312E31
+ 2C362E3763302E342C312C312E352C312E362C322E362C312E320D0A0963312D
+ 302E342C312E362D312E352C312E322D322E3663302C302D302E392D322E362D
+ 302E392D352E3363302D302E382C302E312D312E362C302E322D322E336C3132
+ 2E352C31302E3863302E342C302E332C302E382C302E352C312E332C302E3543
+ 32332E312C33332C32332E322C33332C32332E332C33337A222F3E0D0A3C2F73
+ 76673E0D0A0F0000006E0069006700680074005F006C0061006E006400730063
+ 00610070006500950100003C7376672076657273696F6E3D22312220786D6C6E
+ 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E657720302030203438203438223E0D0A202020203C706F6C79
+ 676F6E2066696C6C3D22233637334142372220706F696E74733D2231362E352C
+ 313820302C34322033332C3432222F3E0D0A202020203C706F6C79676F6E2066
+ 696C6C3D22233935373543442220706F696E74733D2233332E362C3234203139
+ 2E322C34322034382C3432222F3E0D0A202020203C706174682066696C6C3D22
+ 233430433446462220643D224D34322E392C362E334334332E362C372E342C34
+ 342C382E362C34342C313063302C332E392D332E312C372D372C37632D302E37
+ 2C302D312E332D302E312D312E392D302E3363312E322C322C332E342C332E33
+ 2C352E392C332E332063332E392C302C372D332E312C372D374334382C392E38
+ 2C34352E392C372E312C34322E392C362E337A222F3E0D0A3C2F7376673E0D0A
+ 0E0000006E0069006700680074005F0070006F00720074007200610069007400
+ 890300003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
+ 233430433446462220643D224D34322E392C362E334334332E362C372E342C34
+ 342C382E362C34342C313063302C332E392D332E312C372D372C37632D302E37
+ 2C302D312E332D302E312D312E392D302E3363312E322C322C332E342C332E33
+ 2C352E392C332E332063332E392C302C372D332E312C372D374334382C392E38
+ 2C34352E392C372E312C34322E392C362E337A222F3E0D0A202020203C672066
+ 696C6C3D2223423339444442223E0D0A20202020202020203C636972636C6520
+ 63783D223331222063793D2231392220723D2232222F3E0D0A20202020202020
+ 203C636972636C652063783D223133222063793D2231392220723D2232222F3E
+ 0D0A20202020202020203C706F6C79676F6E20706F696E74733D2232322C3337
+ 2031372C33312031372C32352032372C32352032372C3331222F3E0D0A202020
+ 203C2F673E0D0A202020203C706174682066696C6C3D22234431433445392220
+ 643D224D33312C313363302D372E362D31382D352D31382C3063302C312E312C
+ 302C352E392C302C3763302C352C342C392C392C3973392D342C392D39433331
+ 2C31382E392C33312C31342E312C33312C31337A222F3E0D0A202020203C6720
+ 66696C6C3D2223363733414237223E0D0A20202020202020203C636972636C65
+ 2063783D223236222063793D2231392220723D2231222F3E0D0A202020202020
+ 20203C636972636C652063783D223138222063793D2231392220723D2231222F
+ 3E0D0A20202020202020203C7061746820643D224D32322C34632D362E312C30
+ 2D31302C342E392D31302C313163302C302E382C302C322E332C302C322E336C
+ 322C312E37762D356C31322D346C342C3476356C322D312E3763302C302C302D
+ 312E352C302D322E3363302D342D312D382D362D396C2D312D32204832327A22
+ 2F3E0D0A20202020202020203C7061746820643D224D32372C33314C32372C33
+ 3163302C302D322C312D352C31732D352D312D352D3153362C33332C362C3434
+ 6833324333382C33332C32372C33312C32372C33317A222F3E0D0A202020203C
+ 2F673E0D0A3C2F7376673E0D0A070000006E006F005F00690064006500610058
+ 0400003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
+ 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
+ 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
+ 7720302030203438203438223E0D0A202020203C706174682066696C6C3D2223
+ 4642433032442220643D224D33372C323263302D372E372D362E362D31332E38
+ 2D31342E352D31322E39632D362C302E372D31302E382C352E352D31312E342C
+ 31312E35632D302E352C342E362C312E342C382E372C342E362C31312E332063
+ 312E342C312E322C322E332C322E392C322E332C342E38563337683132762D30
+ 2E3163302D312E382C302E382D332E362C322E322D342E384333352E312C3239
+ 2E372C33372C32362E312C33372C32327A222F3E0D0A202020203C7061746820
+ 66696C6C3D22234646463539442220643D224D33302E362C32302E326C2D332D
+ 32632D302E332D302E322D302E382D302E322D312E312C304C32342C31392E38
+ 6C2D322E342D312E36632D302E332D302E322D302E382D302E322D312E312C30
+ 6C2D332C3220632D302E322C302E322D302E342C302E342D302E342C302E3773
+ 302C302E362C302E322C302E386C332E382C342E37563337683256323663302D
+ 302E322D302E312D302E342D302E322D302E366C2D332E332D342E316C312E35
+ 2D316C322E342C312E3663302E332C302E322C302E382C302E322C312E312C30
+ 206C322E342D312E366C312E352C316C2D332E332C342E314332352E312C3235
+ 2E362C32352C32352E382C32352C323676313168325632362E346C332E382D34
+ 2E3763302E322D302E322C302E332D302E352C302E322D302E385333302E382C
+ 32302E332C33302E362C32302E327A222F3E0D0A202020203C636972636C6520
+ 66696C6C3D2223354336424330222063783D223234222063793D223434222072
+ 3D2233222F3E0D0A202020203C706174682066696C6C3D222339464138444122
+ 20643D224D32362C3435682D34632D322E322C302D342D312E382D342D34762D
+ 3568313276354333302C34332E322C32382E322C34352C32362C34357A222F3E
+ 0D0A202020203C672066696C6C3D2223354336424330223E0D0A202020202020
+ 20203C7061746820643D224D33302C34316C2D31312E362C312E3663302E332C
+ 302E372C302E392C312E342C312E362C312E386C392E342D312E334332392E38
+ 2C34322E352C33302C34312E382C33302C34317A222F3E0D0A20202020202020
+ 203C706F6C79676F6E20706F696E74733D2231382C33382E372031382C34302E
+ 372033302C33392033302C3337222F3E0D0A202020203C2F673E0D0A20202020
+ 3C7265637420783D2232322220793D222D322E3922207472616E73666F726D3D
+ 226D6174726978282E373037202D2E373037202E373037202E373037202D392E
+ 39343120323429222066696C6C3D2223333734373446222077696474683D2234
+ 22206865696768743D2235332E37222F3E0D0A3C2F7376673E0D0A080000006E
+ 006F005F0076006900640065006F00B20100003C7376672076657273696F6E3D
+ 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
+ 302F737667222076696577426F783D223020302034382034382220656E61626C
+ 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
+ 2020203C706174682066696C6C3D22233443414635302220643D224D382C3132
+ 68323263322E322C302C342C312E382C342C3476313663302C322E322D312E38
+ 2C342D342C344838632D322E322C302D342D312E382D342D3456313643342C31
+ 332E382C352E382C31322C382C31327A222F3E0D0A202020203C706F6C79676F
+ 6E2066696C6C3D22233338384533432220706F696E74733D2234342C33352033
+ 342C32392033342C31392034342C3133222F3E0D0A202020203C6C696E652066
+ 696C6C3D226E6F6E6522207374726F6B653D222332313231323122207374726F
+ 6B652D77696474683D223422207374726F6B652D6C696E656A6F696E3D22726F
+ 756E6422207374726F6B652D6D697465726C696D69743D223130222078313D22
+ 35222079313D2235222078323D223433222079323D223433222F3E0D0A3C2F73
+ 76673E0D0A040000006E006F006F006B000C0300003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22233930413441452220643D224D382C
+ 3339563963302D332E332C322E372D362C362D3668323063332E332C302C362C
+ 322E372C362C3676333063302C332E332D322E372C362D362C36483134433130
+ 2E372C34352C382C34322E332C382C33397A222F3E0D0A202020203C70617468
+ 2066696C6C3D22234543454646312220643D224D33342C37483134632D312E31
+ 2C302D322C302E392D322C3276323663302C312E312C302E392C322C322C3268
+ 323063312E312C302C322D302E392C322D3256394333362C372E392C33352E31
+ 2C372C33342C377A222F3E0D0A202020203C672066696C6C3D22234230424543
+ 35223E0D0A20202020202020203C7265637420783D2231362220793D22313222
+ 2077696474683D22313622206865696768743D2233222F3E0D0A202020202020
+ 20203C7265637420783D2231362220793D223139222077696474683D22313622
+ 206865696768743D2232222F3E0D0A20202020202020203C7265637420783D22
+ 31362220793D223233222077696474683D22313222206865696768743D223222
+ 2F3E0D0A20202020202020203C7265637420783D2231362220793D2232372220
+ 77696474683D22313622206865696768743D2232222F3E0D0A20202020202020
+ 203C7265637420783D2231362220793D223331222077696474683D2231322220
+ 6865696768743D2232222F3E0D0A202020203C2F673E0D0A202020203C706174
+ 682066696C6C3D226E6F6E6522207374726F6B653D222365656522207374726F
+ 6B652D77696474683D223222207374726F6B652D6D697465726C696D69743D22
+ 31302220643D224D32322C3433762D3163302D312E312C302E392D322C322D32
+ 683063312E312C302C322C302E392C322C327631222F3E0D0A3C2F7376673E0D
+ 0A140000006E0075006D00650072006900630061006C005F0073006F00720074
+ 0069006E0067005F0031003200430300003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706F6C79676F6E2066696C6C3D22233534364537412220706F696E74733D
+ 2233382C33332033382C352033342C352033342C33332032382C33332033362C
+ 34332034342C3333222F3E0D0A202020203C672066696C6C3D22233231393646
+ 33223E0D0A20202020202020203C7061746820643D224D31362E342C3230682D
+ 3356382E364C392E392C392E3756372E334C31362C352E3168302E335632307A
+ 222F3E0D0A20202020202020203C7061746820643D224D31392E342C34334839
+ 2E32762D326C342E382D352E3163302E342D302E342C302E372D302E382C302E
+ 392D312E3163302E322D302E332C302E352D302E362C302E362D302E3963302E
+ 322D302E332C302E332D302E352C302E332D302E382063302E312D302E322C30
+ 2E312D302E352C302E312D302E3763302D302E372D302E322D312E322D302E35
+ 2D312E36632D302E332D302E342D302E382D302E362D312E342D302E36632D30
+ 2E332C302D302E372C302E312D302E392C302E32632D302E332C302E312D302E
+ 352C302E332D302E372C302E3520632D302E322C302E322D302E332C302E352D
+ 302E342C302E38732D302E312C302E362D302E312C31682D3363302D302E372C
+ 302E312D312E332C302E342D312E3963302E322D302E362C302E362D312E312C
+ 312D312E3663302E352D302E342C312D302E382C312E362D312E312063302E36
+ 2D302E332C312E342D302E342C322E322D302E3463302E382C302C312E352C30
+ 2E312C322E312C302E3363302E362C302E322C312E312C302E352C312E352C30
+ 2E3873302E372C302E382C302E392C312E3373302E332C312E312C302E332C31
+ 2E3863302C302E352D302E312C312D302E322C312E34205331382E332C33342E
+ 352C31382C3335732D302E362C302E392D312C312E34632D302E342C302E352D
+ 302E392C312D312E342C312E354C31332C34302E3668362E345634337A222F3E
+ 0D0A202020203C2F673E0D0A3C2F7376673E0D0A140000006E0075006D006500
+ 72006900630061006C005F0073006F007200740069006E0067005F0032003100
+ 4F0300003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C706F6C79676F6E2066696C
+ 6C3D22233534364537412220706F696E74733D2233382C33332033382C352033
+ 342C352033342C33332032382C33332033362C34332034342C3333222F3E0D0A
+ 202020203C672066696C6C3D2223323139364633223E0D0A2020202020202020
+ 3C7061746820643D224D31392E322C32304839762D326C342E382D352E316330
+ 2E342D302E342C302E372D302E382C302E392D312E3163302E322D302E332C30
+ 2E352D302E362C302E362D302E3963302E322D302E332C302E332D302E352C30
+ 2E332D302E382063302E312D302E322C302E312D302E352C302E312D302E3763
+ 302D302E372D302E322D312E322D302E352D312E36632D302E332D302E342D30
+ 2E382D302E362D312E342D302E36632D302E332C302D302E372C302E312D302E
+ 392C302E32632D302E332C302E312D302E352C302E332D302E372C302E352063
+ 2D302E322C302E322D302E332C302E352D302E342C302E38732D302E312C302E
+ 362D302E312C31682D3363302D302E372C302E312D312E332C302E342D312E39
+ 63302E322D302E362C302E362D312E312C312D312E3663302E352D302E342C31
+ 2D302E382C312E362D312E312063302E362D302E332C312E342D302E342C322E
+ 322D302E3463302E382C302C312E352C302E312C322E312C302E3363302E362C
+ 302E322C312E312C302E352C312E352C302E3873302E372C302E382C302E392C
+ 312E3363302E322C302E352C302E332C312E312C302E332C312E382063302C30
+ 2E352D302E312C312D302E322C312E34732D302E342C302E392D302E372C312E
+ 34732D302E362C302E392D312C312E34632D302E342C302E352D302E392C312D
+ 312E342C312E356C2D322E362C322E3868362E345632307A222F3E0D0A202020
+ 20202020203C7061746820643D224D31362E322C3433682D335633312E366C2D
+ 332E352C312E31762D322E346C362E322D322E3268302E335634337A222F3E0D
+ 0A202020203C2F673E0D0A3C2F7376673E0D0A020000006F006B00090100003C
+ 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
+ 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
+ 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
+ 30203438203438223E0D0A202020203C636972636C652066696C6C3D22233443
+ 41463530222063783D223234222063793D2232342220723D223231222F3E0D0A
+ 202020203C706F6C79676F6E2066696C6C3D22234343464639302220706F696E
+ 74733D2233342E362C31342E362032312C32382E322031352E342C32322E3620
+ 31322E362C32352E342032312C33332E382033372E342C31372E34222F3E0D0A
+ 3C2F7376673E0D0A0F0000006F006C0064005F00740069006D0065005F006300
+ 61006D006500720061001B0400003C7376672076657273696F6E3D2231222078
+ 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
+ 222076696577426F783D223020302034382034382220656E61626C652D626163
+ 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C70
+ 6174682066696C6C3D22233534364537412220643D224D31342C31334838762D
+ 312E3843382C31302E352C382E352C31302C392E322C313068332E3663302E37
+ 2C302C312E322C302E352C312E322C312E325631337A222F3E0D0A202020203C
+ 706174682066696C6C3D22233545333542312220643D224D34302C3430483863
+ 2D322E322C302D342D312E382D342D345632326834307631344334342C33382E
+ 322C34322E322C34302C34302C34307A222F3E0D0A202020203C706174682066
+ 696C6C3D22233432323537412220643D224D31322E372C3232632D302E342C31
+ 2E332D302E372C322E362D302E372C3463302C362E362C352E342C31322C3132
+ 2C31327331322D352E342C31322D313263302D312E342D302E332D322E372D30
+ 2E372D344831322E377A222F3E0D0A202020203C706174682066696C6C3D2223
+ 3738393039432220643D224D382C313268333263322E322C302C342C312E382C
+ 342C3476364834762D3643342C31332E382C352E382C31322C382C31327A222F
+ 3E0D0A202020203C706174682066696C6C3D22233738393039432220643D224D
+ 33332E392C31332E314831342E324C31372E362C3863302E342D302E362C312D
+ 302E392C312E372D302E3968392E3663302E372C302C312E332C302E332C312E
+ 372C302E394C33332E392C31332E317A222F3E0D0A202020203C706174682066
+ 696C6C3D22233435354136342220643D224D33352E332C3232632D312E362D34
+ 2E372D362E312D382D31312E332D38732D392E372C332E332D31312E332C3848
+ 33352E337A222F3E0D0A202020203C636972636C652066696C6C3D2223423338
+ 384646222063783D223234222063793D2232362220723D2239222F3E0D0A2020
+ 20203C706174682066696C6C3D22234337413746462220643D224D32392C3233
+ 632D312E322D312E342D332D322E322D342E382D322E32632D312E382C302D33
+ 2E362C302E382D342E382C322E32632D302E352C302E352D302E342C312E332C
+ 302E312C312E3863302E352C302E352C312E332C302E342C312E382D302E3120
+ 63312E352D312E372C342E332D312E372C352E382C3063302E332C302E332C30
+ 2E362C302E342C312C302E3463302E332C302C302E362D302E312C302E392D30
+ 2E334332392E342C32342E342C32392E352C32332E352C32392C32337A222F3E
+ 0D0A202020203C7265637420783D2233362220793D223135222066696C6C3D22
+ 23444245324535222077696474683D223522206865696768743D2234222F3E0D
+ 0A3C2F7376673E0D0A0E0000006F006E006C0069006E0065005F007300750070
+ 0070006F00720074004C0400003C7376672076657273696F6E3D22312220786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 2076696577426F783D223020302034382034382220656E61626C652D6261636B
+ 67726F756E643D226E657720302030203438203438223E0D0A202020203C7265
+ 637420783D2231332220793D223330222066696C6C3D22234246333630432220
+ 77696474683D22323222206865696768743D223132222F3E0D0A202020203C67
+ 2066696C6C3D2223464641373236223E0D0A20202020202020203C636972636C
+ 652063783D223130222063793D2232362220723D2234222F3E0D0A2020202020
+ 2020203C636972636C652063783D223338222063793D2232362220723D223422
+ 2F3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C3D222346
+ 46423734442220643D224D33392C313963302D31322E372D33302D382E332D33
+ 302C3063302C312E382C302C382E322C302C313063302C382E332C362E372C31
+ 352C31352C31357331352D362E372C31352D31354333392C32372E322C33392C
+ 32302E382C33392C31397A222F3E0D0A202020203C672066696C6C3D22233738
+ 34373139223E0D0A20202020202020203C636972636C652063783D2233302220
+ 63793D2232362220723D2232222F3E0D0A20202020202020203C636972636C65
+ 2063783D223138222063793D2232362220723D2232222F3E0D0A202020203C2F
+ 673E0D0A202020203C706174682066696C6C3D22234646353732322220643D22
+ 4D32342C324331352E352C322C332C372E382C332C33352E364C31332C343256
+ 32346C31362E382D392E384C33352C32317632316C31302D382E3263302D352E
+ 362D302E392D32392D31352E342D32394C32382E322C324832347A222F3E0D0A
+ 202020203C706174682066696C6C3D22233735373537352220643D224D34352C
+ 3234632D302E362C302D312C302E342D312C31762D3763302D382E382D372E32
+ 2D31362D31362D3136682D39632D302E362C302D312C302E342D312C3173302E
+ 342C312C312C31683963372E372C302C31342C362E332C31342C313476313020
+ 63302C302E362C302E342C312C312C3173312D302E342C312D31763263302C33
+ 2E392D332E312C372D372C37483234632D302E362C302D312C302E342D312C31
+ 73302E342C312C312C3168313363352C302C392D342C392D39762D354334362C
+ 32342E342C34352E362C32342C34352C32347A222F3E0D0A202020203C672066
+ 696C6C3D2223333734373446223E0D0A20202020202020203C7061746820643D
+ 224D34352C3232682D31632D312E312C302D322C302E392D322C32763463302C
+ 312E312C302E392C322C322C32683163312E312C302C322D302E392C322D3276
+ 2D344334372C32322E392C34362E312C32322C34352C32327A222F3E0D0A2020
+ 2020202020203C636972636C652063783D223234222063793D2233382220723D
+ 2232222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0D0000006F0070
+ 0065006E00650064005F0066006F006C006400650072007D0100003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C706174682066696C6C3D22234646413030302220
+ 643D224D33382C31324832326C2D342D344838632D322E322C302D342C312E38
+ 2D342C3476323463302C322E322C312E382C342C342C3468333163312E372C30
+ 2C332D312E332C332D335631364334322C31332E382C34302E322C31322C3338
+ 2C31327A222F3E0D0A202020203C706174682066696C6C3D2223464643413238
+ 2220643D224D34322E322C31384831352E33632D312E392C302D332E362C312E
+ 342D332E392C332E334C382C34306833312E3763312E392C302C332E362D312E
+ 342C332E392D332E336C322E352D31344334362E362C32302E332C34342E372C
+ 31382C34322E322C31387A222F3E0D0A3C2F7376673E0D0A080000006F007200
+ 67005F0075006E0069007400BD0100003C7376672076657273696F6E3D223122
+ 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
+ 7667222076696577426F783D223020302034382034382220656E61626C652D62
+ 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
+ 3C706174682066696C6C3D22233930434146392220643D224D31302C31307632
+ 386832385631304831307A204D33342C33344831345631346832305633347A22
+ 2F3E0D0A202020203C7265637420783D22362220793D2236222066696C6C3D22
+ 23443831423630222077696474683D22313222206865696768743D223132222F
+ 3E0D0A202020203C672066696C6C3D2223323139364633223E0D0A2020202020
+ 2020203C7265637420783D2233302220793D2236222077696474683D22313222
+ 206865696768743D223132222F3E0D0A20202020202020203C7265637420783D
+ 22362220793D223330222077696474683D22313222206865696768743D223132
+ 222F3E0D0A20202020202020203C7265637420783D2233302220793D22333022
+ 2077696474683D22313222206865696768743D223132222F3E0D0A202020203C
+ 2F673E0D0A3C2F7376673E0D0A0C0000006F007200670061006E0069007A0061
+ 00740069006F006E00980300003C7376672076657273696F6E3D22312220786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 2076696577426F783D223020302034382034382220656E61626C652D6261636B
+ 67726F756E643D226E657720302030203438203438223E0D0A202020203C7061
+ 74682066696C6C3D22233930434146392220643D224D34322C34324836563130
+ 63302D322E322C312E382D342C342D3468323863322E322C302C342C312E382C
+ 342C345634327A222F3E0D0A202020203C7265637420783D22362220793D2234
+ 32222066696C6C3D2223363442354636222077696474683D2233362220686569
+ 6768743D2232222F3E0D0A202020203C672066696C6C3D222331353635433022
+ 3E0D0A20202020202020203C7265637420783D2233312220793D223237222077
+ 696474683D223622206865696768743D2235222F3E0D0A20202020202020203C
+ 7265637420783D2232312220793D223237222077696474683D22362220686569
+ 6768743D2235222F3E0D0A20202020202020203C7265637420783D2231312220
+ 793D223237222077696474683D223622206865696768743D2235222F3E0D0A20
+ 202020202020203C7265637420783D2233312220793D22333522207769647468
+ 3D223622206865696768743D2235222F3E0D0A20202020202020203C72656374
+ 20783D2231312220793D223335222077696474683D223622206865696768743D
+ 2235222F3E0D0A20202020202020203C7265637420783D2233312220793D2231
+ 39222077696474683D223622206865696768743D2235222F3E0D0A2020202020
+ 2020203C7265637420783D2232312220793D223139222077696474683D223622
+ 206865696768743D2235222F3E0D0A20202020202020203C7265637420783D22
+ 31312220793D223139222077696474683D223622206865696768743D2235222F
+ 3E0D0A20202020202020203C7265637420783D2233312220793D223131222077
+ 696474683D223622206865696768743D2235222F3E0D0A20202020202020203C
+ 7265637420783D2232312220793D223131222077696474683D22362220686569
+ 6768743D2235222F3E0D0A20202020202020203C7265637420783D2231312220
+ 793D223131222077696474683D223622206865696768743D2235222F3E0D0A20
+ 202020202020203C7265637420783D2232312220793D22333522207769647468
+ 3D223622206865696768743D2239222F3E0D0A202020203C2F673E0D0A3C2F73
+ 76673E0D0A070000007000610063006B00610067006500800100003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C706174682066696C6C3D22234646393830302220
+ 643D224D33382C3432483130632D322E322C302D342D312E382D342D34563130
+ 63302D322E322C312E382D342C342D3468323863322E322C302C342C312E382C
+ 342C347632384334322C34302E322C34302E322C34322C33382C34327A222F3E
+ 0D0A202020203C706174682066696C6C3D22233841353130302220643D224D32
+ 392E352C3136682D3131632D302E382C302D312E352D302E372D312E352D312E
+ 35763063302D302E382C302E372D312E352C312E352D312E3568313163302E38
+ 2C302C312E352C302E372C312E352C312E357630204333312C31352E332C3330
+ 2E332C31362C32392E352C31367A222F3E0D0A3C2F7376673E0D0A0400000070
+ 00610069006400010300003C7376672076657273696F6E3D22312220786D6C6E
+ 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E657720302030203438203438223E0D0A202020203C70617468
+ 2066696C6C3D22233245374433322220643D224D32352E342C352E36632D302E
+ 382D302E382D322D302E382D322E382C306C2D31322C3132632D302E382C302E
+ 382D302E382C322C302C322E384331312C32302E382C31312E352C32312C3132
+ 2C323173312D302E322C312E342D302E366C31322D3132204332362E322C372E
+ 362C32362E322C362E342C32352E342C352E367A222F3E0D0A202020203C7061
+ 74682066696C6C3D22233142354532302220643D224D33372E342C31372E366C
+ 2D31322D3132632D302E382D302E382D322D302E382D322E382C30632D302E38
+ 2C302E382D302E382C322C302C322E386C31322C31324333352C32302E382C33
+ 352E352C32312C33362C323173312D302E322C312E342D302E36204333382E32
+ 2C31392E362C33382E322C31382E342C33372E342C31372E367A222F3E0D0A20
+ 2020203C706174682066696C6C3D22233338384533432220643D224D33372E34
+ 2C34314831302E36632D312C302D312E382D302E372D322D312E364C352C3231
+ 6833386C2D332E372C31382E344333392E312C34302E332C33382E332C34312C
+ 33372E342C34317A222F3E0D0A202020203C706174682066696C6C3D22233443
+ 414635302220643D224D34332C32334835632D312E312C302D322D302E392D32
+ 2D32762D3263302D312E312C302E392D322C322D3268333863312E312C302C32
+ 2C302E392C322C3276324334352C32322E312C34342E312C32332C34332C3233
+ 7A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223444345444338
+ 2220706F696E74733D2233302E382C32342E382032322E392C33322E37203139
+ 2E322C32382E392031372C33312E312032322E392C33372033332C32362E3922
+ 2F3E0D0A3C2F7376673E0D0A08000000700061006E006F00720061006D006100
+ 2C0200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
+ 234635374330302220643D224D342C3976333263302C302C382E342D332C3230
+ 2D337332302C332C32302C33563963302C302D362E372C332D32302C3353342C
+ 392C342C397A222F3E0D0A202020203C706174682066696C6C3D222339343241
+ 30392220643D224D32342C333463302E312C302C302E332C302C302E342C304C
+ 31352C31394C362E392C33362E324331302E332C33352E332C31362E352C3334
+ 2C32342C33347A222F3E0D0A202020203C706174682066696C6C3D2223424633
+ 3630432220643D224D32342C333463332E332C302C362E332C302E322C392C30
+ 2E366C2D382D31312E386C2D372E382C31312E354331392E332C33342E312C32
+ 312E362C33342C32342C33347A222F3E0D0A202020203C706174682066696C6C
+ 3D22234536353130302220643D224D34302E372C33364C33352C32362E356C2D
+ 352C372E384333342E352C33342E372C33382E322C33352E342C34302E372C33
+ 367A222F3E0D0A202020203C656C6C697073652066696C6C3D22234646463943
+ 34222063783D223336222063793D2231392E35222072783D2232222072793D22
+ 322E35222F3E0D0A3C2F7376673E0D0A0E00000070006100720061006C006C00
+ 65006C005F007400610073006B007300FC0100003C7376672076657273696F6E
+ 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
+ 30302F737667222076696577426F783D223020302034382034382220656E6162
+ 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
+ 202020203C706F6C79676F6E2066696C6C3D22233930434146392220706F696E
+ 74733D2233362C31332033362C392032322C392032322C32322031332C323220
+ 31332C32362032322C32362032322C33392033362C33392033362C3335203236
+ 2C33352032362C32362033362C32362033362C32322032362C32322032362C31
+ 33222F3E0D0A202020203C7265637420783D22362220793D223137222066696C
+ 6C3D2223443831423630222077696474683D22313022206865696768743D2231
+ 34222F3E0D0A202020203C7265637420783D2233322220793D2236222066696C
+ 6C3D2223323139364633222077696474683D22313022206865696768743D2231
+ 30222F3E0D0A202020203C7265637420783D2233322220793D22333222206669
+ 6C6C3D2223323139364633222077696474683D22313022206865696768743D22
+ 3130222F3E0D0A202020203C7265637420783D2233322220793D223139222066
+ 696C6C3D2223323139364633222077696474683D22313022206865696768743D
+ 223130222F3E0D0A3C2F7376673E0D0A05000000700068006F006E0065005D01
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C706174682066696C6C3D222330
+ 30393638382220643D224D33392E312C376C2D332E372C304332322E322C372E
+ 322C372E312C32342E312C372C33352E346C302C332E3763302C312C302E382C
+ 312E392C312E392C312E396C372E352D302E3163312C302C312E392D302E392C
+ 312E392D312E396C302E322D382E32206C2D342E372D3463302D322E362C3130
+ 2E352D31332E312C31332E322D31332E326C342E332C342E376C372E392D302E
+ 3263312C302C312E392D302E392C312E392D312E394C34312C382E394334312C
+ 372E382C34302E322C372C33392E312C377A222F3E0D0A3C2F7376673E0D0A0D
+ 000000700068006F006E0065005F0061006E00640072006F0069006400A20100
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C706174682066696C6C3D22233337
+ 343734462220643D224D31322C3430563863302D322E322C312E382D342C342D
+ 3468313663322E322C302C342C312E382C342C3476333263302C322E322D312E
+ 382C342D342C344831364331332E382C34342C31322C34322E322C31322C3430
+ 7A222F3E0D0A202020203C706174682066696C6C3D2223424244454642222064
+ 3D224D33322C37483136632D302E362C302D312C302E342D312C317632396330
+ 2C302E362C302E342C312C312C3168313663302E362C302C312D302E342C312D
+ 3156384333332C372E342C33322E362C372C33322C377A222F3E0D0A20202020
+ 3C7265637420783D2232312220793D223430222066696C6C3D22233738393039
+ 43222077696474683D223622206865696768743D2232222F3E0D0A3C2F737667
+ 3E0D0A0A000000700068006F0074006F005F007200650065006C006D0200003C
+ 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
+ 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
+ 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
+ 30203438203438223E0D0A202020203C706174682066696C6C3D222336373341
+ 42372220643D224D31302C39632D322E322C302D342C312E382D342C34763236
+ 63302C322E322C312E382C342C342C3468313663322E322C302C342D312E382C
+ 342D3456313363302D322E322D312E382D342D342D34222F3E0D0A202020203C
+ 672066696C6C3D2223333131423932223E0D0A20202020202020203C72656374
+ 20783D2231342220793D223133222077696474683D223222206865696768743D
+ 223236222F3E0D0A20202020202020203C7061746820643D224D32342C395637
+ 63302D312E322D302E382D322D322D32682D38632D312E322C302D322C302E38
+ 2D322C3276324832347A222F3E0D0A202020203C2F673E0D0A202020203C7061
+ 74682066696C6C3D22234438343331352220643D224D33302C31334831367632
+ 366831345631337A204D32312C3337682D33762D3468335633377A204D32312C
+ 3139682D33762D3468335631397A204D32372C3337682D33762D346833563337
+ 7A204D32342C3139762D34683376344832347A222F3E0D0A202020203C706174
+ 682066696C6C3D22234646353732322220643D224D33302C3133763268337634
+ 682D3376313468337634682D3376326831325631334833307A204D33392C3337
+ 682D33762D3468335633377A204D33392C3139682D33762D3468335631397A22
+ 2F3E0D0A3C2F7376673E0D0A0700000070006900630074007500720065009501
+ 00003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F
+ 2F7777772E77332E6F72672F323030302F737667222076696577426F783D2230
+ 20302034382034382220656E61626C652D6261636B67726F756E643D226E6577
+ 20302030203438203438223E0D0A202020203C706174682066696C6C3D222346
+ 35374330302220643D224D34302C34314838632D322E322C302D342D312E382D
+ 342D3456313163302D322E322C312E382D342C342D3468333263322E322C302C
+ 342C312E382C342C347632364334342C33392E322C34322E322C34312C34302C
+ 34317A222F3E0D0A202020203C636972636C652066696C6C3D22234646463943
+ 34222063783D223335222063793D2231362220723D2233222F3E0D0A20202020
+ 3C706F6C79676F6E2066696C6C3D22233934324130392220706F696E74733D22
+ 32302C313620392C33322033312C3332222F3E0D0A202020203C706F6C79676F
+ 6E2066696C6C3D22234246333630432220706F696E74733D2233312C32322032
+ 332C33322033392C3332222F3E0D0A3C2F7376673E0D0A090000007000690065
+ 005F0063006800610072007400670100003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706174682066696C6C3D22233030424344342220643D224D32342C364331
+ 342E312C362C362C31342E312C362C323473382E312C31382C31382C31386335
+ 2E322C302C392E392D322E322C31332E312D352E374C32342C323456367A222F
+ 3E0D0A202020203C706174682066696C6C3D22233434384146462220643D224D
+ 34322C323463302D392E392D382E312D31382D31382D31387631384834327A22
+ 2F3E0D0A202020203C706174682066696C6C3D22233346353142352220643D22
+ 4D32342C32346C31332E312C31322E3363332D332E322C342E392D372E352C34
+ 2E392D31322E334832347A222F3E0D0A3C2F7376673E0D0A0700000070006C00
+ 61006E006E0065007200D60300003C7376672076657273696F6E3D2231222078
+ 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
+ 222076696577426F783D223020302034382034382220656E61626C652D626163
+ 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C70
+ 6174682066696C6C3D22234346443844432220643D224D352C33385631346833
+ 3876323463302C322E322D312E382C342D342C34483943362E382C34322C352C
+ 34302E322C352C33387A222F3E0D0A202020203C706174682066696C6C3D2223
+ 4634343333362220643D224D34332C313076364835762D3663302D322E322C31
+ 2E382D342C342D346833304334312E322C362C34332C372E382C34332C31307A
+ 222F3E0D0A202020203C672066696C6C3D2223423731433143223E0D0A202020
+ 20202020203C636972636C652063783D223333222063793D2231302220723D22
+ 33222F3E0D0A20202020202020203C636972636C652063783D22313522206379
+ 3D2231302220723D2233222F3E0D0A202020203C2F673E0D0A202020203C6720
+ 66696C6C3D2223423042454335223E0D0A20202020202020203C706174682064
+ 3D224D33332C33632D312E312C302D322C302E392D322C32763563302C312E31
+ 2C302E392C322C322C3273322D302E392C322D3256354333352C332E392C3334
+ 2E312C332C33332C337A222F3E0D0A20202020202020203C7061746820643D22
+ 4D31352C33632D312E312C302D322C302E392D322C32763563302C312E312C30
+ 2E392C322C322C3273322D302E392C322D3256354331372C332E392C31362E31
+ 2C332C31352C337A222F3E0D0A202020203C2F673E0D0A202020203C67206669
+ 6C6C3D2223423042454335223E0D0A20202020202020203C7265637420783D22
+ 31332220793D223231222077696474683D223622206865696768743D2236222F
+ 3E0D0A20202020202020203C7265637420783D2232312220793D223231222077
+ 696474683D223622206865696768743D2236222F3E0D0A20202020202020203C
+ 7265637420783D2232392220793D223231222077696474683D22362220686569
+ 6768743D2236222F3E0D0A20202020202020203C7265637420783D2231332220
+ 793D223239222077696474683D223622206865696768743D2236222F3E0D0A20
+ 202020202020203C7265637420783D2232312220793D22323922207769647468
+ 3D223622206865696768743D2236222F3E0D0A202020203C2F673E0D0A202020
+ 203C7265637420783D2232392220793D223239222066696C6C3D222346343433
+ 3336222077696474683D223622206865696768743D2236222F3E0D0A3C2F7376
+ 673E0D0A0400000070006C0075007300320100003C7376672076657273696F6E
+ 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
+ 30302F737667222076696577426F783D223020302034382034382220656E6162
+ 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
+ 202020203C636972636C652066696C6C3D2223344341463530222063783D2232
+ 34222063793D2232342220723D223231222F3E0D0A202020203C672066696C6C
+ 3D2223666666223E0D0A20202020202020203C7265637420783D223231222079
+ 3D223134222077696474683D223622206865696768743D223230222F3E0D0A20
+ 202020202020203C7265637420783D2231342220793D22323122207769647468
+ 3D22323022206865696768743D2236222F3E0D0A202020203C2F673E0D0A3C2F
+ 7376673E0D0A1400000070006F006400690075006D005F007700690074006800
+ 5F00610075006400690065006E00630065000C0200003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C706F6C79676F6E2066696C6C3D22234230424543352220706F
+ 696E74733D2234312C313220372C313220362C31362031312C313920392C3136
+ 2033392C31362033372C31392034322C3136222F3E0D0A202020203C706F6C79
+ 676F6E2066696C6C3D22233738393039432220706F696E74733D22392C313620
+ 33392C31362033352C32382031332C3238222F3E0D0A202020203C636972636C
+ 652066696C6C3D2223464642373444222063783D223234222063793D22323822
+ 20723D2234222F3E0D0A202020203C636972636C652066696C6C3D2223464642
+ 373444222063783D223336222063793D2232382220723D2234222F3E0D0A2020
+ 20203C636972636C652066696C6C3D2223464642373444222063783D22313222
+ 2063793D2232382220723D2234222F3E0D0A202020203C636972636C65206669
+ 6C6C3D2223464642373444222063783D223138222063793D2233372220723D22
+ 35222F3E0D0A202020203C636972636C652066696C6C3D222346464237344422
+ 2063783D223330222063793D2233372220723D2235222F3E0D0A3C2F7376673E
+ 0D0A1300000070006F006400690075006D005F0077006900740068005F007300
+ 7000650061006B0065007200930100003C7376672076657273696F6E3D223122
+ 20786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73
+ 7667222076696577426F783D223020302034382034382220656E61626C652D62
+ 61636B67726F756E643D226E657720302030203438203438223E0D0A20202020
+ 3C636972636C652066696C6C3D2223464642373444222063783D223234222063
+ 793D2231312220723D2236222F3E0D0A202020203C706174682066696C6C3D22
+ 233630374438422220643D224D33362C32362E3163302C302D332E332D372E31
+ 2D31322D372E31732D31322C372E312D31322C372E315633306832345632362E
+ 317A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D22234230424543
+ 352220706F696E74733D2234312C323520372C323520362C32392031312C3332
+ 20392C32392033392C32392033372C33322034322C3239222F3E0D0A20202020
+ 3C706F6C79676F6E2066696C6C3D22233738393039432220706F696E74733D22
+ 392C32392033392C32392033352C34312031332C3431222F3E0D0A3C2F737667
+ 3E0D0A1600000070006F006400690075006D005F0077006900740068006F0075
+ 0074005F0073007000650061006B0065007200070100003C7376672076657273
+ 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
+ 2F323030302F737667222076696577426F783D22302030203438203438222065
+ 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
+ 3E0D0A202020203C706F6C79676F6E2066696C6C3D2223423042454335222070
+ 6F696E74733D2234332C313620352C313620342C323020392C323320372C3230
+ 2034312C32302033392C32332034342C3230222F3E0D0A202020203C706F6C79
+ 676F6E2066696C6C3D22233738393039432220706F696E74733D22372C323020
+ 34312C32302033372C33362031312C3336222F3E0D0A3C2F7376673E0D0A0D00
+ 000070006F007200740072006100690074005F006D006F00640065000E040000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C706174682066696C6C3D2223464639
+ 3830302220643D224D32322C3338632D342E382C302D352D372D352D37762D36
+ 68313076364332372C33312C32362E382C33382C32322C33387A222F3E0D0A20
+ 2020203C672066696C6C3D2223464641373236223E0D0A20202020202020203C
+ 636972636C652063783D223331222063793D2231392220723D2232222F3E0D0A
+ 20202020202020203C636972636C652063783D223133222063793D2231392220
+ 723D2232222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C
+ 6C3D22234646423734442220643D224D33312C313363302D372E362D31382D35
+ 2D31382C3063302C312E312C302C352E392C302C3763302C352C342C392C392C
+ 3973392D342C392D394333312C31382E392C33312C31342E312C33312C31337A
+ 222F3E0D0A202020203C706174682066696C6C3D22233432343234322220643D
+ 224D32322C34632D362E312C302D31302C342E392D31302C313163302C302E38
+ 2C302C322E332C302C322E336C322C312E37762D356C31322D346C342C347635
+ 6C322D312E3763302C302C302D312E352C302D322E3363302D342D312D382D36
+ 2D396C2D312D32204832327A222F3E0D0A202020203C672066696C6C3D222337
+ 3834373139223E0D0A20202020202020203C636972636C652063783D22323622
+ 2063793D2231392220723D2231222F3E0D0A20202020202020203C636972636C
+ 652063783D223138222063793D2231392220723D2231222F3E0D0A202020203C
+ 2F673E0D0A202020203C706174682066696C6C3D22233030393638382220643D
+ 224D32372C33314C32372C333163302C302D312E382C322D352C32732D352D32
+ 2D352D3253362C33332C362C34346833324333382C33332C32372C33312C3237
+ 2C33317A222F3E0D0A202020203C672066696C6C3D2223464639383030223E0D
+ 0A20202020202020203C7265637420783D2233362E312220793D22362E312220
+ 7472616E73666F726D3D226D6174726978282E373037202E373037202D2E3730
+ 37202E3730372031392E373837202D32352E373729222077696474683D22392E
+ 3922206865696768743D22392E39222F3E0D0A20202020202020203C72656374
+ 20783D2233362220793D2236222077696474683D22313022206865696768743D
+ 223130222F3E0D0A202020203C2F673E0D0A202020203C636972636C65206669
+ 6C6C3D2223464645423342222063783D223431222063793D2231312220723D22
+ 33222F3E0D0A3C2F7376673E0D0A08000000700072006500760069006F007500
+ 7300C80000003C7376672076657273696F6E3D22312220786D6C6E733D226874
+ 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
+ 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
+ 226E657720302030203438203438223E0D0A202020203C706F6C79676F6E2066
+ 696C6C3D22233231393646332220706F696E74733D2233302E392C3433203334
+ 2C33392E392031382E312C32342033342C382E312033302E392C352031322C32
+ 34222F3E0D0A3C2F7376673E0D0A050000007000720069006E0074006A030000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C7265637420783D22392220793D2231
+ 31222066696C6C3D2223343234323432222077696474683D2233302220686569
+ 6768743D2233222F3E0D0A202020203C706174682066696C6C3D222336313631
+ 36312220643D224D342C3235683430762D3763302D322E322D312E382D342D34
+ 2D344838632D322E322C302D342C312E382D342C345632357A222F3E0D0A2020
+ 20203C706174682066696C6C3D22233432343234322220643D224D382C333668
+ 333263322E322C302C342D312E382C342D34762D384834763843342C33342E32
+ 2C352E382C33362C382C33367A222F3E0D0A202020203C636972636C65206669
+ 6C6C3D2223303045363736222063783D223430222063793D2231382220723D22
+ 31222F3E0D0A202020203C7265637420783D2231312220793D2234222066696C
+ 6C3D2223393043414639222077696474683D22323622206865696768743D2231
+ 30222F3E0D0A202020203C706174682066696C6C3D2223323432343234222064
+ 3D224D33372E352C3331682D323743392E372C33312C392C33302E332C392C32
+ 392E35763063302D302E382C302E372D312E352C312E352D312E356832376330
+ 2E382C302C312E352C302E372C312E352C312E357630204333392C33302E332C
+ 33382E332C33312C33372E352C33317A222F3E0D0A202020203C726563742078
+ 3D2231312220793D223331222066696C6C3D2223393043414639222077696474
+ 683D22323622206865696768743D223131222F3E0D0A202020203C7265637420
+ 783D2231312220793D223239222066696C6C3D22233432413546352220776964
+ 74683D22323622206865696768743D2232222F3E0D0A202020203C672066696C
+ 6C3D2223313937364432223E0D0A20202020202020203C7265637420783D2231
+ 362220793D223333222077696474683D22313722206865696768743D2232222F
+ 3E0D0A20202020202020203C7265637420783D2231362220793D223337222077
+ 696474683D22313322206865696768743D2232222F3E0D0A202020203C2F673E
+ 0D0A3C2F7376673E0D0A070000007000720069007600610063007900FE010000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C706174682066696C6C3D2223343234
+ 3234322220643D224D32342C34632D352E352C302D31302C342E352D31302C31
+ 3076346834762D3463302D332E332C322E372D362C362D3673362C322E372C36
+ 2C3676346834762D344333342C382E352C32392E352C342C32342C347A222F3E
+ 0D0A202020203C706174682066696C6C3D22234642384330302220643D224D33
+ 362C3434483132632D322E322C302D342D312E382D342D3456323263302D322E
+ 322C312E382D342C342D3468323463322E322C302C342C312E382C342C347631
+ 384334302C34322E322C33382E322C34342C33362C34347A222F3E0D0A202020
+ 203C636972636C652066696C6C3D2223454645424539222063783D2232342220
+ 63793D2233312220723D2236222F3E0D0A202020203C636972636C652066696C
+ 6C3D2223314538384535222063783D223234222063793D2233312220723D2233
+ 222F3E0D0A202020203C636972636C652066696C6C3D2223666666222063783D
+ 223236222063793D2232392220723D2231222F3E0D0A3C2F7376673E0D0A0700
+ 0000700072006F006300650073007300A00300003C7376672076657273696F6E
+ 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
+ 30302F737667222076696577426F783D223020302034382034382220656E6162
+ 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
+ 202020203C672066696C6C3D2223394332374230223E0D0A2020202020202020
+ 3C706F6C79676F6E20706F696E74733D2233312C382034322E392C392E362033
+ 332E312C31392E34222F3E0D0A20202020202020203C706F6C79676F6E20706F
+ 696E74733D2231372C343020352E312C33382E342031342E392C32382E36222F
+ 3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22382C3137
+ 20392E362C352E312031392E342C31342E39222F3E0D0A20202020202020203C
+ 7061746820643D224D392E332C32312E324C352E312C323243352C32322E372C
+ 352C32332E332C352C323463302C342E362C312E362C392C342E362C31322E34
+ 6C332D322E364331302E332C33312E312C392C32372E362C392C32342043392C
+ 32332E312C392E312C32322E312C392E332C32312E327A222F3E0D0A20202020
+ 202020203C7061746820643D224D32342C35632D352E342C302D31302E322C32
+ 2E332D31332E372C352E396C322E382C322E384331352E392C31302E382C3139
+ 2E372C392C32342C3963302E392C302C312E392C302E312C322E382C302E336C
+ 302E372D332E39204332362E342C352E312C32352E322C352C32342C357A222F
+ 3E0D0A20202020202020203C7061746820643D224D33382E372C32362E386C34
+ 2E322D302E3863302E312D302E372C302E312D312E332C302E312D3263302D34
+ 2E342D312E352D382E372D342E332D31322E316C2D332E312C322E3563322E32
+ 2C322E372C332E342C362E312C332E342C392E35204333392C32342E392C3338
+ 2E392C32352E392C33382E372C32362E387A222F3E0D0A20202020202020203C
+ 7061746820643D224D33342E392C33342E334333322E312C33372E322C32382E
+ 332C33392C32342C3339632D302E392C302D312E392D302E312D322E382D302E
+ 336C2D302E372C332E3963312E322C302E322C322E342C302E332C332E352C30
+ 2E332063352E342C302C31302E322D322E332C31332E372D352E394C33342E39
+ 2C33342E337A222F3E0D0A20202020202020203C706F6C79676F6E20706F696E
+ 74733D2234302C33312033382E342C34322E392032382E362C33332E31222F3E
+ 0D0A202020203C2F673E0D0A3C2F7376673E0D0A06000000700075007A007A00
+ 6C006500F30100003C7376672076657273696F6E3D22312220786D6C6E733D22
+ 687474703A2F2F7777772E77332E6F72672F323030302F737667222076696577
+ 426F783D223020302034382034382220656E61626C652D6261636B67726F756E
+ 643D226E657720302030203438203438223E0D0A202020203C70617468206669
+ 6C6C3D22233842433334412220643D224D33392C313563302D322E322D312E38
+ 2D342D342D34682D36632D302E372C302D312E312D302E382D302E372D312E34
+ 63302E362D312C302E392D322E322C302E362D332E35632D302E342D322D312E
+ 392D332E362D332E382D34204332312E382C312E342C31392C332E392C31392C
+ 3763302C312C302E332C312E382C302E372C322E3663302E342C302E362C302C
+ 312E342D302E382C312E34682D36632D322E322C302D342C312E382D342C3476
+ 3763302C302E372C302E382C312E312C312E342C302E372063312D302E362C32
+ 2E322D302E392C332E352D302E3663322C302E342C332E362C312E392C342C33
+ 2E3863302E372C332E322D312E382C362E312D342E392C362E31632D312C302D
+ 312E382D302E332D322E362D302E3743392E382C33302E392C392C33312E332C
+ 392C3332763663302C322E322C312E382C342C342C342068323263322E322C30
+ 2C342D312E382C342D345631357A222F3E0D0A3C2F7376673E0D0A0900000071
+ 00750065007300740069006F006E007300560200003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706F6C79676F6E2066696C6C3D22233432413546352220706F69
+ 6E74733D2233362C343420382C343420382C382032382C382033362C3136222F
+ 3E0D0A202020203C706F6C79676F6E2066696C6C3D2223393043414639222070
+ 6F696E74733D2234302C34302031322C34302031322C342033322C342034302C
+ 3132222F3E0D0A202020203C706F6C79676F6E2066696C6C3D22234531463546
+ 452220706F696E74733D2233382E352C31332033312C31332033312C352E3522
+ 2F3E0D0A202020203C706174682066696C6C3D22233139373644322220643D22
+ 4D32342E352C32382E3363302D342E372C332E362D342E342C332E362D372E32
+ 63302D302E372D302E322D322E312D322D322E31632D322C302D322E312C312E
+ 362D322E312C32682D322E3763302D302E372C302E332D342E322C342E382D34
+ 2E322063342E362C302C342E372C332E362C342E372C342E3363302C332E352D
+ 332E382C342D332E382C372E334832342E357A204D32342E332C33312E386330
+ 2D302E322C302D312E352C312E352D312E3563312E342C302C312E352C312E33
+ 2C312E352C312E3563302C302E342D302E322C312E342D312E352C312E342043
+ 32342E352C33332E322C32342E332C33322E322C32342E332C33312E387A222F
+ 3E0D0A3C2F7376673E0D0A0A000000720061006400610072005F0070006C006F
+ 007400600200003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C706174682066696C
+ 6C3D22234346443844432220643D224D33382E342C31334C32342E312C362E34
+ 4C342E362C31322E316C382E382C31332E326C2D322E322C31352E316832322E
+ 376C362E362D31332E334C33382E342C31337A204D33322E312C33372E354831
+ 342E376C312E382D31322E394C392E342C31332E39206C31342E352D342E334C
+ 33352E362C31356C312E382C31312E374C33322E312C33372E357A222F3E0D0A
+ 202020203C672066696C6C3D2223303042434434223E0D0A2020202020202020
+ 3C636972636C652063783D223234222063793D22382220723D2234222F3E0D0A
+ 20202020202020203C636972636C652063783D223337222063793D2231342220
+ 723D2234222F3E0D0A20202020202020203C636972636C652063783D22333922
+ 2063793D2232372220723D2234222F3E0D0A20202020202020203C636972636C
+ 652063783D2237222063793D2231332220723D2234222F3E0D0A202020202020
+ 20203C636972636C652063783D223133222063793D2233392220723D2234222F
+ 3E0D0A20202020202020203C636972636C652063783D223135222063793D2232
+ 352220723D2234222F3E0D0A20202020202020203C636972636C652063783D22
+ 3333222063793D2233392220723D2234222F3E0D0A202020203C2F673E0D0A3C
+ 2F7376673E0D0A0600000072006100740069006E0067002B0100003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C636972636C652066696C6C3D2223463434333336
+ 222063783D223234222063793D2232342220723D223231222F3E0D0A20202020
+ 3C706F6C79676F6E2066696C6C3D22234646434132382220706F696E74733D22
+ 32342C31312032372E392C31382E392033362E362C32302E322033302E332C32
+ 362E332033312E382C33352032342C33302E392031362E322C33352031372E37
+ 2C32362E332031312E342C32302E322032302E312C31382E39222F3E0D0A3C2F
+ 7376673E0D0A0700000072006100740069006E0067007300B90100003C737667
+ 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
+ 332E6F72672F323030302F737667222076696577426F783D2230203020343820
+ 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
+ 38203438223E0D0A202020203C706F6C79676F6E2066696C6C3D222334324135
+ 46352220706F696E74733D2233362C343420382C343420382C382032382C3820
+ 33362C3136222F3E0D0A202020203C706F6C79676F6E2066696C6C3D22233930
+ 434146392220706F696E74733D2234302C34302031322C34302031322C342033
+ 322C342034302C3132222F3E0D0A202020203C706F6C79676F6E2066696C6C3D
+ 22234531463546452220706F696E74733D2233382E352C31332033312C313320
+ 33312C352E35222F3E0D0A202020203C706F6C79676F6E2066696C6C3D222331
+ 39373644322220706F696E74733D2233342C32302032372C32302032392E342C
+ 32322E342032372C32342E392032332C32302E392031362E392C32362E392031
+ 392E312C32392E312032332C32352E312032372C32392E312033312E362C3234
+ 2E362033342C3237222F3E0D0A3C2F7376673E0D0A0700000072006500610064
+ 0069006E006700310200003C7376672076657273696F6E3D22312220786D6C6E
+ 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E657720302030203438203438223E0D0A202020203C70617468
+ 2066696C6C3D22233543364243302220643D224D34302C3430632D362E392C30
+ 2D31362C342D31362C3456323263302C302C392D342C31382D344C34302C3430
+ 7A222F3E0D0A202020203C706174682066696C6C3D2223373938364342222064
+ 3D224D382C343063362E392C302C31362C342C31362C3456323263302C302D39
+ 2D342D31382D344C382C34307A222F3E0D0A202020203C672066696C6C3D2223
+ 464642373444223E0D0A20202020202020203C636972636C652063783D223234
+ 222063793D2231322220723D2238222F3E0D0A20202020202020203C70617468
+ 20643D224D34312C3332683163302E362C302C312D302E342C312D31762D3463
+ 302D302E362D302E342D312D312D31682D31632D312E372C302D332C312E332D
+ 332C3376304333382C33302E372C33392E332C33322C34312C33327A222F3E0D
+ 0A20202020202020203C7061746820643D224D372C32364836632D302E362C30
+ 2D312C302E342D312C31763463302C302E362C302E342C312C312C3168316331
+ 2E372C302C332D312E332C332D3376304331302C32372E332C382E372C32362C
+ 372C32367A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0D000000
+ 720065006100640069006E0067005F00650062006F006F006B00220300003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C706174682066696C6C3D22233231393646
+ 332220643D224D33332E352C3237632D322E322D332D352E322D352D392E352D
+ 35732D372E332C322D392E352C354833332E357A222F3E0D0A202020203C7061
+ 74682066696C6C3D22233534364537412220643D224D33342E312C3433483133
+ 2E39632D312E312C302D312E392D302E382D322D312E396C2D302E382D313343
+ 31312E312C32372C31322C32362C31332E312C32366832312E3863312E322C30
+ 2C322E312C312C322C322E316C2D302E382C3133204333362C34322E322C3335
+ 2E322C34332C33342E312C34337A222F3E0D0A202020203C636972636C652066
+ 696C6C3D2223423042454335222063783D223334222063793D2232392220723D
+ 2231222F3E0D0A202020203C672066696C6C3D2223464642373444223E0D0A20
+ 202020202020203C636972636C652063783D223234222063793D223132222072
+ 3D2238222F3E0D0A20202020202020203C7061746820643D224D31362E312C34
+ 322E344C31352C34332E35632D302E362C302E362D312E362C302E362D322E32
+ 2C306C2D332E332D332E33632D302E362D302E362D302E362D312E362C302D32
+ 2E326C312E312D312E3163312E332D312E332C332E312D312E332C342E342C30
+ 206C312E312C312E314331372E332C33392E332C31372E332C34312E322C3136
+ 2E312C34322E347A222F3E0D0A20202020202020203C7061746820643D224D33
+ 312E392C33386C312E312D312E3163312E332D312E332C332E312D312E332C34
+ 2E342C306C312E312C312E3163302E362C302E362C302E362C312E362C302C32
+ 2E326C2D332E332C332E33632D302E362C302E362D312E362C302E362D322E32
+ 2C30206C2D312E312D312E314333302E372C34312E322C33302E372C33392E33
+ 2C33312E392C33387A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A
+ 06000000720065006400640069007400200B00003C3F786D6C2076657273696F
+ 6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A3C212D2D
+ 2047656E657261746F723A2041646F626520496C6C7573747261746F72203135
+ 2E302E302C20535647204578706F727420506C75672D496E202E205356472056
+ 657273696F6E3A20362E3030204275696C6420302920202D2D3E0D0A3C21444F
+ 435459504520737667205055424C494320222D2F2F5733432F2F445444205356
+ 4720312E312F2F454E222022687474703A2F2F7777772E77332E6F72672F4772
+ 6170686963732F5356472F312E312F4454442F73766731312E647464223E0D0A
+ 3C7376672076657273696F6E3D22312E31222020786D6C6E733D22687474703A
+ 2F2F7777772E77332E6F72672F323030302F7376672220786D6C6E733A786C69
+ 6E6B3D22687474703A2F2F7777772E77332E6F72672F313939392F786C696E6B
+ 2220783D223070782220793D22307078220D0A092077696474683D2234387078
+ 22206865696768743D2234387078222076696577426F783D2230203020343820
+ 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
+ 382034382220786D6C3A73706163653D227072657365727665223E0D0A3C673E
+ 0D0A093C706174682066696C6C3D22234646464646462220643D224D31322E31
+ 39332C31392E353535632D312E39342D312E3734312D342E37392D312E373237
+ 2D362E3336352C302E303239632D312E3537362C312E3735362D312E3330312C
+ 352E3032332C302E3932362C362E3633324C31322E3139332C31392E3535357A
+ 220D0A09092F3E0D0A093C706174682066696C6C3D2223464646464646222064
+ 3D224D33352E3830372C31392E35353563312E3933392D312E3734312C342E37
+ 38392D312E3732372C362E3336352C302E30323963312E3537352C312E373536
+ 2C312E3330322C352E3032332D302E3932372C362E3633324C33352E3830372C
+ 31392E3535357A220D0A09092F3E0D0A093C673E0D0A09093C636972636C6520
+ 66696C6C3D2223464646464646222063783D2233382E3332222063793D223130
+ 2E3437352220723D22332E35222F3E0D0A093C2F673E0D0A093C673E0D0A0909
+ 3C656C6C697073652066696C6C3D2223464646464646222063783D2232342E30
+ 3835222063793D2232382E363131222072783D2231382E303835222072793D22
+ 31322E393436222F3E0D0A093C2F673E0D0A3C2F673E0D0A3C673E0D0A093C63
+ 6972636C652066696C6C3D2223443834333135222063783D2233302E33363522
+ 2063793D2232362E33392220723D22322E383834222F3E0D0A093C636972636C
+ 652066696C6C3D2223443834333135222063783D2231372E363335222063793D
+ 2232362E33392220723D22322E383834222F3E0D0A3C2F673E0D0A3C673E0D0A
+ 093C706174682066696C6C3D22233337343734462220643D224D32342E303032
+ 2C33342E393032632D332E3235322C302D362E31342D302E3734352D382E3030
+ 322D312E39303263312E3032342C322E3034342C342E3139362C342C382E3030
+ 322C3463332E3830322C302C362E3937362D312E3935362C372E3939382D340D
+ 0A09094333302E3134332C33342E3135372C32372E3235342C33342E3930322C
+ 32342E3030322C33342E3930327A222F3E0D0A093C706174682066696C6C3D22
+ 233337343734462220643D224D34312E38332C32372E3032366C2D312E31372D
+ 312E36323163302E3833312D302E362C312E3337332D312E3535362C312E3438
+ 382D322E36323363302E3130352D302E39382D302E3135372D312E3930332D30
+ 2E3732312D322E3533310D0A0909632D302E3537312D302E3633372D312E3339
+ 312D302E39392D322E3330372D302E393934632D302E3932372C302E3031332D
+ 312E3839342C302E3336352D322E3634362C312E3034316C2D312E3333362D31
+ 2E34383863312E3132332D312E3030382C322E3534352D312E3532332C332E39
+ 39312D312E3535330D0A090963312E3438382C302E3030372C322E3833332C30
+ 2E3539362C332E3738362C312E36353863302E3934322C312E30352C312E3338
+ 372C322E3533372C312E3232312C342E3038314334332E3936312C32342E3632
+ 362C34332E3132312C32362E3039362C34312E38332C32372E3032367A222F3E
+ 0D0A093C706174682066696C6C3D22233337343734462220643D224D362E3136
+ 392C32372E303236632D312E32392D302E3933322D322E3133312D322E343031
+ 2D322E3330362D342E303331632D302E3136362D312E3534332C302E3237392D
+ 332E30332C312E3232312D342E3037390D0A090963302E3935332D312E303632
+ 2C322E3239372D312E3635312C332E3738352D312E36353863302E3030392C30
+ 2C302E3031382C302C302E3032372C3063312E3434312C302C322E3834392C30
+ 2E3535312C332E3936352C312E3535336C2D312E3333362C312E3438380D0A09
+ 09632D302E3735332D302E3637362D312E3638392D312E3030352D322E363436
+ 2D312E303431632D302E3931362C302E3030342D312E3733352C302E3335372D
+ 322E3330362C302E393934632D302E3536332C302E3632382D302E3832362C31
+ 2E35352D302E3732312C322E35330D0A090963302E3131352C312E3036372C30
+ 2E3635372C322E3032332C312E3438382C322E3632344C362E3136392C32372E
+ 3032367A222F3E0D0A093C706174682066696C6C3D2223333734373446222064
+ 3D224D32352C31362E3834682D3263302D322E3838352C302D31302E3534382C
+ 342E3937392D31302E35343863322E3135342C302C332E3139332C312E323131
+ 2C332E3935322C322E3039360D0A090963302E3632392C302E3733342C302E39
+ 36312C312E3038362C312E3631362C312E30383668312E33377632682D312E33
+ 37632D312E3630342C302D322E3435332D302E39392D332E3133352D312E3738
+ 35632D302E36372D302E3738312D312E3139382D312E3339382D322E3433342D
+ 312E3339380D0A09094332352E3937352C382E3239322C32352C31312E303838
+ 2C32352C31362E38347A222F3E0D0A093C706174682066696C6C3D2223333734
+ 3734462220643D224D32342E3038352C31362E393563392E3432312C302C3137
+ 2E3038352C352E3233312C31372E3038352C31312E36363163302C362E343331
+ 2D372E3636342C31312E3636322D31372E3038352C31312E36363253372C3335
+ 2E3034322C372C32382E3631310D0A090943372C32322E3138312C31342E3636
+ 342C31362E39352C32342E3038352C31362E3935204D32342E3038352C31342E
+ 39354331332E3534342C31342E39352C352C32312E3036362C352C32382E3631
+ 3163302C372E3534362C382E3534352C31332E3636322C31392E3038352C3133
+ 2E3636320D0A09096331302E35342C302C31392E3038352D362E3131362C3139
+ 2E3038352D31332E3636324334332E31372C32312E3036362C33342E3632352C
+ 31342E39352C32342E3038352C31342E39354C32342E3038352C31342E39357A
+ 222F3E0D0A093C706174682066696C6C3D22233337343734462220643D224D33
+ 382E33322C372E39373563312E3337392C302C322E352C312E3132322C322E35
+ 2C322E35732D312E3132312C322E352D322E352C322E35732D322E352D312E31
+ 32322D322E352D322E355333362E3934312C372E3937352C33382E33322C372E
+ 3937350D0A0909204D33382E33322C352E393735632D322E3438342C302D342E
+ 352C322E3031352D342E352C342E3573322E3031362C342E352C342E352C342E
+ 3563322E3438362C302C342E352D322E3031352C342E352D342E355334302E38
+ 30372C352E3937352C33382E33322C352E3937354C33382E33322C352E393735
+ 7A222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A040000007200650064006F00
+ 310100003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C672066696C6C3D22233030
+ 42434434223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D
+ 2234332C31382032392C362E332032392C32392E37222F3E0D0A202020202020
+ 20203C7061746820643D224D32302C31346831327638483230632D322E382C30
+ 2D352C322E322D352C3573322E322C352C352C3568337638682D33632D372E32
+ 2C302D31332D352E382D31332D31335331322E382C31342C32302C31347A222F
+ 3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0700000072006500660072
+ 006500730068000A0200003C7376672076657273696F6E3D22312220786D6C6E
+ 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E657720302030203438203438223E0D0A202020203C67206669
+ 6C6C3D2223313536354330223E0D0A20202020202020203C7061746820643D22
+ 4D31332C313363302D332E332C322E372D362C362D3668313063332E332C302C
+ 362C322E372C362C36683463302D352E352D342E352D31302D31302D31304831
+ 394331332E352C332C392C372E352C392C31337631312E3268345631337A222F
+ 3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22342E362C
+ 32322031312C33302E342031372E342C3232222F3E0D0A202020203C2F673E0D
+ 0A202020203C672066696C6C3D2223313536354330223E0D0A20202020202020
+ 203C7061746820643D224D33352C333563302C332E332D322E372C362D362C36
+ 483139632D332E332C302D362D322E372D362D36483963302C352E352C342E35
+ 2C31302C31302C313068313063352E352C302C31302D342E352C31302D313056
+ 3233682D345633357A222F3E0D0A20202020202020203C706F6C79676F6E2070
+ 6F696E74733D2233302E362C32362033372C31372E362034332E342C3236222F
+ 3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A1400000072006500670069
+ 007300740065007200650064005F00740072006100640065006D00610072006B
+ 00540200003C7376672076657273696F6E3D22312220786D6C6E733D22687474
+ 703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F78
+ 3D223020302034382034382220656E61626C652D6261636B67726F756E643D22
+ 6E657720302030203438203438223E0D0A202020203C636972636C652066696C
+ 6C3D2223394332374230222063783D223234222063793D2232342220723D2232
+ 31222F3E0D0A202020203C706174682066696C6C3D2223453142454537222064
+ 3D224D32352C32362E38682D342E357639682D345631322E3568382E3263312E
+ 332C302C322E352C302E322C332E362C302E3563312C302E332C312E392C302E
+ 382C322E362C312E3363302E372C302E362C312E332C312E332C312E362C322E
+ 322073302E362C312E392C302E362C3363302C312E362D302E342C322E392D31
+ 2E312C332E39632D302E382C312D312E382C312E392D332E312C322E346C352E
+ 322C392E3776302E32682D342E334C32352C32362E387A204D32302E352C3233
+ 2E3668342E3263302E372C302C312E342D302E312C312E392D302E332063302E
+ 352D302E322C312D302E352C312E342D302E3863302E342D302E332C302E362D
+ 302E372C302E382D312E3263302E322D302E352C302E332D312C302E332D312E
+ 3663302D302E362D302E312D312E312D302E332D312E36632D302E322D302E35
+ 2D302E342D302E392D302E382D312E3220632D302E342D302E332D302E382D30
+ 2E362D312E342D302E38632D302E352D302E322D312E322D302E332D322D302E
+ 33682D342E315632332E367A222F3E0D0A3C2F7376673E0D0A0C000000720065
+ 006D006F00760065005F0069006D00610067006500BF0200003C737667207665
+ 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
+ 72672F323030302F737667222076696577426F783D2230203020343820343822
+ 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
+ 38223E0D0A202020203C706174682066696C6C3D22233843424344362220643D
+ 224D34302C34314838632D322E322C302D342D312E382D342D3456313163302D
+ 322E322C312E382D342C342D3468333263322E322C302C342C312E382C342C34
+ 7632364334342C33392E322C34322E322C34312C34302C34317A222F3E0D0A20
+ 2020203C636972636C652066696C6C3D2223423344444635222063783D223335
+ 222063793D2231362220723D2233222F3E0D0A202020203C706F6C79676F6E20
+ 66696C6C3D22233941433945332220706F696E74733D2232302C313620392C33
+ 322033312C3332222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 4233444446352220706F696E74733D2233312C32322032332C33322033392C33
+ 32222F3E0D0A202020203C636972636C652066696C6C3D222346343433333622
+ 2063783D223338222063793D2233382220723D223130222F3E0D0A202020203C
+ 672066696C6C3D2223666666223E0D0A20202020202020203C7265637420783D
+ 2233362E352220793D22333222207472616E73666F726D3D226D617472697828
+ 2D2E373037202E373037202D2E373037202D2E3730372039312E373420333829
+ 222077696474683D223322206865696768743D223132222F3E0D0A2020202020
+ 2020203C7265637420783D2233362E352220793D22333222207472616E73666F
+ 726D3D226D6174726978282D2E373037202D2E373037202E373037202D2E3730
+ 372033382039312E373429222077696474683D223322206865696768743D2231
+ 32222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0500000072006500
+ 750073006500010300003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C706F6C7967
+ 6F6E2066696C6C3D22233435354136342220706F696E74733D2231322E312C34
+ 322031372E322C34322031362E352C31382E322031302E392C32302E32222F3E
+ 0D0A202020203C636972636C652066696C6C3D2223464642373444222063783D
+ 2233362E35222063793D2231302220723D2235222F3E0D0A202020203C706F6C
+ 79676F6E2066696C6C3D22233630374438422220706F696E74733D2231312C34
+ 3220362C343220372E382C31382E362031342E322C32302E39222F3E0D0A2020
+ 20203C706174682066696C6C3D22233630374438422220643D224D33312E372C
+ 31352E39632D302E362D322D312E332D342D322E352D352E38632D312E332D31
+ 2E362D332E322D332E312D362E312D32632D332E312C312E332D392E322C332E
+ 362D31312E322C342E3520632D322E332C312E312D342E312C322E372D342E31
+ 2C352E3963302C332E342C342E332C352E332C342E332C352E336C31342E372D
+ 362E316C312E372C342E356C352E332C302E314333332E382C32322E342C3332
+ 2E332C31372E392C33312E372C31352E397A222F3E0D0A202020203C70617468
+ 2066696C6C3D22234233394444422220643D224D33372E392C3432682D372E39
+ 632D312C302D312E382D302E372D322D312E376C2D322E362D31372E31683137
+ 6C2D322E362C31372E314333392E382C34312E332C33382E392C34322C33372E
+ 392C34327A222F3E0D0A202020203C706174682066696C6C3D22233745353743
+ 322220643D224D34322C3234483236632D302E362C302D312D302E342D312D31
+ 763063302D302E362C302E342D312C312D3168313663302E362C302C312C302E
+ 342C312C3176304334332C32332E362C34322E362C32342C34322C32347A222F
+ 3E0D0A3C2F7376673E0D0A0500000072006900670068007400FD0000003C7376
+ 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
+ 77332E6F72672F323030302F737667222076696577426F783D22302030203438
+ 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
+ 3438203438223E0D0A202020203C672066696C6C3D2223334635314235223E0D
+ 0A20202020202020203C706F6C79676F6E20706F696E74733D2234342C323420
+ 33302C33352E372033302C31322E33222F3E0D0A20202020202020203C726563
+ 7420783D22362220793D223230222077696474683D2232372220686569676874
+ 3D2238222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0B0000007200
+ 69006700680074005F0064006F0077006E0032000C0100003C73766720766572
+ 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
+ 672F323030302F737667222076696577426F783D223020302034382034382220
+ 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
+ 223E0D0A202020203C706F6C79676F6E2066696C6C3D22233346353142352220
+ 706F696E74733D2232392C34342031372E332C33302034302E372C3330222F3E
+ 0D0A202020203C706174682066696C6C3D22233346353142352220643D224D32
+ 312C364838763868313363322E322C302C342C312E382C342C34763137683856
+ 31384333332C31312E342C32372E362C362C32312C367A222F3E0D0A3C2F7376
+ 673E0D0A09000000720069006700680074005F007500700032000F0100003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22233346
+ 353142352220706F696E74733D2232392C342031372E332C31382034302E372C
+ 3138222F3E0D0A202020203C706174682066696C6C3D22233346353142352220
+ 643D224D32312C34324838762D3868313363322E322C302C342D312E382C342D
+ 3456313368387631374333332C33362E362C32372E362C34322C32312C34327A
+ 222F3E0D0A3C2F7376673E0D0A0D00000072006F0074006100740065005F0063
+ 0061006D00650072006100540200003C7376672076657273696F6E3D22312220
+ 786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376
+ 67222076696577426F783D223020302034382034382220656E61626C652D6261
+ 636B67726F756E643D226E657720302030203438203438223E0D0A202020203C
+ 672066696C6C3D2223354533354231223E0D0A20202020202020203C70617468
+ 20643D224D33332E392C31322E314831342E324C31372E362C3763302E342D30
+ 2E362C312D302E392C312E372D302E3968392E3663302E372C302C312E332C30
+ 2E332C312E372C302E394C33332E392C31322E317A222F3E0D0A202020202020
+ 20203C7061746820643D224D31342C3131483856392E3243382C382E352C382E
+ 352C382C392E322C3868332E364331332E352C382C31342C382E352C31342C39
+ 2E325631317A222F3E0D0A20202020202020203C7061746820643D224D34302C
+ 34324838632D322E322C302D342D312E382D342D3456313463302D322E322C31
+ 2E382D342C342D3468333263322E322C302C342C312E382C342C347632344334
+ 342C34302E322C34322E322C34322C34302C34327A222F3E0D0A202020203C2F
+ 673E0D0A202020203C706174682066696C6C3D22234538454146362220643D22
+ 4D33342C323563302D352E352D342E352D31302D31302D3130732D31302C342E
+ 352D31302C313073342E352C31302C31302C3130762D32632D342E342C302D38
+ 2D332E362D382D3873332E362D382C382D3873382C332E362C382C38682D332E
+ 35206C342E352C352E366C342E352D352E364833347A222F3E0D0A3C2F737667
+ 3E0D0A1300000072006F0074006100740065005F0074006F005F006C0061006E
+ 00640073006300610070006500180200003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706174682066696C6C3D22233337343734462220643D224D31302C343156
+ 3763302D322E322C312E382D342C342D3468323063322E322C302C342C312E38
+ 2C342C3476333463302C322E322D312E382C342D342C344831344331312E382C
+ 34352C31302C34332E322C31302C34317A222F3E0D0A202020203C7061746820
+ 66696C6C3D22234633453546352220643D224D33342C36483134632D302E362C
+ 302D312C302E342D312C3176333463302C302E362C302E342C312C312C316832
+ 3063302E362C302C312D302E342C312D3156374333352C362E342C33342E362C
+ 362C33342C367A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 3943323742302220706F696E74733D2232322C33342032372E392C3237203136
+ 2E312C3237222F3E0D0A202020203C706174682066696C6C3D22233943323742
+ 302220643D224D32362C3136632D332E332C302D362C322E372D362C36763668
+ 34762D3663302D312E312C302E392D322C322D3273322C302E392C322C327632
+ 6834762D324333322C31382E372C32392E332C31362C32362C31367A222F3E0D
+ 0A3C2F7376673E0D0A1200000072006F0074006100740065005F0074006F005F
+ 0070006F007200740072006100690074000E0200003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22233337343734462220643D224D3431
+ 2C33384837632D322E322C302D342D312E382D342D3456313463302D322E322C
+ 312E382D342C342D3468333463322E322C302C342C312E382C342C3476323043
+ 34352C33362E322C34332E322C33382C34312C33387A222F3E0D0A202020203C
+ 706174682066696C6C3D22234633453546352220643D224D362C313476323063
+ 302C302E362C302E342C312C312C3168333463302E362C302C312D302E342C31
+ 2D3156313463302D302E362D302E342D312D312D31483743362E342C31332C36
+ 2C31332E342C362C31347A222F3E0D0A202020203C706F6C79676F6E2066696C
+ 6C3D22233943323742302220706F696E74733D2232362C31352032302E312C32
+ 322033312E392C3232222F3E0D0A202020203C706174682066696C6C3D222339
+ 43323742302220643D224D32342C3231763663302C312E312D302E392C322D32
+ 2C32732D322D302E392D322D32762D32682D34763263302C332E332C322E372C
+ 362C362C3673362D322E372C362D36762D364832347A222F3E0D0A3C2F737667
+ 3E0D0A05000000720075006C0065007300530300003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22233432413546352220643D224D3339
+ 2C3435483963302C302D332D302E312D332D386833364334322C34342E392C33
+ 392C34352C33392C34357A222F3E0D0A202020203C7265637420783D22382220
+ 793D2233222066696C6C3D2223393043414639222077696474683D2233322220
+ 6865696768743D223334222F3E0D0A202020203C672066696C6C3D2223313937
+ 364432223E0D0A20202020202020203C7265637420783D2231382220793D2231
+ 35222077696474683D22313622206865696768743D2232222F3E0D0A20202020
+ 202020203C7265637420783D2231382220793D223139222077696474683D2231
+ 3622206865696768743D2232222F3E0D0A20202020202020203C726563742078
+ 3D2231382220793D223233222077696474683D22313622206865696768743D22
+ 32222F3E0D0A20202020202020203C7265637420783D2231382220793D223237
+ 222077696474683D22313622206865696768743D2232222F3E0D0A2020202020
+ 2020203C7265637420783D2231382220793D223331222077696474683D223136
+ 22206865696768743D2232222F3E0D0A202020203C2F673E0D0A202020203C67
+ 2066696C6C3D2223313937364432223E0D0A20202020202020203C7265637420
+ 783D2231342220793D223135222077696474683D223222206865696768743D22
+ 32222F3E0D0A20202020202020203C7265637420783D2231342220793D223139
+ 222077696474683D223222206865696768743D2232222F3E0D0A202020202020
+ 20203C7265637420783D2231342220793D223233222077696474683D22322220
+ 6865696768743D2232222F3E0D0A20202020202020203C7265637420783D2231
+ 342220793D223237222077696474683D223222206865696768743D2232222F3E
+ 0D0A20202020202020203C7265637420783D2231342220793D22333122207769
+ 6474683D223222206865696768743D2232222F3E0D0A202020203C2F673E0D0A
+ 3C2F7376673E0D0A040000007300610066006500340700003C73766720766572
+ 73696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72
+ 672F323030302F737667222076696577426F783D223020302034382034382220
+ 656E61626C652D6261636B67726F756E643D226E657720302030203438203438
+ 223E0D0A202020203C7265637420783D22382220793D223339222066696C6C3D
+ 2223343535413634222077696474683D223622206865696768743D2233222F3E
+ 0D0A202020203C7265637420783D2233342220793D223339222066696C6C3D22
+ 23343535413634222077696474683D223622206865696768743D2233222F3E0D
+ 0A202020203C706174682066696C6C3D22233738393039432220643D224D3430
+ 2C34314838632D322E322C302D342D312E382D342D3456313163302D322E322C
+ 312E382D342C342D3468333263322E322C302C342C312E382C342C3476323643
+ 34342C33392E322C34322E322C34312C34302C34317A222F3E0D0A202020203C
+ 706174682066696C6C3D22233930413441452220643D224D34302C3338483863
+ 2D302E362C302D312D302E342D312D3156313163302D302E362C302E342D312C
+ 312D3168333263302E362C302C312C302E342C312C317632364334312C33372E
+ 362C34302E362C33382C34302C33387A222F3E0D0A202020203C706174682066
+ 696C6C3D22233337343734462220643D224D32392C3134632D352E352C302D31
+ 302C342E352D31302C313063302C352E352C342E352C31302C31302C31307331
+ 302D342E352C31302D31304333392C31382E352C33342E352C31342C32392C31
+ 347A204D32392C333120632D332E392C302D372D332E312D372D3763302D332E
+ 392C332E312D372C372D3773372C332E312C372C374333362C32372E392C3332
+ 2E392C33312C32392C33317A222F3E0D0A202020203C672066696C6C3D222342
+ 3042454335223E0D0A20202020202020203C7061746820643D224D33352E332C
+ 31392E316C302E342D302E3463302E342D302E342C302E342D312C302D312E34
+ 732D312D302E342D312E342C306C2D302E342C302E344333342E342C31382E31
+ 2C33342E392C31382E362C33352E332C31392E317A222F3E0D0A202020202020
+ 20203C7061746820643D224D32322E372C31392E3163302E342D302E352C302E
+ 392D312C312E342D312E346C2D302E342D302E34632D302E342D302E342D312D
+ 302E342D312E342C30732D302E342C312C302C312E344C32322E372C31392E31
+ 7A222F3E0D0A20202020202020203C7061746820643D224D32312C323463302D
+ 302E332C302D302E372C302E312D31682D302E36632D302E362C302D312C302E
+ 342D312C3173302E342C312C312C3168302E364332312C32342E372C32312C32
+ 342E332C32312C32347A222F3E0D0A20202020202020203C7061746820643D22
+ 4D32392C313663302E332C302C302E372C302C312C302E31762D302E3663302D
+ 302E362D302E342D312D312D31732D312C302E342D312C3176302E364332382E
+ 332C31362C32382E372C31362C32392C31367A222F3E0D0A2020202020202020
+ 3C7061746820643D224D33352E332C32382E39632D302E342C302E352D302E39
+ 2C312D312E342C312E346C302E342C302E3463302E322C302E322C302E352C30
+ 2E332C302E372C302E3373302E352D302E312C302E372D302E3363302E342D30
+ 2E342C302E342D312C302D312E34204C33352E332C32382E397A222F3E0D0A20
+ 202020202020203C7061746820643D224D32322E372C32382E396C2D302E342C
+ 302E34632D302E342C302E342D302E342C312C302C312E3463302E322C302E32
+ 2C302E352C302E332C302E372C302E3373302E352D302E312C302E372D302E33
+ 6C302E342D302E34204332332E362C32392E392C32332E312C32392E342C3232
+ 2E372C32382E397A222F3E0D0A20202020202020203C7061746820643D224D33
+ 372E352C3233682D302E3663302C302E332C302E312C302E372C302E312C3173
+ 302C302E372D302E312C3168302E3663302E362C302C312D302E342C312D3153
+ 33382E312C32332C33372E352C32337A222F3E0D0A20202020202020203C7061
+ 746820643D224D32392C3332632D302E332C302D302E372C302D312D302E3176
+ 302E3663302C302E362C302E342C312C312C3173312D302E342C312D31762D30
+ 2E364332392E372C33322C32392E332C33322C32392C33327A222F3E0D0A2020
+ 20203C2F673E0D0A202020203C706174682066696C6C3D222334353541363422
+ 20643D224D31322C3230632D312E312C302D322C302E392D322C32763863302C
+ 312E312C302E392C322C322C3273322D302E392C322D32762D384331342C3230
+ 2E392C31332E312C32302C31322C32307A222F3E0D0A202020203C7061746820
+ 66696C6C3D22234346443844432220643D224D31322C3138632D312E312C302D
+ 322C302E392D322C32763863302C312E312C302E392C322C322C3273322D302E
+ 392C322D32762D384331342C31382E392C31332E312C31382C31322C31387A22
+ 2F3E0D0A3C2F7376673E0D0A11000000730061006C00650073005F0070006500
+ 720066006F0072006D0061006E0063006500041C00003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C672066696C6C3D2223464641303030223E0D0A202020202020
+ 20203C7061746820643D224D33382C3133632D332E332C302D362D302E392D36
+ 2D3263302C302E342C302C312E362C302C3263302C312E312C322E372C322C36
+ 2C3273362D302E392C362D3263302D302E342C302D312E362C302D324334342C
+ 31322E312C34312E332C31332C33382C3133207A222F3E0D0A20202020202020
+ 203C7061746820643D224D33382C3130632D332E332C302D362D302E392D362D
+ 3263302C302E342C302C312E362C302C3263302C312E312C322E372C322C362C
+ 3273362D302E392C362D3263302D302E342C302D312E362C302D324334342C39
+ 2E312C34312E332C31302C33382C31307A222F3E0D0A20202020202020203C70
+ 61746820643D224D33382C3136632D332E332C302D362D302E392D362D326330
+ 2C302E342C302C312E362C302C3263302C312E312C322E372C322C362C327336
+ 2D302E392C362D3263302D302E342C302D312E362C302D324334342C31352E31
+ 2C34312E332C31362C33382C3136207A222F3E0D0A20202020202020203C7061
+ 746820643D224D33382C3139632D332E332C302D362D302E392D362D3263302C
+ 302E342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D
+ 302E392C362D3263302D302E342C302D312E362C302D324334342C31382E312C
+ 34312E332C31392C33382C3139207A222F3E0D0A20202020202020203C706174
+ 6820643D224D33382C3232632D332E332C302D362D302E392D362D3263302C30
+ 2E342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D30
+ 2E392C362D3263302D302E342C302D312E362C302D324334342C32312E312C34
+ 312E332C32322C33382C3232207A222F3E0D0A20202020202020203C70617468
+ 20643D224D33382C3235632D332E332C302D362D302E392D362D3263302C302E
+ 342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E
+ 392C362D3263302D302E342C302D312E362C302D324334342C32342E312C3431
+ 2E332C32352C33382C3235207A222F3E0D0A20202020202020203C7061746820
+ 643D224D33382C3238632D332E332C302D362D302E392D362D3263302C302E34
+ 2C302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E39
+ 2C362D3263302D302E342C302D312E362C302D324334342C32372E312C34312E
+ 332C32382C33382C3238207A222F3E0D0A20202020202020203C706174682064
+ 3D224D33382C3331632D332E332C302D362D302E392D362D3263302C302E342C
+ 302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C
+ 362D3263302D302E342C302D312E362C302D324334342C33302E312C34312E33
+ 2C33312C33382C3331207A222F3E0D0A20202020202020203C7061746820643D
+ 224D33382C3334632D332E332C302D362D302E392D362D3263302C302E342C30
+ 2C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C36
+ 2D3263302D302E342C302D312E362C302D324334342C33332E312C34312E332C
+ 33342C33382C3334207A222F3E0D0A20202020202020203C7061746820643D22
+ 4D33382C3337632D332E332C302D362D302E392D362D3263302C302E342C302C
+ 312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D
+ 3263302D302E342C302D312E362C302D324334342C33362E312C34312E332C33
+ 372C33382C3337207A222F3E0D0A20202020202020203C7061746820643D224D
+ 33382C3430632D332E332C302D362D302E392D362D3263302C302E342C302C31
+ 2E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D32
+ 63302D302E342C302D312E362C302D324334342C33392E312C34312E332C3430
+ 2C33382C3430207A222F3E0D0A202020203C2F673E0D0A202020203C67206669
+ 6C6C3D2223464643313037223E0D0A20202020202020203C656C6C6970736520
+ 63783D223338222063793D2238222072783D2236222072793D2232222F3E0D0A
+ 20202020202020203C7061746820643D224D33382C3132632D322E382C302D35
+ 2E312D302E362D352E382D312E354333322E312C31302E372C33322C31302E38
+ 2C33322C313163302C312E312C322E372C322C362C3273362D302E392C362D32
+ 63302D302E322D302E312D302E332D302E322D302E35204334332E312C31312E
+ 342C34302E382C31322C33382C31327A222F3E0D0A20202020202020203C7061
+ 746820643D224D33382C3135632D322E382C302D352E312D302E362D352E382D
+ 312E354333322E312C31332E372C33322C31332E382C33322C313463302C312E
+ 312C322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D
+ 302E332D302E322D302E35204334332E312C31342E342C34302E382C31352C33
+ 382C31357A222F3E0D0A20202020202020203C7061746820643D224D33382C31
+ 38632D322E382C302D352E312D302E362D352E382D312E354333322E312C3136
+ 2E372C33322C31362E382C33322C313763302C312E312C322E372C322C362C32
+ 73362D302E392C362D3263302D302E322D302E312D302E332D302E322D302E35
+ 204334332E312C31372E342C34302E382C31382C33382C31387A222F3E0D0A20
+ 202020202020203C7061746820643D224D33382C3231632D322E382C302D352E
+ 312D302E362D352E382D312E354333322E312C31392E372C33322C31392E382C
+ 33322C323063302C312E312C322E372C322C362C3273362D302E392C362D3263
+ 302D302E322D302E312D302E332D302E322D302E35204334332E312C32302E34
+ 2C34302E382C32312C33382C32317A222F3E0D0A20202020202020203C706174
+ 6820643D224D33382C3234632D322E382C302D352E312D302E362D352E382D31
+ 2E354333322E312C32322E372C33322C32322E382C33322C323363302C312E31
+ 2C322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D30
+ 2E332D302E322D302E35204334332E312C32332E342C34302E382C32342C3338
+ 2C32347A222F3E0D0A20202020202020203C7061746820643D224D33382C3237
+ 632D322E382C302D352E312D302E362D352E382D312E354333322E312C32352E
+ 372C33322C32352E382C33322C323663302C312E312C322E372C322C362C3273
+ 362D302E392C362D3263302D302E322D302E312D302E332D302E322D302E3520
+ 4334332E312C32362E342C34302E382C32372C33382C32377A222F3E0D0A2020
+ 2020202020203C7061746820643D224D33382C3330632D322E382C302D352E31
+ 2D302E362D352E382D312E354333322E312C32382E372C33322C32382E382C33
+ 322C323963302C312E312C322E372C322C362C3273362D302E392C362D326330
+ 2D302E322D302E312D302E332D302E322D302E35204334332E312C32392E342C
+ 34302E382C33302C33382C33307A222F3E0D0A20202020202020203C70617468
+ 20643D224D33382C3333632D322E382C302D352E312D302E362D352E382D312E
+ 354333322E312C33312E372C33322C33312E382C33322C333263302C312E312C
+ 322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D302E
+ 332D302E322D302E35204334332E312C33322E342C34302E382C33332C33382C
+ 33337A222F3E0D0A20202020202020203C7061746820643D224D33382C333663
+ 2D322E382C302D352E312D302E362D352E382D312E354333322E312C33342E37
+ 2C33322C33342E382C33322C333563302C312E312C322E372C322C362C327336
+ 2D302E392C362D3263302D302E322D302E312D302E332D302E322D302E352043
+ 34332E312C33352E342C34302E382C33362C33382C33367A222F3E0D0A202020
+ 20202020203C7061746820643D224D33382C3339632D322E382C302D352E312D
+ 302E362D352E382D312E354333322E312C33372E372C33322C33372E382C3332
+ 2C333863302C312E312C322E372C322C362C3273362D302E392C362D3263302D
+ 302E322D302E312D302E332D302E322D302E35204334332E312C33382E342C34
+ 302E382C33392C33382C33397A222F3E0D0A202020203C2F673E0D0A20202020
+ 3C672066696C6C3D2223464641303030223E0D0A20202020202020203C706174
+ 6820643D224D31302C3139632D332E332C302D362D302E392D362D3263302C30
+ 2E342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D30
+ 2E392C362D3263302D302E342C302D312E362C302D324331362C31382E312C31
+ 332E332C31392C31302C3139207A222F3E0D0A20202020202020203C70617468
+ 20643D224D31302C3136632D332E332C302D362D302E392D362D3263302C302E
+ 342C302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E
+ 392C362D3263302D302E342C302D312E362C302D324331362C31352E312C3133
+ 2E332C31362C31302C3136207A222F3E0D0A20202020202020203C7061746820
+ 643D224D31302C3232632D332E332C302D362D302E392D362D3263302C302E34
+ 2C302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E39
+ 2C362D3263302D302E342C302D312E362C302D324331362C32312E312C31332E
+ 332C32322C31302C3232207A222F3E0D0A20202020202020203C706174682064
+ 3D224D31302C3235632D332E332C302D362D302E392D362D3263302C302E342C
+ 302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C
+ 362D3263302D302E342C302D312E362C302D324331362C32342E312C31332E33
+ 2C32352C31302C3235207A222F3E0D0A20202020202020203C7061746820643D
+ 224D31302C3238632D332E332C302D362D302E392D362D3263302C302E342C30
+ 2C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C36
+ 2D3263302D302E342C302D312E362C302D324331362C32372E312C31332E332C
+ 32382C31302C3238207A222F3E0D0A20202020202020203C7061746820643D22
+ 4D31302C3331632D332E332C302D362D302E392D362D3263302C302E342C302C
+ 312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D
+ 3263302D302E342C302D312E362C302D324331362C33302E312C31332E332C33
+ 312C31302C3331207A222F3E0D0A20202020202020203C7061746820643D224D
+ 31302C3334632D332E332C302D362D302E392D362D3263302C302E342C302C31
+ 2E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D32
+ 63302D302E342C302D312E362C302D324331362C33332E312C31332E332C3334
+ 2C31302C3334207A222F3E0D0A20202020202020203C7061746820643D224D31
+ 302C3337632D332E332C302D362D302E392D362D3263302C302E342C302C312E
+ 362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D3263
+ 302D302E342C302D312E362C302D324331362C33362E312C31332E332C33372C
+ 31302C3337207A222F3E0D0A20202020202020203C7061746820643D224D3130
+ 2C3430632D332E332C302D362D302E392D362D3263302C302E342C302C312E36
+ 2C302C3263302C312E312C322E372C322C362C3273362D302E392C362D326330
+ 2D302E342C302D312E362C302D324331362C33392E312C31332E332C34302C31
+ 302C3430207A222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C
+ 3D2223464643313037223E0D0A20202020202020203C656C6C69707365206378
+ 3D223130222063793D223134222072783D2236222072793D2232222F3E0D0A20
+ 202020202020203C7061746820643D224D31302C3138632D322E382C302D352E
+ 312D302E362D352E382D312E3543342E312C31362E372C342C31362E382C342C
+ 313763302C312E312C322E372C322C362C3273362D302E392C362D3263302D30
+ 2E322D302E312D302E332D302E322D302E35204331352E312C31372E342C3132
+ 2E382C31382C31302C31387A222F3E0D0A20202020202020203C706174682064
+ 3D224D31302C3231632D322E382C302D352E312D302E362D352E382D312E3543
+ 342E312C31392E372C342C31392E382C342C323063302C312E312C322E372C32
+ 2C362C3273362D302E392C362D3263302D302E322D302E312D302E332D302E32
+ 2D302E35204331352E312C32302E342C31322E382C32312C31302C32317A222F
+ 3E0D0A20202020202020203C7061746820643D224D31302C3234632D322E382C
+ 302D352E312D302E362D352E382D312E3543342E312C32322E372C342C32322E
+ 382C342C323363302C312E312C322E372C322C362C3273362D302E392C362D32
+ 63302D302E322D302E312D302E332D302E322D302E35204331352E312C32332E
+ 342C31322E382C32342C31302C32347A222F3E0D0A20202020202020203C7061
+ 746820643D224D31302C3237632D322E382C302D352E312D302E362D352E382D
+ 312E3543342E312C32352E372C342C32352E382C342C323663302C312E312C32
+ 2E372C322C362C3273362D302E392C362D3263302D302E322D302E312D302E33
+ 2D302E322D302E35204331352E312C32362E342C31322E382C32372C31302C32
+ 377A222F3E0D0A20202020202020203C7061746820643D224D31302C3330632D
+ 322E382C302D352E312D302E362D352E382D312E3543342E312C32382E372C34
+ 2C32382E382C342C323963302C312E312C322E372C322C362C3273362D302E39
+ 2C362D3263302D302E322D302E312D302E332D302E322D302E35204331352E31
+ 2C32392E342C31322E382C33302C31302C33307A222F3E0D0A20202020202020
+ 203C7061746820643D224D31302C3333632D322E382C302D352E312D302E362D
+ 352E382D312E3543342E312C33312E372C342C33312E382C342C333263302C31
+ 2E312C322E372C322C362C3273362D302E392C362D3263302D302E322D302E31
+ 2D302E332D302E322D302E35204331352E312C33322E342C31322E382C33332C
+ 31302C33337A222F3E0D0A20202020202020203C7061746820643D224D31302C
+ 3336632D322E382C302D352E312D302E362D352E382D312E3543342E312C3334
+ 2E372C342C33342E382C342C333563302C312E312C322E372C322C362C327336
+ 2D302E392C362D3263302D302E322D302E312D302E332D302E322D302E352043
+ 31352E312C33352E342C31322E382C33362C31302C33367A222F3E0D0A202020
+ 20202020203C7061746820643D224D31302C3339632D322E382C302D352E312D
+ 302E362D352E382D312E3543342E312C33372E372C342C33372E382C342C3338
+ 63302C312E312C322E372C322C362C3273362D302E392C362D3263302D302E32
+ 2D302E312D302E332D302E322D302E35204331352E312C33382E342C31322E38
+ 2C33392C31302C33397A222F3E0D0A202020203C2F673E0D0A202020203C6720
+ 66696C6C3D2223464641303030223E0D0A20202020202020203C706174682064
+ 3D224D32342C3238632D332E332C302D362D302E392D362D3263302C302E342C
+ 302C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C
+ 362D3263302D302E342C302D312E362C302D324333302C32372E312C32372E33
+ 2C32382C32342C3238207A222F3E0D0A20202020202020203C7061746820643D
+ 224D32342C3235632D332E332C302D362D302E392D362D3263302C302E342C30
+ 2C312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C36
+ 2D3263302D302E342C302D312E362C302D324333302C32342E312C32372E332C
+ 32352C32342C3235207A222F3E0D0A20202020202020203C7061746820643D22
+ 4D32342C3331632D332E332C302D362D302E392D362D3263302C302E342C302C
+ 312E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D
+ 3263302D302E342C302D312E362C302D324333302C33302E312C32372E332C33
+ 312C32342C3331207A222F3E0D0A20202020202020203C7061746820643D224D
+ 32342C3334632D332E332C302D362D302E392D362D3263302C302E342C302C31
+ 2E362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D32
+ 63302D302E342C302D312E362C302D324333302C33332E312C32372E332C3334
+ 2C32342C3334207A222F3E0D0A20202020202020203C7061746820643D224D32
+ 342C3337632D332E332C302D362D302E392D362D3263302C302E342C302C312E
+ 362C302C3263302C312E312C322E372C322C362C3273362D302E392C362D3263
+ 302D302E342C302D312E362C302D324333302C33362E312C32372E332C33372C
+ 32342C3337207A222F3E0D0A20202020202020203C7061746820643D224D3234
+ 2C3430632D332E332C302D362D302E392D362D3263302C302E342C302C312E36
+ 2C302C3263302C312E312C322E372C322C362C3273362D302E392C362D326330
+ 2D302E342C302D312E362C302D324333302C33392E312C32372E332C34302C32
+ 342C3430207A222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C
+ 3D2223464643313037223E0D0A20202020202020203C656C6C69707365206378
+ 3D223234222063793D223233222072783D2236222072793D2232222F3E0D0A20
+ 202020202020203C7061746820643D224D32342C3237632D322E382C302D352E
+ 312D302E362D352E382D312E354331382E312C32352E372C31382C32352E382C
+ 31382C323663302C312E312C322E372C322C362C3273362D302E392C362D3263
+ 302D302E322D302E312D302E332D302E322D302E35204332392E312C32362E34
+ 2C32362E382C32372C32342C32377A222F3E0D0A20202020202020203C706174
+ 6820643D224D32342C3330632D322E382C302D352E312D302E362D352E382D31
+ 2E354331382E312C32382E372C31382C32382E382C31382C323963302C312E31
+ 2C322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D30
+ 2E332D302E322D302E35204332392E312C32392E342C32362E382C33302C3234
+ 2C33307A222F3E0D0A20202020202020203C7061746820643D224D32342C3333
+ 632D322E382C302D352E312D302E362D352E382D312E354331382E312C33312E
+ 372C31382C33312E382C31382C333263302C312E312C322E372C322C362C3273
+ 362D302E392C362D3263302D302E322D302E312D302E332D302E322D302E3520
+ 4332392E312C33322E342C32362E382C33332C32342C33337A222F3E0D0A2020
+ 2020202020203C7061746820643D224D32342C3336632D322E382C302D352E31
+ 2D302E362D352E382D312E354331382E312C33342E372C31382C33342E382C31
+ 382C333563302C312E312C322E372C322C362C3273362D302E392C362D326330
+ 2D302E322D302E312D302E332D302E322D302E35204332392E312C33352E342C
+ 32362E382C33362C32342C33367A222F3E0D0A20202020202020203C70617468
+ 20643D224D32342C3339632D322E382C302D352E312D302E362D352E382D312E
+ 354331382E312C33372E372C31382C33372E382C31382C333863302C312E312C
+ 322E372C322C362C3273362D302E392C362D3263302D302E322D302E312D302E
+ 332D302E322D302E35204332392E312C33382E342C32362E382C33392C32342C
+ 33397A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0C0000007300
+ 6300610074007400650072005F0070006C006F0074004D0200003C7376672076
+ 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
+ 6F72672F323030302F737667222076696577426F783D22302030203438203438
+ 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
+ 3438223E0D0A202020203C706F6C79676F6E2066696C6C3D2223434644384443
+ 2220706F696E74733D22392C333920392C3620372C3620372C34312034322C34
+ 312034322C3339222F3E0D0A202020203C672066696C6C3D2223303042434434
+ 223E0D0A20202020202020203C636972636C652063783D223339222063793D22
+ 31312220723D2233222F3E0D0A20202020202020203C636972636C652063783D
+ 223331222063793D2231332220723D2233222F3E0D0A20202020202020203C63
+ 6972636C652063783D223337222063793D2231392220723D2233222F3E0D0A20
+ 202020202020203C636972636C652063783D223334222063793D223236222072
+ 3D2233222F3E0D0A20202020202020203C636972636C652063783D2232382220
+ 63793D2232302220723D2233222F3E0D0A20202020202020203C636972636C65
+ 2063783D223236222063793D2232382220723D2233222F3E0D0A202020202020
+ 20203C636972636C652063783D223230222063793D2232332220723D2233222F
+ 3E0D0A20202020202020203C636972636C652063783D223231222063793D2233
+ 332220723D2233222F3E0D0A20202020202020203C636972636C652063783D22
+ 3134222063793D2233302220723D2233222F3E0D0A202020203C2F673E0D0A3C
+ 2F7376673E0D0A06000000730065006100720063006800DA0200003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C672066696C6C3D2223363136313631223E0D0A20
+ 202020202020203C7265637420783D2233342E362220793D2232382E31222074
+ 72616E73666F726D3D226D6174726978282E373037202D2E373037202E373037
+ 202E373037202D31352E3135342033362E35383629222077696474683D223422
+ 206865696768743D223137222F3E0D0A20202020202020203C636972636C6520
+ 63783D223230222063793D2232302220723D223136222F3E0D0A202020203C2F
+ 673E0D0A202020203C7265637420783D2233362E322220793D2233322E312220
+ 7472616E73666F726D3D226D6174726978282E373037202D2E373037202E3730
+ 37202E373037202D31352E3833392033382E32333929222066696C6C3D222333
+ 3734373446222077696474683D223422206865696768743D2231322E33222F3E
+ 0D0A202020203C636972636C652066696C6C3D2223363442354636222063783D
+ 223230222063793D2232302220723D223133222F3E0D0A202020203C70617468
+ 2066696C6C3D22234242444546422220643D224D32362E392C31342E32632D31
+ 2E372D322D342E322D332E322D362E392D332E32732D352E322C312E322D362E
+ 392C332E32632D302E342C302E342D302E332C312E312C302E312C312E346330
+ 2E342C302E342C312E312C302E332C312E342D302E31204331362C31332E392C
+ 31372E392C31332C32302C313373342C302E392C352E342C322E3563302E322C
+ 302E322C302E352C302E342C302E382C302E3463302E322C302C302E352D302E
+ 312C302E362D302E324332372E322C31352E332C32372E322C31342E362C3236
+ 2E392C31342E327A222F3E0D0A3C2F7376673E0D0A12000000730065006C0066
+ 005F0073006500720076006900630065005F006B0069006F0073006B00600200
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C706174682066696C6C3D22233534
+ 364537412220643D224D34342C3330483456313163302D322E322C312E382D34
+ 2C342D3468333263322E322C302C342C312E382C342C345633307A222F3E0D0A
+ 202020203C706174682066696C6C3D22233634423546362220643D224D34302C
+ 32374838632D302E362C302D312D302E342D312D3156313163302D302E362C30
+ 2E342D312C312D3168333263302E362C302C312C302E342C312C317631354334
+ 312C32362E362C34302E362C32372C34302C32377A222F3E0D0A202020203C70
+ 6174682066696C6C3D22233738393039432220643D224D34302C34314838632D
+ 322E322C302D342D312E382D342D34762D3768343076374334342C33392E322C
+ 34322E322C34312C34302C34317A222F3E0D0A202020203C672066696C6C3D22
+ 23333734373446223E0D0A20202020202020203C7265637420783D2232372220
+ 793D223334222077696474683D22313222206865696768743D2232222F3E0D0A
+ 20202020202020203C7265637420783D22392220793D22333422207769647468
+ 3D22313222206865696768743D2232222F3E0D0A20202020202020203C706174
+ 6820643D224D31382C333563302C312E312D312E332C322D332C32732D332D30
+ 2E392D332D324831387A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D
+ 0A06000000730065006C00660069006500E90400003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22234646423734442220643D224D3332
+ 2E392C323263302D302E332C302E312D302E372C302E312D3163302D312E312C
+ 302D352E392C302D3763302D372E362D31382D352D31382C3063302C312E312C
+ 302C352E392C302C3763302C302E332C302C302E372C302E312C314833322E39
+ 7A222F3E0D0A202020203C706174682066696C6C3D2223333734373446222064
+ 3D224D34302C34344838632D322E322C302D342D312E382D342D345632366330
+ 2D322E322C312E382D342C342D3468333263322E322C302C342C312E382C342C
+ 347631344334342C34322E322C34322E322C34342C34302C34347A222F3E0D0A
+ 202020203C706174682066696C6C3D22234242444546422220643D224D372C32
+ 3676313463302C302E362C302E342C312C312C3168323963302E362C302C312D
+ 302E342C312D3156323663302D302E362D302E342D312D312D31483843372E34
+ 2C32352C372C32352E342C372C32367A222F3E0D0A202020203C726563742078
+ 3D2234302220793D223330222066696C6C3D2223373839303943222077696474
+ 683D223222206865696768743D2236222F3E0D0A202020203C7265637420783D
+ 2231392220793D223332222066696C6C3D222342463336304322207769647468
+ 3D223822206865696768743D2239222F3E0D0A202020203C7265637420783D22
+ 32302E352220793D2233372E35222066696C6C3D222346463938303022207769
+ 6474683D223522206865696768743D22332E35222F3E0D0A202020203C706174
+ 682066696C6C3D22234646423734442220643D224D32372E352C333263302D33
+ 2E382D392D322E352D392C3063302C302E352C302C332C302C332E3563302C32
+ 2E352C322C342E352C342E352C342E3573342E352D322C342E352D342E354332
+ 372E352C33352C32372E352C33322E352C32372E352C33327A222F3E0D0A2020
+ 20203C672066696C6C3D2223373834373139223E0D0A20202020202020203C63
+ 6972636C652063783D223238222063793D2232312220723D2231222F3E0D0A20
+ 202020202020203C636972636C652063783D223230222063793D223231222072
+ 3D2231222F3E0D0A20202020202020203C636972636C652063783D2232352220
+ 63793D2233352E352220723D222E35222F3E0D0A20202020202020203C636972
+ 636C652063783D223231222063793D2233352E352220723D222E35222F3E0D0A
+ 202020203C2F673E0D0A202020203C672066696C6C3D2223464635373232223E
+ 0D0A20202020202020203C7061746820643D224D32332C3237632D332C302D38
+ 2C312E332D382C31316C342C33762D362E356C362D332E356C322C322E355634
+ 316C342D3363302D322D302E382D31302D362D31306C2D302E352D314832337A
+ 222F3E0D0A20202020202020203C7061746820643D224D31362C3232762D336C
+ 31322D376C342C35763568362E384333382E332C31352E382C33362E312C362C
+ 32382C366C2D312D32682D334331382E352C342C31302E372C362E382C392E32
+ 2C32324831367A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A0C00
+ 0000730065007200690061006C005F007400610073006B007300F40100003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C706174682066696C6C3D22233930434146
+ 392220643D224D33332C39483131763468323263312E312C302C322C302E392C
+ 322C3276323048323376346831365631354333392C31312E372C33362E332C39
+ 2C33332C397A222F3E0D0A202020203C7265637420783D22362220793D223622
+ 2066696C6C3D2223443831423630222077696474683D22313022206865696768
+ 743D223130222F3E0D0A202020203C672066696C6C3D2223323139364633223E
+ 0D0A20202020202020203C7265637420783D2233322220793D22313722207769
+ 6474683D22313022206865696768743D223130222F3E0D0A2020202020202020
+ 3C7265637420783D2231362220793D223332222077696474683D223130222068
+ 65696768743D223130222F3E0D0A20202020202020203C636972636C65206378
+ 3D223236222063793D2231312220723D2235222F3E0D0A20202020202020203C
+ 636972636C652063783D223337222063793D2233372220723D2235222F3E0D0A
+ 202020203C2F673E0D0A3C2F7376673E0D0A0C00000073006500720076006900
+ 630065005F006D00610072006B00520200003C7376672076657273696F6E3D22
+ 312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32303030
+ 2F737667222076696577426F783D223020302034382034382220656E61626C65
+ 2D6261636B67726F756E643D226E657720302030203438203438223E0D0A2020
+ 20203C636972636C652066696C6C3D2223394332374230222063783D22323422
+ 2063793D2232342220723D223231222F3E0D0A202020203C672066696C6C3D22
+ 23453142454537223E0D0A20202020202020203C7061746820643D224D31362E
+ 372C32382E3263302D332E382D372E332D322E322D372E332D382E3163302D30
+ 2E372C302E342D342E382C352E352D342E3863352E312C302C352E342C342E35
+ 2C352E342C352E33682D332E3563302D302E342C302D322E352D322D322E3520
+ 632D312E382C302D312E392C312E372D312E392C3263302C332C372E342C322C
+ 372E342C382E3163302C322D312E312C342E382D352E332C342E384331302E33
+ 2C33332C392C32392E362C392C32372E3368332E3563302C302E352D302E322C
+ 322E382C322E352C322E38204331362E382C33302E322C31362E372C32382E35
+ 2C31362E372C32382E327A222F3E0D0A20202020202020203C7061746820643D
+ 224D32372E312C31352E364C33302E332C32386C332E322D31322E3468342E35
+ 7631372E32682D332E35762D342E366C302E332D372E326C2D332E342C31312E
+ 38682D322E346C2D332E342D31312E386C302E332C372E3276342E36682D332E
+ 355631352E36204832372E317A222F3E0D0A202020203C2F673E0D0A3C2F7376
+ 673E0D0A0800000073006500720076006900630065007300160600003C737667
+ 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
+ 332E6F72672F323030302F737667222076696577426F783D2230203020343820
+ 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
+ 38203438223E0D0A202020203C706174682066696C6C3D222345363531303022
+ 20643D224D32352E362C33342E3463302E312D302E342C302E312D302E392C30
+ 2E312D312E3473302D302E392D302E312D312E346C322E382D3263302E332D30
+ 2E322C302E342D302E362C302E322D302E396C2D322E372D342E3620632D302E
+ 322D302E332D302E352D302E342D302E382D302E334C32322C32352E33632D30
+ 2E372D302E362D312E352D312D322E342D312E346C2D302E332D332E3463302D
+ 302E332D302E332D302E362D302E362D302E36682D352E33632D302E332C302D
+ 302E362C302E332D302E362C302E364C31322E342C323420632D302E392C302E
+ 332D312E362C302E382D322E342C312E346C2D332E312D312E34632D302E332D
+ 302E312D302E372C302D302E382C302E336C2D322E372C342E36632D302E322C
+ 302E332D302E312C302E372C302E322C302E396C322E382C32632D302E312C30
+ 2E342D302E312C302E392D302E312C312E342073302C302E392C302E312C312E
+ 346C2D322E382C32632D302E332C302E322D302E342C302E362D302E322C302E
+ 396C322E372C342E3663302E322C302E332C302E352C302E342C302E382C302E
+ 336C332E312D312E3463302E372C302E362C312E352C312C322E342C312E346C
+ 302E332C332E342063302C302E332C302E332C302E362C302E362C302E366835
+ 2E3363302E332C302C302E362D302E332C302E362D302E366C302E332D332E34
+ 63302E392D302E332C312E362D302E382C322E342D312E346C332E312C312E34
+ 63302E332C302E312C302E372C302C302E382D302E336C322E372D342E362063
+ 302E322D302E332C302E312D302E372D302E322D302E394C32352E362C33342E
+ 347A204D31362C3338632D322E382C302D352D322E322D352D3563302D322E38
+ 2C322E322D352C352D3563322E382C302C352C322E322C352C354332312C3335
+ 2E382C31382E382C33382C31362C33387A222F3E0D0A202020203C7061746820
+ 66696C6C3D22234646413030302220643D224D34312E392C31352E334334322C
+ 31342E382C34322C31342E342C34322C313473302D302E382D302E312D312E33
+ 6C322E352D312E3863302E332D302E322C302E332D302E352C302E322D302E38
+ 6C2D322E352D342E3320632D302E322D302E332D302E352D302E342D302E382D
+ 302E326C2D322E392C312E33632D302E372D302E352D312E342D302E392D322E
+ 322D312E336C2D302E332D332E314333362C322E322C33352E382C322C33352E
+ 352C32682D342E39632D302E332C302D302E362C302E322D302E362C302E356C
+ 2D302E332C332E3120632D302E382C302E332D312E352C302E372D322E322C31
+ 2E336C2D322E392D312E33632D302E332D302E312D302E362C302D302E382C30
+ 2E326C2D322E352C342E33632D302E322C302E332D302E312C302E362C302E32
+ 2C302E386C322E352C312E384332342C31332E322C32342C31332E362C32342C
+ 31342073302C302E382C302E312C312E336C2D322E352C312E38632D302E332C
+ 302E322D302E332C302E352D302E322C302E386C322E352C342E3363302E322C
+ 302E332C302E352C302E342C302E382C302E326C322E392D312E3363302E372C
+ 302E352C312E342C302E392C322E322C312E336C302E332C332E312063302C30
+ 2E332C302E332C302E352C302E362C302E3568342E3963302E332C302C302E36
+ 2D302E322C302E362D302E356C302E332D332E3163302E382D302E332C312E35
+ 2D302E372C322E322D312E336C322E392C312E3363302E332C302E312C302E36
+ 2C302C302E382D302E326C322E352D342E332063302E322D302E332C302E312D
+ 302E362D302E322D302E384C34312E392C31352E337A204D33332C3139632D32
+ 2E382C302D352D322E322D352D3563302D322E382C322E322D352C352D356332
+ 2E382C302C352C322E322C352C354333382C31362E382C33352E382C31392C33
+ 332C31397A222F3E0D0A3C2F7376673E0D0A0800000073006500740074006900
+ 6E0067007300050400003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
+ 66696C6C3D22233630374438422220643D224D33392E362C32372E3263302E31
+ 2D302E372C302E322D312E342C302E322D322E32732D302E312D312E352D302E
+ 322D322E326C342E352D332E3263302E342D302E332C302E362D302E392C302E
+ 332D312E344C34302C31302E3820632D302E332D302E352D302E382D302E372D
+ 312E332D302E346C2D352C322E33632D312E322D302E392D322E342D312E362D
+ 332E382D322E326C2D302E352D352E35632D302E312D302E352D302E352D302E
+ 392D312D302E39682D382E36632D302E352C302D312C302E342D312C302E396C
+ 2D302E352C352E3520632D312E342C302E362D322E372C312E332D332E382C32
+ 2E326C2D352D322E33632D302E352D302E322D312E312C302D312E332C302E34
+ 6C2D342E332C372E34632D302E332C302E352D302E312C312E312C302E332C31
+ 2E346C342E352C332E32632D302E312C302E372D302E322C312E342D302E322C
+ 322E322073302E312C312E352C302E322C322E324C342C33302E34632D302E34
+ 2C302E332D302E362C302E392D302E332C312E344C382C33392E3263302E332C
+ 302E352C302E382C302E372C312E332C302E346C352D322E3363312E322C302E
+ 392C322E342C312E362C332E382C322E326C302E352C352E352063302E312C30
+ 2E352C302E352C302E392C312C302E3968382E3663302E352C302C312D302E34
+ 2C312D302E396C302E352D352E3563312E342D302E362C322E372D312E332C33
+ 2E382D322E326C352C322E3363302E352C302E322C312E312C302C312E332D30
+ 2E346C342E332D372E342063302E332D302E352C302E312D312E312D302E332D
+ 312E344C33392E362C32372E327A204D32342C3335632D352E352C302D31302D
+ 342E352D31302D313063302D352E352C342E352D31302C31302D313063352E35
+ 2C302C31302C342E352C31302C31304333342C33302E352C32392E352C33352C
+ 32342C33357A222F3E0D0A202020203C706174682066696C6C3D222334353541
+ 36342220643D224D32342C3133632D362E362C302D31322C352E342D31322C31
+ 3263302C362E362C352E342C31322C31322C31327331322D352E342C31322D31
+ 324333362C31382E342C33302E362C31332C32342C31337A204D32342C333020
+ 632D322E382C302D352D322E322D352D3563302D322E382C322E322D352C352D
+ 3573352C322E322C352C354332392C32372E382C32362E382C33302C32342C33
+ 307A222F3E0D0A3C2F7376673E0D0A0500000073006800610072006500FE0100
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C706174682066696C6C3D22233139
+ 373644322220643D224D33382E312C33312E324C31392E342C32346C31382E37
+ 2D372E3263312E352D302E362C322E332D322E332C312E372D332E39632D302E
+ 362D312E352D322E332D322E332D332E392D312E376C2D32362C313043382E38
+ 2C32312E362C382C32322E382C382C32342073302E382C322E342C312E392C32
+ 2E386C32362C313063302E342C302E312C302E372C302E322C312E312C302E32
+ 63312E322C302C322E332D302E372C322E382D312E394334302E342C33332E35
+ 2C33392E362C33312E382C33382E312C33312E327A222F3E0D0A202020203C67
+ 2066696C6C3D2223314538384535223E0D0A20202020202020203C636972636C
+ 652063783D223131222063793D2232342220723D2237222F3E0D0A2020202020
+ 2020203C636972636C652063783D223337222063793D2231342220723D223722
+ 2F3E0D0A20202020202020203C636972636C652063783D223337222063793D22
+ 33342220723D2237222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A07
+ 0000007300680069007000700065006400240300003C7376672076657273696F
+ 6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F32
+ 3030302F737667222076696577426F783D223020302034382034382220656E61
+ 626C652D6261636B67726F756E643D226E657720302030203438203438223E0D
+ 0A202020203C706174682066696C6C3D22233842433334412220643D224D3433
+ 2C33364832395631346831302E3663302E392C302C312E362C302E362C312E39
+ 2C312E344C34352C323676384334352C33352E312C34342E312C33362C34332C
+ 33367A222F3E0D0A202020203C706174682066696C6C3D222333383845334322
+ 20643D224D32392C33364835632D312E312C302D322D302E392D322D32563963
+ 302D312E312C302E392D322C322D3268323263312E312C302C322C302E392C32
+ 2C325633367A222F3E0D0A202020203C672066696C6C3D222333373437344622
+ 3E0D0A20202020202020203C636972636C652063783D223337222063793D2233
+ 362220723D2235222F3E0D0A20202020202020203C636972636C652063783D22
+ 3133222063793D2233362220723D2235222F3E0D0A202020203C2F673E0D0A20
+ 2020203C672066696C6C3D2223373839303943223E0D0A20202020202020203C
+ 636972636C652063783D223337222063793D2233362220723D2232222F3E0D0A
+ 20202020202020203C636972636C652063783D223133222063793D2233362220
+ 723D2232222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C
+ 6C3D22233337343734462220643D224D34312C3235682D37632D302E362C302D
+ 312D302E342D312D31762D3763302D302E362C302E342D312C312D3168352E33
+ 63302E342C302C302E382C302E332C302E392C302E376C312E372C352E326330
+ 2C302E312C302E312C302E322C302E312C302E33563234204334322C32342E36
+ 2C34312E362C32352C34312C32357A222F3E0D0A202020203C706F6C79676F6E
+ 2066696C6C3D22234443454443382220706F696E74733D2232312E382C31332E
+ 382031332E392C32312E372031302E322C31372E3920382C32302E312031332E
+ 392C32362032342C31352E39222F3E0D0A3C2F7376673E0D0A04000000730068
+ 006F007000DF0500003C7376672076657273696F6E3D22312220786D6C6E733D
+ 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
+ 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
+ 6E643D226E657720302030203438203438223E0D0A202020203C726563742078
+ 3D22352220793D223139222066696C6C3D222343464438444322207769647468
+ 3D22333822206865696768743D223139222F3E0D0A202020203C726563742078
+ 3D22352220793D223338222066696C6C3D222342304245433522207769647468
+ 3D22333822206865696768743D2234222F3E0D0A202020203C7265637420783D
+ 2232372220793D223234222066696C6C3D222334353541363422207769647468
+ 3D22313222206865696768743D223138222F3E0D0A202020203C726563742078
+ 3D22392220793D223234222066696C6C3D222345334632464422207769647468
+ 3D22313422206865696768743D223131222F3E0D0A202020203C726563742078
+ 3D2231302220793D223235222066696C6C3D2223314538384535222077696474
+ 683D22313222206865696768743D2239222F3E0D0A202020203C706174682066
+ 696C6C3D22233930413441452220643D224D33362E352C33332E35632D302E33
+ 2C302D302E352C302E322D302E352C302E35763263302C302E332C302E322C30
+ 2E352C302E352C302E355333372C33362E332C33372C3336762D324333372C33
+ 332E372C33362E382C33332E352C33362E352C33332E357A222F3E0D0A202020
+ 203C672066696C6C3D2223353538423246223E0D0A20202020202020203C6369
+ 72636C652063783D223234222063793D2231392220723D2233222F3E0D0A2020
+ 2020202020203C636972636C652063783D223336222063793D2231392220723D
+ 2233222F3E0D0A20202020202020203C636972636C652063783D223132222063
+ 793D2231392220723D2233222F3E0D0A202020203C2F673E0D0A202020203C70
+ 6174682066696C6C3D22233743423334322220643D224D34302C36483843362E
+ 392C362C362C362E392C362C38763368333656384334322C362E392C34312E31
+ 2C362C34302C367A222F3E0D0A202020203C7265637420783D2232312220793D
+ 223131222066696C6C3D2223374342333432222077696474683D223622206865
+ 696768743D2238222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 3743423334322220706F696E74733D2233372C31312033322C31312033332C31
+ 392033392C3139222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 3743423334322220706F696E74733D2231312C31312031362C31312031352C31
+ 3920392C3139222F3E0D0A202020203C672066696C6C3D222346464130303022
+ 3E0D0A20202020202020203C636972636C652063783D223330222063793D2231
+ 392220723D2233222F3E0D0A20202020202020203C7061746820643D224D3435
+ 2C313963302C312E372D312E332C332D332C33732D332D312E332D332D337331
+ 2E332D332C332D334C34352C31397A222F3E0D0A20202020202020203C636972
+ 636C652063783D223138222063793D2231392220723D2233222F3E0D0A202020
+ 20202020203C7061746820643D224D332C313963302C312E372C312E332C332C
+ 332C3373332D312E332C332D33732D312E332D332D332D334C332C31397A222F
+ 3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D22234646433130
+ 37223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D223332
+ 2C31312032372C31312032372C31392033332C3139222F3E0D0A202020202020
+ 20203C706F6C79676F6E20706F696E74733D2234322C31312033372C31312033
+ 392C31392034352C3139222F3E0D0A20202020202020203C706F6C79676F6E20
+ 706F696E74733D2231362C31312032312C31312032312C31392031352C313922
+ 2F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22362C31
+ 312031312C313120392C313920332C3139222F3E0D0A202020203C2F673E0D0A
+ 3C2F7376673E0D0A08000000730069006D005F006300610072006400F5010000
+ 3C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F77
+ 77772E77332E6F72672F323030302F737667222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 2030203438203438223E0D0A202020203C706174682066696C6C3D2223303039
+ 3638382220643D224D33362C3435483132632D322E322C302D342D312E382D34
+ 2D34563763302D322E322C312E382D342C342D346831362E3363312E312C302C
+ 322E312C302E342C322E382C312E326C372E372C372E3763302E382C302E382C
+ 312E322C312E382C312E322C322E38205634314334302C34332E322C33382E32
+ 2C34352C33362C34357A222F3E0D0A202020203C706174682066696C6C3D2223
+ 4646393830302220643D224D33322C3338483136632D312E312C302D322D302E
+ 392D322D3256323463302D312E312C302E392D322C322D3268313663312E312C
+ 302C322C302E392C322C327631324333342C33372E312C33332E312C33382C33
+ 322C33387A222F3E0D0A202020203C706174682066696C6C3D22234646443534
+ 462220643D224D32392C3330763368357632682D357633682D32563232683276
+ 36683576324832397A204D31342C3239763268357632682D3576326835763368
+ 32762D394831347A222F3E0D0A3C2F7376673E0D0A0D000000730069006D005F
+ 0063006100720064005F006300680069007000730200003C7376672076657273
+ 696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267
+ 2F323030302F737667222076696577426F783D22302030203438203438222065
+ 6E61626C652D6261636B67726F756E643D226E65772030203020343820343822
+ 3E0D0A202020203C706174682066696C6C3D22234646393830302220643D224D
+ 352C333556313363302D322E322C312E382D342C342D3468333063322E322C30
+ 2C342C312E382C342C3476323263302C322E322D312E382C342D342C34483943
+ 362E382C33392C352C33372E322C352C33357A222F3E0D0A202020203C672066
+ 696C6C3D2223464644353446223E0D0A20202020202020203C7061746820643D
+ 224D34332C3231762D32483331632D312E312C302D322D302E392D322D327330
+ 2E392D322C322D326831762D32682D31632D322E322C302D342C312E382D342C
+ 3473312E382C342C342C3468337636682D33632D322E382C302D352C322E322D
+ 352C352073322E322C352C352C356832762D32682D32632D312E372C302D332D
+ 312E332D332D3373312E332D332C332D33683132762D32682D37762D36483433
+ 7A222F3E0D0A20202020202020203C7061746820643D224D31372C3237682D33
+ 762D36683363322E322C302C342D312E382C342D34732D312E382D342D342D34
+ 682D337632683363312E312C302C322C302E392C322C32732D302E392C322D32
+ 2C324835763268377636483576326831322063312E372C302C332C312E332C33
+ 2C33732D312E332C332D332C33682D327632683263322E382C302C352D322E32
+ 2C352D355331392E382C32372C31372C32377A222F3E0D0A202020203C2F673E
+ 0D0A3C2F7376673E0D0A0D00000073006C0072005F006200610063006B005F00
+ 73006900640065004E0300003C7376672076657273696F6E3D22312220786D6C
+ 6E733D22687474703A2F2F7777772E77332E6F72672F323030302F7376672220
+ 76696577426F783D223020302034382034382220656E61626C652D6261636B67
+ 726F756E643D226E657720302030203438203438223E0D0A202020203C706174
+ 682066696C6C3D22233545333542312220643D224D34302C3130682D372E366C
+ 2D322D33632D302E342D302E362D312D302E392D312E372D302E39682D392E36
+ 632D302E372C302D312E332C302E332D312E372C302E396C2D322C334838632D
+ 322E322C302D342C312E382D342C347632342063302C322E322C312E382C342C
+ 342C3468333263322E322C302C342D312E382C342D345631344334342C31312E
+ 382C34322E322C31302C34302C31307A222F3E0D0A202020203C706174682066
+ 696C6C3D22234635374330302220643D224D31312C313668323063302E362C30
+ 2C312C302E342C312C3176313663302C302E362D302E342C312D312C31483131
+ 632D302E362C302D312D302E342D312D315631374331302C31362E342C31302E
+ 342C31362C31312C31367A222F3E0D0A202020203C706F6C79676F6E2066696C
+ 6C3D22233934324130392220706F696E74733D2231382E392C32322031322C33
+ 322032352E382C3332222F3E0D0A202020203C636972636C652066696C6C3D22
+ 23464646394334222063783D223237222063793D2232312220723D2232222F3E
+ 0D0A202020203C706F6C79676F6E2066696C6C3D22234246333630432220706F
+ 696E74733D2232352E322C32362032302E342C33322033302C3332222F3E0D0A
+ 202020203C672066696C6C3D2223383636374334223E0D0A2020202020202020
+ 3C7061746820643D224D33342C3130683656392E324334302C382E352C33392E
+ 352C382C33382E382C38682D332E364333342E352C382C33342C382E352C3334
+ 2C392E325631307A222F3E0D0A20202020202020203C636972636C652063783D
+ 223338222063793D2231382220723D2232222F3E0D0A20202020202020203C63
+ 6972636C652063783D223338222063793D2232342220723D2232222F3E0D0A20
+ 202020202020203C636972636C652063783D223338222063793D223330222072
+ 3D2232222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A110000007300
+ 6D00610072007400700068006F006E0065005F007400610062006C0065007400
+ C80200003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
+ 233337343734462220643D224D342C3339563763302D322E322C312E382D342C
+ 342D3468323263322E322C302C342C312E382C342C3476333263302C322E322D
+ 312E382C342D342C34483843352E382C34332C342C34312E322C342C33397A22
+ 2F3E0D0A202020203C706174682066696C6C3D22234242444546422220643D22
+ 4D33302C36483843372E342C362C372C362E342C372C3776323963302C302E36
+ 2C302E342C312C312C3168323263302E362C302C312D302E342C312D31563743
+ 33312C362E342C33302E362C362C33302C367A222F3E0D0A202020203C726563
+ 7420783D2231352220793D223339222066696C6C3D2223373839303943222077
+ 696474683D223622206865696768743D2232222F3E0D0A202020203C70617468
+ 2066696C6C3D22234533383933392220643D224D32342C343156313763302D32
+ 2E322C312E382D342C342D3468313263322E322C302C342C312E382C342C3476
+ 323463302C322E322D312E382C342D342C344832384332352E382C34352C3234
+ 2C34332E322C32342C34317A222F3E0D0A202020203C706174682066696C6C3D
+ 22234646463345302220643D224D34302C3136483238632D302E362C302D312C
+ 302E342D312C3176323263302C302E362C302E342C312C312C3168313263302E
+ 362C302C312D302E342C312D315631374334312C31362E342C34302E362C3136
+ 2C34302C31367A222F3E0D0A202020203C636972636C652066696C6C3D222341
+ 3636343241222063783D223334222063793D2234322E352220723D22312E3522
+ 2F3E0D0A3C2F7376673E0D0A0300000073006D0073007D0100003C7376672076
+ 657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E
+ 6F72672F323030302F737667222076696577426F783D22302030203438203438
+ 2220656E61626C652D6261636B67726F756E643D226E65772030203020343820
+ 3438223E0D0A202020203C706174682066696C6C3D2223303039363838222064
+ 3D224D33372C33394831316C2D362C3656313163302D332E332C322E372D362C
+ 362D3668323663332E332C302C362C322E372C362C367632324334332C33362E
+ 332C34302E332C33392C33372C33397A222F3E0D0A202020203C672066696C6C
+ 3D2223666666223E0D0A20202020202020203C636972636C652063783D223234
+ 222063793D2232322220723D2233222F3E0D0A20202020202020203C63697263
+ 6C652063783D223334222063793D2232322220723D2233222F3E0D0A20202020
+ 202020203C636972636C652063783D223134222063793D2232322220723D2233
+ 222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A1900000073006F0075
+ 006E0064005F007200650063006F007200640069006E0067005F0063006F0070
+ 00790072006900670068007400720200003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C636972636C652066696C6C3D2223394332374230222063783D2232342220
+ 63793D2232342220723D223231222F3E0D0A202020203C706174682066696C6C
+ 3D22234531424545372220643D224D32302E372C32372E3276382E34682D332E
+ 395631322E3968382E3763312E332C302C322E352C302E322C332E352C302E35
+ 63312C302E342C312E392C302E392C322E362C312E3563302E372C302E362C31
+ 2E322C312E342C312E362C322E332063302E342C302E392C302E362C312E382C
+ 302E362C322E3963302C312E312D302E322C322E312D302E362C33632D302E34
+ 2C302E392D302E392C312E362D312E362C322E32632D302E372C302E362D312E
+ 362C312E312D322E362C312E34632D312C302E332D322E322C302E352D332E35
+ 2C302E354832302E377A204D32302E372C323468342E3763302E382C302C312E
+ 342D302E312C322D302E3363302E352D302E322C312D302E352C312E342D302E
+ 3863302E342D302E332C302E362D302E382C302E382D312E3263302E322D302E
+ 352C302E322D312C302E322D312E3663302D302E352D302E312D312D302E322D
+ 312E3520632D302E322D302E352D302E342D302E392D302E382D312E33632D30
+ 2E342D302E342D302E382D302E372D312E342D302E39632D302E352D302E322D
+ 312E322D302E332D322D302E33682D342E375632347A222F3E0D0A3C2F737667
+ 3E0D0A0700000073007000650061006B0065007200700200003C737667207665
+ 7273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F
+ 72672F323030302F737667222076696577426F783D2230203020343820343822
+ 20656E61626C652D6261636B67726F756E643D226E6577203020302034382034
+ 38223E0D0A202020203C706174682066696C6C3D22233831443446412220643D
+ 224D32382C372E31763263372E332C312C31332C372E332C31332C31342E3973
+ 2D352E372C31332E392D31332C31342E39763263382E342D312C31352D382E32
+ 2C31352D31362E395333362E342C382E312C32382C372E317A222F3E0D0A2020
+ 20203C706174682066696C6C3D22233534364537412220643D224D31342C3332
+ 4837632D312E312C302D322D302E392D322D3256313863302D312E312C302E39
+ 2D322C322D3268375633327A222F3E0D0A202020203C706F6C79676F6E206669
+ 6C6C3D22233738393039432220706F696E74733D2232362C34322031342C3332
+ 2031342C31362032362C36222F3E0D0A202020203C706174682066696C6C3D22
+ 233033413946342220643D224D32382C31372E3376322E3163312E382C302E38
+ 2C332C322E352C332C342E36732D312E322C332E382D332C342E3676322E3163
+ 322E392D302E392C352D332E352C352D362E375333302E392C31382E322C3238
+ 2C31372E337A222F3E0D0A202020203C706174682066696C6C3D222334464333
+ 46372220643D224D32382C31322E32763263342E362C302E392C382C352C382C
+ 392E38732D332E342C382E392D382C392E38763263352E372D312C31302D352E
+ 392C31302D31312E385333332E372C31332E312C32382C31322E327A222F3E0D
+ 0A3C2F7376673E0D0A0B000000730070006F007200740073005F006D006F0064
+ 006500F90300003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C636972636C652066
+ 696C6C3D2223464639383030222063783D223238222063793D22392220723D22
+ 35222F3E0D0A202020203C706174682066696C6C3D2223303037393642222064
+ 3D224D32392C32372E336C2D392E322D342E31632D312D302E352D312E352C31
+ 2D322C32632D302E352C312D342E312C372E322D332E382C382E3363302E332C
+ 302E392C312E312C312E342C312E392C312E3463302E322C302C302E342C302C
+ 302E362D302E31204C32382E382C333163302E382D302E322C312E342D312C31
+ 2E342D312E384333302E322C32382E342C32392E372C32372E362C32392C3237
+ 2E337A222F3E0D0A202020203C706174682066696C6C3D222330303936383822
+ 20643D224D32362E382C31352E326C2D322E322D31632D312E332D302E362D32
+ 2E392C302D332E352C312E334C392E322C34312E31632D302E352C312C302C32
+ 2E322C312C322E3763302E332C302E312C302E362C302E322C302E392C302E32
+ 2063302E382C302C312E352D302E342C312E382D312E3163302C302C392E362D
+ 31332E332C31302E342D31342E3973342E392D392E332C342E392D392E334332
+ 382E372C31372E342C32382E322C31352E382C32362E382C31352E327A222F3E
+ 0D0A202020203C706174682066696C6C3D22234646393830302220643D224D34
+ 302E352C31352E37632D302E372D302E382D322D312D322E382D302E336C2D35
+ 2C342E326C2D362E342D332E35632D312E312D302E362D322E362D302E342D33
+ 2E332C302E39632D302E382C312E332D302E342C322E392C302E382C332E3420
+ 6C382E332C332E3463302E332C302E312C302E362C302E322C302E392C302E32
+ 63302E352C302C302E392D302E322C312E332D302E356C362D354334312E312C
+ 31372E382C34312E322C31362E362C34302E352C31352E377A222F3E0D0A2020
+ 20203C706174682066696C6C3D22234646393830302220643D224D31312E372C
+ 32332E316C332E342D352E316C342E362C302E366C312E352D332E3163302E34
+ 2D302E392C312E322D312E342C322E312D312E35632D302E312C302D302E322C
+ 302D302E322C30682D39632D302E372C302D312E332C302E332D312E372C302E
+ 39206C2D342C36632D302E362C302E392D302E342C322E322C302E362C322E38
+ 43392E322C32332E392C392E362C32342C31302C32344331302E362C32342C31
+ 312E332C32332E372C31312E372C32332E317A222F3E0D0A3C2F7376673E0D0A
+ 0F00000073007400610063006B005F006F0066005F00700068006F0074006F00
+ 7300B90500003C7376672076657273696F6E3D22312220786D6C6E733D226874
+ 74703A2F2F7777772E77332E6F72672F323030302F737667222076696577426F
+ 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
+ 226E657720302030203438203438223E0D0A202020203C7265637420783D2231
+ 322E332220793D2231322E3322207472616E73666F726D3D226D617472697828
+ 2E393438202E333138202D2E333138202E39343820392E373235202D362E3939
+ 3429222066696C6C3D2223363442354636222077696474683D22323822206865
+ 696768743D223238222F3E0D0A202020203C7265637420783D2231352E362220
+ 793D2231352E3422207472616E73666F726D3D226D6174726978282E39353120
+ 2E3331202D2E3331202E39353120392E313736202D362E39373729222066696C
+ 6C3D2223314538384535222077696474683D22323222206865696768743D2232
+ 30222F3E0D0A202020203C7265637420783D22382E312220793D22382E312220
+ 7472616E73666F726D3D226D6174726978282E393833202E313831202D2E3138
+ 31202E39383320342E333835202D332E363529222066696C6C3D222339304341
+ 4639222077696474683D22323822206865696768743D223238222F3E0D0A2020
+ 20203C7265637420783D2231312E332220793D2231312E3222207472616E7366
+ 6F726D3D226D6174726978282E393835202E313735202D2E313735202E393835
+ 20342E303438202D332E35363629222066696C6C3D2223343241354635222077
+ 696474683D22323222206865696768743D223230222F3E0D0A202020203C7265
+ 637420783D22342220793D2234222066696C6C3D222342424445464222207769
+ 6474683D22323822206865696768743D223238222F3E0D0A202020203C726563
+ 7420783D22372220793D2237222066696C6C3D22233443414635302220776964
+ 74683D22323222206865696768743D223230222F3E0D0A202020203C70617468
+ 2066696C6C3D22236666662220643D224D31362C313363302D312E312C302E39
+ 2D322C322D3273322C302E392C322C32732D322C342D322C345331362C31342E
+ 312C31362C31337A222F3E0D0A202020203C706174682066696C6C3D22236666
+ 662220643D224D32302C323163302C312E312D302E392C322D322C32732D322D
+ 302E392D322D3273322D342C322D345332302C31392E392C32302C32317A222F
+ 3E0D0A202020203C706174682066696C6C3D22236666662220643D224D31332E
+ 352C31362E37632D312D302E362D312E332D312E382D302E372D322E3763302E
+ 362D312C312E382D312E332C322E372D302E3763312C302E362C322E352C332E
+ 372C322E352C332E375331342E352C31372E332C31332E352C31362E377A222F
+ 3E0D0A202020203C706174682066696C6C3D22236666662220643D224D32322E
+ 352C31372E3363312C302E362C312E332C312E382C302E372C322E37632D302E
+ 362C312D312E382C312E332D322E372C302E374331392E352C32302E322C3138
+ 2C31372C31382C31375332312E352C31362E372C32322E352C31372E337A222F
+ 3E0D0A202020203C706174682066696C6C3D22236666662220643D224D32322E
+ 352C31362E3763312D302E362C312E332D312E382C302E372D322E37632D302E
+ 362D312D312E382D312E332D322E372D302E374331392E352C31332E382C3138
+ 2C31372C31382C31375332312E352C31372E332C32322E352C31362E377A222F
+ 3E0D0A202020203C706174682066696C6C3D22236666662220643D224D31332E
+ 352C31372E33632D312C302E362D312E332C312E382D302E372C322E3763302E
+ 362C312C312E382C312E332C322E372C302E3763312D302E362C322E352D332E
+ 372C322E352D332E375331342E352C31362E372C31332E352C31372E337A222F
+ 3E0D0A202020203C636972636C652066696C6C3D222346464331303722206378
+ 3D223138222063793D2231372220723D2232222F3E0D0A3C2F7376673E0D0A05
+ 00000073007400610072007400260100003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706174682066696C6C3D22234634343333362220643D224D33382C343248
+ 3130632D322E322C302D342D312E382D342D3456313063302D322E322C312E38
+ 2D342C342D3468323863322E322C302C342C312E382C342C347632384334322C
+ 34302E322C34302E322C34322C33382C34327A222F3E0D0A202020203C706F6C
+ 79676F6E2066696C6C3D22236666662220706F696E74733D2233312C32342032
+ 302C31362032302C3332222F3E0D0A3C2F7376673E0D0A050000007300740065
+ 0061006D00770700003C3F786D6C2076657273696F6E3D22312E302220656E63
+ 6F64696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F723A
+ 2041646F626520496C6C7573747261746F722031352E302E302C205356472045
+ 78706F727420506C75672D496E202E205356472056657273696F6E3A20362E30
+ 30204275696C6420302920202D2D3E0D0A3C21444F4354595045207376672050
+ 55424C494320222D2F2F5733432F2F4454442053564720312E312F2F454E2220
+ 22687474703A2F2F7777772E77332E6F72672F47726170686963732F5356472F
+ 312E312F4454442F73766731312E647464223E0D0A3C7376672076657273696F
+ 6E3D22312E31222020786D6C6E733D22687474703A2F2F7777772E77332E6F72
+ 672F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F
+ 7777772E77332E6F72672F313939392F786C696E6B2220783D22307078222079
+ 3D22307078220D0A092077696474683D223438707822206865696768743D2234
+ 387078222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E6577203020302034382034382220786D6C3A73
+ 706163653D227072657365727665223E0D0A3C706174682066696C6C3D222346
+ 46464646462220643D224D34322C333863302C322E3230392D312E3739312C34
+ 2D342C34483130632D322E3230392C302D342D312E3739312D342D3456313063
+ 302D322E3230392C312E3739312D342C342D3468323863322E3230392C302C34
+ 2C312E3739312C342C345633387A222F3E0D0A3C673E0D0A093C706174682066
+ 696C6C3D22233435354136342220643D224D31382E3435392C33332E36343563
+ 2D302E3238382C302D302E35362D302E3035372D302E3832322D302E3134316C
+ 2D302E3030352C302E30326C2D332E36372D312E3036320D0A090963302E3634
+ 342C312E3837382C322E3430362C332E3233372C342E352C332E32333763322E
+ 3634312C302C342E3737362D322E3133362C342E3737362D342E373736732D32
+ 2E3133352D342E3737372D342E3737362D342E373737632D312E3134312C302D
+ 322E3137352C302E3431382D322E3939382C312E3038370D0A09094C31392C32
+ 382E32353563302E3032392C302E3030372C302E3035352C302E3031382C302E
+ 3038342C302E3032346C302E3034392C302E30313676302E30303263312E3137
+ 372C302E3330312C322E3034392C312E3335392C322E3034392C322E3632360D
+ 0A09094332312E3138342C33322E3432342C31392E3936342C33332E3634352C
+ 31382E3435392C33332E3634357A222F3E0D0A093C706174682066696C6C3D22
+ 233435354136342220643D224D33302E3932332C32342E32393963332E323232
+ 2C302C352E3833372D322E3631352C352E3833372D352E38333863302D332E32
+ 32322D322E3631352D352E3833372D352E3833372D352E3833370D0A0909632D
+ 332E3232312C302D352E3833372C322E3631352D352E3833372C352E38333743
+ 32352E3038362C32312E3638342C32372E3730322C32342E3239392C33302E39
+ 32332C32342E3239397A204D33302E39322C31342E34303963322E32342C302C
+ 342E3035362C312E3831332C342E3035362C342E3035320D0A090963302C322E
+ 3234312D312E3831352C342E3035332D342E3035362C342E303533632D322E32
+ 33362C302D342E3034392D312E3831322D342E3034392D342E3035334332362E
+ 3837312C31362E3232332C32382E3638342C31342E3430392C33302E39322C31
+ 342E3430397A222F3E0D0A093C706174682066696C6C3D222334353541363422
+ 20643D224D33382C36682D322E3735682D32322E35483130632D322E3230392C
+ 302D342C312E3739312D342C3476322E373576342E32333676372E3530396C37
+ 2E3032372C322E3033330D0A090963312E3238372D312E35392C332E3232392D
+ 322E3632362C352E3433342D322E36323663302E30372C302C302E3133352C30
+ 2E30322C302E3230342C302E3032316C332E3837362D352E33353563302D302E
+ 3033352D302E3030352D302E3037322D302E3030352D302E3130350D0A090963
+ 302D342E36332C332E3735352D382E3338382C382E3338372D382E3338386334
+ 2E3633332C302C382E3338362C332E3735372C382E3338362C382E3338366330
+ 2C342E3633332D332E3735332C382E3338372D382E3338362C382E3338370D0A
+ 0909632D302E3034342C302D302E3038372D302E3030362D302E3133322D302E
+ 3030376C2D352E33332C332E38373163302E3030322C302E30372C302E303231
+ 2C302E31342C302E3032312C302E32313163302C332E3837382D332E3134322C
+ 372E3032312D372E3032312C372E3032310D0A0909632D332E3539332C302D36
+ 2E35322D322E3730372D362E3933372D362E3138384C362C33302E3135387632
+ 2E35383376322E35303956333863302C322E3230392C312E3739312C342C342C
+ 3468322E37356832322E3548333863322E3230392C302C342D312E3739312C34
+ 2D34762D322E3735762D32322E355631300D0A09094334322C372E3739312C34
+ 302E3230392C362C33382C367A222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A
+ 0B0000007300740075006D0062006C006500750070006F006E00B60400003C3F
+ 786D6C2076657273696F6E3D22312E302220656E636F64696E673D227574662D
+ 38223F3E0D0A3C212D2D2047656E657261746F723A2041646F626520496C6C75
+ 73747261746F722031352E302E302C20535647204578706F727420506C75672D
+ 496E202E205356472056657273696F6E3A20362E3030204275696C6420302920
+ 202D2D3E0D0A3C21444F435459504520737667205055424C494320222D2F2F57
+ 33432F2F4454442053564720312E312F2F454E222022687474703A2F2F777777
+ 2E77332E6F72672F47726170686963732F5356472F312E312F4454442F737667
+ 31312E647464223E0D0A3C7376672076657273696F6E3D22312E31222020786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 20786D6C6E733A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F
+ 313939392F786C696E6B2220783D223070782220793D22307078220D0A092077
+ 696474683D223438707822206865696768743D2234387078222076696577426F
+ 783D223020302034382034382220656E61626C652D6261636B67726F756E643D
+ 226E6577203020302034382034382220786D6C3A73706163653D227072657365
+ 727665223E0D0A3C706174682066696C6C3D22234536344131392220643D224D
+ 32342E3030312C35632D31302E3439342C302D31392C382E3530362D31392C31
+ 3963302C31302E3439332C382E3530362C31392C31392C31396331302E343933
+ 2C302C31392D382E3530372C31392D31390D0A094334332E3030312C31332E35
+ 30362C33342E3439342C352C32342E3030312C357A222F3E0D0A3C673E0D0A09
+ 3C706174682066696C6C3D22234646464646462220643D224D32342E3030312C
+ 31394332332E3939382C31392C32342E3030342C31392C32342E3030312C3139
+ 632D302E3036322D302E3030342D312C302D312C3176372E3837364332322E39
+ 31362C32392E3838382C32312E3530342C33332C31372E3935392C33330D0A09
+ 09632D332E3630372C302D342E3935382D332E3036352D342E3935382D342E39
+ 35385632346834763463302E3033382C302E3730392C302E3632392C312C312C
+ 3163302E3636352C302C302E3937322D302E3336312C312D31762D382E313234
+ 63302D322E30312C312E3333322D352C352D350D0A090963302E3034352C302C
+ 302E3038362C302E3030362C302E3133312C302E30303763302C302C342E3836
+ 392D302E3030392C342E3836392C352E31313763302C312E3130342D302E3839
+ 362C312E3837362D322C312E383736732D322D302E3737312D322D312E383736
+ 0D0A09094332352E3030312C31392E3132342C32342E3034312C31392E303033
+ 2C32342E3030312C31397A204D33352E3030312C32372E38373663302C322E30
+ 312D312E3333312C352E3132342D352C352E313234732D352D332E3131342D35
+ 2D352E313234762D332E3433390D0A090963302E3631342C302E3237322C312E
+ 3238352C302E3433392C322C302E34333963302E3731322C302C312E3338362D
+ 302E3135342C322D302E34323456323863302E3033382C312C302E3636332C31
+ 2C312C3163302E3234372C302C312C302C312D31762D3468345632372E383736
+ 7A222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A070000007300750070007000
+ 6F0072007400060200003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
+ 66696C6C3D22233630374438422220643D224D34342E372C31314C33362C3139
+ 2E3663302C302D322E362C302D352E322D322E36732D322E362D352E322D322E
+ 362D352E326C382E372D382E37632D342E392D312E322D31302E382C302E342D
+ 31342E342C3420632D352E342C352E342D302E362C31322E332D322C31332E37
+ 4331322E392C32382E372C352E312C33342E372C342E392C3335632D322E332C
+ 322E332D322E342C362D302E322C382E3263322E322C322E322C352E392C322E
+ 312C382E322D302E3263302E332D302E332C362E372D382E342C31342E322D31
+ 352E392063312E342D312E342C382C332E372C31332E362D312E384334342E32
+ 2C32312E372C34352E392C31352E392C34342E372C31317A204D392E342C3431
+ 2E31632D312E342C302D322E352D312E312D322E352D322E3543362E392C3337
+ 2E312C382C33362C392E342C33362063312E342C302C322E352C312E312C322E
+ 352C322E354331312E392C33392E392C31302E382C34312E312C392E342C3431
+ 2E317A222F3E0D0A3C2F7376673E0D0A06000000730075007200760065007900
+ A10300003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
+ 233435354136342220643D224D33362C3448323663302C312E312D302E392C32
+ 2D322C32732D322D302E392D322D3248313243392E382C342C382C352E382C38
+ 2C3876333263302C322E322C312E382C342C342C3468323463322E322C302C34
+ 2D312E382C342D345638204334302C352E382C33382E322C342C33362C347A22
+ 2F3E0D0A202020203C706174682066696C6C3D22236666662220643D224D3336
+ 2C3431483132632D302E362C302D312D302E342D312D31563863302D302E362C
+ 302E342D312C312D3168323463302E362C302C312C302E342C312C3176333243
+ 33372C34302E362C33362E362C34312C33362C34317A222F3E0D0A202020203C
+ 672066696C6C3D2223393041344145223E0D0A20202020202020203C70617468
+ 20643D224D32362C3463302C312E312D302E392C322D322C32732D322D302E39
+ 2D322D32682D37763463302C312E312C302E392C322C322C3268313463312E31
+ 2C302C322D302E392C322D3256344832367A222F3E0D0A20202020202020203C
+ 7061746820643D224D32342C30632D322E322C302D342C312E382D342C347331
+ 2E382C342C342C3473342D312E382C342D345332362E322C302C32342C307A20
+ 4D32342C36632D312E312C302D322D302E392D322D3273302E392D322C322D32
+ 73322C302E392C322C32205332352E312C362C32342C367A222F3E0D0A202020
+ 203C2F673E0D0A202020203C672066696C6C3D2223434644384443223E0D0A20
+ 202020202020203C7265637420783D2232312220793D22323022207769647468
+ 3D22313222206865696768743D2232222F3E0D0A20202020202020203C726563
+ 7420783D2231352220793D223139222077696474683D22342220686569676874
+ 3D2234222F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D2223
+ 303341394634223E0D0A20202020202020203C7265637420783D223231222079
+ 3D223239222077696474683D22313222206865696768743D2232222F3E0D0A20
+ 202020202020203C7265637420783D2231352220793D22323822207769647468
+ 3D223422206865696768743D2234222F3E0D0A202020203C2F673E0D0A3C2F73
+ 76673E0D0A0D0000007300770069007400630068005F00630061006D00650072
+ 006100F80200003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C672066696C6C3D22
+ 23354533354231223E0D0A20202020202020203C7061746820643D224D33332E
+ 392C31322E314831342E324C31372E362C3763302E342D302E362C312D302E39
+ 2C312E372D302E3968392E3663302E372C302C312E332C302E332C312E372C30
+ 2E394C33332E392C31322E317A222F3E0D0A20202020202020203C7061746820
+ 643D224D31342C3131483856392E3243382C382E352C382E352C382C392E322C
+ 3868332E364331332E352C382C31342C382E352C31342C392E325631317A222F
+ 3E0D0A20202020202020203C7061746820643D224D34302C34324838632D322E
+ 322C302D342D312E382D342D3456313463302D322E322C312E382D342C342D34
+ 68333263322E322C302C342C312E382C342C347632344334342C34302E322C34
+ 322E322C34322C34302C34327A222F3E0D0A202020203C2F673E0D0A20202020
+ 3C706174682066696C6C3D22234538454146362220643D224D33342C32356330
+ 2D352E352D342E352D31302D31302D3130632D322E342C302D342E362C302E38
+ 2D362E332C322E326C312E322C312E3663312E342D312E312C332E312D312E38
+ 2C352E312D312E3863342E342C302C382C332E362C382C38682D332E35206C34
+ 2E352C352E366C342E352D352E364833347A222F3E0D0A202020203C70617468
+ 2066696C6C3D22234538454146362220643D224D32392E312C33312E32433237
+ 2E372C33322E332C32352E392C33332C32342C3333632D342E342C302D382D33
+ 2E362D382D3868332E354C31352C31392E344C31302E352C323548313463302C
+ 352E352C342E352C31302C31302C31302063322E342C302C342E362D302E382C
+ 362E332D322E324C32392E312C33312E327A222F3E0D0A3C2F7376673E0D0A0B
+ 000000730079006E006300680072006F006E0069007A006500700200003C7376
+ 672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E
+ 77332E6F72672F323030302F737667222076696577426F783D22302030203438
+ 2034382220656E61626C652D6261636B67726F756E643D226E65772030203020
+ 3438203438223E0D0A202020203C706174682066696C6C3D2223464636463030
+ 2220643D224D33382E372C31312E396C2D332E312C322E3563322E322C322E37
+ 2C332E342C362E312C332E342C392E3563302C382E332D362E372C31352D3135
+ 2C3135632D302E392C302D312E392D302E312D322E382D302E336C2D302E372C
+ 332E392063312E322C302E322C322E342C302E332C332E352C302E336331302E
+ 352C302C31392D382E352C31392D31394334332C31392E362C34312E352C3135
+ 2E332C33382E372C31312E397A222F3E0D0A202020203C706F6C79676F6E2066
+ 696C6C3D22234646364630322220706F696E74733D2233312C382034322E392C
+ 392E362033332E312C31392E34222F3E0D0A202020203C706174682066696C6C
+ 3D22234646364630302220643D224D32342C354331332E352C352C352C31332E
+ 352C352C323463302C342E362C312E362C392C342E362C31322E346C332D322E
+ 364331302E332C33312E312C392C32372E362C392C323463302D382E332C362E
+ 372D31352C31352D31352063302E392C302C312E392C302E312C322E382C302E
+ 336C302E372D332E394332362E342C352E312C32352E322C352C32342C357A22
+ 2F3E0D0A202020203C706F6C79676F6E2066696C6C3D22234646364630322220
+ 706F696E74733D2231372C343020352E312C33382E342031342E392C32382E36
+ 222F3E0D0A3C2F7376673E0D0A0E0000007400610062006C00650074005F0061
+ 006E00640072006F00690064009E0100003C7376672076657273696F6E3D2231
+ 2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F
+ 737667222076696577426F783D223020302034382034382220656E61626C652D
+ 6261636B67726F756E643D226E657720302030203438203438223E0D0A202020
+ 203C706174682066696C6C3D22233337343734462220643D224D382C34315637
+ 63302D322E322C312E382D342C342D3468323463322E322C302C342C312E382C
+ 342C3476333463302C322E322D312E382C342D342C3448313243392E382C3435
+ 2C382C34332E322C382C34317A222F3E0D0A202020203C706174682066696C6C
+ 3D22234242444546422220643D224D33362C36483132632D302E362C302D312C
+ 302E342D312C3176333163302C302E362C302E342C312C312C3168323463302E
+ 362C302C312D302E342C312D3156374333372C362E342C33362E362C362C3336
+ 2C367A222F3E0D0A202020203C7265637420783D2232312220793D2234312220
+ 66696C6C3D2223373839303943222077696474683D223622206865696768743D
+ 2232222F3E0D0A3C2F7376673E0D0A08000000740065006D0070006C00610074
+ 0065007F0100003C7376672076657273696F6E3D22312220786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F73766722207669657742
+ 6F783D223020302034382034382220656E61626C652D6261636B67726F756E64
+ 3D226E657720302030203438203438223E0D0A202020203C7265637420783D22
+ 342220793D2237222066696C6C3D2223424244454642222077696474683D2234
+ 3022206865696768743D223334222F3E0D0A202020203C7265637420783D2239
+ 2220793D223132222066696C6C3D2223334635314235222077696474683D2233
+ 3022206865696768743D2235222F3E0D0A202020203C672066696C6C3D222332
+ 3139364633223E0D0A20202020202020203C7265637420783D22392220793D22
+ 3231222077696474683D22313322206865696768743D223136222F3E0D0A2020
+ 2020202020203C7265637420783D2232362220793D223231222077696474683D
+ 22313322206865696768743D223136222F3E0D0A202020203C2F673E0D0A3C2F
+ 7376673E0D0A08000000740069006D0065006C0069006E006500520300003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C706174682066696C6C3D22233346353142
+ 352220643D224D34322C32394832302E38632D302E352C302D312D302E322D31
+ 2E342D302E366C2D332E372D332E37632D302E342D302E342D302E342D312C30
+ 2D312E346C332E372D332E3763302E342D302E342C302E392D302E362C312E34
+ 2D302E364834322063302E362C302C312C302E342C312C3176384334332C3238
+ 2E362C34322E362C32392C34322C32397A222F3E0D0A202020203C7265637420
+ 783D22392220793D2236222066696C6C3D222343464438444322207769647468
+ 3D223222206865696768743D223336222F3E0D0A202020203C672066696C6C3D
+ 2223393041344145223E0D0A20202020202020203C636972636C652063783D22
+ 3130222063793D2231302220723D2233222F3E0D0A20202020202020203C6369
+ 72636C652063783D223130222063793D2232342220723D2233222F3E0D0A2020
+ 2020202020203C636972636C652063783D223130222063793D2233382220723D
+ 2233222F3E0D0A202020203C2F673E0D0A202020203C706174682066696C6C3D
+ 22233434384146462220643D224D33342C34334832302E38632D302E352C302D
+ 312D302E322D312E342D302E366C2D332E372D332E37632D302E342D302E342D
+ 302E342D312C302D312E346C332E372D332E3763302E342D302E342C302E392D
+ 302E362C312E342D302E364833342063302E362C302C312C302E342C312C3176
+ 384333352C34322E362C33342E362C34332C33342C34337A222F3E0D0A202020
+ 203C706174682066696C6C3D22233030424344342220643D224D33352C313548
+ 32302E38632D302E352C302D312D302E322D312E342D302E366C2D332E372D33
+ 2E37632D302E342D302E342D302E342D312C302D312E346C332E372D332E3743
+ 31392E382C352E322C32302E332C352C32302E382C354833352063302E362C30
+ 2C312C302E342C312C3176384333362C31342E362C33352E362C31352C33352C
+ 31357A222F3E0D0A3C2F7376673E0D0A0900000074006F0064006F005F006C00
+ 6900730074004C0200003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C672066696C
+ 6C3D2223334635314235223E0D0A20202020202020203C706F6C79676F6E2070
+ 6F696E74733D2231372E382C31382E312031302E342C32352E3420362E322C32
+ 312E3320342C32332E352031302E342C32392E392032302C32302E33222F3E0D
+ 0A20202020202020203C706F6C79676F6E20706F696E74733D2231372E382C35
+ 2E312031302E342C31322E3420362E322C382E3320342C31302E352031302E34
+ 2C31362E392032302C372E33222F3E0D0A20202020202020203C706F6C79676F
+ 6E20706F696E74733D2231372E382C33312E312031302E342C33382E3420362E
+ 322C33342E3320342C33362E352031302E342C34322E392032302C33332E3322
+ 2F3E0D0A202020203C2F673E0D0A202020203C672066696C6C3D222339304341
+ 4639223E0D0A20202020202020203C7265637420783D2232342220793D223232
+ 222077696474683D22323022206865696768743D2234222F3E0D0A2020202020
+ 2020203C7265637420783D2232342220793D2239222077696474683D22323022
+ 206865696768743D2234222F3E0D0A20202020202020203C7265637420783D22
+ 32342220793D223335222077696474683D22323022206865696768743D223422
+ 2F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A1600000074006F007500
+ 63006800730063007200650065006E005F0073006D0061007200740070006800
+ 6F006E006500920200003C7376672076657273696F6E3D22312220786D6C6E73
+ 3D22687474703A2F2F7777772E77332E6F72672F323030302F73766722207669
+ 6577426F783D223020302034382034382220656E61626C652D6261636B67726F
+ 756E643D226E657720302030203438203438223E0D0A202020203C7061746820
+ 66696C6C3D22234533383933392220643D224D31322C3430563863302D322E32
+ 2C312E382D342C342D3468313663322E322C302C342C312E382C342C34763332
+ 63302C322E322D312E382C342D342C344831364331332E382C34342C31322C34
+ 322E322C31322C34307A222F3E0D0A202020203C706174682066696C6C3D2223
+ 4646463345302220643D224D33322C37483136632D302E362C302D312C302E34
+ 2D312C3176323963302C302E362C302E342C312C312C3168313663302E362C30
+ 2C312D302E342C312D3156384333332C372E342C33322E362C372C33322C377A
+ 222F3E0D0A202020203C636972636C652066696C6C3D22234136363432412220
+ 63783D223234222063793D2234312220723D22312E35222F3E0D0A202020203C
+ 636972636C652066696C6C3D2223453931453633222063783D22323422206379
+ 3D2232332220723D2232222F3E0D0A202020203C636972636C652066696C6C3D
+ 226E6F6E6522207374726F6B653D222346343846423122207374726F6B652D77
+ 696474683D223222207374726F6B652D6D697465726C696D69743D2231302220
+ 63783D223234222063793D2232332220723D2234222F3E0D0A202020203C6369
+ 72636C652066696C6C3D226E6F6E6522207374726F6B653D2223463842424430
+ 22207374726F6B652D6D697465726C696D69743D223130222063783D22323422
+ 2063793D2232332220723D22362E35222F3E0D0A3C2F7376673E0D0A09000000
+ 740072006100640065006D00610072006B00930100003C737667207665727369
+ 6F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F737667222076696577426F783D223020302034382034382220656E
+ 61626C652D6261636B67726F756E643D226E657720302030203438203438223E
+ 0D0A202020203C636972636C652066696C6C3D2223394332374230222063783D
+ 223234222063793D2232342220723D223231222F3E0D0A202020203C67206669
+ 6C6C3D2223453142454537223E0D0A20202020202020203C7061746820643D22
+ 4D32302E362C31382E35682D342E327631342E32682D332E355631382E354838
+ 2E37762D322E396831312E395631382E357A222F3E0D0A20202020202020203C
+ 7061746820643D224D32372E312C31352E364C33302E332C32386C332E322D31
+ 322E3468342E357631372E31682D332E35762D342E366C302E332D372E316C2D
+ 332E342C31312E38682D322E344C32352E372C32316C302E332C372E3176342E
+ 36682D332E355631352E36204832372E317A222F3E0D0A202020203C2F673E0D
+ 0A3C2F7376673E0D0A0E00000074007200650065005F00730074007200750063
+ 007400750072006500A00100003C7376672076657273696F6E3D22312220786D
+ 6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F73766722
+ 2076696577426F783D223020302034382034382220656E61626C652D6261636B
+ 67726F756E643D226E657720302030203438203438223E0D0A202020203C706F
+ 6C79676F6E2066696C6C3D22233930434146392220706F696E74733D2233362E
+ 392C31332E382033352E312C31302E3220372E352C32342033352E312C33372E
+ 382033362E392C33342E322031362E352C3234222F3E0D0A202020203C726563
+ 7420783D22362220793D223138222066696C6C3D222344383142363022207769
+ 6474683D22313222206865696768743D223132222F3E0D0A202020203C672066
+ 696C6C3D2223323139364633223E0D0A20202020202020203C7265637420783D
+ 2233302220793D2236222077696474683D22313222206865696768743D223132
+ 222F3E0D0A20202020202020203C7265637420783D2233302220793D22333022
+ 2077696474683D22313222206865696768743D223132222F3E0D0A202020203C
+ 2F673E0D0A3C2F7376673E0D0A0F000000740077006F005F0073006D00610072
+ 007400700068006F006E0065007300C80200003C7376672076657273696F6E3D
+ 22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030
+ 302F737667222076696577426F783D223020302034382034382220656E61626C
+ 652D6261636B67726F756E643D226E657720302030203438203438223E0D0A20
+ 2020203C706174682066696C6C3D22233337343734462220643D224D362C3336
+ 563863302D322E322C312E382D342C342D3468313463322E322C302C342C312E
+ 382C342C3476323863302C322E322D312E382C342D342C3448313043372E382C
+ 34302C362C33382E322C362C33367A222F3E0D0A202020203C70617468206669
+ 6C6C3D22234242444546422220643D224D32342C3748313043392E342C372C39
+ 2C372E342C392C3876323563302C302E362C302E342C312C312C316831346330
+ 2E362C302C312D302E342C312D3156384332352C372E342C32342E362C372C32
+ 342C377A222F3E0D0A202020203C7265637420783D2231342220793D22333622
+ 2066696C6C3D2223373839303943222077696474683D22362220686569676874
+ 3D2232222F3E0D0A202020203C706174682066696C6C3D222345333839333922
+ 20643D224D32302C343056313263302D322E322C312E382D342C342D34683134
+ 63322E322C302C342C312E382C342C3476323863302C322E322D312E382C342D
+ 342C344832344332312E382C34342C32302C34322E322C32302C34307A222F3E
+ 0D0A202020203C706174682066696C6C3D22234646463345302220643D224D33
+ 382C3131483234632D302E362C302D312C302E342D312C3176323563302C302E
+ 362C302E342C312C312C3168313463302E362C302C312D302E342C312D315631
+ 324333392C31312E342C33382E362C31312C33382C31317A222F3E0D0A202020
+ 203C636972636C652066696C6C3D2223413636343241222063783D2233312220
+ 63793D2234312220723D22312E35222F3E0D0A3C2F7376673E0D0A0400000075
+ 006E0064006F002F0100003C7376672076657273696F6E3D22312220786D6C6E
+ 733D22687474703A2F2F7777772E77332E6F72672F323030302F737667222076
+ 696577426F783D223020302034382034382220656E61626C652D6261636B6772
+ 6F756E643D226E657720302030203438203438223E0D0A202020203C67206669
+ 6C6C3D2223303042434434223E0D0A20202020202020203C706F6C79676F6E20
+ 706F696E74733D22352C31382031392C362E332031392C32392E37222F3E0D0A
+ 20202020202020203C7061746820643D224D32382C3134483136763868313263
+ 322E382C302C352C322E322C352C35732D322E322C352D352C35682D33763868
+ 3363372E322C302C31332D352E382C31332D31335333352E322C31342C32382C
+ 31347A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A060000007500
+ 6E006C006F0063006B00940100003C7376672076657273696F6E3D2231222078
+ 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
+ 222076696577426F783D223020302034382034382220656E61626C652D626163
+ 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C70
+ 6174682066696C6C3D22233432343234322220643D224D32342C34632D352E35
+ 2C302D31302C342E352D31302C313076346834762D3463302D332E332C322E37
+ 2D362C362D3673362C322E372C362C3668344333342C382E352C32392E352C34
+ 2C32342C347A222F3E0D0A202020203C706174682066696C6C3D222346423843
+ 30302220643D224D33362C3434483132632D322E322C302D342D312E382D342D
+ 3456323263302D322E322C312E382D342C342D3468323463322E322C302C342C
+ 312E382C342C347631384334302C34322E322C33382E322C34342C33362C3434
+ 7A222F3E0D0A202020203C636972636C652066696C6C3D222343373645303022
+ 2063783D223234222063793D2233312220723D2233222F3E0D0A3C2F7376673E
+ 0D0A0200000075007000FD0000003C7376672076657273696F6E3D2231222078
+ 6D6C6E733D22687474703A2F2F7777772E77332E6F72672F323030302F737667
+ 222076696577426F783D223020302034382034382220656E61626C652D626163
+ 6B67726F756E643D226E657720302030203438203438223E0D0A202020203C67
+ 2066696C6C3D2223334635314235223E0D0A20202020202020203C706F6C7967
+ 6F6E20706F696E74733D2232342C342033352E372C31382031322E332C313822
+ 2F3E0D0A20202020202020203C7265637420783D2232302220793D2231352220
+ 77696474683D223822206865696768743D223237222F3E0D0A202020203C2F67
+ 3E0D0A3C2F7376673E0D0A07000000750070005F006C00650066007400100100
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22
+ 233346353142352220706F696E74733D22342C31392031382C33302E37203138
+ 2C372E33222F3E0D0A202020203C706174682066696C6C3D2223334635314235
+ 2220643D224D34322C3237763133682D3856323763302D322E322D312E382D34
+ 2D342D34483133762D386831374333362E362C31352C34322C32302E342C3432
+ 2C32377A222F3E0D0A3C2F7376673E0D0A08000000750070005F007200690067
+ 0068007400A60100003C7376672076657273696F6E3D22312220786D6C6E733D
+ 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
+ 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
+ 6E643D226E657720302030203438203438223E0D0A202020203C706F6C79676F
+ 6E2066696C6C3D22233346353142352220706F696E74733D2234342C31392033
+ 302C33302E372033302C372E33222F3E0D0A202020203C706174682066696C6C
+ 3D22233346353142352220643D224D362C3237763133683856323763302D322E
+ 322C312E382D342C342D34683137762D384831384331312E342C31352C362C32
+ 302E342C362C32377A222F3E0D0A202020203C706F6C79676F6E2066696C6C3D
+ 22233346353142352220706F696E74733D2234342C31392033302C33302E3720
+ 33302C372E33222F3E0D0A202020203C706174682066696C6C3D222333463531
+ 42352220643D224D362C3237763133683856323763302D322E322C312E382D34
+ 2C342D34683137762D384831384331312E342C31352C362C32302E342C362C32
+ 377A222F3E0D0A3C2F7376673E0D0A06000000750070006C006F006100640097
+ 0100003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
+ 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
+ 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
+ 7720302030203438203438223E0D0A202020203C672066696C6C3D2223303039
+ 363838223E0D0A20202020202020203C706F6C79676F6E20706F696E74733D22
+ 32342C31302E392033352C32342031332C3234222F3E0D0A2020202020202020
+ 3C7265637420783D2232302220793D223430222077696474683D223822206865
+ 696768743D2234222F3E0D0A20202020202020203C7265637420783D22323022
+ 20793D223334222077696474683D223822206865696768743D2234222F3E0D0A
+ 20202020202020203C7265637420783D2232302220793D223231222077696474
+ 683D223822206865696768743D223131222F3E0D0A20202020202020203C7265
+ 637420783D22362220793D2234222077696474683D2233362220686569676874
+ 3D2234222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A030000007500
+ 73006200970800003C3F786D6C2076657273696F6E3D22312E302220656E636F
+ 64696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F723A20
+ 41646F626520496C6C7573747261746F722031352E302E302C20535647204578
+ 706F727420506C75672D496E202E205356472056657273696F6E3A20362E3030
+ 204275696C6420302920202D2D3E0D0A3C21444F435459504520737667205055
+ 424C494320222D2F2F5733432F2F4454442053564720312E312F2F454E222022
+ 687474703A2F2F7777772E77332E6F72672F47726170686963732F5356472F31
+ 2E312F4454442F73766731312E647464223E0D0A3C7376672076657273696F6E
+ 3D22312E31222020786D6C6E733D22687474703A2F2F7777772E77332E6F7267
+ 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77
+ 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D
+ 22307078220D0A092077696474683D223438707822206865696768743D223438
+ 7078222076696577426F783D223020302034382034382220656E61626C652D62
+ 61636B67726F756E643D226E6577203020302034382034382220786D6C3A7370
+ 6163653D227072657365727665223E0D0A3C706174682066696C6C3D22233135
+ 363543302220643D224D33382E3730312C32342E333535682D322E3138396C2D
+ 302E3436372C322E32363563302C302C322E3237372C302C322E35312C306330
+ 2E3233332C302C312E3534352D302E3136372C312E3534352D312E3236370D0A
+ 094334302E312C32342E3236362C33382E3730312C32342E3335352C33382E37
+ 30312C32342E3335357A204D33392E3532312C32302E333339682D322E31356C
+ 2D302E3337342C312E37393663302C302C322E3136312C302C322E3333372C30
+ 63302E3138382C302C312E3131332D302E3134362C312E3131332D312E303036
+ 0D0A094334302E3434372C32302E3237312C33392E3532312C32302E3333392C
+ 33392E3532312C32302E3333397A204D34342E3036342C32332E31303963302C
+ 302C312E3433362D302E3734332C312E3433362D332E30393363302D332E3731
+ 352D342E3337372D332E3531362D342E3337372D332E353136682D322E383635
+ 0D0A096C302E3637342D3363302C302D31322E342C302D32302E3937312C3063
+ 2D392E3334342C302D31322E3135382C362E3737342D31322E3135382C362E37
+ 37344C352E3733362C32302E3548322E3534376C2D312E3034372C3668332E33
+ 376C302E3030312C302E3134330D0A0963302C302D302E3238352C362E383537
+ 2C31302E3436332C362E3835376331302E3734372C302C31392E3034322C302C
+ 31392E3034322C306C302E3637392D3363302E38342C302C322E322C302C342E
+ 3338392C3063342E3732392C302C352E3539312D332E3335342C352E3539312D
+ 342E390D0A094334352E3033322C32332E3833382C34342E3036342C32332E31
+ 30392C34342E3036342C32332E3130397A222F3E0D0A3C706174682066696C6C
+ 3D22234646464646462220643D224D33382E3730312C32342E333535682D322E
+ 3138396C2D302E3436372C322E32363563302C302C322E3237372C302C322E35
+ 312C3063302E3233332C302C312E3534352D302E3136372C312E3534352D312E
+ 3236370D0A094334302E312C32342E3236362C33382E3730312C32342E333535
+ 2C33382E3730312C32342E3335357A204D33392E3532312C32302E333339682D
+ 322E31356C2D302E3337342C312E37393663302C302C322E3136312C302C322E
+ 3333372C3063302E3138382C302C312E3131332D302E3134362C312E3131332D
+ 312E3030360D0A094334302E3434372C32302E3237312C33392E3532312C3230
+ 2E3333392C33392E3532312C32302E3333397A204D31342E3032322C32392E35
+ 632D352E3330362C302D352E3330362D332E3632342D352E3233382D332E3938
+ 3663302E3036392D302E3336332C312E3738392D382E3031342C312E3738392D
+ 382E3031340D0A0968332E38346C2D312E3335382C362E33353463302C302D30
+ 2E3937312C322E3732382C312E3235312C322E37323863322E3038312C302C32
+ 2E3333362D322E3533352C322E3333362D322E3533356C312E3436352D362E35
+ 343368332E3833396C2D312E3538322C362E3937390D0A094332302E3336352C
+ 32342E34382C32302E3235382C32392E352C31342E3032322C32392E357A204D
+ 32362E3039382C32392E353231632D322E3637342C302D342E3935382D312E32
+ 36322D342E3835362D342E313468332E34333863302C302E3537362C302E3038
+ 362C312E3632372C312E3633332C312E3632370D0A0963302E3632372C302C31
+ 2E3638382D302E3236362C312E3638382D312E31333363302D312E3633312D35
+ 2E3539372D302E3738352D352E3539372D342E353763302D322E3036332C312E
+ 3839392D332E3738352C342E3938392D332E37383563342E3937362C302C342E
+ 3631332C332E3734392C342E3631332C332E3734390D0A09682D332E33363963
+ 302D312E3034342D302E3636342D312E3230342D312E3436332D312E32303463
+ 2D302E382C302D312E3337322C302E3334332D312E3337322C302E3934346330
+ 2C312E3437312C352E3633342C302E3435362C352E3633342C342E3533310D0A
+ 094333312E3433362C32372E3330352C33302E3031322C32392E3532312C3236
+ 2E3039382C32392E3532317A204D33392E3336362C32392E35632D302E343139
+ 2C302D372E3531352C302D372E3531352C306C322E3630312D313263302C302C
+ 352E3434342C302C362E3535362C300D0A0963312E3131332C302C332E34332C
+ 302E3233342C332E34332C322E35343263302C322E3630322D322E3232372C33
+ 2E3031332D322E3232372C332E30313373312E3736342C302E3430372C312E37
+ 36342C322E3437334334332E3937352C32392E3435372C33392E3737352C3239
+ 2E352C33392E3336362C32392E357A220D0A092F3E0D0A3C2F7376673E0D0A0A
+ 00000076006900640065006F005F00630061006C006C002A0100003C73766720
+ 76657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E7733
+ 2E6F72672F323030302F737667222076696577426F783D223020302034382034
+ 382220656E61626C652D6261636B67726F756E643D226E657720302030203438
+ 203438223E0D0A202020203C706174682066696C6C3D22233443414635302220
+ 643D224D382C313268323263322E322C302C342C312E382C342C347631366330
+ 2C322E322D312E382C342D342C344838632D322E322C302D342D312E382D342D
+ 3456313643342C31332E382C352E382C31322C382C31327A222F3E0D0A202020
+ 203C706F6C79676F6E2066696C6C3D22233338384533432220706F696E74733D
+ 2234342C33352033342C32392033342C31392034342C3133222F3E0D0A3C2F73
+ 76673E0D0A0A00000076006900640065006F005F00660069006C0065002D0100
+ 003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F
+ 7777772E77332E6F72672F323030302F737667222076696577426F783D223020
+ 302034382034382220656E61626C652D6261636B67726F756E643D226E657720
+ 302030203438203438223E0D0A202020203C706F6C79676F6E2066696C6C3D22
+ 233930434146392220706F696E74733D2234302C343520382C343520382C3320
+ 33302C332034302C3133222F3E0D0A202020203C706F6C79676F6E2066696C6C
+ 3D22234531463546452220706F696E74733D2233382E352C31342032392C3134
+ 2032392C342E35222F3E0D0A202020203C706F6C79676F6E2066696C6C3D2223
+ 3139373644322220706F696E74733D2233302C32382032302C32322032302C33
+ 34222F3E0D0A3C2F7376673E0D0A0F00000076006900640065006F005F007000
+ 72006F006A006500630074006F007200E80500003C7376672076657273696F6E
+ 3D22312220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230
+ 30302F737667222076696577426F783D223020302034382034382220656E6162
+ 6C652D6261636B67726F756E643D226E657720302030203438203438223E0D0A
+ 202020203C672066696C6C3D2223353436453741223E0D0A2020202020202020
+ 3C7265637420783D22352220793D223334222077696474683D22362220686569
+ 6768743D2233222F3E0D0A20202020202020203C7265637420783D2233372220
+ 793D223334222077696474683D223622206865696768743D2233222F3E0D0A20
+ 2020203C2F673E0D0A202020203C706174682066696C6C3D2223373839303943
+ 2220643D224D34342C33354834632D322E322C302D342D312E382D342D345631
+ 3763302D322E322C312E382D342C342D3468343063322E322C302C342C312E38
+ 2C342C347631344334382C33332E322C34362E322C33352C34342C33357A222F
+ 3E0D0A202020203C672066696C6C3D2223333734373446223E0D0A2020202020
+ 2020203C7265637420783D22352220793D223139222077696474683D22322220
+ 6865696768743D2232222F3E0D0A20202020202020203C7265637420783D2235
+ 2220793D223233222077696474683D223222206865696768743D2232222F3E0D
+ 0A20202020202020203C7265637420783D22352220793D223237222077696474
+ 683D223222206865696768743D2232222F3E0D0A20202020202020203C726563
+ 7420783D22392220793D223139222077696474683D223222206865696768743D
+ 2232222F3E0D0A20202020202020203C7265637420783D22392220793D223233
+ 222077696474683D223222206865696768743D2232222F3E0D0A202020202020
+ 20203C7265637420783D22392220793D223237222077696474683D2232222068
+ 65696768743D2232222F3E0D0A20202020202020203C7265637420783D223133
+ 2220793D223139222077696474683D223222206865696768743D2232222F3E0D
+ 0A20202020202020203C7265637420783D2231332220793D2232332220776964
+ 74683D223222206865696768743D2232222F3E0D0A20202020202020203C7265
+ 637420783D2231332220793D223237222077696474683D223222206865696768
+ 743D2232222F3E0D0A20202020202020203C7265637420783D2231372220793D
+ 223139222077696474683D223222206865696768743D2232222F3E0D0A202020
+ 20202020203C7265637420783D2231372220793D223233222077696474683D22
+ 3222206865696768743D2232222F3E0D0A20202020202020203C726563742078
+ 3D2231372220793D223237222077696474683D223222206865696768743D2232
+ 222F3E0D0A20202020202020203C7265637420783D2232312220793D22313922
+ 2077696474683D223222206865696768743D2232222F3E0D0A20202020202020
+ 203C7265637420783D2232312220793D223233222077696474683D2232222068
+ 65696768743D2232222F3E0D0A20202020202020203C7265637420783D223231
+ 2220793D223237222077696474683D223222206865696768743D2232222F3E0D
+ 0A202020203C2F673E0D0A202020203C636972636C652066696C6C3D22233337
+ 34373446222063783D223337222063793D2232342220723D2238222F3E0D0A20
+ 2020203C636972636C652066696C6C3D2223613066222063783D223337222063
+ 793D2232342220723D2236222F3E0D0A202020203C706174682066696C6C3D22
+ 234541383046432220643D224D34302E372C32312E37632D312D312E312D322E
+ 332D312E372D332E372D312E37732D322E382C302E362D332E372C312E37632D
+ 302E342C302E342D302E332C312C302E312C312E3463302E342C302E342C312C
+ 302E332C312E342D302E312063312E322D312E332C332E332D312E332C342E35
+ 2C3063302E322C302E322C302E352C302E332C302E372C302E3363302E322C30
+ 2C302E352D302E312C302E372D302E334334312E312C32322E372C34312E312C
+ 32322E312C34302E372C32312E377A222F3E0D0A3C2F7376673E0D0A0C000000
+ 76006900650077005F00640065007400610069006C007300790200003C737667
+ 2076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777772E77
+ 332E6F72672F323030302F737667222076696577426F783D2230203020343820
+ 34382220656E61626C652D6261636B67726F756E643D226E6577203020302034
+ 38203438223E0D0A202020203C7265637420783D22372220793D223422206669
+ 6C6C3D2223424244454642222077696474683D22333422206865696768743D22
+ 3430222F3E0D0A202020203C672066696C6C3D2223323139364633223E0D0A20
+ 202020202020203C7265637420783D2231332220793D22323622207769647468
+ 3D223422206865696768743D2234222F3E0D0A20202020202020203C72656374
+ 20783D2231332220793D223138222077696474683D223422206865696768743D
+ 2234222F3E0D0A20202020202020203C7265637420783D2231332220793D2233
+ 34222077696474683D223422206865696768743D2234222F3E0D0A2020202020
+ 2020203C7265637420783D2231332220793D223130222077696474683D223422
+ 206865696768743D2234222F3E0D0A20202020202020203C7265637420783D22
+ 32312220793D223236222077696474683D22313422206865696768743D223422
+ 2F3E0D0A20202020202020203C7265637420783D2232312220793D2231382220
+ 77696474683D22313422206865696768743D2234222F3E0D0A20202020202020
+ 203C7265637420783D2232312220793D223334222077696474683D2231342220
+ 6865696768743D2234222F3E0D0A20202020202020203C7265637420783D2232
+ 312220793D223130222077696474683D22313422206865696768743D2234222F
+ 3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A030000007600690070003A
+ 0200003C7376672076657273696F6E3D22312220786D6C6E733D22687474703A
+ 2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D22
+ 3020302034382034382220656E61626C652D6261636B67726F756E643D226E65
+ 7720302030203438203438223E0D0A202020203C706174682066696C6C3D2223
+ 3838304534462220643D224D33382C3433483130632D322E322C302D342D312E
+ 382D342D3456313163302D322E322C312E382D342C342D3468323863322E322C
+ 302C342C312E382C342C347632384334322C34312E322C34302E322C34332C33
+ 382C34337A222F3E0D0A202020203C672066696C6C3D2223464644353446223E
+ 0D0A20202020202020203C7061746820643D224D31352E392C32386C322E312D
+ 392E3168322E386C2D332E362C31322E36682D322E364C31312C31382E396832
+ 2E384C31352E392C32387A222F3E0D0A20202020202020203C7061746820643D
+ 224D32352E362C33312E35682D322E355631382E3968322E355633312E357A22
+ 2F3E0D0A20202020202020203C7061746820643D224D33312E322C32372E3176
+ 342E34682D322E355631382E3968342E3363332E372C302C342E312C332E342C
+ 342E312C342E3263302C312E322D302E352C342D342E312C344833312E327A20
+ 4D33312E322C32342E3968312E372063312E332C302C312E352D312E312C312E
+ 352D312E3963302D312E362D302E392D322E312D312E352D322E31682D312E37
+ 5632342E397A222F3E0D0A202020203C2F673E0D0A3C2F7376673E0D0A030000
+ 0076006C006300C80600003C3F786D6C2076657273696F6E3D22312E30222065
+ 6E636F64696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F
+ 723A2041646F626520496C6C7573747261746F722031352E302E302C20535647
+ 204578706F727420506C75672D496E202E205356472056657273696F6E3A2036
+ 2E3030204275696C6420302920202D2D3E0D0A3C21444F435459504520737667
+ 205055424C494320222D2F2F5733432F2F4454442053564720312E312F2F454E
+ 222022687474703A2F2F7777772E77332E6F72672F47726170686963732F5356
+ 472F312E312F4454442F73766731312E647464223E0D0A3C7376672076657273
+ 696F6E3D22312E31222020786D6C6E733D22687474703A2F2F7777772E77332E
+ 6F72672F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A
+ 2F2F7777772E77332E6F72672F313939392F786C696E6B2220783D2230707822
+ 20793D22307078220D0A092077696474683D223438707822206865696768743D
+ 2234387078222076696577426F783D223020302034382034382220656E61626C
+ 652D6261636B67726F756E643D226E6577203020302034382034382220786D6C
+ 3A73706163653D227072657365727665223E0D0A3C706174682066696C6C3D22
+ 234635374330302220643D224D33362E3235382C32382E38333763302C302D30
+ 2E31312D302E3833372D312E3235372D302E383337632D302E3231362C302D32
+ 2E3339322C302D332E3731392C3063302E3739382C322E3637312C312E343937
+ 2C352E3133352C312E3439372C352E3237390D0A0963302C322E3338372D332E
+ 3430312C332E3339332D382E3931372C332E333933632D352E3531352C302D38
+ 2E3635312D302E39342D382E3635312D332E33323663302D302E3136372C302E
+ 3939382D322E3639322C312E3739312D352E333436632D312E3539312C302D33
+ 2E3836332C302D342E3036332C300D0A09632D302E3830362C302D302E393337
+ 2C302E3734392D302E3933372C302E3734394C382E3135392C34302E3938364C
+ 382E3831352C34326833302E3635326C302E3337362D312E3031344C33362E32
+ 35382C32382E3833377A222F3E0D0A3C706174682066696C6C3D222345304530
+ 45302220643D224D32342E3030312C36632D312E3032392C302D312E3836342C
+ 302E3137392D312E3836342C302E333938632D302E3439322C312E3438332D38
+ 2E3132322C32362E3134332D382E3132322C32362E3737340D0A0963302C322E
+ 3338382C342E3437312C332E3832372C392E3938352C332E38323773392E3938
+ 362D312E3433392C392E3938362D332E38323763302D302E3534392D372E3631
+ 342D32352E3236382D382E3132322D32362E3737344332352E3836352C362E31
+ 37392C32352E3033312C362C32342E3030312C360D0A094C32342E3030312C36
+ 7A222F3E0D0A3C673E0D0A093C706174682066696C6C3D222346463938303022
+ 20643D224D33332E3139362C33302E3434374333322E3033322C33322E323332
+ 2C32382E3334312C33342C32342E3034362C3334632D342E33342C302D382E31
+ 35362D312E3639362D392E3238312D332E35310D0A0909632D302E3439392C31
+ 2E3438332D302E3839322C322E3634372D302E3839322C332E323863302C322E
+ 3338362C342E3533332C342E3232392C31302E3132382C342E32323963352E35
+ 39352C302C31302E3133312D312E3834342C31302E3133312D342E3232390D0A
+ 09094333342E3133322C33332E3232322C33332E3731332C33312E3935352C33
+ 332E3139362C33302E3434377A222F3E0D0A093C706174682066696C6C3D2223
+ 4646393830302220643D224D33312E3338372C32342E3331346C2D322E303734
+ 2D362E37393463302C302D312E3835372C312E3437392D352E3331312C312E34
+ 3739632D332E3435332C302D352E3331362D312E3437392D352E3331362D312E
+ 3437396C2D322E3038312C362E3830360D0A090963302C302C322E3036382C32
+ 2E3637342C372E3339372C322E3637344332392E3337352C32372C33312E3338
+ 372C32342E3331342C33312E3338372C32342E3331347A222F3E0D0A093C7061
+ 74682066696C6C3D22234646393830302220643D224D32372E3234312C31302E
+ 3830396C2D312E3337362D342E343163302C302D302E3038332D302E3339382D
+ 312E3836342D302E333938632D312E3834342C302D312E3836342C302E333938
+ 2D312E3836342C302E3339386C2D312E3337362C342E3430370D0A090963302C
+ 302C302E3838352C312E3139342C332E3233392C312E3139344332362E333535
+ 2C31322C32372E3234312C31302E3830392C32372E3234312C31302E3830397A
+ 222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A1200000076006F006900630065
+ 005F00700072006500730065006E0074006100740069006F006E006B0100003C
+ 7376672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F7777
+ 772E77332E6F72672F323030302F737667222076696577426F783D2230203020
+ 34382034382220656E61626C652D6261636B67726F756E643D226E6577203020
+ 30203438203438223E0D0A202020203C706174682066696C6C3D222332313936
+ 46332220643D224D34302C3232682D386C2D342C3456313263302D322E322C31
+ 2E382D342C342D34683863322E322C302C342C312E382C342C3476364334342C
+ 32302E322C34322E322C32322C34302C32327A222F3E0D0A202020203C636972
+ 636C652066696C6C3D2223464641373236222063783D223137222063793D2231
+ 392220723D2238222F3E0D0A202020203C706174682066696C6C3D2223363037
+ 4438422220643D224D33302C33362E3763302C302D332E362D362E372D31332D
+ 362E3753342C33362E372C342C33362E375634306832365633362E377A222F3E
+ 0D0A3C2F7376673E0D0A0900000076006F006900630065006D00610069006C00
+ B10100003C7376672076657273696F6E3D22312220786D6C6E733D2268747470
+ 3A2F2F7777772E77332E6F72672F323030302F737667222076696577426F783D
+ 223020302034382034382220656E61626C652D6261636B67726F756E643D226E
+ 657720302030203438203438223E0D0A202020203C706174682066696C6C3D22
+ 233443414635302220643D224D34382C323463302D362E312D342E392D31312D
+ 31312D3131732D31312C342E392D31312C313163302C322E372C302E392C352E
+ 312C322E352C37682D3963312E362D312E392C322E352D342E332C322E352D37
+ 63302D362E312D342E392D31312D31312D31312053302C31372E392C302C3234
+ 73342E392C31312C31312C3131683237762D302E314334332E362C33342E342C
+ 34382C32392E372C34382C32347A204D342C323463302D332E392C332E312D37
+ 2C372D3773372C332E312C372C37732D332E312C372D372C3753342C32372E39
+ 2C342C32347A204D33372C333120632D332E392C302D372D332E312D372D3773
+ 332E312D372C372D3763332E392C302C372C332E312C372C375334302E392C33
+ 312C33372C33317A222F3E0D0A3C2F7376673E0D0A0600000077006500620063
+ 0061006D00A20200003C7376672076657273696F6E3D22312220786D6C6E733D
+ 22687474703A2F2F7777772E77332E6F72672F323030302F7376672220766965
+ 77426F783D223020302034382034382220656E61626C652D6261636B67726F75
+ 6E643D226E657720302030203438203438223E0D0A202020203C706174682066
+ 696C6C3D22233435354136342220643D224D33362E352C34344831312E35632D
+ 312E312C302D312E382D312E322D312E332D322E324C31332C33376832326C32
+ 2E372C342E384333382E332C34322E382C33372E362C34342C33362E352C3434
+ 7A222F3E0D0A202020203C636972636C652066696C6C3D222337383930394322
+ 2063783D223234222063793D2232332220723D223138222F3E0D0A202020203C
+ 706174682066696C6C3D22233435354136342220643D224D32342C3335632D36
+ 2E362C302D31322D352E342D31322D313263302D362E362C352E342D31322C31
+ 322D31327331322C352E342C31322C31324333362C32392E362C33302E362C33
+ 352C32342C33357A222F3E0D0A202020203C636972636C652066696C6C3D2223
+ 343241354635222063783D223234222063793D2232332220723D2239222F3E0D
+ 0A202020203C706174682066696C6C3D22233930434146392220643D224D3238
+ 2E382C3230632D312E322D312E342D332D322E322D342E382D322E32732D332E
+ 362C302E382D342E382C322E32632D302E352C302E352D302E342C312E332C30
+ 2E312C312E3863302E352C302E352C312E332C302E342C312E382D302E312063
+ 312E352D312E372C342E332D312E372C352E382C3063302E332C302E332C302E
+ 362C302E342C312C302E3463302E332C302C302E362D302E312C302E392D302E
+ 334332392E322C32312E342C32392E332C32302E352C32382E382C32307A222F
+ 3E0D0A3C2F7376673E0D0A0A000000770069002D00660069005F006C006F0067
+ 006F00170600003C3F786D6C2076657273696F6E3D22312E302220656E636F64
+ 696E673D227574662D38223F3E0D0A3C212D2D2047656E657261746F723A2041
+ 646F626520496C6C7573747261746F722031352E302E302C2053564720457870
+ 6F727420506C75672D496E202E205356472056657273696F6E3A20362E303020
+ 4275696C6420302920202D2D3E0D0A3C21444F43545950452073766720505542
+ 4C494320222D2F2F5733432F2F4454442053564720312E312F2F454E22202268
+ 7474703A2F2F7777772E77332E6F72672F47726170686963732F5356472F312E
+ 312F4454442F73766731312E647464223E0D0A3C7376672076657273696F6E3D
+ 22312E31222020786D6C6E733D22687474703A2F2F7777772E77332E6F72672F
+ 323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F7777
+ 772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D22
+ 307078220D0A092077696474683D223438707822206865696768743D22343870
+ 78222076696577426F783D223020302034382034382220656E61626C652D6261
+ 636B67726F756E643D226E6577203020302034382034382220786D6C3A737061
+ 63653D227072657365727665223E0D0A3C673E0D0A093C706174682066696C6C
+ 3D22233346353142352220643D224D34362C32362E343863302C342E3532372D
+ 332E3236382C372E35322D372E332C372E353248392E32393943352E3236392C
+ 33342C322C33302E3633342C322C32362E34385632312E353243322C31372E33
+ 36362C352E3236392C31342C392E3239392C31340D0A09094833382E3763342E
+ 3033322C302C372E332C332E3336362C372E332C372E35325632362E34387A22
+ 2F3E0D0A093C656C6C697073652066696C6C3D2223334635314235222063783D
+ 223234222063793D223234222072783D2231342E393032222072793D22313522
+ 2F3E0D0A3C2F673E0D0A3C673E0D0A093C706F6C79676F6E2066696C6C3D2223
+ 4646464646462220706F696E74733D2231372C31392031342E3236342C313920
+ 31332E3432372C32342E3835392031322E3338382C31392E30323820392E3933
+ 2C31392E30323820382E3836342C32342E38353920382E3035342C31392E3032
+ 3820352E3236362C31392E303238200D0A0909372E3539372C32392031302E30
+ 35362C32392031312E31322C32322E3835342031322E3230392C32392031342E
+ 3639332C32392009222F3E0D0A093C7265637420783D2231392220793D223232
+ 222066696C6C3D2223464646464646222077696474683D22322E353038222068
+ 65696768743D2237222F3E0D0A093C706174682066696C6C3D22234646464646
+ 462220643D224D32312E352C31392E3734374332312E352C32302E34342C3230
+ 2E39342C32312C32302E32352C32315331392C32302E34342C31392C31392E37
+ 343763302D302E3639362C302E35362D312E3235382C312E32352D312E323538
+ 0D0A09095332312E352C31392E3035312C32312E352C31392E3734377A222F3E
+ 0D0A093C706174682066696C6C3D22234646464646462220643D224D33382E35
+ 36312C3136632D342E3831382C302D372E3937392C302D372E3937392C305332
+ 352C31362E3139332C32352C32312E39313476342E33333663302C302C302E31
+ 30312C322E3934312D332C352E37356831362E3738350D0A090963302C302C35
+ 2E3231352C302C352E3231352D352E35353363302D342E3837392C302D342E38
+ 37392C302D342E3837395334332E3737322C31362C33382E3536312C31367A20
+ 4D33372E3333392C32312E333639682D352E36353176322E32333668352E3039
+ 3476322E333434682D352E3039345632394832395631390D0A090968382E3333
+ 395632312E3336397A204D34302E32352C31382E34383963302E3638392C302C
+ 312E32352C302E3536322C312E32352C312E3235384334312E352C32302E3434
+ 2C34302E3933392C32312C34302E32352C32315333392C32302E34342C33392C
+ 31392E3734370D0A09094333392C31392E3035312C33392E3536312C31382E34
+ 38392C34302E32352C31382E3438397A204D34312E3530382C3239483339762D
+ 3768322E3530385632397A222F3E0D0A3C2F673E0D0A3C2F7376673E0D0A0900
+ 0000770069006B006900700065006400690061002E0600003C3F786D6C207665
+ 7273696F6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A
+ 3C212D2D2047656E657261746F723A2041646F626520496C6C7573747261746F
+ 722031352E302E302C20535647204578706F727420506C75672D496E202E2053
+ 56472056657273696F6E3A20362E3030204275696C6420302920202D2D3E0D0A
+ 3C21444F435459504520737667205055424C494320222D2F2F5733432F2F4454
+ 442053564720312E312F2F454E222022687474703A2F2F7777772E77332E6F72
+ 672F47726170686963732F5356472F312E312F4454442F73766731312E647464
+ 223E0D0A3C7376672076657273696F6E3D22312E31222020786D6C6E733D2268
+ 7474703A2F2F7777772E77332E6F72672F323030302F7376672220786D6C6E73
+ 3A786C696E6B3D22687474703A2F2F7777772E77332E6F72672F313939392F78
+ 6C696E6B2220783D223070782220793D22307078220D0A092077696474683D22
+ 3438707822206865696768743D2234387078222076696577426F783D22302030
+ 2034382034382220656E61626C652D6261636B67726F756E643D226E65772030
+ 20302034382034382220786D6C3A73706163653D227072657365727665223E0D
+ 0A3C706174682066696C6C3D22234346443844432220643D224D362C31306330
+ 2D322E3230392C312E3739312D342C342D3468323863322E3230392C302C342C
+ 312E3739312C342C3476323863302C322E3230392D312E3739312C342D342C34
+ 483130632D322E3230392C302D342D312E3739312D342D345631307A222F3E0D
+ 0A3C706174682066696C6C3D22233337343734462220643D224D33392C31372E
+ 32373163302C302E3139312D302E3134382C302E3334392D302E3333342C302E
+ 333439682D312E3739396C2D382E3136342C31382E313739632D302E3035322C
+ 302E31322D302E31372C302E322D302E3239372C302E323032682D302E303034
+ 0D0A09632D302E3132372C302D302E3234322D302E3037342D302E3239382D30
+ 2E3139336C2D332E3837342D382E3033396C2D342E31382C382E303439632D30
+ 2E30362C302E3131362D302E3136372C302E3138312D302E3330332C302E3138
+ 340D0A09632D302E3132352D302E3030342D302E3233392D302E3038322D302E
+ 3239322D302E3139396C2D382E3235322D31382E313832682D312E383743392E
+ 3134392C31372E3631392C392C31372E3436322C392C31372E3237315631362E
+ 333543392C31362E3135352C392E3134392C31362C392E3333332C313668362E
+ 3635370D0A0963302E3138342C302C302E3333332C302E3135352C302E333333
+ 2C302E333576302E39323163302C302E3139312D302E3134392C302E3334392D
+ 302E3333332C302E333439682D312E3433336C352E3639362C31332E3734386C
+ 322E3936342D352E3739336C2D332E3735372D372E393533682D302E3930340D
+ 0A09632D302E3138342C302D302E3333332D302E3135372D302E3333332D302E
+ 33355631362E333563302D302E3139312C302E3134392D302E3334382C302E33
+ 33332D302E33343868342E39323463302E3138342C302C302E3333332C302E31
+ 35362C302E3333332C302E33343876302E3932320D0A0963302C302E3139322D
+ 302E3134392C302E33352D302E3333332C302E3335682D302E3836376C322E31
+ 36322C342E3934386C322E3537322D342E3934384832352E3737632D302E3138
+ 372C302D302E3333342D302E3135372D302E3333342D302E33355631362E3335
+ 0D0A0963302D302E3139312C302E3134372D302E3334382C302E3333342D302E
+ 33343868342E37383463302E3138372C302C302E3333332C302E3135362C302E
+ 3333332C302E33343876302E39323263302C302E3139322D302E3134362C302E
+ 33352D302E3333332C302E3335682D312E30356C2D332E3735372C372E313431
+ 0D0A096C332E3036332C362E3538346C352E3930352D31332E373235682D312E
+ 383732632D302E3138342C302D302E3333342D302E3135372D302E3333342D30
+ 2E33355631362E333563302D302E3139312C302E31352D302E3334382C302E33
+ 33342D302E33343868352E3832320D0A0963302E3138362C302C302E3333342C
+ 302E3135362C302E3333342C302E3334385631372E3237317A222F3E0D0A3C2F
+ 7376673E0D0A0800000077006F0072006B0066006C006F007700540300003C73
+ 76672076657273696F6E3D22312220786D6C6E733D22687474703A2F2F777777
+ 2E77332E6F72672F323030302F737667222076696577426F783D223020302034
+ 382034382220656E61626C652D6261636B67726F756E643D226E657720302030
+ 203438203438223E0D0A202020203C7265637420783D22372220793D22333122
+ 2066696C6C3D2223303042434434222077696474683D22313022206865696768
+ 743D223130222F3E0D0A202020203C706174682066696C6C3D22233030424344
+ 342220643D224D33352E332C31392E336C2D352E362D352E36632D302E342D30
+ 2E342D302E342D312C302D312E346C352E362D352E3663302E342D302E342C31
+ 2D302E342C312E342C306C352E362C352E3663302E342C302E342C302E342C31
+ 2C302C312E34206C2D352E362C352E364333362E332C31392E372C33352E372C
+ 31392E372C33352E332C31392E337A222F3E0D0A202020203C636972636C6520
+ 66696C6C3D2223334635314235222063783D223132222063793D223133222072
+ 3D2236222F3E0D0A202020203C636972636C652066696C6C3D22233434384146
+ 46222063783D223336222063793D2233362220723D2236222F3E0D0A20202020
+ 3C672066696C6C3D2223393041344145223E0D0A20202020202020203C726563
+ 7420783D2231312220793D223234222077696474683D22322220686569676874
+ 3D2235222F3E0D0A20202020202020203C706F6C79676F6E20706F696E74733D
+ 2231322C323120392C32352031352C3235222F3E0D0A202020203C2F673E0D0A
+ 202020203C672066696C6C3D2223393041344145223E0D0A2020202020202020
+ 3C7265637420783D2232302220793D223132222077696474683D223522206865
+ 696768743D2232222F3E0D0A20202020202020203C706F6C79676F6E20706F69
+ 6E74733D2232382C31332032342C31302032342C3136222F3E0D0A202020203C
+ 2F673E0D0A202020203C672066696C6C3D2223393041344145223E0D0A202020
+ 20202020203C7265637420783D2233352220793D223231222077696474683D22
+ 3222206865696768743D2235222F3E0D0A20202020202020203C706F6C79676F
+ 6E20706F696E74733D2233362C32392033392C32352033332C3235222F3E0D0A
+ 202020203C2F673E0D0A3C2F7376673E0D0A}
+ end
+end
diff --git a/Demo/Source/UDataModule.pas b/Demo/Source/UDataModule.pas
index 4baaedd3..e46838c8 100644
--- a/Demo/Source/UDataModule.pas
+++ b/Demo/Source/UDataModule.pas
@@ -1,26 +1,26 @@
-unit UDataModule;
-
-interface
-
-uses
- System.SysUtils, System.Classes, SVGIconImageCollection;
-
-type
- TImageDataModule = class(TDataModule)
- SVGIconImageCollection: TSVGIconImageCollection;
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
-var
- ImageDataModule: TImageDataModule;
-
-implementation
-
-{%CLASSGROUP 'Vcl.Controls.TControl'}
-
-{$R *.dfm}
-
-end.
+unit UDataModule;
+
+interface
+
+uses
+ System.SysUtils, System.Classes, SVGIconImageCollection;
+
+type
+ TImageDataModule = class(TDataModule)
+ SVGIconImageCollection: TSVGIconImageCollection;
+ private
+ { Private declarations }
+ public
+ { Public declarations }
+ end;
+
+var
+ ImageDataModule: TImageDataModule;
+
+implementation
+
+{%CLASSGROUP 'Vcl.Controls.TControl'}
+
+{$R *.dfm}
+
+end.
diff --git a/Demo/Source/UIconPickerFMX.fmx b/Demo/Source/UIconPickerFMX.fmx
index 6549085c..b418ad4d 100644
--- a/Demo/Source/UIconPickerFMX.fmx
+++ b/Demo/Source/UIconPickerFMX.fmx
@@ -1,133 +1,133 @@
-object IconPicker: TIconPicker
- Left = 0
- Top = 0
- Caption = 'FMX - SVG Icon Picker'
- ClientHeight = 587
- ClientWidth = 548
- FormFactor.Width = 320
- FormFactor.Height = 480
- FormFactor.Devices = [Desktop]
- OnCreate = FormCreate
- DesignerMasterStyle = 0
- object Preview: TGroupBox
- Position.X = 8.000000000000000000
- Position.Y = 296.000000000000000000
- Size.Width = 537.000000000000000000
- Size.Height = 281.000000000000000000
- Size.PlatformDefault = False
- Text = 'Preview'
- TabOrder = 4
- object Image16x16: TImage
- MultiResBitmap = <
- item
- end>
- Position.X = 7.000000000000000000
- Position.Y = 24.000000000000000000
- Size.Width = 16.000000000000000000
- Size.Height = 16.000000000000000000
- Size.PlatformDefault = False
- end
- object Image32x32: TImage
- MultiResBitmap = <
- item
- end>
- Position.X = 25.000000000000000000
- Position.Y = 24.000000000000000000
- Size.Width = 32.000000000000000000
- Size.Height = 32.000000000000000000
- Size.PlatformDefault = False
- end
- object Image64x64: TImage
- MultiResBitmap = <
- item
- end>
- Position.X = 59.000000000000000000
- Position.Y = 24.000000000000000000
- Size.Width = 64.000000000000000000
- Size.Height = 64.000000000000000000
- Size.PlatformDefault = False
- end
- object Image90x90: TImage
- MultiResBitmap = <
- item
- end>
- Position.X = 126.000000000000000000
- Position.Y = 24.000000000000000000
- Size.Width = 90.000000000000000000
- Size.Height = 90.000000000000000000
- Size.PlatformDefault = False
- end
- object Image120x120: TImage
- MultiResBitmap = <
- item
- end>
- Position.X = 219.000000000000000000
- Position.Y = 24.000000000000000000
- Size.Width = 120.000000000000000000
- Size.Height = 120.000000000000000000
- Size.PlatformDefault = False
- end
- object Image100x100: TImage
- MultiResBitmap = <
- item
- end>
- Position.X = 347.000000000000000000
- Position.Y = 24.000000000000000000
- Size.Width = 100.000000000000000000
- Size.Height = 100.000000000000000000
- Size.PlatformDefault = False
- end
- end
- object Label1: TLabel
- Position.X = 8.000000000000000000
- Position.Y = 19.000000000000000000
- Text = 'Path'
- TabOrder = 2
- end
- object edtPath: TEdit
- Touch.InteractiveGestures = [LongTap, DoubleTap]
- TabOrder = 3
- Text = 'D:\ETHEA\SVGIconImageList\Demo\flat-color-icons\svg\'
- Position.X = 8.000000000000000000
- Position.Y = 36.000000000000000000
- Size.Width = 353.000000000000000000
- Size.Height = 22.000000000000000000
- Size.PlatformDefault = False
- end
- object Label2: TLabel
- Position.X = 8.000000000000000000
- Position.Y = 63.000000000000000000
- Text = 'File Name'
- TabOrder = 0
- end
- object edtFileName: TEdit
- Touch.InteractiveGestures = [LongTap, DoubleTap]
- TabOrder = 1
- Text = 'about.svg'
- Position.X = 8.000000000000000000
- Position.Y = 80.000000000000000000
- Size.Width = 217.000000000000000000
- Size.Height = 22.000000000000000000
- Size.PlatformDefault = False
- end
- object Memo: TMemo
- Touch.InteractiveGestures = [Pan, LongTap, DoubleTap]
- DataDetectorTypes = []
- Position.X = 8.000000000000000000
- Position.Y = 112.000000000000000000
- Size.Width = 529.000000000000000000
- Size.Height = 185.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 5
- OnExit = MemoExit
- Viewport.Width = 525.000000000000000000
- Viewport.Height = 181.000000000000000000
- end
- object LoadButton: TButton
- Position.X = 288.000000000000000000
- Position.Y = 80.000000000000000000
- TabOrder = 6
- Text = 'LoadButton'
- OnClick = LoadButtonClick
- end
-end
+object IconPicker: TIconPicker
+ Left = 0
+ Top = 0
+ Caption = 'FMX - SVG Icon Picker'
+ ClientHeight = 587
+ ClientWidth = 548
+ FormFactor.Width = 320
+ FormFactor.Height = 480
+ FormFactor.Devices = [Desktop]
+ OnCreate = FormCreate
+ DesignerMasterStyle = 0
+ object Preview: TGroupBox
+ Position.X = 8.000000000000000000
+ Position.Y = 296.000000000000000000
+ Size.Width = 537.000000000000000000
+ Size.Height = 281.000000000000000000
+ Size.PlatformDefault = False
+ Text = 'Preview'
+ TabOrder = 4
+ object Image16x16: TImage
+ MultiResBitmap = <
+ item
+ end>
+ Position.X = 7.000000000000000000
+ Position.Y = 24.000000000000000000
+ Size.Width = 16.000000000000000000
+ Size.Height = 16.000000000000000000
+ Size.PlatformDefault = False
+ end
+ object Image32x32: TImage
+ MultiResBitmap = <
+ item
+ end>
+ Position.X = 25.000000000000000000
+ Position.Y = 24.000000000000000000
+ Size.Width = 32.000000000000000000
+ Size.Height = 32.000000000000000000
+ Size.PlatformDefault = False
+ end
+ object Image64x64: TImage
+ MultiResBitmap = <
+ item
+ end>
+ Position.X = 59.000000000000000000
+ Position.Y = 24.000000000000000000
+ Size.Width = 64.000000000000000000
+ Size.Height = 64.000000000000000000
+ Size.PlatformDefault = False
+ end
+ object Image90x90: TImage
+ MultiResBitmap = <
+ item
+ end>
+ Position.X = 126.000000000000000000
+ Position.Y = 24.000000000000000000
+ Size.Width = 90.000000000000000000
+ Size.Height = 90.000000000000000000
+ Size.PlatformDefault = False
+ end
+ object Image120x120: TImage
+ MultiResBitmap = <
+ item
+ end>
+ Position.X = 219.000000000000000000
+ Position.Y = 24.000000000000000000
+ Size.Width = 120.000000000000000000
+ Size.Height = 120.000000000000000000
+ Size.PlatformDefault = False
+ end
+ object Image100x100: TImage
+ MultiResBitmap = <
+ item
+ end>
+ Position.X = 347.000000000000000000
+ Position.Y = 24.000000000000000000
+ Size.Width = 100.000000000000000000
+ Size.Height = 100.000000000000000000
+ Size.PlatformDefault = False
+ end
+ end
+ object Label1: TLabel
+ Position.X = 8.000000000000000000
+ Position.Y = 19.000000000000000000
+ Text = 'Path'
+ TabOrder = 2
+ end
+ object edtPath: TEdit
+ Touch.InteractiveGestures = [LongTap, DoubleTap]
+ TabOrder = 3
+ Text = 'D:\ETHEA\SVGIconImageList\Demo\flat-color-icons\svg\'
+ Position.X = 8.000000000000000000
+ Position.Y = 36.000000000000000000
+ Size.Width = 353.000000000000000000
+ Size.Height = 22.000000000000000000
+ Size.PlatformDefault = False
+ end
+ object Label2: TLabel
+ Position.X = 8.000000000000000000
+ Position.Y = 63.000000000000000000
+ Text = 'File Name'
+ TabOrder = 0
+ end
+ object edtFileName: TEdit
+ Touch.InteractiveGestures = [LongTap, DoubleTap]
+ TabOrder = 1
+ Text = 'about.svg'
+ Position.X = 8.000000000000000000
+ Position.Y = 80.000000000000000000
+ Size.Width = 217.000000000000000000
+ Size.Height = 22.000000000000000000
+ Size.PlatformDefault = False
+ end
+ object Memo: TMemo
+ Touch.InteractiveGestures = [Pan, LongTap, DoubleTap]
+ DataDetectorTypes = []
+ Position.X = 8.000000000000000000
+ Position.Y = 112.000000000000000000
+ Size.Width = 529.000000000000000000
+ Size.Height = 185.000000000000000000
+ Size.PlatformDefault = False
+ TabOrder = 5
+ OnExit = MemoExit
+ Viewport.Width = 525.000000000000000000
+ Viewport.Height = 181.000000000000000000
+ end
+ object LoadButton: TButton
+ Position.X = 288.000000000000000000
+ Position.Y = 80.000000000000000000
+ TabOrder = 6
+ Text = 'LoadButton'
+ OnClick = LoadButtonClick
+ end
+end
diff --git a/Demo/Source/UIconPickerFMX.pas b/Demo/Source/UIconPickerFMX.pas
index ace0a422..d9531277 100644
--- a/Demo/Source/UIconPickerFMX.pas
+++ b/Demo/Source/UIconPickerFMX.pas
@@ -1,185 +1,185 @@
-{******************************************************************************}
-{ }
-{ Icon Fonts ImageList: An extended ImageList for Delphi/FireMonkey }
-{ to simplify use of Icons (resize, colors and more...) }
-{ }
-{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
-{ Author: Carlo Barazzetta }
-{ }
-{ https://github.com/EtheaDev/IconFontsImageList }
-{ }
-{******************************************************************************}
-{ }
-{ Licensed under the Apache License, Version 2.0 (the "License"); }
-{ you may not use this file except in compliance with the License. }
-{ You may obtain a copy of the License at }
-{ }
-{ http://www.apache.org/licenses/LICENSE-2.0 }
-{ }
-{ Unless required by applicable law or agreed to in writing, software }
-{ distributed under the License is distributed on an "AS IS" BASIS, }
-{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
-{ See the License for the specific language governing permissions and }
-{ limitations under the License. }
-{ }
-{******************************************************************************}
-unit UIconPickerFMX;
-
-interface
-
-uses
- System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
- FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
- System.ImageList, FMX.ImgList, FMX.StdCtrls, FMX.Layouts, FMX.ExtCtrls,
- FMX.Colors, FMX.Controls.Presentation, FMX.Edit, FMX.ListBox, FMX.Objects,
- FMX.ScrollBox, FMX.Memo, SVG;
-
-type
- TIconPicker = class(TForm)
- Preview: TGroupBox;
- Image16x16: TImage;
- Image32x32: TImage;
- Image64x64: TImage;
- Label1: TLabel;
- edtPath: TEdit;
- Image90x90: TImage;
- Label2: TLabel;
- edtFileName: TEdit;
- Image120x120: TImage;
- Memo: TMemo;
- LoadButton: TButton;
- Image100x100: TImage;
- procedure LoadButtonClick(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure MemoExit(Sender: TObject);
- private
- FSVG: TSVG;
- procedure UpdatePreview;
- procedure DrawIcon(const Size: Integer;
- const ImageViewer: TImage);
- public
-
- { Public declarations }
- end;
-
-var
- IconPicker: TIconPicker;
-
-implementation
-
-{$R *.fmx}
-
-uses
- Winapi.GDIPOBJ
- , Winapi.GDIPAPI
- , SVGTypes;
-
-procedure PaintToBitmap(const ABitmap: TBitmap; const ASVG: TSVG);
-var
- GPGraphics: TGPGraphics;
- GPBitmap: TGPBitmap;
- GPRectF: TGPRectF;
- RectArray: TRectarray;
- GPRect: TGPRect;
- GPBitmapData: Winapi.GDIPAPI.TBitmapData;
- BitmapData: FMX.Graphics.TBitmapData;
- Bitmap: TBitmap;
- Source: PByte;
- Dest: PByte;
- Y: Integer;
-begin
- GPBitmap := TGPBitmap.Create(ABitmap.Canvas.Width, ABitmap.Canvas.Height);
- GPGraphics := TGPGraphics.Create(GPBitmap);
- try
- GPGraphics.SetSmoothingMode(SmoothingModeAntiAlias);
- GPRectF.X := 0;
- GPRectF.Y := 0;
- GPRectF.Width := ABitmap.Width;
- GPRectF.Height := ABitmap.Height;
-
- RectArray := TRectArray.Create(TRect.Create(0, 0, ABitmap.Width, ABitmap.Height));
- ASVG.PaintTo(GPGraphics, GPRectF, @RectArray, 1);
-
- GPRect.X := 0;
- GPRect.Y := 0;
- GPRect.Width := GPBitmap.GetWidth;
- GPRect.Height := GPBitmap.GetHeight;
-
- GPBitmap.LockBits(GPRect, ImageLockModeRead, PixelFormat32bppPARGB, GPBitmapData);
-
- Bitmap := TBitmap.Create(GPRect.Width, GPRect.Height);
- try
- Bitmap.Map(TMapAccess.Write, BitmapData);
-
- Source := GPBitmapData.Scan0;
- Dest := BitmapData.Data;
- for Y := 0 to GPBitmapData.Height - 1 do
- begin
- Move(Source^, Dest^, GPBitmapData.Stride);
- Source := Source + GPBitmapData.Stride;
- Dest := Dest + BitmapData.Pitch;
- end;
-
- Bitmap.Unmap(BitmapData);
- ABitmap.Canvas.BeginScene;
- Try
- ABitmap.Canvas.DrawBitmap(Bitmap, TRectF.Create(0, 0, ABitmap.Width, ABitmap.Height),
- TRectF.Create(0, 0, ABitmap.Width, ABitmap.Height), 100);
- Finally
- ABitmap.Canvas.EndScene;
- End;
- finally
- Bitmap.Free;
- end;
-
- GPBitmap.UnlockBits(GPBitmapData);
- finally
- GPGraphics.Free;
- GPBitmap.Free;
- end;
-end;
-
-procedure TIconPicker.DrawIcon(const Size: Integer;
- const ImageViewer: TImage);
-begin
- ImageViewer.Bitmap.Width := Size;
- ImageViewer.Bitmap.Height := Size;
- PaintToBitmap(ImageViewer.Bitmap, FSVG);
-end;
-
-procedure TIconPicker.FormCreate(Sender: TObject);
-begin
- FSVG := TSVG.Create;
-end;
-
-procedure TIconPicker.LoadButtonClick(Sender: TObject);
-var
- LFileName: string;
-begin
- LFileName := edtPath.Text + edtFileName.Text;
- FSVG.LoadFromFile(LFileName);
- UpdatePreview;
-end;
-
-procedure TIconPicker.MemoExit(Sender: TObject);
-begin
- FSVG.LoadFromText(Memo.Lines.Text);
- UpdatePreview;
-end;
-
-procedure TIconPicker.UpdatePreview;
-begin
- Memo.Lines.Text := FSVG.Source;
-(*
- DrawIcon( 16, Image16x16);
- DrawIcon( 32, Image32x32);
- DrawIcon( 64, Image64x64);
- DrawIcon( 90, Image90x90);
- DrawIcon(120, Image120x120);
-*)
- DrawIcon(100, Image100x100);
-end;
-
-
-
-end.
+{******************************************************************************}
+{ }
+{ Icon Fonts ImageList: An extended ImageList for Delphi/FireMonkey }
+{ to simplify use of Icons (resize, colors and more...) }
+{ }
+{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
+{ Author: Carlo Barazzetta }
+{ }
+{ https://github.com/EtheaDev/IconFontsImageList }
+{ }
+{******************************************************************************}
+{ }
+{ Licensed under the Apache License, Version 2.0 (the "License"); }
+{ you may not use this file except in compliance with the License. }
+{ You may obtain a copy of the License at }
+{ }
+{ http://www.apache.org/licenses/LICENSE-2.0 }
+{ }
+{ Unless required by applicable law or agreed to in writing, software }
+{ distributed under the License is distributed on an "AS IS" BASIS, }
+{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
+{ See the License for the specific language governing permissions and }
+{ limitations under the License. }
+{ }
+{******************************************************************************}
+unit UIconPickerFMX;
+
+interface
+
+uses
+ System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
+ FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
+ System.ImageList, FMX.ImgList, FMX.StdCtrls, FMX.Layouts, FMX.ExtCtrls,
+ FMX.Colors, FMX.Controls.Presentation, FMX.Edit, FMX.ListBox, FMX.Objects,
+ FMX.ScrollBox, FMX.Memo, SVG;
+
+type
+ TIconPicker = class(TForm)
+ Preview: TGroupBox;
+ Image16x16: TImage;
+ Image32x32: TImage;
+ Image64x64: TImage;
+ Label1: TLabel;
+ edtPath: TEdit;
+ Image90x90: TImage;
+ Label2: TLabel;
+ edtFileName: TEdit;
+ Image120x120: TImage;
+ Memo: TMemo;
+ LoadButton: TButton;
+ Image100x100: TImage;
+ procedure LoadButtonClick(Sender: TObject);
+ procedure FormCreate(Sender: TObject);
+ procedure MemoExit(Sender: TObject);
+ private
+ FSVG: TSVG;
+ procedure UpdatePreview;
+ procedure DrawIcon(const Size: Integer;
+ const ImageViewer: TImage);
+ public
+
+ { Public declarations }
+ end;
+
+var
+ IconPicker: TIconPicker;
+
+implementation
+
+{$R *.fmx}
+
+uses
+ Winapi.GDIPOBJ
+ , Winapi.GDIPAPI
+ , SVGTypes;
+
+procedure PaintToBitmap(const ABitmap: TBitmap; const ASVG: TSVG);
+var
+ GPGraphics: TGPGraphics;
+ GPBitmap: TGPBitmap;
+ GPRectF: TGPRectF;
+ RectArray: TRectarray;
+ GPRect: TGPRect;
+ GPBitmapData: Winapi.GDIPAPI.TBitmapData;
+ BitmapData: FMX.Graphics.TBitmapData;
+ Bitmap: TBitmap;
+ Source: PByte;
+ Dest: PByte;
+ Y: Integer;
+begin
+ GPBitmap := TGPBitmap.Create(ABitmap.Canvas.Width, ABitmap.Canvas.Height);
+ GPGraphics := TGPGraphics.Create(GPBitmap);
+ try
+ GPGraphics.SetSmoothingMode(SmoothingModeAntiAlias);
+ GPRectF.X := 0;
+ GPRectF.Y := 0;
+ GPRectF.Width := ABitmap.Width;
+ GPRectF.Height := ABitmap.Height;
+
+ RectArray := TRectArray.Create(TRect.Create(0, 0, ABitmap.Width, ABitmap.Height));
+ ASVG.PaintTo(GPGraphics, GPRectF, @RectArray, 1);
+
+ GPRect.X := 0;
+ GPRect.Y := 0;
+ GPRect.Width := GPBitmap.GetWidth;
+ GPRect.Height := GPBitmap.GetHeight;
+
+ GPBitmap.LockBits(GPRect, ImageLockModeRead, PixelFormat32bppPARGB, GPBitmapData);
+
+ Bitmap := TBitmap.Create(GPRect.Width, GPRect.Height);
+ try
+ Bitmap.Map(TMapAccess.Write, BitmapData);
+
+ Source := GPBitmapData.Scan0;
+ Dest := BitmapData.Data;
+ for Y := 0 to GPBitmapData.Height - 1 do
+ begin
+ Move(Source^, Dest^, GPBitmapData.Stride);
+ Source := Source + GPBitmapData.Stride;
+ Dest := Dest + BitmapData.Pitch;
+ end;
+
+ Bitmap.Unmap(BitmapData);
+ ABitmap.Canvas.BeginScene;
+ Try
+ ABitmap.Canvas.DrawBitmap(Bitmap, TRectF.Create(0, 0, ABitmap.Width, ABitmap.Height),
+ TRectF.Create(0, 0, ABitmap.Width, ABitmap.Height), 100);
+ Finally
+ ABitmap.Canvas.EndScene;
+ End;
+ finally
+ Bitmap.Free;
+ end;
+
+ GPBitmap.UnlockBits(GPBitmapData);
+ finally
+ GPGraphics.Free;
+ GPBitmap.Free;
+ end;
+end;
+
+procedure TIconPicker.DrawIcon(const Size: Integer;
+ const ImageViewer: TImage);
+begin
+ ImageViewer.Bitmap.Width := Size;
+ ImageViewer.Bitmap.Height := Size;
+ PaintToBitmap(ImageViewer.Bitmap, FSVG);
+end;
+
+procedure TIconPicker.FormCreate(Sender: TObject);
+begin
+ FSVG := TSVG.Create;
+end;
+
+procedure TIconPicker.LoadButtonClick(Sender: TObject);
+var
+ LFileName: string;
+begin
+ LFileName := edtPath.Text + edtFileName.Text;
+ FSVG.LoadFromFile(LFileName);
+ UpdatePreview;
+end;
+
+procedure TIconPicker.MemoExit(Sender: TObject);
+begin
+ FSVG.LoadFromText(Memo.Lines.Text);
+ UpdatePreview;
+end;
+
+procedure TIconPicker.UpdatePreview;
+begin
+ Memo.Lines.Text := FSVG.Source;
+(*
+ DrawIcon( 16, Image16x16);
+ DrawIcon( 32, Image32x32);
+ DrawIcon( 64, Image64x64);
+ DrawIcon( 90, Image90x90);
+ DrawIcon(120, Image120x120);
+*)
+ DrawIcon(100, Image100x100);
+end;
+
+
+
+end.
diff --git a/Demo/Source/USVGIconImageFMX.fmx b/Demo/Source/USVGIconImageFMX.fmx
index 4b637000..ae050840 100644
--- a/Demo/Source/USVGIconImageFMX.fmx
+++ b/Demo/Source/USVGIconImageFMX.fmx
@@ -1,57 +1,57 @@
-object SVGIconImageForm: TSVGIconImageForm
- Left = 0
- Top = 0
- Caption =
- 'SVGIcon Image Demo - Copyright (c) Ethea S.r.l. - Apache 2.0 Ope' +
- 'n Source License'
- ClientHeight = 228
- ClientWidth = 201
- FormFactor.Width = 320
- FormFactor.Height = 480
- FormFactor.Devices = [Desktop]
- OnCreate = FormCreate
- DesignerMasterStyle = 0
- object SVGIconImage: TSVGIconImage
- MultiResBitmap.Height = 16
- MultiResBitmap.Width = 16
- MultiResBitmap = <
- item
- Opacity = 1.000000000000000000
- Size = 182
- IconName = 'low-priority'
- SVGText =
- ''
- end>
- Align = Client
- DisableInterpolation = True
- Size.Width = 201.000000000000000000
- Size.Height = 182.000000000000000000
- Size.PlatformDefault = False
- OnResize = SVGIconImageResize
- BitmapSize = 201
- end
- object Panel1: TPanel
- Align = Bottom
- Position.Y = 182.000000000000000000
- Size.Width = 201.000000000000000000
- Size.Height = 46.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 1
- object Button: TButton
- Position.X = 8.000000000000000000
- Position.Y = 8.000000000000000000
- Size.Width = 89.000000000000000000
- Size.Height = 33.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 1
- Text = 'Next Icon...'
- OnClick = ButtonClick
- end
- end
-end
+object SVGIconImageForm: TSVGIconImageForm
+ Left = 0
+ Top = 0
+ Caption =
+ 'SVGIcon Image Demo - Copyright (c) Ethea S.r.l. - Apache 2.0 Ope' +
+ 'n Source License'
+ ClientHeight = 228
+ ClientWidth = 201
+ FormFactor.Width = 320
+ FormFactor.Height = 480
+ FormFactor.Devices = [Desktop]
+ OnCreate = FormCreate
+ DesignerMasterStyle = 0
+ object SVGIconImage: TSVGIconImage
+ MultiResBitmap.Height = 16
+ MultiResBitmap.Width = 16
+ MultiResBitmap = <
+ item
+ Opacity = 1.000000000000000000
+ Size = 182
+ IconName = 'low-priority'
+ SVGText =
+ ''
+ end>
+ Align = Client
+ DisableInterpolation = True
+ Size.Width = 201.000000000000000000
+ Size.Height = 182.000000000000000000
+ Size.PlatformDefault = False
+ OnResize = SVGIconImageResize
+ BitmapSize = 201
+ end
+ object Panel1: TPanel
+ Align = Bottom
+ Position.Y = 182.000000000000000000
+ Size.Width = 201.000000000000000000
+ Size.Height = 46.000000000000000000
+ Size.PlatformDefault = False
+ TabOrder = 1
+ object Button: TButton
+ Position.X = 8.000000000000000000
+ Position.Y = 8.000000000000000000
+ Size.Width = 89.000000000000000000
+ Size.Height = 33.000000000000000000
+ Size.PlatformDefault = False
+ TabOrder = 1
+ Text = 'Next Icon...'
+ OnClick = ButtonClick
+ end
+ end
+end
diff --git a/Demo/Source/USVGIconImageFMX.pas b/Demo/Source/USVGIconImageFMX.pas
index b36a66e6..1a6a7fa9 100644
--- a/Demo/Source/USVGIconImageFMX.pas
+++ b/Demo/Source/USVGIconImageFMX.pas
@@ -1,75 +1,75 @@
-unit USVGIconImageFMX;
-
-interface
-
-uses
- System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
- FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
- FMX.Controls.Presentation, FMX.StdCtrls, FMX.ImgList,
- FMX.Objects, FMX.MultiresBitmap, System.Rtti, System.Messaging,
- FMX.ListBox, FMX.Colors, FMX.SVGIconImage;
-
-type
- TSVGIconImageForm = class(TForm)
- SVGIconImage: TSVGIconImage;
- Button: TButton;
- Panel1: TPanel;
- procedure FormCreate(Sender: TObject);
- procedure ButtonClick(Sender: TObject);
- procedure SVGIconImageResize(Sender: TObject);
- private
- FSVGList: TStringDynArray;
- FIndex: Integer;
- public
- { Public declarations }
- end;
-
-var
- SVGIconImageForm: TSVGIconImageForm;
-
-implementation
-
-uses
- System.Math
- , SVG
- , System.IOUtils
- , FMX.Consts;
-
-{$R *.fmx}
-
-procedure TSVGIconImageForm.ButtonClick(Sender: TObject);
-var
- I: Integer;
- LFileName: string;
- LItem: TSVGIconFixedBitmapItem;
-begin
- Inc(FIndex);
- if FIndex > High(FSVGList) then
- FIndex := 0;
- LFileName := FSVGList[FIndex];
- LItem := SVGIconImage.MultiResBitmap[0] as TSVGIconFixedBitmapItem;
- LItem.SVG.LoadFromFile(LFileName);
- LItem.DrawSVGIcon;
- SVGIconImage.Repaint;
-end;
-
-procedure TSVGIconImageForm.FormCreate(Sender: TObject);
-var
- LPath, LFileName: string;
- I: Integer;
-begin
- LPath := GetCurrentDir+PathDelim+'..\flat-color-icons\svg\';
- TDirectory.SetCurrentDirectory(LPath);
- FSVGList := TDirectory.GetFiles(LPath, '*.svg');
- FIndex := 0;
-end;
-
-procedure TSVGIconImageForm.SVGIconImageResize(Sender: TObject);
-begin
- ;
-end;
-
-initialization
- ReportMemoryLeaksOnShutdown := True;
-
-end.
+unit USVGIconImageFMX;
+
+interface
+
+uses
+ System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
+ FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
+ FMX.Controls.Presentation, FMX.StdCtrls, FMX.ImgList,
+ FMX.Objects, FMX.MultiresBitmap, System.Rtti, System.Messaging,
+ FMX.ListBox, FMX.Colors, FMX.SVGIconImage;
+
+type
+ TSVGIconImageForm = class(TForm)
+ SVGIconImage: TSVGIconImage;
+ Button: TButton;
+ Panel1: TPanel;
+ procedure FormCreate(Sender: TObject);
+ procedure ButtonClick(Sender: TObject);
+ procedure SVGIconImageResize(Sender: TObject);
+ private
+ FSVGList: TStringDynArray;
+ FIndex: Integer;
+ public
+ { Public declarations }
+ end;
+
+var
+ SVGIconImageForm: TSVGIconImageForm;
+
+implementation
+
+uses
+ System.Math
+ , SVG
+ , System.IOUtils
+ , FMX.Consts;
+
+{$R *.fmx}
+
+procedure TSVGIconImageForm.ButtonClick(Sender: TObject);
+var
+ I: Integer;
+ LFileName: string;
+ LItem: TSVGIconFixedBitmapItem;
+begin
+ Inc(FIndex);
+ if FIndex > High(FSVGList) then
+ FIndex := 0;
+ LFileName := FSVGList[FIndex];
+ LItem := SVGIconImage.MultiResBitmap[0] as TSVGIconFixedBitmapItem;
+ LItem.SVG.LoadFromFile(LFileName);
+ LItem.DrawSVGIcon;
+ SVGIconImage.Repaint;
+end;
+
+procedure TSVGIconImageForm.FormCreate(Sender: TObject);
+var
+ LPath, LFileName: string;
+ I: Integer;
+begin
+ LPath := GetCurrentDir+PathDelim+'..\flat-color-icons\svg\';
+ TDirectory.SetCurrentDirectory(LPath);
+ FSVGList := TDirectory.GetFiles(LPath, '*.svg');
+ FIndex := 0;
+end;
+
+procedure TSVGIconImageForm.SVGIconImageResize(Sender: TObject);
+begin
+ ;
+end;
+
+initialization
+ ReportMemoryLeaksOnShutdown := True;
+
+end.
diff --git a/Demo/flat-color-icons/LICENSE.md b/Demo/flat-color-icons/LICENSE.md
index 37a1cbc7..f3acd541 100644
--- a/Demo/flat-color-icons/LICENSE.md
+++ b/Demo/flat-color-icons/LICENSE.md
@@ -1,14 +1,14 @@
-#Good Boy License
-We’ve released the icon pack under either MIT or the [Good Boy License](https://icons8.com/good-boy-license/). We invented it. Please do _whatever your mom would approve of:_
-
-##Permitted Use
-
-* Download in any format
-* Change
-* Fork
-
-##Prohibited Use
-
-* No tattoos
-* No touching with unwashed hands
-* No exchanging for drugs.
+#Good Boy License
+We’ve released the icon pack under either MIT or the [Good Boy License](https://icons8.com/good-boy-license/). We invented it. Please do _whatever your mom would approve of:_
+
+##Permitted Use
+
+* Download in any format
+* Change
+* Fork
+
+##Prohibited Use
+
+* No tattoos
+* No touching with unwashed hands
+* No exchanging for drugs.
diff --git a/Demo/flat-color-icons/README.md b/Demo/flat-color-icons/README.md
index 5a79f735..f8a35803 100644
--- a/Demo/flat-color-icons/README.md
+++ b/Demo/flat-color-icons/README.md
@@ -1,58 +1,58 @@
-# Icons8 Flat Color Icons
-
-**For High-Class Bitches**
-
-You must be spoiled by expensive gifts and won't be impressed. Stop reading.
-
-**For the Rest of Us**
-
-Now that we are alone, let us give you something: 312 free icons for personal and commercial use. No credits required.
-
-But hey, don't get spoiled too quickly. Next time, when we present you with a Tiffany ring, at least pretend you're impressed!
-
-[![Preview of Flat Icons from Icons8](https://cdnd.icons8.com/download/images/flat-color-icons.png)](https://icons8.github.io/flat-color-icons/)
-
-There is available a live [preview](https://icons8.github.io/flat-color-icons/) of the icon set.
-
-##Good Boy License
-We’ve released the icon pack either under MIT or the [Good Boy License](https://icons8.com/good-boy-license/). We invented it. Please do _whatever your mom would approve of:_
-* Download
-* Change
-* Fork
-
-No tattoos!
-
-## More Color Icons
-
-These 317 icons are the part of a bigger pack available for a fee: https://icons8.com/color-icons (4500 icons as of February 2017).
-
-## Author
-
-* [Home Page](https://icons8.com/color-icons)
-* [Project Blog](https://icons8.com/blog)
-* [Twitter](https://twitter.com/icons_8)
-* [Facebook Page](https://www.facebook.com/Icons8)
-* [Dribbble](https://dribbble.com/icons8)
-
-## Installing Icons8 flat color icons
-
-You can install this package locally either with `npm`, `bower`, or `jspm`.
-
-### npm
-
-```shell
-npm install flat-color-icons
-```
-
-### bower
-
-```shell
-bower install flat-color-icons
-```
-
-## Questions or Ideas?
-
-If you have any questions or ideas about icons, please feel free to contact us any way you'd prefer
-* create an [issue](https://github.com/icons8/flat-color-icons/issues) on github
-* tweet us [@Icons_8](https://twitter.com/icons_8)
-* drop a comment on [icons8.com](https://icons8.com/c).
+# Icons8 Flat Color Icons
+
+**For High-Class Bitches**
+
+You must be spoiled by expensive gifts and won't be impressed. Stop reading.
+
+**For the Rest of Us**
+
+Now that we are alone, let us give you something: 312 free icons for personal and commercial use. No credits required.
+
+But hey, don't get spoiled too quickly. Next time, when we present you with a Tiffany ring, at least pretend you're impressed!
+
+[![Preview of Flat Icons from Icons8](https://cdnd.icons8.com/download/images/flat-color-icons.png)](https://icons8.github.io/flat-color-icons/)
+
+There is available a live [preview](https://icons8.github.io/flat-color-icons/) of the icon set.
+
+##Good Boy License
+We’ve released the icon pack either under MIT or the [Good Boy License](https://icons8.com/good-boy-license/). We invented it. Please do _whatever your mom would approve of:_
+* Download
+* Change
+* Fork
+
+No tattoos!
+
+## More Color Icons
+
+These 317 icons are the part of a bigger pack available for a fee: https://icons8.com/color-icons (4500 icons as of February 2017).
+
+## Author
+
+* [Home Page](https://icons8.com/color-icons)
+* [Project Blog](https://icons8.com/blog)
+* [Twitter](https://twitter.com/icons_8)
+* [Facebook Page](https://www.facebook.com/Icons8)
+* [Dribbble](https://dribbble.com/icons8)
+
+## Installing Icons8 flat color icons
+
+You can install this package locally either with `npm`, `bower`, or `jspm`.
+
+### npm
+
+```shell
+npm install flat-color-icons
+```
+
+### bower
+
+```shell
+bower install flat-color-icons
+```
+
+## Questions or Ideas?
+
+If you have any questions or ideas about icons, please feel free to contact us any way you'd prefer
+* create an [issue](https://github.com/icons8/flat-color-icons/issues) on github
+* tweet us [@Icons_8](https://twitter.com/icons_8)
+* drop a comment on [icons8.com](https://icons8.com/c).
diff --git a/Demo/flat-color-icons/bower.json b/Demo/flat-color-icons/bower.json
index 62ff3743..2b77f2cf 100644
--- a/Demo/flat-color-icons/bower.json
+++ b/Demo/flat-color-icons/bower.json
@@ -1,15 +1,15 @@
-{
- "name": "flat-color-icons",
- "version": "1.0.2",
- "author": "Icons8",
- "description": "A collection of flat color icons",
- "keywords": [
- "icons",
- "material",
- "flat",
- "color",
- "Icons8"
- ],
- "license": "CC-BY-4.0",
- "homepage": "https://github.com/icons8/flat-color-icons"
+{
+ "name": "flat-color-icons",
+ "version": "1.0.2",
+ "author": "Icons8",
+ "description": "A collection of flat color icons",
+ "keywords": [
+ "icons",
+ "material",
+ "flat",
+ "color",
+ "Icons8"
+ ],
+ "license": "CC-BY-4.0",
+ "homepage": "https://github.com/icons8/flat-color-icons"
}
\ No newline at end of file
diff --git a/Demo/flat-color-icons/index.html b/Demo/flat-color-icons/index.html
index 04df95ee..19747ece 100644
--- a/Demo/flat-color-icons/index.html
+++ b/Demo/flat-color-icons/index.html
@@ -1,402 +1,402 @@
-
-
-
-
-
-
-
- Yay! Icons8 has been colored.
-
-
-
-
-Flat Color Icons by Icons8
-
-Photo and Video
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Very Basic
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Business
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Industry
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Mobile
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Arrows
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Data
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- icons8.com
-
-
- GitHub
-
- Twitter
-
- Facebook
-
- Google+
-
-
-
-
-
+
+
+
+
+
+
+
+ Yay! Icons8 has been colored.
+
+
+
+
+Flat Color Icons by Icons8
+
+Photo and Video
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Very Basic
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Business
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Industry
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Mobile
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Arrows
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Data
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ icons8.com
+
+
+ GitHub
+
+ Twitter
+
+ Facebook
+
+ Google+
+
+
+
+
+
diff --git a/Demo/flat-color-icons/package.json b/Demo/flat-color-icons/package.json
index 63cbfb83..83bb35cb 100644
--- a/Demo/flat-color-icons/package.json
+++ b/Demo/flat-color-icons/package.json
@@ -1,23 +1,23 @@
-{
- "name": "flat-color-icons",
- "version": "1.0.2",
- "description": "Icons8 has been colored",
- "main": "index.html",
- "repository": {
- "type": "git",
- "url": "https://github.com/icons8/flat-color-icons"
- },
- "keywords": [
- "icons",
- "material",
- "flat",
- "color",
- "Icons8"
- ],
- "author": "Icons8",
- "license": "MIT OR Good-Boy",
- "bugs": {
- "url": "https://github.com/icons8/flat-color-icons/issues"
- },
- "homepage": "https://github.com/icons8/flat-color-icons"
-}
+{
+ "name": "flat-color-icons",
+ "version": "1.0.2",
+ "description": "Icons8 has been colored",
+ "main": "index.html",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/icons8/flat-color-icons"
+ },
+ "keywords": [
+ "icons",
+ "material",
+ "flat",
+ "color",
+ "Icons8"
+ ],
+ "author": "Icons8",
+ "license": "MIT OR Good-Boy",
+ "bugs": {
+ "url": "https://github.com/icons8/flat-color-icons/issues"
+ },
+ "homepage": "https://github.com/icons8/flat-color-icons"
+}
diff --git a/Demo/flat-color-icons/svg/about.svg b/Demo/flat-color-icons/svg/about.svg
index 103d75b2..0f597b68 100644
--- a/Demo/flat-color-icons/svg/about.svg
+++ b/Demo/flat-color-icons/svg/about.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/accept_database.svg b/Demo/flat-color-icons/svg/accept_database.svg
index 53525640..2197ef36 100644
--- a/Demo/flat-color-icons/svg/accept_database.svg
+++ b/Demo/flat-color-icons/svg/accept_database.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/add_column.svg b/Demo/flat-color-icons/svg/add_column.svg
index c1b8f65d..1c179be2 100644
--- a/Demo/flat-color-icons/svg/add_column.svg
+++ b/Demo/flat-color-icons/svg/add_column.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/add_database.svg b/Demo/flat-color-icons/svg/add_database.svg
index 06d349a2..7866c59e 100644
--- a/Demo/flat-color-icons/svg/add_database.svg
+++ b/Demo/flat-color-icons/svg/add_database.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/add_image.svg b/Demo/flat-color-icons/svg/add_image.svg
index b78248c0..f755261f 100644
--- a/Demo/flat-color-icons/svg/add_image.svg
+++ b/Demo/flat-color-icons/svg/add_image.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/add_row.svg b/Demo/flat-color-icons/svg/add_row.svg
index f29717a9..3d254c4b 100644
--- a/Demo/flat-color-icons/svg/add_row.svg
+++ b/Demo/flat-color-icons/svg/add_row.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/address_book.svg b/Demo/flat-color-icons/svg/address_book.svg
index ed90c848..d300c8eb 100644
--- a/Demo/flat-color-icons/svg/address_book.svg
+++ b/Demo/flat-color-icons/svg/address_book.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/advance.svg b/Demo/flat-color-icons/svg/advance.svg
index b214160b..3f5dbb3d 100644
--- a/Demo/flat-color-icons/svg/advance.svg
+++ b/Demo/flat-color-icons/svg/advance.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/advertising.svg b/Demo/flat-color-icons/svg/advertising.svg
index a5ba71c3..dd8c1400 100644
--- a/Demo/flat-color-icons/svg/advertising.svg
+++ b/Demo/flat-color-icons/svg/advertising.svg
@@ -1,13 +1,13 @@
-
+
diff --git a/Demo/flat-color-icons/svg/alarm_clock.svg b/Demo/flat-color-icons/svg/alarm_clock.svg
index 6ba198c7..73794ec7 100644
--- a/Demo/flat-color-icons/svg/alarm_clock.svg
+++ b/Demo/flat-color-icons/svg/alarm_clock.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/flat-color-icons/svg/alphabetical_sorting_az.svg b/Demo/flat-color-icons/svg/alphabetical_sorting_az.svg
index 66a4a4c3..28e97a29 100644
--- a/Demo/flat-color-icons/svg/alphabetical_sorting_az.svg
+++ b/Demo/flat-color-icons/svg/alphabetical_sorting_az.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/alphabetical_sorting_za.svg b/Demo/flat-color-icons/svg/alphabetical_sorting_za.svg
index 63d9a7e6..8a8e5391 100644
--- a/Demo/flat-color-icons/svg/alphabetical_sorting_za.svg
+++ b/Demo/flat-color-icons/svg/alphabetical_sorting_za.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/android_os.svg b/Demo/flat-color-icons/svg/android_os.svg
index 27b4571e..028c485f 100644
--- a/Demo/flat-color-icons/svg/android_os.svg
+++ b/Demo/flat-color-icons/svg/android_os.svg
@@ -1,21 +1,21 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/answers.svg b/Demo/flat-color-icons/svg/answers.svg
index 336cb46b..229a90e6 100644
--- a/Demo/flat-color-icons/svg/answers.svg
+++ b/Demo/flat-color-icons/svg/answers.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/approval.svg b/Demo/flat-color-icons/svg/approval.svg
index c2cd45a8..0fc8b8c9 100644
--- a/Demo/flat-color-icons/svg/approval.svg
+++ b/Demo/flat-color-icons/svg/approval.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/approve.svg b/Demo/flat-color-icons/svg/approve.svg
index 79a96c89..624db8ab 100644
--- a/Demo/flat-color-icons/svg/approve.svg
+++ b/Demo/flat-color-icons/svg/approve.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/area_chart.svg b/Demo/flat-color-icons/svg/area_chart.svg
index 57a93524..c40864dc 100644
--- a/Demo/flat-color-icons/svg/area_chart.svg
+++ b/Demo/flat-color-icons/svg/area_chart.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/assistant.svg b/Demo/flat-color-icons/svg/assistant.svg
index 3f344d52..9f63d6f6 100644
--- a/Demo/flat-color-icons/svg/assistant.svg
+++ b/Demo/flat-color-icons/svg/assistant.svg
@@ -1,17 +1,17 @@
-
+
diff --git a/Demo/flat-color-icons/svg/audio_file.svg b/Demo/flat-color-icons/svg/audio_file.svg
index b5fb1cae..35f7950f 100644
--- a/Demo/flat-color-icons/svg/audio_file.svg
+++ b/Demo/flat-color-icons/svg/audio_file.svg
@@ -1,15 +1,15 @@
-
+
diff --git a/Demo/flat-color-icons/svg/automatic.svg b/Demo/flat-color-icons/svg/automatic.svg
index cefdfd7f..2b3e2f9e 100644
--- a/Demo/flat-color-icons/svg/automatic.svg
+++ b/Demo/flat-color-icons/svg/automatic.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/automotive.svg b/Demo/flat-color-icons/svg/automotive.svg
index afd35a96..6d4b655c 100644
--- a/Demo/flat-color-icons/svg/automotive.svg
+++ b/Demo/flat-color-icons/svg/automotive.svg
@@ -1,14 +1,14 @@
-
+
diff --git a/Demo/flat-color-icons/svg/bad_decision.svg b/Demo/flat-color-icons/svg/bad_decision.svg
index 2ea9fcf6..8263573c 100644
--- a/Demo/flat-color-icons/svg/bad_decision.svg
+++ b/Demo/flat-color-icons/svg/bad_decision.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/bar_chart.svg b/Demo/flat-color-icons/svg/bar_chart.svg
index eefa5925..6136b5e4 100644
--- a/Demo/flat-color-icons/svg/bar_chart.svg
+++ b/Demo/flat-color-icons/svg/bar_chart.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/bbc.svg b/Demo/flat-color-icons/svg/bbc.svg
index 3c2ef611..92ee4310 100644
--- a/Demo/flat-color-icons/svg/bbc.svg
+++ b/Demo/flat-color-icons/svg/bbc.svg
@@ -1,13 +1,13 @@
-
-
-
+
+
+
diff --git a/Demo/flat-color-icons/svg/bearish.svg b/Demo/flat-color-icons/svg/bearish.svg
index e1ec8734..f7f83938 100644
--- a/Demo/flat-color-icons/svg/bearish.svg
+++ b/Demo/flat-color-icons/svg/bearish.svg
@@ -1,15 +1,15 @@
-
+
diff --git a/Demo/flat-color-icons/svg/binoculars.svg b/Demo/flat-color-icons/svg/binoculars.svg
index dfc4b2a4..d4e2ace7 100644
--- a/Demo/flat-color-icons/svg/binoculars.svg
+++ b/Demo/flat-color-icons/svg/binoculars.svg
@@ -1,19 +1,19 @@
-
+
diff --git a/Demo/flat-color-icons/svg/biohazard.svg b/Demo/flat-color-icons/svg/biohazard.svg
index f787daba..5deb9e7d 100644
--- a/Demo/flat-color-icons/svg/biohazard.svg
+++ b/Demo/flat-color-icons/svg/biohazard.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/biomass.svg b/Demo/flat-color-icons/svg/biomass.svg
index 398147c3..0f4cbde0 100644
--- a/Demo/flat-color-icons/svg/biomass.svg
+++ b/Demo/flat-color-icons/svg/biomass.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/biotech.svg b/Demo/flat-color-icons/svg/biotech.svg
index ff74791a..81aaa461 100644
--- a/Demo/flat-color-icons/svg/biotech.svg
+++ b/Demo/flat-color-icons/svg/biotech.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/bookmark.svg b/Demo/flat-color-icons/svg/bookmark.svg
index c2158e25..141d6013 100644
--- a/Demo/flat-color-icons/svg/bookmark.svg
+++ b/Demo/flat-color-icons/svg/bookmark.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/briefcase.svg b/Demo/flat-color-icons/svg/briefcase.svg
index 094ba81c..8c0d70ae 100644
--- a/Demo/flat-color-icons/svg/briefcase.svg
+++ b/Demo/flat-color-icons/svg/briefcase.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/broken_link.svg b/Demo/flat-color-icons/svg/broken_link.svg
index bc47a299..c220f362 100644
--- a/Demo/flat-color-icons/svg/broken_link.svg
+++ b/Demo/flat-color-icons/svg/broken_link.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/bullish.svg b/Demo/flat-color-icons/svg/bullish.svg
index 74e403d6..9a234588 100644
--- a/Demo/flat-color-icons/svg/bullish.svg
+++ b/Demo/flat-color-icons/svg/bullish.svg
@@ -1,15 +1,15 @@
-
+
diff --git a/Demo/flat-color-icons/svg/business.svg b/Demo/flat-color-icons/svg/business.svg
index a5aa79db..f4da0b3d 100644
--- a/Demo/flat-color-icons/svg/business.svg
+++ b/Demo/flat-color-icons/svg/business.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/business_contact.svg b/Demo/flat-color-icons/svg/business_contact.svg
index b6a5d616..13fb0228 100644
--- a/Demo/flat-color-icons/svg/business_contact.svg
+++ b/Demo/flat-color-icons/svg/business_contact.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/businessman.svg b/Demo/flat-color-icons/svg/businessman.svg
index b9666fa4..041a6ef2 100644
--- a/Demo/flat-color-icons/svg/businessman.svg
+++ b/Demo/flat-color-icons/svg/businessman.svg
@@ -1,16 +1,16 @@
-
+
diff --git a/Demo/flat-color-icons/svg/businesswoman.svg b/Demo/flat-color-icons/svg/businesswoman.svg
index 61b90231..143e964a 100644
--- a/Demo/flat-color-icons/svg/businesswoman.svg
+++ b/Demo/flat-color-icons/svg/businesswoman.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/butting_in.svg b/Demo/flat-color-icons/svg/butting_in.svg
index 64383104..dd07cb74 100644
--- a/Demo/flat-color-icons/svg/butting_in.svg
+++ b/Demo/flat-color-icons/svg/butting_in.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/cable_release.svg b/Demo/flat-color-icons/svg/cable_release.svg
index a2090496..682a291a 100644
--- a/Demo/flat-color-icons/svg/cable_release.svg
+++ b/Demo/flat-color-icons/svg/cable_release.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/calculator.svg b/Demo/flat-color-icons/svg/calculator.svg
index 776f1786..00fb4960 100644
--- a/Demo/flat-color-icons/svg/calculator.svg
+++ b/Demo/flat-color-icons/svg/calculator.svg
@@ -1,29 +1,29 @@
-
+
diff --git a/Demo/flat-color-icons/svg/calendar.svg b/Demo/flat-color-icons/svg/calendar.svg
index f5332b16..e11125e5 100644
--- a/Demo/flat-color-icons/svg/calendar.svg
+++ b/Demo/flat-color-icons/svg/calendar.svg
@@ -1,26 +1,26 @@
-
+
diff --git a/Demo/flat-color-icons/svg/call_transfer.svg b/Demo/flat-color-icons/svg/call_transfer.svg
index 5ed2675b..84ce4cb4 100644
--- a/Demo/flat-color-icons/svg/call_transfer.svg
+++ b/Demo/flat-color-icons/svg/call_transfer.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/callback.svg b/Demo/flat-color-icons/svg/callback.svg
index 668b5682..11d80b79 100644
--- a/Demo/flat-color-icons/svg/callback.svg
+++ b/Demo/flat-color-icons/svg/callback.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/camcorder.svg b/Demo/flat-color-icons/svg/camcorder.svg
index 40a34308..7befe36a 100644
--- a/Demo/flat-color-icons/svg/camcorder.svg
+++ b/Demo/flat-color-icons/svg/camcorder.svg
@@ -1,16 +1,16 @@
-
+
diff --git a/Demo/flat-color-icons/svg/camcorder_pro.svg b/Demo/flat-color-icons/svg/camcorder_pro.svg
index 888e303d..bc732c20 100644
--- a/Demo/flat-color-icons/svg/camcorder_pro.svg
+++ b/Demo/flat-color-icons/svg/camcorder_pro.svg
@@ -1,15 +1,15 @@
-
+
diff --git a/Demo/flat-color-icons/svg/camera.svg b/Demo/flat-color-icons/svg/camera.svg
index 02760fcf..4cdaf812 100644
--- a/Demo/flat-color-icons/svg/camera.svg
+++ b/Demo/flat-color-icons/svg/camera.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/camera_addon.svg b/Demo/flat-color-icons/svg/camera_addon.svg
index ab332707..27df2f62 100644
--- a/Demo/flat-color-icons/svg/camera_addon.svg
+++ b/Demo/flat-color-icons/svg/camera_addon.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/camera_identification.svg b/Demo/flat-color-icons/svg/camera_identification.svg
index 68336349..beceb41d 100644
--- a/Demo/flat-color-icons/svg/camera_identification.svg
+++ b/Demo/flat-color-icons/svg/camera_identification.svg
@@ -1,16 +1,16 @@
-
+
diff --git a/Demo/flat-color-icons/svg/cancel.svg b/Demo/flat-color-icons/svg/cancel.svg
index 22ee42a9..bb3b3b6c 100644
--- a/Demo/flat-color-icons/svg/cancel.svg
+++ b/Demo/flat-color-icons/svg/cancel.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/candle_sticks.svg b/Demo/flat-color-icons/svg/candle_sticks.svg
index 65516512..b50059eb 100644
--- a/Demo/flat-color-icons/svg/candle_sticks.svg
+++ b/Demo/flat-color-icons/svg/candle_sticks.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/capacitor.svg b/Demo/flat-color-icons/svg/capacitor.svg
index c4d8c362..30e652e2 100644
--- a/Demo/flat-color-icons/svg/capacitor.svg
+++ b/Demo/flat-color-icons/svg/capacitor.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/cd_logo.svg b/Demo/flat-color-icons/svg/cd_logo.svg
index e03bfcad..f8e99c06 100644
--- a/Demo/flat-color-icons/svg/cd_logo.svg
+++ b/Demo/flat-color-icons/svg/cd_logo.svg
@@ -1,40 +1,40 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/cell_phone.svg b/Demo/flat-color-icons/svg/cell_phone.svg
index 6fb9b381..1283c6a4 100644
--- a/Demo/flat-color-icons/svg/cell_phone.svg
+++ b/Demo/flat-color-icons/svg/cell_phone.svg
@@ -1,14 +1,14 @@
-
+
diff --git a/Demo/flat-color-icons/svg/charge_battery.svg b/Demo/flat-color-icons/svg/charge_battery.svg
index 1c706bfb..d3dc77f4 100644
--- a/Demo/flat-color-icons/svg/charge_battery.svg
+++ b/Demo/flat-color-icons/svg/charge_battery.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/checkmark.svg b/Demo/flat-color-icons/svg/checkmark.svg
index 044cc1e5..05fac780 100644
--- a/Demo/flat-color-icons/svg/checkmark.svg
+++ b/Demo/flat-color-icons/svg/checkmark.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/circuit.svg b/Demo/flat-color-icons/svg/circuit.svg
index 64b3262c..aa3ff065 100644
--- a/Demo/flat-color-icons/svg/circuit.svg
+++ b/Demo/flat-color-icons/svg/circuit.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/clapperboard.svg b/Demo/flat-color-icons/svg/clapperboard.svg
index c6851abf..d198cc8c 100644
--- a/Demo/flat-color-icons/svg/clapperboard.svg
+++ b/Demo/flat-color-icons/svg/clapperboard.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/flat-color-icons/svg/clear_filters.svg b/Demo/flat-color-icons/svg/clear_filters.svg
index 978f5882..a74c630f 100644
--- a/Demo/flat-color-icons/svg/clear_filters.svg
+++ b/Demo/flat-color-icons/svg/clear_filters.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/clock.svg b/Demo/flat-color-icons/svg/clock.svg
index e84d2c85..793327b1 100644
--- a/Demo/flat-color-icons/svg/clock.svg
+++ b/Demo/flat-color-icons/svg/clock.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/close_up_mode.svg b/Demo/flat-color-icons/svg/close_up_mode.svg
index 7bc47e1d..12c81890 100644
--- a/Demo/flat-color-icons/svg/close_up_mode.svg
+++ b/Demo/flat-color-icons/svg/close_up_mode.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/cloth.svg b/Demo/flat-color-icons/svg/cloth.svg
index fe4c55d1..16baa607 100644
--- a/Demo/flat-color-icons/svg/cloth.svg
+++ b/Demo/flat-color-icons/svg/cloth.svg
@@ -1,66 +1,66 @@
-
+
diff --git a/Demo/flat-color-icons/svg/collaboration.svg b/Demo/flat-color-icons/svg/collaboration.svg
index 653c08c0..5d68055f 100644
--- a/Demo/flat-color-icons/svg/collaboration.svg
+++ b/Demo/flat-color-icons/svg/collaboration.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/collapse.svg b/Demo/flat-color-icons/svg/collapse.svg
index 8ce1c0f7..f49046f3 100644
--- a/Demo/flat-color-icons/svg/collapse.svg
+++ b/Demo/flat-color-icons/svg/collapse.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/collect.svg b/Demo/flat-color-icons/svg/collect.svg
index e8425e86..7cc53bc5 100644
--- a/Demo/flat-color-icons/svg/collect.svg
+++ b/Demo/flat-color-icons/svg/collect.svg
@@ -1,19 +1,19 @@
-
+
diff --git a/Demo/flat-color-icons/svg/combo_chart.svg b/Demo/flat-color-icons/svg/combo_chart.svg
index 0c1362b2..0285ca38 100644
--- a/Demo/flat-color-icons/svg/combo_chart.svg
+++ b/Demo/flat-color-icons/svg/combo_chart.svg
@@ -1,17 +1,17 @@
-
+
diff --git a/Demo/flat-color-icons/svg/command_line.svg b/Demo/flat-color-icons/svg/command_line.svg
index b8ab3a82..6566ed76 100644
--- a/Demo/flat-color-icons/svg/command_line.svg
+++ b/Demo/flat-color-icons/svg/command_line.svg
@@ -1,24 +1,24 @@
-
-
-
+
+
+
diff --git a/Demo/flat-color-icons/svg/comments.svg b/Demo/flat-color-icons/svg/comments.svg
index c823ffa5..0eca875b 100644
--- a/Demo/flat-color-icons/svg/comments.svg
+++ b/Demo/flat-color-icons/svg/comments.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/compact_camera.svg b/Demo/flat-color-icons/svg/compact_camera.svg
index c7058920..1b2c44e9 100644
--- a/Demo/flat-color-icons/svg/compact_camera.svg
+++ b/Demo/flat-color-icons/svg/compact_camera.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/conference_call.svg b/Demo/flat-color-icons/svg/conference_call.svg
index 08aea613..cf8e4cf9 100644
--- a/Demo/flat-color-icons/svg/conference_call.svg
+++ b/Demo/flat-color-icons/svg/conference_call.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/contacts.svg b/Demo/flat-color-icons/svg/contacts.svg
index 517a8518..e30d0f86 100644
--- a/Demo/flat-color-icons/svg/contacts.svg
+++ b/Demo/flat-color-icons/svg/contacts.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/copyleft.svg b/Demo/flat-color-icons/svg/copyleft.svg
index 43620647..10165ee0 100644
--- a/Demo/flat-color-icons/svg/copyleft.svg
+++ b/Demo/flat-color-icons/svg/copyleft.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/copyright.svg b/Demo/flat-color-icons/svg/copyright.svg
index f2757491..1f5a654b 100644
--- a/Demo/flat-color-icons/svg/copyright.svg
+++ b/Demo/flat-color-icons/svg/copyright.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/crystal_oscillator.svg b/Demo/flat-color-icons/svg/crystal_oscillator.svg
index d0786c2c..c8eab8ca 100644
--- a/Demo/flat-color-icons/svg/crystal_oscillator.svg
+++ b/Demo/flat-color-icons/svg/crystal_oscillator.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/currency_exchange.svg b/Demo/flat-color-icons/svg/currency_exchange.svg
index be50ba94..df23e7af 100644
--- a/Demo/flat-color-icons/svg/currency_exchange.svg
+++ b/Demo/flat-color-icons/svg/currency_exchange.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/cursor.svg b/Demo/flat-color-icons/svg/cursor.svg
index 8b3f0976..efe5eae5 100644
--- a/Demo/flat-color-icons/svg/cursor.svg
+++ b/Demo/flat-color-icons/svg/cursor.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/customer_support.svg b/Demo/flat-color-icons/svg/customer_support.svg
index fd4a0bd2..53224194 100644
--- a/Demo/flat-color-icons/svg/customer_support.svg
+++ b/Demo/flat-color-icons/svg/customer_support.svg
@@ -1,13 +1,13 @@
-
+
diff --git a/Demo/flat-color-icons/svg/dam.svg b/Demo/flat-color-icons/svg/dam.svg
index 3af26d57..d2364b0f 100644
--- a/Demo/flat-color-icons/svg/dam.svg
+++ b/Demo/flat-color-icons/svg/dam.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/flat-color-icons/svg/data_backup.svg b/Demo/flat-color-icons/svg/data_backup.svg
index e0ecc971..3e4b68c1 100644
--- a/Demo/flat-color-icons/svg/data_backup.svg
+++ b/Demo/flat-color-icons/svg/data_backup.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/data_configuration.svg b/Demo/flat-color-icons/svg/data_configuration.svg
index 2cdb75ce..db4e7b9f 100644
--- a/Demo/flat-color-icons/svg/data_configuration.svg
+++ b/Demo/flat-color-icons/svg/data_configuration.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/data_encryption.svg b/Demo/flat-color-icons/svg/data_encryption.svg
index 7987905d..69359f9c 100644
--- a/Demo/flat-color-icons/svg/data_encryption.svg
+++ b/Demo/flat-color-icons/svg/data_encryption.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/data_protection.svg b/Demo/flat-color-icons/svg/data_protection.svg
index f6996678..50b945e7 100644
--- a/Demo/flat-color-icons/svg/data_protection.svg
+++ b/Demo/flat-color-icons/svg/data_protection.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/data_recovery.svg b/Demo/flat-color-icons/svg/data_recovery.svg
index 8f94298f..09cffde9 100644
--- a/Demo/flat-color-icons/svg/data_recovery.svg
+++ b/Demo/flat-color-icons/svg/data_recovery.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/data_sheet.svg b/Demo/flat-color-icons/svg/data_sheet.svg
index b7872fa9..b1da8199 100644
--- a/Demo/flat-color-icons/svg/data_sheet.svg
+++ b/Demo/flat-color-icons/svg/data_sheet.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/database.svg b/Demo/flat-color-icons/svg/database.svg
index ecbaaa1c..582035ce 100644
--- a/Demo/flat-color-icons/svg/database.svg
+++ b/Demo/flat-color-icons/svg/database.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/debian.svg b/Demo/flat-color-icons/svg/debian.svg
index 0d72e807..40ebe97b 100644
--- a/Demo/flat-color-icons/svg/debian.svg
+++ b/Demo/flat-color-icons/svg/debian.svg
@@ -1,44 +1,44 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/debt.svg b/Demo/flat-color-icons/svg/debt.svg
index 2a42f1de..5c024e9b 100644
--- a/Demo/flat-color-icons/svg/debt.svg
+++ b/Demo/flat-color-icons/svg/debt.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/decision.svg b/Demo/flat-color-icons/svg/decision.svg
index 0aea0007..8f3f75c4 100644
--- a/Demo/flat-color-icons/svg/decision.svg
+++ b/Demo/flat-color-icons/svg/decision.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/delete_column.svg b/Demo/flat-color-icons/svg/delete_column.svg
index 9003ca2b..289cdee6 100644
--- a/Demo/flat-color-icons/svg/delete_column.svg
+++ b/Demo/flat-color-icons/svg/delete_column.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/delete_database.svg b/Demo/flat-color-icons/svg/delete_database.svg
index f5d69c63..da934aa6 100644
--- a/Demo/flat-color-icons/svg/delete_database.svg
+++ b/Demo/flat-color-icons/svg/delete_database.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/delete_row.svg b/Demo/flat-color-icons/svg/delete_row.svg
index 9079e24f..811d4636 100644
--- a/Demo/flat-color-icons/svg/delete_row.svg
+++ b/Demo/flat-color-icons/svg/delete_row.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/department.svg b/Demo/flat-color-icons/svg/department.svg
index 7a7b49fc..1f756118 100644
--- a/Demo/flat-color-icons/svg/department.svg
+++ b/Demo/flat-color-icons/svg/department.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/flat-color-icons/svg/deployment.svg b/Demo/flat-color-icons/svg/deployment.svg
index 8ec36417..4601c516 100644
--- a/Demo/flat-color-icons/svg/deployment.svg
+++ b/Demo/flat-color-icons/svg/deployment.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/diploma_1.svg b/Demo/flat-color-icons/svg/diploma_1.svg
index 3194c3ae..f64a90c0 100644
--- a/Demo/flat-color-icons/svg/diploma_1.svg
+++ b/Demo/flat-color-icons/svg/diploma_1.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/diploma_2.svg b/Demo/flat-color-icons/svg/diploma_2.svg
index ea8d5534..da0a0918 100644
--- a/Demo/flat-color-icons/svg/diploma_2.svg
+++ b/Demo/flat-color-icons/svg/diploma_2.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/disapprove.svg b/Demo/flat-color-icons/svg/disapprove.svg
index 0c146242..1c7ea5cc 100644
--- a/Demo/flat-color-icons/svg/disapprove.svg
+++ b/Demo/flat-color-icons/svg/disapprove.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/disclaimer.svg b/Demo/flat-color-icons/svg/disclaimer.svg
index c48a1f8d..0ec7a91e 100644
--- a/Demo/flat-color-icons/svg/disclaimer.svg
+++ b/Demo/flat-color-icons/svg/disclaimer.svg
@@ -1,14 +1,14 @@
-
+
diff --git a/Demo/flat-color-icons/svg/dislike.svg b/Demo/flat-color-icons/svg/dislike.svg
index 36a9f3ee..fee8b1ca 100644
--- a/Demo/flat-color-icons/svg/dislike.svg
+++ b/Demo/flat-color-icons/svg/dislike.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/display.svg b/Demo/flat-color-icons/svg/display.svg
index 7ee9f1fa..d0bfb8db 100644
--- a/Demo/flat-color-icons/svg/display.svg
+++ b/Demo/flat-color-icons/svg/display.svg
@@ -1,13 +1,13 @@
-
+
diff --git a/Demo/flat-color-icons/svg/do_not_inhale.svg b/Demo/flat-color-icons/svg/do_not_inhale.svg
index 3620b6b6..571f89d6 100644
--- a/Demo/flat-color-icons/svg/do_not_inhale.svg
+++ b/Demo/flat-color-icons/svg/do_not_inhale.svg
@@ -1,14 +1,14 @@
-
+
diff --git a/Demo/flat-color-icons/svg/do_not_insert.svg b/Demo/flat-color-icons/svg/do_not_insert.svg
index 0da319c6..578ba3e7 100644
--- a/Demo/flat-color-icons/svg/do_not_insert.svg
+++ b/Demo/flat-color-icons/svg/do_not_insert.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/do_not_mix.svg b/Demo/flat-color-icons/svg/do_not_mix.svg
index dde058f7..e27351b3 100644
--- a/Demo/flat-color-icons/svg/do_not_mix.svg
+++ b/Demo/flat-color-icons/svg/do_not_mix.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/document.svg b/Demo/flat-color-icons/svg/document.svg
index 7b392f85..38880243 100644
--- a/Demo/flat-color-icons/svg/document.svg
+++ b/Demo/flat-color-icons/svg/document.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/donate.svg b/Demo/flat-color-icons/svg/donate.svg
index dc785fa3..acb32571 100644
--- a/Demo/flat-color-icons/svg/donate.svg
+++ b/Demo/flat-color-icons/svg/donate.svg
@@ -1,13 +1,13 @@
-
+
diff --git a/Demo/flat-color-icons/svg/doughnut_chart.svg b/Demo/flat-color-icons/svg/doughnut_chart.svg
index 82f03e1e..4da3b365 100644
--- a/Demo/flat-color-icons/svg/doughnut_chart.svg
+++ b/Demo/flat-color-icons/svg/doughnut_chart.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/down.svg b/Demo/flat-color-icons/svg/down.svg
index 58ff53d9..a98ebd75 100644
--- a/Demo/flat-color-icons/svg/down.svg
+++ b/Demo/flat-color-icons/svg/down.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/down_left.svg b/Demo/flat-color-icons/svg/down_left.svg
index 19a51980..74f70900 100644
--- a/Demo/flat-color-icons/svg/down_left.svg
+++ b/Demo/flat-color-icons/svg/down_left.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/down_right.svg b/Demo/flat-color-icons/svg/down_right.svg
index 7dbc517d..5080dbeb 100644
--- a/Demo/flat-color-icons/svg/down_right.svg
+++ b/Demo/flat-color-icons/svg/down_right.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/download.svg b/Demo/flat-color-icons/svg/download.svg
index 90513b75..bc9a11fc 100644
--- a/Demo/flat-color-icons/svg/download.svg
+++ b/Demo/flat-color-icons/svg/download.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/dribbble.svg b/Demo/flat-color-icons/svg/dribbble.svg
index ea1e5a6f..70973366 100644
--- a/Demo/flat-color-icons/svg/dribbble.svg
+++ b/Demo/flat-color-icons/svg/dribbble.svg
@@ -1,16 +1,16 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/dvd_logo.svg b/Demo/flat-color-icons/svg/dvd_logo.svg
index 662650a9..e97a1d25 100644
--- a/Demo/flat-color-icons/svg/dvd_logo.svg
+++ b/Demo/flat-color-icons/svg/dvd_logo.svg
@@ -1,19 +1,19 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/edit_image.svg b/Demo/flat-color-icons/svg/edit_image.svg
index 3dd2020e..9788a2b5 100644
--- a/Demo/flat-color-icons/svg/edit_image.svg
+++ b/Demo/flat-color-icons/svg/edit_image.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/electrical_sensor.svg b/Demo/flat-color-icons/svg/electrical_sensor.svg
index 54249565..11762b3f 100644
--- a/Demo/flat-color-icons/svg/electrical_sensor.svg
+++ b/Demo/flat-color-icons/svg/electrical_sensor.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/electrical_threshold.svg b/Demo/flat-color-icons/svg/electrical_threshold.svg
index 827d39e5..d4ed4a38 100644
--- a/Demo/flat-color-icons/svg/electrical_threshold.svg
+++ b/Demo/flat-color-icons/svg/electrical_threshold.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/electricity.svg b/Demo/flat-color-icons/svg/electricity.svg
index 355229cf..ccaed1db 100644
--- a/Demo/flat-color-icons/svg/electricity.svg
+++ b/Demo/flat-color-icons/svg/electricity.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/electro_devices.svg b/Demo/flat-color-icons/svg/electro_devices.svg
index 7d9fa3ae..5b60c0e9 100644
--- a/Demo/flat-color-icons/svg/electro_devices.svg
+++ b/Demo/flat-color-icons/svg/electro_devices.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/electronics.svg b/Demo/flat-color-icons/svg/electronics.svg
index eb6a3c98..6ed29d41 100644
--- a/Demo/flat-color-icons/svg/electronics.svg
+++ b/Demo/flat-color-icons/svg/electronics.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/empty_battery.svg b/Demo/flat-color-icons/svg/empty_battery.svg
index b1e61c3f..aae969ba 100644
--- a/Demo/flat-color-icons/svg/empty_battery.svg
+++ b/Demo/flat-color-icons/svg/empty_battery.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/empty_filter.svg b/Demo/flat-color-icons/svg/empty_filter.svg
index 7952c75b..1bdd5959 100644
--- a/Demo/flat-color-icons/svg/empty_filter.svg
+++ b/Demo/flat-color-icons/svg/empty_filter.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/empty_trash.svg b/Demo/flat-color-icons/svg/empty_trash.svg
index cd48e961..440ac6e9 100644
--- a/Demo/flat-color-icons/svg/empty_trash.svg
+++ b/Demo/flat-color-icons/svg/empty_trash.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/end_call.svg b/Demo/flat-color-icons/svg/end_call.svg
index 056c0858..27243b94 100644
--- a/Demo/flat-color-icons/svg/end_call.svg
+++ b/Demo/flat-color-icons/svg/end_call.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/engineering.svg b/Demo/flat-color-icons/svg/engineering.svg
index 76a7a6a0..e911782a 100644
--- a/Demo/flat-color-icons/svg/engineering.svg
+++ b/Demo/flat-color-icons/svg/engineering.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/entering_heaven_alive.svg b/Demo/flat-color-icons/svg/entering_heaven_alive.svg
index d318230c..ca9bebd4 100644
--- a/Demo/flat-color-icons/svg/entering_heaven_alive.svg
+++ b/Demo/flat-color-icons/svg/entering_heaven_alive.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/expand.svg b/Demo/flat-color-icons/svg/expand.svg
index 40d49179..b8fdc988 100644
--- a/Demo/flat-color-icons/svg/expand.svg
+++ b/Demo/flat-color-icons/svg/expand.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/expired.svg b/Demo/flat-color-icons/svg/expired.svg
index 0b22296c..183b43c0 100644
--- a/Demo/flat-color-icons/svg/expired.svg
+++ b/Demo/flat-color-icons/svg/expired.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/export.svg b/Demo/flat-color-icons/svg/export.svg
index e5d1928f..f93674ad 100644
--- a/Demo/flat-color-icons/svg/export.svg
+++ b/Demo/flat-color-icons/svg/export.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/external.svg b/Demo/flat-color-icons/svg/external.svg
index eac6c037..6c8e1ec4 100644
--- a/Demo/flat-color-icons/svg/external.svg
+++ b/Demo/flat-color-icons/svg/external.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/factory.svg b/Demo/flat-color-icons/svg/factory.svg
index 12eb6656..d8ff81ae 100644
--- a/Demo/flat-color-icons/svg/factory.svg
+++ b/Demo/flat-color-icons/svg/factory.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/factory_breakdown.svg b/Demo/flat-color-icons/svg/factory_breakdown.svg
index 881e0276..0de09d09 100644
--- a/Demo/flat-color-icons/svg/factory_breakdown.svg
+++ b/Demo/flat-color-icons/svg/factory_breakdown.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/faq.svg b/Demo/flat-color-icons/svg/faq.svg
index dae5cf71..7eeb5590 100644
--- a/Demo/flat-color-icons/svg/faq.svg
+++ b/Demo/flat-color-icons/svg/faq.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/feed_in.svg b/Demo/flat-color-icons/svg/feed_in.svg
index 1d5903fa..6c0688e9 100644
--- a/Demo/flat-color-icons/svg/feed_in.svg
+++ b/Demo/flat-color-icons/svg/feed_in.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/feedback.svg b/Demo/flat-color-icons/svg/feedback.svg
index a5da4fa6..f6dab95d 100644
--- a/Demo/flat-color-icons/svg/feedback.svg
+++ b/Demo/flat-color-icons/svg/feedback.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/file.svg b/Demo/flat-color-icons/svg/file.svg
index e7d2f40e..04ff2b29 100644
--- a/Demo/flat-color-icons/svg/file.svg
+++ b/Demo/flat-color-icons/svg/file.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/filing_cabinet.svg b/Demo/flat-color-icons/svg/filing_cabinet.svg
index 07acffc0..ef38124f 100644
--- a/Demo/flat-color-icons/svg/filing_cabinet.svg
+++ b/Demo/flat-color-icons/svg/filing_cabinet.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/filled_filter.svg b/Demo/flat-color-icons/svg/filled_filter.svg
index 744bf3f8..0509354d 100644
--- a/Demo/flat-color-icons/svg/filled_filter.svg
+++ b/Demo/flat-color-icons/svg/filled_filter.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/film.svg b/Demo/flat-color-icons/svg/film.svg
index 50758008..ad6313ca 100644
--- a/Demo/flat-color-icons/svg/film.svg
+++ b/Demo/flat-color-icons/svg/film.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/film_reel.svg b/Demo/flat-color-icons/svg/film_reel.svg
index 785dd5a2..98af6ebf 100644
--- a/Demo/flat-color-icons/svg/film_reel.svg
+++ b/Demo/flat-color-icons/svg/film_reel.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/fine_print.svg b/Demo/flat-color-icons/svg/fine_print.svg
index e7381e1e..bdce14d5 100644
--- a/Demo/flat-color-icons/svg/fine_print.svg
+++ b/Demo/flat-color-icons/svg/fine_print.svg
@@ -1,16 +1,16 @@
-
+
diff --git a/Demo/flat-color-icons/svg/flash_auto.svg b/Demo/flat-color-icons/svg/flash_auto.svg
index 98ce7095..15224760 100644
--- a/Demo/flat-color-icons/svg/flash_auto.svg
+++ b/Demo/flat-color-icons/svg/flash_auto.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/flash_off.svg b/Demo/flat-color-icons/svg/flash_off.svg
index e77160fa..8486e6d2 100644
--- a/Demo/flat-color-icons/svg/flash_off.svg
+++ b/Demo/flat-color-icons/svg/flash_off.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/flash_on.svg b/Demo/flat-color-icons/svg/flash_on.svg
index e8e5ad67..8a41b843 100644
--- a/Demo/flat-color-icons/svg/flash_on.svg
+++ b/Demo/flat-color-icons/svg/flash_on.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/flow_chart.svg b/Demo/flat-color-icons/svg/flow_chart.svg
index 2928a6ee..63b5b681 100644
--- a/Demo/flat-color-icons/svg/flow_chart.svg
+++ b/Demo/flat-color-icons/svg/flow_chart.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/folder.svg b/Demo/flat-color-icons/svg/folder.svg
index 66b2e3b2..00a33552 100644
--- a/Demo/flat-color-icons/svg/folder.svg
+++ b/Demo/flat-color-icons/svg/folder.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/frame.svg b/Demo/flat-color-icons/svg/frame.svg
index 92937eae..911838a6 100644
--- a/Demo/flat-color-icons/svg/frame.svg
+++ b/Demo/flat-color-icons/svg/frame.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/full_battery.svg b/Demo/flat-color-icons/svg/full_battery.svg
index 5ce27440..02a8782a 100644
--- a/Demo/flat-color-icons/svg/full_battery.svg
+++ b/Demo/flat-color-icons/svg/full_battery.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/full_trash.svg b/Demo/flat-color-icons/svg/full_trash.svg
index bcd9a520..97c9f332 100644
--- a/Demo/flat-color-icons/svg/full_trash.svg
+++ b/Demo/flat-color-icons/svg/full_trash.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/gallery.svg b/Demo/flat-color-icons/svg/gallery.svg
index 2b895679..a3f1998a 100644
--- a/Demo/flat-color-icons/svg/gallery.svg
+++ b/Demo/flat-color-icons/svg/gallery.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/genealogy.svg b/Demo/flat-color-icons/svg/genealogy.svg
index adadfbda..1c484b22 100644
--- a/Demo/flat-color-icons/svg/genealogy.svg
+++ b/Demo/flat-color-icons/svg/genealogy.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/generic_sorting_asc.svg b/Demo/flat-color-icons/svg/generic_sorting_asc.svg
index 50dcbdbf..fe2aa84b 100644
--- a/Demo/flat-color-icons/svg/generic_sorting_asc.svg
+++ b/Demo/flat-color-icons/svg/generic_sorting_asc.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/generic_sorting_desc.svg b/Demo/flat-color-icons/svg/generic_sorting_desc.svg
index d78bcf3e..f7b86f4c 100644
--- a/Demo/flat-color-icons/svg/generic_sorting_desc.svg
+++ b/Demo/flat-color-icons/svg/generic_sorting_desc.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/globe.svg b/Demo/flat-color-icons/svg/globe.svg
index b6faa3a3..56004879 100644
--- a/Demo/flat-color-icons/svg/globe.svg
+++ b/Demo/flat-color-icons/svg/globe.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/good_decision.svg b/Demo/flat-color-icons/svg/good_decision.svg
index 9721b1aa..e99d48bc 100644
--- a/Demo/flat-color-icons/svg/good_decision.svg
+++ b/Demo/flat-color-icons/svg/good_decision.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/google.svg b/Demo/flat-color-icons/svg/google.svg
index 80efd14e..79bdbe8a 100644
--- a/Demo/flat-color-icons/svg/google.svg
+++ b/Demo/flat-color-icons/svg/google.svg
@@ -1,15 +1,15 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/graduation_cap.svg b/Demo/flat-color-icons/svg/graduation_cap.svg
index bb4c0d9b..79c57395 100644
--- a/Demo/flat-color-icons/svg/graduation_cap.svg
+++ b/Demo/flat-color-icons/svg/graduation_cap.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/grid.svg b/Demo/flat-color-icons/svg/grid.svg
index f263eaf6..9908d13e 100644
--- a/Demo/flat-color-icons/svg/grid.svg
+++ b/Demo/flat-color-icons/svg/grid.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/headset.svg b/Demo/flat-color-icons/svg/headset.svg
index cd9791f7..ca5cfdb4 100644
--- a/Demo/flat-color-icons/svg/headset.svg
+++ b/Demo/flat-color-icons/svg/headset.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/heat_map.svg b/Demo/flat-color-icons/svg/heat_map.svg
index b4dd33bc..0b32a8fc 100644
--- a/Demo/flat-color-icons/svg/heat_map.svg
+++ b/Demo/flat-color-icons/svg/heat_map.svg
@@ -1,16 +1,16 @@
-
+
diff --git a/Demo/flat-color-icons/svg/high_battery.svg b/Demo/flat-color-icons/svg/high_battery.svg
index 150dc7c7..93cd83bf 100644
--- a/Demo/flat-color-icons/svg/high_battery.svg
+++ b/Demo/flat-color-icons/svg/high_battery.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/high_priority.svg b/Demo/flat-color-icons/svg/high_priority.svg
index 58ac7d5b..bd397ccb 100644
--- a/Demo/flat-color-icons/svg/high_priority.svg
+++ b/Demo/flat-color-icons/svg/high_priority.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/home.svg b/Demo/flat-color-icons/svg/home.svg
index f4167601..262cb1c2 100644
--- a/Demo/flat-color-icons/svg/home.svg
+++ b/Demo/flat-color-icons/svg/home.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/icons8_cup.svg b/Demo/flat-color-icons/svg/icons8_cup.svg
index 7055bdb8..c2ebb498 100644
--- a/Demo/flat-color-icons/svg/icons8_cup.svg
+++ b/Demo/flat-color-icons/svg/icons8_cup.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/idea.svg b/Demo/flat-color-icons/svg/idea.svg
index c88cb275..2e1bfcbb 100644
--- a/Demo/flat-color-icons/svg/idea.svg
+++ b/Demo/flat-color-icons/svg/idea.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/image_file.svg b/Demo/flat-color-icons/svg/image_file.svg
index d6a23144..36be71d6 100644
--- a/Demo/flat-color-icons/svg/image_file.svg
+++ b/Demo/flat-color-icons/svg/image_file.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/import.svg b/Demo/flat-color-icons/svg/import.svg
index 1696a780..38b24438 100644
--- a/Demo/flat-color-icons/svg/import.svg
+++ b/Demo/flat-color-icons/svg/import.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/in_transit.svg b/Demo/flat-color-icons/svg/in_transit.svg
index 26b4ce7a..07d4e8cf 100644
--- a/Demo/flat-color-icons/svg/in_transit.svg
+++ b/Demo/flat-color-icons/svg/in_transit.svg
@@ -1,25 +1,25 @@
-
+
diff --git a/Demo/flat-color-icons/svg/info.svg b/Demo/flat-color-icons/svg/info.svg
index 0842a79c..47771cbe 100644
--- a/Demo/flat-color-icons/svg/info.svg
+++ b/Demo/flat-color-icons/svg/info.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/inspection.svg b/Demo/flat-color-icons/svg/inspection.svg
index 4885aeac..d14664c0 100644
--- a/Demo/flat-color-icons/svg/inspection.svg
+++ b/Demo/flat-color-icons/svg/inspection.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/integrated_webcam.svg b/Demo/flat-color-icons/svg/integrated_webcam.svg
index 0026a6d3..4b228a08 100644
--- a/Demo/flat-color-icons/svg/integrated_webcam.svg
+++ b/Demo/flat-color-icons/svg/integrated_webcam.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/internal.svg b/Demo/flat-color-icons/svg/internal.svg
index 7be0c1f5..cf436212 100644
--- a/Demo/flat-color-icons/svg/internal.svg
+++ b/Demo/flat-color-icons/svg/internal.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/invite.svg b/Demo/flat-color-icons/svg/invite.svg
index 9f012ad6..cf7d4805 100644
--- a/Demo/flat-color-icons/svg/invite.svg
+++ b/Demo/flat-color-icons/svg/invite.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/ipad.svg b/Demo/flat-color-icons/svg/ipad.svg
index addb7738..ca5f358b 100644
--- a/Demo/flat-color-icons/svg/ipad.svg
+++ b/Demo/flat-color-icons/svg/ipad.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/iphone.svg b/Demo/flat-color-icons/svg/iphone.svg
index 128b5d70..040de17a 100644
--- a/Demo/flat-color-icons/svg/iphone.svg
+++ b/Demo/flat-color-icons/svg/iphone.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/key.svg b/Demo/flat-color-icons/svg/key.svg
index a5f47e90..7012d9f8 100644
--- a/Demo/flat-color-icons/svg/key.svg
+++ b/Demo/flat-color-icons/svg/key.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/kindle.svg b/Demo/flat-color-icons/svg/kindle.svg
index 8a5e6145..f5065ddb 100644
--- a/Demo/flat-color-icons/svg/kindle.svg
+++ b/Demo/flat-color-icons/svg/kindle.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/landscape.svg b/Demo/flat-color-icons/svg/landscape.svg
index dfe42d17..3db1c3b9 100644
--- a/Demo/flat-color-icons/svg/landscape.svg
+++ b/Demo/flat-color-icons/svg/landscape.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/leave.svg b/Demo/flat-color-icons/svg/leave.svg
index 5ccfd51f..66a12ccf 100644
--- a/Demo/flat-color-icons/svg/leave.svg
+++ b/Demo/flat-color-icons/svg/leave.svg
@@ -1,13 +1,13 @@
-
+
diff --git a/Demo/flat-color-icons/svg/left.svg b/Demo/flat-color-icons/svg/left.svg
index c845cc96..62773db4 100644
--- a/Demo/flat-color-icons/svg/left.svg
+++ b/Demo/flat-color-icons/svg/left.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/left_down.svg b/Demo/flat-color-icons/svg/left_down.svg
index 61a2f0a8..75455aaf 100644
--- a/Demo/flat-color-icons/svg/left_down.svg
+++ b/Demo/flat-color-icons/svg/left_down.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/left_down2.svg b/Demo/flat-color-icons/svg/left_down2.svg
index a7183aaf..085c65c5 100644
--- a/Demo/flat-color-icons/svg/left_down2.svg
+++ b/Demo/flat-color-icons/svg/left_down2.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/left_up.svg b/Demo/flat-color-icons/svg/left_up.svg
index 56eed193..e0347cf0 100644
--- a/Demo/flat-color-icons/svg/left_up.svg
+++ b/Demo/flat-color-icons/svg/left_up.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/left_up2.svg b/Demo/flat-color-icons/svg/left_up2.svg
index c71db15b..0cb049cd 100644
--- a/Demo/flat-color-icons/svg/left_up2.svg
+++ b/Demo/flat-color-icons/svg/left_up2.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/library.svg b/Demo/flat-color-icons/svg/library.svg
index 14dde6af..aba53623 100644
--- a/Demo/flat-color-icons/svg/library.svg
+++ b/Demo/flat-color-icons/svg/library.svg
@@ -1,23 +1,23 @@
-
+
diff --git a/Demo/flat-color-icons/svg/light_at_the_end_of_tunnel.svg b/Demo/flat-color-icons/svg/light_at_the_end_of_tunnel.svg
index 0ce73146..faf8e121 100644
--- a/Demo/flat-color-icons/svg/light_at_the_end_of_tunnel.svg
+++ b/Demo/flat-color-icons/svg/light_at_the_end_of_tunnel.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/like.svg b/Demo/flat-color-icons/svg/like.svg
index 880f5920..e31b0316 100644
--- a/Demo/flat-color-icons/svg/like.svg
+++ b/Demo/flat-color-icons/svg/like.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/like_placeholder.svg b/Demo/flat-color-icons/svg/like_placeholder.svg
index a5050d8b..9e41db75 100644
--- a/Demo/flat-color-icons/svg/like_placeholder.svg
+++ b/Demo/flat-color-icons/svg/like_placeholder.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/line_chart.svg b/Demo/flat-color-icons/svg/line_chart.svg
index fcd0a783..c5ca8e98 100644
--- a/Demo/flat-color-icons/svg/line_chart.svg
+++ b/Demo/flat-color-icons/svg/line_chart.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/flat-color-icons/svg/link.svg b/Demo/flat-color-icons/svg/link.svg
index 43c700f5..bef36e7b 100644
--- a/Demo/flat-color-icons/svg/link.svg
+++ b/Demo/flat-color-icons/svg/link.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/linux.svg b/Demo/flat-color-icons/svg/linux.svg
index 5164df65..d53d2ae3 100644
--- a/Demo/flat-color-icons/svg/linux.svg
+++ b/Demo/flat-color-icons/svg/linux.svg
@@ -1,50 +1,50 @@
-
-
-
+
+
+
diff --git a/Demo/flat-color-icons/svg/list.svg b/Demo/flat-color-icons/svg/list.svg
index f5c8082c..f03bff91 100644
--- a/Demo/flat-color-icons/svg/list.svg
+++ b/Demo/flat-color-icons/svg/list.svg
@@ -1,16 +1,16 @@
-
+
diff --git a/Demo/flat-color-icons/svg/lock.svg b/Demo/flat-color-icons/svg/lock.svg
index 8d0a9b88..8ed20a19 100644
--- a/Demo/flat-color-icons/svg/lock.svg
+++ b/Demo/flat-color-icons/svg/lock.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/lock_landscape.svg b/Demo/flat-color-icons/svg/lock_landscape.svg
index 740f80d9..a91a9ea9 100644
--- a/Demo/flat-color-icons/svg/lock_landscape.svg
+++ b/Demo/flat-color-icons/svg/lock_landscape.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/lock_portrait.svg b/Demo/flat-color-icons/svg/lock_portrait.svg
index 5d52cf49..21faf70d 100644
--- a/Demo/flat-color-icons/svg/lock_portrait.svg
+++ b/Demo/flat-color-icons/svg/lock_portrait.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/low_battery.svg b/Demo/flat-color-icons/svg/low_battery.svg
index 7225f260..54bdca5d 100644
--- a/Demo/flat-color-icons/svg/low_battery.svg
+++ b/Demo/flat-color-icons/svg/low_battery.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/low_priority.svg b/Demo/flat-color-icons/svg/low_priority.svg
index 96ff311c..61e73964 100644
--- a/Demo/flat-color-icons/svg/low_priority.svg
+++ b/Demo/flat-color-icons/svg/low_priority.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/make_decision.svg b/Demo/flat-color-icons/svg/make_decision.svg
index 149774df..e8e9c4fc 100644
--- a/Demo/flat-color-icons/svg/make_decision.svg
+++ b/Demo/flat-color-icons/svg/make_decision.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/manager.svg b/Demo/flat-color-icons/svg/manager.svg
index b392a586..c048c6f2 100644
--- a/Demo/flat-color-icons/svg/manager.svg
+++ b/Demo/flat-color-icons/svg/manager.svg
@@ -1,15 +1,15 @@
-
+
diff --git a/Demo/flat-color-icons/svg/medium_priority.svg b/Demo/flat-color-icons/svg/medium_priority.svg
index bcd9ca9d..e433707b 100644
--- a/Demo/flat-color-icons/svg/medium_priority.svg
+++ b/Demo/flat-color-icons/svg/medium_priority.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/menu.svg b/Demo/flat-color-icons/svg/menu.svg
index 1ab7df53..9c4e3cff 100644
--- a/Demo/flat-color-icons/svg/menu.svg
+++ b/Demo/flat-color-icons/svg/menu.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/middle_battery.svg b/Demo/flat-color-icons/svg/middle_battery.svg
index a483b093..83e078a9 100644
--- a/Demo/flat-color-icons/svg/middle_battery.svg
+++ b/Demo/flat-color-icons/svg/middle_battery.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/mind_map.svg b/Demo/flat-color-icons/svg/mind_map.svg
index a534b6ba..750b9734 100644
--- a/Demo/flat-color-icons/svg/mind_map.svg
+++ b/Demo/flat-color-icons/svg/mind_map.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/minus.svg b/Demo/flat-color-icons/svg/minus.svg
index c50f43c3..470c34a5 100644
--- a/Demo/flat-color-icons/svg/minus.svg
+++ b/Demo/flat-color-icons/svg/minus.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/missed_call.svg b/Demo/flat-color-icons/svg/missed_call.svg
index 19602f65..cb5bf262 100644
--- a/Demo/flat-color-icons/svg/missed_call.svg
+++ b/Demo/flat-color-icons/svg/missed_call.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/mms.svg b/Demo/flat-color-icons/svg/mms.svg
index 23f75fd2..8dfb8f31 100644
--- a/Demo/flat-color-icons/svg/mms.svg
+++ b/Demo/flat-color-icons/svg/mms.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/money_transfer.svg b/Demo/flat-color-icons/svg/money_transfer.svg
index 7804c6d9..03d824ac 100644
--- a/Demo/flat-color-icons/svg/money_transfer.svg
+++ b/Demo/flat-color-icons/svg/money_transfer.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/multiple_cameras.svg b/Demo/flat-color-icons/svg/multiple_cameras.svg
index 029fc84f..ca0098eb 100644
--- a/Demo/flat-color-icons/svg/multiple_cameras.svg
+++ b/Demo/flat-color-icons/svg/multiple_cameras.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/multiple_devices.svg b/Demo/flat-color-icons/svg/multiple_devices.svg
index f8fbfac6..91f4a36b 100644
--- a/Demo/flat-color-icons/svg/multiple_devices.svg
+++ b/Demo/flat-color-icons/svg/multiple_devices.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/multiple_inputs.svg b/Demo/flat-color-icons/svg/multiple_inputs.svg
index a403cbd3..a9ac5904 100644
--- a/Demo/flat-color-icons/svg/multiple_inputs.svg
+++ b/Demo/flat-color-icons/svg/multiple_inputs.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/multiple_smartphones.svg b/Demo/flat-color-icons/svg/multiple_smartphones.svg
index df3a507e..e07d64af 100644
--- a/Demo/flat-color-icons/svg/multiple_smartphones.svg
+++ b/Demo/flat-color-icons/svg/multiple_smartphones.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/music.svg b/Demo/flat-color-icons/svg/music.svg
index 6a445119..38238563 100644
--- a/Demo/flat-color-icons/svg/music.svg
+++ b/Demo/flat-color-icons/svg/music.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/negative_dynamic.svg b/Demo/flat-color-icons/svg/negative_dynamic.svg
index 51e2b69b..e6d4a2e2 100644
--- a/Demo/flat-color-icons/svg/negative_dynamic.svg
+++ b/Demo/flat-color-icons/svg/negative_dynamic.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/neutral_decision.svg b/Demo/flat-color-icons/svg/neutral_decision.svg
index 7a543935..5cc1a3b2 100644
--- a/Demo/flat-color-icons/svg/neutral_decision.svg
+++ b/Demo/flat-color-icons/svg/neutral_decision.svg
@@ -1,13 +1,13 @@
-
+
diff --git a/Demo/flat-color-icons/svg/neutral_trading.svg b/Demo/flat-color-icons/svg/neutral_trading.svg
index f8c0d2e2..a273d049 100644
--- a/Demo/flat-color-icons/svg/neutral_trading.svg
+++ b/Demo/flat-color-icons/svg/neutral_trading.svg
@@ -1,15 +1,15 @@
-
+
diff --git a/Demo/flat-color-icons/svg/news.svg b/Demo/flat-color-icons/svg/news.svg
index 052f42b9..d668438b 100644
--- a/Demo/flat-color-icons/svg/news.svg
+++ b/Demo/flat-color-icons/svg/news.svg
@@ -1,19 +1,19 @@
-
+
diff --git a/Demo/flat-color-icons/svg/next.svg b/Demo/flat-color-icons/svg/next.svg
index 2986bf95..2099cb5d 100644
--- a/Demo/flat-color-icons/svg/next.svg
+++ b/Demo/flat-color-icons/svg/next.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/nfc_sign.svg b/Demo/flat-color-icons/svg/nfc_sign.svg
index 919fab53..89421bdf 100644
--- a/Demo/flat-color-icons/svg/nfc_sign.svg
+++ b/Demo/flat-color-icons/svg/nfc_sign.svg
@@ -1,12 +1,12 @@
-
-
-
+
+
+
diff --git a/Demo/flat-color-icons/svg/night_landscape.svg b/Demo/flat-color-icons/svg/night_landscape.svg
index a25366fa..03affcf4 100644
--- a/Demo/flat-color-icons/svg/night_landscape.svg
+++ b/Demo/flat-color-icons/svg/night_landscape.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/night_portrait.svg b/Demo/flat-color-icons/svg/night_portrait.svg
index 41c3267d..cb1398ad 100644
--- a/Demo/flat-color-icons/svg/night_portrait.svg
+++ b/Demo/flat-color-icons/svg/night_portrait.svg
@@ -1,15 +1,15 @@
-
+
diff --git a/Demo/flat-color-icons/svg/no_idea.svg b/Demo/flat-color-icons/svg/no_idea.svg
index 7496b854..14fc8c67 100644
--- a/Demo/flat-color-icons/svg/no_idea.svg
+++ b/Demo/flat-color-icons/svg/no_idea.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/no_video.svg b/Demo/flat-color-icons/svg/no_video.svg
index 7db6c245..b357a8d7 100644
--- a/Demo/flat-color-icons/svg/no_video.svg
+++ b/Demo/flat-color-icons/svg/no_video.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/nook.svg b/Demo/flat-color-icons/svg/nook.svg
index 0951a951..754e1122 100644
--- a/Demo/flat-color-icons/svg/nook.svg
+++ b/Demo/flat-color-icons/svg/nook.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/numerical_sorting_12.svg b/Demo/flat-color-icons/svg/numerical_sorting_12.svg
index 54c00bc0..950976e3 100644
--- a/Demo/flat-color-icons/svg/numerical_sorting_12.svg
+++ b/Demo/flat-color-icons/svg/numerical_sorting_12.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/numerical_sorting_21.svg b/Demo/flat-color-icons/svg/numerical_sorting_21.svg
index 70a34f5d..dc17c246 100644
--- a/Demo/flat-color-icons/svg/numerical_sorting_21.svg
+++ b/Demo/flat-color-icons/svg/numerical_sorting_21.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/ok.svg b/Demo/flat-color-icons/svg/ok.svg
index 9eb8075c..a76f9fc9 100644
--- a/Demo/flat-color-icons/svg/ok.svg
+++ b/Demo/flat-color-icons/svg/ok.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/old_time_camera.svg b/Demo/flat-color-icons/svg/old_time_camera.svg
index c0198e42..8ed0e234 100644
--- a/Demo/flat-color-icons/svg/old_time_camera.svg
+++ b/Demo/flat-color-icons/svg/old_time_camera.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/online_support.svg b/Demo/flat-color-icons/svg/online_support.svg
index f1ec50d4..8afe7d30 100644
--- a/Demo/flat-color-icons/svg/online_support.svg
+++ b/Demo/flat-color-icons/svg/online_support.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/flat-color-icons/svg/opened_folder.svg b/Demo/flat-color-icons/svg/opened_folder.svg
index 8ec91946..be652ccf 100644
--- a/Demo/flat-color-icons/svg/opened_folder.svg
+++ b/Demo/flat-color-icons/svg/opened_folder.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/org_unit.svg b/Demo/flat-color-icons/svg/org_unit.svg
index 16207cce..ee2f539d 100644
--- a/Demo/flat-color-icons/svg/org_unit.svg
+++ b/Demo/flat-color-icons/svg/org_unit.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/organization.svg b/Demo/flat-color-icons/svg/organization.svg
index f3b253b5..853786fd 100644
--- a/Demo/flat-color-icons/svg/organization.svg
+++ b/Demo/flat-color-icons/svg/organization.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/flat-color-icons/svg/overtime.svg b/Demo/flat-color-icons/svg/overtime.svg
index 948316ca..b21e357b 100644
--- a/Demo/flat-color-icons/svg/overtime.svg
+++ b/Demo/flat-color-icons/svg/overtime.svg
@@ -1,23 +1,23 @@
-
+
diff --git a/Demo/flat-color-icons/svg/package.svg b/Demo/flat-color-icons/svg/package.svg
index 2b7e96b2..ac4b8e72 100644
--- a/Demo/flat-color-icons/svg/package.svg
+++ b/Demo/flat-color-icons/svg/package.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/paid.svg b/Demo/flat-color-icons/svg/paid.svg
index b74fea0d..a2048298 100644
--- a/Demo/flat-color-icons/svg/paid.svg
+++ b/Demo/flat-color-icons/svg/paid.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/panorama.svg b/Demo/flat-color-icons/svg/panorama.svg
index e3cb71d4..6071b21b 100644
--- a/Demo/flat-color-icons/svg/panorama.svg
+++ b/Demo/flat-color-icons/svg/panorama.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/parallel_tasks.svg b/Demo/flat-color-icons/svg/parallel_tasks.svg
index ecd9a80f..65d7db76 100644
--- a/Demo/flat-color-icons/svg/parallel_tasks.svg
+++ b/Demo/flat-color-icons/svg/parallel_tasks.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/phone.svg b/Demo/flat-color-icons/svg/phone.svg
index 703c4d64..724b9a91 100644
--- a/Demo/flat-color-icons/svg/phone.svg
+++ b/Demo/flat-color-icons/svg/phone.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/phone_android.svg b/Demo/flat-color-icons/svg/phone_android.svg
index e602e931..4abe9333 100644
--- a/Demo/flat-color-icons/svg/phone_android.svg
+++ b/Demo/flat-color-icons/svg/phone_android.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/photo_reel.svg b/Demo/flat-color-icons/svg/photo_reel.svg
index 0f06cfb3..c069a7c0 100644
--- a/Demo/flat-color-icons/svg/photo_reel.svg
+++ b/Demo/flat-color-icons/svg/photo_reel.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/picture.svg b/Demo/flat-color-icons/svg/picture.svg
index a6d488d9..4c35996b 100644
--- a/Demo/flat-color-icons/svg/picture.svg
+++ b/Demo/flat-color-icons/svg/picture.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/pie_chart.svg b/Demo/flat-color-icons/svg/pie_chart.svg
index 0220fba3..f858f6eb 100644
--- a/Demo/flat-color-icons/svg/pie_chart.svg
+++ b/Demo/flat-color-icons/svg/pie_chart.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/planner.svg b/Demo/flat-color-icons/svg/planner.svg
index d66c231c..a1d0f3bc 100644
--- a/Demo/flat-color-icons/svg/planner.svg
+++ b/Demo/flat-color-icons/svg/planner.svg
@@ -1,20 +1,20 @@
-
+
diff --git a/Demo/flat-color-icons/svg/plus.svg b/Demo/flat-color-icons/svg/plus.svg
index 37f75e1b..279aedd9 100644
--- a/Demo/flat-color-icons/svg/plus.svg
+++ b/Demo/flat-color-icons/svg/plus.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/podium_with_audience.svg b/Demo/flat-color-icons/svg/podium_with_audience.svg
index 73d1812a..811f046d 100644
--- a/Demo/flat-color-icons/svg/podium_with_audience.svg
+++ b/Demo/flat-color-icons/svg/podium_with_audience.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/podium_with_speaker.svg b/Demo/flat-color-icons/svg/podium_with_speaker.svg
index f13192d6..bfc26bb9 100644
--- a/Demo/flat-color-icons/svg/podium_with_speaker.svg
+++ b/Demo/flat-color-icons/svg/podium_with_speaker.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/podium_without_speaker.svg b/Demo/flat-color-icons/svg/podium_without_speaker.svg
index 034653c8..b6c68882 100644
--- a/Demo/flat-color-icons/svg/podium_without_speaker.svg
+++ b/Demo/flat-color-icons/svg/podium_without_speaker.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/portrait_mode.svg b/Demo/flat-color-icons/svg/portrait_mode.svg
index a04070d2..1900798c 100644
--- a/Demo/flat-color-icons/svg/portrait_mode.svg
+++ b/Demo/flat-color-icons/svg/portrait_mode.svg
@@ -1,19 +1,19 @@
-
+
diff --git a/Demo/flat-color-icons/svg/positive_dynamic.svg b/Demo/flat-color-icons/svg/positive_dynamic.svg
index 01f62aca..4f5629ce 100644
--- a/Demo/flat-color-icons/svg/positive_dynamic.svg
+++ b/Demo/flat-color-icons/svg/positive_dynamic.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/previous.svg b/Demo/flat-color-icons/svg/previous.svg
index 25baeb89..4a0a068e 100644
--- a/Demo/flat-color-icons/svg/previous.svg
+++ b/Demo/flat-color-icons/svg/previous.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/print.svg b/Demo/flat-color-icons/svg/print.svg
index 2387fc5a..aca13848 100644
--- a/Demo/flat-color-icons/svg/print.svg
+++ b/Demo/flat-color-icons/svg/print.svg
@@ -1,14 +1,14 @@
-
+
diff --git a/Demo/flat-color-icons/svg/privacy.svg b/Demo/flat-color-icons/svg/privacy.svg
index 2132ecf5..ea7c6d98 100644
--- a/Demo/flat-color-icons/svg/privacy.svg
+++ b/Demo/flat-color-icons/svg/privacy.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/process.svg b/Demo/flat-color-icons/svg/process.svg
index 33b74d4f..c0315b8a 100644
--- a/Demo/flat-color-icons/svg/process.svg
+++ b/Demo/flat-color-icons/svg/process.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/puzzle.svg b/Demo/flat-color-icons/svg/puzzle.svg
index e5bc590a..7f2a15fe 100644
--- a/Demo/flat-color-icons/svg/puzzle.svg
+++ b/Demo/flat-color-icons/svg/puzzle.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/questions.svg b/Demo/flat-color-icons/svg/questions.svg
index 6c1b7a21..f02d69ef 100644
--- a/Demo/flat-color-icons/svg/questions.svg
+++ b/Demo/flat-color-icons/svg/questions.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/radar_plot.svg b/Demo/flat-color-icons/svg/radar_plot.svg
index 32c9a756..1b6899e4 100644
--- a/Demo/flat-color-icons/svg/radar_plot.svg
+++ b/Demo/flat-color-icons/svg/radar_plot.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/rating.svg b/Demo/flat-color-icons/svg/rating.svg
index d104890b..90b931b6 100644
--- a/Demo/flat-color-icons/svg/rating.svg
+++ b/Demo/flat-color-icons/svg/rating.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/ratings.svg b/Demo/flat-color-icons/svg/ratings.svg
index e1db30dd..2f9dc4bf 100644
--- a/Demo/flat-color-icons/svg/ratings.svg
+++ b/Demo/flat-color-icons/svg/ratings.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/reading.svg b/Demo/flat-color-icons/svg/reading.svg
index d2ddffe4..60fe87f6 100644
--- a/Demo/flat-color-icons/svg/reading.svg
+++ b/Demo/flat-color-icons/svg/reading.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/reading_ebook.svg b/Demo/flat-color-icons/svg/reading_ebook.svg
index ebffdf1d..4ad0f634 100644
--- a/Demo/flat-color-icons/svg/reading_ebook.svg
+++ b/Demo/flat-color-icons/svg/reading_ebook.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/reddit.svg b/Demo/flat-color-icons/svg/reddit.svg
index e4a09809..13689bb2 100644
--- a/Demo/flat-color-icons/svg/reddit.svg
+++ b/Demo/flat-color-icons/svg/reddit.svg
@@ -1,41 +1,41 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/redo.svg b/Demo/flat-color-icons/svg/redo.svg
index fe7a19fd..3fc0fe66 100644
--- a/Demo/flat-color-icons/svg/redo.svg
+++ b/Demo/flat-color-icons/svg/redo.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/refresh.svg b/Demo/flat-color-icons/svg/refresh.svg
index 5cae4cef..bea41072 100644
--- a/Demo/flat-color-icons/svg/refresh.svg
+++ b/Demo/flat-color-icons/svg/refresh.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/registered_trademark.svg b/Demo/flat-color-icons/svg/registered_trademark.svg
index 3fc6cf40..0972fc38 100644
--- a/Demo/flat-color-icons/svg/registered_trademark.svg
+++ b/Demo/flat-color-icons/svg/registered_trademark.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/remove_image.svg b/Demo/flat-color-icons/svg/remove_image.svg
index d64f21b9..24923231 100644
--- a/Demo/flat-color-icons/svg/remove_image.svg
+++ b/Demo/flat-color-icons/svg/remove_image.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/reuse.svg b/Demo/flat-color-icons/svg/reuse.svg
index f86be4b0..5f74b31f 100644
--- a/Demo/flat-color-icons/svg/reuse.svg
+++ b/Demo/flat-color-icons/svg/reuse.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/right.svg b/Demo/flat-color-icons/svg/right.svg
index 2747f210..d2084120 100644
--- a/Demo/flat-color-icons/svg/right.svg
+++ b/Demo/flat-color-icons/svg/right.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/right_down.svg b/Demo/flat-color-icons/svg/right_down.svg
index 93dbdd64..eafa437b 100644
--- a/Demo/flat-color-icons/svg/right_down.svg
+++ b/Demo/flat-color-icons/svg/right_down.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/right_down2.svg b/Demo/flat-color-icons/svg/right_down2.svg
index 83df62d3..6574db80 100644
--- a/Demo/flat-color-icons/svg/right_down2.svg
+++ b/Demo/flat-color-icons/svg/right_down2.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/right_up.svg b/Demo/flat-color-icons/svg/right_up.svg
index 4e8337d6..70b0fc12 100644
--- a/Demo/flat-color-icons/svg/right_up.svg
+++ b/Demo/flat-color-icons/svg/right_up.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/right_up2.svg b/Demo/flat-color-icons/svg/right_up2.svg
index 54a166b7..07bcfb43 100644
--- a/Demo/flat-color-icons/svg/right_up2.svg
+++ b/Demo/flat-color-icons/svg/right_up2.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/rotate_camera.svg b/Demo/flat-color-icons/svg/rotate_camera.svg
index f6c0a0ba..7f5bac60 100644
--- a/Demo/flat-color-icons/svg/rotate_camera.svg
+++ b/Demo/flat-color-icons/svg/rotate_camera.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/rotate_to_landscape.svg b/Demo/flat-color-icons/svg/rotate_to_landscape.svg
index 6365afe8..ca1e8565 100644
--- a/Demo/flat-color-icons/svg/rotate_to_landscape.svg
+++ b/Demo/flat-color-icons/svg/rotate_to_landscape.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/rotate_to_portrait.svg b/Demo/flat-color-icons/svg/rotate_to_portrait.svg
index 26e9cd41..a3c0c8fd 100644
--- a/Demo/flat-color-icons/svg/rotate_to_portrait.svg
+++ b/Demo/flat-color-icons/svg/rotate_to_portrait.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/ruler.svg b/Demo/flat-color-icons/svg/ruler.svg
index e3cb6d60..306ba827 100644
--- a/Demo/flat-color-icons/svg/ruler.svg
+++ b/Demo/flat-color-icons/svg/ruler.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/rules.svg b/Demo/flat-color-icons/svg/rules.svg
index 2923c9ec..e4acb07b 100644
--- a/Demo/flat-color-icons/svg/rules.svg
+++ b/Demo/flat-color-icons/svg/rules.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/flat-color-icons/svg/safe.svg b/Demo/flat-color-icons/svg/safe.svg
index a6ae173e..2f813899 100644
--- a/Demo/flat-color-icons/svg/safe.svg
+++ b/Demo/flat-color-icons/svg/safe.svg
@@ -1,19 +1,19 @@
-
+
diff --git a/Demo/flat-color-icons/svg/sales_performance.svg b/Demo/flat-color-icons/svg/sales_performance.svg
index 2fbf035a..a5be2da6 100644
--- a/Demo/flat-color-icons/svg/sales_performance.svg
+++ b/Demo/flat-color-icons/svg/sales_performance.svg
@@ -1,66 +1,66 @@
-
+
diff --git a/Demo/flat-color-icons/svg/scatter_plot.svg b/Demo/flat-color-icons/svg/scatter_plot.svg
index c280f169..a84d440a 100644
--- a/Demo/flat-color-icons/svg/scatter_plot.svg
+++ b/Demo/flat-color-icons/svg/scatter_plot.svg
@@ -1,14 +1,14 @@
-
+
diff --git a/Demo/flat-color-icons/svg/search.svg b/Demo/flat-color-icons/svg/search.svg
index 78a902d9..9b311da5 100644
--- a/Demo/flat-color-icons/svg/search.svg
+++ b/Demo/flat-color-icons/svg/search.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/self_service_kiosk.svg b/Demo/flat-color-icons/svg/self_service_kiosk.svg
index 83cdc8a6..b62c7106 100644
--- a/Demo/flat-color-icons/svg/self_service_kiosk.svg
+++ b/Demo/flat-color-icons/svg/self_service_kiosk.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/selfie.svg b/Demo/flat-color-icons/svg/selfie.svg
index 6c1960c7..f7306754 100644
--- a/Demo/flat-color-icons/svg/selfie.svg
+++ b/Demo/flat-color-icons/svg/selfie.svg
@@ -1,19 +1,19 @@
-
+
diff --git a/Demo/flat-color-icons/svg/serial_tasks.svg b/Demo/flat-color-icons/svg/serial_tasks.svg
index 71d92cdf..a7ea3081 100644
--- a/Demo/flat-color-icons/svg/serial_tasks.svg
+++ b/Demo/flat-color-icons/svg/serial_tasks.svg
@@ -1,10 +1,10 @@
-
+
diff --git a/Demo/flat-color-icons/svg/service_mark.svg b/Demo/flat-color-icons/svg/service_mark.svg
index 9bb2199a..bf552b0b 100644
--- a/Demo/flat-color-icons/svg/service_mark.svg
+++ b/Demo/flat-color-icons/svg/service_mark.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/services.svg b/Demo/flat-color-icons/svg/services.svg
index c1e76ae0..53055823 100644
--- a/Demo/flat-color-icons/svg/services.svg
+++ b/Demo/flat-color-icons/svg/services.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/settings.svg b/Demo/flat-color-icons/svg/settings.svg
index 84502343..e10d4e2b 100644
--- a/Demo/flat-color-icons/svg/settings.svg
+++ b/Demo/flat-color-icons/svg/settings.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/share.svg b/Demo/flat-color-icons/svg/share.svg
index dd9f708d..a7f7f5bd 100644
--- a/Demo/flat-color-icons/svg/share.svg
+++ b/Demo/flat-color-icons/svg/share.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/shipped.svg b/Demo/flat-color-icons/svg/shipped.svg
index deb3e127..c5071199 100644
--- a/Demo/flat-color-icons/svg/shipped.svg
+++ b/Demo/flat-color-icons/svg/shipped.svg
@@ -1,14 +1,14 @@
-
+
diff --git a/Demo/flat-color-icons/svg/shop.svg b/Demo/flat-color-icons/svg/shop.svg
index cc7b1fcb..d2675752 100644
--- a/Demo/flat-color-icons/svg/shop.svg
+++ b/Demo/flat-color-icons/svg/shop.svg
@@ -1,29 +1,29 @@
-
+
diff --git a/Demo/flat-color-icons/svg/signature.svg b/Demo/flat-color-icons/svg/signature.svg
index bf2480f7..4604eff2 100644
--- a/Demo/flat-color-icons/svg/signature.svg
+++ b/Demo/flat-color-icons/svg/signature.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/sim_card.svg b/Demo/flat-color-icons/svg/sim_card.svg
index abb59dab..b1ccb2c7 100644
--- a/Demo/flat-color-icons/svg/sim_card.svg
+++ b/Demo/flat-color-icons/svg/sim_card.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/sim_card_chip.svg b/Demo/flat-color-icons/svg/sim_card_chip.svg
index e267215b..b73493bf 100644
--- a/Demo/flat-color-icons/svg/sim_card_chip.svg
+++ b/Demo/flat-color-icons/svg/sim_card_chip.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/slr_back_side.svg b/Demo/flat-color-icons/svg/slr_back_side.svg
index e5d771b3..cd8f0f4d 100644
--- a/Demo/flat-color-icons/svg/slr_back_side.svg
+++ b/Demo/flat-color-icons/svg/slr_back_side.svg
@@ -1,13 +1,13 @@
-
+
diff --git a/Demo/flat-color-icons/svg/smartphone_tablet.svg b/Demo/flat-color-icons/svg/smartphone_tablet.svg
index 5eec678c..57818a2e 100644
--- a/Demo/flat-color-icons/svg/smartphone_tablet.svg
+++ b/Demo/flat-color-icons/svg/smartphone_tablet.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/sms.svg b/Demo/flat-color-icons/svg/sms.svg
index 72a6e4c2..5bfb6654 100644
--- a/Demo/flat-color-icons/svg/sms.svg
+++ b/Demo/flat-color-icons/svg/sms.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/sound_recording_copyright.svg b/Demo/flat-color-icons/svg/sound_recording_copyright.svg
index 4d27d586..4685546e 100644
--- a/Demo/flat-color-icons/svg/sound_recording_copyright.svg
+++ b/Demo/flat-color-icons/svg/sound_recording_copyright.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/speaker.svg b/Demo/flat-color-icons/svg/speaker.svg
index f5f0a935..ba49fd66 100644
--- a/Demo/flat-color-icons/svg/speaker.svg
+++ b/Demo/flat-color-icons/svg/speaker.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/sports_mode.svg b/Demo/flat-color-icons/svg/sports_mode.svg
index e670522b..69d7b96d 100644
--- a/Demo/flat-color-icons/svg/sports_mode.svg
+++ b/Demo/flat-color-icons/svg/sports_mode.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/stack_of_photos.svg b/Demo/flat-color-icons/svg/stack_of_photos.svg
index 10d17163..3ff4a155 100644
--- a/Demo/flat-color-icons/svg/stack_of_photos.svg
+++ b/Demo/flat-color-icons/svg/stack_of_photos.svg
@@ -1,15 +1,15 @@
-
+
diff --git a/Demo/flat-color-icons/svg/start.svg b/Demo/flat-color-icons/svg/start.svg
index af1dc73e..bfd7cd7e 100644
--- a/Demo/flat-color-icons/svg/start.svg
+++ b/Demo/flat-color-icons/svg/start.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/statistics.svg b/Demo/flat-color-icons/svg/statistics.svg
index ac943fb3..fe1fe7da 100644
--- a/Demo/flat-color-icons/svg/statistics.svg
+++ b/Demo/flat-color-icons/svg/statistics.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/flat-color-icons/svg/steam.svg b/Demo/flat-color-icons/svg/steam.svg
index 6d8b350c..1c37fa26 100644
--- a/Demo/flat-color-icons/svg/steam.svg
+++ b/Demo/flat-color-icons/svg/steam.svg
@@ -1,22 +1,22 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/stumbleupon.svg b/Demo/flat-color-icons/svg/stumbleupon.svg
index 949e9a32..a7521ac3 100644
--- a/Demo/flat-color-icons/svg/stumbleupon.svg
+++ b/Demo/flat-color-icons/svg/stumbleupon.svg
@@ -1,15 +1,15 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/support.svg b/Demo/flat-color-icons/svg/support.svg
index 192c8f36..96362846 100644
--- a/Demo/flat-color-icons/svg/support.svg
+++ b/Demo/flat-color-icons/svg/support.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/survey.svg b/Demo/flat-color-icons/svg/survey.svg
index 366eb2fd..fbf1248f 100644
--- a/Demo/flat-color-icons/svg/survey.svg
+++ b/Demo/flat-color-icons/svg/survey.svg
@@ -1,16 +1,16 @@
-
+
diff --git a/Demo/flat-color-icons/svg/switch_camera.svg b/Demo/flat-color-icons/svg/switch_camera.svg
index 65d2a998..0ca61e41 100644
--- a/Demo/flat-color-icons/svg/switch_camera.svg
+++ b/Demo/flat-color-icons/svg/switch_camera.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/synchronize.svg b/Demo/flat-color-icons/svg/synchronize.svg
index e788e4ba..79e4770a 100644
--- a/Demo/flat-color-icons/svg/synchronize.svg
+++ b/Demo/flat-color-icons/svg/synchronize.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/tablet_android.svg b/Demo/flat-color-icons/svg/tablet_android.svg
index edd9e87c..7c4d4314 100644
--- a/Demo/flat-color-icons/svg/tablet_android.svg
+++ b/Demo/flat-color-icons/svg/tablet_android.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/template.svg b/Demo/flat-color-icons/svg/template.svg
index f4514d59..d39671a1 100644
--- a/Demo/flat-color-icons/svg/template.svg
+++ b/Demo/flat-color-icons/svg/template.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/timeline.svg b/Demo/flat-color-icons/svg/timeline.svg
index 9935399b..534ef79f 100644
--- a/Demo/flat-color-icons/svg/timeline.svg
+++ b/Demo/flat-color-icons/svg/timeline.svg
@@ -1,11 +1,11 @@
-
+
diff --git a/Demo/flat-color-icons/svg/todo_list.svg b/Demo/flat-color-icons/svg/todo_list.svg
index 403d3ce3..bd9e5a0b 100644
--- a/Demo/flat-color-icons/svg/todo_list.svg
+++ b/Demo/flat-color-icons/svg/todo_list.svg
@@ -1,12 +1,12 @@
-
+
diff --git a/Demo/flat-color-icons/svg/touchscreen_smartphone.svg b/Demo/flat-color-icons/svg/touchscreen_smartphone.svg
index 13f527cf..0442742e 100644
--- a/Demo/flat-color-icons/svg/touchscreen_smartphone.svg
+++ b/Demo/flat-color-icons/svg/touchscreen_smartphone.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/trademark.svg b/Demo/flat-color-icons/svg/trademark.svg
index 121a27d1..b1eb16af 100644
--- a/Demo/flat-color-icons/svg/trademark.svg
+++ b/Demo/flat-color-icons/svg/trademark.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/tree_structure.svg b/Demo/flat-color-icons/svg/tree_structure.svg
index 54303eae..e151928a 100644
--- a/Demo/flat-color-icons/svg/tree_structure.svg
+++ b/Demo/flat-color-icons/svg/tree_structure.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/two_smartphones.svg b/Demo/flat-color-icons/svg/two_smartphones.svg
index d62d5495..13acfd37 100644
--- a/Demo/flat-color-icons/svg/two_smartphones.svg
+++ b/Demo/flat-color-icons/svg/two_smartphones.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/undo.svg b/Demo/flat-color-icons/svg/undo.svg
index 3287135e..07bc5af5 100644
--- a/Demo/flat-color-icons/svg/undo.svg
+++ b/Demo/flat-color-icons/svg/undo.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/unlock.svg b/Demo/flat-color-icons/svg/unlock.svg
index 35c03c6f..b2281761 100644
--- a/Demo/flat-color-icons/svg/unlock.svg
+++ b/Demo/flat-color-icons/svg/unlock.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/up.svg b/Demo/flat-color-icons/svg/up.svg
index 27042d80..ef4713d5 100644
--- a/Demo/flat-color-icons/svg/up.svg
+++ b/Demo/flat-color-icons/svg/up.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/up_left.svg b/Demo/flat-color-icons/svg/up_left.svg
index 85b8d2fb..0299190e 100644
--- a/Demo/flat-color-icons/svg/up_left.svg
+++ b/Demo/flat-color-icons/svg/up_left.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/up_right.svg b/Demo/flat-color-icons/svg/up_right.svg
index 511fba0b..3a5ee384 100644
--- a/Demo/flat-color-icons/svg/up_right.svg
+++ b/Demo/flat-color-icons/svg/up_right.svg
@@ -1,6 +1,6 @@
-
+
diff --git a/Demo/flat-color-icons/svg/upload.svg b/Demo/flat-color-icons/svg/upload.svg
index 0308c404..5f19e2db 100644
--- a/Demo/flat-color-icons/svg/upload.svg
+++ b/Demo/flat-color-icons/svg/upload.svg
@@ -1,9 +1,9 @@
-
+
diff --git a/Demo/flat-color-icons/svg/usb.svg b/Demo/flat-color-icons/svg/usb.svg
index f862c791..fc2956f7 100644
--- a/Demo/flat-color-icons/svg/usb.svg
+++ b/Demo/flat-color-icons/svg/usb.svg
@@ -1,22 +1,22 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/video_call.svg b/Demo/flat-color-icons/svg/video_call.svg
index 0b395acf..2126f7d2 100644
--- a/Demo/flat-color-icons/svg/video_call.svg
+++ b/Demo/flat-color-icons/svg/video_call.svg
@@ -1,4 +1,4 @@
-
+
diff --git a/Demo/flat-color-icons/svg/video_file.svg b/Demo/flat-color-icons/svg/video_file.svg
index b795234a..fe1d86d1 100644
--- a/Demo/flat-color-icons/svg/video_file.svg
+++ b/Demo/flat-color-icons/svg/video_file.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/video_projector.svg b/Demo/flat-color-icons/svg/video_projector.svg
index dcdf3ee4..1a69d28c 100644
--- a/Demo/flat-color-icons/svg/video_projector.svg
+++ b/Demo/flat-color-icons/svg/video_projector.svg
@@ -1,27 +1,27 @@
-
+
diff --git a/Demo/flat-color-icons/svg/view_details.svg b/Demo/flat-color-icons/svg/view_details.svg
index caf24e31..150f3fbf 100644
--- a/Demo/flat-color-icons/svg/view_details.svg
+++ b/Demo/flat-color-icons/svg/view_details.svg
@@ -1,13 +1,13 @@
-
+
diff --git a/Demo/flat-color-icons/svg/vip.svg b/Demo/flat-color-icons/svg/vip.svg
index 6754eb0f..fdd3d82d 100644
--- a/Demo/flat-color-icons/svg/vip.svg
+++ b/Demo/flat-color-icons/svg/vip.svg
@@ -1,8 +1,8 @@
-
+
diff --git a/Demo/flat-color-icons/svg/vlc.svg b/Demo/flat-color-icons/svg/vlc.svg
index 22ce4524..b72aae25 100644
--- a/Demo/flat-color-icons/svg/vlc.svg
+++ b/Demo/flat-color-icons/svg/vlc.svg
@@ -1,21 +1,21 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/voice_presentation.svg b/Demo/flat-color-icons/svg/voice_presentation.svg
index bbc12069..691f34d0 100644
--- a/Demo/flat-color-icons/svg/voice_presentation.svg
+++ b/Demo/flat-color-icons/svg/voice_presentation.svg
@@ -1,5 +1,5 @@
-
+
diff --git a/Demo/flat-color-icons/svg/voicemail.svg b/Demo/flat-color-icons/svg/voicemail.svg
index ea57b086..b3fb2e1d 100644
--- a/Demo/flat-color-icons/svg/voicemail.svg
+++ b/Demo/flat-color-icons/svg/voicemail.svg
@@ -1,3 +1,3 @@
-
+
diff --git a/Demo/flat-color-icons/svg/webcam.svg b/Demo/flat-color-icons/svg/webcam.svg
index 929dc388..7aec31ed 100644
--- a/Demo/flat-color-icons/svg/webcam.svg
+++ b/Demo/flat-color-icons/svg/webcam.svg
@@ -1,7 +1,7 @@
-
+
diff --git a/Demo/flat-color-icons/svg/wi-fi_logo.svg b/Demo/flat-color-icons/svg/wi-fi_logo.svg
index f91230a8..097cee2e 100644
--- a/Demo/flat-color-icons/svg/wi-fi_logo.svg
+++ b/Demo/flat-color-icons/svg/wi-fi_logo.svg
@@ -1,22 +1,22 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/wikipedia.svg b/Demo/flat-color-icons/svg/wikipedia.svg
index 5265c984..6b0b5dc2 100644
--- a/Demo/flat-color-icons/svg/wikipedia.svg
+++ b/Demo/flat-color-icons/svg/wikipedia.svg
@@ -1,16 +1,16 @@
-
-
-
-
+
+
+
+
diff --git a/Demo/flat-color-icons/svg/workflow.svg b/Demo/flat-color-icons/svg/workflow.svg
index 858cb46a..6ad2c0ed 100644
--- a/Demo/flat-color-icons/svg/workflow.svg
+++ b/Demo/flat-color-icons/svg/workflow.svg
@@ -1,18 +1,18 @@
-
+
diff --git a/Demo/svg_examples/butterfly.svg b/Demo/svg_examples/butterfly.svg
index 9460faad..d1da4caa 100644
--- a/Demo/svg_examples/butterfly.svg
+++ b/Demo/svg_examples/butterfly.svg
@@ -1,212 +1,212 @@
-
-
-
-
-]>
-
+
+
+
+
+]>
+
diff --git a/Demo/svg_examples/cowboy.svg b/Demo/svg_examples/cowboy.svg
index e36ae8c8..6ffbe116 100644
--- a/Demo/svg_examples/cowboy.svg
+++ b/Demo/svg_examples/cowboy.svg
@@ -1,6385 +1,6385 @@
-
-
-
-
-]>
-
+
+
+
+
+]>
+
diff --git a/Demo/svg_examples/lion.svg b/Demo/svg_examples/lion.svg
index 701dda01..63c697eb 100644
--- a/Demo/svg_examples/lion.svg
+++ b/Demo/svg_examples/lion.svg
@@ -1,337 +1,337 @@
-
-
-
-
-]>
-
+
+
+
+
+]>
+
diff --git a/Demo/svg_examples/tiger.svg b/Demo/svg_examples/tiger.svg
index a065d92e..8051b11e 100644
--- a/Demo/svg_examples/tiger.svg
+++ b/Demo/svg_examples/tiger.svg
@@ -1,1195 +1,1195 @@
-
-
-
-
-]>
-
+
+
+
+
+]>
+
diff --git a/Packages/D10_1/SVGIconImageList.dpk b/Packages/D10_1/SVGIconImageList.dpk
index 9c98fbf7..1e75f618 100644
--- a/Packages/D10_1/SVGIconImageList.dpk
+++ b/Packages/D10_1/SVGIconImageList.dpk
@@ -1,46 +1,46 @@
-package SVGIconImageList;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_D10_1'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- vcl,
- SVGIconPackage;
-
-contains
- SVGIconImage in '..\..\Source\SVGIconImage.pas',
- SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
- SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
- SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
- SVGIconItems in '..\..\Source\SVGIconItems.pas',
- SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
- SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
-
-end.
+package SVGIconImageList;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_D10_1'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ SVGIconPackage;
+
+contains
+ SVGIconImage in '..\..\Source\SVGIconImage.pas',
+ SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
+ SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
+ SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
+ SVGIconItems in '..\..\Source\SVGIconItems.pas',
+ SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
+ SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
+
+end.
diff --git a/Packages/D10_1/SVGIconImageList.dproj b/Packages/D10_1/SVGIconImageList.dproj
index 9a9aede7..3ff8d49d 100644
--- a/Packages/D10_1/SVGIconImageList.dproj
+++ b/Packages/D10_1/SVGIconImageList.dproj
@@ -1,138 +1,138 @@
-
-
- {85598B37-A092-41F0-A93A-165F781C3BD7}
- SVGIconImageList.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\D10_1\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _D10_1
- ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconImageList.dpk
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {85598B37-A092-41F0-A93A-165F781C3BD7}
+ SVGIconImageList.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\D10_1\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _D10_1
+ ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconImageList.dpk
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/D10_1/SVGIconImageListGroupPackages.groupproj b/Packages/D10_1/SVGIconImageListGroupPackages.groupproj
index a2a15b64..b5b4cc51 100644
--- a/Packages/D10_1/SVGIconImageListGroupPackages.groupproj
+++ b/Packages/D10_1/SVGIconImageListGroupPackages.groupproj
@@ -1,60 +1,60 @@
-
-
- {A4AA5F6B-3848-4ACC-B8ED-A532CE648BC2}
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default.Personality.12
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ {A4AA5F6B-3848-4ACC-B8ED-A532CE648BC2}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Packages/D10_1/SVGIconPackage.dpk b/Packages/D10_1/SVGIconPackage.dpk
index dfb768aa..5c567ccb 100644
--- a/Packages/D10_1/SVGIconPackage.dpk
+++ b/Packages/D10_1/SVGIconPackage.dpk
@@ -1,52 +1,52 @@
-package SVGIconPackage;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'SVG Package for Ethea SVGIcon Components'}
-{$LIBSUFFIX '_D10_1'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- xmlrtl,
- vcl;
-
-contains
- SVG in '..\..\svg\SVG.pas',
- SVGColor in '..\..\Svg\SVGColor.pas',
- SVGCommon in '..\..\Svg\SVGCommon.pas',
- SVGPaint in '..\..\Svg\SVGPaint.pas',
- SVGParse in '..\..\Svg\SVGParse.pas',
- SVGPath in '..\..\Svg\SVGPath.pas',
- SVGProperties in '..\..\Svg\SVGProperties.pas',
- SVGStyle in '..\..\Svg\SVGStyle.pas',
- SVGTypes in '..\..\Svg\SVGTypes.pas',
- GDIPKerning in '..\..\Svg\GDIPKerning.pas',
- GDIPOBJ2 in '..\..\Svg\GDIPOBJ2.pas',
- GDIPPathText in '..\..\Svg\GDIPPathText.pas';
-
-end.
+package SVGIconPackage;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'SVG Package for Ethea SVGIcon Components'}
+{$LIBSUFFIX '_D10_1'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ xmlrtl,
+ vcl;
+
+contains
+ SVG in '..\..\svg\SVG.pas',
+ SVGColor in '..\..\Svg\SVGColor.pas',
+ SVGCommon in '..\..\Svg\SVGCommon.pas',
+ SVGPaint in '..\..\Svg\SVGPaint.pas',
+ SVGParse in '..\..\Svg\SVGParse.pas',
+ SVGPath in '..\..\Svg\SVGPath.pas',
+ SVGProperties in '..\..\Svg\SVGProperties.pas',
+ SVGStyle in '..\..\Svg\SVGStyle.pas',
+ SVGTypes in '..\..\Svg\SVGTypes.pas',
+ GDIPKerning in '..\..\Svg\GDIPKerning.pas',
+ GDIPOBJ2 in '..\..\Svg\GDIPOBJ2.pas',
+ GDIPPathText in '..\..\Svg\GDIPPathText.pas';
+
+end.
diff --git a/Packages/D10_1/SVGIconPackage.dproj b/Packages/D10_1/SVGIconPackage.dproj
index df172a23..38ecfd9c 100644
--- a/Packages/D10_1/SVGIconPackage.dproj
+++ b/Packages/D10_1/SVGIconPackage.dproj
@@ -1,144 +1,144 @@
-
-
- {46514153-8634-40EA-997A-A6011BDFE639}
- SVGIconPackage.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\D10_1\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconPackage
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _D10_1
- ..\..\svg;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconPackage.dpk
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {46514153-8634-40EA-997A-A6011BDFE639}
+ SVGIconPackage.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\D10_1\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconPackage
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _D10_1
+ ..\..\svg;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconPackage.dpk
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/D10_2/SVGIconImageList.dpk b/Packages/D10_2/SVGIconImageList.dpk
index 971f189d..cf7cef76 100644
--- a/Packages/D10_2/SVGIconImageList.dpk
+++ b/Packages/D10_2/SVGIconImageList.dpk
@@ -1,46 +1,46 @@
-package SVGIconImageList;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_D10_2'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- vcl,
- SVGIconPackage;
-
-contains
- SVGIconImage in '..\..\Source\SVGIconImage.pas',
- SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
- SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
- SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
- SVGIconItems in '..\..\Source\SVGIconItems.pas',
- SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
- SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
-
-end.
+package SVGIconImageList;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_D10_2'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ SVGIconPackage;
+
+contains
+ SVGIconImage in '..\..\Source\SVGIconImage.pas',
+ SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
+ SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
+ SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
+ SVGIconItems in '..\..\Source\SVGIconItems.pas',
+ SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
+ SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
+
+end.
diff --git a/Packages/D10_2/SVGIconImageList.dproj b/Packages/D10_2/SVGIconImageList.dproj
index 65f7d372..f6d515af 100644
--- a/Packages/D10_2/SVGIconImageList.dproj
+++ b/Packages/D10_2/SVGIconImageList.dproj
@@ -1,140 +1,140 @@
-
-
- {85598B37-A092-41F0-A93A-165F781C3BD7}
- SVGIconImageList.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\D10_2\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _D10_2
- ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconImageList.dpk
-
-
- Microsoft Office 2000 Sample Automation Server Wrapper Components
- Microsoft Office XP Sample Automation Server Wrapper Components
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {85598B37-A092-41F0-A93A-165F781C3BD7}
+ SVGIconImageList.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\D10_2\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _D10_2
+ ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconImageList.dpk
+
+
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/D10_2/SVGIconImageListGroupPackages.groupproj b/Packages/D10_2/SVGIconImageListGroupPackages.groupproj
index ab48081b..aa628da6 100644
--- a/Packages/D10_2/SVGIconImageListGroupPackages.groupproj
+++ b/Packages/D10_2/SVGIconImageListGroupPackages.groupproj
@@ -1,60 +1,60 @@
-
-
- {4A408524-4ECB-4DDC-B43F-4314D858031B}
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default.Personality.12
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ {4A408524-4ECB-4DDC-B43F-4314D858031B}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Packages/D10_2/SVGIconPackage.dpk b/Packages/D10_2/SVGIconPackage.dpk
index 0f2e0280..68ab5f6f 100644
--- a/Packages/D10_2/SVGIconPackage.dpk
+++ b/Packages/D10_2/SVGIconPackage.dpk
@@ -1,52 +1,52 @@
-package SVGIconPackage;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'SVG Package for Ethea SVGIcon Components'}
-{$LIBSUFFIX '_D10_2'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- xmlrtl,
- vcl;
-
-contains
- SVG in '..\..\svg\SVG.pas',
- SVGColor in '..\..\Svg\SVGColor.pas',
- SVGCommon in '..\..\Svg\SVGCommon.pas',
- SVGPaint in '..\..\Svg\SVGPaint.pas',
- SVGParse in '..\..\Svg\SVGParse.pas',
- SVGPath in '..\..\Svg\SVGPath.pas',
- SVGProperties in '..\..\Svg\SVGProperties.pas',
- SVGStyle in '..\..\Svg\SVGStyle.pas',
- SVGTypes in '..\..\Svg\SVGTypes.pas',
- GDIPKerning in '..\..\Svg\GDIPKerning.pas',
- GDIPOBJ2 in '..\..\Svg\GDIPOBJ2.pas',
- GDIPPathText in '..\..\Svg\GDIPPathText.pas';
-
-end.
+package SVGIconPackage;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'SVG Package for Ethea SVGIcon Components'}
+{$LIBSUFFIX '_D10_2'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ xmlrtl,
+ vcl;
+
+contains
+ SVG in '..\..\svg\SVG.pas',
+ SVGColor in '..\..\Svg\SVGColor.pas',
+ SVGCommon in '..\..\Svg\SVGCommon.pas',
+ SVGPaint in '..\..\Svg\SVGPaint.pas',
+ SVGParse in '..\..\Svg\SVGParse.pas',
+ SVGPath in '..\..\Svg\SVGPath.pas',
+ SVGProperties in '..\..\Svg\SVGProperties.pas',
+ SVGStyle in '..\..\Svg\SVGStyle.pas',
+ SVGTypes in '..\..\Svg\SVGTypes.pas',
+ GDIPKerning in '..\..\Svg\GDIPKerning.pas',
+ GDIPOBJ2 in '..\..\Svg\GDIPOBJ2.pas',
+ GDIPPathText in '..\..\Svg\GDIPPathText.pas';
+
+end.
diff --git a/Packages/D10_2/SVGIconPackage.dproj b/Packages/D10_2/SVGIconPackage.dproj
index 5ddfd21b..47638e68 100644
--- a/Packages/D10_2/SVGIconPackage.dproj
+++ b/Packages/D10_2/SVGIconPackage.dproj
@@ -1,144 +1,144 @@
-
-
- {0F9E2015-50ED-4E52-AEC0-F8DB41C51845}
- SVGIconPackage.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\D10_2\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconPackage
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _D10_2
- ..\..\svg;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconPackage.dpk
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {0F9E2015-50ED-4E52-AEC0-F8DB41C51845}
+ SVGIconPackage.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\D10_2\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconPackage
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _D10_2
+ ..\..\svg;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconPackage.dpk
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/D10_2/dclSVGIconImageList.dpk b/Packages/D10_2/dclSVGIconImageList.dpk
index 9e9de30d..6a694eff 100644
--- a/Packages/D10_2/dclSVGIconImageList.dpk
+++ b/Packages/D10_2/dclSVGIconImageList.dpk
@@ -1,45 +1,45 @@
-package dclSVGIconImageList;
-
-{$R *.res}
-{$R '..\SVGIconImageListNew.dcr'}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_D10_2'}
-{$DESIGNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- DesignIDE,
- SVGIconPackage,
- SVGIconImageList,
- VclSmp;
-
-contains
- SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageRegister in '..\SVGIconImageRegister.pas',
- SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
-
-end.
+package dclSVGIconImageList;
+
+{$R *.res}
+{$R '..\SVGIconImageListNew.dcr'}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_D10_2'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ DesignIDE,
+ SVGIconPackage,
+ SVGIconImageList,
+ VclSmp;
+
+contains
+ SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageRegister in '..\SVGIconImageRegister.pas',
+ SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
+
+end.
diff --git a/Packages/D10_2/dclSVGIconImageList.dproj b/Packages/D10_2/dclSVGIconImageList.dproj
index c127b58b..6d526083 100644
--- a/Packages/D10_2/dclSVGIconImageList.dproj
+++ b/Packages/D10_2/dclSVGIconImageList.dproj
@@ -1,142 +1,142 @@
-
-
- {3DFB080A-B607-4FFE-9AC0-D9204CDB8E38}
- dclSVGIconImageList.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\D10_2\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- dclSVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _D10_2
- ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
- SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
- dfm
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- dclSVGIconImageList.dpk
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {3DFB080A-B607-4FFE-9AC0-D9204CDB8E38}
+ dclSVGIconImageList.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\D10_2\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ dclSVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _D10_2
+ ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+ SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ dclSVGIconImageList.dpk
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/D10_3/SVGIconImageList.dpk b/Packages/D10_3/SVGIconImageList.dpk
index 7b210fdc..fd9559f6 100644
--- a/Packages/D10_3/SVGIconImageList.dpk
+++ b/Packages/D10_3/SVGIconImageList.dpk
@@ -1,47 +1,47 @@
-package SVGIconImageList;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_D10_3'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- vcl,
- SVGIconPackage,
- vclwinx;
-
-contains
- SVGIconImage in '..\..\Source\SVGIconImage.pas',
- SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
- SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
- SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
- SVGIconItems in '..\..\Source\SVGIconItems.pas',
- SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
- SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
-
-end.
+package SVGIconImageList;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_D10_3'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ SVGIconPackage,
+ vclwinx;
+
+contains
+ SVGIconImage in '..\..\Source\SVGIconImage.pas',
+ SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
+ SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
+ SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
+ SVGIconItems in '..\..\Source\SVGIconItems.pas',
+ SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
+ SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
+
+end.
diff --git a/Packages/D10_3/SVGIconImageList.dproj b/Packages/D10_3/SVGIconImageList.dproj
index 0a7c48b5..9ce29a57 100644
--- a/Packages/D10_3/SVGIconImageList.dproj
+++ b/Packages/D10_3/SVGIconImageList.dproj
@@ -1,897 +1,897 @@
-
-
- {34B85FB5-2389-4BF1-BCEC-C24DA971F5DE}
- SVGIconImageList.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\D10_3\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _D10_3
- ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconImageList.dpk
-
-
-
-
- True
- False
-
-
-
-
- SVGIconImageList.bpl
- true
-
-
-
-
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 12
-
-
-
-
-
+
+
+ {34B85FB5-2389-4BF1-BCEC-C24DA971F5DE}
+ SVGIconImageList.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\D10_3\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _D10_3
+ ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconImageList.dpk
+
+
+
+
+ True
+ False
+
+
+
+
+ SVGIconImageList.bpl
+ true
+
+
+
+
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ 1
+ .framework
+
+
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 12
+
+
+
+
+
diff --git a/Packages/D10_3/SVGIconImageListFMX.dpk b/Packages/D10_3/SVGIconImageListFMX.dpk
index 9425f8e6..dce650ca 100644
--- a/Packages/D10_3/SVGIconImageListFMX.dpk
+++ b/Packages/D10_3/SVGIconImageListFMX.dpk
@@ -1,41 +1,41 @@
-package SVGIconImageListFMX;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList FMX components'}
-{$LIBSUFFIX '_D10_3'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- fmx,
- SVGIconPackage;
-
-contains
- FMX.SVGIconImageList in '..\..\Source\FMX.SVGIconImageList.pas',
- FMX.SVGIconImage in '..\..\Source\FMX.SVGIconImage.pas';
-
-end.
+package SVGIconImageListFMX;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList FMX components'}
+{$LIBSUFFIX '_D10_3'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ fmx,
+ SVGIconPackage;
+
+contains
+ FMX.SVGIconImageList in '..\..\Source\FMX.SVGIconImageList.pas',
+ FMX.SVGIconImage in '..\..\Source\FMX.SVGIconImage.pas';
+
+end.
diff --git a/Packages/D10_3/SVGIconImageListFMX.dproj b/Packages/D10_3/SVGIconImageListFMX.dproj
index eea4f598..6f3636fb 100644
--- a/Packages/D10_3/SVGIconImageListFMX.dproj
+++ b/Packages/D10_3/SVGIconImageListFMX.dproj
@@ -1,899 +1,899 @@
-
-
- {2CD11B99-3805-4F90-B598-3652213872B2}
- SVGIconImageListFMX.dpk
- 18.8
- FMX
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- ..\..\Lib\D10_3\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- All
- SVGIconImageListFMX
- 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=
- Ethea SVGIconImageList FMX components
- true
- true
- _D10_3
-
-
- Debug
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
-
- MainSource
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconImageListFMX.dpk
-
-
- Chrome Tabs
- Microsoft Office 2000 Sample Automation Server Wrapper Components
-
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- SVGIconImageListFMX.bpl
- true
-
-
-
-
- SVGIconImageListFMX.bpl
- true
-
-
-
-
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
-
+
+
+ {2CD11B99-3805-4F90-B598-3652213872B2}
+ SVGIconImageListFMX.dpk
+ 18.8
+ FMX
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ ..\..\Lib\D10_3\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ All
+ SVGIconImageListFMX
+ 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=
+ Ethea SVGIconImageList FMX components
+ true
+ true
+ _D10_3
+
+
+ Debug
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+
+ MainSource
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconImageListFMX.dpk
+
+
+ Chrome Tabs
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ SVGIconImageListFMX.bpl
+ true
+
+
+
+
+ SVGIconImageListFMX.bpl
+ true
+
+
+
+
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ 1
+ .framework
+
+
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/Packages/D10_3/SVGIconImageListGroupPackages.groupproj b/Packages/D10_3/SVGIconImageListGroupPackages.groupproj
index b70789d5..5505f556 100644
--- a/Packages/D10_3/SVGIconImageListGroupPackages.groupproj
+++ b/Packages/D10_3/SVGIconImageListGroupPackages.groupproj
@@ -1,84 +1,84 @@
-
-
- {7A7B58A9-B22F-4708-9C72-ACB5ED7884D5}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default.Personality.12
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ {7A7B58A9-B22F-4708-9C72-ACB5ED7884D5}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Packages/D10_3/SVGIconPackage.dpk b/Packages/D10_3/SVGIconPackage.dpk
index 93a167a9..38c84ac2 100644
--- a/Packages/D10_3/SVGIconPackage.dpk
+++ b/Packages/D10_3/SVGIconPackage.dpk
@@ -1,52 +1,52 @@
-package SVGIconPackage;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'SVG Package for Ethea SVGIcon Components'}
-{$LIBSUFFIX '_D10_3'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- xmlrtl,
- vcl;
-
-contains
- SVG in '..\..\svg\SVG.pas',
- SVGColor in '..\..\Svg\SVGColor.pas',
- SVGCommon in '..\..\Svg\SVGCommon.pas',
- SVGPaint in '..\..\Svg\SVGPaint.pas',
- SVGParse in '..\..\Svg\SVGParse.pas',
- SVGPath in '..\..\Svg\SVGPath.pas',
- SVGProperties in '..\..\Svg\SVGProperties.pas',
- SVGStyle in '..\..\Svg\SVGStyle.pas',
- SVGTypes in '..\..\Svg\SVGTypes.pas',
- GDIPKerning in '..\..\Svg\GDIPKerning.pas',
- GDIPOBJ2 in '..\..\Svg\GDIPOBJ2.pas',
- GDIPPathText in '..\..\Svg\GDIPPathText.pas';
-
-end.
+package SVGIconPackage;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'SVG Package for Ethea SVGIcon Components'}
+{$LIBSUFFIX '_D10_3'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ xmlrtl,
+ vcl;
+
+contains
+ SVG in '..\..\svg\SVG.pas',
+ SVGColor in '..\..\Svg\SVGColor.pas',
+ SVGCommon in '..\..\Svg\SVGCommon.pas',
+ SVGPaint in '..\..\Svg\SVGPaint.pas',
+ SVGParse in '..\..\Svg\SVGParse.pas',
+ SVGPath in '..\..\Svg\SVGPath.pas',
+ SVGProperties in '..\..\Svg\SVGProperties.pas',
+ SVGStyle in '..\..\Svg\SVGStyle.pas',
+ SVGTypes in '..\..\Svg\SVGTypes.pas',
+ GDIPKerning in '..\..\Svg\GDIPKerning.pas',
+ GDIPOBJ2 in '..\..\Svg\GDIPOBJ2.pas',
+ GDIPPathText in '..\..\Svg\GDIPPathText.pas';
+
+end.
diff --git a/Packages/D10_3/SVGIconPackage.dproj b/Packages/D10_3/SVGIconPackage.dproj
index eb0fc5d2..97b4cfd6 100644
--- a/Packages/D10_3/SVGIconPackage.dproj
+++ b/Packages/D10_3/SVGIconPackage.dproj
@@ -1,143 +1,143 @@
-
-
- {099DEF19-06D1-4B7C-A46A-EE1940BAF102}
- SVGIconPackage.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\D10_3\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconPackage
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _D10_3
- ..\..\svg;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconPackage.dpk
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {099DEF19-06D1-4B7C-A46A-EE1940BAF102}
+ SVGIconPackage.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\D10_3\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconPackage
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _D10_3
+ ..\..\svg;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconPackage.dpk
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/D10_3/dclSVGIconImageList.dpk b/Packages/D10_3/dclSVGIconImageList.dpk
index 1b1e462f..20301bd1 100644
--- a/Packages/D10_3/dclSVGIconImageList.dpk
+++ b/Packages/D10_3/dclSVGIconImageList.dpk
@@ -1,45 +1,45 @@
-package dclSVGIconImageList;
-
-{$R *.res}
-{$R '..\SVGIconImageListNew.dcr'}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_D10_3'}
-{$DESIGNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- DesignIDE,
- SVGIconPackage,
- SVGIconImageList,
- VclSmp;
-
-contains
- SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageRegister in '..\SVGIconImageRegister.pas',
- SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
-
-end.
+package dclSVGIconImageList;
+
+{$R *.res}
+{$R '..\SVGIconImageListNew.dcr'}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_D10_3'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ DesignIDE,
+ SVGIconPackage,
+ SVGIconImageList,
+ VclSmp;
+
+contains
+ SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageRegister in '..\SVGIconImageRegister.pas',
+ SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
+
+end.
diff --git a/Packages/D10_3/dclSVGIconImageList.dproj b/Packages/D10_3/dclSVGIconImageList.dproj
index 82b09d41..f610d87f 100644
--- a/Packages/D10_3/dclSVGIconImageList.dproj
+++ b/Packages/D10_3/dclSVGIconImageList.dproj
@@ -1,142 +1,142 @@
-
-
- {FA437B6D-858F-4043-B55D-168E434B48AA}
- dclSVGIconImageList.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\D10_3\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- dclSVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _D10_3
- ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
- SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
- dfm
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- dclSVGIconImageList.dpk
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {FA437B6D-858F-4043-B55D-168E434B48AA}
+ dclSVGIconImageList.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\D10_3\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ dclSVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _D10_3
+ ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+ SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ dclSVGIconImageList.dpk
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/D10_3/dclSVGIconImageListFMX.dpk b/Packages/D10_3/dclSVGIconImageListFMX.dpk
index 69cc4e49..d1be601f 100644
--- a/Packages/D10_3/dclSVGIconImageListFMX.dpk
+++ b/Packages/D10_3/dclSVGIconImageListFMX.dpk
@@ -1,44 +1,44 @@
-package dclSVGIconImageListFMX;
-
-{$R *.res}
-{$R '..\SVGIconImageListNew.dcr'}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList FMX components'}
-{$LIBSUFFIX '_D10_3'}
-{$DESIGNONLY}
-{$IMPLICITBUILD ON}
-
-requires
- DesignIDE,
- dclfmxstd,
- SVGIconPackage,
- SVGIconImageListFMX;
-
-contains
- FMX.SVGIconImageRegister in '..\FMX.SVGIconImageRegister.pas',
- FMX.SVGIconImageListEditorUnit in '..\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX};
-
-end.
+package dclSVGIconImageListFMX;
+
+{$R *.res}
+{$R '..\SVGIconImageListNew.dcr'}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList FMX components'}
+{$LIBSUFFIX '_D10_3'}
+{$DESIGNONLY}
+{$IMPLICITBUILD ON}
+
+requires
+ DesignIDE,
+ dclfmxstd,
+ SVGIconPackage,
+ SVGIconImageListFMX;
+
+contains
+ FMX.SVGIconImageRegister in '..\FMX.SVGIconImageRegister.pas',
+ FMX.SVGIconImageListEditorUnit in '..\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX};
+
+end.
diff --git a/Packages/D10_3/dclSVGIconImageListFMX.dproj b/Packages/D10_3/dclSVGIconImageListFMX.dproj
index c9ad4038..41d4e223 100644
--- a/Packages/D10_3/dclSVGIconImageListFMX.dproj
+++ b/Packages/D10_3/dclSVGIconImageListFMX.dproj
@@ -1,912 +1,912 @@
-
-
- {AC5E58B2-BDF0-4A77-9084-92441FBD9BC2}
- dclSVGIconImageListFMX.dpk
- 18.8
- FMX
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- ..\..\Lib\D10_3\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- All
- dclSVGIconImageListFMX
- CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
- _D10_3
- Ethea SVGIconImageList FMX components
- true
- 1033
-
-
- Debug
- rtl;IconFontsImageListFMX;SVGIconImageListFMX;SVGIconPackage;$(DCC_UsePackage)
-
-
- rtl;$(DCC_UsePackage)
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- dclSVGIconImageListFMX.dpk
-
-
- Chrome Tabs
- Microsoft Office 2000 Sample Automation Server Wrapper Components
-
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- dclSVGIconImageListFMX.bpl
- true
-
-
-
-
- dclSVGIconImageListFMX.bpl
- true
-
-
-
-
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
-
+
+
+ {AC5E58B2-BDF0-4A77-9084-92441FBD9BC2}
+ dclSVGIconImageListFMX.dpk
+ 18.8
+ FMX
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ ..\..\Lib\D10_3\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ All
+ dclSVGIconImageListFMX
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ _D10_3
+ Ethea SVGIconImageList FMX components
+ true
+ 1033
+
+
+ Debug
+ rtl;IconFontsImageListFMX;SVGIconImageListFMX;SVGIconPackage;$(DCC_UsePackage)
+
+
+ rtl;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+
+ MainSource
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ dclSVGIconImageListFMX.dpk
+
+
+ Chrome Tabs
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ dclSVGIconImageListFMX.bpl
+ true
+
+
+
+
+ dclSVGIconImageListFMX.bpl
+ true
+
+
+
+
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ 1
+ .framework
+
+
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/Packages/D10_4/SVGIconImageList.dpk b/Packages/D10_4/SVGIconImageList.dpk
index 48c3bcf3..4dd74803 100644
--- a/Packages/D10_4/SVGIconImageList.dpk
+++ b/Packages/D10_4/SVGIconImageList.dpk
@@ -1,47 +1,47 @@
-package SVGIconImageList;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_D10_4'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- vcl,
- SVGIconPackage,
- vclwinx;
-
-contains
- SVGIconImage in '..\..\Source\SVGIconImage.pas',
- SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
- SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
- SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
- SVGIconItems in '..\..\Source\SVGIconItems.pas',
- SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
- SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
-
-end.
+package SVGIconImageList;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_D10_4'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ SVGIconPackage,
+ vclwinx;
+
+contains
+ SVGIconImage in '..\..\Source\SVGIconImage.pas',
+ SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
+ SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
+ SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
+ SVGIconItems in '..\..\Source\SVGIconItems.pas',
+ SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
+ SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
+
+end.
diff --git a/Packages/D10_4/SVGIconImageListFMX.dpk b/Packages/D10_4/SVGIconImageListFMX.dpk
index 840347fe..da8459b5 100644
--- a/Packages/D10_4/SVGIconImageListFMX.dpk
+++ b/Packages/D10_4/SVGIconImageListFMX.dpk
@@ -1,41 +1,41 @@
-package SVGIconImageListFMX;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList FMX components'}
-{$LIBSUFFIX '_D10_4'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- fmx,
- SVGIconPackage;
-
-contains
- FMX.SVGIconImageList in '..\..\Source\FMX.SVGIconImageList.pas',
- FMX.SVGIconImage in '..\..\Source\FMX.SVGIconImage.pas';
-
-end.
+package SVGIconImageListFMX;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList FMX components'}
+{$LIBSUFFIX '_D10_4'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ fmx,
+ SVGIconPackage;
+
+contains
+ FMX.SVGIconImageList in '..\..\Source\FMX.SVGIconImageList.pas',
+ FMX.SVGIconImage in '..\..\Source\FMX.SVGIconImage.pas';
+
+end.
diff --git a/Packages/D10_4/SVGIconImageListFMX.dproj b/Packages/D10_4/SVGIconImageListFMX.dproj
index b36ce58e..ac84d604 100644
--- a/Packages/D10_4/SVGIconImageListFMX.dproj
+++ b/Packages/D10_4/SVGIconImageListFMX.dproj
@@ -1,899 +1,899 @@
-
-
- {2CD11B99-3805-4F90-B598-3652213872B2}
- SVGIconImageListFMX.dpk
- 19.0
- FMX
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- ..\..\Lib\D10_4\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- All
- SVGIconImageListFMX
- 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=
- Ethea SVGIconImageList FMX components
- true
- true
- _D10_4
-
-
- Debug
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
-
- MainSource
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconImageListFMX.dpk
-
-
- Microsoft Office 2000 Sample Automation Server Wrapper Components
- Microsoft Office XP Sample Automation Server Wrapper Components
-
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- SVGIconImageListFMX.bpl
- true
-
-
-
-
- SVGIconImageListFMX.bpl
- true
-
-
-
-
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
-
+
+
+ {2CD11B99-3805-4F90-B598-3652213872B2}
+ SVGIconImageListFMX.dpk
+ 19.0
+ FMX
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ ..\..\Lib\D10_4\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ All
+ SVGIconImageListFMX
+ 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=
+ Ethea SVGIconImageList FMX components
+ true
+ true
+ _D10_4
+
+
+ Debug
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+
+ MainSource
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconImageListFMX.dpk
+
+
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ SVGIconImageListFMX.bpl
+ true
+
+
+
+
+ SVGIconImageListFMX.bpl
+ true
+
+
+
+
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ 1
+ .framework
+
+
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/Packages/D10_4/SVGIconImageListGroupPackages.groupproj b/Packages/D10_4/SVGIconImageListGroupPackages.groupproj
index 3c8845be..d77c5eb9 100644
--- a/Packages/D10_4/SVGIconImageListGroupPackages.groupproj
+++ b/Packages/D10_4/SVGIconImageListGroupPackages.groupproj
@@ -1,84 +1,84 @@
-
-
- {23E38E32-FA2D-4698-B906-A5C6A5F40068}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default.Personality.12
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ {23E38E32-FA2D-4698-B906-A5C6A5F40068}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Packages/D10_4/SVGIconPackage.dpk b/Packages/D10_4/SVGIconPackage.dpk
index 5f864ecb..0db7efa0 100644
--- a/Packages/D10_4/SVGIconPackage.dpk
+++ b/Packages/D10_4/SVGIconPackage.dpk
@@ -1,52 +1,52 @@
-package SVGIconPackage;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'SVG Package for Ethea SVGIcon Components'}
-{$LIBSUFFIX '_D10_4'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- xmlrtl,
- vcl;
-
-contains
- SVG in '..\..\svg\SVG.pas',
- SVGColor in '..\..\Svg\SVGColor.pas',
- SVGCommon in '..\..\Svg\SVGCommon.pas',
- SVGPaint in '..\..\Svg\SVGPaint.pas',
- SVGParse in '..\..\Svg\SVGParse.pas',
- SVGPath in '..\..\Svg\SVGPath.pas',
- SVGProperties in '..\..\Svg\SVGProperties.pas',
- SVGStyle in '..\..\Svg\SVGStyle.pas',
- SVGTypes in '..\..\Svg\SVGTypes.pas',
- GDIPKerning in '..\..\Svg\GDIPKerning.pas',
- GDIPOBJ2 in '..\..\Svg\GDIPOBJ2.pas',
- GDIPPathText in '..\..\Svg\GDIPPathText.pas';
-
-end.
+package SVGIconPackage;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'SVG Package for Ethea SVGIcon Components'}
+{$LIBSUFFIX '_D10_4'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ xmlrtl,
+ vcl;
+
+contains
+ SVG in '..\..\svg\SVG.pas',
+ SVGColor in '..\..\Svg\SVGColor.pas',
+ SVGCommon in '..\..\Svg\SVGCommon.pas',
+ SVGPaint in '..\..\Svg\SVGPaint.pas',
+ SVGParse in '..\..\Svg\SVGParse.pas',
+ SVGPath in '..\..\Svg\SVGPath.pas',
+ SVGProperties in '..\..\Svg\SVGProperties.pas',
+ SVGStyle in '..\..\Svg\SVGStyle.pas',
+ SVGTypes in '..\..\Svg\SVGTypes.pas',
+ GDIPKerning in '..\..\Svg\GDIPKerning.pas',
+ GDIPOBJ2 in '..\..\Svg\GDIPOBJ2.pas',
+ GDIPPathText in '..\..\Svg\GDIPPathText.pas';
+
+end.
diff --git a/Packages/D10_4/dclSVGIconImageList.dpk b/Packages/D10_4/dclSVGIconImageList.dpk
index 613cfcfb..11c35e3b 100644
--- a/Packages/D10_4/dclSVGIconImageList.dpk
+++ b/Packages/D10_4/dclSVGIconImageList.dpk
@@ -1,45 +1,45 @@
-package dclSVGIconImageList;
-
-{$R *.res}
-{$R '..\SVGIconImageListNew.dcr'}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_D10_4'}
-{$DESIGNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- DesignIDE,
- SVGIconPackage,
- SVGIconImageList,
- VclSmp;
-
-contains
- SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageRegister in '..\SVGIconImageRegister.pas',
- SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
-
-end.
+package dclSVGIconImageList;
+
+{$R *.res}
+{$R '..\SVGIconImageListNew.dcr'}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_D10_4'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ DesignIDE,
+ SVGIconPackage,
+ SVGIconImageList,
+ VclSmp;
+
+contains
+ SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageRegister in '..\SVGIconImageRegister.pas',
+ SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
+
+end.
diff --git a/Packages/D10_4/dclSVGIconImageListFMX.dpk b/Packages/D10_4/dclSVGIconImageListFMX.dpk
index 7620db59..076e86a7 100644
--- a/Packages/D10_4/dclSVGIconImageListFMX.dpk
+++ b/Packages/D10_4/dclSVGIconImageListFMX.dpk
@@ -1,44 +1,44 @@
-package dclSVGIconImageListFMX;
-
-{$R *.res}
-{$R '..\SVGIconImageListNew.dcr'}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList FMX components'}
-{$LIBSUFFIX '_D10_4'}
-{$DESIGNONLY}
-{$IMPLICITBUILD ON}
-
-requires
- DesignIDE,
- dclfmxstd,
- SVGIconPackage,
- SVGIconImageListFMX;
-
-contains
- FMX.SVGIconImageRegister in '..\FMX.SVGIconImageRegister.pas',
- FMX.SVGIconImageListEditorUnit in '..\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX};
-
-end.
+package dclSVGIconImageListFMX;
+
+{$R *.res}
+{$R '..\SVGIconImageListNew.dcr'}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList FMX components'}
+{$LIBSUFFIX '_D10_4'}
+{$DESIGNONLY}
+{$IMPLICITBUILD ON}
+
+requires
+ DesignIDE,
+ dclfmxstd,
+ SVGIconPackage,
+ SVGIconImageListFMX;
+
+contains
+ FMX.SVGIconImageRegister in '..\FMX.SVGIconImageRegister.pas',
+ FMX.SVGIconImageListEditorUnit in '..\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX};
+
+end.
diff --git a/Packages/D10_4/dclSVGIconImageListFMX.dproj b/Packages/D10_4/dclSVGIconImageListFMX.dproj
index 401f7ffd..fe74afdf 100644
--- a/Packages/D10_4/dclSVGIconImageListFMX.dproj
+++ b/Packages/D10_4/dclSVGIconImageListFMX.dproj
@@ -1,973 +1,973 @@
-
-
- {AC5E58B2-BDF0-4A77-9084-92441FBD9BC2}
- dclSVGIconImageListFMX.dpk
- 19.0
- FMX
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- ..\..\Lib\D10_4\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- All
- dclSVGIconImageListFMX
- CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
- _D10_4
- Ethea SVGIconImageList FMX components
- true
- 1033
-
-
- Debug
- rtl;IconFontsImageListFMX;SVGIconImageListFMX;SVGIconPackage;$(DCC_UsePackage)
-
-
- rtl;$(DCC_UsePackage)
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
-
- MainSource
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- dclSVGIconImageListFMX.dpk
-
-
- Microsoft Office 2000 Sample Automation Server Wrapper Components
- Microsoft Office XP Sample Automation Server Wrapper Components
-
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- dclSVGIconImageListFMX.bpl
- true
-
-
-
-
- dclSVGIconImageListFMX.bpl
- true
-
-
-
-
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
-
+
+
+ {AC5E58B2-BDF0-4A77-9084-92441FBD9BC2}
+ dclSVGIconImageListFMX.dpk
+ 19.0
+ FMX
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ ..\..\Lib\D10_4\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ All
+ dclSVGIconImageListFMX
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ _D10_4
+ Ethea SVGIconImageList FMX components
+ true
+ 1033
+
+
+ Debug
+ rtl;IconFontsImageListFMX;SVGIconImageListFMX;SVGIconPackage;$(DCC_UsePackage)
+
+
+ rtl;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+
+ MainSource
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ dclSVGIconImageListFMX.dpk
+
+
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+ Microsoft Office XP Sample Automation Server Wrapper Components
+
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ dclSVGIconImageListFMX.bpl
+ true
+
+
+
+
+ dclSVGIconImageListFMX.bpl
+ true
+
+
+
+
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ 1
+ .framework
+
+
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/Packages/DXE6/SVGIconImageList.dpk b/Packages/DXE6/SVGIconImageList.dpk
index 84c90fb0..c2cdc6f9 100644
--- a/Packages/DXE6/SVGIconImageList.dpk
+++ b/Packages/DXE6/SVGIconImageList.dpk
@@ -1,46 +1,46 @@
-package SVGIconImageList;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_DXE6'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- vcl,
- SVGIconPackage;
-
-contains
- SVGIconImage in '..\..\Source\SVGIconImage.pas',
- SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
- SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
- SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
- SVGIconItems in '..\..\Source\SVGIconItems.pas',
- SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
- SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
-
-end.
+package SVGIconImageList;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_DXE6'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ SVGIconPackage;
+
+contains
+ SVGIconImage in '..\..\Source\SVGIconImage.pas',
+ SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
+ SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
+ SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
+ SVGIconItems in '..\..\Source\SVGIconItems.pas',
+ SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
+ SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
+
+end.
diff --git a/Packages/DXE6/SVGIconImageList.dproj b/Packages/DXE6/SVGIconImageList.dproj
index 3af00f0c..f09f4724 100644
--- a/Packages/DXE6/SVGIconImageList.dproj
+++ b/Packages/DXE6/SVGIconImageList.dproj
@@ -1,138 +1,138 @@
-
-
- {BB186742-0FB8-47BA-A0F9-33CC45218EF5}
- SVGIconImageList.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\DXE6\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _DXE6
- ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconImageList.dpk
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {BB186742-0FB8-47BA-A0F9-33CC45218EF5}
+ SVGIconImageList.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\DXE6\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _DXE6
+ ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconImageList.dpk
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/DXE6/SVGIconImageListGroupPackages.groupproj b/Packages/DXE6/SVGIconImageListGroupPackages.groupproj
index e65a5d5b..2f231b9b 100644
--- a/Packages/DXE6/SVGIconImageListGroupPackages.groupproj
+++ b/Packages/DXE6/SVGIconImageListGroupPackages.groupproj
@@ -1,60 +1,60 @@
-
-
- {25059111-8F77-429C-A2F2-CB529411BC99}
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default.Personality.12
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ {25059111-8F77-429C-A2F2-CB529411BC99}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Packages/DXE6/SVGIconPackage.dpk b/Packages/DXE6/SVGIconPackage.dpk
index e79971ec..4e7d7598 100644
--- a/Packages/DXE6/SVGIconPackage.dpk
+++ b/Packages/DXE6/SVGIconPackage.dpk
@@ -1,56 +1,56 @@
-package SVGIconPackage;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_DXE6'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- xmlrtl,
- vcl,
- IndySystem,
- IndyProtocols,
- IndyCore;
-
-contains
- SVG in '..\..\svg\SVG.pas',
- SVGColor in '..\..\Svg\SVGColor.pas',
- SVGCommon in '..\..\Svg\SVGCommon.pas',
- SVGPaint in '..\..\Svg\SVGPaint.pas',
- SVGParse in '..\..\Svg\SVGParse.pas',
- SVGPath in '..\..\Svg\SVGPath.pas',
- SVGProperties in '..\..\Svg\SVGProperties.pas',
- SVGStyle in '..\..\Svg\SVGStyle.pas',
- SVGTypes in '..\..\Svg\SVGTypes.pas',
- GDIPKerning in '..\..\GDIP\GDIPKerning.pas',
- GDIPOBJ2 in '..\..\GDIP\GDIPOBJ2.pas',
- GDIPPathText in '..\..\GDIP\GDIPPathText.pas',
- GDIPUtils in '..\..\GDIP\GDIPUtils.pas';
-
-end.
+package SVGIconPackage;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_DXE6'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ xmlrtl,
+ vcl,
+ IndySystem,
+ IndyProtocols,
+ IndyCore;
+
+contains
+ SVG in '..\..\svg\SVG.pas',
+ SVGColor in '..\..\Svg\SVGColor.pas',
+ SVGCommon in '..\..\Svg\SVGCommon.pas',
+ SVGPaint in '..\..\Svg\SVGPaint.pas',
+ SVGParse in '..\..\Svg\SVGParse.pas',
+ SVGPath in '..\..\Svg\SVGPath.pas',
+ SVGProperties in '..\..\Svg\SVGProperties.pas',
+ SVGStyle in '..\..\Svg\SVGStyle.pas',
+ SVGTypes in '..\..\Svg\SVGTypes.pas',
+ GDIPKerning in '..\..\GDIP\GDIPKerning.pas',
+ GDIPOBJ2 in '..\..\GDIP\GDIPOBJ2.pas',
+ GDIPPathText in '..\..\GDIP\GDIPPathText.pas',
+ GDIPUtils in '..\..\GDIP\GDIPUtils.pas';
+
+end.
diff --git a/Packages/DXE6/SVGIconPackage.dproj b/Packages/DXE6/SVGIconPackage.dproj
index 5cb44dba..c11e75e9 100644
--- a/Packages/DXE6/SVGIconPackage.dproj
+++ b/Packages/DXE6/SVGIconPackage.dproj
@@ -1,145 +1,145 @@
-
-
- {91801225-3901-4C8C-9D06-118BDACC9754}
- SVGIconPackage.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\DXE6\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconPackage
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _DXE6
- ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconPackage.dpk
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {91801225-3901-4C8C-9D06-118BDACC9754}
+ SVGIconPackage.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\DXE6\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconPackage
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _DXE6
+ ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconPackage.dpk
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/DXE6/dclSVGIconImageList.dpk b/Packages/DXE6/dclSVGIconImageList.dpk
index ae42cd27..2e6f5f06 100644
--- a/Packages/DXE6/dclSVGIconImageList.dpk
+++ b/Packages/DXE6/dclSVGIconImageList.dpk
@@ -1,45 +1,45 @@
-package dclSVGIconImageList;
-
-{$R *.res}
-{$R '..\SVGIconImageList.dcr'}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_DXE6'}
-{$DESIGNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- DesignIDE,
- SVGIconPackage,
- SVGIconImageList,
- VclSmp;
-
-contains
- SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageRegister in '..\SVGIconImageRegister.pas',
- SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
-
-end.
+package dclSVGIconImageList;
+
+{$R *.res}
+{$R '..\SVGIconImageList.dcr'}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_DXE6'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ DesignIDE,
+ SVGIconPackage,
+ SVGIconImageList,
+ VclSmp;
+
+contains
+ SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageRegister in '..\SVGIconImageRegister.pas',
+ SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
+
+end.
diff --git a/Packages/DXE6/dclSVGIconImageList.dproj b/Packages/DXE6/dclSVGIconImageList.dproj
index 702e99de..e8fb939d 100644
--- a/Packages/DXE6/dclSVGIconImageList.dproj
+++ b/Packages/DXE6/dclSVGIconImageList.dproj
@@ -1,142 +1,142 @@
-
-
- {EF07DC0D-1DAD-4252-BFF5-C9A9BD9A06F4}
- dclSVGIconImageList.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\DXE6\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- dclSVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _DXE6
- ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
- SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
- dfm
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- dclSVGIconImageList.dpk
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {EF07DC0D-1DAD-4252-BFF5-C9A9BD9A06F4}
+ dclSVGIconImageList.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\DXE6\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ dclSVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _DXE6
+ ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+ SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ dclSVGIconImageList.dpk
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/DXE7/SVGIconImageList.dpk b/Packages/DXE7/SVGIconImageList.dpk
index 0820f532..6a8e8c16 100644
--- a/Packages/DXE7/SVGIconImageList.dpk
+++ b/Packages/DXE7/SVGIconImageList.dpk
@@ -1,46 +1,46 @@
-package SVGIconImageList;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_DXE7'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- vcl,
- SVGIconPackage;
-
-contains
- SVGIconImage in '..\..\Source\SVGIconImage.pas',
- SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
- SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
- SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
- SVGIconItems in '..\..\Source\SVGIconItems.pas',
- SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
- SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
-
-end.
+package SVGIconImageList;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_DXE7'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ SVGIconPackage;
+
+contains
+ SVGIconImage in '..\..\Source\SVGIconImage.pas',
+ SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
+ SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
+ SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
+ SVGIconItems in '..\..\Source\SVGIconItems.pas',
+ SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
+ SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
+
+end.
diff --git a/Packages/DXE7/SVGIconImageList.dproj b/Packages/DXE7/SVGIconImageList.dproj
index 2863c69d..1383b5c4 100644
--- a/Packages/DXE7/SVGIconImageList.dproj
+++ b/Packages/DXE7/SVGIconImageList.dproj
@@ -1,139 +1,139 @@
-
-
- {BB186742-0FB8-47BA-A0F9-33CC45218EF5}
- SVGIconImageList.dpk
- 16.1
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\DXE7\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _DXE7
- ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconImageList.dpk
-
-
- IP Abstraction Indy Implementation Design Time
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {BB186742-0FB8-47BA-A0F9-33CC45218EF5}
+ SVGIconImageList.dpk
+ 16.1
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\DXE7\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _DXE7
+ ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconImageList.dpk
+
+
+ IP Abstraction Indy Implementation Design Time
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/DXE7/SVGIconImageListGroupPackages.groupproj b/Packages/DXE7/SVGIconImageListGroupPackages.groupproj
index e65a5d5b..2f231b9b 100644
--- a/Packages/DXE7/SVGIconImageListGroupPackages.groupproj
+++ b/Packages/DXE7/SVGIconImageListGroupPackages.groupproj
@@ -1,60 +1,60 @@
-
-
- {25059111-8F77-429C-A2F2-CB529411BC99}
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default.Personality.12
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ {25059111-8F77-429C-A2F2-CB529411BC99}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Packages/DXE7/SVGIconPackage.dpk b/Packages/DXE7/SVGIconPackage.dpk
index e5323aa5..c2898967 100644
--- a/Packages/DXE7/SVGIconPackage.dpk
+++ b/Packages/DXE7/SVGIconPackage.dpk
@@ -1,53 +1,53 @@
-package SVGIconPackage;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_DXE7'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- xmlrtl,
- vcl;
-
-contains
- SVG in '..\..\svg\SVG.pas',
- SVGColor in '..\..\Svg\SVGColor.pas',
- SVGCommon in '..\..\Svg\SVGCommon.pas',
- SVGPaint in '..\..\Svg\SVGPaint.pas',
- SVGParse in '..\..\Svg\SVGParse.pas',
- SVGPath in '..\..\Svg\SVGPath.pas',
- SVGProperties in '..\..\Svg\SVGProperties.pas',
- SVGStyle in '..\..\Svg\SVGStyle.pas',
- SVGTypes in '..\..\Svg\SVGTypes.pas',
- GDIPKerning in '..\..\GDIP\GDIPKerning.pas',
- GDIPOBJ2 in '..\..\GDIP\GDIPOBJ2.pas',
- GDIPPathText in '..\..\GDIP\GDIPPathText.pas',
- GDIPUtils in '..\..\GDIP\GDIPUtils.pas';
-
-end.
+package SVGIconPackage;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_DXE7'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ xmlrtl,
+ vcl;
+
+contains
+ SVG in '..\..\svg\SVG.pas',
+ SVGColor in '..\..\Svg\SVGColor.pas',
+ SVGCommon in '..\..\Svg\SVGCommon.pas',
+ SVGPaint in '..\..\Svg\SVGPaint.pas',
+ SVGParse in '..\..\Svg\SVGParse.pas',
+ SVGPath in '..\..\Svg\SVGPath.pas',
+ SVGProperties in '..\..\Svg\SVGProperties.pas',
+ SVGStyle in '..\..\Svg\SVGStyle.pas',
+ SVGTypes in '..\..\Svg\SVGTypes.pas',
+ GDIPKerning in '..\..\GDIP\GDIPKerning.pas',
+ GDIPOBJ2 in '..\..\GDIP\GDIPOBJ2.pas',
+ GDIPPathText in '..\..\GDIP\GDIPPathText.pas',
+ GDIPUtils in '..\..\GDIP\GDIPUtils.pas';
+
+end.
diff --git a/Packages/DXE7/SVGIconPackage.dproj b/Packages/DXE7/SVGIconPackage.dproj
index a9216546..d33ede5c 100644
--- a/Packages/DXE7/SVGIconPackage.dproj
+++ b/Packages/DXE7/SVGIconPackage.dproj
@@ -1,147 +1,147 @@
-
-
- {91801225-3901-4C8C-9D06-118BDACC9754}
- SVGIconPackage.dpk
- 16.1
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\DXE7\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconPackage
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _DXE6
- ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- _DXE7
- 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
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconPackage.dpk
-
-
- IP Abstraction Indy Implementation Design Time
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {91801225-3901-4C8C-9D06-118BDACC9754}
+ SVGIconPackage.dpk
+ 16.1
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\DXE7\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconPackage
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _DXE6
+ ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ _DXE7
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconPackage.dpk
+
+
+ IP Abstraction Indy Implementation Design Time
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/DXE7/dclSVGIconImageList.dpk b/Packages/DXE7/dclSVGIconImageList.dpk
index ec04270b..7df783ba 100644
--- a/Packages/DXE7/dclSVGIconImageList.dpk
+++ b/Packages/DXE7/dclSVGIconImageList.dpk
@@ -1,45 +1,45 @@
-package dclSVGIconImageList;
-
-{$R *.res}
-{$R '..\SVGIconImageList.dcr'}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_DXE7'}
-{$DESIGNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- DesignIDE,
- SVGIconPackage,
- SVGIconImageList,
- VclSmp;
-
-contains
- SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageRegister in '..\SVGIconImageRegister.pas',
- SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
-
-end.
+package dclSVGIconImageList;
+
+{$R *.res}
+{$R '..\SVGIconImageList.dcr'}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_DXE7'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ DesignIDE,
+ SVGIconPackage,
+ SVGIconImageList,
+ VclSmp;
+
+contains
+ SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageRegister in '..\SVGIconImageRegister.pas',
+ SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
+
+end.
diff --git a/Packages/DXE7/dclSVGIconImageList.dproj b/Packages/DXE7/dclSVGIconImageList.dproj
index 051fd2b9..0f6527aa 100644
--- a/Packages/DXE7/dclSVGIconImageList.dproj
+++ b/Packages/DXE7/dclSVGIconImageList.dproj
@@ -1,145 +1,145 @@
-
-
- {EF07DC0D-1DAD-4252-BFF5-C9A9BD9A06F4}
- dclSVGIconImageList.dpk
- 16.1
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\DXE7\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- dclSVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _DXE6
- ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
- SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- _DXE7
- 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
-
-
-
-
-
-
-
-
-
-
-
-
- dfm
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- dclSVGIconImageList.dpk
-
-
- IP Abstraction Indy Implementation Design Time
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {EF07DC0D-1DAD-4252-BFF5-C9A9BD9A06F4}
+ dclSVGIconImageList.dpk
+ 16.1
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\DXE7\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ dclSVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _DXE6
+ ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+ SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ _DXE7
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ dclSVGIconImageList.dpk
+
+
+ IP Abstraction Indy Implementation Design Time
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/DXE8/SVGIconImageList.dpk b/Packages/DXE8/SVGIconImageList.dpk
index ab74fdd9..b9f3a275 100644
--- a/Packages/DXE8/SVGIconImageList.dpk
+++ b/Packages/DXE8/SVGIconImageList.dpk
@@ -1,46 +1,46 @@
-package SVGIconImageList;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_DXE8'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- vcl,
- SVGIconPackage;
-
-contains
- SVGIconImage in '..\..\Source\SVGIconImage.pas',
- SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
- SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
- SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
- SVGIconItems in '..\..\Source\SVGIconItems.pas',
- SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
- SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
-
-end.
+package SVGIconImageList;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_DXE8'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ vcl,
+ SVGIconPackage;
+
+contains
+ SVGIconImage in '..\..\Source\SVGIconImage.pas',
+ SVGIconImageList in '..\..\Source\SVGIconImageList.pas',
+ SVGIconUtils in '..\..\Source\SVGIconUtils.pas',
+ SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas',
+ SVGIconItems in '..\..\Source\SVGIconItems.pas',
+ SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas',
+ SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas';
+
+end.
diff --git a/Packages/DXE8/SVGIconImageList.dproj b/Packages/DXE8/SVGIconImageList.dproj
index 13451285..2871acc4 100644
--- a/Packages/DXE8/SVGIconImageList.dproj
+++ b/Packages/DXE8/SVGIconImageList.dproj
@@ -1,138 +1,138 @@
-
-
- {85171451-55E6-43E5-8241-572342FA535C}
- SVGIconImageList.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\DXE8\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _DXE8
- ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconImageList.dpk
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {85171451-55E6-43E5-8241-572342FA535C}
+ SVGIconImageList.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\DXE8\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _DXE8
+ ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconImageList.dpk
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/DXE8/SVGIconImageListGroupPackages.groupproj b/Packages/DXE8/SVGIconImageListGroupPackages.groupproj
index 6d6cb63e..238fd1d5 100644
--- a/Packages/DXE8/SVGIconImageListGroupPackages.groupproj
+++ b/Packages/DXE8/SVGIconImageListGroupPackages.groupproj
@@ -1,60 +1,60 @@
-
-
- {43558AC6-3EF5-4323-9448-1656FF056E82}
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default.Personality.12
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ {43558AC6-3EF5-4323-9448-1656FF056E82}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Packages/DXE8/SVGIconPackage.dpk b/Packages/DXE8/SVGIconPackage.dpk
index e412e667..83298f73 100644
--- a/Packages/DXE8/SVGIconPackage.dpk
+++ b/Packages/DXE8/SVGIconPackage.dpk
@@ -1,53 +1,53 @@
-package SVGIconPackage;
-
-{$R *.res}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_DXE8'}
-{$RUNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- rtl,
- xmlrtl,
- vcl;
-
-contains
- SVG in '..\..\svg\SVG.pas',
- SVGColor in '..\..\Svg\SVGColor.pas',
- SVGCommon in '..\..\Svg\SVGCommon.pas',
- SVGPaint in '..\..\Svg\SVGPaint.pas',
- SVGParse in '..\..\Svg\SVGParse.pas',
- SVGPath in '..\..\Svg\SVGPath.pas',
- SVGProperties in '..\..\Svg\SVGProperties.pas',
- SVGStyle in '..\..\Svg\SVGStyle.pas',
- SVGTypes in '..\..\Svg\SVGTypes.pas',
- GDIPKerning in '..\..\GDIP\GDIPKerning.pas',
- GDIPOBJ2 in '..\..\GDIP\GDIPOBJ2.pas',
- GDIPPathText in '..\..\GDIP\GDIPPathText.pas',
- GDIPUtils in '..\..\GDIP\GDIPUtils.pas';
-
-end.
+package SVGIconPackage;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_DXE8'}
+{$RUNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ rtl,
+ xmlrtl,
+ vcl;
+
+contains
+ SVG in '..\..\svg\SVG.pas',
+ SVGColor in '..\..\Svg\SVGColor.pas',
+ SVGCommon in '..\..\Svg\SVGCommon.pas',
+ SVGPaint in '..\..\Svg\SVGPaint.pas',
+ SVGParse in '..\..\Svg\SVGParse.pas',
+ SVGPath in '..\..\Svg\SVGPath.pas',
+ SVGProperties in '..\..\Svg\SVGProperties.pas',
+ SVGStyle in '..\..\Svg\SVGStyle.pas',
+ SVGTypes in '..\..\Svg\SVGTypes.pas',
+ GDIPKerning in '..\..\GDIP\GDIPKerning.pas',
+ GDIPOBJ2 in '..\..\GDIP\GDIPOBJ2.pas',
+ GDIPPathText in '..\..\GDIP\GDIPPathText.pas',
+ GDIPUtils in '..\..\GDIP\GDIPUtils.pas';
+
+end.
diff --git a/Packages/DXE8/SVGIconPackage.dproj b/Packages/DXE8/SVGIconPackage.dproj
index 5564c849..787cf3d3 100644
--- a/Packages/DXE8/SVGIconPackage.dproj
+++ b/Packages/DXE8/SVGIconPackage.dproj
@@ -1,145 +1,145 @@
-
-
- {4EAE5FD6-C187-4569-9129-F7E85B30BE78}
- SVGIconPackage.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\DXE8\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- SVGIconPackage
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _DXE8
- ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- SVGIconPackage.dpk
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {4EAE5FD6-C187-4569-9129-F7E85B30BE78}
+ SVGIconPackage.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\DXE8\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ SVGIconPackage
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _DXE8
+ ..\..\svg;..\..\GDIP;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ SVGIconPackage.dpk
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/DXE8/dclSVGIconImageList.dpk b/Packages/DXE8/dclSVGIconImageList.dpk
index a3bc1963..dd97d01b 100644
--- a/Packages/DXE8/dclSVGIconImageList.dpk
+++ b/Packages/DXE8/dclSVGIconImageList.dpk
@@ -1,45 +1,45 @@
-package dclSVGIconImageList;
-
-{$R *.res}
-{$R '..\SVGIconImageList.dcr'}
-{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
-{$ALIGN 8}
-{$ASSERTIONS ON}
-{$BOOLEVAL OFF}
-{$DEBUGINFO OFF}
-{$EXTENDEDSYNTAX ON}
-{$IMPORTEDDATA ON}
-{$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
-{$LONGSTRINGS ON}
-{$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
-{$OVERFLOWCHECKS OFF}
-{$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
-{$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
-{$TYPEDADDRESS OFF}
-{$VARSTRINGCHECKS ON}
-{$WRITEABLECONST OFF}
-{$MINENUMSIZE 1}
-{$IMAGEBASE $400000}
-{$DEFINE RELEASE}
-{$ENDIF IMPLICITBUILDING}
-{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
-{$LIBSUFFIX '_DXE8'}
-{$DESIGNONLY}
-{$IMPLICITBUILD OFF}
-
-requires
- DesignIDE,
- SVGIconPackage,
- SVGIconImageList,
- VclSmp;
-
-contains
- SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
- SVGIconImageRegister in '..\SVGIconImageRegister.pas',
- SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
-
-end.
+package dclSVGIconImageList;
+
+{$R *.res}
+{$R '..\SVGIconImageList.dcr'}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO OFF}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS OFF}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION ON}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO OFF}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES OFF}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE RELEASE}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'Ethea SVGIconImageList VCL components'}
+{$LIBSUFFIX '_DXE8'}
+{$DESIGNONLY}
+{$IMPLICITBUILD OFF}
+
+requires
+ DesignIDE,
+ SVGIconPackage,
+ SVGIconImageList,
+ VclSmp;
+
+contains
+ SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor},
+ SVGIconImageRegister in '..\SVGIconImageRegister.pas',
+ SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm};
+
+end.
diff --git a/Packages/DXE8/dclSVGIconImageList.dproj b/Packages/DXE8/dclSVGIconImageList.dproj
index 7f8fb647..564297db 100644
--- a/Packages/DXE8/dclSVGIconImageList.dproj
+++ b/Packages/DXE8/dclSVGIconImageList.dproj
@@ -1,143 +1,143 @@
-
-
- {300DF810-4356-40EE-A771-A3EC12B9FC1E}
- dclSVGIconImageList.dpk
- 18.8
- VCL
- True
- Release
- Win32
- 1
- Package
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- ..\..\Lib\DXE8\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- true
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- All
- dclSVGIconImageList
- 1040
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
- Ethea SVGIconImageList VCL components
- true
- _DXE8
- ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
- true
-
-
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- 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
- SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- 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=
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- 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
-
-
-
-
-
-
-
-
-
-
-
-
- dfm
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Package
-
-
-
- dclSVGIconImageList.dpk
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
+
+
+ {300DF810-4356-40EE-A771-A3EC12B9FC1E}
+ dclSVGIconImageList.dpk
+ 18.8
+ VCL
+ True
+ Release
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\Lib\DXE8\$(Platform)\$(Config)
+ .\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ true
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ All
+ dclSVGIconImageList
+ 1040
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=;ProductVersion=1.0;Comments=
+ Ethea SVGIconImageList VCL components
+ true
+ _DXE8
+ ..\..\svg;..\..\GDIP;..\..\Source;$(DCC_UnitSearchPath)
+ true
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ 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
+ SVGIconImageList;VclSmp;SVGIconPackage;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ 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=
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ dclSVGIconImageList.dpk
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
diff --git a/Packages/FMX.SVGIconImageListEditorUnit.pas b/Packages/FMX.SVGIconImageListEditorUnit.pas
index 8b9acf46..346a8846 100644
--- a/Packages/FMX.SVGIconImageListEditorUnit.pas
+++ b/Packages/FMX.SVGIconImageListEditorUnit.pas
@@ -1,596 +1,596 @@
-{******************************************************************************}
-{ }
-{ SVG Icon ImageList: An extended ImageList for Delphi/VLC+FMX }
-{ to simplify use of Icons (resize, opacity and more...) }
-{ }
-{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
-{ Author: Carlo Barazzetta }
-{ Contributors: }
-{ }
-{ https://github.com/EtheaDev/SVGIconImageList }
-{ }
-{******************************************************************************}
-{ }
-{ Licensed under the Apache License, Version 2.0 (the "License"); }
-{ you may not use this file except in compliance with the License. }
-{ You may obtain a copy of the License at }
-{ }
-{ http://www.apache.org/licenses/LICENSE-2.0 }
-{ }
-{ Unless required by applicable law or agreed to in writing, software }
-{ distributed under the License is distributed on an "AS IS" BASIS, }
-{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
-{ See the License for the specific language governing permissions and }
-{ limitations under the License. }
-{ }
-{******************************************************************************}
-unit FMX.SVGIconImageListEditorUnit;
-
-interface
-
-{$INCLUDE ..\Source\SVGIconImageList.inc}
-
-uses
- System.SysUtils, System.Types, System.UITypes, FMX.Controls, System.Classes,
- System.Actions, FMX.Forms, FMX.Graphics, FMX.ActnList, FMX.StdCtrls, FMX.Colors, FMX.ListBox,
- FMX.Controls.Presentation, FMX.ImgList, FMX.Types, FMX.Layouts,
- System.ImageList, FMX.SVGIconImageList, FMX.Edit, FMX.EditBox, FMX.SpinBox,
- FMX.ScrollBox, FMX.Memo, FMX.Dialogs;
-
-type
- TSVGIconImageListEditorFMX = class(TForm)
- PaButtons: TPanel;
- AddButton: TButton;
- DeleteButton: TButton;
- ClearAllButton: TButton;
- paTop: TPanel;
- Panel4: TPanel;
- OKButton: TButton;
- CancelButton: TButton;
- HelpButton: TButton;
- paClient: TPanel;
- ImageListGroupBox: TGroupBox;
- AutoSizeCheckBox: TCheckBox;
- DefaultOpacitySpinBox: TSpinBox;
- DefaultOpacityLabel: TLabel;
- ItemGroupBox: TGroupBox;
- IconName: TEdit;
- IconNameLabel: TLabel;
- OpacityLabel: TLabel;
- OpacitySpinBox: TSpinBox;
- IconPanel: TPanel;
- IconImage: TGlyph;
- ListBoxItemStyleBook: TStyleBook;
- SizeSpinBox: TSpinBox;
- SizeLabel: TLabel;
- IconsGroupBox: TGroupBox;
- ImageView: TListBox;
- TopSplitter: TSplitter;
- SVGText: TMemo;
- NewButton: TButton;
- OpenDialog: TOpenDialog;
- FixedColorComboBox: TComboBox;
- FixedColorLabel: TLabel;
- GrayScaleCheckBox: TCheckBox;
- GrayScaleItemCheckBox: TCheckBox;
- FixedColorItemLabel: TLabel;
- FixedColorItemComboBox: TComboBox;
- procedure ClearAllButtonClick(Sender: TObject);
- procedure DeleteButtonClick(Sender: TObject);
- procedure AddButtonClick(Sender: TObject);
- procedure FormDestroy(Sender: TObject);
- procedure FormShow(Sender: TObject);
- procedure HelpButtonClick(Sender: TObject);
- procedure IconNameExit(Sender: TObject);
- procedure ImageViewSelectItem(Sender: TObject);
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
- procedure AutoSizeCheckBoxClick(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure DefaultOpacitySpinBoxChange(Sender: TObject);
- procedure OpacitySpinBoxChange(Sender: TObject);
- procedure SizeChange(Sender: TObject);
- procedure FormResize(Sender: TObject);
- procedure NewButtonClick(Sender: TObject);
- procedure FixedColorComboBoxChange(Sender: TObject);
- procedure GrayScaleCheckBoxChange(Sender: TObject);
- procedure SVGTextExit(Sender: TObject);
- procedure GrayScaleItemCheckBoxChange(Sender: TObject);
- procedure FixedColorItemComboBoxChange(Sender: TObject);
- procedure ImageViewDragOver(Sender: TObject; const Data: TDragObject;
- const Point: TPointF; var Operation: TDragOperation);
- procedure ImageViewDragChange(SourceItem, DestItem: TListBoxItem;
- var Allow: Boolean);
- procedure ImageViewDragDrop(Sender: TObject; const Data: TDragObject;
- const Point: TPointF);
- private
- FIconIndexLabel: string;
- FTotIconsLabel: string;
- FUpdating: Boolean;
- SVGIconImageList: TSVGIconImageList;
- procedure AddNewItem;
- procedure DeleteSelectedItem;
- procedure ClearAllImages;
- procedure UpdateGUI;
- procedure SetImageOpacity(Opacity: Single);
- procedure SetImageIconName(IconName: String);
- function SelectedSVGIcon: TSVGIconSourceItem;
- public
- destructor Destroy; override;
- end;
-
-function EditSVGIconImageList(const AImageList: TSVGIconImageList): Boolean;
-
-implementation
-
-{$R *.fmx}
-
-uses
- Winapi.Messages
- , Winapi.Windows
- , Winapi.shellApi
- , SVG
- , SVGColor;
-
-var
- SavedBounds: TRect = (Left: 0; Top: 0; Right: 0; Bottom: 0);
- paTopHeight: Single;
-
-function UpdateSVGIconListView(const AListBox: TListBox): Integer;
-var
- I: Integer;
- LItem: TSVGIconSourceItem;
- LListItem: TListBoxItem;
- LSVGIconImageList: TSVGIconImageList;
-begin
- LSVGIconImageList := AListBox.Images as TSVGIconImageList;
-
- AListBox.Items.BeginUpdate;
- try
- AListBox.Clear;
- Result := LSVGIconImageList.Source.Count;
- for I := 0 to Result -1 do
- begin
- LItem := LSVGIconImageList.Source.Items[I] as TSVGIconSourceItem;
- LListItem := TListBoxItem.Create(AListBox);
- LListItem.StyleLookup := 'CustomListBoxItemStyle';
- LListItem.Text := Format('%d.%s', [LItem.Index,Litem.IconName]);
- LListItem.ImageIndex := I;
-
- AListBox.AddObject(LListItem);
- end;
- finally
- AListBox.Items.EndUpdate;
- end;
-end;
-
-function UpdateSVGIconListViewCaptions(const AListBox: TListBox;
- const AShowCaption: Boolean = True): Integer;
-var
- I: Integer;
- LItem: TSVGIconSourceItem;
- LSVGIconImageList: TSVGIconImageList;
-begin
- LSVGIconImageList := AListBox.Images as TSVGIconImageList;
- //AListView.Items.BeginUpdate;
- try
- Result := LSVGIconImageList.Source.Count;
- for I := 0 to Result -1 do
- begin
- LItem := LSVGIconImageList.Source[I] as TSVGIconSourceItem;
- if AShowCaption then
- begin
- AListBox.Items[I] := Format('%d.%s', [LItem.Index, Litem.IconName]);
- end
- else
- AListBox.Items[I] := '';
- end;
- finally
- //AListView.Items.EndUpdate;
- end;
-end;
-
-function EditSVGIconImageList(const AImageList: TSVGIconImageList): Boolean;
-var
- LEditor: TSVGIconImageListEditorFMX;
-begin
- LEditor := TSVGIconImageListEditorFMX.Create(nil);
- with LEditor do
- begin
- try
- //Screen.Cursor := crHourglass;
- try
- SVGIconImageList.Assign(AImageList);
- ImageView.Images := SVGIconImageList;
- UpdateSVGIconListView(ImageView);
- //UpdateGUI;
- if ImageView.Items.Count > 0 then
- ImageView.ItemIndex := 0;
-
- finally
- //Screen.Cursor := crDefault;
- end;
- Result := ShowModal = mrOk;
- if Result then
- begin
- //Screen.Cursor := crHourglass;
- try
- AImageList.Assign(SVGIconImageList);
- finally
- //Screen.Cursor := crDefault;
- end;
- end;
- SavedBounds := Bounds;
- paTopHeight := paTop.Height;
- finally
- DisposeOf;
- end;
- end;
-end;
-
-{ TSVGIconImageListEditorFMX }
-
-procedure TSVGIconImageListEditorFMX.HelpButtonClick(Sender: TObject);
-begin
- ShellExecute(0, 'open',
- PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/Component-Editor-(FMX)'), nil, nil,
- SW_SHOWNORMAL)
-end;
-
-procedure TSVGIconImageListEditorFMX.SizeChange(Sender: TObject);
-begin
- SVGIconImageList.Size := Round(SizeSpinBox.Value);
- UpdateGUI;
-end;
-
-procedure TSVGIconImageListEditorFMX.SVGTextExit(Sender: TObject);
-begin
- SelectedSVGIcon.SVGText := SVGText.Lines.Text;
- UpdateGUI;
-end;
-
-procedure TSVGIconImageListEditorFMX.AutoSizeCheckBoxClick(Sender: TObject);
-begin
- SVGIconImageList.AutoSizeBitmaps := AutoSizeCheckBox.IsChecked;
- UpdateGUI;
-end;
-
-procedure TSVGIconImageListEditorFMX.SetImageIconName(IconName: String);
-begin
- SelectedSVGIcon.IconName := IconName;
- UpdateGUI;
- UpdateSVGIconListViewCaptions(ImageView);
-end;
-
-procedure TSVGIconImageListEditorFMX.SetImageOpacity(Opacity: Single);
-begin
- SelectedSVGIcon.Opacity := Opacity / 100;
- UpdateGUI;
-end;
-
-procedure TSVGIconImageListEditorFMX.UpdateGUI;
-var
- LIsItemSelected: Boolean;
- LIconItem: TSVGIconSourceItem;
- {$IFNDEF UNICODE}
- S: WideString;
- {$ENDIF}
-begin
- FUpdating := True;
- try
- LIconItem := SelectedSVGIcon;
- LIsItemSelected := LIconItem <> nil;
- ClearAllButton.Enabled := SVGIconImageList.Count > 0;
- DeleteButton.Enabled := LIsItemSelected;
- OpacitySpinBox.Enabled := LIsItemSelected;
- IconName.Enabled := LIsItemSelected;
- SVGText.Enabled := LIsItemSelected;
- //ShowCharMapButton.Enabled := (SVGIconImageList.FontName <> '');
- IconsGroupBox.Text := Format(FTotIconsLabel, [SVGIconImageList.Count]);
- SizeSpinBox.Value := SVGIconImageList.Size;
- AutoSizeCheckBox.IsChecked := SVGIconImageList.AutoSizeBitmaps;
- DefaultOpacitySpinBox.Value := SVGIconImageList.Opacity * 100;
- FixedColorComboBox.ItemIndex :=
- FixedColorComboBox.Items.IndexOfObject(TObject(SVGIconImageList.FixedColor));
- GrayScaleCheckBox.IsChecked := SVGIconImageList.GrayScale;
- if LIsItemSelected then
- begin
- ItemGroupBox.Text := Format(FIconIndexLabel,[LIconItem.Index]);
- IconName.Text := LIconItem.IconName;
- SVGText.Lines.Text := LIconItem.SVGText;
- OpacitySpinBox.Value := LIconItem.Opacity * 100;
- IconImage.ImageIndex := LIconItem.Index;
- FixedColorItemComboBox.ItemIndex :=
- FixedColorItemComboBox.Items.IndexOfObject(TObject(LIconItem.FixedColor));
- GrayScaleItemCheckBox.IsChecked := LIconItem.GrayScale;
- IconImage.Repaint;
- end
- else
- begin
- IconName.Text := '';
- SVGText.Lines.Clear;
- IconImage.ImageIndex := -1;
- end;
- finally
- FUpdating := False;
- end;
-end;
-
-procedure TSVGIconImageListEditorFMX.DeleteSelectedItem;
-var
- LIndex: Integer;
-begin
- LIndex := ImageView.Selected.Index;
- SVGIconImageList.DeleteIcon(LIndex);
- UpdateSVGIconListView(ImageView);
- if LIndex < ImageView.Items.Count then
- ImageView.ItemIndex := LIndex
- else if ImageView.Items.Count > 0 then
- ImageView.ItemIndex := LIndex-1;
- UpdateGUI;
-end;
-
-destructor TSVGIconImageListEditorFMX.Destroy;
-begin
- inherited;
-end;
-
-procedure TSVGIconImageListEditorFMX.ClearAllImages;
-begin
- //Screen.Cursor := crHourglass;
- try
- SVGIconImageList.ClearIcons;
- finally
- //Screen.Cursor := crDefault;
- end;
-end;
-
-(*
-procedure TSVGIconImageListEditorFMX.CloseCharMap(Sender: TObject;
- var Action: TCloseAction);
-begin
- if FCharMap.ModalResult = mrOK then
- begin
- if FCharMap.CharsEdit.Text <> '' then
- begin
- SVGIconImageList.AddIcons(FCharMap.CharsEdit.Text, FCharMap.DefaultFontName.Text);
- UpdateSVGIconListView(ImageView);
- end;
- end;
-end;
-*)
-
-procedure TSVGIconImageListEditorFMX.ClearAllButtonClick(Sender: TObject);
-begin
- ClearAllImages;
- UpdateSVGIconListView(ImageView);
- UpdateGUI;
-end;
-
-(*
-procedure TSVGIconImageListEditorFMX.SVGIconImageListFontMissing(
- const AFontName: TFontName);
-begin
- MessageDlg(Format(ERR_SVGIcon_FONT_NOT_INSTALLED,[AFontName]),
- mtError, [mbOK], 0);
-end;
-*)
-
-procedure TSVGIconImageListEditorFMX.IconNameExit(Sender: TObject);
-begin
- if FUpdating then Exit;
- SetImageIconName(IconName.Text);
- UpdateGUI;
-end;
-
-procedure TSVGIconImageListEditorFMX.ImageViewDragChange(SourceItem,
- DestItem: TListBoxItem; var Allow: Boolean);
-var
- LOriginalIcon, LIcon: TSVGIconSourceItem;
- LNewIndex, LSourceIndex: Integer;
- LIconName: string;
-begin
- Allow := False;
- if SourceItem.Index = DestItem.Index then Exit;
-
- LSourceIndex := SourceItem.Index;
- LNewIndex := DestItem.Index;
- if LNewIndex < 0 then LNewIndex := 0;
- if LNewIndex > SVGIconImageList.Count then LNewIndex := SVGIconImageList.Count;
-
- LOriginalIcon := SVGIconImageList.Source.Items[LSourceIndex] as TSVGIconSourceItem;
- LIconName := LOriginalIcon.IconName;
-
- if LSourceIndex < LNewIndex then
- begin
- LIcon := SVGIconImageList.CloneIcon(LSourceIndex, LNewIndex + 1);
- SVGIconImageList.DeleteIcon(LSourceIndex);
- end
- else
- begin
- LIcon := SVGIconImageList.CloneIcon(LSourceIndex, LNewIndex);
- SVGIconImageList.DeleteIcon(LSourceIndex + 1);
- end;
-
- LIcon.IconName := LIconName;
-
- UpdateSVGIconListView(ImageView);
-end;
-
-procedure TSVGIconImageListEditorFMX.ImageViewDragDrop(Sender: TObject;
- const Data: TDragObject; const Point: TPointF);
-var
- LFiles: TStringList;
-begin
- if Length(Data.Files) <= 0 then Exit;
-
- LFiles := TStringList.Create;
- LFiles.AddStrings(TArray(Data.Files));
- try
- SVGIconImageList.LoadFromFiles(LFiles);
- finally
- FreeAndNil(LFiles);
- end;
-
- UpdateSVGIconListView(ImageView);
-end;
-
-procedure TSVGIconImageListEditorFMX.ImageViewDragOver(Sender: TObject;
- const Data: TDragObject; const Point: TPointF; var Operation: TDragOperation);
-begin
- if Length(Data.Files) > 0 then Operation := TDragOperation.Copy
- else Operation := TDragOperation.None;
-end;
-
-procedure TSVGIconImageListEditorFMX.ImageViewSelectItem(Sender: TObject);
-begin
- UpdateGUI;
-end;
-
-procedure TSVGIconImageListEditorFMX.NewButtonClick(Sender: TObject);
-begin
- AddNewItem;
-end;
-
-procedure TSVGIconImageListEditorFMX.OpacitySpinBoxChange(Sender: TObject);
-begin
- if FUpdating then Exit;
- SetImageOpacity(OpacitySpinBox.Value);
-end;
-
-procedure TSVGIconImageListEditorFMX.DefaultOpacitySpinBoxChange(
- Sender: TObject);
-begin
- if FUpdating then Exit;
- SetImageOpacity(DefaultOpacitySpinBox.Value);
-end;
-
-procedure TSVGIconImageListEditorFMX.DeleteButtonClick(Sender: TObject);
-begin
- DeleteSelectedItem;
-end;
-
-procedure TSVGIconImageListEditorFMX.FixedColorComboBoxChange(Sender: TObject);
-begin
- //Screen.Cursor := crHourGlass;
- try
- if FixedColorComboBox.ItemIndex >= 0 then begin
- SVGIconImageList.FixedColor :=
- TColor(FixedColorComboBox.Items.Objects[FixedColorComboBox.ItemIndex]);
- UpdateGUI;
- end;
- finally
- //Screen.Cursor := crDefault;
- end;
-end;
-
-procedure TSVGIconImageListEditorFMX.FixedColorItemComboBoxChange(
- Sender: TObject);
-begin
- if FUpdating then Exit;
- if FixedColorComboBox.ItemIndex >= 0 then begin
- SelectedSVGIcon.FixedColor :=
- TColor(FixedColorComboBox.Items.Objects[FixedColorComboBox.ItemIndex]);
- UpdateGUI;
- end;
-end;
-
-procedure TSVGIconImageListEditorFMX.FormClose(Sender: TObject;
- var Action: TCloseAction);
-begin
- if ModalResult = mrOK then
- OKButton.SetFocus
- else
- CancelButton.SetFocus;
-end;
-
-procedure TSVGIconImageListEditorFMX.FormCreate(Sender: TObject);
-begin
- Caption := Format(Caption, [SVGIconImageListVersion]);
- FUpdating := True;
- SVGIconImageList := TSVGIconImageList.Create(nil);
- FIconIndexLabel := ItemGroupBox.Text;
- FTotIconsLabel := IconsGroupBox.Text;
- IconImage.Images := SVGIconImageList;
- AssignSVGColorList(FixedColorComboBox.Items);
- AssignSVGColorList(FixedColorItemComboBox.Items);
-end;
-
-procedure TSVGIconImageListEditorFMX.FormDestroy(Sender: TObject);
-begin
- FreeAndNil(SVGIconImageList);
- //Screen.Cursors[crColorPick] := 0;
-end;
-
-procedure TSVGIconImageListEditorFMX.FormResize(Sender: TObject);
-begin
- if ClientWidth < 610 then
- ClientWidth := 610;
- if ClientHeight < 390 then
- ClientHeight := 390;
-end;
-
-function TSVGIconImageListEditorFMX.SelectedSVGIcon: TSVGIconSourceItem;
-begin
- if (ImageView.Selected <> nil) and (ImageView.Selected.Index < SVGIconImageList.Source.Count) then
- Result := SVGIconImageList.Source.Items[ImageView.Selected.Index] as TSVGIconSourceItem
- else
- Result := nil;
-end;
-
-procedure TSVGIconImageListEditorFMX.AddButtonClick(Sender: TObject);
-begin
- if OpenDialog.Execute then
- begin
- //Screen.Cursor := crHourGlass;
- try
- SVGIconImageList.LoadFromFiles(OpenDialog.Files);
- finally
- UpdateSVGIconListView(ImageView);
- //Screen.Cursor := crDefault;
- end;
- end;
-end;
-
-procedure TSVGIconImageListEditorFMX.FormShow(Sender: TObject);
-begin
- if SavedBounds.Right - SavedBounds.Left > 0 then
- SetBounds(SavedBounds.Left, SavedBounds.Top, SavedBounds.Width, SavedBounds.Height);
-
- if paTopHeight <> 0 then
- paTop.Height := paTopHeight;
-
- if ImageView.CanFocus then
- ImageView.SetFocus;
-end;
-
-procedure TSVGIconImageListEditorFMX.GrayScaleCheckBoxChange(Sender: TObject);
-begin
- SVGIconImageList.GrayScale := GrayScaleCheckBox.IsChecked;
- UpdateGUI;
-end;
-
-procedure TSVGIconImageListEditorFMX.GrayScaleItemCheckBoxChange(
- Sender: TObject);
-begin
- if FUpdating then Exit;
- SelectedSVGIcon.GrayScale := GrayScaleItemCheckBox.IsChecked;
- UpdateGUI;
-end;
-
-procedure TSVGIconImageListEditorFMX.AddNewItem;
-var
- LInsertIndex: Integer;
-begin
- if (ImageView.Selected <> nil) then
- LInsertIndex := ImageView.Selected.Index +1
- else
- LInsertIndex := ImageView.Items.Count;
- SVGIconImageList.InsertIcon(LInsertIndex,'','');
- UpdateSVGIconListView(ImageView);
- ImageView.ItemIndex := LInsertIndex;
-end;
-
-initialization
- paTopHeight := 0;
-
-end.
+{******************************************************************************}
+{ }
+{ SVG Icon ImageList: An extended ImageList for Delphi/VLC+FMX }
+{ to simplify use of Icons (resize, opacity and more...) }
+{ }
+{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
+{ Author: Carlo Barazzetta }
+{ Contributors: }
+{ }
+{ https://github.com/EtheaDev/SVGIconImageList }
+{ }
+{******************************************************************************}
+{ }
+{ Licensed under the Apache License, Version 2.0 (the "License"); }
+{ you may not use this file except in compliance with the License. }
+{ You may obtain a copy of the License at }
+{ }
+{ http://www.apache.org/licenses/LICENSE-2.0 }
+{ }
+{ Unless required by applicable law or agreed to in writing, software }
+{ distributed under the License is distributed on an "AS IS" BASIS, }
+{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
+{ See the License for the specific language governing permissions and }
+{ limitations under the License. }
+{ }
+{******************************************************************************}
+unit FMX.SVGIconImageListEditorUnit;
+
+interface
+
+{$INCLUDE ..\Source\SVGIconImageList.inc}
+
+uses
+ System.SysUtils, System.Types, System.UITypes, FMX.Controls, System.Classes,
+ System.Actions, FMX.Forms, FMX.Graphics, FMX.ActnList, FMX.StdCtrls, FMX.Colors, FMX.ListBox,
+ FMX.Controls.Presentation, FMX.ImgList, FMX.Types, FMX.Layouts,
+ System.ImageList, FMX.SVGIconImageList, FMX.Edit, FMX.EditBox, FMX.SpinBox,
+ FMX.ScrollBox, FMX.Memo, FMX.Dialogs;
+
+type
+ TSVGIconImageListEditorFMX = class(TForm)
+ PaButtons: TPanel;
+ AddButton: TButton;
+ DeleteButton: TButton;
+ ClearAllButton: TButton;
+ paTop: TPanel;
+ Panel4: TPanel;
+ OKButton: TButton;
+ CancelButton: TButton;
+ HelpButton: TButton;
+ paClient: TPanel;
+ ImageListGroupBox: TGroupBox;
+ AutoSizeCheckBox: TCheckBox;
+ DefaultOpacitySpinBox: TSpinBox;
+ DefaultOpacityLabel: TLabel;
+ ItemGroupBox: TGroupBox;
+ IconName: TEdit;
+ IconNameLabel: TLabel;
+ OpacityLabel: TLabel;
+ OpacitySpinBox: TSpinBox;
+ IconPanel: TPanel;
+ IconImage: TGlyph;
+ ListBoxItemStyleBook: TStyleBook;
+ SizeSpinBox: TSpinBox;
+ SizeLabel: TLabel;
+ IconsGroupBox: TGroupBox;
+ ImageView: TListBox;
+ TopSplitter: TSplitter;
+ SVGText: TMemo;
+ NewButton: TButton;
+ OpenDialog: TOpenDialog;
+ FixedColorComboBox: TComboBox;
+ FixedColorLabel: TLabel;
+ GrayScaleCheckBox: TCheckBox;
+ GrayScaleItemCheckBox: TCheckBox;
+ FixedColorItemLabel: TLabel;
+ FixedColorItemComboBox: TComboBox;
+ procedure ClearAllButtonClick(Sender: TObject);
+ procedure DeleteButtonClick(Sender: TObject);
+ procedure AddButtonClick(Sender: TObject);
+ procedure FormDestroy(Sender: TObject);
+ procedure FormShow(Sender: TObject);
+ procedure HelpButtonClick(Sender: TObject);
+ procedure IconNameExit(Sender: TObject);
+ procedure ImageViewSelectItem(Sender: TObject);
+ procedure FormClose(Sender: TObject; var Action: TCloseAction);
+ procedure AutoSizeCheckBoxClick(Sender: TObject);
+ procedure FormCreate(Sender: TObject);
+ procedure DefaultOpacitySpinBoxChange(Sender: TObject);
+ procedure OpacitySpinBoxChange(Sender: TObject);
+ procedure SizeChange(Sender: TObject);
+ procedure FormResize(Sender: TObject);
+ procedure NewButtonClick(Sender: TObject);
+ procedure FixedColorComboBoxChange(Sender: TObject);
+ procedure GrayScaleCheckBoxChange(Sender: TObject);
+ procedure SVGTextExit(Sender: TObject);
+ procedure GrayScaleItemCheckBoxChange(Sender: TObject);
+ procedure FixedColorItemComboBoxChange(Sender: TObject);
+ procedure ImageViewDragOver(Sender: TObject; const Data: TDragObject;
+ const Point: TPointF; var Operation: TDragOperation);
+ procedure ImageViewDragChange(SourceItem, DestItem: TListBoxItem;
+ var Allow: Boolean);
+ procedure ImageViewDragDrop(Sender: TObject; const Data: TDragObject;
+ const Point: TPointF);
+ private
+ FIconIndexLabel: string;
+ FTotIconsLabel: string;
+ FUpdating: Boolean;
+ SVGIconImageList: TSVGIconImageList;
+ procedure AddNewItem;
+ procedure DeleteSelectedItem;
+ procedure ClearAllImages;
+ procedure UpdateGUI;
+ procedure SetImageOpacity(Opacity: Single);
+ procedure SetImageIconName(IconName: String);
+ function SelectedSVGIcon: TSVGIconSourceItem;
+ public
+ destructor Destroy; override;
+ end;
+
+function EditSVGIconImageList(const AImageList: TSVGIconImageList): Boolean;
+
+implementation
+
+{$R *.fmx}
+
+uses
+ Winapi.Messages
+ , Winapi.Windows
+ , Winapi.shellApi
+ , SVG
+ , SVGColor;
+
+var
+ SavedBounds: TRect = (Left: 0; Top: 0; Right: 0; Bottom: 0);
+ paTopHeight: Single;
+
+function UpdateSVGIconListView(const AListBox: TListBox): Integer;
+var
+ I: Integer;
+ LItem: TSVGIconSourceItem;
+ LListItem: TListBoxItem;
+ LSVGIconImageList: TSVGIconImageList;
+begin
+ LSVGIconImageList := AListBox.Images as TSVGIconImageList;
+
+ AListBox.Items.BeginUpdate;
+ try
+ AListBox.Clear;
+ Result := LSVGIconImageList.Source.Count;
+ for I := 0 to Result -1 do
+ begin
+ LItem := LSVGIconImageList.Source.Items[I] as TSVGIconSourceItem;
+ LListItem := TListBoxItem.Create(AListBox);
+ LListItem.StyleLookup := 'CustomListBoxItemStyle';
+ LListItem.Text := Format('%d.%s', [LItem.Index,Litem.IconName]);
+ LListItem.ImageIndex := I;
+
+ AListBox.AddObject(LListItem);
+ end;
+ finally
+ AListBox.Items.EndUpdate;
+ end;
+end;
+
+function UpdateSVGIconListViewCaptions(const AListBox: TListBox;
+ const AShowCaption: Boolean = True): Integer;
+var
+ I: Integer;
+ LItem: TSVGIconSourceItem;
+ LSVGIconImageList: TSVGIconImageList;
+begin
+ LSVGIconImageList := AListBox.Images as TSVGIconImageList;
+ //AListView.Items.BeginUpdate;
+ try
+ Result := LSVGIconImageList.Source.Count;
+ for I := 0 to Result -1 do
+ begin
+ LItem := LSVGIconImageList.Source[I] as TSVGIconSourceItem;
+ if AShowCaption then
+ begin
+ AListBox.Items[I] := Format('%d.%s', [LItem.Index, Litem.IconName]);
+ end
+ else
+ AListBox.Items[I] := '';
+ end;
+ finally
+ //AListView.Items.EndUpdate;
+ end;
+end;
+
+function EditSVGIconImageList(const AImageList: TSVGIconImageList): Boolean;
+var
+ LEditor: TSVGIconImageListEditorFMX;
+begin
+ LEditor := TSVGIconImageListEditorFMX.Create(nil);
+ with LEditor do
+ begin
+ try
+ //Screen.Cursor := crHourglass;
+ try
+ SVGIconImageList.Assign(AImageList);
+ ImageView.Images := SVGIconImageList;
+ UpdateSVGIconListView(ImageView);
+ //UpdateGUI;
+ if ImageView.Items.Count > 0 then
+ ImageView.ItemIndex := 0;
+
+ finally
+ //Screen.Cursor := crDefault;
+ end;
+ Result := ShowModal = mrOk;
+ if Result then
+ begin
+ //Screen.Cursor := crHourglass;
+ try
+ AImageList.Assign(SVGIconImageList);
+ finally
+ //Screen.Cursor := crDefault;
+ end;
+ end;
+ SavedBounds := Bounds;
+ paTopHeight := paTop.Height;
+ finally
+ DisposeOf;
+ end;
+ end;
+end;
+
+{ TSVGIconImageListEditorFMX }
+
+procedure TSVGIconImageListEditorFMX.HelpButtonClick(Sender: TObject);
+begin
+ ShellExecute(0, 'open',
+ PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/Component-Editor-(FMX)'), nil, nil,
+ SW_SHOWNORMAL)
+end;
+
+procedure TSVGIconImageListEditorFMX.SizeChange(Sender: TObject);
+begin
+ SVGIconImageList.Size := Round(SizeSpinBox.Value);
+ UpdateGUI;
+end;
+
+procedure TSVGIconImageListEditorFMX.SVGTextExit(Sender: TObject);
+begin
+ SelectedSVGIcon.SVGText := SVGText.Lines.Text;
+ UpdateGUI;
+end;
+
+procedure TSVGIconImageListEditorFMX.AutoSizeCheckBoxClick(Sender: TObject);
+begin
+ SVGIconImageList.AutoSizeBitmaps := AutoSizeCheckBox.IsChecked;
+ UpdateGUI;
+end;
+
+procedure TSVGIconImageListEditorFMX.SetImageIconName(IconName: String);
+begin
+ SelectedSVGIcon.IconName := IconName;
+ UpdateGUI;
+ UpdateSVGIconListViewCaptions(ImageView);
+end;
+
+procedure TSVGIconImageListEditorFMX.SetImageOpacity(Opacity: Single);
+begin
+ SelectedSVGIcon.Opacity := Opacity / 100;
+ UpdateGUI;
+end;
+
+procedure TSVGIconImageListEditorFMX.UpdateGUI;
+var
+ LIsItemSelected: Boolean;
+ LIconItem: TSVGIconSourceItem;
+ {$IFNDEF UNICODE}
+ S: WideString;
+ {$ENDIF}
+begin
+ FUpdating := True;
+ try
+ LIconItem := SelectedSVGIcon;
+ LIsItemSelected := LIconItem <> nil;
+ ClearAllButton.Enabled := SVGIconImageList.Count > 0;
+ DeleteButton.Enabled := LIsItemSelected;
+ OpacitySpinBox.Enabled := LIsItemSelected;
+ IconName.Enabled := LIsItemSelected;
+ SVGText.Enabled := LIsItemSelected;
+ //ShowCharMapButton.Enabled := (SVGIconImageList.FontName <> '');
+ IconsGroupBox.Text := Format(FTotIconsLabel, [SVGIconImageList.Count]);
+ SizeSpinBox.Value := SVGIconImageList.Size;
+ AutoSizeCheckBox.IsChecked := SVGIconImageList.AutoSizeBitmaps;
+ DefaultOpacitySpinBox.Value := SVGIconImageList.Opacity * 100;
+ FixedColorComboBox.ItemIndex :=
+ FixedColorComboBox.Items.IndexOfObject(TObject(SVGIconImageList.FixedColor));
+ GrayScaleCheckBox.IsChecked := SVGIconImageList.GrayScale;
+ if LIsItemSelected then
+ begin
+ ItemGroupBox.Text := Format(FIconIndexLabel,[LIconItem.Index]);
+ IconName.Text := LIconItem.IconName;
+ SVGText.Lines.Text := LIconItem.SVGText;
+ OpacitySpinBox.Value := LIconItem.Opacity * 100;
+ IconImage.ImageIndex := LIconItem.Index;
+ FixedColorItemComboBox.ItemIndex :=
+ FixedColorItemComboBox.Items.IndexOfObject(TObject(LIconItem.FixedColor));
+ GrayScaleItemCheckBox.IsChecked := LIconItem.GrayScale;
+ IconImage.Repaint;
+ end
+ else
+ begin
+ IconName.Text := '';
+ SVGText.Lines.Clear;
+ IconImage.ImageIndex := -1;
+ end;
+ finally
+ FUpdating := False;
+ end;
+end;
+
+procedure TSVGIconImageListEditorFMX.DeleteSelectedItem;
+var
+ LIndex: Integer;
+begin
+ LIndex := ImageView.Selected.Index;
+ SVGIconImageList.DeleteIcon(LIndex);
+ UpdateSVGIconListView(ImageView);
+ if LIndex < ImageView.Items.Count then
+ ImageView.ItemIndex := LIndex
+ else if ImageView.Items.Count > 0 then
+ ImageView.ItemIndex := LIndex-1;
+ UpdateGUI;
+end;
+
+destructor TSVGIconImageListEditorFMX.Destroy;
+begin
+ inherited;
+end;
+
+procedure TSVGIconImageListEditorFMX.ClearAllImages;
+begin
+ //Screen.Cursor := crHourglass;
+ try
+ SVGIconImageList.ClearIcons;
+ finally
+ //Screen.Cursor := crDefault;
+ end;
+end;
+
+(*
+procedure TSVGIconImageListEditorFMX.CloseCharMap(Sender: TObject;
+ var Action: TCloseAction);
+begin
+ if FCharMap.ModalResult = mrOK then
+ begin
+ if FCharMap.CharsEdit.Text <> '' then
+ begin
+ SVGIconImageList.AddIcons(FCharMap.CharsEdit.Text, FCharMap.DefaultFontName.Text);
+ UpdateSVGIconListView(ImageView);
+ end;
+ end;
+end;
+*)
+
+procedure TSVGIconImageListEditorFMX.ClearAllButtonClick(Sender: TObject);
+begin
+ ClearAllImages;
+ UpdateSVGIconListView(ImageView);
+ UpdateGUI;
+end;
+
+(*
+procedure TSVGIconImageListEditorFMX.SVGIconImageListFontMissing(
+ const AFontName: TFontName);
+begin
+ MessageDlg(Format(ERR_SVGIcon_FONT_NOT_INSTALLED,[AFontName]),
+ mtError, [mbOK], 0);
+end;
+*)
+
+procedure TSVGIconImageListEditorFMX.IconNameExit(Sender: TObject);
+begin
+ if FUpdating then Exit;
+ SetImageIconName(IconName.Text);
+ UpdateGUI;
+end;
+
+procedure TSVGIconImageListEditorFMX.ImageViewDragChange(SourceItem,
+ DestItem: TListBoxItem; var Allow: Boolean);
+var
+ LOriginalIcon, LIcon: TSVGIconSourceItem;
+ LNewIndex, LSourceIndex: Integer;
+ LIconName: string;
+begin
+ Allow := False;
+ if SourceItem.Index = DestItem.Index then Exit;
+
+ LSourceIndex := SourceItem.Index;
+ LNewIndex := DestItem.Index;
+ if LNewIndex < 0 then LNewIndex := 0;
+ if LNewIndex > SVGIconImageList.Count then LNewIndex := SVGIconImageList.Count;
+
+ LOriginalIcon := SVGIconImageList.Source.Items[LSourceIndex] as TSVGIconSourceItem;
+ LIconName := LOriginalIcon.IconName;
+
+ if LSourceIndex < LNewIndex then
+ begin
+ LIcon := SVGIconImageList.CloneIcon(LSourceIndex, LNewIndex + 1);
+ SVGIconImageList.DeleteIcon(LSourceIndex);
+ end
+ else
+ begin
+ LIcon := SVGIconImageList.CloneIcon(LSourceIndex, LNewIndex);
+ SVGIconImageList.DeleteIcon(LSourceIndex + 1);
+ end;
+
+ LIcon.IconName := LIconName;
+
+ UpdateSVGIconListView(ImageView);
+end;
+
+procedure TSVGIconImageListEditorFMX.ImageViewDragDrop(Sender: TObject;
+ const Data: TDragObject; const Point: TPointF);
+var
+ LFiles: TStringList;
+begin
+ if Length(Data.Files) <= 0 then Exit;
+
+ LFiles := TStringList.Create;
+ LFiles.AddStrings(TArray(Data.Files));
+ try
+ SVGIconImageList.LoadFromFiles(LFiles);
+ finally
+ FreeAndNil(LFiles);
+ end;
+
+ UpdateSVGIconListView(ImageView);
+end;
+
+procedure TSVGIconImageListEditorFMX.ImageViewDragOver(Sender: TObject;
+ const Data: TDragObject; const Point: TPointF; var Operation: TDragOperation);
+begin
+ if Length(Data.Files) > 0 then Operation := TDragOperation.Copy
+ else Operation := TDragOperation.None;
+end;
+
+procedure TSVGIconImageListEditorFMX.ImageViewSelectItem(Sender: TObject);
+begin
+ UpdateGUI;
+end;
+
+procedure TSVGIconImageListEditorFMX.NewButtonClick(Sender: TObject);
+begin
+ AddNewItem;
+end;
+
+procedure TSVGIconImageListEditorFMX.OpacitySpinBoxChange(Sender: TObject);
+begin
+ if FUpdating then Exit;
+ SetImageOpacity(OpacitySpinBox.Value);
+end;
+
+procedure TSVGIconImageListEditorFMX.DefaultOpacitySpinBoxChange(
+ Sender: TObject);
+begin
+ if FUpdating then Exit;
+ SetImageOpacity(DefaultOpacitySpinBox.Value);
+end;
+
+procedure TSVGIconImageListEditorFMX.DeleteButtonClick(Sender: TObject);
+begin
+ DeleteSelectedItem;
+end;
+
+procedure TSVGIconImageListEditorFMX.FixedColorComboBoxChange(Sender: TObject);
+begin
+ //Screen.Cursor := crHourGlass;
+ try
+ if FixedColorComboBox.ItemIndex >= 0 then begin
+ SVGIconImageList.FixedColor :=
+ TColor(FixedColorComboBox.Items.Objects[FixedColorComboBox.ItemIndex]);
+ UpdateGUI;
+ end;
+ finally
+ //Screen.Cursor := crDefault;
+ end;
+end;
+
+procedure TSVGIconImageListEditorFMX.FixedColorItemComboBoxChange(
+ Sender: TObject);
+begin
+ if FUpdating then Exit;
+ if FixedColorComboBox.ItemIndex >= 0 then begin
+ SelectedSVGIcon.FixedColor :=
+ TColor(FixedColorComboBox.Items.Objects[FixedColorComboBox.ItemIndex]);
+ UpdateGUI;
+ end;
+end;
+
+procedure TSVGIconImageListEditorFMX.FormClose(Sender: TObject;
+ var Action: TCloseAction);
+begin
+ if ModalResult = mrOK then
+ OKButton.SetFocus
+ else
+ CancelButton.SetFocus;
+end;
+
+procedure TSVGIconImageListEditorFMX.FormCreate(Sender: TObject);
+begin
+ Caption := Format(Caption, [SVGIconImageListVersion]);
+ FUpdating := True;
+ SVGIconImageList := TSVGIconImageList.Create(nil);
+ FIconIndexLabel := ItemGroupBox.Text;
+ FTotIconsLabel := IconsGroupBox.Text;
+ IconImage.Images := SVGIconImageList;
+ AssignSVGColorList(FixedColorComboBox.Items);
+ AssignSVGColorList(FixedColorItemComboBox.Items);
+end;
+
+procedure TSVGIconImageListEditorFMX.FormDestroy(Sender: TObject);
+begin
+ FreeAndNil(SVGIconImageList);
+ //Screen.Cursors[crColorPick] := 0;
+end;
+
+procedure TSVGIconImageListEditorFMX.FormResize(Sender: TObject);
+begin
+ if ClientWidth < 610 then
+ ClientWidth := 610;
+ if ClientHeight < 390 then
+ ClientHeight := 390;
+end;
+
+function TSVGIconImageListEditorFMX.SelectedSVGIcon: TSVGIconSourceItem;
+begin
+ if (ImageView.Selected <> nil) and (ImageView.Selected.Index < SVGIconImageList.Source.Count) then
+ Result := SVGIconImageList.Source.Items[ImageView.Selected.Index] as TSVGIconSourceItem
+ else
+ Result := nil;
+end;
+
+procedure TSVGIconImageListEditorFMX.AddButtonClick(Sender: TObject);
+begin
+ if OpenDialog.Execute then
+ begin
+ //Screen.Cursor := crHourGlass;
+ try
+ SVGIconImageList.LoadFromFiles(OpenDialog.Files);
+ finally
+ UpdateSVGIconListView(ImageView);
+ //Screen.Cursor := crDefault;
+ end;
+ end;
+end;
+
+procedure TSVGIconImageListEditorFMX.FormShow(Sender: TObject);
+begin
+ if SavedBounds.Right - SavedBounds.Left > 0 then
+ SetBounds(SavedBounds.Left, SavedBounds.Top, SavedBounds.Width, SavedBounds.Height);
+
+ if paTopHeight <> 0 then
+ paTop.Height := paTopHeight;
+
+ if ImageView.CanFocus then
+ ImageView.SetFocus;
+end;
+
+procedure TSVGIconImageListEditorFMX.GrayScaleCheckBoxChange(Sender: TObject);
+begin
+ SVGIconImageList.GrayScale := GrayScaleCheckBox.IsChecked;
+ UpdateGUI;
+end;
+
+procedure TSVGIconImageListEditorFMX.GrayScaleItemCheckBoxChange(
+ Sender: TObject);
+begin
+ if FUpdating then Exit;
+ SelectedSVGIcon.GrayScale := GrayScaleItemCheckBox.IsChecked;
+ UpdateGUI;
+end;
+
+procedure TSVGIconImageListEditorFMX.AddNewItem;
+var
+ LInsertIndex: Integer;
+begin
+ if (ImageView.Selected <> nil) then
+ LInsertIndex := ImageView.Selected.Index +1
+ else
+ LInsertIndex := ImageView.Items.Count;
+ SVGIconImageList.InsertIcon(LInsertIndex,'','');
+ UpdateSVGIconListView(ImageView);
+ ImageView.ItemIndex := LInsertIndex;
+end;
+
+initialization
+ paTopHeight := 0;
+
+end.
diff --git a/Packages/SVGIconImageRegister.pas b/Packages/SVGIconImageRegister.pas
index 1923d6ee..41db708e 100644
--- a/Packages/SVGIconImageRegister.pas
+++ b/Packages/SVGIconImageRegister.pas
@@ -1,313 +1,313 @@
-{******************************************************************************}
-{ }
-{ SVGIconImage Registration for Components and Editors }
-{ }
-{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
-{ Author: Carlo Barazzetta }
-{ Contributors: Vincent Parrett, Kiriakos Vlahos }
-{ }
-{ https://github.com/EtheaDev/SVGIconsImageList }
-{ }
-{******************************************************************************}
-{ Original version (c) 2005, 2008 Martin Walter with license: }
-{ Use of this file is permitted for commercial and non-commercial }
-{ use, as long as the author is credited. }
-{ home page: http://www.mwcs.de }
-{ email : martin.walter@mwcs.de }
-{******************************************************************************}
-{ }
-{ Licensed under the Apache License, Version 2.0 (the "License"); }
-{ you may not use this file except in compliance with the License. }
-{ You may obtain a copy of the License at }
-{ }
-{ http://www.apache.org/licenses/LICENSE-2.0 }
-{ }
-{ Unless required by applicable law or agreed to in writing, software }
-{ distributed under the License is distributed on an "AS IS" BASIS, }
-{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
-{ See the License for the specific language governing permissions and }
-{ limitations under the License. }
-{ }
-{******************************************************************************}
-unit SVGIconImageRegister;
-
-interface
-
-uses
- Classes
- , DesignIntf
- , DesignEditors;
-
-type
- TSVGIconImageListCompEditor = class(TComponentEditor)
- public
- function GetVerbCount: Integer; override;
- function GetVerb(Index: Integer): string; override;
- procedure ExecuteVerb(Index: Integer); override;
- procedure Edit; override;
- end;
-
- TSVGIconVirtualImageListCompEditor = class(TComponentEditor)
- public
- function GetVerbCount: Integer; override;
- function GetVerb(Index: Integer): string; override;
- procedure ExecuteVerb(Index: Integer); override;
- procedure Edit; override;
- end;
-
-
- TSVGIconImageCollectionCompEditor = class(TComponentEditor)
- public
- function GetVerbCount: Integer; override;
- function GetVerb(Index: Integer): string; override;
- procedure ExecuteVerb(Index: Integer); override;
- procedure Edit; override;
- end;
-
-
- TSVGIconImageListProperty = class(TClassProperty)
- public
- procedure Edit; override;
- function GetAttributes: TPropertyAttributes; override;
- function GetValue: string; override;
- end;
-
- TSVGIconCollectionListProperty = class(TClassProperty)
- public
- procedure Edit; override;
- function GetAttributes: TPropertyAttributes; override;
- function GetValue: string; override;
- end;
-
-
- TSVGTextProperty = class(TClassProperty)
- public
- procedure Edit; override;
- function GetAttributes: TPropertyAttributes; override;
- function GetValue: string; override;
- end;
-
-procedure Register;
-
-implementation
-
-uses
- SysUtils
- , ShellApi
- , Windows
- , SVGIconImage
- , SVGIconImageListBase
- , SVGIconImageList
- , SVGIconVirtualImageList
- , SVGIconImageCollection
- , SVGIconImageListEditorUnit
- , SVGTextPropertyEditorUnit;
-
-{ TSVGIconImageListCompEditor }
-procedure TSVGIconImageListCompEditor.Edit;
-begin
- inherited;
-end;
-
-procedure TSVGIconImageListCompEditor.ExecuteVerb(Index: Integer);
-begin
- inherited;
- if Index = 0 then
- begin
- if EditSVGIconImageList(Component as TSVGIconImageList) then
- Designer.Modified;
- end
- else if Index = 1 then
- begin
- ShellExecute(0, 'open',
- PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/Home'), nil, nil,
- SW_SHOWNORMAL)
- end;
-end;
-
-function TSVGIconImageListCompEditor.GetVerb(Index: Integer): string;
-begin
- Result := '';
- case Index of
- 0: Result := 'SVG I&con ImageList Editor...';
- 1: Result := Format('Ver. %s - (c) Ethea S.r.l. - show help...',[SVGIconImageListVersion]);
- end;
-end;
-
-function TSVGIconImageListCompEditor.GetVerbCount: Integer;
-begin
- Result := 2;
-end;
-
-{ TSVGIconImageListProperty }
-procedure TSVGIconImageListProperty.Edit;
-var
- SVGImageList: TSVGIconImageList;
-begin
- SVGImageList := TSVGIconImageList(GetComponent(0));
- if EditSVGIconImageList(SVGImageList) then
- Modified;
-end;
-
-function TSVGIconImageListProperty.GetAttributes: TPropertyAttributes;
-begin
- Result := inherited GetAttributes + [paDialog];
-end;
-
-function TSVGIconImageListProperty.GetValue: string;
-begin
- Result := 'SVGImages';
-end;
-
-
-{ TSVGIconCollectionListProperty }
-
-procedure TSVGIconCollectionListProperty.Edit;
-var
- SVGImageCollection: TSVGIconImageCollection;
-begin
- SVGImageCollection := TSVGIconImageCollection(GetComponent(0));
- if EditSVGIconImageCollection(SVGImageCollection) then
- Modified;
-end;
-
-function TSVGIconCollectionListProperty.GetAttributes: TPropertyAttributes;
-begin
- Result := inherited GetAttributes + [paDialog];
-end;
-
-function TSVGIconCollectionListProperty.GetValue: string;
-begin
- Result := 'SVGImageCollection';
-end;
-
-
-
-{ TSVGTextProperty }
-
-procedure TSVGTextProperty.Edit;
-var
- LSVGText: string;
- LComponent: TPersistent;
-begin
- LComponent := GetComponent(0);
- if LComponent is TSVGIconItem then
- LSVGText := TSVGIconItem(LComponent).SVGText
- else if LComponent is TSVGIconImage then
- LSVGText := TSVGIconImage(LComponent).SVGText
- else
- Exit;
- if EditSVGTextProperty(LSVGText) then
- begin
- if LComponent is TSVGIconItem then
- TSVGIconItem(LComponent).SVGText := LSVGText
- else if LComponent is TSVGIconImage then
- TSVGIconImage(LComponent).SVGText := LSVGText;
- Modified;
- end;
- inherited;
-end;
-
-function TSVGTextProperty.GetAttributes: TPropertyAttributes;
-begin
- Result := [paDialog, paReadOnly];
-end;
-
-function TSVGTextProperty.GetValue: string;
-begin
- Result := 'Click to edit SVG Text';
-end;
-
-procedure Register;
-begin
- RegisterComponents('Ethea',
- [TSVGIconImage,
- TSVGIconImageList, TSVGIconVirtualImageList, TSVGIconImageCollection]);
-
- RegisterComponentEditor(TSVGIconImageList, TSVGIconImageListCompEditor);
- RegisterComponentEditor(TSVGIconVirtualImageList, TSVGIconVirtualImageListCompEditor);
- RegisterComponentEditor(TSVGIconImageCollection, TSVGIconImageCollectionCompEditor);
- RegisterPropertyEditor(TypeInfo(TSVGIconItems), TSVGIconImageList, 'SVGIconItems', TSVGIconImageListProperty);
- RegisterPropertyEditor(TypeInfo(TSVGIconItems), TSVGIconImageCollection, 'SVGIconItems', TSVGIconCollectionListProperty);
- RegisterPropertyEditor(TypeInfo(string), TSVGIconItem, 'SVGText', TSVGTextProperty);
- RegisterPropertyEditor(TypeInfo(string), TSVGIconImage, 'SVGText', TSVGTextProperty);
-end;
-
-{ TSVGIconImageCollectionCompEditor }
-
-procedure TSVGIconImageCollectionCompEditor.Edit;
-begin
- inherited;
-
-end;
-
-procedure TSVGIconImageCollectionCompEditor.ExecuteVerb(Index: Integer);
-begin
- inherited;
- if Index = 0 then
- begin
- if EditSVGIconImageCollection(Component as TSVGIconImageCollection) then
- Designer.Modified;
- end
- else if Index = 1 then
- begin
- ShellExecute(0, 'open',
- PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/Home'), nil, nil,
- SW_SHOWNORMAL)
- end;
-
-end;
-
-function TSVGIconImageCollectionCompEditor.GetVerb(Index: Integer): string;
-begin
- Result := '';
- case Index of
- 0: Result := 'SVG I&con ImageCollection Editor...';
- 1: Result := Format('Ver. %s - (c) Ethea S.r.l. - show help...',[SVGIconImageListVersion]);
- end;
-end;
-
-function TSVGIconImageCollectionCompEditor.GetVerbCount: Integer;
-begin
- Result := 2;
-end;
-
-{ TSVGIconVirtualImageListCompEditor }
-
-procedure TSVGIconVirtualImageListCompEditor.Edit;
-begin
- inherited;
-
-end;
-
-procedure TSVGIconVirtualImageListCompEditor.ExecuteVerb(Index: Integer);
-begin
- inherited;
- if Index = 0 then
- begin
- if EditSVGIconVirtualImageList(Component as TSVGIconVirtualImageList) then
- Designer.Modified;
- end
- else if Index = 1 then
- begin
- ShellExecute(0, 'open',
- PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/Home'), nil, nil,
- SW_SHOWNORMAL)
- end;
-end;
-
-function TSVGIconVirtualImageListCompEditor.GetVerb(Index: Integer): string;
-begin
- Result := '';
- case Index of
- 0: Result := 'SVG I&con VirtualImageList Editor...';
- 1: Result := Format('Ver. %s - (c) Ethea S.r.l. - show help...',[SVGIconImageListVersion]);
- end;
-end;
-
-function TSVGIconVirtualImageListCompEditor.GetVerbCount: Integer;
-begin
- result := 2;
-end;
-
-end.
+{******************************************************************************}
+{ }
+{ SVGIconImage Registration for Components and Editors }
+{ }
+{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
+{ Author: Carlo Barazzetta }
+{ Contributors: Vincent Parrett, Kiriakos Vlahos }
+{ }
+{ https://github.com/EtheaDev/SVGIconsImageList }
+{ }
+{******************************************************************************}
+{ Original version (c) 2005, 2008 Martin Walter with license: }
+{ Use of this file is permitted for commercial and non-commercial }
+{ use, as long as the author is credited. }
+{ home page: http://www.mwcs.de }
+{ email : martin.walter@mwcs.de }
+{******************************************************************************}
+{ }
+{ Licensed under the Apache License, Version 2.0 (the "License"); }
+{ you may not use this file except in compliance with the License. }
+{ You may obtain a copy of the License at }
+{ }
+{ http://www.apache.org/licenses/LICENSE-2.0 }
+{ }
+{ Unless required by applicable law or agreed to in writing, software }
+{ distributed under the License is distributed on an "AS IS" BASIS, }
+{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
+{ See the License for the specific language governing permissions and }
+{ limitations under the License. }
+{ }
+{******************************************************************************}
+unit SVGIconImageRegister;
+
+interface
+
+uses
+ Classes
+ , DesignIntf
+ , DesignEditors;
+
+type
+ TSVGIconImageListCompEditor = class(TComponentEditor)
+ public
+ function GetVerbCount: Integer; override;
+ function GetVerb(Index: Integer): string; override;
+ procedure ExecuteVerb(Index: Integer); override;
+ procedure Edit; override;
+ end;
+
+ TSVGIconVirtualImageListCompEditor = class(TComponentEditor)
+ public
+ function GetVerbCount: Integer; override;
+ function GetVerb(Index: Integer): string; override;
+ procedure ExecuteVerb(Index: Integer); override;
+ procedure Edit; override;
+ end;
+
+
+ TSVGIconImageCollectionCompEditor = class(TComponentEditor)
+ public
+ function GetVerbCount: Integer; override;
+ function GetVerb(Index: Integer): string; override;
+ procedure ExecuteVerb(Index: Integer); override;
+ procedure Edit; override;
+ end;
+
+
+ TSVGIconImageListProperty = class(TClassProperty)
+ public
+ procedure Edit; override;
+ function GetAttributes: TPropertyAttributes; override;
+ function GetValue: string; override;
+ end;
+
+ TSVGIconCollectionListProperty = class(TClassProperty)
+ public
+ procedure Edit; override;
+ function GetAttributes: TPropertyAttributes; override;
+ function GetValue: string; override;
+ end;
+
+
+ TSVGTextProperty = class(TClassProperty)
+ public
+ procedure Edit; override;
+ function GetAttributes: TPropertyAttributes; override;
+ function GetValue: string; override;
+ end;
+
+procedure Register;
+
+implementation
+
+uses
+ SysUtils
+ , ShellApi
+ , Windows
+ , SVGIconImage
+ , SVGIconImageListBase
+ , SVGIconImageList
+ , SVGIconVirtualImageList
+ , SVGIconImageCollection
+ , SVGIconImageListEditorUnit
+ , SVGTextPropertyEditorUnit;
+
+{ TSVGIconImageListCompEditor }
+procedure TSVGIconImageListCompEditor.Edit;
+begin
+ inherited;
+end;
+
+procedure TSVGIconImageListCompEditor.ExecuteVerb(Index: Integer);
+begin
+ inherited;
+ if Index = 0 then
+ begin
+ if EditSVGIconImageList(Component as TSVGIconImageList) then
+ Designer.Modified;
+ end
+ else if Index = 1 then
+ begin
+ ShellExecute(0, 'open',
+ PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/Home'), nil, nil,
+ SW_SHOWNORMAL)
+ end;
+end;
+
+function TSVGIconImageListCompEditor.GetVerb(Index: Integer): string;
+begin
+ Result := '';
+ case Index of
+ 0: Result := 'SVG I&con ImageList Editor...';
+ 1: Result := Format('Ver. %s - (c) Ethea S.r.l. - show help...',[SVGIconImageListVersion]);
+ end;
+end;
+
+function TSVGIconImageListCompEditor.GetVerbCount: Integer;
+begin
+ Result := 2;
+end;
+
+{ TSVGIconImageListProperty }
+procedure TSVGIconImageListProperty.Edit;
+var
+ SVGImageList: TSVGIconImageList;
+begin
+ SVGImageList := TSVGIconImageList(GetComponent(0));
+ if EditSVGIconImageList(SVGImageList) then
+ Modified;
+end;
+
+function TSVGIconImageListProperty.GetAttributes: TPropertyAttributes;
+begin
+ Result := inherited GetAttributes + [paDialog];
+end;
+
+function TSVGIconImageListProperty.GetValue: string;
+begin
+ Result := 'SVGImages';
+end;
+
+
+{ TSVGIconCollectionListProperty }
+
+procedure TSVGIconCollectionListProperty.Edit;
+var
+ SVGImageCollection: TSVGIconImageCollection;
+begin
+ SVGImageCollection := TSVGIconImageCollection(GetComponent(0));
+ if EditSVGIconImageCollection(SVGImageCollection) then
+ Modified;
+end;
+
+function TSVGIconCollectionListProperty.GetAttributes: TPropertyAttributes;
+begin
+ Result := inherited GetAttributes + [paDialog];
+end;
+
+function TSVGIconCollectionListProperty.GetValue: string;
+begin
+ Result := 'SVGImageCollection';
+end;
+
+
+
+{ TSVGTextProperty }
+
+procedure TSVGTextProperty.Edit;
+var
+ LSVGText: string;
+ LComponent: TPersistent;
+begin
+ LComponent := GetComponent(0);
+ if LComponent is TSVGIconItem then
+ LSVGText := TSVGIconItem(LComponent).SVGText
+ else if LComponent is TSVGIconImage then
+ LSVGText := TSVGIconImage(LComponent).SVGText
+ else
+ Exit;
+ if EditSVGTextProperty(LSVGText) then
+ begin
+ if LComponent is TSVGIconItem then
+ TSVGIconItem(LComponent).SVGText := LSVGText
+ else if LComponent is TSVGIconImage then
+ TSVGIconImage(LComponent).SVGText := LSVGText;
+ Modified;
+ end;
+ inherited;
+end;
+
+function TSVGTextProperty.GetAttributes: TPropertyAttributes;
+begin
+ Result := [paDialog, paReadOnly];
+end;
+
+function TSVGTextProperty.GetValue: string;
+begin
+ Result := 'Click to edit SVG Text';
+end;
+
+procedure Register;
+begin
+ RegisterComponents('Ethea',
+ [TSVGIconImage,
+ TSVGIconImageList, TSVGIconVirtualImageList, TSVGIconImageCollection]);
+
+ RegisterComponentEditor(TSVGIconImageList, TSVGIconImageListCompEditor);
+ RegisterComponentEditor(TSVGIconVirtualImageList, TSVGIconVirtualImageListCompEditor);
+ RegisterComponentEditor(TSVGIconImageCollection, TSVGIconImageCollectionCompEditor);
+ RegisterPropertyEditor(TypeInfo(TSVGIconItems), TSVGIconImageList, 'SVGIconItems', TSVGIconImageListProperty);
+ RegisterPropertyEditor(TypeInfo(TSVGIconItems), TSVGIconImageCollection, 'SVGIconItems', TSVGIconCollectionListProperty);
+ RegisterPropertyEditor(TypeInfo(string), TSVGIconItem, 'SVGText', TSVGTextProperty);
+ RegisterPropertyEditor(TypeInfo(string), TSVGIconImage, 'SVGText', TSVGTextProperty);
+end;
+
+{ TSVGIconImageCollectionCompEditor }
+
+procedure TSVGIconImageCollectionCompEditor.Edit;
+begin
+ inherited;
+
+end;
+
+procedure TSVGIconImageCollectionCompEditor.ExecuteVerb(Index: Integer);
+begin
+ inherited;
+ if Index = 0 then
+ begin
+ if EditSVGIconImageCollection(Component as TSVGIconImageCollection) then
+ Designer.Modified;
+ end
+ else if Index = 1 then
+ begin
+ ShellExecute(0, 'open',
+ PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/Home'), nil, nil,
+ SW_SHOWNORMAL)
+ end;
+
+end;
+
+function TSVGIconImageCollectionCompEditor.GetVerb(Index: Integer): string;
+begin
+ Result := '';
+ case Index of
+ 0: Result := 'SVG I&con ImageCollection Editor...';
+ 1: Result := Format('Ver. %s - (c) Ethea S.r.l. - show help...',[SVGIconImageListVersion]);
+ end;
+end;
+
+function TSVGIconImageCollectionCompEditor.GetVerbCount: Integer;
+begin
+ Result := 2;
+end;
+
+{ TSVGIconVirtualImageListCompEditor }
+
+procedure TSVGIconVirtualImageListCompEditor.Edit;
+begin
+ inherited;
+
+end;
+
+procedure TSVGIconVirtualImageListCompEditor.ExecuteVerb(Index: Integer);
+begin
+ inherited;
+ if Index = 0 then
+ begin
+ if EditSVGIconVirtualImageList(Component as TSVGIconVirtualImageList) then
+ Designer.Modified;
+ end
+ else if Index = 1 then
+ begin
+ ShellExecute(0, 'open',
+ PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/Home'), nil, nil,
+ SW_SHOWNORMAL)
+ end;
+end;
+
+function TSVGIconVirtualImageListCompEditor.GetVerb(Index: Integer): string;
+begin
+ Result := '';
+ case Index of
+ 0: Result := 'SVG I&con VirtualImageList Editor...';
+ 1: Result := Format('Ver. %s - (c) Ethea S.r.l. - show help...',[SVGIconImageListVersion]);
+ end;
+end;
+
+function TSVGIconVirtualImageListCompEditor.GetVerbCount: Integer;
+begin
+ result := 2;
+end;
+
+end.
diff --git a/Packages/SVGTextPropertyEditorUnit.dfm b/Packages/SVGTextPropertyEditorUnit.dfm
index cd8b3962..f9588707 100644
--- a/Packages/SVGTextPropertyEditorUnit.dfm
+++ b/Packages/SVGTextPropertyEditorUnit.dfm
@@ -1,203 +1,203 @@
-object SVGTextPropertyEditorForm: TSVGTextPropertyEditorForm
- Left = 916
- Top = 169
- Caption =
- 'SVGText Property Editor - Copyright (c) Ethea S.r.l. - Apache 2.' +
- '0 Open Source License'
- ClientHeight = 256
- ClientWidth = 739
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Segoe UI'
- Font.Style = []
- OldCreateOrder = False
- ShowHint = True
- OnResize = FormResize
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object RightSplitter: TSplitter
- Left = 550
- Top = 0
- Width = 4
- Height = 223
- Align = alRight
- AutoSnap = False
- MinSize = 16
- ExplicitLeft = 582
- ExplicitHeight = 309
- end
- object paBottom: TPanel
- Left = 0
- Top = 223
- Width = 739
- Height = 33
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 1
- object paButtons: TPanel
- Left = 320
- Top = 0
- Width = 419
- Height = 33
- Align = alRight
- BevelOuter = bvNone
- TabOrder = 0
- object CancelButton: TButton
- Left = 254
- Top = 3
- Width = 75
- Height = 25
- Cancel = True
- Caption = '&Cancel'
- ModalResult = 2
- TabOrder = 3
- end
- object OKButton: TButton
- Left = 173
- Top = 3
- Width = 75
- Height = 25
- Caption = '&OK'
- Default = True
- ModalResult = 1
- TabOrder = 2
- end
- object HelpButton: TButton
- Left = 336
- Top = 3
- Width = 74
- Height = 25
- Caption = '&Help'
- TabOrder = 4
- OnClick = HelpButtonClick
- end
- object LoadButton: TButton
- Left = 5
- Top = 3
- Width = 74
- Height = 25
- Caption = '&Load...'
- TabOrder = 0
- OnClick = LoadButtonClick
- end
- object SaveButton: TButton
- Left = 85
- Top = 3
- Width = 74
- Height = 25
- Caption = '&Save...'
- TabOrder = 1
- OnClick = SaveButtonClick
- end
- end
- end
- object SVGTextMemo: TMemo
- Left = 0
- Top = 0
- Width = 550
- Height = 223
- Align = alClient
- BevelOuter = bvNone
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Courier New'
- Font.Style = []
- ParentFont = False
- ScrollBars = ssBoth
- TabOrder = 0
- OnChange = SVGTextMemoChange
- end
- object paImage: TPanel
- Left = 554
- Top = 0
- Width = 185
- Height = 223
- Align = alRight
- BevelOuter = bvLowered
- BorderWidth = 1
- TabOrder = 2
- OnResize = paImageResize
- object paTitle: TPanel
- Left = 2
- Top = 2
- Width = 181
- Height = 24
- Align = alTop
- BevelOuter = bvNone
- TabOrder = 0
- end
- object ImagePanel: TPanel
- AlignWithMargins = True
- Left = 2
- Top = 26
- Width = 181
- Height = 171
- Margins.Left = 0
- Margins.Top = 0
- Margins.Right = 0
- Margins.Bottom = 0
- Align = alClient
- BevelOuter = bvLowered
- Color = clWindow
- ParentBackground = False
- TabOrder = 1
- ExplicitHeight = 195
- object SVGIconImage: TSVGIconImage
- Left = 1
- Top = 1
- Width = 179
- Height = 169
- AutoSize = False
- Center = False
- Proportional = True
- Stretch = True
- Opacity = 255
- Scale = 1.000000000000000000
- ImageIndex = 0
- Align = alClient
- ExplicitLeft = 6
- ExplicitTop = 28
- ExplicitWidth = 175
- ExplicitHeight = 189
- end
- end
- object BottomPanel: TPanel
- Left = 2
- Top = 197
- Width = 181
- Height = 24
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 2
- ExplicitTop = 2
- object ProportionalCheckBox: TCheckBox
- Left = 8
- Top = 4
- Width = 161
- Height = 17
- Caption = 'Proportional'
- Checked = True
- State = cbChecked
- TabOrder = 0
- OnClick = ProportionalCheckBoxClick
- end
- end
- end
- object OpenDialog: TOpenPictureDialog
- Filter = 'Scalable Vector Graphics (*.svg)|*.svg'
- Options = [ofHideReadOnly, ofPathMustExist, ofFileMustExist, ofEnableSizing]
- Left = 400
- Top = 24
- end
- object SaveDialog: TSavePictureDialog
- DefaultExt = 'svg'
- Filter = 'Bitmaps (*.bmp)|*.bmp'
- Options = [ofOverwritePrompt, ofPathMustExist, ofEnableSizing]
- Left = 456
- Top = 24
- end
-end
+object SVGTextPropertyEditorForm: TSVGTextPropertyEditorForm
+ Left = 916
+ Top = 169
+ Caption =
+ 'SVGText Property Editor - Copyright (c) Ethea S.r.l. - Apache 2.' +
+ '0 Open Source License'
+ ClientHeight = 256
+ ClientWidth = 739
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Segoe UI'
+ Font.Style = []
+ OldCreateOrder = False
+ ShowHint = True
+ OnResize = FormResize
+ OnShow = FormShow
+ PixelsPerInch = 96
+ TextHeight = 13
+ object RightSplitter: TSplitter
+ Left = 550
+ Top = 0
+ Width = 4
+ Height = 223
+ Align = alRight
+ AutoSnap = False
+ MinSize = 16
+ ExplicitLeft = 582
+ ExplicitHeight = 309
+ end
+ object paBottom: TPanel
+ Left = 0
+ Top = 223
+ Width = 739
+ Height = 33
+ Align = alBottom
+ BevelOuter = bvNone
+ TabOrder = 1
+ object paButtons: TPanel
+ Left = 320
+ Top = 0
+ Width = 419
+ Height = 33
+ Align = alRight
+ BevelOuter = bvNone
+ TabOrder = 0
+ object CancelButton: TButton
+ Left = 254
+ Top = 3
+ Width = 75
+ Height = 25
+ Cancel = True
+ Caption = '&Cancel'
+ ModalResult = 2
+ TabOrder = 3
+ end
+ object OKButton: TButton
+ Left = 173
+ Top = 3
+ Width = 75
+ Height = 25
+ Caption = '&OK'
+ Default = True
+ ModalResult = 1
+ TabOrder = 2
+ end
+ object HelpButton: TButton
+ Left = 336
+ Top = 3
+ Width = 74
+ Height = 25
+ Caption = '&Help'
+ TabOrder = 4
+ OnClick = HelpButtonClick
+ end
+ object LoadButton: TButton
+ Left = 5
+ Top = 3
+ Width = 74
+ Height = 25
+ Caption = '&Load...'
+ TabOrder = 0
+ OnClick = LoadButtonClick
+ end
+ object SaveButton: TButton
+ Left = 85
+ Top = 3
+ Width = 74
+ Height = 25
+ Caption = '&Save...'
+ TabOrder = 1
+ OnClick = SaveButtonClick
+ end
+ end
+ end
+ object SVGTextMemo: TMemo
+ Left = 0
+ Top = 0
+ Width = 550
+ Height = 223
+ Align = alClient
+ BevelOuter = bvNone
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Courier New'
+ Font.Style = []
+ ParentFont = False
+ ScrollBars = ssBoth
+ TabOrder = 0
+ OnChange = SVGTextMemoChange
+ end
+ object paImage: TPanel
+ Left = 554
+ Top = 0
+ Width = 185
+ Height = 223
+ Align = alRight
+ BevelOuter = bvLowered
+ BorderWidth = 1
+ TabOrder = 2
+ OnResize = paImageResize
+ object paTitle: TPanel
+ Left = 2
+ Top = 2
+ Width = 181
+ Height = 24
+ Align = alTop
+ BevelOuter = bvNone
+ TabOrder = 0
+ end
+ object ImagePanel: TPanel
+ AlignWithMargins = True
+ Left = 2
+ Top = 26
+ Width = 181
+ Height = 171
+ Margins.Left = 0
+ Margins.Top = 0
+ Margins.Right = 0
+ Margins.Bottom = 0
+ Align = alClient
+ BevelOuter = bvLowered
+ Color = clWindow
+ ParentBackground = False
+ TabOrder = 1
+ ExplicitHeight = 195
+ object SVGIconImage: TSVGIconImage
+ Left = 1
+ Top = 1
+ Width = 179
+ Height = 169
+ AutoSize = False
+ Center = False
+ Proportional = True
+ Stretch = True
+ Opacity = 255
+ Scale = 1.000000000000000000
+ ImageIndex = 0
+ Align = alClient
+ ExplicitLeft = 6
+ ExplicitTop = 28
+ ExplicitWidth = 175
+ ExplicitHeight = 189
+ end
+ end
+ object BottomPanel: TPanel
+ Left = 2
+ Top = 197
+ Width = 181
+ Height = 24
+ Align = alBottom
+ BevelOuter = bvNone
+ TabOrder = 2
+ ExplicitTop = 2
+ object ProportionalCheckBox: TCheckBox
+ Left = 8
+ Top = 4
+ Width = 161
+ Height = 17
+ Caption = 'Proportional'
+ Checked = True
+ State = cbChecked
+ TabOrder = 0
+ OnClick = ProportionalCheckBoxClick
+ end
+ end
+ end
+ object OpenDialog: TOpenPictureDialog
+ Filter = 'Scalable Vector Graphics (*.svg)|*.svg'
+ Options = [ofHideReadOnly, ofPathMustExist, ofFileMustExist, ofEnableSizing]
+ Left = 400
+ Top = 24
+ end
+ object SaveDialog: TSavePictureDialog
+ DefaultExt = 'svg'
+ Filter = 'Bitmaps (*.bmp)|*.bmp'
+ Options = [ofOverwritePrompt, ofPathMustExist, ofEnableSizing]
+ Left = 456
+ Top = 24
+ end
+end
diff --git a/Packages/SVGTextPropertyEditorUnit.pas b/Packages/SVGTextPropertyEditorUnit.pas
index e0ba0173..bac09633 100644
--- a/Packages/SVGTextPropertyEditorUnit.pas
+++ b/Packages/SVGTextPropertyEditorUnit.pas
@@ -1,196 +1,196 @@
-{******************************************************************************}
-{ }
-{ SVGTextPropertyEditorUnit: A property editor for SVGText }
-{ to simplify use of setting SVGText value }
-{ }
-{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
-{ Author: Carlo Barazzetta }
-{ }
-{ https://github.com/EtheaDev/SVGIconImageList }
-{ }
-{******************************************************************************}
-{ }
-{ Licensed under the Apache License, Version 2.0 (the "License"); }
-{ you may not use this file except in compliance with the License. }
-{ You may obtain a copy of the License at }
-{ }
-{ http://www.apache.org/licenses/LICENSE-2.0 }
-{ }
-{ Unless required by applicable law or agreed to in writing, software }
-{ distributed under the License is distributed on an "AS IS" BASIS, }
-{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
-{ See the License for the specific language governing permissions and }
-{ limitations under the License. }
-{ }
-{******************************************************************************}
-unit SVGTextPropertyEditorUnit;
-
-interface
-
-{$INCLUDE SVGIconImageList.inc}
-
-uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics,
- Controls, Forms, Dialogs, ImgList,
- StdCtrls, Buttons, StdActns,
- ActnList, ExtCtrls, ComCtrls, ToolWin,
- Spin, SVGIconImage, Vcl.ExtDlgs;
-
-type
- TSVGTextPropertyEditorForm = class(TForm)
- paBottom: TPanel;
- SVGTextMemo: TMemo;
- paButtons: TPanel;
- CancelButton: TButton;
- OKButton: TButton;
- HelpButton: TButton;
- RightSplitter: TSplitter;
- paImage: TPanel;
- paTitle: TPanel;
- LoadButton: TButton;
- SaveButton: TButton;
- OpenDialog: TOpenPictureDialog;
- SaveDialog: TSavePictureDialog;
- ImagePanel: TPanel;
- SVGIconImage: TSVGIconImage;
- BottomPanel: TPanel;
- ProportionalCheckBox: TCheckBox;
- procedure FormResize(Sender: TObject);
- procedure FormShow(Sender: TObject);
- procedure paImageResize(Sender: TObject);
- procedure SVGTextMemoChange(Sender: TObject);
- procedure LoadButtonClick(Sender: TObject);
- procedure SaveButtonClick(Sender: TObject);
- procedure HelpButtonClick(Sender: TObject);
- procedure ProportionalCheckBoxClick(Sender: TObject);
- private
- procedure UpdateImage;
- procedure UpdateGUI;
- function GetSVGText: string;
- procedure SetSVGText(const Value: string);
- public
- constructor Create(AOwner: TComponent); override;
- property SVGText: string read GetSVGText write SetSVGText;
- end;
-
-function EditSVGTextProperty(var ASVGText: string): boolean;
-
-implementation
-
-{$R *.dfm}
-
-uses
- Themes
- , Math
- {$IFDEF DXE3+}
- , UITypes
- {$ENDIF}
- , ShellAPI
- , SVG;
-
-var
- SavedBounds: TRect = (Left: 0; Top: 0; Right: 0; Bottom: 0);
-
-
-function EditSVGTextProperty(var ASVGText: string): boolean;
-var
- LForm: TSVGTextPropertyEditorForm;
-begin
- Result := False;
- LForm := TSVGTextPropertyEditorForm.Create(nil);
- try
- LForm.SVGText := ASVGText;
- if LForm.ShowModal = mrOk then
- begin
- Result := True;
- ASVGText := LForm.SVGText;
- end;
- SavedBounds := LForm.BoundsRect;
- finally
- LForm.Free;
- end;
-end;
-
-constructor TSVGTextPropertyEditorForm.Create(AOwner: TComponent);
-begin
- inherited;
- ;
-end;
-
-procedure TSVGTextPropertyEditorForm.FormResize(Sender: TObject);
-begin
- paImage.Width := ClientWidth div 4;
-end;
-
-procedure TSVGTextPropertyEditorForm.FormShow(Sender: TObject);
-begin
- if SavedBounds.Right - SavedBounds.Left > 0 then
- SetBounds(SavedBounds.Left, SavedBounds.Top, SavedBounds.Width, SavedBounds.Height);
-
- if SVGTextMemo.CanFocus then
- SVGTextMemo.SetFocus;
- UpdateGUI;
-end;
-
-function TSVGTextPropertyEditorForm.GetSVGText: string;
-begin
- Result := SVGTextMemo.Lines.Text;
-end;
-
-procedure TSVGTextPropertyEditorForm.HelpButtonClick(Sender: TObject);
-begin
- ShellExecute(handle, 'open',
- PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/SVGText-Editor'), nil, nil,
- SW_SHOWNORMAL)
-end;
-
-procedure TSVGTextPropertyEditorForm.LoadButtonClick(Sender: TObject);
-begin
- if OpenDialog.Execute then
- begin
- SVGIconImage.LoadFromFile(OpenDialog.FileName);
- SVGText := SVGIconImage.SVGText;
- end;
-end;
-
-procedure TSVGTextPropertyEditorForm.paImageResize(Sender: TObject);
-begin
- paTitle.Caption := Format('w:%d-h:%d',
- [SVGIconImage.Width, SVGIconImage.Height]);
- SVGIconImage.Hint := paTitle.Caption;
-end;
-
-procedure TSVGTextPropertyEditorForm.ProportionalCheckBoxClick(Sender: TObject);
-begin
- SVGIconImage.Proportional := ProportionalCheckBox.Checked;
-end;
-
-procedure TSVGTextPropertyEditorForm.SaveButtonClick(Sender: TObject);
-begin
- if SaveDialog.Execute then
- SVGIconImage.SVG.SaveToFile(SaveDialog.FileName);
-end;
-
-procedure TSVGTextPropertyEditorForm.SetSVGText(const Value: string);
-begin
- SVGTextMemo.Lines.Text := Value;
- UpdateImage;
-end;
-
-procedure TSVGTextPropertyEditorForm.SVGTextMemoChange(Sender: TObject);
-begin
- UpdateImage;
-end;
-
-procedure TSVGTextPropertyEditorForm.updateGUI;
-begin
- SVGIconImage.Repaint;
-end;
-
-procedure TSVGTextPropertyEditorForm.UpdateImage;
-begin
- SVGIconImage.SVGText := SVGTextMemo.Lines.Text;
- SVGIconImage.Repaint;
-end;
-
-end.
+{******************************************************************************}
+{ }
+{ SVGTextPropertyEditorUnit: A property editor for SVGText }
+{ to simplify use of setting SVGText value }
+{ }
+{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
+{ Author: Carlo Barazzetta }
+{ }
+{ https://github.com/EtheaDev/SVGIconImageList }
+{ }
+{******************************************************************************}
+{ }
+{ Licensed under the Apache License, Version 2.0 (the "License"); }
+{ you may not use this file except in compliance with the License. }
+{ You may obtain a copy of the License at }
+{ }
+{ http://www.apache.org/licenses/LICENSE-2.0 }
+{ }
+{ Unless required by applicable law or agreed to in writing, software }
+{ distributed under the License is distributed on an "AS IS" BASIS, }
+{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
+{ See the License for the specific language governing permissions and }
+{ limitations under the License. }
+{ }
+{******************************************************************************}
+unit SVGTextPropertyEditorUnit;
+
+interface
+
+{$INCLUDE SVGIconImageList.inc}
+
+uses
+ Windows, Messages, SysUtils, Variants, Classes, Graphics,
+ Controls, Forms, Dialogs, ImgList,
+ StdCtrls, Buttons, StdActns,
+ ActnList, ExtCtrls, ComCtrls, ToolWin,
+ Spin, SVGIconImage, Vcl.ExtDlgs;
+
+type
+ TSVGTextPropertyEditorForm = class(TForm)
+ paBottom: TPanel;
+ SVGTextMemo: TMemo;
+ paButtons: TPanel;
+ CancelButton: TButton;
+ OKButton: TButton;
+ HelpButton: TButton;
+ RightSplitter: TSplitter;
+ paImage: TPanel;
+ paTitle: TPanel;
+ LoadButton: TButton;
+ SaveButton: TButton;
+ OpenDialog: TOpenPictureDialog;
+ SaveDialog: TSavePictureDialog;
+ ImagePanel: TPanel;
+ SVGIconImage: TSVGIconImage;
+ BottomPanel: TPanel;
+ ProportionalCheckBox: TCheckBox;
+ procedure FormResize(Sender: TObject);
+ procedure FormShow(Sender: TObject);
+ procedure paImageResize(Sender: TObject);
+ procedure SVGTextMemoChange(Sender: TObject);
+ procedure LoadButtonClick(Sender: TObject);
+ procedure SaveButtonClick(Sender: TObject);
+ procedure HelpButtonClick(Sender: TObject);
+ procedure ProportionalCheckBoxClick(Sender: TObject);
+ private
+ procedure UpdateImage;
+ procedure UpdateGUI;
+ function GetSVGText: string;
+ procedure SetSVGText(const Value: string);
+ public
+ constructor Create(AOwner: TComponent); override;
+ property SVGText: string read GetSVGText write SetSVGText;
+ end;
+
+function EditSVGTextProperty(var ASVGText: string): boolean;
+
+implementation
+
+{$R *.dfm}
+
+uses
+ Themes
+ , Math
+ {$IFDEF DXE3+}
+ , UITypes
+ {$ENDIF}
+ , ShellAPI
+ , SVG;
+
+var
+ SavedBounds: TRect = (Left: 0; Top: 0; Right: 0; Bottom: 0);
+
+
+function EditSVGTextProperty(var ASVGText: string): boolean;
+var
+ LForm: TSVGTextPropertyEditorForm;
+begin
+ Result := False;
+ LForm := TSVGTextPropertyEditorForm.Create(nil);
+ try
+ LForm.SVGText := ASVGText;
+ if LForm.ShowModal = mrOk then
+ begin
+ Result := True;
+ ASVGText := LForm.SVGText;
+ end;
+ SavedBounds := LForm.BoundsRect;
+ finally
+ LForm.Free;
+ end;
+end;
+
+constructor TSVGTextPropertyEditorForm.Create(AOwner: TComponent);
+begin
+ inherited;
+ ;
+end;
+
+procedure TSVGTextPropertyEditorForm.FormResize(Sender: TObject);
+begin
+ paImage.Width := ClientWidth div 4;
+end;
+
+procedure TSVGTextPropertyEditorForm.FormShow(Sender: TObject);
+begin
+ if SavedBounds.Right - SavedBounds.Left > 0 then
+ SetBounds(SavedBounds.Left, SavedBounds.Top, SavedBounds.Width, SavedBounds.Height);
+
+ if SVGTextMemo.CanFocus then
+ SVGTextMemo.SetFocus;
+ UpdateGUI;
+end;
+
+function TSVGTextPropertyEditorForm.GetSVGText: string;
+begin
+ Result := SVGTextMemo.Lines.Text;
+end;
+
+procedure TSVGTextPropertyEditorForm.HelpButtonClick(Sender: TObject);
+begin
+ ShellExecute(handle, 'open',
+ PChar('https://github.com/EtheaDev/SVGIconImageList/wiki/SVGText-Editor'), nil, nil,
+ SW_SHOWNORMAL)
+end;
+
+procedure TSVGTextPropertyEditorForm.LoadButtonClick(Sender: TObject);
+begin
+ if OpenDialog.Execute then
+ begin
+ SVGIconImage.LoadFromFile(OpenDialog.FileName);
+ SVGText := SVGIconImage.SVGText;
+ end;
+end;
+
+procedure TSVGTextPropertyEditorForm.paImageResize(Sender: TObject);
+begin
+ paTitle.Caption := Format('w:%d-h:%d',
+ [SVGIconImage.Width, SVGIconImage.Height]);
+ SVGIconImage.Hint := paTitle.Caption;
+end;
+
+procedure TSVGTextPropertyEditorForm.ProportionalCheckBoxClick(Sender: TObject);
+begin
+ SVGIconImage.Proportional := ProportionalCheckBox.Checked;
+end;
+
+procedure TSVGTextPropertyEditorForm.SaveButtonClick(Sender: TObject);
+begin
+ if SaveDialog.Execute then
+ SVGIconImage.SVG.SaveToFile(SaveDialog.FileName);
+end;
+
+procedure TSVGTextPropertyEditorForm.SetSVGText(const Value: string);
+begin
+ SVGTextMemo.Lines.Text := Value;
+ UpdateImage;
+end;
+
+procedure TSVGTextPropertyEditorForm.SVGTextMemoChange(Sender: TObject);
+begin
+ UpdateImage;
+end;
+
+procedure TSVGTextPropertyEditorForm.updateGUI;
+begin
+ SVGIconImage.Repaint;
+end;
+
+procedure TSVGTextPropertyEditorForm.UpdateImage;
+begin
+ SVGIconImage.SVGText := SVGTextMemo.Lines.Text;
+ SVGIconImage.Repaint;
+end;
+
+end.
diff --git a/SVGExplorer/FExplorerSVG.dfm b/SVGExplorer/FExplorerSVG.dfm
index 6792d166..e6dad572 100644
--- a/SVGExplorer/FExplorerSVG.dfm
+++ b/SVGExplorer/FExplorerSVG.dfm
@@ -1,266 +1,266 @@
-object fmExplorerSVG: TfmExplorerSVG
- Left = 0
- Top = 0
- ClientHeight = 416
- ClientWidth = 846
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- OldCreateOrder = False
- ShowHint = True
- OnCreate = FormCreate
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object spVertical: TSplitter
- Left = 185
- Top = 0
- Width = 4
- Height = 416
- AutoSnap = False
- MinSize = 120
- ExplicitHeight = 393
- end
- object spRight: TSplitter
- Left = 752
- Top = 0
- Width = 4
- Height = 416
- Align = alRight
- AutoSnap = False
- MinSize = 90
- ExplicitLeft = 701
- end
- object paDir: TPanel
- Left = 0
- Top = 0
- Width = 185
- Height = 416
- Align = alLeft
- TabOrder = 0
- object DirSelection: TDirectoryListBox
- Left = 1
- Top = 41
- Width = 183
- Height = 374
- Align = alClient
- TabOrder = 0
- OnChange = DirSelectionChange
- end
- object DrivePanel: TPanel
- Left = 1
- Top = 1
- Width = 183
- Height = 40
- Align = alTop
- BevelOuter = bvNone
- TabOrder = 1
- object DriveComboBox: TDriveComboBox
- Left = 1
- Top = 10
- Width = 178
- Height = 19
- DirList = DirSelection
- TabOrder = 0
- end
- end
- end
- object PaList: TPanel
- Left = 189
- Top = 0
- Width = 563
- Height = 416
- Align = alClient
- TabOrder = 1
- object ImageListLabel: TLabel
- Left = 1
- Top = 42
- Width = 561
- Height = 16
- Align = alTop
- Alignment = taCenter
- Caption = 'SVG image'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -13
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- ExplicitWidth = 63
- end
- object spBottom: TSplitter
- Left = 1
- Top = 293
- Width = 561
- Height = 3
- Cursor = crVSplit
- Align = alBottom
- AutoSnap = False
- MinSize = 100
- ExplicitTop = 58
- ExplicitWidth = 238
- end
- object paRicerca: TPanel
- Left = 1
- Top = 1
- Width = 561
- Height = 41
- Align = alTop
- TabOrder = 0
- DesignSize = (
- 561
- 41)
- object SearchBox: TSearchBox
- Left = 10
- Top = 10
- Width = 544
- Height = 21
- Anchors = [akLeft, akTop, akRight]
- TabOrder = 0
- TextHint = 'Insert filter with wildcards to search icons by name...'
- OnInvokeSearch = SearchBoxInvokeSearch
- end
- end
- object ImageView: TListView
- Left = 1
- Top = 58
- Width = 561
- Height = 235
- Align = alClient
- Columns = <>
- IconOptions.AutoArrange = True
- LargeImages = SVGIconImageList
- PopupMenu = PopupMenu
- SmallImages = SVGIconImageList
- TabOrder = 1
- OnKeyDown = ImageViewKeyDown
- OnSelectItem = ImageViewSelectItem
- end
- object StatusBar: TStatusBar
- Left = 1
- Top = 396
- Width = 561
- Height = 19
- Panels = <>
- SimplePanel = True
- end
- object paSVGText: TPanel
- Left = 1
- Top = 296
- Width = 561
- Height = 100
- Hint = 'SVG Text content'
- Align = alBottom
- TabOrder = 3
- object SVGMemo: TMemo
- Left = 1
- Top = 1
- Width = 559
- Height = 98
- Align = alClient
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -12
- Font.Name = 'Courier New'
- Font.Style = []
- ParentFont = False
- ReadOnly = True
- ScrollBars = ssBoth
- TabOrder = 0
- end
- end
- end
- object paPreview: TPanel
- Left = 756
- Top = 0
- Width = 90
- Height = 416
- Align = alRight
- TabOrder = 2
- OnResize = paPreviewResize
- DesignSize = (
- 90
- 416)
- object SVGIconImage: TSVGIconImage
- Left = 1
- Top = 1
- Width = 88
- Height = 88
- Cursor = crSizeAll
- Hint = 'Left click to enlarge. Right click to shrink'
- Margins.Left = 10
- Margins.Top = 10
- Margins.Right = 10
- Margins.Bottom = 10
- AutoSize = False
- Proportional = False
- ImageList = SVGIconImageList
- Align = alTop
- OnMouseDown = SVGIconImageMouseDown
- ExplicitTop = 323
- end
- object btDelete: TButton
- Left = 6
- Top = 385
- Width = 75
- Height = 25
- Action = DeleteAction
- Anchors = [akLeft, akRight, akBottom]
- TabOrder = 1
- end
- object BtRename: TButton
- Left = 6
- Top = 354
- Width = 75
- Height = 25
- Action = RenameAction
- Anchors = [akLeft, akRight, akBottom]
- TabOrder = 0
- end
- object ShowTextCheckBox: TCheckBox
- Left = 6
- Top = 327
- Width = 71
- Height = 17
- Anchors = [akLeft, akBottom]
- Caption = 'Show Text'
- Checked = True
- State = cbChecked
- TabOrder = 2
- OnClick = ShowTextCheckBoxClick
- end
- end
- object SVGIconImageList: TSVGIconImageList
- Size = 32
- Left = 264
- Top = 157
- Images = {00000000}
- end
- object PopupMenu: TPopupMenu
- Left = 480
- Top = 160
- object Rename1: TMenuItem
- Action = RenameAction
- end
- object Delete1: TMenuItem
- Action = DeleteAction
- end
- end
- object ActionList: TActionList
- Left = 480
- Top = 240
- object DeleteAction: TAction
- Caption = 'Delete...'
- OnExecute = DeleteActionExecute
- OnUpdate = ActionUpdate
- end
- object RenameAction: TAction
- Caption = 'Rename...'
- OnExecute = RenameActionExecute
- OnUpdate = ActionUpdate
- end
- end
-end
+object fmExplorerSVG: TfmExplorerSVG
+ Left = 0
+ Top = 0
+ ClientHeight = 416
+ ClientWidth = 846
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ ShowHint = True
+ OnCreate = FormCreate
+ OnShow = FormShow
+ PixelsPerInch = 96
+ TextHeight = 13
+ object spVertical: TSplitter
+ Left = 185
+ Top = 0
+ Width = 4
+ Height = 416
+ AutoSnap = False
+ MinSize = 120
+ ExplicitHeight = 393
+ end
+ object spRight: TSplitter
+ Left = 752
+ Top = 0
+ Width = 4
+ Height = 416
+ Align = alRight
+ AutoSnap = False
+ MinSize = 90
+ ExplicitLeft = 701
+ end
+ object paDir: TPanel
+ Left = 0
+ Top = 0
+ Width = 185
+ Height = 416
+ Align = alLeft
+ TabOrder = 0
+ object DirSelection: TDirectoryListBox
+ Left = 1
+ Top = 41
+ Width = 183
+ Height = 374
+ Align = alClient
+ TabOrder = 0
+ OnChange = DirSelectionChange
+ end
+ object DrivePanel: TPanel
+ Left = 1
+ Top = 1
+ Width = 183
+ Height = 40
+ Align = alTop
+ BevelOuter = bvNone
+ TabOrder = 1
+ object DriveComboBox: TDriveComboBox
+ Left = 1
+ Top = 10
+ Width = 178
+ Height = 19
+ DirList = DirSelection
+ TabOrder = 0
+ end
+ end
+ end
+ object PaList: TPanel
+ Left = 189
+ Top = 0
+ Width = 563
+ Height = 416
+ Align = alClient
+ TabOrder = 1
+ object ImageListLabel: TLabel
+ Left = 1
+ Top = 42
+ Width = 561
+ Height = 16
+ Align = alTop
+ Alignment = taCenter
+ Caption = 'SVG image'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -13
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ ExplicitWidth = 63
+ end
+ object spBottom: TSplitter
+ Left = 1
+ Top = 293
+ Width = 561
+ Height = 3
+ Cursor = crVSplit
+ Align = alBottom
+ AutoSnap = False
+ MinSize = 100
+ ExplicitTop = 58
+ ExplicitWidth = 238
+ end
+ object paRicerca: TPanel
+ Left = 1
+ Top = 1
+ Width = 561
+ Height = 41
+ Align = alTop
+ TabOrder = 0
+ DesignSize = (
+ 561
+ 41)
+ object SearchBox: TSearchBox
+ Left = 10
+ Top = 10
+ Width = 544
+ Height = 21
+ Anchors = [akLeft, akTop, akRight]
+ TabOrder = 0
+ TextHint = 'Insert filter with wildcards to search icons by name...'
+ OnInvokeSearch = SearchBoxInvokeSearch
+ end
+ end
+ object ImageView: TListView
+ Left = 1
+ Top = 58
+ Width = 561
+ Height = 235
+ Align = alClient
+ Columns = <>
+ IconOptions.AutoArrange = True
+ LargeImages = SVGIconImageList
+ PopupMenu = PopupMenu
+ SmallImages = SVGIconImageList
+ TabOrder = 1
+ OnKeyDown = ImageViewKeyDown
+ OnSelectItem = ImageViewSelectItem
+ end
+ object StatusBar: TStatusBar
+ Left = 1
+ Top = 396
+ Width = 561
+ Height = 19
+ Panels = <>
+ SimplePanel = True
+ end
+ object paSVGText: TPanel
+ Left = 1
+ Top = 296
+ Width = 561
+ Height = 100
+ Hint = 'SVG Text content'
+ Align = alBottom
+ TabOrder = 3
+ object SVGMemo: TMemo
+ Left = 1
+ Top = 1
+ Width = 559
+ Height = 98
+ Align = alClient
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -12
+ Font.Name = 'Courier New'
+ Font.Style = []
+ ParentFont = False
+ ReadOnly = True
+ ScrollBars = ssBoth
+ TabOrder = 0
+ end
+ end
+ end
+ object paPreview: TPanel
+ Left = 756
+ Top = 0
+ Width = 90
+ Height = 416
+ Align = alRight
+ TabOrder = 2
+ OnResize = paPreviewResize
+ DesignSize = (
+ 90
+ 416)
+ object SVGIconImage: TSVGIconImage
+ Left = 1
+ Top = 1
+ Width = 88
+ Height = 88
+ Cursor = crSizeAll
+ Hint = 'Left click to enlarge. Right click to shrink'
+ Margins.Left = 10
+ Margins.Top = 10
+ Margins.Right = 10
+ Margins.Bottom = 10
+ AutoSize = False
+ Proportional = False
+ ImageList = SVGIconImageList
+ Align = alTop
+ OnMouseDown = SVGIconImageMouseDown
+ ExplicitTop = 323
+ end
+ object btDelete: TButton
+ Left = 6
+ Top = 385
+ Width = 75
+ Height = 25
+ Action = DeleteAction
+ Anchors = [akLeft, akRight, akBottom]
+ TabOrder = 1
+ end
+ object BtRename: TButton
+ Left = 6
+ Top = 354
+ Width = 75
+ Height = 25
+ Action = RenameAction
+ Anchors = [akLeft, akRight, akBottom]
+ TabOrder = 0
+ end
+ object ShowTextCheckBox: TCheckBox
+ Left = 6
+ Top = 327
+ Width = 71
+ Height = 17
+ Anchors = [akLeft, akBottom]
+ Caption = 'Show Text'
+ Checked = True
+ State = cbChecked
+ TabOrder = 2
+ OnClick = ShowTextCheckBoxClick
+ end
+ end
+ object SVGIconImageList: TSVGIconImageList
+ Size = 32
+ Left = 264
+ Top = 157
+ Images = {00000000}
+ end
+ object PopupMenu: TPopupMenu
+ Left = 480
+ Top = 160
+ object Rename1: TMenuItem
+ Action = RenameAction
+ end
+ object Delete1: TMenuItem
+ Action = DeleteAction
+ end
+ end
+ object ActionList: TActionList
+ Left = 480
+ Top = 240
+ object DeleteAction: TAction
+ Caption = 'Delete...'
+ OnExecute = DeleteActionExecute
+ OnUpdate = ActionUpdate
+ end
+ object RenameAction: TAction
+ Caption = 'Rename...'
+ OnExecute = RenameActionExecute
+ OnUpdate = ActionUpdate
+ end
+ end
+end
diff --git a/SVGExplorer/FExplorerSVG.pas b/SVGExplorer/FExplorerSVG.pas
index 37f6664c..3c08bc3d 100644
--- a/SVGExplorer/FExplorerSVG.pas
+++ b/SVGExplorer/FExplorerSVG.pas
@@ -1,270 +1,270 @@
-unit FExplorerSVG;
-
-interface
-
-uses
- Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
- Vcl.Controls, Vcl.Forms, Vcl.Dialogs, System.ImageList, Vcl.ImgList,
- SVGIconImageList, Vcl.StdCtrls, Vcl.ComCtrls, Vcl.ExtCtrls, Vcl.FileCtrl,
- SVGIconImage, Vcl.WinXCtrls, System.Actions, Vcl.ActnList, Vcl.Menus,
- SVGIconImageListBase;
-
-type
- TfmExplorerSVG = class(TForm)
- paDir: TPanel;
- DirSelection: TDirectoryListBox;
- spVertical: TSplitter;
- PaList: TPanel;
- ImageListLabel: TLabel;
- SVGIconImageList: TSVGIconImageList;
- paRicerca: TPanel;
- paPreview: TPanel;
- spRight: TSplitter;
- SVGIconImage: TSVGIconImage;
- ImageView: TListView;
- btDelete: TButton;
- BtRename: TButton;
- DrivePanel: TPanel;
- DriveComboBox: TDriveComboBox;
- StatusBar: TStatusBar;
- SearchBox: TSearchBox;
- PopupMenu: TPopupMenu;
- ActionList: TActionList;
- DeleteAction: TAction;
- RenameAction: TAction;
- Delete1: TMenuItem;
- Rename1: TMenuItem;
- paSVGText: TPanel;
- SVGMemo: TMemo;
- spBottom: TSplitter;
- ShowTextCheckBox: TCheckBox;
- procedure DirSelectionChange(Sender: TObject);
- procedure ImageViewSelectItem(Sender: TObject; Item: TListItem;
- Selected: Boolean);
- procedure paPreviewResize(Sender: TObject);
- procedure ImageViewKeyDown(Sender: TObject; var Key: Word;
- Shift: TShiftState);
- procedure FormCreate(Sender: TObject);
- procedure SearchBoxInvokeSearch(Sender: TObject);
- procedure FormShow(Sender: TObject);
- procedure SVGIconImageMouseDown(Sender: TObject; Button: TMouseButton;
- Shift: TShiftState; X, Y: Integer);
- procedure DeleteActionExecute(Sender: TObject);
- procedure RenameActionExecute(Sender: TObject);
- procedure ActionUpdate(Sender: TObject);
- procedure ShowTextCheckBoxClick(Sender: TObject);
- private
- fpaPreviewSize: Integer;
- procedure LoadFilesDir(const APath: string; const AFilter: string = '');
- procedure UpdateStatusBar(Index: Integer);
- procedure SetSVGIconImage(const AIndex: Integer);
- protected
- procedure Loaded; override;
- public
- { Public declarations }
- procedure UpdateListView;
- end;
-
-var
- fmExplorerSVG: TfmExplorerSVG;
-
-implementation
-
-uses
- SVGIconUtils
- , UITypes;
-
-{$R *.dfm}
-
-{ TForm10 }
-
-procedure TfmExplorerSVG.ActionUpdate(Sender: TObject);
-begin
- (Sender as TAction).Enabled := ImageView.Selected <> nil;
-end;
-
-procedure TfmExplorerSVG.DeleteActionExecute(Sender: TObject);
-var
- LFileName: string;
- LOldImageIndex: Integer;
-begin
- LFileName := IncludeTrailingPathDelimiter(DirSelection.Directory)+
- SVGIconImageList.Names[ImageView.Selected.ImageIndex]+'.svg';
- if MessageDlg(Format('Do you really want to delete file "%s"?',[LFileName]),
- mtWarning, [mbNo, mbYes], 0, mbNo) = mrYes then
- begin
- Screen.Cursor := crHourGlass;
- try
- DeleteFile(LFileName);
- LOldImageIndex := ImageView.Selected.ImageIndex;
- SVGIconImageList.Delete(LOldImageIndex);
- LoadFilesDir(DirSelection.Directory, SearchBox.Text);
- if LOldImageIndex < ImageView.Items.Count then
- ImageView.ItemIndex := LOldImageIndex
- else
- ImageView.ItemIndex := LOldImageIndex-1;
- SetSVGIconImage(ImageView.ItemIndex);
- finally
- Screen.Cursor := crDefault;
- end;
- end;
-end;
-
-procedure TfmExplorerSVG.DirSelectionChange(Sender: TObject);
-begin
- SearchBox.Text := '';
- LoadFilesDir(DirSelection.Directory);
-end;
-
-procedure TfmExplorerSVG.FormCreate(Sender: TObject);
-begin
- Caption := Application.Title;
- fpaPreviewSize := paPreview.Width;
-end;
-
-procedure TfmExplorerSVG.FormShow(Sender: TObject);
-var
- LPath: string;
-begin
- LPath := ParamStr(1);
- if LPath = '' then
- LPath := ExtractFilePath(ParamStr(0));
- DirSelection.Directory := LPath;
-end;
-
-procedure TfmExplorerSVG.ImageViewKeyDown(Sender: TObject; var Key: Word;
- Shift: TShiftState);
-begin
- if (Key = VK_DELETE) then btDelete.Click();
-end;
-
-procedure TfmExplorerSVG.SetSVGIconImage(const AIndex: Integer);
-begin
- if AIndex >= 0 then
- begin
- SVGIconImage.ImageIndex := AIndex;
- SVGIconImage.Repaint;
- SVGMemo.Text := SVGIconImageList.SVGIconItems[AIndex].SVGText;
- end
- else
- SVGMemo.Text := '';
-end;
-
-procedure TfmExplorerSVG.ShowTextCheckBoxClick(Sender: TObject);
-begin
- paSVGText.Visible := ShowTextCheckBox.Checked;
- spBottom.Visible := paSVGText.Visible;
- spBottom.Top := paSVGText.Top -1;
-end;
-
-procedure TfmExplorerSVG.UpdateStatusBar(Index: Integer);
-begin
- if Index >= 0 then
- begin
- StatusBar.SimpleText := IncludeTrailingPathDelimiter(DirSelection.Directory)+
- SVGIconImageList.SVGIconItems[Index].IconName+'.svg';
- end
- else
- begin
- StatusBar.SimpleText := DirSelection.Directory;
- end;
- SetSVGIconImage(Index);
-end;
-
-procedure TfmExplorerSVG.ImageViewSelectItem(Sender: TObject; Item: TListItem;
- Selected: Boolean);
-begin
- UpdateStatusBar(Item.Index);
-end;
-
-procedure TfmExplorerSVG.Loaded;
-begin
- Font.Assign(Screen.IconFont);
- inherited;
-end;
-
-procedure TfmExplorerSVG.LoadFilesDir(const APath, AFilter: string);
-var
- SR: TSearchRec;
- LFiles: TStringList;
- LFilter: string;
-begin
- LFiles := TStringList.Create;
- Screen.Cursor := crHourGlass;
- Try
- LFilter := Format('%s*%s*.svg', [IncludeTrailingPathDelimiter(APath), AFilter]);
- if FindFirst(LFilter, faArchive, SR) = 0 then
- begin
- repeat
- LFiles.Add(SR.Name); //Fill the list
- until FindNext(SR) <> 0;
- FindClose(SR);
- end;
- SVGIconImageList.LoadFromFiles(LFiles, False);
- UpdateListView;
- if LFiles.Count > 0 then
- begin
- ImageView.ItemIndex := 0;
- UpdateStatusBar(0);
- end
- else
- UpdateStatusBar(-1);
- Finally
- LFiles.Free;
- Screen.Cursor := crDefault;
- End;
-end;
-
-procedure TfmExplorerSVG.paPreviewResize(Sender: TObject);
-begin
- SVGIconImage.Height := SVGIconImage.width;
-end;
-
-procedure TfmExplorerSVG.RenameActionExecute(Sender: TObject);
-var
- LIndex: Integer;
- LFileName, LPath, LNewFileName: string;
-begin
- if ImageView.Selected <> nil then
- begin
- LIndex := ImageView.Selected.ImageIndex;
- LFileName := SVGIconImageList.Names[LIndex];
- LNewFileName := InputBox('Rename icon', 'New filename:', LFileName);
- if (LNewFileName <> '') and (LNewFileName <> LFileName) then
- begin
- LPath := IncludeTrailingPathDelimiter(DirSelection.Directory);
- if FileExists(LPath+LNewFileName+'.svg') then
- raise Exception.CreateFmt('Cannot rename: file "%s" already exists!',
- [LPath+LNewFileName+'.svg'])
- else
- RenameFile(LPath+LFileName+'.svg', LPath+LNewFileName+'.svg');
- SVGIconImageList.Names[LIndex] := LNewFileName;
- UpdateListView;
- UpdateStatusBar(LIndex);
- end;
- end;
-end;
-
-procedure TfmExplorerSVG.SearchBoxInvokeSearch(Sender: TObject);
-begin
- LoadFilesDir(DirSelection.Directory, SearchBox.Text) ;
-end;
-
-procedure TfmExplorerSVG.SVGIconImageMouseDown(Sender: TObject;
- Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
-begin
- if (Button = mbLeft) and (paPreview.Width * 1.5 < paList.Width) then
- paPreview.Width := Round(paPreview.Width * 1.5)
- else if (Button = mbRight) and (paPreview.Width / 1.5 > fpaPreviewSize) then
- paPreview.Width := Round(paPreview.Width / 1.5);
-end;
-
-procedure TfmExplorerSVG.UpdateListView;
-var
- LItemsCount: Integer;
-begin
- LItemsCount := UpdateSVGIconListView(ImageView, False);
- ImageListLabel.Caption := Format('SVG Image List Preview: %d icons',[LItemsCount]);
-end;
-
-end.
+unit FExplorerSVG;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
+ Vcl.Controls, Vcl.Forms, Vcl.Dialogs, System.ImageList, Vcl.ImgList,
+ SVGIconImageList, Vcl.StdCtrls, Vcl.ComCtrls, Vcl.ExtCtrls, Vcl.FileCtrl,
+ SVGIconImage, Vcl.WinXCtrls, System.Actions, Vcl.ActnList, Vcl.Menus,
+ SVGIconImageListBase;
+
+type
+ TfmExplorerSVG = class(TForm)
+ paDir: TPanel;
+ DirSelection: TDirectoryListBox;
+ spVertical: TSplitter;
+ PaList: TPanel;
+ ImageListLabel: TLabel;
+ SVGIconImageList: TSVGIconImageList;
+ paRicerca: TPanel;
+ paPreview: TPanel;
+ spRight: TSplitter;
+ SVGIconImage: TSVGIconImage;
+ ImageView: TListView;
+ btDelete: TButton;
+ BtRename: TButton;
+ DrivePanel: TPanel;
+ DriveComboBox: TDriveComboBox;
+ StatusBar: TStatusBar;
+ SearchBox: TSearchBox;
+ PopupMenu: TPopupMenu;
+ ActionList: TActionList;
+ DeleteAction: TAction;
+ RenameAction: TAction;
+ Delete1: TMenuItem;
+ Rename1: TMenuItem;
+ paSVGText: TPanel;
+ SVGMemo: TMemo;
+ spBottom: TSplitter;
+ ShowTextCheckBox: TCheckBox;
+ procedure DirSelectionChange(Sender: TObject);
+ procedure ImageViewSelectItem(Sender: TObject; Item: TListItem;
+ Selected: Boolean);
+ procedure paPreviewResize(Sender: TObject);
+ procedure ImageViewKeyDown(Sender: TObject; var Key: Word;
+ Shift: TShiftState);
+ procedure FormCreate(Sender: TObject);
+ procedure SearchBoxInvokeSearch(Sender: TObject);
+ procedure FormShow(Sender: TObject);
+ procedure SVGIconImageMouseDown(Sender: TObject; Button: TMouseButton;
+ Shift: TShiftState; X, Y: Integer);
+ procedure DeleteActionExecute(Sender: TObject);
+ procedure RenameActionExecute(Sender: TObject);
+ procedure ActionUpdate(Sender: TObject);
+ procedure ShowTextCheckBoxClick(Sender: TObject);
+ private
+ fpaPreviewSize: Integer;
+ procedure LoadFilesDir(const APath: string; const AFilter: string = '');
+ procedure UpdateStatusBar(Index: Integer);
+ procedure SetSVGIconImage(const AIndex: Integer);
+ protected
+ procedure Loaded; override;
+ public
+ { Public declarations }
+ procedure UpdateListView;
+ end;
+
+var
+ fmExplorerSVG: TfmExplorerSVG;
+
+implementation
+
+uses
+ SVGIconUtils
+ , UITypes;
+
+{$R *.dfm}
+
+{ TForm10 }
+
+procedure TfmExplorerSVG.ActionUpdate(Sender: TObject);
+begin
+ (Sender as TAction).Enabled := ImageView.Selected <> nil;
+end;
+
+procedure TfmExplorerSVG.DeleteActionExecute(Sender: TObject);
+var
+ LFileName: string;
+ LOldImageIndex: Integer;
+begin
+ LFileName := IncludeTrailingPathDelimiter(DirSelection.Directory)+
+ SVGIconImageList.Names[ImageView.Selected.ImageIndex]+'.svg';
+ if MessageDlg(Format('Do you really want to delete file "%s"?',[LFileName]),
+ mtWarning, [mbNo, mbYes], 0, mbNo) = mrYes then
+ begin
+ Screen.Cursor := crHourGlass;
+ try
+ DeleteFile(LFileName);
+ LOldImageIndex := ImageView.Selected.ImageIndex;
+ SVGIconImageList.Delete(LOldImageIndex);
+ LoadFilesDir(DirSelection.Directory, SearchBox.Text);
+ if LOldImageIndex < ImageView.Items.Count then
+ ImageView.ItemIndex := LOldImageIndex
+ else
+ ImageView.ItemIndex := LOldImageIndex-1;
+ SetSVGIconImage(ImageView.ItemIndex);
+ finally
+ Screen.Cursor := crDefault;
+ end;
+ end;
+end;
+
+procedure TfmExplorerSVG.DirSelectionChange(Sender: TObject);
+begin
+ SearchBox.Text := '';
+ LoadFilesDir(DirSelection.Directory);
+end;
+
+procedure TfmExplorerSVG.FormCreate(Sender: TObject);
+begin
+ Caption := Application.Title;
+ fpaPreviewSize := paPreview.Width;
+end;
+
+procedure TfmExplorerSVG.FormShow(Sender: TObject);
+var
+ LPath: string;
+begin
+ LPath := ParamStr(1);
+ if LPath = '' then
+ LPath := ExtractFilePath(ParamStr(0));
+ DirSelection.Directory := LPath;
+end;
+
+procedure TfmExplorerSVG.ImageViewKeyDown(Sender: TObject; var Key: Word;
+ Shift: TShiftState);
+begin
+ if (Key = VK_DELETE) then btDelete.Click();
+end;
+
+procedure TfmExplorerSVG.SetSVGIconImage(const AIndex: Integer);
+begin
+ if AIndex >= 0 then
+ begin
+ SVGIconImage.ImageIndex := AIndex;
+ SVGIconImage.Repaint;
+ SVGMemo.Text := SVGIconImageList.SVGIconItems[AIndex].SVGText;
+ end
+ else
+ SVGMemo.Text := '';
+end;
+
+procedure TfmExplorerSVG.ShowTextCheckBoxClick(Sender: TObject);
+begin
+ paSVGText.Visible := ShowTextCheckBox.Checked;
+ spBottom.Visible := paSVGText.Visible;
+ spBottom.Top := paSVGText.Top -1;
+end;
+
+procedure TfmExplorerSVG.UpdateStatusBar(Index: Integer);
+begin
+ if Index >= 0 then
+ begin
+ StatusBar.SimpleText := IncludeTrailingPathDelimiter(DirSelection.Directory)+
+ SVGIconImageList.SVGIconItems[Index].IconName+'.svg';
+ end
+ else
+ begin
+ StatusBar.SimpleText := DirSelection.Directory;
+ end;
+ SetSVGIconImage(Index);
+end;
+
+procedure TfmExplorerSVG.ImageViewSelectItem(Sender: TObject; Item: TListItem;
+ Selected: Boolean);
+begin
+ UpdateStatusBar(Item.Index);
+end;
+
+procedure TfmExplorerSVG.Loaded;
+begin
+ Font.Assign(Screen.IconFont);
+ inherited;
+end;
+
+procedure TfmExplorerSVG.LoadFilesDir(const APath, AFilter: string);
+var
+ SR: TSearchRec;
+ LFiles: TStringList;
+ LFilter: string;
+begin
+ LFiles := TStringList.Create;
+ Screen.Cursor := crHourGlass;
+ Try
+ LFilter := Format('%s*%s*.svg', [IncludeTrailingPathDelimiter(APath), AFilter]);
+ if FindFirst(LFilter, faArchive, SR) = 0 then
+ begin
+ repeat
+ LFiles.Add(SR.Name); //Fill the list
+ until FindNext(SR) <> 0;
+ FindClose(SR);
+ end;
+ SVGIconImageList.LoadFromFiles(LFiles, False);
+ UpdateListView;
+ if LFiles.Count > 0 then
+ begin
+ ImageView.ItemIndex := 0;
+ UpdateStatusBar(0);
+ end
+ else
+ UpdateStatusBar(-1);
+ Finally
+ LFiles.Free;
+ Screen.Cursor := crDefault;
+ End;
+end;
+
+procedure TfmExplorerSVG.paPreviewResize(Sender: TObject);
+begin
+ SVGIconImage.Height := SVGIconImage.width;
+end;
+
+procedure TfmExplorerSVG.RenameActionExecute(Sender: TObject);
+var
+ LIndex: Integer;
+ LFileName, LPath, LNewFileName: string;
+begin
+ if ImageView.Selected <> nil then
+ begin
+ LIndex := ImageView.Selected.ImageIndex;
+ LFileName := SVGIconImageList.Names[LIndex];
+ LNewFileName := InputBox('Rename icon', 'New filename:', LFileName);
+ if (LNewFileName <> '') and (LNewFileName <> LFileName) then
+ begin
+ LPath := IncludeTrailingPathDelimiter(DirSelection.Directory);
+ if FileExists(LPath+LNewFileName+'.svg') then
+ raise Exception.CreateFmt('Cannot rename: file "%s" already exists!',
+ [LPath+LNewFileName+'.svg'])
+ else
+ RenameFile(LPath+LFileName+'.svg', LPath+LNewFileName+'.svg');
+ SVGIconImageList.Names[LIndex] := LNewFileName;
+ UpdateListView;
+ UpdateStatusBar(LIndex);
+ end;
+ end;
+end;
+
+procedure TfmExplorerSVG.SearchBoxInvokeSearch(Sender: TObject);
+begin
+ LoadFilesDir(DirSelection.Directory, SearchBox.Text) ;
+end;
+
+procedure TfmExplorerSVG.SVGIconImageMouseDown(Sender: TObject;
+ Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
+begin
+ if (Button = mbLeft) and (paPreview.Width * 1.5 < paList.Width) then
+ paPreview.Width := Round(paPreview.Width * 1.5)
+ else if (Button = mbRight) and (paPreview.Width / 1.5 > fpaPreviewSize) then
+ paPreview.Width := Round(paPreview.Width / 1.5);
+end;
+
+procedure TfmExplorerSVG.UpdateListView;
+var
+ LItemsCount: Integer;
+begin
+ LItemsCount := UpdateSVGIconListView(ImageView, False);
+ ImageListLabel.Caption := Format('SVG Image List Preview: %d icons',[LItemsCount]);
+end;
+
+end.
diff --git a/SVGExplorer/SVGExplorer.dpr b/SVGExplorer/SVGExplorer.dpr
index 82374033..47536e75 100644
--- a/SVGExplorer/SVGExplorer.dpr
+++ b/SVGExplorer/SVGExplorer.dpr
@@ -1,15 +1,15 @@
-program SVGExplorer;
-
-uses
- Vcl.Forms,
- FExplorerSVG in 'FExplorerSVG.pas' {fmExplorerSVG};
-
-{$R *.res}
-
-begin
- Application.Title := 'SVG Icons Explorer - Copyright (c) 2020 Ethea S.r.l.';
- Application.Initialize;
- Application.MainFormOnTaskbar := True;
- Application.CreateForm(TfmExplorerSVG, fmExplorerSVG);
- Application.Run;
-end.
+program SVGExplorer;
+
+uses
+ Vcl.Forms,
+ FExplorerSVG in 'FExplorerSVG.pas' {fmExplorerSVG};
+
+{$R *.res}
+
+begin
+ Application.Title := 'SVG Icons Explorer - Copyright (c) 2020 Ethea S.r.l.';
+ Application.Initialize;
+ Application.MainFormOnTaskbar := True;
+ Application.CreateForm(TfmExplorerSVG, fmExplorerSVG);
+ Application.Run;
+end.
diff --git a/SVGExplorer/SVGExplorer.dproj b/SVGExplorer/SVGExplorer.dproj
index 70502ecc..fd819254 100644
--- a/SVGExplorer/SVGExplorer.dproj
+++ b/SVGExplorer/SVGExplorer.dproj
@@ -1,1054 +1,1054 @@
-
-
- {62B8E620-E233-45E4-9FDA-7A955E08C7EC}
- 19.0
- VCL
- SVGExplorer.dpr
- True
- Debug
- 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
-
-
- .\Dcu\$(Platform)\$(Config)
- false
- false
- false
- false
- false
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- $(BDS)\bin\delphi_PROJECTICON.ico
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
- SVGExplorer
- ..\..\SVGIconImageList\Svg;..\..\SVGIconImageList\Source;..\..\SVGIconImageList\GDIP;$(DCC_UnitSearchPath)
- 1040
- CompanyName=Ethea S.r.l.;FileDescription=SVG Icon Explorer;FileVersion=1.1.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=SVG Icon Explorer;ProductVersion=1.1;Comments=
- .\Bin
- true
- 1
-
-
- DBXSqliteDriver;RESTComponents;IOCore;DBXDb2Driver;DBXInterBaseDriver;MARSClient.FireDAC;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;rbBDE2026;FireDACADSDriver;rbRAP2026;DBXMSSQLDriver;rbRest2026;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;rbDBE2026;vcltouch;IconFontsImageList;vcldb;bindcompfmx;svn;DBXOracleDriver;ipstudiowinwordxp;ISOpenOffice7;inetdb;rbDB2026;FmxTeeUI;emsedge;dxEdtrD10_3;fmx;FireDACIBDriver;fmxdae;vclib;rbTC2026;rbIBE2026;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;NativeExcelD10_3;FireDACCommon;rbRIDE2026;RESTBackendComponents;DataSnapConnectors;IOFireDAC;VCLRESTComponents;soapserver;FrameViewer10_3;IODBX;ISVcl7;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;rbRCL2026;SVGIconPackage;FireDACCommonODBC;FireDACCommonDriver;rbDIDE2026;DataSnapClient;rbCIDE2026;dclRBE2026;inet;IndyIPCommon;bindcompdbx;dclRBFireDAC2026;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;NLDSideBarD10_3;VirtualTreesR;DCPdelphi10_3;rbADO2026;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;rbTCUI2026;TeeDB;FireDAC;IOXML;dclRBDBE2026;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;ChromeTabs_R;DBXOdbcDriver;FireDACTDataDriver;FMXTee;rbRTL2026;ipstudiowinclient;soaprtl;DbxCommonDriver;XDBLISCOR10_3CL;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;rbDAD2026;CustomIPTransport;vcldsnap;rbUSER2026;dclRBADO2026;SynEdit_R10_3;MARSClient.Core;ISRtl7;bindcomp;appanalytics;ipstudiowin;DBXInformixDriver;officeXPrt;wPDF3_D10_3;IndyIPClient;bindcompvcl;SVGIconImageList;TeeUI;dmvcframeworkRT;dbxcds;VclSmp;adortl;FireDACODBCDriver;rbUSERDesign2026;wpViewPDF_D10_3;DataSnapIndy10ServerTransport;dmvcframeworkDT;ISFLib7;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;RBCalendarD10_3;rbFireDAC2026;dclRBIBE2026;IOADO;rbIDE2026;fmxase;$(DCC_UsePackage)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- Debug
- true
- 1033
- $(BDS)\bin\default_app.manifest
- SVGExplorer_Icon.ico
-
-
- DBXSqliteDriver;RESTComponents;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;VirtualTreesR;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;MARSClient.Core;bindcomp;appanalytics;DBXInformixDriver;officeXPrt;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;fmxase;$(DCC_UsePackage)
-
-
- DEBUG;$(DCC_Define)
- true
- false
- true
- true
- true
-
-
- false
- true
- PerMonitorV2
- 1033
- SVGExplorer_Icon.ico
- D:\ETHEA\SVGIconImageList\Demo\flat-color-icons\svg
-
-
- false
- RELEASE;$(DCC_Define)
- 0
- 0
-
-
- true
- PerMonitorV2
- true
- 1033
- SVGExplorer_Icon.ico
-
-
-
- MainSource
-
-
-
- dfm
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- Delphi.Personality.12
- Application
-
-
-
- SVGExplorer.dpr
-
-
- *** Liscor RTL Design Package for D10.3 ***
- *** Liscor VCL Design Package for D10.3 ***
- *** Liscor - XDB Components for Delphi Rio 10.3 e ReportBuilder 20 ***
- DCPcrypt cryptographic component library v2 B3
- Microsoft Office 2000 Sample Automation Server Wrapper Components
-
-
-
-
-
- SVGExplorer.exe
- true
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
- res\values-v21
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- res\drawable
- 1
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-xxxhdpi
- 1
-
-
- res\drawable-xxxhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- res\values
- 1
-
-
- res\values
- 1
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- Contents\MacOS
- 1
- .framework
-
-
- Contents\MacOS
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
- ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).launchscreen
- 64
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- Contents
- 1
-
-
- Contents
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- library\lib\arm64-v8a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- False
-
-
- 12
-
-
-
-
-
+
+
+ {62B8E620-E233-45E4-9FDA-7A955E08C7EC}
+ 19.0
+ VCL
+ SVGExplorer.dpr
+ True
+ Debug
+ 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
+
+
+ .\Dcu\$(Platform)\$(Config)
+ false
+ false
+ false
+ false
+ false
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ $(BDS)\bin\delphi_PROJECTICON.ico
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
+ SVGExplorer
+ ..\..\SVGIconImageList\Svg;..\..\SVGIconImageList\Source;..\..\SVGIconImageList\GDIP;$(DCC_UnitSearchPath)
+ 1040
+ CompanyName=Ethea S.r.l.;FileDescription=SVG Icon Explorer;FileVersion=1.1.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=;ProductName=SVG Icon Explorer;ProductVersion=1.1;Comments=
+ .\Bin
+ true
+ 1
+
+
+ DBXSqliteDriver;RESTComponents;IOCore;DBXDb2Driver;DBXInterBaseDriver;MARSClient.FireDAC;vclactnband;vclFireDAC;emsclientfiredac;tethering;svnui;DataSnapFireDAC;rbBDE2026;FireDACADSDriver;rbRAP2026;DBXMSSQLDriver;rbRest2026;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;rbDBE2026;vcltouch;IconFontsImageList;vcldb;bindcompfmx;svn;DBXOracleDriver;ipstudiowinwordxp;ISOpenOffice7;inetdb;rbDB2026;FmxTeeUI;emsedge;dxEdtrD10_3;fmx;FireDACIBDriver;fmxdae;vclib;rbTC2026;rbIBE2026;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;NativeExcelD10_3;FireDACCommon;rbRIDE2026;RESTBackendComponents;DataSnapConnectors;IOFireDAC;VCLRESTComponents;soapserver;FrameViewer10_3;IODBX;ISVcl7;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;rbRCL2026;SVGIconPackage;FireDACCommonODBC;FireDACCommonDriver;rbDIDE2026;DataSnapClient;rbCIDE2026;dclRBE2026;inet;IndyIPCommon;bindcompdbx;dclRBFireDAC2026;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;NLDSideBarD10_3;VirtualTreesR;DCPdelphi10_3;rbADO2026;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;rbTCUI2026;TeeDB;FireDAC;IOXML;dclRBDBE2026;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;ChromeTabs_R;DBXOdbcDriver;FireDACTDataDriver;FMXTee;rbRTL2026;ipstudiowinclient;soaprtl;DbxCommonDriver;XDBLISCOR10_3CL;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;rbDAD2026;CustomIPTransport;vcldsnap;rbUSER2026;dclRBADO2026;SynEdit_R10_3;MARSClient.Core;ISRtl7;bindcomp;appanalytics;ipstudiowin;DBXInformixDriver;officeXPrt;wPDF3_D10_3;IndyIPClient;bindcompvcl;SVGIconImageList;TeeUI;dmvcframeworkRT;dbxcds;VclSmp;adortl;FireDACODBCDriver;rbUSERDesign2026;wpViewPDF_D10_3;DataSnapIndy10ServerTransport;dmvcframeworkDT;ISFLib7;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;RBCalendarD10_3;rbFireDAC2026;dclRBIBE2026;IOADO;rbIDE2026;fmxase;$(DCC_UsePackage)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ Debug
+ true
+ 1033
+ $(BDS)\bin\default_app.manifest
+ SVGExplorer_Icon.ico
+
+
+ DBXSqliteDriver;RESTComponents;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;tethering;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;IndySystem;FireDACDb2Driver;dsnapcon;VirtualTreesR;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;ibxbindings;DBXSybaseASADriver;CustomIPTransport;vcldsnap;MARSClient.Core;bindcomp;appanalytics;DBXInformixDriver;officeXPrt;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;fmxase;$(DCC_UsePackage)
+
+
+ DEBUG;$(DCC_Define)
+ true
+ false
+ true
+ true
+ true
+
+
+ false
+ true
+ PerMonitorV2
+ 1033
+ SVGExplorer_Icon.ico
+ D:\ETHEA\SVGIconImageList\Demo\flat-color-icons\svg
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ 0
+
+
+ true
+ PerMonitorV2
+ true
+ 1033
+ SVGExplorer_Icon.ico
+
+
+
+ MainSource
+
+
+
+ dfm
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Application
+
+
+
+ SVGExplorer.dpr
+
+
+ *** Liscor RTL Design Package for D10.3 ***
+ *** Liscor VCL Design Package for D10.3 ***
+ *** Liscor - XDB Components for Delphi Rio 10.3 e ReportBuilder 20 ***
+ DCPcrypt cryptographic component library v2 B3
+ Microsoft Office 2000 Sample Automation Server Wrapper Components
+
+
+
+
+
+ SVGExplorer.exe
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen
+ 64
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+ False
+
+
+ 12
+
+
+
+
+
diff --git a/Source/FMX.SVGIconImage.pas b/Source/FMX.SVGIconImage.pas
index 88062e0c..3714b63c 100644
--- a/Source/FMX.SVGIconImage.pas
+++ b/Source/FMX.SVGIconImage.pas
@@ -1,291 +1,291 @@
-{******************************************************************************}
-{ }
-{ SVG Image in TPicture: useful to show a Scalable Vector Graphic }
-{ }
-{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
-{ Author: Carlo Barazzetta }
-{ Contributors: }
-{ }
-{ https://github.com/EtheaDev/SVGIconImageList }
-{ }
-{******************************************************************************}
-{ Original version (c) 2005, 2008 Martin Walter with license: }
-{ Use of this file is permitted for commercial and non-commercial }
-{ use, as long as the author is credited. }
-{ home page: http://www.mwcs.de }
-{ email : martin.walter@mwcs.de }
-{******************************************************************************}
-{ }
-{ Licensed under the Apache License, Version 2.0 (the "License"); }
-{ you may not use this file except in compliance with the License. }
-{ You may obtain a copy of the License at }
-{ }
-{ http://www.apache.org/licenses/LICENSE-2.0 }
-{ }
-{ Unless required by applicable law or agreed to in writing, software }
-{ distributed under the License is distributed on an "AS IS" BASIS, }
-{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
-{ See the License for the specific language governing permissions and }
-{ limitations under the License. }
-{ }
-{******************************************************************************}
-unit FMX.SVGIconImage;
-
-interface
-
-{$INCLUDE SVGIconImageList.inc}
-
-uses
- System.Classes
- , System.UITypes
- , System.Rtti
- , System.Messaging
- , System.ImageList
- , System.Types
- , FMX.Controls
- , FMX.ImgList
- , FMX.MultiResBitmap
- , FMX.Types
- , FMX.Graphics
- , FMX.Objects
- , SVG
- ;
-
-type
- TSVGIconFixedMultiResBitmap = class;
-
- TSVGIconFixedBitmapItem = class(TFixedBitmapItem)
- private
- FSize: Integer;
- FOpacity: Single;
- FOwnerCollection: TSVGIconFixedMultiResBitmap;
- FIconName: string;
- FSVG: TSVG;
- function StoreOpacity: Boolean;
- procedure SetBitmap(const AValue: TBitmapOfItem);
- function GetBitmap: TBitmapOfItem;
- procedure SetSize(const AValue: Integer);
- procedure SetOpacity(const AValue: Single);
- procedure SetIconName(const AValue: string);
- function GetSVGText: string;
- procedure SetSVGText(const Value: string);
- protected
- function BitmapStored: Boolean; override;
- function GetDisplayName: string; override;
- public
- constructor Create(Collection: TCollection); override;
- destructor Destroy; override;
- procedure DrawSVGIcon;
- property SVG: TSVG read FSVG;
- published
- property Bitmap: TBitmapOfItem read GetBitmap write SetBitmap stored False;
- property Opacity: Single read FOpacity write SetOpacity stored StoreOpacity;
- property Size: Integer read FSize write SetSize;
- property IconName: string read FIconName write SetIconName;
- property SVGText: string read GetSVGText write SetSVGText;
- end;
-
- TSVGIconFixedBitmapItemClass = class of TSVGIconFixedBitmapItem;
- TSVGIconImage = class;
-
- TSVGIconFixedMultiResBitmap = class(TFixedMultiResBitmap)
- private
- FOwnerImage: TSVGIconImage;
- procedure UpdateImageSize(const ASize: Integer);
- public
- constructor Create(AOwner: TPersistent; ItemClass: TSVGIconFixedBitmapItemClass); overload;
- constructor Create(AOwner: TPersistent); overload;
- end;
-
- TSVGIconImage = class(TImage)
- private
- FSVGIconMultiResBitmap: TSVGIconFixedMultiResBitmap;
- function GetBitmapSize: Integer;
- procedure SetBitmapSize(const AValue: Integer);
- protected
- function CreateMultiResBitmap: TFixedMultiResBitmap; override;
- public
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- procedure SetBounds(X, Y, AWidth, AHeight: Single); override;
- published
- property BitmapSize: Integer read GetBitmapSize write SetBitmapSize;
- end;
-
-implementation
-
-uses
- System.Math
- , FMX.SVGIconImageList
- , System.RTLConsts
- , System.SysUtils
- , System.Character
- , FMX.Forms
- , FMX.Consts
- , GDIPOBJ2;
-
-{ TSVGIconFixedMultiResBitmap }
-
-constructor TSVGIconFixedMultiResBitmap.Create(AOwner: TPersistent);
-begin
- inherited Create(AOwner, TSVGIconFixedBitmapItem);
- if AOwner is TSVGIconImage then
- FOwnerImage := TSVGIconImage(AOwner);
-end;
-
-constructor TSVGIconFixedMultiResBitmap.Create(AOwner: TPersistent; ItemClass: TSVGIconFixedBitmapItemClass);
-begin
- inherited Create(AOwner, ItemClass);
- if AOwner is TSVGIconImage then
- FOwnerImage := TSVGIconImage(AOwner);
-end;
-
-procedure TSVGIconFixedMultiResBitmap.UpdateImageSize(const ASize: Integer);
-var
- I, J: Integer;
- LItem: TFixedBitmapItem;
-begin
- for I := 0 to ScaleList.Count - 1 do
- begin
- for J := 0 to Count - 1 do
- begin
- LItem := Items[J];
- if LItem is TSVGIconFixedBitmapItem then
- TSVGIconFixedBitmapItem(LItem).Size := ASize;
- end;
- end;
-end;
-
-{ TSVGIconFixedBitmapItem }
-
-function TSVGIconFixedBitmapItem.BitmapStored: Boolean;
-begin
- Result := False;
-end;
-
-constructor TSVGIconFixedBitmapItem.Create(Collection: TCollection);
-begin
- inherited;
- if Collection is TSVGIconFixedMultiResBitmap then
- FOwnerCollection := Collection as TSVGIconFixedMultiResBitmap;
- FSize := 16;
- FOpacity := 1;
- FSVG := TSVG.Create;
-end;
-
-destructor TSVGIconFixedBitmapItem.Destroy;
-begin
- FSVG.DisposeOf;
- inherited;
-end;
-
-procedure TSVGIconFixedBitmapItem.DrawSVGIcon;
-var
- LBitmap: TBitmap;
- LBitmapSize: Single;
-begin
- LBitmap := inherited Bitmap;
- LBitmap.Clear(talphacolors.Null);
- LBitmapSize := Size * Scale;
- LBitmap.Width := Round(LBitmapSize);
- LBitmap.Height := Round(LBitmapSize);
- PaintToBitmap(LBitmap, FSVG);
-end;
-
-function TSVGIconFixedBitmapItem.GetBitmap: TBitmapOfItem;
-begin
- DrawSVGIcon;
- Result := inherited Bitmap;
-end;
-
-function TSVGIconFixedBitmapItem.GetDisplayName: string;
-begin
- Result := FIconName;
-end;
-
-function TSVGIconFixedBitmapItem.GetSVGText: string;
-begin
- Result := FSVG.Source;
-end;
-
-procedure TSVGIconFixedBitmapItem.SetBitmap(const AValue: TBitmapOfItem);
-begin
- inherited Bitmap.Assign(AValue);
- inherited Bitmap.BitmapScale := Scale;
-end;
-
-procedure TSVGIconFixedBitmapItem.SetIconName(const AValue: string);
-begin
- FIconName := AValue;
-end;
-
-procedure TSVGIconFixedBitmapItem.SetOpacity(const AValue: Single);
-begin
- FOpacity := AValue;
- DrawSVGIcon;
-end;
-
-procedure TSVGIconFixedBitmapItem.SetSize(const AValue: Integer);
-begin
- if (Trunc(AValue) > 0) and (AValue <> FSize) then
- begin
- FSize := AValue;
- DrawSVGIcon;
- end;
-end;
-
-procedure TSVGIconFixedBitmapItem.SetSVGText(const Value: string);
-begin
- FSVG.LoadFromText(Value);
-end;
-
-function TSVGIconFixedBitmapItem.StoreOpacity: Boolean;
-begin
- Result := FOpacity <> 1;
-end;
-
-{ TSVGIconImage }
-
-constructor TSVGIconImage.Create(AOwner: TComponent);
-begin
- inherited;
- DisableInterpolation := True;
- FSVGIconMultiResBitmap := MultiResBitmap as TSVGIconFixedMultiResBitmap;
-end;
-
-function TSVGIconImage.CreateMultiResBitmap: TFixedMultiResBitmap;
-begin
- Result := TSVGIconFixedMultiResBitmap.Create(Self, TSVGIconFixedBitmapItem);
-end;
-
-destructor TSVGIconImage.Destroy;
-begin
- inherited;
- FSVGIconMultiResBitmap := nil;
-end;
-
-function TSVGIconImage.GetBitmapSize: Integer;
-begin
- Result := Round(Inherited width);
-end;
-
-procedure TSVGIconImage.SetBitmapSize(const AValue: Integer);
-begin
- if AValue <> 0 then
- FSVGIconMultiResBitmap.UpdateImageSize(AValue);
-end;
-
-procedure TSVGIconImage.SetBounds(X, Y, AWidth, AHeight: Single);
-begin
- inherited;
- BitmapSize := Trunc(Min(AWidth, AHeight));
-end;
-
-initialization
- RegisterFmxClasses([TSVGIconImage]);
-
- StartClassGroup(TFmxObject);
- ActivateClassGroup(TFmxObject);
- GroupDescendentsWith(FMX.SVGIconImage.TSVGIconImage, TFmxObject);
-
-end.
+{******************************************************************************}
+{ }
+{ SVG Image in TPicture: useful to show a Scalable Vector Graphic }
+{ }
+{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
+{ Author: Carlo Barazzetta }
+{ Contributors: }
+{ }
+{ https://github.com/EtheaDev/SVGIconImageList }
+{ }
+{******************************************************************************}
+{ Original version (c) 2005, 2008 Martin Walter with license: }
+{ Use of this file is permitted for commercial and non-commercial }
+{ use, as long as the author is credited. }
+{ home page: http://www.mwcs.de }
+{ email : martin.walter@mwcs.de }
+{******************************************************************************}
+{ }
+{ Licensed under the Apache License, Version 2.0 (the "License"); }
+{ you may not use this file except in compliance with the License. }
+{ You may obtain a copy of the License at }
+{ }
+{ http://www.apache.org/licenses/LICENSE-2.0 }
+{ }
+{ Unless required by applicable law or agreed to in writing, software }
+{ distributed under the License is distributed on an "AS IS" BASIS, }
+{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
+{ See the License for the specific language governing permissions and }
+{ limitations under the License. }
+{ }
+{******************************************************************************}
+unit FMX.SVGIconImage;
+
+interface
+
+{$INCLUDE SVGIconImageList.inc}
+
+uses
+ System.Classes
+ , System.UITypes
+ , System.Rtti
+ , System.Messaging
+ , System.ImageList
+ , System.Types
+ , FMX.Controls
+ , FMX.ImgList
+ , FMX.MultiResBitmap
+ , FMX.Types
+ , FMX.Graphics
+ , FMX.Objects
+ , SVG
+ ;
+
+type
+ TSVGIconFixedMultiResBitmap = class;
+
+ TSVGIconFixedBitmapItem = class(TFixedBitmapItem)
+ private
+ FSize: Integer;
+ FOpacity: Single;
+ FOwnerCollection: TSVGIconFixedMultiResBitmap;
+ FIconName: string;
+ FSVG: TSVG;
+ function StoreOpacity: Boolean;
+ procedure SetBitmap(const AValue: TBitmapOfItem);
+ function GetBitmap: TBitmapOfItem;
+ procedure SetSize(const AValue: Integer);
+ procedure SetOpacity(const AValue: Single);
+ procedure SetIconName(const AValue: string);
+ function GetSVGText: string;
+ procedure SetSVGText(const Value: string);
+ protected
+ function BitmapStored: Boolean; override;
+ function GetDisplayName: string; override;
+ public
+ constructor Create(Collection: TCollection); override;
+ destructor Destroy; override;
+ procedure DrawSVGIcon;
+ property SVG: TSVG read FSVG;
+ published
+ property Bitmap: TBitmapOfItem read GetBitmap write SetBitmap stored False;
+ property Opacity: Single read FOpacity write SetOpacity stored StoreOpacity;
+ property Size: Integer read FSize write SetSize;
+ property IconName: string read FIconName write SetIconName;
+ property SVGText: string read GetSVGText write SetSVGText;
+ end;
+
+ TSVGIconFixedBitmapItemClass = class of TSVGIconFixedBitmapItem;
+ TSVGIconImage = class;
+
+ TSVGIconFixedMultiResBitmap = class(TFixedMultiResBitmap)
+ private
+ FOwnerImage: TSVGIconImage;
+ procedure UpdateImageSize(const ASize: Integer);
+ public
+ constructor Create(AOwner: TPersistent; ItemClass: TSVGIconFixedBitmapItemClass); overload;
+ constructor Create(AOwner: TPersistent); overload;
+ end;
+
+ TSVGIconImage = class(TImage)
+ private
+ FSVGIconMultiResBitmap: TSVGIconFixedMultiResBitmap;
+ function GetBitmapSize: Integer;
+ procedure SetBitmapSize(const AValue: Integer);
+ protected
+ function CreateMultiResBitmap: TFixedMultiResBitmap; override;
+ public
+ constructor Create(AOwner: TComponent); override;
+ destructor Destroy; override;
+ procedure SetBounds(X, Y, AWidth, AHeight: Single); override;
+ published
+ property BitmapSize: Integer read GetBitmapSize write SetBitmapSize;
+ end;
+
+implementation
+
+uses
+ System.Math
+ , FMX.SVGIconImageList
+ , System.RTLConsts
+ , System.SysUtils
+ , System.Character
+ , FMX.Forms
+ , FMX.Consts
+ , GDIPOBJ2;
+
+{ TSVGIconFixedMultiResBitmap }
+
+constructor TSVGIconFixedMultiResBitmap.Create(AOwner: TPersistent);
+begin
+ inherited Create(AOwner, TSVGIconFixedBitmapItem);
+ if AOwner is TSVGIconImage then
+ FOwnerImage := TSVGIconImage(AOwner);
+end;
+
+constructor TSVGIconFixedMultiResBitmap.Create(AOwner: TPersistent; ItemClass: TSVGIconFixedBitmapItemClass);
+begin
+ inherited Create(AOwner, ItemClass);
+ if AOwner is TSVGIconImage then
+ FOwnerImage := TSVGIconImage(AOwner);
+end;
+
+procedure TSVGIconFixedMultiResBitmap.UpdateImageSize(const ASize: Integer);
+var
+ I, J: Integer;
+ LItem: TFixedBitmapItem;
+begin
+ for I := 0 to ScaleList.Count - 1 do
+ begin
+ for J := 0 to Count - 1 do
+ begin
+ LItem := Items[J];
+ if LItem is TSVGIconFixedBitmapItem then
+ TSVGIconFixedBitmapItem(LItem).Size := ASize;
+ end;
+ end;
+end;
+
+{ TSVGIconFixedBitmapItem }
+
+function TSVGIconFixedBitmapItem.BitmapStored: Boolean;
+begin
+ Result := False;
+end;
+
+constructor TSVGIconFixedBitmapItem.Create(Collection: TCollection);
+begin
+ inherited;
+ if Collection is TSVGIconFixedMultiResBitmap then
+ FOwnerCollection := Collection as TSVGIconFixedMultiResBitmap;
+ FSize := 16;
+ FOpacity := 1;
+ FSVG := TSVG.Create;
+end;
+
+destructor TSVGIconFixedBitmapItem.Destroy;
+begin
+ FSVG.DisposeOf;
+ inherited;
+end;
+
+procedure TSVGIconFixedBitmapItem.DrawSVGIcon;
+var
+ LBitmap: TBitmap;
+ LBitmapSize: Single;
+begin
+ LBitmap := inherited Bitmap;
+ LBitmap.Clear(talphacolors.Null);
+ LBitmapSize := Size * Scale;
+ LBitmap.Width := Round(LBitmapSize);
+ LBitmap.Height := Round(LBitmapSize);
+ PaintToBitmap(LBitmap, FSVG);
+end;
+
+function TSVGIconFixedBitmapItem.GetBitmap: TBitmapOfItem;
+begin
+ DrawSVGIcon;
+ Result := inherited Bitmap;
+end;
+
+function TSVGIconFixedBitmapItem.GetDisplayName: string;
+begin
+ Result := FIconName;
+end;
+
+function TSVGIconFixedBitmapItem.GetSVGText: string;
+begin
+ Result := FSVG.Source;
+end;
+
+procedure TSVGIconFixedBitmapItem.SetBitmap(const AValue: TBitmapOfItem);
+begin
+ inherited Bitmap.Assign(AValue);
+ inherited Bitmap.BitmapScale := Scale;
+end;
+
+procedure TSVGIconFixedBitmapItem.SetIconName(const AValue: string);
+begin
+ FIconName := AValue;
+end;
+
+procedure TSVGIconFixedBitmapItem.SetOpacity(const AValue: Single);
+begin
+ FOpacity := AValue;
+ DrawSVGIcon;
+end;
+
+procedure TSVGIconFixedBitmapItem.SetSize(const AValue: Integer);
+begin
+ if (Trunc(AValue) > 0) and (AValue <> FSize) then
+ begin
+ FSize := AValue;
+ DrawSVGIcon;
+ end;
+end;
+
+procedure TSVGIconFixedBitmapItem.SetSVGText(const Value: string);
+begin
+ FSVG.LoadFromText(Value);
+end;
+
+function TSVGIconFixedBitmapItem.StoreOpacity: Boolean;
+begin
+ Result := FOpacity <> 1;
+end;
+
+{ TSVGIconImage }
+
+constructor TSVGIconImage.Create(AOwner: TComponent);
+begin
+ inherited;
+ DisableInterpolation := True;
+ FSVGIconMultiResBitmap := MultiResBitmap as TSVGIconFixedMultiResBitmap;
+end;
+
+function TSVGIconImage.CreateMultiResBitmap: TFixedMultiResBitmap;
+begin
+ Result := TSVGIconFixedMultiResBitmap.Create(Self, TSVGIconFixedBitmapItem);
+end;
+
+destructor TSVGIconImage.Destroy;
+begin
+ inherited;
+ FSVGIconMultiResBitmap := nil;
+end;
+
+function TSVGIconImage.GetBitmapSize: Integer;
+begin
+ Result := Round(Inherited width);
+end;
+
+procedure TSVGIconImage.SetBitmapSize(const AValue: Integer);
+begin
+ if AValue <> 0 then
+ FSVGIconMultiResBitmap.UpdateImageSize(AValue);
+end;
+
+procedure TSVGIconImage.SetBounds(X, Y, AWidth, AHeight: Single);
+begin
+ inherited;
+ BitmapSize := Trunc(Min(AWidth, AHeight));
+end;
+
+initialization
+ RegisterFmxClasses([TSVGIconImage]);
+
+ StartClassGroup(TFmxObject);
+ ActivateClassGroup(TFmxObject);
+ GroupDescendentsWith(FMX.SVGIconImage.TSVGIconImage, TFmxObject);
+
+end.
diff --git a/Source/SVGIconImage.pas b/Source/SVGIconImage.pas
index ef82e272..8e27cead 100644
--- a/Source/SVGIconImage.pas
+++ b/Source/SVGIconImage.pas
@@ -1,618 +1,618 @@
-{******************************************************************************}
-{ }
-{ SVG Image in TPicture: useful to show a Scalable Vector Graphic }
-{ }
-{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
-{ Author: Carlo Barazzetta }
-{ Contributors: }
-{ }
-{ https://github.com/EtheaDev/SVGIconImageList }
-{ }
-{******************************************************************************}
-{ Original version (c) 2005, 2008 Martin Walter with license: }
-{ Use of this file is permitted for commercial and non-commercial }
-{ use, as long as the author is credited. }
-{ home page: http://www.mwcs.de }
-{ email : martin.walter@mwcs.de }
-{******************************************************************************}
-{ }
-{ Licensed under the Apache License, Version 2.0 (the "License"); }
-{ you may not use this file except in compliance with the License. }
-{ You may obtain a copy of the License at }
-{ }
-{ http://www.apache.org/licenses/LICENSE-2.0 }
-{ }
-{ Unless required by applicable law or agreed to in writing, software }
-{ distributed under the License is distributed on an "AS IS" BASIS, }
-{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
-{ See the License for the specific language governing permissions and }
-{ limitations under the License. }
-{ }
-{******************************************************************************}
-unit SVGIconImage;
-
-interface
-
-{$INCLUDE SVGIconImageList.inc}
-
-uses
- Windows
- , SysUtils
-{$IFDEF D10_4+}
- , System.UITypes
-{$ENDIF}
- , GDIPOBJ
- , Classes
- , Controls
- , Graphics
- , SVG
- , SVGIconImageListBase;
-
-type
- TSVGIconImage = class(TGraphicControl)
- strict private
- FSVG: TSVG;
-
- FCenter: Boolean;
- FProportional: Boolean;
- FStretch: Boolean;
- FAutoSize: Boolean;
- FScale: Double;
- FOpacity: Byte;
- FFileName: TFileName;
- FImageList: TSVGIconImageListBase;
- FImageIndex: Integer;
- procedure SetCenter(Value: Boolean);
- procedure SetProportional(Value: Boolean);
- procedure SetOpacity(Value: Byte);
- procedure SetFileName(const Value: TFileName);
- //procedure ReadData(Stream: TStream);
- //procedure WriteData(Stream: TStream);
- procedure SetImageIndex(const Value: Integer);
- procedure SetStretch(const Value: Boolean);
- procedure SetScale(const Value: Double);
- procedure SetAutoSizeImage(const Value: Boolean);
- private
- function GetSVGText: string;
- procedure SetSVGText(const AValue: string);
- function StoreScale: Boolean;
- function UsingSVGText: Boolean;
- procedure SetImageList(const Value: TSVGIconImageListBase);
- protected
- //procedure DefineProperties(Filer: TFiler); override;
- procedure Notification(AComponent: TComponent; Operation: TOperation); override;
- procedure CheckAutoSize;
- public
- constructor Create(AOwner: TComponent); override;
- destructor Destroy; override;
- procedure Clear;
- function Empty: Boolean;
- procedure Paint; override;
- procedure LoadFromFile(const FileName: string);
- procedure LoadFromStream(Stream: TStream);
- procedure SaveToFile(const FileName: string);
- procedure Assign(Source: TPersistent); override;
- property SVG: TSVG read FSVG;
- published
- property AutoSize: Boolean read FAutoSize write SetAutoSizeImage;
- property Center: Boolean read FCenter write SetCenter default True;
- property Proportional: Boolean read FProportional write SetProportional;
- property Stretch: Boolean read FStretch write SetStretch default True;
- property Opacity: Byte read FOpacity write SetOpacity default 255;
- property Scale: Double read FScale write SetScale stored StoreScale;
- property FileName: TFileName read FFileName write SetFileName;
- property ImageList: TSVGIconImageListBase read FImageList write SetImageList;
- property ImageIndex: Integer read FImageIndex write SetImageIndex default -1;
- property SVGText: string read GetSVGText write SetSVGText stored UsingSVGText;
- property Enabled;
- property Visible;
- property Constraints;
- property Anchors;
- property Align;
-
- property OnClick;
- property OnDblClick;
- property OnMouseDown;
- property OnMouseMove;
- property OnMouseUp;
- end;
-
-
- TSVGGraphic = class(TGraphic)
- strict private
- FSVG: TSVG;
- FOpacity: Byte;
- FFileName: TFileName;
-
- procedure SetOpacity(Value: Byte);
- procedure SetFileName(const Value: TFileName);
- protected
- procedure DefineProperties(Filer: TFiler); override;
-
- procedure Draw(ACanvas: TCanvas; const Rect: TRect); override;
-
- function GetEmpty: Boolean; override;
- function GetWidth: Integer; override;
- function GetHeight: Integer; override;
- procedure SetHeight(Value: Integer); override;
- procedure SetWidth(Value: Integer); override;
-
- procedure ReadData(Stream: TStream); override;
- procedure WriteData(Stream: TStream); override;
- public
- constructor Create; override;
- destructor Destroy; override;
- procedure Clear;
-
- procedure Assign(Source: TPersistent); override;
- procedure AssignTo(Dest: TPersistent); override;
-
- procedure AssignSVG(SVG: TSVG);
-
- procedure LoadFromFile(const Filename: String); override;
- procedure LoadFromStream(Stream: TStream); override;
-
- procedure SaveToStream(Stream: TStream); override;
-
- procedure LoadFromClipboardFormat(AFormat: Word; AData: THandle;
- APalette: HPALETTE); override;
- procedure SaveToClipboardFormat(var AFormat: Word; var AData: THandle;
- var APalette: HPALETTE); override;
-
- property Opacity: Byte read FOpacity write SetOpacity;
- published
- property FileName: TFileName read FFileName write SetFileName;
- end;
-
-function TGPImageToBitmap(Image: TGPImage): TBitmap;
-
-implementation
-
-uses
- Winapi.GDIPAPI,
- SVGCommon;
-
-function TGPImageToBitmap(Image: TGPImage): TBitmap;
-var
- Graphics: TGPGraphics;
- Bitmap: TBitmap;
- P: Pointer;
- W, H: Cardinal;
-begin
- Bitmap := nil;
- if Assigned(Image) then
- begin
- W := Image.GetWidth;
- H := Image.GetHeight;
- if (W > 0) and (H > 0) then
- begin
- Bitmap := TBitmap.Create;
- Bitmap.PixelFormat := pf32Bit;
- Bitmap.Width := W;
- Bitmap.Height := H;
- P := Bitmap.ScanLine[H - 1];
- FillChar(P^, (W * H) shl 2, 0);
- Graphics := TGPGraphics.Create(Bitmap.Canvas.Handle);
- try
- Graphics.DrawImage(Image, 0, 0);
- finally
- Graphics.Free;
- end;
- end;
- end;
- Result := Bitmap;
-end;
-
-constructor TSVGIconImage.Create(AOwner: TComponent);
-begin
- inherited;
- FSVG := TSVG.Create;
- FProportional := False;
- FCenter := True;
- FStretch := True;
- FOpacity := 255;
- FScale := 1;
- FImageIndex := -1;
-end;
-
-destructor TSVGIconImage.Destroy;
-begin
- FSVG.Free;
- inherited;
-end;
-
-procedure TSVGIconImage.CheckAutoSize;
-begin
- if FAutoSize and (FSVG.Width > 0) and (FSVG.Height > 0) then
- begin
- SetBounds(Left, Top, Round(FSVG.Width), Round(FSVG.Height));
- end;
-end;
-
-procedure TSVGIconImage.Clear;
-begin
- FSVG.Clear;
- FFileName := '';
- Repaint;
-end;
-
-function TSVGIconImage.Empty: Boolean;
-begin
- Empty := FSVG.Count = 0;
-end;
-
-function TSVGIconImage.GetSVGText: string;
-begin
- Result := FSVG.Source;
-end;
-
-function TSVGIconImage.UsingSVGText: Boolean;
-begin
- Result := not (Assigned(FImageList) and (FImageIndex >= 0) and
- (FImageIndex < FImagelist.Count));
-end;
-
-procedure TSVGIconImage.Paint;
-var
- Bounds: TGPRectF;
-
-var
- SVG: TSVG;
-begin
- if not UsingSVGText then
- SVG := FImageList.Images[FImageIndex]
- else
- SVG := FSVG;
-
- if SVG.Count > 0 then
- begin
- Bounds := MakeRect(0.0, 0, Width, Height);
- if FProportional then
- Bounds := FittedRect(Bounds, SVG.Width, SVG.Height);
-
- SVG.SVGOpacity := FOpacity / 255;
- SVG.PaintTo(Canvas.Handle, Bounds, nil, 0);
- SVG.SVGOpacity := 1;
- end;
-
- if csDesigning in ComponentState then
- begin
- Canvas.Brush.Style := bsClear;
- Canvas.Pen.Style := psDash;
- Canvas.Pen.Color := clBlack;
- Canvas.Rectangle(0, 0, Width, Height);
- end;
-end;
-
-procedure TSVGIconImage.LoadFromFile(const FileName: string);
-begin
- if csLoading in ComponentState then
- Exit;
- try
- FSVG.LoadFromFile(FileName);
- FFileName := FileName;
- except
- Clear;
- end;
- CheckAutoSize;
- Repaint;
-end;
-
-procedure TSVGIconImage.LoadFromStream(Stream: TStream);
-begin
- try
- FFileName := '';
- FSVG.LoadFromStream(Stream);
- except
- end;
- CheckAutoSize;
- Repaint;
-end;
-
-procedure TSVGIconImage.Notification(AComponent: TComponent; Operation: TOperation);
-begin
- inherited;
- if (Operation = opRemove) and (AComponent = FImageList) then
- FImageList := nil;
-end;
-
-procedure TSVGIconImage.Assign(Source: TPersistent);
-var
- SVG: TSVG;
-begin
- if (Source is TSVGIconImage) then
- begin
- SVG := (Source as TSVGIconImage).FSVG;
- FSVG.LoadFromText(SVG.Source);
- FImageIndex := -1;
- CheckAutoSize;
- end;
-
- if (Source.ClassType = TSVG) then
- begin
- SVG := TSVG(Source);
- FSVG.LoadFromText(SVG.Source);
- FImageIndex := -1;
- end;
-
- Repaint;
-end;
-
-procedure TSVGIconImage.SaveToFile(const FileName: string);
-begin
- FSVG.SaveToFile(FileName);
-end;
-
-procedure TSVGIconImage.SetAutoSizeImage(const Value: Boolean);
-begin
- if (Value = FAutoSize) then
- Exit;
- FAutoSize := Value;
-
- CheckAutoSize;
-end;
-
-procedure TSVGIconImage.SetCenter(Value: Boolean);
-begin
- if Value = FCenter then
- Exit;
-
- FCenter := Value;
- Repaint;
-end;
-
-procedure TSVGIconImage.SetProportional(Value: Boolean);
-begin
- if Value = FProportional then
- Exit;
-
- FProportional := Value;
- Repaint;
-end;
-
-procedure TSVGIconImage.SetScale(const Value: Double);
-begin
- if Value = FScale then
- Exit;
- FScale := Value;
- FAutoSize := False;
- Repaint;
-end;
-
-procedure TSVGIconImage.SetStretch(const Value: Boolean);
-begin
- if Value = FStretch then
- Exit;
-
- FStretch := Value;
- if FStretch then
- FAutoSize := False;
- Repaint;
-end;
-
-procedure TSVGIconImage.SetSVGText(const AValue: string);
-begin
- FSVG.LoadFromText(AValue);
- Repaint;
-end;
-
-function TSVGIconImage.StoreScale: Boolean;
-begin
- Result := FScale <> 1;
-end;
-
-procedure TSVGIconImage.SetOpacity(Value: Byte);
-begin
- if Value = FOpacity then
- Exit;
-
- FOpacity := Value;
- Repaint;
-end;
-
-procedure TSVGIconImage.SetFileName(const Value: TFileName);
-begin
- if Value = FFileName then
- Exit;
- LoadFromFile(Value);
-end;
-
-procedure TSVGIconImage.SetImageIndex(const Value: Integer);
-begin
- if FImageIndex = Value then
- Exit;
- FImageIndex := Value;
- CheckAutoSize;
- Repaint;
-end;
-
-procedure TSVGIconImage.SetImageList(const Value: TSVGIconImageListBase);
-begin
- FImageList := Value;
- SVGText := '';
-end;
-
-constructor TSVGGraphic.Create;
-begin
- inherited;
- FSVG := TSVG.Create;
- FOpacity := 255;
-end;
-
-destructor TSVGGraphic.Destroy;
-begin
- FSVG.Free;
- inherited;
-end;
-
-procedure TSVGGraphic.Clear;
-begin
- FSVG.Clear;
- FFileName := '';
- Changed(Self);
-end;
-
-procedure TSVGGraphic.Assign(Source: TPersistent);
-begin
- if (Source is TSVGGraphic) then
- begin
- try
- //AssignSVG(TSVGGraphic(Source).FSVG);
- FSVG.Free;
- FSVG := TSVG(TSVGGraphic(Source).FSVG.Clone(nil));
- except
- end;
- Changed(Self);
- end;
-end;
-
-procedure TSVGGraphic.AssignSVG(SVG: TSVG);
-begin
- FSVG.LoadFromText(SVG.Source);
- Changed(Self);
-end;
-
-procedure TSVGGraphic.AssignTo(Dest: TPersistent);
-begin
- if Dest is TSVGGraphic then
- TSVGGraphic(Dest).Assign(Self);
-end;
-
-procedure TSVGGraphic.SetOpacity(Value: Byte);
-begin
- if Value = FOpacity then
- Exit;
-
- FOpacity := Value;
- Changed(Self);
-end;
-
-procedure TSVGGraphic.SetWidth(Value: Integer);
-begin
- inherited;
-
-end;
-
-procedure TSVGGraphic.SetFileName(const Value: TFileName);
-begin
- if Value = FFileName then
- Exit;
-
- LoadFromFile(Value);
-end;
-
-procedure TSVGGraphic.SetHeight(Value: Integer);
-begin
- inherited;
-
-end;
-
-procedure TSVGGraphic.ReadData(Stream: TStream);
-var
- Size: LongInt;
- MemStream: TMemoryStream;
-begin
- Stream.Read(Size, SizeOf(Size));
- MemStream := TMemoryStream.Create;
- try
- MemStream.CopyFrom(Stream, Size);
- MemStream.Position := 0;
- FSVG.LoadFromStream(MemStream);
- finally
- MemStream.Free;
- end;
-end;
-
-procedure TSVGGraphic.WriteData(Stream: TStream);
-var
- Size: LongInt;
- MemStream: TMemoryStream;
-begin
- MemStream := TMemoryStream.Create;
- try
- FSVG.SaveToStream(MemStream);
- Size := MemStream.Size;
- Stream.Write(Size, SizeOf(Size));
- MemStream.Position := 0;
- MemStream.SaveToStream(Stream);
- finally
- MemStream.Free;
- end;
-end;
-
-procedure TSVGGraphic.DefineProperties(Filer: TFiler);
-begin
- Filer.DefineBinaryProperty('Data', ReadData, WriteData, True);
-end;
-
-procedure TSVGGraphic.Draw(ACanvas: TCanvas; const Rect: TRect);
-var
- Bounds: TGPRectF;
-begin
- if Empty then
- Exit;
-
- Bounds := MakeRect(Rect.Left + 0.0, Rect.Top,
- Rect.Right - Rect.Left, Rect.Bottom - Rect.Top);
-
- FSVG.SVGOpacity := FOpacity / 255;
- FSVG.PaintTo(ACanvas.Handle, Bounds, nil, 0);
-end;
-
-
-function TSVGGraphic.GetEmpty: Boolean;
-begin
- Result := FSVG.Count = 0;
-end;
-
-function TSVGGraphic.GetWidth: Integer;
-begin
- Result := Round(FSVG.Width);
-end;
-
-function TSVGGraphic.GetHeight: Integer;
-begin
- Result := Round(FSVG.Height);
-end;
-
-procedure TSVGGraphic.LoadFromClipboardFormat(AFormat: Word; AData: THandle;
- APalette: HPALETTE);
-begin
- inherited;
-
-end;
-
-procedure TSVGGraphic.LoadFromFile(const Filename: String);
-begin
- FSVG.LoadFromFile(Filename);
- Changed(Self);
-end;
-
-procedure TSVGGraphic.LoadFromStream(Stream: TStream);
-begin
- try
- FSVG.LoadFromStream(Stream);
- except
- end;
- Changed(Self);
-end;
-
-procedure TSVGGraphic.SaveToClipboardFormat(var AFormat: Word;
- var AData: THandle; var APalette: HPALETTE);
-begin
- inherited;
-
-end;
-
-procedure TSVGGraphic.SaveToStream(Stream: TStream);
-begin
- FSVG.SaveToStream(Stream);
-end;
-
-
-initialization
- TPicture.RegisterFileFormat('SVG', 'Scalable Vector Graphics', TSVGGraphic);
-
-finalization
- TPicture.UnregisterGraphicClass(TSVGGraphic);
-end.
+{******************************************************************************}
+{ }
+{ SVG Image in TPicture: useful to show a Scalable Vector Graphic }
+{ }
+{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
+{ Author: Carlo Barazzetta }
+{ Contributors: }
+{ }
+{ https://github.com/EtheaDev/SVGIconImageList }
+{ }
+{******************************************************************************}
+{ Original version (c) 2005, 2008 Martin Walter with license: }
+{ Use of this file is permitted for commercial and non-commercial }
+{ use, as long as the author is credited. }
+{ home page: http://www.mwcs.de }
+{ email : martin.walter@mwcs.de }
+{******************************************************************************}
+{ }
+{ Licensed under the Apache License, Version 2.0 (the "License"); }
+{ you may not use this file except in compliance with the License. }
+{ You may obtain a copy of the License at }
+{ }
+{ http://www.apache.org/licenses/LICENSE-2.0 }
+{ }
+{ Unless required by applicable law or agreed to in writing, software }
+{ distributed under the License is distributed on an "AS IS" BASIS, }
+{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
+{ See the License for the specific language governing permissions and }
+{ limitations under the License. }
+{ }
+{******************************************************************************}
+unit SVGIconImage;
+
+interface
+
+{$INCLUDE SVGIconImageList.inc}
+
+uses
+ Windows
+ , SysUtils
+{$IFDEF D10_4+}
+ , System.UITypes
+{$ENDIF}
+ , GDIPOBJ
+ , Classes
+ , Controls
+ , Graphics
+ , SVG
+ , SVGIconImageListBase;
+
+type
+ TSVGIconImage = class(TGraphicControl)
+ strict private
+ FSVG: TSVG;
+
+ FCenter: Boolean;
+ FProportional: Boolean;
+ FStretch: Boolean;
+ FAutoSize: Boolean;
+ FScale: Double;
+ FOpacity: Byte;
+ FFileName: TFileName;
+ FImageList: TSVGIconImageListBase;
+ FImageIndex: Integer;
+ procedure SetCenter(Value: Boolean);
+ procedure SetProportional(Value: Boolean);
+ procedure SetOpacity(Value: Byte);
+ procedure SetFileName(const Value: TFileName);
+ //procedure ReadData(Stream: TStream);
+ //procedure WriteData(Stream: TStream);
+ procedure SetImageIndex(const Value: Integer);
+ procedure SetStretch(const Value: Boolean);
+ procedure SetScale(const Value: Double);
+ procedure SetAutoSizeImage(const Value: Boolean);
+ private
+ function GetSVGText: string;
+ procedure SetSVGText(const AValue: string);
+ function StoreScale: Boolean;
+ function UsingSVGText: Boolean;
+ procedure SetImageList(const Value: TSVGIconImageListBase);
+ protected
+ //procedure DefineProperties(Filer: TFiler); override;
+ procedure Notification(AComponent: TComponent; Operation: TOperation); override;
+ procedure CheckAutoSize;
+ public
+ constructor Create(AOwner: TComponent); override;
+ destructor Destroy; override;
+ procedure Clear;
+ function Empty: Boolean;
+ procedure Paint; override;
+ procedure LoadFromFile(const FileName: string);
+ procedure LoadFromStream(Stream: TStream);
+ procedure SaveToFile(const FileName: string);
+ procedure Assign(Source: TPersistent); override;
+ property SVG: TSVG read FSVG;
+ published
+ property AutoSize: Boolean read FAutoSize write SetAutoSizeImage;
+ property Center: Boolean read FCenter write SetCenter default True;
+ property Proportional: Boolean read FProportional write SetProportional;
+ property Stretch: Boolean read FStretch write SetStretch default True;
+ property Opacity: Byte read FOpacity write SetOpacity default 255;
+ property Scale: Double read FScale write SetScale stored StoreScale;
+ property FileName: TFileName read FFileName write SetFileName;
+ property ImageList: TSVGIconImageListBase read FImageList write SetImageList;
+ property ImageIndex: Integer read FImageIndex write SetImageIndex default -1;
+ property SVGText: string read GetSVGText write SetSVGText stored UsingSVGText;
+ property Enabled;
+ property Visible;
+ property Constraints;
+ property Anchors;
+ property Align;
+
+ property OnClick;
+ property OnDblClick;
+ property OnMouseDown;
+ property OnMouseMove;
+ property OnMouseUp;
+ end;
+
+
+ TSVGGraphic = class(TGraphic)
+ strict private
+ FSVG: TSVG;
+ FOpacity: Byte;
+ FFileName: TFileName;
+
+ procedure SetOpacity(Value: Byte);
+ procedure SetFileName(const Value: TFileName);
+ protected
+ procedure DefineProperties(Filer: TFiler); override;
+
+ procedure Draw(ACanvas: TCanvas; const Rect: TRect); override;
+
+ function GetEmpty: Boolean; override;
+ function GetWidth: Integer; override;
+ function GetHeight: Integer; override;
+ procedure SetHeight(Value: Integer); override;
+ procedure SetWidth(Value: Integer); override;
+
+ procedure ReadData(Stream: TStream); override;
+ procedure WriteData(Stream: TStream); override;
+ public
+ constructor Create; override;
+ destructor Destroy; override;
+ procedure Clear;
+
+ procedure Assign(Source: TPersistent); override;
+ procedure AssignTo(Dest: TPersistent); override;
+
+ procedure AssignSVG(SVG: TSVG);
+
+ procedure LoadFromFile(const Filename: String); override;
+ procedure LoadFromStream(Stream: TStream); override;
+
+ procedure SaveToStream(Stream: TStream); override;
+
+ procedure LoadFromClipboardFormat(AFormat: Word; AData: THandle;
+ APalette: HPALETTE); override;
+ procedure SaveToClipboardFormat(var AFormat: Word; var AData: THandle;
+ var APalette: HPALETTE); override;
+
+ property Opacity: Byte read FOpacity write SetOpacity;
+ published
+ property FileName: TFileName read FFileName write SetFileName;
+ end;
+
+function TGPImageToBitmap(Image: TGPImage): TBitmap;
+
+implementation
+
+uses
+ Winapi.GDIPAPI,
+ SVGCommon;
+
+function TGPImageToBitmap(Image: TGPImage): TBitmap;
+var
+ Graphics: TGPGraphics;
+ Bitmap: TBitmap;
+ P: Pointer;
+ W, H: Cardinal;
+begin
+ Bitmap := nil;
+ if Assigned(Image) then
+ begin
+ W := Image.GetWidth;
+ H := Image.GetHeight;
+ if (W > 0) and (H > 0) then
+ begin
+ Bitmap := TBitmap.Create;
+ Bitmap.PixelFormat := pf32Bit;
+ Bitmap.Width := W;
+ Bitmap.Height := H;
+ P := Bitmap.ScanLine[H - 1];
+ FillChar(P^, (W * H) shl 2, 0);
+ Graphics := TGPGraphics.Create(Bitmap.Canvas.Handle);
+ try
+ Graphics.DrawImage(Image, 0, 0);
+ finally
+ Graphics.Free;
+ end;
+ end;
+ end;
+ Result := Bitmap;
+end;
+
+constructor TSVGIconImage.Create(AOwner: TComponent);
+begin
+ inherited;
+ FSVG := TSVG.Create;
+ FProportional := False;
+ FCenter := True;
+ FStretch := True;
+ FOpacity := 255;
+ FScale := 1;
+ FImageIndex := -1;
+end;
+
+destructor TSVGIconImage.Destroy;
+begin
+ FSVG.Free;
+ inherited;
+end;
+
+procedure TSVGIconImage.CheckAutoSize;
+begin
+ if FAutoSize and (FSVG.Width > 0) and (FSVG.Height > 0) then
+ begin
+ SetBounds(Left, Top, Round(FSVG.Width), Round(FSVG.Height));
+ end;
+end;
+
+procedure TSVGIconImage.Clear;
+begin
+ FSVG.Clear;
+ FFileName := '';
+ Repaint;
+end;
+
+function TSVGIconImage.Empty: Boolean;
+begin
+ Empty := FSVG.Count = 0;
+end;
+
+function TSVGIconImage.GetSVGText: string;
+begin
+ Result := FSVG.Source;
+end;
+
+function TSVGIconImage.UsingSVGText: Boolean;
+begin
+ Result := not (Assigned(FImageList) and (FImageIndex >= 0) and
+ (FImageIndex < FImagelist.Count));
+end;
+
+procedure TSVGIconImage.Paint;
+var
+ Bounds: TGPRectF;
+
+var
+ SVG: TSVG;
+begin
+ if not UsingSVGText then
+ SVG := FImageList.Images[FImageIndex]
+ else
+ SVG := FSVG;
+
+ if SVG.Count > 0 then
+ begin
+ Bounds := MakeRect(0.0, 0, Width, Height);
+ if FProportional then
+ Bounds := FittedRect(Bounds, SVG.Width, SVG.Height);
+
+ SVG.SVGOpacity := FOpacity / 255;
+ SVG.PaintTo(Canvas.Handle, Bounds, nil, 0);
+ SVG.SVGOpacity := 1;
+ end;
+
+ if csDesigning in ComponentState then
+ begin
+ Canvas.Brush.Style := bsClear;
+ Canvas.Pen.Style := psDash;
+ Canvas.Pen.Color := clBlack;
+ Canvas.Rectangle(0, 0, Width, Height);
+ end;
+end;
+
+procedure TSVGIconImage.LoadFromFile(const FileName: string);
+begin
+ if csLoading in ComponentState then
+ Exit;
+ try
+ FSVG.LoadFromFile(FileName);
+ FFileName := FileName;
+ except
+ Clear;
+ end;
+ CheckAutoSize;
+ Repaint;
+end;
+
+procedure TSVGIconImage.LoadFromStream(Stream: TStream);
+begin
+ try
+ FFileName := '';
+ FSVG.LoadFromStream(Stream);
+ except
+ end;
+ CheckAutoSize;
+ Repaint;
+end;
+
+procedure TSVGIconImage.Notification(AComponent: TComponent; Operation: TOperation);
+begin
+ inherited;
+ if (Operation = opRemove) and (AComponent = FImageList) then
+ FImageList := nil;
+end;
+
+procedure TSVGIconImage.Assign(Source: TPersistent);
+var
+ SVG: TSVG;
+begin
+ if (Source is TSVGIconImage) then
+ begin
+ SVG := (Source as TSVGIconImage).FSVG;
+ FSVG.LoadFromText(SVG.Source);
+ FImageIndex := -1;
+ CheckAutoSize;
+ end;
+
+ if (Source.ClassType = TSVG) then
+ begin
+ SVG := TSVG(Source);
+ FSVG.LoadFromText(SVG.Source);
+ FImageIndex := -1;
+ end;
+
+ Repaint;
+end;
+
+procedure TSVGIconImage.SaveToFile(const FileName: string);
+begin
+ FSVG.SaveToFile(FileName);
+end;
+
+procedure TSVGIconImage.SetAutoSizeImage(const Value: Boolean);
+begin
+ if (Value = FAutoSize) then
+ Exit;
+ FAutoSize := Value;
+
+ CheckAutoSize;
+end;
+
+procedure TSVGIconImage.SetCenter(Value: Boolean);
+begin
+ if Value = FCenter then
+ Exit;
+
+ FCenter := Value;
+ Repaint;
+end;
+
+procedure TSVGIconImage.SetProportional(Value: Boolean);
+begin
+ if Value = FProportional then
+ Exit;
+
+ FProportional := Value;
+ Repaint;
+end;
+
+procedure TSVGIconImage.SetScale(const Value: Double);
+begin
+ if Value = FScale then
+ Exit;
+ FScale := Value;
+ FAutoSize := False;
+ Repaint;
+end;
+
+procedure TSVGIconImage.SetStretch(const Value: Boolean);
+begin
+ if Value = FStretch then
+ Exit;
+
+ FStretch := Value;
+ if FStretch then
+ FAutoSize := False;
+ Repaint;
+end;
+
+procedure TSVGIconImage.SetSVGText(const AValue: string);
+begin
+ FSVG.LoadFromText(AValue);
+ Repaint;
+end;
+
+function TSVGIconImage.StoreScale: Boolean;
+begin
+ Result := FScale <> 1;
+end;
+
+procedure TSVGIconImage.SetOpacity(Value: Byte);
+begin
+ if Value = FOpacity then
+ Exit;
+
+ FOpacity := Value;
+ Repaint;
+end;
+
+procedure TSVGIconImage.SetFileName(const Value: TFileName);
+begin
+ if Value = FFileName then
+ Exit;
+ LoadFromFile(Value);
+end;
+
+procedure TSVGIconImage.SetImageIndex(const Value: Integer);
+begin
+ if FImageIndex = Value then
+ Exit;
+ FImageIndex := Value;
+ CheckAutoSize;
+ Repaint;
+end;
+
+procedure TSVGIconImage.SetImageList(const Value: TSVGIconImageListBase);
+begin
+ FImageList := Value;
+ SVGText := '';
+end;
+
+constructor TSVGGraphic.Create;
+begin
+ inherited;
+ FSVG := TSVG.Create;
+ FOpacity := 255;
+end;
+
+destructor TSVGGraphic.Destroy;
+begin
+ FSVG.Free;
+ inherited;
+end;
+
+procedure TSVGGraphic.Clear;
+begin
+ FSVG.Clear;
+ FFileName := '';
+ Changed(Self);
+end;
+
+procedure TSVGGraphic.Assign(Source: TPersistent);
+begin
+ if (Source is TSVGGraphic) then
+ begin
+ try
+ //AssignSVG(TSVGGraphic(Source).FSVG);
+ FSVG.Free;
+ FSVG := TSVG(TSVGGraphic(Source).FSVG.Clone(nil));
+ except
+ end;
+ Changed(Self);
+ end;
+end;
+
+procedure TSVGGraphic.AssignSVG(SVG: TSVG);
+begin
+ FSVG.LoadFromText(SVG.Source);
+ Changed(Self);
+end;
+
+procedure TSVGGraphic.AssignTo(Dest: TPersistent);
+begin
+ if Dest is TSVGGraphic then
+ TSVGGraphic(Dest).Assign(Self);
+end;
+
+procedure TSVGGraphic.SetOpacity(Value: Byte);
+begin
+ if Value = FOpacity then
+ Exit;
+
+ FOpacity := Value;
+ Changed(Self);
+end;
+
+procedure TSVGGraphic.SetWidth(Value: Integer);
+begin
+ inherited;
+
+end;
+
+procedure TSVGGraphic.SetFileName(const Value: TFileName);
+begin
+ if Value = FFileName then
+ Exit;
+
+ LoadFromFile(Value);
+end;
+
+procedure TSVGGraphic.SetHeight(Value: Integer);
+begin
+ inherited;
+
+end;
+
+procedure TSVGGraphic.ReadData(Stream: TStream);
+var
+ Size: LongInt;
+ MemStream: TMemoryStream;
+begin
+ Stream.Read(Size, SizeOf(Size));
+ MemStream := TMemoryStream.Create;
+ try
+ MemStream.CopyFrom(Stream, Size);
+ MemStream.Position := 0;
+ FSVG.LoadFromStream(MemStream);
+ finally
+ MemStream.Free;
+ end;
+end;
+
+procedure TSVGGraphic.WriteData(Stream: TStream);
+var
+ Size: LongInt;
+ MemStream: TMemoryStream;
+begin
+ MemStream := TMemoryStream.Create;
+ try
+ FSVG.SaveToStream(MemStream);
+ Size := MemStream.Size;
+ Stream.Write(Size, SizeOf(Size));
+ MemStream.Position := 0;
+ MemStream.SaveToStream(Stream);
+ finally
+ MemStream.Free;
+ end;
+end;
+
+procedure TSVGGraphic.DefineProperties(Filer: TFiler);
+begin
+ Filer.DefineBinaryProperty('Data', ReadData, WriteData, True);
+end;
+
+procedure TSVGGraphic.Draw(ACanvas: TCanvas; const Rect: TRect);
+var
+ Bounds: TGPRectF;
+begin
+ if Empty then
+ Exit;
+
+ Bounds := MakeRect(Rect.Left + 0.0, Rect.Top,
+ Rect.Right - Rect.Left, Rect.Bottom - Rect.Top);
+
+ FSVG.SVGOpacity := FOpacity / 255;
+ FSVG.PaintTo(ACanvas.Handle, Bounds, nil, 0);
+end;
+
+
+function TSVGGraphic.GetEmpty: Boolean;
+begin
+ Result := FSVG.Count = 0;
+end;
+
+function TSVGGraphic.GetWidth: Integer;
+begin
+ Result := Round(FSVG.Width);
+end;
+
+function TSVGGraphic.GetHeight: Integer;
+begin
+ Result := Round(FSVG.Height);
+end;
+
+procedure TSVGGraphic.LoadFromClipboardFormat(AFormat: Word; AData: THandle;
+ APalette: HPALETTE);
+begin
+ inherited;
+
+end;
+
+procedure TSVGGraphic.LoadFromFile(const Filename: String);
+begin
+ FSVG.LoadFromFile(Filename);
+ Changed(Self);
+end;
+
+procedure TSVGGraphic.LoadFromStream(Stream: TStream);
+begin
+ try
+ FSVG.LoadFromStream(Stream);
+ except
+ end;
+ Changed(Self);
+end;
+
+procedure TSVGGraphic.SaveToClipboardFormat(var AFormat: Word;
+ var AData: THandle; var APalette: HPALETTE);
+begin
+ inherited;
+
+end;
+
+procedure TSVGGraphic.SaveToStream(Stream: TStream);
+begin
+ FSVG.SaveToStream(Stream);
+end;
+
+
+initialization
+ TPicture.RegisterFileFormat('SVG', 'Scalable Vector Graphics', TSVGGraphic);
+
+finalization
+ TPicture.UnregisterGraphicClass(TSVGGraphic);
+end.
diff --git a/Source/SVGIconImageList.inc b/Source/SVGIconImageList.inc
index 9a99e588..99e81ebb 100644
--- a/Source/SVGIconImageList.inc
+++ b/Source/SVGIconImageList.inc
@@ -1,138 +1,138 @@
-// Delphi XE4
-{$IFDEF VER250}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
-{$ENDIF}
-
-// Delphi XE5
-{$IFDEF VER260}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
- {$DEFINE DXE5+}
-{$ENDIF}
-
-// Delphi XE6
-{$IFDEF VER270}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
- {$DEFINE DXE5+}
- {$DEFINE DXE6+}
-{$ENDIF}
-
-// Delphi XE7
-{$IFDEF VER280}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
- {$DEFINE DXE5+}
- {$DEFINE DXE6+}
- {$DEFINE DXE7+}
-{$ENDIF}
-
-// Delphi XE8
-{$IFDEF VER290}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
- {$DEFINE DXE5+}
- {$DEFINE DXE6+}
- {$DEFINE DXE7+}
- {$DEFINE DXE8+}
-{$ENDIF}
-
-// Delphi 10 Seattle
-{$IFDEF VER300}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
- {$DEFINE DXE5+}
- {$DEFINE DXE6+}
- {$DEFINE DXE7+}
- {$DEFINE DXE8+}
- {$DEFINE D10_0+}
-{$ENDIF}
-
-// Delphi 10.1 Berlin
-{$IFDEF VER310}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
- {$DEFINE DXE5+}
- {$DEFINE DXE6+}
- {$DEFINE DXE7+}
- {$DEFINE DXE8+}
- {$DEFINE D10_0+}
- {$DEFINE D10_1+}
-{$ENDIF}
-
-// Delphi 10.2 Tokyo
-{$IFDEF VER320}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
- {$DEFINE DXE5+}
- {$DEFINE DXE6+}
- {$DEFINE DXE7+}
- {$DEFINE DXE8+}
- {$DEFINE D10_0+}
- {$DEFINE D10_1+}
- {$DEFINE D10_2+}
-{$ENDIF}
-
-// Delphi 10.3 Rio
-{$IFDEF VER330}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
- {$DEFINE DXE5+}
- {$DEFINE DXE6+}
- {$DEFINE DXE7+}
- {$DEFINE DXE8+}
- {$DEFINE D10_0+}
- {$DEFINE D10_1+}
- {$DEFINE D10_2+}
- {$DEFINE D10_3+}
-{$ENDIF}
-
-// Delphi 10.4 Sydney
-{$IFDEF VER340}
- {$DEFINE D2010+}
- {$DEFINE DXE+}
- {$DEFINE DXE2+}
- {$DEFINE DXE3+}
- {$DEFINE DXE4+}
- {$DEFINE DXE5+}
- {$DEFINE DXE6+}
- {$DEFINE DXE7+}
- {$DEFINE DXE8+}
- {$DEFINE D10_0+}
- {$DEFINE D10_1+}
- {$DEFINE D10_2+}
- {$DEFINE D10_3+}
- {$DEFINE D10_4+}
-{$ENDIF}
-
-{$IFDEF D10_3+}
- {$Define HiDPISupport}
-{$ENDIF}
+// Delphi XE4
+{$IFDEF VER250}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+{$ENDIF}
+
+// Delphi XE5
+{$IFDEF VER260}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+ {$DEFINE DXE5+}
+{$ENDIF}
+
+// Delphi XE6
+{$IFDEF VER270}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+ {$DEFINE DXE5+}
+ {$DEFINE DXE6+}
+{$ENDIF}
+
+// Delphi XE7
+{$IFDEF VER280}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+ {$DEFINE DXE5+}
+ {$DEFINE DXE6+}
+ {$DEFINE DXE7+}
+{$ENDIF}
+
+// Delphi XE8
+{$IFDEF VER290}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+ {$DEFINE DXE5+}
+ {$DEFINE DXE6+}
+ {$DEFINE DXE7+}
+ {$DEFINE DXE8+}
+{$ENDIF}
+
+// Delphi 10 Seattle
+{$IFDEF VER300}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+ {$DEFINE DXE5+}
+ {$DEFINE DXE6+}
+ {$DEFINE DXE7+}
+ {$DEFINE DXE8+}
+ {$DEFINE D10_0+}
+{$ENDIF}
+
+// Delphi 10.1 Berlin
+{$IFDEF VER310}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+ {$DEFINE DXE5+}
+ {$DEFINE DXE6+}
+ {$DEFINE DXE7+}
+ {$DEFINE DXE8+}
+ {$DEFINE D10_0+}
+ {$DEFINE D10_1+}
+{$ENDIF}
+
+// Delphi 10.2 Tokyo
+{$IFDEF VER320}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+ {$DEFINE DXE5+}
+ {$DEFINE DXE6+}
+ {$DEFINE DXE7+}
+ {$DEFINE DXE8+}
+ {$DEFINE D10_0+}
+ {$DEFINE D10_1+}
+ {$DEFINE D10_2+}
+{$ENDIF}
+
+// Delphi 10.3 Rio
+{$IFDEF VER330}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+ {$DEFINE DXE5+}
+ {$DEFINE DXE6+}
+ {$DEFINE DXE7+}
+ {$DEFINE DXE8+}
+ {$DEFINE D10_0+}
+ {$DEFINE D10_1+}
+ {$DEFINE D10_2+}
+ {$DEFINE D10_3+}
+{$ENDIF}
+
+// Delphi 10.4 Sydney
+{$IFDEF VER340}
+ {$DEFINE D2010+}
+ {$DEFINE DXE+}
+ {$DEFINE DXE2+}
+ {$DEFINE DXE3+}
+ {$DEFINE DXE4+}
+ {$DEFINE DXE5+}
+ {$DEFINE DXE6+}
+ {$DEFINE DXE7+}
+ {$DEFINE DXE8+}
+ {$DEFINE D10_0+}
+ {$DEFINE D10_1+}
+ {$DEFINE D10_2+}
+ {$DEFINE D10_3+}
+ {$DEFINE D10_4+}
+{$ENDIF}
+
+{$IFDEF D10_3+}
+ {$Define HiDPISupport}
+{$ENDIF}
diff --git a/Source/SVGIconUtils.pas b/Source/SVGIconUtils.pas
index 51c38fde..7a785732 100644
--- a/Source/SVGIconUtils.pas
+++ b/Source/SVGIconUtils.pas
@@ -1,149 +1,149 @@
-{******************************************************************************}
-{ }
-{ Icon SVG ImageList: An extended ImageList for Delphi/VCL }
-{ to simplify use of SVG Icons (resize, opacity and more...) }
-{ }
-{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
-{ Author: Carlo Barazzetta }
-{ Contributors: Vincent Parrett, Kiriakos Vlahos }
-{ }
-{ https://github.com/EtheaDev/SVGIconImageList }
-{ }
-{******************************************************************************}
-{ Original version (c) 2005, 2008 Martin Walter with license: }
-{ Use of this file is permitted for commercial and non-commercial }
-{ use, as long as the author is credited. }
-{ home page: http://www.mwcs.de }
-{ email : martin.walter@mwcs.de }
-{******************************************************************************}
-{ }
-{ Licensed under the Apache License, Version 2.0 (the "License"); }
-{ you may not use this file except in compliance with the License. }
-{ You may obtain a copy of the License at }
-{ }
-{ http://www.apache.org/licenses/LICENSE-2.0 }
-{ }
-{ Unless required by applicable law or agreed to in writing, software }
-{ distributed under the License is distributed on an "AS IS" BASIS, }
-{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
-{ See the License for the specific language governing permissions and }
-{ limitations under the License. }
-{ }
-{******************************************************************************}
-unit SVGIconUtils;
-
-interface
-
-{$INCLUDE SVGIconImageList.inc}
-
-uses
- Classes
- , ImgList
- , SVGIconImageListBase
- , SVGIconImageList
- , Graphics
- , ComCtrls;
-
-function UpdateSVGIconListView(const AListView: TListView;
- const AIncludeIndex: Boolean = True): Integer;
-function UpdateSVGIconListViewCaptions(const AListView: TListView;
- const AShowCaption: Boolean = True): Integer;
-
-implementation
-
-uses
- SysUtils
- , Windows
- , Themes
- {$IFDEF D10_3}
- , VirtualImageList
- {$ENDIF}
- ;
-
-function UpdateSVGIconListView(const AListView: TListView;
- const AIncludeIndex: Boolean = True): Integer;
-var
- I: Integer;
- LItem: TSVGIconItem;
- LListItem: TListItem;
- LImageList: TCustomImageList;
-
- function GetItemCaption: string;
- begin
- if AIncludeIndex then
- Result := Format('%d.%s', [LItem.Index, LItem.IconName])
- else
- Result := Format('%s', [LItem.IconName]);
- end;
-begin
- LImageList := AListView.LargeImages as TCustomImageList;
- AListView.Items.BeginUpdate;
- try
- AListView.Clear;
- Result := LImageList.Count;
- for I := 0 to Result -1 do
- begin
- if (LImageList is TSVGIconImageListBase) then
- begin
- LItem := TSVGIconImageListBase(LImageList).SVGIconItems[I];
- LListItem := AListView.Items.Add;
- LListItem.Caption := GetItemCaption;
- LListItem.ImageIndex := I;
- end;
- end;
- finally
- AListView.Items.EndUpdate;
- end;
-end;
-
-function UpdateSVGIconListViewCaptions(const AListView: TListView;
- const AShowCaption: Boolean = True): Integer;
-var
- I: Integer;
- LItem: TSVGIconItem;
- {$IFDEF D10_3}
- LVirtualItem: TVirtualImageListItem;
- {$ENDIF}
- LListItem: TListItem;
- LImageList: TCustomImageList;
-begin
- LImageList := AListView.LargeImages as TCustomImageList;
- AListView.Items.BeginUpdate;
- try
- Result := LImageList.Count;
- for I := 0 to Result -1 do
- begin
- if (LImageList is TSVGIconImageList) then
- begin
- LItem := TSVGIconImageList(LImageList).SVGIconItems[I];
- LListItem := AListView.Items[I];
- if AShowCaption then
- begin
- LListItem.Caption := Format('%d.%s',
- [LItem.Index, LItem.IconName]);
- end
- else
- LListItem.Caption := '';
- end;
- {$IFDEF D10_3}
- if (LImageList is TVirtualImageList) then
- begin
- LVirtualItem := TVirtualImageList(LImageList).Images.Items[I];
- LListItem := AListView.Items[I];
- if AShowCaption then
- begin
- LListItem.Caption := Format('%d.%s',
- [LVirtualItem.Index, LVirtualItem.Name]);
- end
- else
- LListItem.Caption := '';
- end;
- {$ENDIF}
- end;
- finally
- AListView.Items.EndUpdate;
- end;
-end;
-
-
-end.
+{******************************************************************************}
+{ }
+{ Icon SVG ImageList: An extended ImageList for Delphi/VCL }
+{ to simplify use of SVG Icons (resize, opacity and more...) }
+{ }
+{ Copyright (c) 2019-2020 (Ethea S.r.l.) }
+{ Author: Carlo Barazzetta }
+{ Contributors: Vincent Parrett, Kiriakos Vlahos }
+{ }
+{ https://github.com/EtheaDev/SVGIconImageList }
+{ }
+{******************************************************************************}
+{ Original version (c) 2005, 2008 Martin Walter with license: }
+{ Use of this file is permitted for commercial and non-commercial }
+{ use, as long as the author is credited. }
+{ home page: http://www.mwcs.de }
+{ email : martin.walter@mwcs.de }
+{******************************************************************************}
+{ }
+{ Licensed under the Apache License, Version 2.0 (the "License"); }
+{ you may not use this file except in compliance with the License. }
+{ You may obtain a copy of the License at }
+{ }
+{ http://www.apache.org/licenses/LICENSE-2.0 }
+{ }
+{ Unless required by applicable law or agreed to in writing, software }
+{ distributed under the License is distributed on an "AS IS" BASIS, }
+{ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. }
+{ See the License for the specific language governing permissions and }
+{ limitations under the License. }
+{ }
+{******************************************************************************}
+unit SVGIconUtils;
+
+interface
+
+{$INCLUDE SVGIconImageList.inc}
+
+uses
+ Classes
+ , ImgList
+ , SVGIconImageListBase
+ , SVGIconImageList
+ , Graphics
+ , ComCtrls;
+
+function UpdateSVGIconListView(const AListView: TListView;
+ const AIncludeIndex: Boolean = True): Integer;
+function UpdateSVGIconListViewCaptions(const AListView: TListView;
+ const AShowCaption: Boolean = True): Integer;
+
+implementation
+
+uses
+ SysUtils
+ , Windows
+ , Themes
+ {$IFDEF D10_3}
+ , VirtualImageList
+ {$ENDIF}
+ ;
+
+function UpdateSVGIconListView(const AListView: TListView;
+ const AIncludeIndex: Boolean = True): Integer;
+var
+ I: Integer;
+ LItem: TSVGIconItem;
+ LListItem: TListItem;
+ LImageList: TCustomImageList;
+
+ function GetItemCaption: string;
+ begin
+ if AIncludeIndex then
+ Result := Format('%d.%s', [LItem.Index, LItem.IconName])
+ else
+ Result := Format('%s', [LItem.IconName]);
+ end;
+begin
+ LImageList := AListView.LargeImages as TCustomImageList;
+ AListView.Items.BeginUpdate;
+ try
+ AListView.Clear;
+ Result := LImageList.Count;
+ for I := 0 to Result -1 do
+ begin
+ if (LImageList is TSVGIconImageListBase) then
+ begin
+ LItem := TSVGIconImageListBase(LImageList).SVGIconItems[I];
+ LListItem := AListView.Items.Add;
+ LListItem.Caption := GetItemCaption;
+ LListItem.ImageIndex := I;
+ end;
+ end;
+ finally
+ AListView.Items.EndUpdate;
+ end;
+end;
+
+function UpdateSVGIconListViewCaptions(const AListView: TListView;
+ const AShowCaption: Boolean = True): Integer;
+var
+ I: Integer;
+ LItem: TSVGIconItem;
+ {$IFDEF D10_3}
+ LVirtualItem: TVirtualImageListItem;
+ {$ENDIF}
+ LListItem: TListItem;
+ LImageList: TCustomImageList;
+begin
+ LImageList := AListView.LargeImages as TCustomImageList;
+ AListView.Items.BeginUpdate;
+ try
+ Result := LImageList.Count;
+ for I := 0 to Result -1 do
+ begin
+ if (LImageList is TSVGIconImageList) then
+ begin
+ LItem := TSVGIconImageList(LImageList).SVGIconItems[I];
+ LListItem := AListView.Items[I];
+ if AShowCaption then
+ begin
+ LListItem.Caption := Format('%d.%s',
+ [LItem.Index, LItem.IconName]);
+ end
+ else
+ LListItem.Caption := '';
+ end;
+ {$IFDEF D10_3}
+ if (LImageList is TVirtualImageList) then
+ begin
+ LVirtualItem := TVirtualImageList(LImageList).Images.Items[I];
+ LListItem := AListView.Items[I];
+ if AShowCaption then
+ begin
+ LListItem.Caption := Format('%d.%s',
+ [LVirtualItem.Index, LVirtualItem.Name]);
+ end
+ else
+ LListItem.Caption := '';
+ end;
+ {$ENDIF}
+ end;
+ finally
+ AListView.Items.EndUpdate;
+ end;
+end;
+
+
+end.
diff --git a/Svg/BitmapCodecSVG.pas b/Svg/BitmapCodecSVG.pas
index 39c7d4e7..f5d58b55 100644
--- a/Svg/BitmapCodecSVG.pas
+++ b/Svg/BitmapCodecSVG.pas
@@ -1,234 +1,234 @@
-// This unit requires at least Delphi 10.3.2 to work
-unit BitmapCodecSVG;
-
-interface
-
-implementation
-
-uses
- Winapi.Windows, Winapi.GDIPAPI, Winapi.GDIPOBJ,
- System.Types, System.SysUtils, System.Classes,
- FMX.Types, FMX.Graphics, FMX.Surfaces,
- SVGTypes, SVG;
-
-type
- TBitmapCodecSVG = class(TCustomBitmapCodec)
- strict private
- function CopyToSurface(const ASVG: TSVG; const Bitmap: TBitmapSurface): Boolean;
- class procedure InitGDIPlus;
- public
- class constructor Create;
- class function GetImageSize(const AFileName: string): TPointF; override;
- class function IsValid(const AStream: TStream): Boolean; override;
- function LoadFromFile(const AFileName: string; const Bitmap: TBitmapSurface;
- const MaxSizeLimit: Cardinal): Boolean; override;
- function SaveToFile(const AFileName: string; const Bitmap: TBitmapSurface;
- const SaveParams: PBitmapCodecSaveParams = nil): Boolean; override;
- function LoadThumbnailFromFile(const AFileName: string; const AFitWidth, AFitHeight: Single;
- const UseEmbedded: Boolean; const Bitmap: TBitmapSurface): Boolean; override;
- function LoadFromStream(const AStream: TStream; const Bitmap: TBitmapSurface;
- const MaxSizeLimit: Cardinal): Boolean; override;
- function SaveToStream(const AStream: TStream; const Bitmap: TBitmapSurface; const Extension: string;
- const SaveParams: PBitmapCodecSaveParams = nil): Boolean; override;
- end;
-
-const
- SSVGImageExtension = '.svg'; // do not localize
- SVSVG = 'SVG files';
-
-procedure DebugGDIPlus(level: DebugEventLevel; message: PChar); stdcall;
-begin
- OutputDebugString(PChar('DebugGDIPlus ' + message));
-end;
-
-
-class procedure TBitmapCodecSVG.InitGDIPlus;
-var
- Status: TStatus;
-begin
- // Initialize StartupInput structure
- StartupInput.DebugEventCallback := DebugGDIPlus;
- StartupInput.SuppressBackgroundThread := False;
- StartupInput.SuppressExternalCodecs := False;
- StartupInput.GdiplusVersion := 1;
-
- Status := GdiplusStartup(gdiplusToken, @StartupInput, nil);
- OutputDebugString(PChar('InitGDIPlus.Status=' + IntToStr(Ord(Status))));
-end;
-
-class constructor TBitmapCodecSVG.Create;
-begin
-end;
-
-class function TBitmapCodecSVG.GetImageSize(const AFileName: string): TPointF;
-var
- SVG: TSVG;
-begin
- SVG := TSVG.Create;
- try
- try
- SVG.LoadFromFile(AFileName);
- Result := TPointF.Create(SVG.Width, SVG.Height);
- finally
- SVG.Free;
- end;
- except
- Result := TPointF.Create(0, 0);
- end;
-end;
-
-class function TBitmapCodecSVG.IsValid(const AStream: TStream): Boolean;
-var
- SVG: TSVG;
-begin
- OutputDebugString('IsValid');
- SVG := TSVG.Create;
- try
- try
- SVG.LoadFromStream(AStream);
- Result := (SVG.Width > 0) and (SVG.Height > 0);
- OutputDebugString(PChar(BoolToStr(Result, True)));
- finally
- SVG.Free;
- end;
- except
- Result := False;
- end;
-end;
-
-function TBitmapCodecSVG.LoadFromFile(const AFileName: string; const Bitmap: TBitmapSurface;
- const MaxSizeLimit: Cardinal): Boolean;
-var
- Stream: TFileStream;
-begin
- OutputDebugString('LoadFromFile');
- Stream := TFileStream.Create(AFileName, fmOpenRead);
- try
- Result := LoadFromStream(Stream, Bitmap, MaxSizeLimit);
- finally
- Stream.Free;
- end;
-end;
-
-function TBitmapCodecSVG.SaveToFile(const AFileName: string; const Bitmap: TBitmapSurface;
- const SaveParams: PBitmapCodecSaveParams = nil): Boolean;
-begin
- Result := False;
-end;
-
-function TBitmapCodecSVG.LoadThumbnailFromFile(const AFileName: string;
- const AFitWidth, AFitHeight: Single; const UseEmbedded: Boolean;
- const Bitmap: TBitmapSurface): Boolean;
-begin
- OutputDebugString('LoadThumbnailFromFile');
- Result := False;
-end;
-
-function TBitmapCodecSVG.CopyToSurface(const ASVG: TSVG; const Bitmap: TBitmapSurface): Boolean;
-var
- GPGraphics: TGPGraphics;
- GPBitmap: TGPBitmap;
- GPRectF: TGPRectF;
- RectArray: TRectarray;
- GPRect: TGPRect;
- GPBitmapData: Winapi.GDIPAPI.TBitmapData;
- Source: PByte;
- Dest: PByte;
- Y: Integer;
- Status: TStatus;
- IntWidth: Integer;
- IntHeight: Integer;
-begin
- Result := False;
- IntWidth := Trunc(ASVG.Width);
- IntHeight := Trunc(ASVG.Height);
- OutputDebugString(PChar('CopyToSurface ' + IntToStr(IntWidth) + ' ' + IntToStr(IntHeight)));
- GPBitmap := TGPBitmap.Create(IntWidth, IntHeight);
- Status := GPBitmap.GetLastStatus;
- if Status <> TStatus.Ok then
- begin
- OutputDebugString(PChar('GPBitmap ' + IntToStr(Ord(Status))));
- Exit;
- end;
-
- GPGraphics := TGPGraphics.Create(GPBitmap);
- try
- Status := GPGraphics.SetSmoothingMode(SmoothingModeAntiAlias);
- OutputDebugString(PChar('SetSmoothingMode ' + IntToStr(Ord(Status))));
-
- GPRectF.X := 0;
- GPRectF.Y := 0;
- GPRectF.Width := ASVG.Width;
- GPRectF.Height := ASVG.Height;
-
- RectArray := TRectArray.Create(TRect.Create(0, 0, Trunc(ASVG.Width), Trunc(ASVG.Height)));
- ASVG.PaintTo(GPGraphics, GPRectF, @RectArray, 1);
-
- GPRect.X := 0;
- GPRect.Y := 0;
- GPRect.Width := GPBitmap.GetWidth;
- GPRect.Height := GPBitmap.GetHeight;
-
- OutputDebugString(PChar('CopyToSurface.GPRectWidth '+ IntToStr(GPRect.Width)));
- Status := GPBitmap.LockBits(GPRect, ImageLockModeRead, PixelFormat32bppPARGB, GPBitmapData);
- if Status = TStatus.Ok then
- begin
- Bitmap.SetSize(Trunc(ASVG.Width), Trunc(ASVG.Height), TPixelFormat.BGRA);
- Source := GPBitmapData.Scan0;
- Dest := Bitmap.Bits;
- for Y := 0 to GPBitmapData.Height - 1 do
- begin
- Move(Source^, Dest^, GPBitmapData.Stride);
- Source := Source + GPBitmapData.Stride;
- Dest := Dest + Bitmap.Pitch;
- end;
-
- GPBitmap.UnlockBits(GPBitmapData);
- Result := True;
- end
- else
- begin
- OutputDebugString(PChar('CopyToSurface.Lockbits error ' + IntToStr(Ord(Status))));
- end;
- finally
- GPGraphics.Free;
- GPBitmap.Free;
- end;
-end;
-
-function TBitmapCodecSVG.LoadFromStream(const AStream: TStream; const Bitmap: TBitmapSurface;
- const MaxSizeLimit: Cardinal): Boolean;
-var
- SVG: TSVG;
-begin
- InitGDIPlus;
- OutputDebugString('LoadFromStream');
- try
- SVG := TSVG.Create;
- try
- SVG.LoadFromStream(AStream);
- Result := CopyToSurface(SVG, Bitmap);
- finally
- SVG.Free;
- end;
- except
- on E: Exception do
- begin
- OutputDebugString(PChar('LoadFromStream.E ' + E.Message));
- Result := False;
- end;
- end;
-end;
-
-function TBitmapCodecSVG.SaveToStream(const AStream: TStream; const Bitmap: TBitmapSurface;
- const Extension: string; const SaveParams: PBitmapCodecSaveParams = nil): Boolean;
-begin
- Result := False;
-end;
-
-initialization
- TBitmapCodecManager.RegisterBitmapCodecClass(SSVGImageExtension, SVSVG, True,
- TBitmapCodecSVG);
-finalization
- TBitmapCodecManager.UnregisterBitmapCodecClass(SSVGImageExtension);
-end.
+// This unit requires at least Delphi 10.3.2 to work
+unit BitmapCodecSVG;
+
+interface
+
+implementation
+
+uses
+ Winapi.Windows, Winapi.GDIPAPI, Winapi.GDIPOBJ,
+ System.Types, System.SysUtils, System.Classes,
+ FMX.Types, FMX.Graphics, FMX.Surfaces,
+ SVGTypes, SVG;
+
+type
+ TBitmapCodecSVG = class(TCustomBitmapCodec)
+ strict private
+ function CopyToSurface(const ASVG: TSVG; const Bitmap: TBitmapSurface): Boolean;
+ class procedure InitGDIPlus;
+ public
+ class constructor Create;
+ class function GetImageSize(const AFileName: string): TPointF; override;
+ class function IsValid(const AStream: TStream): Boolean; override;
+ function LoadFromFile(const AFileName: string; const Bitmap: TBitmapSurface;
+ const MaxSizeLimit: Cardinal): Boolean; override;
+ function SaveToFile(const AFileName: string; const Bitmap: TBitmapSurface;
+ const SaveParams: PBitmapCodecSaveParams = nil): Boolean; override;
+ function LoadThumbnailFromFile(const AFileName: string; const AFitWidth, AFitHeight: Single;
+ const UseEmbedded: Boolean; const Bitmap: TBitmapSurface): Boolean; override;
+ function LoadFromStream(const AStream: TStream; const Bitmap: TBitmapSurface;
+ const MaxSizeLimit: Cardinal): Boolean; override;
+ function SaveToStream(const AStream: TStream; const Bitmap: TBitmapSurface; const Extension: string;
+ const SaveParams: PBitmapCodecSaveParams = nil): Boolean; override;
+ end;
+
+const
+ SSVGImageExtension = '.svg'; // do not localize
+ SVSVG = 'SVG files';
+
+procedure DebugGDIPlus(level: DebugEventLevel; message: PChar); stdcall;
+begin
+ OutputDebugString(PChar('DebugGDIPlus ' + message));
+end;
+
+
+class procedure TBitmapCodecSVG.InitGDIPlus;
+var
+ Status: TStatus;
+begin
+ // Initialize StartupInput structure
+ StartupInput.DebugEventCallback := DebugGDIPlus;
+ StartupInput.SuppressBackgroundThread := False;
+ StartupInput.SuppressExternalCodecs := False;
+ StartupInput.GdiplusVersion := 1;
+
+ Status := GdiplusStartup(gdiplusToken, @StartupInput, nil);
+ OutputDebugString(PChar('InitGDIPlus.Status=' + IntToStr(Ord(Status))));
+end;
+
+class constructor TBitmapCodecSVG.Create;
+begin
+end;
+
+class function TBitmapCodecSVG.GetImageSize(const AFileName: string): TPointF;
+var
+ SVG: TSVG;
+begin
+ SVG := TSVG.Create;
+ try
+ try
+ SVG.LoadFromFile(AFileName);
+ Result := TPointF.Create(SVG.Width, SVG.Height);
+ finally
+ SVG.Free;
+ end;
+ except
+ Result := TPointF.Create(0, 0);
+ end;
+end;
+
+class function TBitmapCodecSVG.IsValid(const AStream: TStream): Boolean;
+var
+ SVG: TSVG;
+begin
+ OutputDebugString('IsValid');
+ SVG := TSVG.Create;
+ try
+ try
+ SVG.LoadFromStream(AStream);
+ Result := (SVG.Width > 0) and (SVG.Height > 0);
+ OutputDebugString(PChar(BoolToStr(Result, True)));
+ finally
+ SVG.Free;
+ end;
+ except
+ Result := False;
+ end;
+end;
+
+function TBitmapCodecSVG.LoadFromFile(const AFileName: string; const Bitmap: TBitmapSurface;
+ const MaxSizeLimit: Cardinal): Boolean;
+var
+ Stream: TFileStream;
+begin
+ OutputDebugString('LoadFromFile');
+ Stream := TFileStream.Create(AFileName, fmOpenRead);
+ try
+ Result := LoadFromStream(Stream, Bitmap, MaxSizeLimit);
+ finally
+ Stream.Free;
+ end;
+end;
+
+function TBitmapCodecSVG.SaveToFile(const AFileName: string; const Bitmap: TBitmapSurface;
+ const SaveParams: PBitmapCodecSaveParams = nil): Boolean;
+begin
+ Result := False;
+end;
+
+function TBitmapCodecSVG.LoadThumbnailFromFile(const AFileName: string;
+ const AFitWidth, AFitHeight: Single; const UseEmbedded: Boolean;
+ const Bitmap: TBitmapSurface): Boolean;
+begin
+ OutputDebugString('LoadThumbnailFromFile');
+ Result := False;
+end;
+
+function TBitmapCodecSVG.CopyToSurface(const ASVG: TSVG; const Bitmap: TBitmapSurface): Boolean;
+var
+ GPGraphics: TGPGraphics;
+ GPBitmap: TGPBitmap;
+ GPRectF: TGPRectF;
+ RectArray: TRectarray;
+ GPRect: TGPRect;
+ GPBitmapData: Winapi.GDIPAPI.TBitmapData;
+ Source: PByte;
+ Dest: PByte;
+ Y: Integer;
+ Status: TStatus;
+ IntWidth: Integer;
+ IntHeight: Integer;
+begin
+ Result := False;
+ IntWidth := Trunc(ASVG.Width);
+ IntHeight := Trunc(ASVG.Height);
+ OutputDebugString(PChar('CopyToSurface ' + IntToStr(IntWidth) + ' ' + IntToStr(IntHeight)));
+ GPBitmap := TGPBitmap.Create(IntWidth, IntHeight);
+ Status := GPBitmap.GetLastStatus;
+ if Status <> TStatus.Ok then
+ begin
+ OutputDebugString(PChar('GPBitmap ' + IntToStr(Ord(Status))));
+ Exit;
+ end;
+
+ GPGraphics := TGPGraphics.Create(GPBitmap);
+ try
+ Status := GPGraphics.SetSmoothingMode(SmoothingModeAntiAlias);
+ OutputDebugString(PChar('SetSmoothingMode ' + IntToStr(Ord(Status))));
+
+ GPRectF.X := 0;
+ GPRectF.Y := 0;
+ GPRectF.Width := ASVG.Width;
+ GPRectF.Height := ASVG.Height;
+
+ RectArray := TRectArray.Create(TRect.Create(0, 0, Trunc(ASVG.Width), Trunc(ASVG.Height)));
+ ASVG.PaintTo(GPGraphics, GPRectF, @RectArray, 1);
+
+ GPRect.X := 0;
+ GPRect.Y := 0;
+ GPRect.Width := GPBitmap.GetWidth;
+ GPRect.Height := GPBitmap.GetHeight;
+
+ OutputDebugString(PChar('CopyToSurface.GPRectWidth '+ IntToStr(GPRect.Width)));
+ Status := GPBitmap.LockBits(GPRect, ImageLockModeRead, PixelFormat32bppPARGB, GPBitmapData);
+ if Status = TStatus.Ok then
+ begin
+ Bitmap.SetSize(Trunc(ASVG.Width), Trunc(ASVG.Height), TPixelFormat.BGRA);
+ Source := GPBitmapData.Scan0;
+ Dest := Bitmap.Bits;
+ for Y := 0 to GPBitmapData.Height - 1 do
+ begin
+ Move(Source^, Dest^, GPBitmapData.Stride);
+ Source := Source + GPBitmapData.Stride;
+ Dest := Dest + Bitmap.Pitch;
+ end;
+
+ GPBitmap.UnlockBits(GPBitmapData);
+ Result := True;
+ end
+ else
+ begin
+ OutputDebugString(PChar('CopyToSurface.Lockbits error ' + IntToStr(Ord(Status))));
+ end;
+ finally
+ GPGraphics.Free;
+ GPBitmap.Free;
+ end;
+end;
+
+function TBitmapCodecSVG.LoadFromStream(const AStream: TStream; const Bitmap: TBitmapSurface;
+ const MaxSizeLimit: Cardinal): Boolean;
+var
+ SVG: TSVG;
+begin
+ InitGDIPlus;
+ OutputDebugString('LoadFromStream');
+ try
+ SVG := TSVG.Create;
+ try
+ SVG.LoadFromStream(AStream);
+ Result := CopyToSurface(SVG, Bitmap);
+ finally
+ SVG.Free;
+ end;
+ except
+ on E: Exception do
+ begin
+ OutputDebugString(PChar('LoadFromStream.E ' + E.Message));
+ Result := False;
+ end;
+ end;
+end;
+
+function TBitmapCodecSVG.SaveToStream(const AStream: TStream; const Bitmap: TBitmapSurface;
+ const Extension: string; const SaveParams: PBitmapCodecSaveParams = nil): Boolean;
+begin
+ Result := False;
+end;
+
+initialization
+ TBitmapCodecManager.RegisterBitmapCodecClass(SSVGImageExtension, SVSVG, True,
+ TBitmapCodecSVG);
+finalization
+ TBitmapCodecManager.UnregisterBitmapCodecClass(SSVGImageExtension);
+end.
diff --git a/Svg/GDIPKerning.pas b/Svg/GDIPKerning.pas
index 36f83994..66b570ee 100644
--- a/Svg/GDIPKerning.pas
+++ b/Svg/GDIPKerning.pas
@@ -1,607 +1,607 @@
-{******************************************************************}
-{ GDIPKerning }
-{ }
-{ home page : http://www.mwcs.de }
-{ email : martin.walter@mwcs.de }
-{ }
-{ date : 20-11-2007 }
-{ }
-{ version : 1.1 }
-{ }
-{ Use of this file is permitted for commercial and non-commercial }
-{ use, as long as the author is credited. }
-{ This file (c) 2007 Martin Walter }
-{ }
-{ This Software is distributed on an "AS IS" basis, WITHOUT }
-{ WARRANTY OF ANY KIND, either express or implied. }
-{ }
-{ *****************************************************************}
-
-unit GDIPKerning;
-
-interface
-
-uses
- Winapi.Windows, System.Classes, Winapi.GDIPAPI, Winapi.GDIPOBJ;
-
-type
- TKerningPairs = array of TKerningPair;
- PKerningPairs = ^TKerningPairs;
-
- TKerning = record
- Chars: Cardinal;
- Cell: Integer;
- Kerning: Integer;
- end;
-
- PKerning = ^TKerning;
-
- TGPKerningText = class(TObject)
- private
- FKerningList: TList;
- FKerningPairs: TKerningPairs;
- FPairCount: Integer;
- FLastFont: WideString;
- FLastWeight: Integer;
- FLastStyle: Integer;
- FFontSizeFactor: Single;
-
- FFont: HFont;
- FOldFont: HFont;
- FDC: HDC;
- FGPFont: TGPFont;
-
- procedure PrepareDC;
- procedure UnprepareDC;
- procedure PrepareFont(const LF: TLogFontW);
- procedure UnprepareFont;
- procedure PrepareKerning(const Font: TGPFont); overload;
- procedure PrepareKerning(const Font: TGPFont; const Graphics: TGPGraphics;
- WithFactor: Boolean); overload;
- procedure UnprepareKerning;
- procedure ClearKerningList;
- procedure AddToKerningList(const First, Second: Word;
- Cell, Kerning: Integer);
- function IndexOfKerning(const First, Second: Word): Integer;
-
- function GetDistance(const Index: Integer;
- const DistanceFactor, KerningFactor: Single): Single;
-
- procedure Clear;
-
- function AddGlyphToPath(const Path: TGPGraphicsPath; const Char: WideChar;
- const Family: TGPFontFamily; const Style: Integer; const Size: Single;
- const Origin: TGPPointF; const Format: TGPStringFormat): TStatus;
-
- function AddGlyphToGraphics(const Graphics: TGPGraphics;
- const Char: WideChar; const Font: TGPFont; const Origin: TGPPointF;
- const Format: TGPStringFormat; const Brush: TGPBrush): TStatus;
-
- procedure AddUnderline(const Path: TGPGraphicsPath;
- const Left, Top, Width: Single; const Font: TGPFont);
-
- procedure AddStrikeOut(const Path: TGPGraphicsPath;
- const Left, Top, Width: Single; const Font: TGPFont);
- public
- constructor Create;
- destructor Destroy; override;
-
- function AddToPath(const Path, UPath, SPath: TGPGraphicsPath;
- const Text: WideString; const Family: TGPFontFamily; Style: Integer;
- const Size: Single; Origin: TGPPointF; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1;
- const KerningFactor: Single = 1): TStatus; overload;
-
- function AddToPath(const Path, UPath, SPath: TGPGraphicsPath;
- const Text: WideString; const Family: TGPFontFamily; Style: Integer;
- const Size: Single; Origin: TGPPoint; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1;
- const KerningFactor: Single = 1): TStatus; overload;
-
- function AddToPath(const Path: TGPGraphicsPath; const Text: WideString;
- const Family: TGPFontFamily; Style: Integer; const Size: Single;
- Origin: TGPPointF; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1;
- const KerningFactor: Single = 1): TStatus; overload;
-
- function AddToPath(const Path: TGPGraphicsPath; const Text: WideString;
- const Family: TGPFontFamily; const Style: Integer; const Size: Single;
- Origin: TGPPoint; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1;
- const KerningFactor: Single = 1): TStatus; overload;
-
- function AddToGraphics(const Graphics: TGPGraphics;
- const Text: WideString; const Font: TGPFont; Origin: TGPPointF;
- const Format: TGPStringFormat; const Brush: TGPBrush;
- const DistanceFactor: Single = 1;
- const KerningFactor: Single = 1): TStatus; overload;
-
- function AddToGraphics(const Graphics: TGPGraphics;
- const Text: WideString; const Font: TGPFont; Origin: TGPPoint;
- const Format: TGPStringFormat; const Brush: TGPBrush;
- const DistanceFactor: Single = 1;
- const KerningFactor: Single = 1): TStatus; overload;
-
- function MeasureText(const Text: WideString; const Font: TGPFont;
- const DistanceFactor: Single = 1;
- const KerningFactor: Single = 1): Single;
-
- function GetCellWidth(const First, Second: Word;
- const DistanceFactor: Single = 1;
- const KerningFactor: Single = 1): Single;
-
- procedure Prepare(const Family: TGPFontFamily; Style: Integer;
- const Size: Single; const Format: TGPStringFormat);
-
- procedure Unprepare;
- end;
-
-function KerningText: TGPKerningText;
-
-implementation
-
-var
- FKerningText: TGPKerningText;
-
-function KerningText: TGPKerningText;
-begin
- if not Assigned(FKerningText) then
- FKerningText := TGPKerningText.Create;
-
- Result := FKerningText;
-end;
-
-{ TKerningText }
-
-function TGPKerningText.AddGlyphToGraphics(const Graphics: TGPGraphics;
- const Char: WideChar; const Font: TGPFont; const Origin: TGPPointF;
- const Format: TGPStringFormat; const Brush: TGPBrush): TStatus;
-begin
- Result := Graphics.DrawString(Char, -1, Font, Origin, Format, Brush);
-end;
-
-function TGPKerningText.AddGlyphToPath(const Path: TGPGraphicsPath;
- const Char: WideChar; const Family: TGPFontFamily; const Style: Integer;
- const Size: Single; const Origin: TGPPointF;
- const Format: TGPStringFormat): TStatus;
-begin
- Result := Path.AddString(Char, -1, Family, Style, Size, Origin, Format);
-end;
-
-procedure TGPKerningText.AddStrikeOut(const Path: TGPGraphicsPath;
- const Left, Top, Width: Single; const Font: TGPFont);
-var
- YPos: Single;
- Height: Single;
-begin
- YPos := Top + Font.GetSize / 2;
- Height := Font.GetSize / 10;
- Path.SetFillMode(FillModeWinding);
- Path.AddRectangle(MakeRect(Left, YPos, Width, Height));
-end;
-
-function TGPKerningText.AddToGraphics(const Graphics: TGPGraphics;
- const Text: WideString; const Font: TGPFont; Origin: TGPPointF;
- const Format: TGPStringFormat; const Brush: TGPBrush;
- const DistanceFactor: Single = 1; const KerningFactor: Single = 1): TStatus;
-var
- P1, P2: PWideChar;
- Status: TStatus;
-begin
- Status := Ok;
- if Text = '' then
- begin
- Result := Ok;
- Exit;
- end;
-
- PrepareKerning(Font, Graphics, False);
- try
- P1 := PWideChar(Text);
- while (P1^ <> #0) do
- begin
- Status := AddGlyphToGraphics(Graphics, P1^, Font, Origin, Format, Brush);
- if Status <> Ok then
- Break;
- P2 := P1 + 1;
- Origin.X := Origin.X + GetCellWidth(Word(P1^), Word(P2^),
- DistanceFactor, KerningFactor);
- Inc(P1);
- end;
- finally
- UnprepareDC;
- end;
- Result := Status;
-end;
-
-function TGPKerningText.AddToGraphics(const Graphics: TGPGraphics;
- const Text: WideString; const Font: TGPFont; Origin: TGPPoint;
- const Format: TGPStringFormat; const Brush: TGPBrush;
- const DistanceFactor: Single = 1; const KerningFactor: Single = 1): TStatus;
-var
- OriginF: TGPPointF;
-begin
- OriginF.X := Origin.X;
- OriginF.Y := Origin.Y;
- Result := AddToGraphics(Graphics, Text, Font, OriginF, Format, Brush,
- DistanceFactor, KerningFactor);
-end;
-
-procedure TGPKerningText.AddToKerningList(const First, Second: Word;
- Cell, Kerning: Integer);
-var
- Item: PKerning;
-begin
- GetMem(Item, SizeOf(TKerning));
- Item^.Chars := First shl 16 + Second;
- Item^.Cell := Cell;
- Item^.Kerning := Kerning;
- FKerningList.Add(Item);
-end;
-
-procedure TGPKerningText.Clear;
-begin
- UnprepareKerning;
- UnprepareDC;
- UnprepareFont;
-
- FGPFont.Free;
- FGPFont := nil;
-end;
-
-procedure TGPKerningText.ClearKerningList;
-var
- C: Integer;
-begin
- for C := 0 to FKerningList.Count - 1 do
- FreeMem(FKerningList[C]);
-
- FKerningList.Clear;
-end;
-
-constructor TGPKerningText.Create;
-begin
- inherited;
- FKerningList := TList.Create;
-end;
-
-destructor TGPKerningText.Destroy;
-begin
- Clear;
- FKerningList.Free;
-
- inherited;
-end;
-
-function TGPKerningText.GetCellWidth(const First, Second: Word;
- const DistanceFactor: Single = 1; const KerningFactor: Single = 1): Single;
-var
- GM: TGlyphMetrics;
- Count: Cardinal;
- Cell: Integer;
- Kerning: Integer;
- Mat: TMat2;
- C: Integer;
-begin
- C := IndexOfKerning(First, Second);
- if C <> -1 then
- begin
- Result := GetDistance(C, DistanceFactor, KerningFactor) * FFontSizeFactor;
- Exit;
- end;
-
- FillChar(Mat, SizeOf(Mat), 0);
- Mat.eM11.value := 1;
- Mat.eM22.value := 1;
-
- Count := GetGlyphOutlineW(FDC, First, GGO_METRICS, GM, 0, nil, Mat);
- if (Count = GDI_ERROR) then
- begin
- Result := -1;
- Exit;
- end;
-
- Cell := GM.gmCellIncX + GM.gmCellIncY;
- Kerning := 0;
-
- for C := 0 to FPairCount - 1 do
- begin
- if (FKerningPairs[C].wFirst = First) and
- (FKerningPairs[C].wSecond = Second) then
- begin
- Kerning := FKerningPairs[C].iKernAmount;
- Break;
- end;
- end;
-
- AddToKerningList(First, Second, Cell, Kerning);
-
- Result := (Cell * DistanceFactor + Kerning * KerningFactor) * FFontSizeFactor;
-end;
-
-function TGPKerningText.GetDistance(const Index: Integer;
- const DistanceFactor, KerningFactor: Single): Single;
-var
- Kerning: PKerning;
-begin
- Kerning := PKerning(FKerningList[Index]);
- Result := Kerning^.Cell * DistanceFactor + Kerning^.Kerning * KerningFactor;
-end;
-
-function TGPKerningText.IndexOfKerning(const First, Second: Word): Integer;
-var
- Chars: Cardinal;
-begin
- Chars := First shl 16 + Second;
- for Result := 0 to FKerningList.Count - 1 do
- if PKerning(FKerningList[Result])^.Chars = Chars then
- Exit;
- Result := -1;
-end;
-
-function TGPKerningText.MeasureText(const Text: WideString;
- const Font: TGPFont; const DistanceFactor: Single = 1;
- const KerningFactor: Single = 1): Single;
-var
- P1, P2: PWideChar;
-begin
- Result := 0;
-
- if Text = '' then
- Exit;
-
- PrepareKerning(Font);
- try
- P1 := PWideChar(Text);
- while (P1^ <> #0) do
- begin
- P2 := P1 + 1;
- Result := Result + GetCellWidth(Word(P1^), Word(P2^), DistanceFactor,
- KerningFactor);
- Inc(P1);
- end;
- finally
- UnprepareDC;
- end;
-end;
-
-procedure TGPKerningText.Prepare(const Family: TGPFontFamily; Style: Integer;
- const Size: Single; const Format: TGPStringFormat);
-begin
- FGPFont.Free;
- FGPFont := TGPFont.Create(Family, Size, Style);
- PrepareKerning(FGPFont);
-end;
-
-procedure TGPKerningText.PrepareDC;
-begin
- if (FDC <> 0) then
- Exit;
-
- FDC := GetDC(0);
- FOldFont := SelectObject(FDC, FFont);
-end;
-
-procedure TGPKerningText.PrepareFont(const LF: TLogFontW);
-begin
- if (FFont <> 0) then
- Exit;
-
- FFont := CreateFontIndirectW(LF);
-end;
-
-procedure TGPKerningText.PrepareKerning(const Font: TGPFont;
- const Graphics: TGPGraphics; WithFactor: Boolean);
-var
- LF: TLogFontW;
- S: WideString;
- DC: HDC;
- Factor, Size: Single;
-begin
- Font.GetLogFontW(Graphics, LF);
-
- Size := Font.GetSize;
-
- if Font.GetUnit in [UnitWorld, UnitPixel] then
- WithFactor := True;
-
- if WithFactor then
- begin
- FFontSizeFactor := Size / 1000;
- LF.lfHeight := -1000;
- //LF.lfHeight := Round(Size * -1000)
- end
- else
- begin
- DC := Graphics.GetHDC;
- Factor := -GetDeviceCaps(DC, LOGPIXELSY) / 72;
- FFontSizeFactor := Size * Factor / 1000;
- LF.lfHeight := 1000;
- //LF.lfHeight := Round(Size * Factor * 1000);
- Graphics.ReleaseHDC(DC);
- end;
-
-
- S := LF.lfFaceName;
- if (S = FLastFont) and
- (LF.lfWeight = FLastWeight) and (LF.lfItalic = FLastStyle) then
- begin
- PrepareDC;
- Exit;
- end else
- UnprepareFont;
-
- FLastFont := WideString(LF.lfFaceName);
- FLastWeight := LF.lfWeight;
- FLastStyle := LF.lfItalic;
-
- PrepareFont(LF);
- PrepareDC;
- ClearKerningList;
-
- FPairCount := GetKerningPairs(FDC, 0, PKerningPair(nil)^);
- if (FPairCount > 0) then
- begin
- SetLength(FKerningPairs, FPairCount);
- GetKerningPairs(FDC, FPairCount, FKerningPairs[0]);
- end;
-end;
-
-procedure TGPKerningText.PrepareKerning(const Font: TGPFont);
-var
- G: TGPGraphics;
- DC: HDC;
-begin
- DC := GetDC(0);
- G := TGPGraphics.Create(DC);
- PrepareKerning(Font, G, True);
- G.Free;
- ReleaseDC(0, DC);
-end;
-
-function TGPKerningText.AddToPath(const Path: TGPGraphicsPath;
- const Text: WideString; const Family: TGPFontFamily; Style: Integer;
- const Size: Single; Origin: TGPPointF; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1;const KerningFactor: Single = 1): TStatus;
-begin
- Result := AddToPath(Path, Path, Path, Text,
- Family, Style, Size, Origin, Format, DistanceFactor, KerningFactor);
-end;
-
-function TGPKerningText.AddToPath(const Path: TGPGraphicsPath;
- const Text: WideString; const Family: TGPFontFamily; const Style: Integer;
- const Size: Single; Origin: TGPPoint; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1;const KerningFactor: Single = 1): TStatus;
-var
- OriginF: TGPPointF;
-begin
- OriginF.X := Origin.X;
- OriginF.Y := Origin.Y;
- Result := AddToPath(Path, Text,
- Family, Style, Size, OriginF, Format, DistanceFactor, KerningFactor);
-end;
-
-function TGPKerningText.AddToPath(const Path, UPath, SPath: TGPGraphicsPath;
- const Text: WideString; const Family: TGPFontFamily; Style: Integer;
- const Size: Single; Origin: TGPPointF; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1;const KerningFactor: Single = 1): TStatus;
-var
- P1, P2: PWideChar;
- Status: TStatus;
- Font: TGPFont;
-
- Underline, StrikeOut: Boolean;
- X, Width: Single;
-begin
- Status := Ok;
- if Text = '' then
- begin
- Result := Ok;
- Exit;
- end;
-
- Underline := Style and FontStyleUnderline = FontStyleUnderline;
- StrikeOut := Style and FontStyleStrikeout = FontStyleStrikeout;
-
- Style := Style and not FontStyleUnderline and not FontStyleStrikeout;
-
- Font := TGPFont.Create(Family, Size, Style);
- try
- PrepareKerning(Font);
-
- X := Origin.X;
- if Underline or StrikeOut then
- Width := MeasureText(Text, Font, DistanceFactor, KerningFactor)
- else
- Width := 0;
-
- if StrikeOut then
- AddStrikeOut(SPath, X, Origin.Y, Width, Font);
-
- try
- P1 := PWideChar(Text);
- while (P1^ <> #0) do
- begin
- Status := AddGlyphToPath(Path, P1^, Family, Style, Size, Origin, Format);
- if Status <> Ok then
- Break;
- P2 := P1 + 1;
- Origin.X := Origin.X + GetCellWidth(Word(P1^), Word(P2^),
- DistanceFactor, KerningFactor);
- Inc(P1);
- end;
- finally
- UnprepareDC;
- end;
-
- if Underline then
- AddUnderline(UPath, X, Origin.Y, Width, Font);
- finally
- Font.Free;
- end;
-
- Result := Status;
-end;
-
-function TGPKerningText.AddToPath(const Path, UPath, SPath: TGPGraphicsPath;
- const Text: WideString; const Family: TGPFontFamily; Style: Integer;
- const Size: Single; Origin: TGPPoint; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1; const KerningFactor: Single = 1): TStatus;
-var
- OriginF: TGPPointF;
-begin
- OriginF.X := Origin.X;
- OriginF.Y := Origin.Y;
- Result := AddToPath(Path, UPath, SPath, Text, Family, Style, Size,
- OriginF, Format, DistanceFactor, KerningFactor);
-end;
-
-procedure TGPKerningText.AddUnderline(const Path: TGPGraphicsPath;
- const Left, Top, Width: Single; const Font: TGPFont);
-var
- YPos: Single;
- Height: Single;
-begin
- YPos := Top + Font.GetSize;
- Height := Font.GetSize / 10;
- Path.SetFillMode(FillModeWinding);
- Path.AddRectangle(MakeRect(Left, YPos, Width, Height));
-end;
-
-procedure TGPKerningText.Unprepare;
-begin
- UnprepareDC;
- FGPFont.Free;
- FGPFont := nil;
-end;
-
-procedure TGPKerningText.UnprepareDC;
-begin
- if (FOldFont <> 0) and (FDC <> 0) then
- SelectObject(FDC, FOldFont);
- FoldFont := 0;
-
- if FDC <> 0 then
- ReleaseDC(0, FDC);
- FDC := 0;
-end;
-
-procedure TGPKerningText.UnprepareFont;
-begin
- if FFont <> 0 then
- DeleteObject(FFont);
- FFont := 0;
-end;
-
-procedure TGPKerningText.UnprepareKerning;
-begin
- SetLength(FKerningPairs, 0);
- FPairCount := 0;
- ClearKerningList;
-end;
-
-initialization
- FKerningText := nil;
-finalization
- FKerningText.Free;
-end.
+{******************************************************************}
+{ GDIPKerning }
+{ }
+{ home page : http://www.mwcs.de }
+{ email : martin.walter@mwcs.de }
+{ }
+{ date : 20-11-2007 }
+{ }
+{ version : 1.1 }
+{ }
+{ Use of this file is permitted for commercial and non-commercial }
+{ use, as long as the author is credited. }
+{ This file (c) 2007 Martin Walter }
+{ }
+{ This Software is distributed on an "AS IS" basis, WITHOUT }
+{ WARRANTY OF ANY KIND, either express or implied. }
+{ }
+{ *****************************************************************}
+
+unit GDIPKerning;
+
+interface
+
+uses
+ Winapi.Windows, System.Classes, Winapi.GDIPAPI, Winapi.GDIPOBJ;
+
+type
+ TKerningPairs = array of TKerningPair;
+ PKerningPairs = ^TKerningPairs;
+
+ TKerning = record
+ Chars: Cardinal;
+ Cell: Integer;
+ Kerning: Integer;
+ end;
+
+ PKerning = ^TKerning;
+
+ TGPKerningText = class(TObject)
+ private
+ FKerningList: TList;
+ FKerningPairs: TKerningPairs;
+ FPairCount: Integer;
+ FLastFont: WideString;
+ FLastWeight: Integer;
+ FLastStyle: Integer;
+ FFontSizeFactor: Single;
+
+ FFont: HFont;
+ FOldFont: HFont;
+ FDC: HDC;
+ FGPFont: TGPFont;
+
+ procedure PrepareDC;
+ procedure UnprepareDC;
+ procedure PrepareFont(const LF: TLogFontW);
+ procedure UnprepareFont;
+ procedure PrepareKerning(const Font: TGPFont); overload;
+ procedure PrepareKerning(const Font: TGPFont; const Graphics: TGPGraphics;
+ WithFactor: Boolean); overload;
+ procedure UnprepareKerning;
+ procedure ClearKerningList;
+ procedure AddToKerningList(const First, Second: Word;
+ Cell, Kerning: Integer);
+ function IndexOfKerning(const First, Second: Word): Integer;
+
+ function GetDistance(const Index: Integer;
+ const DistanceFactor, KerningFactor: Single): Single;
+
+ procedure Clear;
+
+ function AddGlyphToPath(const Path: TGPGraphicsPath; const Char: WideChar;
+ const Family: TGPFontFamily; const Style: Integer; const Size: Single;
+ const Origin: TGPPointF; const Format: TGPStringFormat): TStatus;
+
+ function AddGlyphToGraphics(const Graphics: TGPGraphics;
+ const Char: WideChar; const Font: TGPFont; const Origin: TGPPointF;
+ const Format: TGPStringFormat; const Brush: TGPBrush): TStatus;
+
+ procedure AddUnderline(const Path: TGPGraphicsPath;
+ const Left, Top, Width: Single; const Font: TGPFont);
+
+ procedure AddStrikeOut(const Path: TGPGraphicsPath;
+ const Left, Top, Width: Single; const Font: TGPFont);
+ public
+ constructor Create;
+ destructor Destroy; override;
+
+ function AddToPath(const Path, UPath, SPath: TGPGraphicsPath;
+ const Text: WideString; const Family: TGPFontFamily; Style: Integer;
+ const Size: Single; Origin: TGPPointF; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1;
+ const KerningFactor: Single = 1): TStatus; overload;
+
+ function AddToPath(const Path, UPath, SPath: TGPGraphicsPath;
+ const Text: WideString; const Family: TGPFontFamily; Style: Integer;
+ const Size: Single; Origin: TGPPoint; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1;
+ const KerningFactor: Single = 1): TStatus; overload;
+
+ function AddToPath(const Path: TGPGraphicsPath; const Text: WideString;
+ const Family: TGPFontFamily; Style: Integer; const Size: Single;
+ Origin: TGPPointF; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1;
+ const KerningFactor: Single = 1): TStatus; overload;
+
+ function AddToPath(const Path: TGPGraphicsPath; const Text: WideString;
+ const Family: TGPFontFamily; const Style: Integer; const Size: Single;
+ Origin: TGPPoint; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1;
+ const KerningFactor: Single = 1): TStatus; overload;
+
+ function AddToGraphics(const Graphics: TGPGraphics;
+ const Text: WideString; const Font: TGPFont; Origin: TGPPointF;
+ const Format: TGPStringFormat; const Brush: TGPBrush;
+ const DistanceFactor: Single = 1;
+ const KerningFactor: Single = 1): TStatus; overload;
+
+ function AddToGraphics(const Graphics: TGPGraphics;
+ const Text: WideString; const Font: TGPFont; Origin: TGPPoint;
+ const Format: TGPStringFormat; const Brush: TGPBrush;
+ const DistanceFactor: Single = 1;
+ const KerningFactor: Single = 1): TStatus; overload;
+
+ function MeasureText(const Text: WideString; const Font: TGPFont;
+ const DistanceFactor: Single = 1;
+ const KerningFactor: Single = 1): Single;
+
+ function GetCellWidth(const First, Second: Word;
+ const DistanceFactor: Single = 1;
+ const KerningFactor: Single = 1): Single;
+
+ procedure Prepare(const Family: TGPFontFamily; Style: Integer;
+ const Size: Single; const Format: TGPStringFormat);
+
+ procedure Unprepare;
+ end;
+
+function KerningText: TGPKerningText;
+
+implementation
+
+var
+ FKerningText: TGPKerningText;
+
+function KerningText: TGPKerningText;
+begin
+ if not Assigned(FKerningText) then
+ FKerningText := TGPKerningText.Create;
+
+ Result := FKerningText;
+end;
+
+{ TKerningText }
+
+function TGPKerningText.AddGlyphToGraphics(const Graphics: TGPGraphics;
+ const Char: WideChar; const Font: TGPFont; const Origin: TGPPointF;
+ const Format: TGPStringFormat; const Brush: TGPBrush): TStatus;
+begin
+ Result := Graphics.DrawString(Char, -1, Font, Origin, Format, Brush);
+end;
+
+function TGPKerningText.AddGlyphToPath(const Path: TGPGraphicsPath;
+ const Char: WideChar; const Family: TGPFontFamily; const Style: Integer;
+ const Size: Single; const Origin: TGPPointF;
+ const Format: TGPStringFormat): TStatus;
+begin
+ Result := Path.AddString(Char, -1, Family, Style, Size, Origin, Format);
+end;
+
+procedure TGPKerningText.AddStrikeOut(const Path: TGPGraphicsPath;
+ const Left, Top, Width: Single; const Font: TGPFont);
+var
+ YPos: Single;
+ Height: Single;
+begin
+ YPos := Top + Font.GetSize / 2;
+ Height := Font.GetSize / 10;
+ Path.SetFillMode(FillModeWinding);
+ Path.AddRectangle(MakeRect(Left, YPos, Width, Height));
+end;
+
+function TGPKerningText.AddToGraphics(const Graphics: TGPGraphics;
+ const Text: WideString; const Font: TGPFont; Origin: TGPPointF;
+ const Format: TGPStringFormat; const Brush: TGPBrush;
+ const DistanceFactor: Single = 1; const KerningFactor: Single = 1): TStatus;
+var
+ P1, P2: PWideChar;
+ Status: TStatus;
+begin
+ Status := Ok;
+ if Text = '' then
+ begin
+ Result := Ok;
+ Exit;
+ end;
+
+ PrepareKerning(Font, Graphics, False);
+ try
+ P1 := PWideChar(Text);
+ while (P1^ <> #0) do
+ begin
+ Status := AddGlyphToGraphics(Graphics, P1^, Font, Origin, Format, Brush);
+ if Status <> Ok then
+ Break;
+ P2 := P1 + 1;
+ Origin.X := Origin.X + GetCellWidth(Word(P1^), Word(P2^),
+ DistanceFactor, KerningFactor);
+ Inc(P1);
+ end;
+ finally
+ UnprepareDC;
+ end;
+ Result := Status;
+end;
+
+function TGPKerningText.AddToGraphics(const Graphics: TGPGraphics;
+ const Text: WideString; const Font: TGPFont; Origin: TGPPoint;
+ const Format: TGPStringFormat; const Brush: TGPBrush;
+ const DistanceFactor: Single = 1; const KerningFactor: Single = 1): TStatus;
+var
+ OriginF: TGPPointF;
+begin
+ OriginF.X := Origin.X;
+ OriginF.Y := Origin.Y;
+ Result := AddToGraphics(Graphics, Text, Font, OriginF, Format, Brush,
+ DistanceFactor, KerningFactor);
+end;
+
+procedure TGPKerningText.AddToKerningList(const First, Second: Word;
+ Cell, Kerning: Integer);
+var
+ Item: PKerning;
+begin
+ GetMem(Item, SizeOf(TKerning));
+ Item^.Chars := First shl 16 + Second;
+ Item^.Cell := Cell;
+ Item^.Kerning := Kerning;
+ FKerningList.Add(Item);
+end;
+
+procedure TGPKerningText.Clear;
+begin
+ UnprepareKerning;
+ UnprepareDC;
+ UnprepareFont;
+
+ FGPFont.Free;
+ FGPFont := nil;
+end;
+
+procedure TGPKerningText.ClearKerningList;
+var
+ C: Integer;
+begin
+ for C := 0 to FKerningList.Count - 1 do
+ FreeMem(FKerningList[C]);
+
+ FKerningList.Clear;
+end;
+
+constructor TGPKerningText.Create;
+begin
+ inherited;
+ FKerningList := TList.Create;
+end;
+
+destructor TGPKerningText.Destroy;
+begin
+ Clear;
+ FKerningList.Free;
+
+ inherited;
+end;
+
+function TGPKerningText.GetCellWidth(const First, Second: Word;
+ const DistanceFactor: Single = 1; const KerningFactor: Single = 1): Single;
+var
+ GM: TGlyphMetrics;
+ Count: Cardinal;
+ Cell: Integer;
+ Kerning: Integer;
+ Mat: TMat2;
+ C: Integer;
+begin
+ C := IndexOfKerning(First, Second);
+ if C <> -1 then
+ begin
+ Result := GetDistance(C, DistanceFactor, KerningFactor) * FFontSizeFactor;
+ Exit;
+ end;
+
+ FillChar(Mat, SizeOf(Mat), 0);
+ Mat.eM11.value := 1;
+ Mat.eM22.value := 1;
+
+ Count := GetGlyphOutlineW(FDC, First, GGO_METRICS, GM, 0, nil, Mat);
+ if (Count = GDI_ERROR) then
+ begin
+ Result := -1;
+ Exit;
+ end;
+
+ Cell := GM.gmCellIncX + GM.gmCellIncY;
+ Kerning := 0;
+
+ for C := 0 to FPairCount - 1 do
+ begin
+ if (FKerningPairs[C].wFirst = First) and
+ (FKerningPairs[C].wSecond = Second) then
+ begin
+ Kerning := FKerningPairs[C].iKernAmount;
+ Break;
+ end;
+ end;
+
+ AddToKerningList(First, Second, Cell, Kerning);
+
+ Result := (Cell * DistanceFactor + Kerning * KerningFactor) * FFontSizeFactor;
+end;
+
+function TGPKerningText.GetDistance(const Index: Integer;
+ const DistanceFactor, KerningFactor: Single): Single;
+var
+ Kerning: PKerning;
+begin
+ Kerning := PKerning(FKerningList[Index]);
+ Result := Kerning^.Cell * DistanceFactor + Kerning^.Kerning * KerningFactor;
+end;
+
+function TGPKerningText.IndexOfKerning(const First, Second: Word): Integer;
+var
+ Chars: Cardinal;
+begin
+ Chars := First shl 16 + Second;
+ for Result := 0 to FKerningList.Count - 1 do
+ if PKerning(FKerningList[Result])^.Chars = Chars then
+ Exit;
+ Result := -1;
+end;
+
+function TGPKerningText.MeasureText(const Text: WideString;
+ const Font: TGPFont; const DistanceFactor: Single = 1;
+ const KerningFactor: Single = 1): Single;
+var
+ P1, P2: PWideChar;
+begin
+ Result := 0;
+
+ if Text = '' then
+ Exit;
+
+ PrepareKerning(Font);
+ try
+ P1 := PWideChar(Text);
+ while (P1^ <> #0) do
+ begin
+ P2 := P1 + 1;
+ Result := Result + GetCellWidth(Word(P1^), Word(P2^), DistanceFactor,
+ KerningFactor);
+ Inc(P1);
+ end;
+ finally
+ UnprepareDC;
+ end;
+end;
+
+procedure TGPKerningText.Prepare(const Family: TGPFontFamily; Style: Integer;
+ const Size: Single; const Format: TGPStringFormat);
+begin
+ FGPFont.Free;
+ FGPFont := TGPFont.Create(Family, Size, Style);
+ PrepareKerning(FGPFont);
+end;
+
+procedure TGPKerningText.PrepareDC;
+begin
+ if (FDC <> 0) then
+ Exit;
+
+ FDC := GetDC(0);
+ FOldFont := SelectObject(FDC, FFont);
+end;
+
+procedure TGPKerningText.PrepareFont(const LF: TLogFontW);
+begin
+ if (FFont <> 0) then
+ Exit;
+
+ FFont := CreateFontIndirectW(LF);
+end;
+
+procedure TGPKerningText.PrepareKerning(const Font: TGPFont;
+ const Graphics: TGPGraphics; WithFactor: Boolean);
+var
+ LF: TLogFontW;
+ S: WideString;
+ DC: HDC;
+ Factor, Size: Single;
+begin
+ Font.GetLogFontW(Graphics, LF);
+
+ Size := Font.GetSize;
+
+ if Font.GetUnit in [UnitWorld, UnitPixel] then
+ WithFactor := True;
+
+ if WithFactor then
+ begin
+ FFontSizeFactor := Size / 1000;
+ LF.lfHeight := -1000;
+ //LF.lfHeight := Round(Size * -1000)
+ end
+ else
+ begin
+ DC := Graphics.GetHDC;
+ Factor := -GetDeviceCaps(DC, LOGPIXELSY) / 72;
+ FFontSizeFactor := Size * Factor / 1000;
+ LF.lfHeight := 1000;
+ //LF.lfHeight := Round(Size * Factor * 1000);
+ Graphics.ReleaseHDC(DC);
+ end;
+
+
+ S := LF.lfFaceName;
+ if (S = FLastFont) and
+ (LF.lfWeight = FLastWeight) and (LF.lfItalic = FLastStyle) then
+ begin
+ PrepareDC;
+ Exit;
+ end else
+ UnprepareFont;
+
+ FLastFont := WideString(LF.lfFaceName);
+ FLastWeight := LF.lfWeight;
+ FLastStyle := LF.lfItalic;
+
+ PrepareFont(LF);
+ PrepareDC;
+ ClearKerningList;
+
+ FPairCount := GetKerningPairs(FDC, 0, PKerningPair(nil)^);
+ if (FPairCount > 0) then
+ begin
+ SetLength(FKerningPairs, FPairCount);
+ GetKerningPairs(FDC, FPairCount, FKerningPairs[0]);
+ end;
+end;
+
+procedure TGPKerningText.PrepareKerning(const Font: TGPFont);
+var
+ G: TGPGraphics;
+ DC: HDC;
+begin
+ DC := GetDC(0);
+ G := TGPGraphics.Create(DC);
+ PrepareKerning(Font, G, True);
+ G.Free;
+ ReleaseDC(0, DC);
+end;
+
+function TGPKerningText.AddToPath(const Path: TGPGraphicsPath;
+ const Text: WideString; const Family: TGPFontFamily; Style: Integer;
+ const Size: Single; Origin: TGPPointF; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1;const KerningFactor: Single = 1): TStatus;
+begin
+ Result := AddToPath(Path, Path, Path, Text,
+ Family, Style, Size, Origin, Format, DistanceFactor, KerningFactor);
+end;
+
+function TGPKerningText.AddToPath(const Path: TGPGraphicsPath;
+ const Text: WideString; const Family: TGPFontFamily; const Style: Integer;
+ const Size: Single; Origin: TGPPoint; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1;const KerningFactor: Single = 1): TStatus;
+var
+ OriginF: TGPPointF;
+begin
+ OriginF.X := Origin.X;
+ OriginF.Y := Origin.Y;
+ Result := AddToPath(Path, Text,
+ Family, Style, Size, OriginF, Format, DistanceFactor, KerningFactor);
+end;
+
+function TGPKerningText.AddToPath(const Path, UPath, SPath: TGPGraphicsPath;
+ const Text: WideString; const Family: TGPFontFamily; Style: Integer;
+ const Size: Single; Origin: TGPPointF; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1;const KerningFactor: Single = 1): TStatus;
+var
+ P1, P2: PWideChar;
+ Status: TStatus;
+ Font: TGPFont;
+
+ Underline, StrikeOut: Boolean;
+ X, Width: Single;
+begin
+ Status := Ok;
+ if Text = '' then
+ begin
+ Result := Ok;
+ Exit;
+ end;
+
+ Underline := Style and FontStyleUnderline = FontStyleUnderline;
+ StrikeOut := Style and FontStyleStrikeout = FontStyleStrikeout;
+
+ Style := Style and not FontStyleUnderline and not FontStyleStrikeout;
+
+ Font := TGPFont.Create(Family, Size, Style);
+ try
+ PrepareKerning(Font);
+
+ X := Origin.X;
+ if Underline or StrikeOut then
+ Width := MeasureText(Text, Font, DistanceFactor, KerningFactor)
+ else
+ Width := 0;
+
+ if StrikeOut then
+ AddStrikeOut(SPath, X, Origin.Y, Width, Font);
+
+ try
+ P1 := PWideChar(Text);
+ while (P1^ <> #0) do
+ begin
+ Status := AddGlyphToPath(Path, P1^, Family, Style, Size, Origin, Format);
+ if Status <> Ok then
+ Break;
+ P2 := P1 + 1;
+ Origin.X := Origin.X + GetCellWidth(Word(P1^), Word(P2^),
+ DistanceFactor, KerningFactor);
+ Inc(P1);
+ end;
+ finally
+ UnprepareDC;
+ end;
+
+ if Underline then
+ AddUnderline(UPath, X, Origin.Y, Width, Font);
+ finally
+ Font.Free;
+ end;
+
+ Result := Status;
+end;
+
+function TGPKerningText.AddToPath(const Path, UPath, SPath: TGPGraphicsPath;
+ const Text: WideString; const Family: TGPFontFamily; Style: Integer;
+ const Size: Single; Origin: TGPPoint; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1; const KerningFactor: Single = 1): TStatus;
+var
+ OriginF: TGPPointF;
+begin
+ OriginF.X := Origin.X;
+ OriginF.Y := Origin.Y;
+ Result := AddToPath(Path, UPath, SPath, Text, Family, Style, Size,
+ OriginF, Format, DistanceFactor, KerningFactor);
+end;
+
+procedure TGPKerningText.AddUnderline(const Path: TGPGraphicsPath;
+ const Left, Top, Width: Single; const Font: TGPFont);
+var
+ YPos: Single;
+ Height: Single;
+begin
+ YPos := Top + Font.GetSize;
+ Height := Font.GetSize / 10;
+ Path.SetFillMode(FillModeWinding);
+ Path.AddRectangle(MakeRect(Left, YPos, Width, Height));
+end;
+
+procedure TGPKerningText.Unprepare;
+begin
+ UnprepareDC;
+ FGPFont.Free;
+ FGPFont := nil;
+end;
+
+procedure TGPKerningText.UnprepareDC;
+begin
+ if (FOldFont <> 0) and (FDC <> 0) then
+ SelectObject(FDC, FOldFont);
+ FoldFont := 0;
+
+ if FDC <> 0 then
+ ReleaseDC(0, FDC);
+ FDC := 0;
+end;
+
+procedure TGPKerningText.UnprepareFont;
+begin
+ if FFont <> 0 then
+ DeleteObject(FFont);
+ FFont := 0;
+end;
+
+procedure TGPKerningText.UnprepareKerning;
+begin
+ SetLength(FKerningPairs, 0);
+ FPairCount := 0;
+ ClearKerningList;
+end;
+
+initialization
+ FKerningText := nil;
+finalization
+ FKerningText.Free;
+end.
diff --git a/Svg/GDIPOBJ2.pas b/Svg/GDIPOBJ2.pas
index 0b62b47e..00300b8a 100644
--- a/Svg/GDIPOBJ2.pas
+++ b/Svg/GDIPOBJ2.pas
@@ -1,74 +1,74 @@
- { *****************************************************************}
- { Added Support for RoundRect (GraphicsPath + TGPGraphics) }
- { }
- { date : 05-11-2006 }
- { }
- { email : martin.walter@winningcubed.de }
- { }
- { *****************************************************************}
-unit GDIPOBJ2;
-
-interface
-
-uses
- Winapi.GDIPAPI, Winapi.GDIPOBJ;
-
-type
- TGPGraphicsPath2 = class(TGPGraphicsPath)
- public
- function AddRoundRect(Rect: TGPRectF; RX, RY: Single): TStatus; overload;
- function AddRoundRect(X, Y, Width, Height, RX, RY: Single): TStatus; overload;
- function Clone: TGPGraphicsPath2;
- end;
-
-implementation
-
-{ TGPGraphicsPath2 }
-
-function TGPGraphicsPath2.AddRoundRect(Rect: TGPRectF; RX, RY: Single): TStatus;
-begin
- Result := AddRoundRect(Rect.X, Rect.Y, Rect.Width, Rect.Height, RX, RY);
-end;
-
-function TGPGraphicsPath2.AddRoundRect(X, Y, Width, Height, RX, RY: Single) : TStatus;
-begin
- Result := AddLine(X + RX, Y, X + Width - RX, Y);
- if Result <> OK then
- Exit;
- Result := AddArc(X + Width - 2 * RX, Y, 2 * RX, 2 * RY, 270, 90);
- if Result <> OK then
- Exit;
-
- Result := AddLine(X + Width, Y + RY,X + Width, Y + Height - RY);
- if Result <> OK then
- Exit;
- Result := AddArc(X + Width - 2 * RX, Y + Height - 2 * RY, 2 * RX, 2 * RY, 0, 90);
- if Result <> OK then
- Exit;
-
- Result := AddLine(X + Width - RX, Y + Height, X + RX, Y + Height);
- if Result <> OK then
- Exit;
- Result := AddArc(X, Y + Height - 2 * RY, 2 * RX, 2 * RY, 90, 90);
- if Result <> OK then
- Exit;
-
- Result := AddLine(X, Y + Height - RY, X, Y + RY);
- if Result <> OK then
- Exit;
- Result := AddArc(X, Y, 2 * RX, 2 * RY, 180, 90);
- if Result <> OK then
- Exit;
- Result := CloseFigure;
-end;
-
-function TGPGraphicsPath2.Clone: TGPGraphicsPath2;
-var
- ClonePath: GpPath;
-begin
- Clonepath := nil;
- SetStatus(GdipClonePath(nativePath, Clonepath));
- result := TGPGraphicsPath2.Create(ClonePath);
-end;
-
-end.
+ { *****************************************************************}
+ { Added Support for RoundRect (GraphicsPath + TGPGraphics) }
+ { }
+ { date : 05-11-2006 }
+ { }
+ { email : martin.walter@winningcubed.de }
+ { }
+ { *****************************************************************}
+unit GDIPOBJ2;
+
+interface
+
+uses
+ Winapi.GDIPAPI, Winapi.GDIPOBJ;
+
+type
+ TGPGraphicsPath2 = class(TGPGraphicsPath)
+ public
+ function AddRoundRect(Rect: TGPRectF; RX, RY: Single): TStatus; overload;
+ function AddRoundRect(X, Y, Width, Height, RX, RY: Single): TStatus; overload;
+ function Clone: TGPGraphicsPath2;
+ end;
+
+implementation
+
+{ TGPGraphicsPath2 }
+
+function TGPGraphicsPath2.AddRoundRect(Rect: TGPRectF; RX, RY: Single): TStatus;
+begin
+ Result := AddRoundRect(Rect.X, Rect.Y, Rect.Width, Rect.Height, RX, RY);
+end;
+
+function TGPGraphicsPath2.AddRoundRect(X, Y, Width, Height, RX, RY: Single) : TStatus;
+begin
+ Result := AddLine(X + RX, Y, X + Width - RX, Y);
+ if Result <> OK then
+ Exit;
+ Result := AddArc(X + Width - 2 * RX, Y, 2 * RX, 2 * RY, 270, 90);
+ if Result <> OK then
+ Exit;
+
+ Result := AddLine(X + Width, Y + RY,X + Width, Y + Height - RY);
+ if Result <> OK then
+ Exit;
+ Result := AddArc(X + Width - 2 * RX, Y + Height - 2 * RY, 2 * RX, 2 * RY, 0, 90);
+ if Result <> OK then
+ Exit;
+
+ Result := AddLine(X + Width - RX, Y + Height, X + RX, Y + Height);
+ if Result <> OK then
+ Exit;
+ Result := AddArc(X, Y + Height - 2 * RY, 2 * RX, 2 * RY, 90, 90);
+ if Result <> OK then
+ Exit;
+
+ Result := AddLine(X, Y + Height - RY, X, Y + RY);
+ if Result <> OK then
+ Exit;
+ Result := AddArc(X, Y, 2 * RX, 2 * RY, 180, 90);
+ if Result <> OK then
+ Exit;
+ Result := CloseFigure;
+end;
+
+function TGPGraphicsPath2.Clone: TGPGraphicsPath2;
+var
+ ClonePath: GpPath;
+begin
+ Clonepath := nil;
+ SetStatus(GdipClonePath(nativePath, Clonepath));
+ result := TGPGraphicsPath2.Create(ClonePath);
+end;
+
+end.
diff --git a/Svg/GDIPPathText.pas b/Svg/GDIPPathText.pas
index 50c30c68..6c4f0836 100644
--- a/Svg/GDIPPathText.pas
+++ b/Svg/GDIPPathText.pas
@@ -1,505 +1,505 @@
- {******************************************************************}
- { GDIPPathText }
- { }
- { home page : http://www.mwcs.de }
- { email : martin.walter@mwcs.de }
- { }
- { date : 30-11-2007 }
- { }
- { version : 1.0 }
- { }
- { Use of this file is permitted for commercial and non-commercial }
- { use, as long as the author is credited. }
- { This file (c) 2007 Martin Walter }
- { }
- { This Software is distributed on an "AS IS" basis, WITHOUT }
- { WARRANTY OF ANY KIND, either express or implied. }
- { }
- { *****************************************************************}
-
-unit GDIPPathText;
-
-interface
-
-uses
- Winapi.GDIPAPI, Winapi.GDIPOBJ, GDIPKerning;
-
-type
- TPathPosition = Single;
-
- TGPPathText = class(TObject)
- strict private
- FRotation: Single;
- FGuidePath: TGPGraphicsPath;
-
- FFamily: TGPFontFamily;
- FStyle: Integer;
- FSize: Single;
- FFormat: TGPStringFormat;
- FDistanceFactor: Single;
- FKerningFactor: Single;
- FAdditionalMatrix: TGPMatrix;
-
- function AddGlyphToPath(const Path: TGPGraphicsPath; const Char: WideChar;
- const Family: TGPFontFamily; const Style: Integer; const Size: Single;
- const Origin: TGPPointF; const Format: TGPStringFormat): TStatus;
-
- function AddCharacter(const Current, Next: WideChar;
- const Path: TGPGraphicsPath; const Position: TPathPosition): TPathPosition;
-
- function GetPathPoint(const Position: TPathPosition): TGPPointF;
- function GetPathPointLength(const Position: TPathPosition): Single;
- function GetPathPosition(Indent: Single): TPathPosition;
- function FindRightPosition(CenterPos: TPathPosition;
- const Radius: Single): TPathPosition;
- protected
- public
- constructor Create(const GuidePath: TGPGraphicsPath;
- const Flatness: Single = 10 * FlatnessDefault);
-
- destructor Destroy; override;
-
- function AddPathText(const Path: TGPGraphicsPath;
- const Text: WideString; const Indent: Single;
- const Family: TGPFontFamily; Style: Integer;
- const Size: Single; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1; const KerningFactor: Single = 1): Single;
-
- class function GetPathLength(const Path: TGPGraphicsPath): Single;
-
- property Rotation: Single read FRotation write FRotation;
- property AdditionalMatrix: TGPMatrix read FAdditionalMatrix write FAdditionalMatrix;
- end;
-
-implementation
-
-uses
- System.Math, System.SysUtils;
-
-function GetPoint(P: PGPPointF; Index: Integer): TGPPointF;
-begin
- Inc(P, Index);
- Result := P^;
-end;
-
-function AddPoint(A, B: TGPPointF): TGPPointF;
-begin
- Result.X := A.X + B.X;
- Result.Y := A.Y + B.Y;
-end;
-
-function SubPoint(A, B: TGPPointF): TGPPointF;
-begin
- Result.X := A.X - B.X;
- Result.Y := A.Y - B.Y;
-end;
-
-function GetIntersectionFromCircle(PtA, PtB, Center: TGPPointF;
- const R2: Single): Single;
-var
- Diff: TGPPointF;
- rA2, rB2: Single;
- A, B, C, D, T, T1, T2, SqrtD: Single;
-begin
- PtA := SubPoint(PtA, Center);
- PtB := SubPoint(PtB, Center);
-
- rA2 := Sqr(PtA.X) + Sqr(PtA.Y);
- rB2 := Sqr(PtB.X) + Sqr(PtB.Y);
-
- if (rA2 > R2) and (rB2 > R2) then
- begin
- Result := -1;
- Exit;
- end;
-
- if (rA2 < R2) and (rB2 < R2) then
- begin
- Result := -1;
- Exit;
- end;
-
- Diff := SubPoint(PtB, PtA);
-
- A := Sqr(Diff.X) + Sqr(Diff.Y);
- B := 2 * (PtA.X * Diff.X + PtA.Y * Diff.Y);
- C := rA2 - R2;
- D := Sqr(B) - 4 * A * C;
-
- T := -1;
-
- A := 2 * A;
- if (D = 0) then
- T := -B / A
- else
- if (D > 0) then
- begin
- SqrtD := Sqrt(D);
- T1 := (-B + SqrtD) / A;
- T2 := (-B - SqrtD) / A;
-
- if (T1 >= 0) and (T1 <= 1) then
- begin
- if (T2 > 0) and (T2 < T1) then
- T := T2
- else
- T := T1;
- end
- else
- if (T2 >= 0) and (T2 <= 1) then
- T := T2;
- end;
- Result := T;
-end;
-
-
-{ TPathText }
-
-function TGPPathText.AddCharacter(const Current, Next: WideChar;
- const Path: TGPGraphicsPath; const Position: TPathPosition): TPathPosition;
-var
- CharWidth: Single;
- GlyphPath: TGPGraphicsPath;
- Left, Right, Diff: TGPPointF;
- SinAngle, CosAngle: Single;
- Matrix: TGPMatrix;
- PosRight: TPathPosition;
-begin
- GlyphPath := TGPGraphicsPath.Create;
- try
- CharWidth := KerningText.GetCellWidth(Word(Current), Word(Next),
- FDistanceFactor, FKerningFactor);
-
- if (CharWidth = 0) then
- begin
- Result := -1;
- Exit;
- end;
-
- PosRight := FindRightPosition(Position, CharWidth);
- if (PosRight < 0) then
- begin
- Result := PosRight;
- Exit;
- end;
-
- Left := GetPathPoint(Position);
- Right := GetPathPoint(PosRight);
-
- Diff := SubPoint(Right, Left);
-
- CosAngle := Diff.X / CharWidth;
- SinAngle := Diff.Y / CharWidth;
-
- AddGlyphToPath(GlyphPath, Current, FFamily, FStyle, FSize,
- MakePoint(0, -FSize), FFormat);
-
- if Assigned(FAdditionalMatrix) then
- GlyphPath.Transform(FAdditionalMatrix);
-
- Matrix := TGPMatrix.Create(CosAngle, SinAngle,
- - Rotation * SinAngle, 1 + Rotation * (CosAngle - 1),
- Left.X, Left.Y);
- try
- GlyphPath.Transform(Matrix);
- finally
- Matrix.Free;
- end;
-
- Path.AddPath(GlyphPath, False);
- Result := PosRight;
- finally
- GlyphPath.Free;
- end;
-end;
-
-function TGPPathText.AddGlyphToPath(const Path: TGPGraphicsPath;
- const Char: WideChar; const Family: TGPFontFamily; const Style: Integer;
- const Size: Single; const Origin: TGPPointF;
- const Format: TGPStringFormat): TStatus;
-begin
- Result := Path.AddString(Char, -1, Family, Style, Size, Origin, Format);
-end;
-
-function TGPPathText.AddPathText(const Path: TGPGraphicsPath;
- const Text: WideString; const Indent: Single;
- const Family: TGPFontFamily; Style: Integer;
- const Size: Single; const Format: TGPStringFormat;
- const DistanceFactor: Single = 1; const KerningFactor: Single = 1): Single;
-var
- IndentPosition, Position: TPathPosition;
- Current, Next: PWideChar;
-begin
- Result := 0;
- Path.SetFillMode(FillModeWinding);
-
- IndentPosition := GetPathPosition(Indent);
- Position := IndentPosition;
-
- Current := PWideChar(Text);
-
- FFamily := Family;
- FStyle := Style;
- FSize := Size;
- FFormat := Format;
- FDistanceFactor := DistanceFactor;
- FKerningFactor := KerningFactor;
-
- KerningText.Prepare(FFamily, FStyle, FSize, FFormat);
- try
- while (Current^ <> #0) and (Position >= 0) do
- begin
- Next := Current + 1;
- Position := AddCharacter(Current^, Next^, Path, Position);
- if Position >= 0 then
- Result := Position;
- Inc(Current);
- end;
- finally
- KerningText.Unprepare;
- end;
- if Result > 0 then
- Result := GetPathPointLength(Result - IndentPosition);
-end;
-
-constructor TGPPathText.Create(const GuidePath: TGPGraphicsPath;
- const Flatness: Single);
-begin
- if not Assigned(GuidePath) then
- Exception.Create('Path is invalid');
-
- inherited Create;
-
- FGuidePath := GuidePath.Clone;
- FRotation := 1;
- FGuidePath.Flatten(nil, Flatness);
-end;
-
-destructor TGPPathText.Destroy;
-begin
- FGuidePath.Free;
- inherited;
-end;
-
-function TGPPathText.FindRightPosition(CenterPos: TPathPosition;
- const Radius: Single): TPathPosition;
-var
- StartSegment: Integer;
- PD: TPathData;
- DistLeft, DistRight: Single;
- Start: TGPPointF;
- Diff: TGPPointF;
- P1, P2: TGPPointF;
- C, PointCount: Integer;
- Intersection: Single;
-begin
- if (CenterPos < 0) then
- begin
- Result := -1;
- Exit;
- end;
-
- StartSegment := Floor(CenterPos);
-
- PointCount := FGuidePath.GetPointCount;
- if (StartSegment >= PointCount - 1) then
- begin
- Result := -1;
- Exit;
- end;
-
- PD := TPathData.Create;
- try
- if (FGuidePath.GetPathData(PD) = Ok) then
- begin
- Start := GetPathPoint(CenterPos);
-
- P1 := GetPoint(PD.Points, StartSegment + 1);
-
- Diff := SubPoint(Start, P1);
- DistRight := Sqrt(Sqr(Diff.X) + Sqr(Diff.Y));
-
- if (Radius < DistRight) then
- begin
- Diff := SubPoint(Start, GetPoint(PD.Points, StartSegment));
- DistLeft := Sqrt(Sqr(Diff.X) + Sqr(Diff.Y));
-
- Result := StartSegment + 1 - (DistRight - Radius) / (DistRight + DistLeft);
- Exit;
- end;
-
- for C := StartSegment + 1 to PointCount - 2 do
- begin
- P2 := GetPoint(PD.Points, C + 1);
- Intersection := GetIntersectionFromCircle(P1, P2, Start, Sqr(Radius));
- P1 := P2;
-
- if (Intersection >= 0) then
- begin
- Result := C + Intersection;
- Exit;
- end;
- end;
- end;
- Result := -1;
- finally
- PD.Free;
- end;
-end;
-
-class function TGPPathText.GetPathLength(const Path: TGPGraphicsPath): Single;
-var
- P: TGPGraphicsPath;
- Count, C: Integer;
- PD: TPathData;
- P1, P2: TGPPointF;
-begin
- Result := 0;
- P := Path.Clone;
- try
- P.Flatten(nil, 10 * FlatnessDefault);
-
- Count := P.GetPointCount;
- if Count > 0 then
- begin
- PD := TPathData.Create;
- try
- if (P.GetPathData(PD) = Ok) then
- begin
- P1 := GetPoint(PD.Points, 0);
- for C := 0 to Count - 2 do
- begin
- P2 := GetPoint(PD.Points, C + 1);
- P1 := SubPoint(P2, P1);
- Result := Result + Sqrt(Sqr(P1.X) + Sqr(P1.Y));
- P1 := P2;
- end;
- end;
- finally
- PD.Free;
- end;
- end;
- finally
- P.Free;
- end;
-end;
-
-function TGPPathText.GetPathPoint(const Position: TPathPosition): TGPPointF;
-var
- R: TGPPointF;
- Segment, Count: Integer;
- PD: TPathData;
- Diff: TGPPointF;
- T: Single;
-begin
- R := MakePoint(0.0, 0);
-
- if Position < 0 then
- begin
- Result := R;
- Exit;
- end;
-
- Segment := Floor(Position);
-
- Count := FGuidePath.GetPointCount;
- if (Segment < Count - 1) then
- begin
- PD := TPathData.Create;
- if (FGuidePath.GetPathData(PD) = Ok) then
- begin
- R := GetPoint(PD.Points, Segment);
- Diff := GetPoint(PD.Points, Segment + 1);
-
- Diff := SubPoint(Diff, R);
-
- T := Frac(Position);
-
- R.X := R.X + T * Diff.X;
- R.Y := R.Y + T * Diff.Y;
- end;
- PD.Free;
- end;
-
- Result := R;
-end;
-
-function TGPPathText.GetPathPointLength(const Position: TPathPosition): Single;
-var
- P1, P2: TGPPointF;
- Diff: TGPPointF;
- C, Segment, Count: Integer;
- PD: TPathData;
-begin
- if Position < 0 then
- begin
- Result := 0;
- Exit;
- end;
-
- Segment := Floor(Position);
-
- Result := 0;
- Count := FGuidePath.GetPointCount;
- if (Segment < Count - 1) then
- begin
- PD := TPathData.Create;
- try
- if (FGuidePath.GetPathData(PD) = Ok) then
- begin
- P1 := GetPoint(PD.Points, 0);
- for C := 0 to Segment - 1 do
- begin
- P2 := GetPoint(PD.Points, C + 1);
- Diff := SubPoint(P2, P1);
- Result := Result + Sqrt(Sqr(Diff.X) + Sqr(Diff.Y));
- P1 := P2;
- end;
-
- P2 := GetPoint(PD.Points, Segment + 1);
- Diff := SubPoint(P2, P1);
-
- Result := Result + Sqrt(Sqr(Diff.X) + Sqr(Diff.Y)) * Frac(Position);
- end;
- finally
- PD.Free;
- end;
- end;
-end;
-
-function TGPPathText.GetPathPosition(Indent: Single): TPathPosition;
-var
- PD: TPathData;
- C, Count: Integer;
- A, B: TGPPointF;
- Distance: Single;
-begin
- PD := TPathData.Create;
- try
- if (FGuidePath.GetPathData(PD) = Ok) then
- begin
- Count := FGuidePath.GetPointCount;
- A := GetPoint(PD.Points, 0);
- for C := 0 to Count - 2 do
- begin
- B := GetPoint(PD.Points, C + 1);
-
- Distance := Sqrt(Sqr(B.X - A.X) + Sqr(B.Y - A.Y));
- A := B;
-
- if (Indent < Distance) then
- begin
- Result := C + Indent / Distance;
- Exit;
- end;
-
- Indent := Indent - Distance;
- end;
- end;
- finally
- PD.Free;
- end;
- Result := -1;
-end;
-
-end.
+ {******************************************************************}
+ { GDIPPathText }
+ { }
+ { home page : http://www.mwcs.de }
+ { email : martin.walter@mwcs.de }
+ { }
+ { date : 30-11-2007 }
+ { }
+ { version : 1.0 }
+ { }
+ { Use of this file is permitted for commercial and non-commercial }
+ { use, as long as the author is credited. }
+ { This file (c) 2007 Martin Walter }
+ { }
+ { This Software is distributed on an "AS IS" basis, WITHOUT }
+ { WARRANTY OF ANY KIND, either express or implied. }
+ { }
+ { *****************************************************************}
+
+unit GDIPPathText;
+
+interface
+
+uses
+ Winapi.GDIPAPI, Winapi.GDIPOBJ, GDIPKerning;
+
+type
+ TPathPosition = Single;
+
+ TGPPathText = class(TObject)
+ strict private
+ FRotation: Single;
+ FGuidePath: TGPGraphicsPath;
+
+ FFamily: TGPFontFamily;
+ FStyle: Integer;
+ FSize: Single;
+ FFormat: TGPStringFormat;
+ FDistanceFactor: Single;
+ FKerningFactor: Single;
+ FAdditionalMatrix: TGPMatrix;
+
+ function AddGlyphToPath(const Path: TGPGraphicsPath; const Char: WideChar;
+ const Family: TGPFontFamily; const Style: Integer; const Size: Single;
+ const Origin: TGPPointF; const Format: TGPStringFormat): TStatus;
+
+ function AddCharacter(const Current, Next: WideChar;
+ const Path: TGPGraphicsPath; const Position: TPathPosition): TPathPosition;
+
+ function GetPathPoint(const Position: TPathPosition): TGPPointF;
+ function GetPathPointLength(const Position: TPathPosition): Single;
+ function GetPathPosition(Indent: Single): TPathPosition;
+ function FindRightPosition(CenterPos: TPathPosition;
+ const Radius: Single): TPathPosition;
+ protected
+ public
+ constructor Create(const GuidePath: TGPGraphicsPath;
+ const Flatness: Single = 10 * FlatnessDefault);
+
+ destructor Destroy; override;
+
+ function AddPathText(const Path: TGPGraphicsPath;
+ const Text: WideString; const Indent: Single;
+ const Family: TGPFontFamily; Style: Integer;
+ const Size: Single; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1; const KerningFactor: Single = 1): Single;
+
+ class function GetPathLength(const Path: TGPGraphicsPath): Single;
+
+ property Rotation: Single read FRotation write FRotation;
+ property AdditionalMatrix: TGPMatrix read FAdditionalMatrix write FAdditionalMatrix;
+ end;
+
+implementation
+
+uses
+ System.Math, System.SysUtils;
+
+function GetPoint(P: PGPPointF; Index: Integer): TGPPointF;
+begin
+ Inc(P, Index);
+ Result := P^;
+end;
+
+function AddPoint(A, B: TGPPointF): TGPPointF;
+begin
+ Result.X := A.X + B.X;
+ Result.Y := A.Y + B.Y;
+end;
+
+function SubPoint(A, B: TGPPointF): TGPPointF;
+begin
+ Result.X := A.X - B.X;
+ Result.Y := A.Y - B.Y;
+end;
+
+function GetIntersectionFromCircle(PtA, PtB, Center: TGPPointF;
+ const R2: Single): Single;
+var
+ Diff: TGPPointF;
+ rA2, rB2: Single;
+ A, B, C, D, T, T1, T2, SqrtD: Single;
+begin
+ PtA := SubPoint(PtA, Center);
+ PtB := SubPoint(PtB, Center);
+
+ rA2 := Sqr(PtA.X) + Sqr(PtA.Y);
+ rB2 := Sqr(PtB.X) + Sqr(PtB.Y);
+
+ if (rA2 > R2) and (rB2 > R2) then
+ begin
+ Result := -1;
+ Exit;
+ end;
+
+ if (rA2 < R2) and (rB2 < R2) then
+ begin
+ Result := -1;
+ Exit;
+ end;
+
+ Diff := SubPoint(PtB, PtA);
+
+ A := Sqr(Diff.X) + Sqr(Diff.Y);
+ B := 2 * (PtA.X * Diff.X + PtA.Y * Diff.Y);
+ C := rA2 - R2;
+ D := Sqr(B) - 4 * A * C;
+
+ T := -1;
+
+ A := 2 * A;
+ if (D = 0) then
+ T := -B / A
+ else
+ if (D > 0) then
+ begin
+ SqrtD := Sqrt(D);
+ T1 := (-B + SqrtD) / A;
+ T2 := (-B - SqrtD) / A;
+
+ if (T1 >= 0) and (T1 <= 1) then
+ begin
+ if (T2 > 0) and (T2 < T1) then
+ T := T2
+ else
+ T := T1;
+ end
+ else
+ if (T2 >= 0) and (T2 <= 1) then
+ T := T2;
+ end;
+ Result := T;
+end;
+
+
+{ TPathText }
+
+function TGPPathText.AddCharacter(const Current, Next: WideChar;
+ const Path: TGPGraphicsPath; const Position: TPathPosition): TPathPosition;
+var
+ CharWidth: Single;
+ GlyphPath: TGPGraphicsPath;
+ Left, Right, Diff: TGPPointF;
+ SinAngle, CosAngle: Single;
+ Matrix: TGPMatrix;
+ PosRight: TPathPosition;
+begin
+ GlyphPath := TGPGraphicsPath.Create;
+ try
+ CharWidth := KerningText.GetCellWidth(Word(Current), Word(Next),
+ FDistanceFactor, FKerningFactor);
+
+ if (CharWidth = 0) then
+ begin
+ Result := -1;
+ Exit;
+ end;
+
+ PosRight := FindRightPosition(Position, CharWidth);
+ if (PosRight < 0) then
+ begin
+ Result := PosRight;
+ Exit;
+ end;
+
+ Left := GetPathPoint(Position);
+ Right := GetPathPoint(PosRight);
+
+ Diff := SubPoint(Right, Left);
+
+ CosAngle := Diff.X / CharWidth;
+ SinAngle := Diff.Y / CharWidth;
+
+ AddGlyphToPath(GlyphPath, Current, FFamily, FStyle, FSize,
+ MakePoint(0, -FSize), FFormat);
+
+ if Assigned(FAdditionalMatrix) then
+ GlyphPath.Transform(FAdditionalMatrix);
+
+ Matrix := TGPMatrix.Create(CosAngle, SinAngle,
+ - Rotation * SinAngle, 1 + Rotation * (CosAngle - 1),
+ Left.X, Left.Y);
+ try
+ GlyphPath.Transform(Matrix);
+ finally
+ Matrix.Free;
+ end;
+
+ Path.AddPath(GlyphPath, False);
+ Result := PosRight;
+ finally
+ GlyphPath.Free;
+ end;
+end;
+
+function TGPPathText.AddGlyphToPath(const Path: TGPGraphicsPath;
+ const Char: WideChar; const Family: TGPFontFamily; const Style: Integer;
+ const Size: Single; const Origin: TGPPointF;
+ const Format: TGPStringFormat): TStatus;
+begin
+ Result := Path.AddString(Char, -1, Family, Style, Size, Origin, Format);
+end;
+
+function TGPPathText.AddPathText(const Path: TGPGraphicsPath;
+ const Text: WideString; const Indent: Single;
+ const Family: TGPFontFamily; Style: Integer;
+ const Size: Single; const Format: TGPStringFormat;
+ const DistanceFactor: Single = 1; const KerningFactor: Single = 1): Single;
+var
+ IndentPosition, Position: TPathPosition;
+ Current, Next: PWideChar;
+begin
+ Result := 0;
+ Path.SetFillMode(FillModeWinding);
+
+ IndentPosition := GetPathPosition(Indent);
+ Position := IndentPosition;
+
+ Current := PWideChar(Text);
+
+ FFamily := Family;
+ FStyle := Style;
+ FSize := Size;
+ FFormat := Format;
+ FDistanceFactor := DistanceFactor;
+ FKerningFactor := KerningFactor;
+
+ KerningText.Prepare(FFamily, FStyle, FSize, FFormat);
+ try
+ while (Current^ <> #0) and (Position >= 0) do
+ begin
+ Next := Current + 1;
+ Position := AddCharacter(Current^, Next^, Path, Position);
+ if Position >= 0 then
+ Result := Position;
+ Inc(Current);
+ end;
+ finally
+ KerningText.Unprepare;
+ end;
+ if Result > 0 then
+ Result := GetPathPointLength(Result - IndentPosition);
+end;
+
+constructor TGPPathText.Create(const GuidePath: TGPGraphicsPath;
+ const Flatness: Single);
+begin
+ if not Assigned(GuidePath) then
+ Exception.Create('Path is invalid');
+
+ inherited Create;
+
+ FGuidePath := GuidePath.Clone;
+ FRotation := 1;
+ FGuidePath.Flatten(nil, Flatness);
+end;
+
+destructor TGPPathText.Destroy;
+begin
+ FGuidePath.Free;
+ inherited;
+end;
+
+function TGPPathText.FindRightPosition(CenterPos: TPathPosition;
+ const Radius: Single): TPathPosition;
+var
+ StartSegment: Integer;
+ PD: TPathData;
+ DistLeft, DistRight: Single;
+ Start: TGPPointF;
+ Diff: TGPPointF;
+ P1, P2: TGPPointF;
+ C, PointCount: Integer;
+ Intersection: Single;
+begin
+ if (CenterPos < 0) then
+ begin
+ Result := -1;
+ Exit;
+ end;
+
+ StartSegment := Floor(CenterPos);
+
+ PointCount := FGuidePath.GetPointCount;
+ if (StartSegment >= PointCount - 1) then
+ begin
+ Result := -1;
+ Exit;
+ end;
+
+ PD := TPathData.Create;
+ try
+ if (FGuidePath.GetPathData(PD) = Ok) then
+ begin
+ Start := GetPathPoint(CenterPos);
+
+ P1 := GetPoint(PD.Points, StartSegment + 1);
+
+ Diff := SubPoint(Start, P1);
+ DistRight := Sqrt(Sqr(Diff.X) + Sqr(Diff.Y));
+
+ if (Radius < DistRight) then
+ begin
+ Diff := SubPoint(Start, GetPoint(PD.Points, StartSegment));
+ DistLeft := Sqrt(Sqr(Diff.X) + Sqr(Diff.Y));
+
+ Result := StartSegment + 1 - (DistRight - Radius) / (DistRight + DistLeft);
+ Exit;
+ end;
+
+ for C := StartSegment + 1 to PointCount - 2 do
+ begin
+ P2 := GetPoint(PD.Points, C + 1);
+ Intersection := GetIntersectionFromCircle(P1, P2, Start, Sqr(Radius));
+ P1 := P2;
+
+ if (Intersection >= 0) then
+ begin
+ Result := C + Intersection;
+ Exit;
+ end;
+ end;
+ end;
+ Result := -1;
+ finally
+ PD.Free;
+ end;
+end;
+
+class function TGPPathText.GetPathLength(const Path: TGPGraphicsPath): Single;
+var
+ P: TGPGraphicsPath;
+ Count, C: Integer;
+ PD: TPathData;
+ P1, P2: TGPPointF;
+begin
+ Result := 0;
+ P := Path.Clone;
+ try
+ P.Flatten(nil, 10 * FlatnessDefault);
+
+ Count := P.GetPointCount;
+ if Count > 0 then
+ begin
+ PD := TPathData.Create;
+ try
+ if (P.GetPathData(PD) = Ok) then
+ begin
+ P1 := GetPoint(PD.Points, 0);
+ for C := 0 to Count - 2 do
+ begin
+ P2 := GetPoint(PD.Points, C + 1);
+ P1 := SubPoint(P2, P1);
+ Result := Result + Sqrt(Sqr(P1.X) + Sqr(P1.Y));
+ P1 := P2;
+ end;
+ end;
+ finally
+ PD.Free;
+ end;
+ end;
+ finally
+ P.Free;
+ end;
+end;
+
+function TGPPathText.GetPathPoint(const Position: TPathPosition): TGPPointF;
+var
+ R: TGPPointF;
+ Segment, Count: Integer;
+ PD: TPathData;
+ Diff: TGPPointF;
+ T: Single;
+begin
+ R := MakePoint(0.0, 0);
+
+ if Position < 0 then
+ begin
+ Result := R;
+ Exit;
+ end;
+
+ Segment := Floor(Position);
+
+ Count := FGuidePath.GetPointCount;
+ if (Segment < Count - 1) then
+ begin
+ PD := TPathData.Create;
+ if (FGuidePath.GetPathData(PD) = Ok) then
+ begin
+ R := GetPoint(PD.Points, Segment);
+ Diff := GetPoint(PD.Points, Segment + 1);
+
+ Diff := SubPoint(Diff, R);
+
+ T := Frac(Position);
+
+ R.X := R.X + T * Diff.X;
+ R.Y := R.Y + T * Diff.Y;
+ end;
+ PD.Free;
+ end;
+
+ Result := R;
+end;
+
+function TGPPathText.GetPathPointLength(const Position: TPathPosition): Single;
+var
+ P1, P2: TGPPointF;
+ Diff: TGPPointF;
+ C, Segment, Count: Integer;
+ PD: TPathData;
+begin
+ if Position < 0 then
+ begin
+ Result := 0;
+ Exit;
+ end;
+
+ Segment := Floor(Position);
+
+ Result := 0;
+ Count := FGuidePath.GetPointCount;
+ if (Segment < Count - 1) then
+ begin
+ PD := TPathData.Create;
+ try
+ if (FGuidePath.GetPathData(PD) = Ok) then
+ begin
+ P1 := GetPoint(PD.Points, 0);
+ for C := 0 to Segment - 1 do
+ begin
+ P2 := GetPoint(PD.Points, C + 1);
+ Diff := SubPoint(P2, P1);
+ Result := Result + Sqrt(Sqr(Diff.X) + Sqr(Diff.Y));
+ P1 := P2;
+ end;
+
+ P2 := GetPoint(PD.Points, Segment + 1);
+ Diff := SubPoint(P2, P1);
+
+ Result := Result + Sqrt(Sqr(Diff.X) + Sqr(Diff.Y)) * Frac(Position);
+ end;
+ finally
+ PD.Free;
+ end;
+ end;
+end;
+
+function TGPPathText.GetPathPosition(Indent: Single): TPathPosition;
+var
+ PD: TPathData;
+ C, Count: Integer;
+ A, B: TGPPointF;
+ Distance: Single;
+begin
+ PD := TPathData.Create;
+ try
+ if (FGuidePath.GetPathData(PD) = Ok) then
+ begin
+ Count := FGuidePath.GetPointCount;
+ A := GetPoint(PD.Points, 0);
+ for C := 0 to Count - 2 do
+ begin
+ B := GetPoint(PD.Points, C + 1);
+
+ Distance := Sqrt(Sqr(B.X - A.X) + Sqr(B.Y - A.Y));
+ A := B;
+
+ if (Indent < Distance) then
+ begin
+ Result := C + Indent / Distance;
+ Exit;
+ end;
+
+ Indent := Indent - Distance;
+ end;
+ end;
+ finally
+ PD.Free;
+ end;
+ Result := -1;
+end;
+
+end.
diff --git a/Svg/SVGColor.pas b/Svg/SVGColor.pas
index 76d1d3ba..e77a09dd 100644
--- a/Svg/SVGColor.pas
+++ b/Svg/SVGColor.pas
@@ -1,294 +1,294 @@
-{******************************************************************}
-{ Color helper unit }
-{ }
-{ home page : http://www.mwcs.de }
-{ email : martin.walter@mwcs.de }
-{ }
-{ date : 26-04-2005 }
-{ }
-{ Use of this file is permitted for commercial and non-commercial }
-{ use, as long as the author is credited. }
-{ This file (c) 2005 Martin Walter }
-{ }
-{ Thanks to: }
-{ Carlo Barazzetta (Changed color ref) }
-{ Kiriakos Vlahos (optimization of ConvertColor) }
-{ Kiriakos Vlahos (conversion from TSVGColor to TColor) }
-{ }
-{ This Software is distributed on an "AS IS" basis, WITHOUT }
-{ WARRANTY OF ANY KIND, either express or implied. }
-{ }
-{ *****************************************************************}
-
-unit SVGColor;
-
-interface
-
-uses
- Winapi.Windows
- , Winapi.GDIPAPI
- , System.UITypes
- , System.Classes;
-
-function GetSVGColor(const ASVGColorName: string): TColor;
-function GetSVGGrayscale(aColor : TColor) : TColor;
-function ConvertColor(Color: TColor; Alpha: Byte): Cardinal; inline;
-procedure AssignSVGColorList(AList: TStrings);
-
-Var
- SVGColorList: TStringList;
-
-implementation
-
-uses
- System.SysUtils
- , System.UIConsts
- , Vcl.Graphics
- , SVGTypes
- ;
-
-function IsHex(const S: string): Boolean;
-var
- C: Integer;
- Help: string;
-begin
- Result := False;
- if S[1] = '#' then
- Help := Copy(S, 2, Length(S))
- else
- Help := S;
- for C := 1 to Length(Help) do
- if not (((Help[C] >= '0') and (Help[C] <= '9')) or
- ((Help[C] >= 'A') and (Help[C] <= 'F')) or
- ((Help[C] >= 'a') and (Help[C] <= 'f'))) then
- Exit;
-
- Result := True;
-end;
-
-function IsDecimal(const S: string): Boolean;
-var
- C: Integer;
-begin
- Result := False;
- for C := 1 to Length(S) do
- if not ((S[C] >= '0') and (S[C] <= '9')) then
- Exit;
- Result := True;
-end;
-
-function DecodeSVGColorToInt(const S: string): Integer;
-var
- C: Integer;
- Percent: Boolean;
- Help: string;
-begin
- Result := SVG_INHERIT_COLOR;
- Help := '0' + S;
- Percent := False;
- if Help[Length(Help)] = '%' then
- begin
- Help := Copy(Help, 1, Length(Help) - 1);
- Percent := True;
- end;
-
- C := SVG_INHERIT_COLOR;
- if IsDecimal(Help) then
- C := StrToInt(Help)
- else
- if IsHex(Help) then
- C := StrToInt('$' + Help);
- if C = SVG_INHERIT_COLOR then
- Exit;
- if C > 255 then
- C := 255;
- if Percent then
- begin
- if C > 100 then
- C := 100;
- C := Round(C * 2.55);
- end;
- Result := C;
-end;
-
-function DecodeRGB(const S: string): Integer;
-var
- RS, GS, BS: string;
- RGB: string;
- R, B, G: Integer;
-begin
- Result := SVG_INHERIT_COLOR;
- if not ((Copy(S, 1, 4) = 'rgb(') and (S[Length(S)] = ')')) then
- Exit;
-
- RGB := Copy(S, 5, Length(S) - 5);
- RGB := Trim(RGB);
-
- RS := Copy(RGB, 1, Pos(',', RGB) - 1);
- RGB := Copy(RGB, Pos(',', RGB) + 1, Length(RGB));
- RGB := Trim(RGB);
-
- GS := Copy(RGB, 1, Pos(',', RGB) - 1);
- RGB := Copy(RGB, Pos(',', RGB) + 1, Length(RGB));
- RGB := Trim(RGB);
-
- BS := RGB;
-
- R := DecodeSVGColorToInt(RS);
- G := DecodeSVGColorToInt(GS);
- B := DecodeSVGColorToInt(BS);
-
- if (R = -1) or (G = -1) or (B = -1) then
- Exit;
-
- Result := Winapi.Windows.RGB(R, G, B);
-end;
-
-function CharToInt(const Ch: Char): Integer;
-begin
- Result := Ord(Ch);
- if (Result > 47) and (Result < 58) then
- Dec(Result, 48)
- else
- if (Result > 64) and (Result < 71) then
- Dec(Result, 55)
- else
- if (Result > 96) and (Result < 103) then
- Dec(Result, 87)
- else
- Result := 0;
-end;
-
-function PrepareHex(const S: string): string;
-var
- C: Integer;
- Help: string;
-begin
- if S[1] = '#' then
- Help := Copy(S, 2, Length(S))
- else
- Help := S;
- if Length(Help) > 6 then
- Help := Copy(Help, 1, 6);
-
- if Length(Help) = 3 then
- begin
- Help := IntToHex(CharToInt(Help[1]) * 17, 2) +
- IntToHex(CharToInt(Help[2]) * 17, 2) +
- IntToHex(CharToInt(Help[3]) * 17, 2);
- end;
-
- Result := '$';
-
- for C := 0 to 2 do
- Result := Result + Copy(Help, 5 - C * 2, 2);
-end;
-
-function GetSVGColor(const ASVGColorName: string): TColor;
-var
- C: Integer;
- Index: Integer;
- Color: string;
-begin
- if ASVGColorName = '' then
- begin
- Result := SVG_INHERIT_COLOR;
- Exit;
- end;
- if SameText(ASVGColorName, 'none') then
- begin
- Result := SVG_NONE_COLOR;
- Exit;
- end;
- if SameText(ASVGColorName, 'inherit') then
- begin
- Result := SVG_INHERIT_COLOR;
- Exit;
- end;
-
- Index := SVGColorList.IndexOf(ASVGColorName);
- if Index >= 0 then
- begin
- Result := TColor(SVGColorList.Objects[Index]);
- Exit;
- end;
-
- if IsHex(ASVGColorName) and (not IsDecimal(ASVGColorName)) then
- Color := PrepareHex(ASVGColorName)
- else
- Color := ASVGColorName;
-
- if TryStrToInt(Color, C) then
- begin
- Result := C;
- end
- else
- begin
- Result := DecodeRGB(Color);
- end;
-end;
-
-// Converts any color to grayscale
-function GetSVGGrayscale(aColor : TColor) : TColor;
-var
- LGray : byte;
-begin
- // Ignore reserved color values : "INHERIT" (TColors.SysDefault) and "none" (TColors.SysNone) .
- if (aColor = SVG_INHERIT_COLOR) or (aColor = SVG_NONE_COLOR) then exit(aColor);
-
- // get the luminance according to https://www.w3.org/TR/AERT/#color-contrast
- LGray := round((0.299 * GetRValue(aColor)) + (0.587 * GetGValue(aColor)) + (0.114 * GetBValue(aColor)));
-
- // set the result to the new grayscale color including the alpha info
- Result := (aColor and $FF000000) or rgb(LGray, LGray, LGray);
-end;
-
-function ConvertColor(Color: TColor; Alpha: Byte): Cardinal;
-begin
- with TColors(Color) do
- Result := Winapi.GDIPAPI.MakeColor(Alpha, R, G, B);
-end;
-
-procedure AssignSVGColorList(AList: TStrings);
-begin
- AList.Assign(SVGColorList);
- AList.InsertObject(0, 'Inherit', TObject(SVG_INHERIT_COLOR));
-end;
-
-procedure StoreToList(Sender: TObject; const S: String);
-Var
- Color: NativeInt;
-begin
- Color := AlphaColorToColor(StringToAlphaColor(S));
- TStringList(Sender).AddObject(S, TObject(Color));
-end;
-
-procedure CreateSVGColorList;
-Var
- M: TMethod;
-begin
- SVGColorList := TStringList.Create;
- SVGColorList.Options := SVGColorList.Options - [soUseLocale];
- SVGColorList.CaseSensitive := False;
- SVGColorList.Sorted := True;
- SVGColorList.Duplicates := TDuplicates.dupIgnore;
- M.Data := SVGColorList;
- M.Code := @StoreToList;
- GetAlphaColorValues(TGetStrProc(M));
- SVGColorList.Delete(SVGColorList.Count - 1);
- // RSP-30408
- SVGColorList.AddObject('Cyan', TObject(TColors.Cyan));
- SVGColorList.AddObject('Darkgrey', TObject(TColors.Darkgrey));
- SVGColorList.AddObject('Dimgrey', TObject(TColors.Dimgrey));
- SVGColorList.AddObject('Grey', TObject(TColors.Grey));
- SVGColorList.AddObject('Lightgrey', TObject(TColors.Lightgrey));
- SVGColorList.AddObject('Lightslategrey', TObject(TColors.Lightslategrey));
- SVGColorList.AddObject('Magenta', TObject(TColors.Magenta));
- SVGColorList.AddObject('Slategrey', TObject(TColors.Slategrey));
-end;
-
-initialization
-CreateSVGColorList;
-finalization
-SVGColorList.Free;
-end.
+{******************************************************************}
+{ Color helper unit }
+{ }
+{ home page : http://www.mwcs.de }
+{ email : martin.walter@mwcs.de }
+{ }
+{ date : 26-04-2005 }
+{ }
+{ Use of this file is permitted for commercial and non-commercial }
+{ use, as long as the author is credited. }
+{ This file (c) 2005 Martin Walter }
+{ }
+{ Thanks to: }
+{ Carlo Barazzetta (Changed color ref) }
+{ Kiriakos Vlahos (optimization of ConvertColor) }
+{ Kiriakos Vlahos (conversion from TSVGColor to TColor) }
+{ }
+{ This Software is distributed on an "AS IS" basis, WITHOUT }
+{ WARRANTY OF ANY KIND, either express or implied. }
+{ }
+{ *****************************************************************}
+
+unit SVGColor;
+
+interface
+
+uses
+ Winapi.Windows
+ , Winapi.GDIPAPI
+ , System.UITypes
+ , System.Classes;
+
+function GetSVGColor(const ASVGColorName: string): TColor;
+function GetSVGGrayscale(aColor : TColor) : TColor;
+function ConvertColor(Color: TColor; Alpha: Byte): Cardinal; inline;
+procedure AssignSVGColorList(AList: TStrings);
+
+Var
+ SVGColorList: TStringList;
+
+implementation
+
+uses
+ System.SysUtils
+ , System.UIConsts
+ , Vcl.Graphics
+ , SVGTypes
+ ;
+
+function IsHex(const S: string): Boolean;
+var
+ C: Integer;
+ Help: string;
+begin
+ Result := False;
+ if S[1] = '#' then
+ Help := Copy(S, 2, Length(S))
+ else
+ Help := S;
+ for C := 1 to Length(Help) do
+ if not (((Help[C] >= '0') and (Help[C] <= '9')) or
+ ((Help[C] >= 'A') and (Help[C] <= 'F')) or
+ ((Help[C] >= 'a') and (Help[C] <= 'f'))) then
+ Exit;
+
+ Result := True;
+end;
+
+function IsDecimal(const S: string): Boolean;
+var
+ C: Integer;
+begin
+ Result := False;
+ for C := 1 to Length(S) do
+ if not ((S[C] >= '0') and (S[C] <= '9')) then
+ Exit;
+ Result := True;
+end;
+
+function DecodeSVGColorToInt(const S: string): Integer;
+var
+ C: Integer;
+ Percent: Boolean;
+ Help: string;
+begin
+ Result := SVG_INHERIT_COLOR;
+ Help := '0' + S;
+ Percent := False;
+ if Help[Length(Help)] = '%' then
+ begin
+ Help := Copy(Help, 1, Length(Help) - 1);
+ Percent := True;
+ end;
+
+ C := SVG_INHERIT_COLOR;
+ if IsDecimal(Help) then
+ C := StrToInt(Help)
+ else
+ if IsHex(Help) then
+ C := StrToInt('$' + Help);
+ if C = SVG_INHERIT_COLOR then
+ Exit;
+ if C > 255 then
+ C := 255;
+ if Percent then
+ begin
+ if C > 100 then
+ C := 100;
+ C := Round(C * 2.55);
+ end;
+ Result := C;
+end;
+
+function DecodeRGB(const S: string): Integer;
+var
+ RS, GS, BS: string;
+ RGB: string;
+ R, B, G: Integer;
+begin
+ Result := SVG_INHERIT_COLOR;
+ if not ((Copy(S, 1, 4) = 'rgb(') and (S[Length(S)] = ')')) then
+ Exit;
+
+ RGB := Copy(S, 5, Length(S) - 5);
+ RGB := Trim(RGB);
+
+ RS := Copy(RGB, 1, Pos(',', RGB) - 1);
+ RGB := Copy(RGB, Pos(',', RGB) + 1, Length(RGB));
+ RGB := Trim(RGB);
+
+ GS := Copy(RGB, 1, Pos(',', RGB) - 1);
+ RGB := Copy(RGB, Pos(',', RGB) + 1, Length(RGB));
+ RGB := Trim(RGB);
+
+ BS := RGB;
+
+ R := DecodeSVGColorToInt(RS);
+ G := DecodeSVGColorToInt(GS);
+ B := DecodeSVGColorToInt(BS);
+
+ if (R = -1) or (G = -1) or (B = -1) then
+ Exit;
+
+ Result := Winapi.Windows.RGB(R, G, B);
+end;
+
+function CharToInt(const Ch: Char): Integer;
+begin
+ Result := Ord(Ch);
+ if (Result > 47) and (Result < 58) then
+ Dec(Result, 48)
+ else
+ if (Result > 64) and (Result < 71) then
+ Dec(Result, 55)
+ else
+ if (Result > 96) and (Result < 103) then
+ Dec(Result, 87)
+ else
+ Result := 0;
+end;
+
+function PrepareHex(const S: string): string;
+var
+ C: Integer;
+ Help: string;
+begin
+ if S[1] = '#' then
+ Help := Copy(S, 2, Length(S))
+ else
+ Help := S;
+ if Length(Help) > 6 then
+ Help := Copy(Help, 1, 6);
+
+ if Length(Help) = 3 then
+ begin
+ Help := IntToHex(CharToInt(Help[1]) * 17, 2) +
+ IntToHex(CharToInt(Help[2]) * 17, 2) +
+ IntToHex(CharToInt(Help[3]) * 17, 2);
+ end;
+
+ Result := '$';
+
+ for C := 0 to 2 do
+ Result := Result + Copy(Help, 5 - C * 2, 2);
+end;
+
+function GetSVGColor(const ASVGColorName: string): TColor;
+var
+ C: Integer;
+ Index: Integer;
+ Color: string;
+begin
+ if ASVGColorName = '' then
+ begin
+ Result := SVG_INHERIT_COLOR;
+ Exit;
+ end;
+ if SameText(ASVGColorName, 'none') then
+ begin
+ Result := SVG_NONE_COLOR;
+ Exit;
+ end;
+ if SameText(ASVGColorName, 'inherit') then
+ begin
+ Result := SVG_INHERIT_COLOR;
+ Exit;
+ end;
+
+ Index := SVGColorList.IndexOf(ASVGColorName);
+ if Index >= 0 then
+ begin
+ Result := TColor(SVGColorList.Objects[Index]);
+ Exit;
+ end;
+
+ if IsHex(ASVGColorName) and (not IsDecimal(ASVGColorName)) then
+ Color := PrepareHex(ASVGColorName)
+ else
+ Color := ASVGColorName;
+
+ if TryStrToInt(Color, C) then
+ begin
+ Result := C;
+ end
+ else
+ begin
+ Result := DecodeRGB(Color);
+ end;
+end;
+
+// Converts any color to grayscale
+function GetSVGGrayscale(aColor : TColor) : TColor;
+var
+ LGray : byte;
+begin
+ // Ignore reserved color values : "INHERIT" (TColors.SysDefault) and "none" (TColors.SysNone) .
+ if (aColor = SVG_INHERIT_COLOR) or (aColor = SVG_NONE_COLOR) then exit(aColor);
+
+ // get the luminance according to https://www.w3.org/TR/AERT/#color-contrast
+ LGray := round((0.299 * GetRValue(aColor)) + (0.587 * GetGValue(aColor)) + (0.114 * GetBValue(aColor)));
+
+ // set the result to the new grayscale color including the alpha info
+ Result := (aColor and $FF000000) or rgb(LGray, LGray, LGray);
+end;
+
+function ConvertColor(Color: TColor; Alpha: Byte): Cardinal;
+begin
+ with TColors(Color) do
+ Result := Winapi.GDIPAPI.MakeColor(Alpha, R, G, B);
+end;
+
+procedure AssignSVGColorList(AList: TStrings);
+begin
+ AList.Assign(SVGColorList);
+ AList.InsertObject(0, 'Inherit', TObject(SVG_INHERIT_COLOR));
+end;
+
+procedure StoreToList(Sender: TObject; const S: String);
+Var
+ Color: NativeInt;
+begin
+ Color := AlphaColorToColor(StringToAlphaColor(S));
+ TStringList(Sender).AddObject(S, TObject(Color));
+end;
+
+procedure CreateSVGColorList;
+Var
+ M: TMethod;
+begin
+ SVGColorList := TStringList.Create;
+ SVGColorList.Options := SVGColorList.Options - [soUseLocale];
+ SVGColorList.CaseSensitive := False;
+ SVGColorList.Sorted := True;
+ SVGColorList.Duplicates := TDuplicates.dupIgnore;
+ M.Data := SVGColorList;
+ M.Code := @StoreToList;
+ GetAlphaColorValues(TGetStrProc(M));
+ SVGColorList.Delete(SVGColorList.Count - 1);
+ // RSP-30408
+ SVGColorList.AddObject('Cyan', TObject(TColors.Cyan));
+ SVGColorList.AddObject('Darkgrey', TObject(TColors.Darkgrey));
+ SVGColorList.AddObject('Dimgrey', TObject(TColors.Dimgrey));
+ SVGColorList.AddObject('Grey', TObject(TColors.Grey));
+ SVGColorList.AddObject('Lightgrey', TObject(TColors.Lightgrey));
+ SVGColorList.AddObject('Lightslategrey', TObject(TColors.Lightslategrey));
+ SVGColorList.AddObject('Magenta', TObject(TColors.Magenta));
+ SVGColorList.AddObject('Slategrey', TObject(TColors.Slategrey));
+end;
+
+initialization
+CreateSVGColorList;
+finalization
+SVGColorList.Free;
+end.
diff --git a/Svg/SVGCommon.pas b/Svg/SVGCommon.pas
index 1e66b5a3..0f8e317a 100644
--- a/Svg/SVGCommon.pas
+++ b/Svg/SVGCommon.pas
@@ -1,104 +1,104 @@
-{******************************************************************}
-{ SVG common }
-{ }
-{ home page : http://www.mwcs.de }
-{ email : martin.walter@mwcs.de }
-{ }
-{ date : 05-04-2005 }
-{ }
-{ Use of this file is permitted for commercial and non-commercial }
-{ use, as long as the author is credited. }
-{ This file (c) 2005, 2008 Martin Walter }
-{ }
-{ Thanks to: }
-{ Kiriakos Vlahos (type conversion and utility functions) }
-{ }
-{ This Software is distributed on an "AS IS" basis, WITHOUT }
-{ WARRANTY OF ANY KIND, either express or implied. }
-{ }
-{ *****************************************************************}
-
-unit SVGCommon;
-
-interface
-
-uses
- Winapi.Windows,
- Winapi.GDIPAPI,
- Winapi.GDIPOBJ,
- System.Types,
- System.Math.Vectors,
- SVGTypes;
-
-
-function TryStrToTFloat(const S: string; out Value: TFloat): Boolean;
-
-function StrToTFloat(const S: string): TFloat;
-
-// type conversion functions
-function ToGPRectF(R: TRectF): TGPRectF; inline;
-function FromGPRectF(R: TGPRectF): TRectF; inline;
-function ToGPMatrix(const Matrix: TMatrix): TGPMatrix;
-
-// Utility functions
-function HasValue(F: TFloat): Boolean; overload; inline;
-function HasValue(I: Integer): Boolean; overload; inline;
-function FittedRect(const Bounds: TGPRectF; const Width, Height: Single): TGPRectF;
-
-implementation
-
-uses
- System.SysUtils;
-
-function TryStrToTFloat(const S: string; out Value: TFloat): Boolean;
-var
- S1: string;
-begin
- S1 := StringReplace(S, ',', FormatSettings.DecimalSeparator, [rfReplaceAll]);
- S1 := StringReplace(S1, '.', FormatSettings.DecimalSeparator, [rfReplaceAll]);
- Result := TryStrToFloat(S1, Value);
- if not Result then
- Value := 0;
-end;
-
-function StrToTFloat(const S: string): TFloat;
-begin
- TryStrToTFloat(S, Result);
-end;
-
-function ToGPRectF(R: TRectF): TGPRectF;
-begin
- with R do
- Result := WinApi.GDIPAPI.MakeRect(Left, Top, Width, Height);
-end;
-
-function FromGPRectF(R: TGPRectF): TRectF;
-begin
- with R do
- Result := TRectF.Create(X, Y, X + Width, Y + Height);
-end;
-
-function ToGPMatrix(const Matrix: TMatrix): TGPMatrix;
-begin
- Result := TGPMatrix.Create(Matrix.m11, Matrix.m12, Matrix.m21, Matrix.m22, Matrix.m31,
- Matrix.m32);
-end;
-
-function HasValue(F: TFloat): Boolean;
-begin
- Result := F <> UndefinedFloat;
-end;
-
-function HasValue(I: Integer): Boolean; overload; inline;
-begin
- Result := I <> UndefinedInt;
-end;
-
-
-function FittedRect(const Bounds: TGPRectF; const Width, Height: Single): TGPRectF;
-begin
- Result := ToGPRectF(TRectF.Create(0, 0, Width, Height).FitInto(FromGPRectF(Bounds)));
-end;
-
-
-end.
+{******************************************************************}
+{ SVG common }
+{ }
+{ home page : http://www.mwcs.de }
+{ email : martin.walter@mwcs.de }
+{ }
+{ date : 05-04-2005 }
+{ }
+{ Use of this file is permitted for commercial and non-commercial }
+{ use, as long as the author is credited. }
+{ This file (c) 2005, 2008 Martin Walter }
+{ }
+{ Thanks to: }
+{ Kiriakos Vlahos (type conversion and utility functions) }
+{ }
+{ This Software is distributed on an "AS IS" basis, WITHOUT }
+{ WARRANTY OF ANY KIND, either express or implied. }
+{ }
+{ *****************************************************************}
+
+unit SVGCommon;
+
+interface
+
+uses
+ Winapi.Windows,
+ Winapi.GDIPAPI,
+ Winapi.GDIPOBJ,
+ System.Types,
+ System.Math.Vectors,
+ SVGTypes;
+
+
+function TryStrToTFloat(const S: string; out Value: TFloat): Boolean;
+
+function StrToTFloat(const S: string): TFloat;
+
+// type conversion functions
+function ToGPRectF(R: TRectF): TGPRectF; inline;
+function FromGPRectF(R: TGPRectF): TRectF; inline;
+function ToGPMatrix(const Matrix: TMatrix): TGPMatrix;
+
+// Utility functions
+function HasValue(F: TFloat): Boolean; overload; inline;
+function HasValue(I: Integer): Boolean; overload; inline;
+function FittedRect(const Bounds: TGPRectF; const Width, Height: Single): TGPRectF;
+
+implementation
+
+uses
+ System.SysUtils;
+
+function TryStrToTFloat(const S: string; out Value: TFloat): Boolean;
+var
+ S1: string;
+begin
+ S1 := StringReplace(S, ',', FormatSettings.DecimalSeparator, [rfReplaceAll]);
+ S1 := StringReplace(S1, '.', FormatSettings.DecimalSeparator, [rfReplaceAll]);
+ Result := TryStrToFloat(S1, Value);
+ if not Result then
+ Value := 0;
+end;
+
+function StrToTFloat(const S: string): TFloat;
+begin
+ TryStrToTFloat(S, Result);
+end;
+
+function ToGPRectF(R: TRectF): TGPRectF;
+begin
+ with R do
+ Result := WinApi.GDIPAPI.MakeRect(Left, Top, Width, Height);
+end;
+
+function FromGPRectF(R: TGPRectF): TRectF;
+begin
+ with R do
+ Result := TRectF.Create(X, Y, X + Width, Y + Height);
+end;
+
+function ToGPMatrix(const Matrix: TMatrix): TGPMatrix;
+begin
+ Result := TGPMatrix.Create(Matrix.m11, Matrix.m12, Matrix.m21, Matrix.m22, Matrix.m31,
+ Matrix.m32);
+end;
+
+function HasValue(F: TFloat): Boolean;
+begin
+ Result := F <> UndefinedFloat;
+end;
+
+function HasValue(I: Integer): Boolean; overload; inline;
+begin
+ Result := I <> UndefinedInt;
+end;
+
+
+function FittedRect(const Bounds: TGPRectF; const Width, Height: Single): TGPRectF;
+begin
+ Result := ToGPRectF(TRectF.Create(0, 0, Width, Height).FitInto(FromGPRectF(Bounds)));
+end;
+
+
+end.
diff --git a/Svg/SVGPath.pas b/Svg/SVGPath.pas
index 4b4c5086..0a012adf 100644
--- a/Svg/SVGPath.pas
+++ b/Svg/SVGPath.pas
@@ -1,662 +1,662 @@
-{******************************************************************}
-{ SVG path classes }
-{ }
-{ home page : http://www.mwcs.de }
-{ email : martin.walter@mwcs.de }
-{ }
-{ date : 05-04-2008 }
-{ }
-{ Use of this file is permitted for commercial and non-commercial }
-{ use, as long as the author is credited. }
-{ This file (c) 2005, 2008 Martin Walter }
-{ }
-{ Thanks to: }
-{ Kiriakos Vlahos (fixed SVGPath...) }
-{ }
-{ This Software is distributed on an "AS IS" basis, WITHOUT }
-{ WARRANTY OF ANY KIND, either express or implied. }
-{ }
-{ *****************************************************************}
-
-unit SVGPath;
-
-interface
-
-uses
- Winapi.Windows, Winapi.GDIPOBJ,
- System.Types, System.Classes,
- SVGTypes, SVG;
-
-type
- TSVGPathElement = class(TSVGObject)
- private
- FStartX: TFloat;
- FStartY: TFloat;
- FStopX: TFloat;
- FStopY: TFloat;
- protected
- procedure AssignTo(Dest: TPersistent); override;
- public
- function GetBounds: TRectF; virtual; abstract;
- procedure AddToPath(Path: TGPGraphicsPath); virtual; abstract;
- procedure Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement); virtual;
-
- procedure PaintToGraphics(Graphics: TGPGraphics); override;
- procedure PaintToPath(Path: TGPGraphicsPath); override;
-
- property StartX: TFloat read FStartX write FStartX;
- property StartY: TFloat read FStartY write FStartY;
- property StopX: TFloat read FStopX write FStopX;
- property StopY: TFloat read FStopY write FStopY;
- end;
-
- TSVGPathMove = class(TSVGPathElement)
- public
- function GetBounds: TRectF; override;
- procedure AddToPath(Path: TGPGraphicsPath); override;
- procedure Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement); override;
- end;
-
- TSVGPathLine = class(TSVGPathElement)
- public
- function GetBounds: TRectF; override;
- procedure AddToPath(Path: TGPGraphicsPath); override;
- procedure Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement); override;
- end;
-
- TSVGPathCurve = class(TSVGPathElement)
- private
- FControl1X: TFloat;
- FControl1Y: TFloat;
- FControl2X: TFloat;
- FControl2Y: TFloat;
- protected
- procedure AssignTo(Dest: TPersistent); override;
- public
- function GetBounds: TRectF; override;
- procedure AddToPath(Path: TGPGraphicsPath); override;
- procedure Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement); override;
-
- property Control1X: TFloat read FControl1X write FControl1X;
- property Control1Y: TFloat read FControl1Y write FControl1Y;
- property Control2X: TFloat read FControl2X write FControl2X;
- property Control2Y: TFloat read FControl2Y write FControl2Y;
- end;
-
- TSVGPathEllipticArc = class(TSVGPathElement)
- private
- FRX: TFloat;
- FRY: TFloat;
- FXRot: TFloat;
- FLarge: Integer;
- FSweep: Integer;
- protected
- procedure AssignTo(Dest: TPersistent); override;
- public
- function GetBounds: TRectF; override;
- procedure AddToPath(Path: TGPGraphicsPath); override;
- procedure Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement); override;
-
- property RX: TFloat read FRX write FRX;
- property RY: TFloat read FRY write FRY;
- property XRot: TFloat read FXRot write FXRot;
- property Large: Integer read FLarge write FLarge;
- property Sweep: Integer read FSweep write FSweep;
- end;
-
- TSVGPathClose = class(TSVGPathElement)
- private
- function FindLastMoveTo: TSVGPathMove;
- public
- function GetBounds: TRectF; override;
- procedure AddToPath(Path: TGPGraphicsPath); override;
- procedure Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement); override;
- end;
-
-implementation
-
-uses
- System.SysUtils, System.Math,
- Winapi.GDIPAPI,
- SVGCommon, SVGParse;
-
-{$IF CompilerVersion <= 28}
-function FMod(const ANumerator, ADenominator: Single): Single;
-begin
- Result := ANumerator - Trunc(ANumerator / ADenominator) * ADenominator;
-end;
-{$IFEND}
-
-// TSVGPathElement
-
-procedure TSVGPathElement.AssignTo(Dest: TPersistent);
-begin
- inherited;
- if Dest is TSVGPathElement then
- begin
- TSVGPathElement(Dest).FStartX := FStartX;
- TSVGPathElement(Dest).FStartY := FStartY;
- TSVGPathElement(Dest).FStopX := FStopX;
- TSVGPathElement(Dest).FStopY := FStopY;
- end;
-end;
-
-procedure TSVGPathElement.Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement);
-begin
- if Assigned(Previous) then
- begin
- FStartX := Previous.FStopX;
- FStartY := Previous.FStopY;
- end;
-end;
-
-procedure TSVGPathElement.PaintToGraphics(Graphics: TGPGraphics);
-begin
-end;
-
-procedure TSVGPathElement.PaintToPath(Path: TGPGraphicsPath);
-begin
-end;
-
-// TSVGPathMove
-
-function TSVGPathMove.GetBounds: TRectF;
-begin
- Result.Left := 0;
- Result.Top := 0;
- Result.Width := 0;
- Result.Height := 0;
-end;
-
-procedure TSVGPathMove.AddToPath(Path: TGPGraphicsPath);
-begin
- Path.StartFigure;
-end;
-
-procedure TSVGPathMove.Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement);
-begin
- inherited;
- if not TryStrToTFloat(SL[Position + 1], FStopX) then
- FStopX := 0;
- if not TryStrToTFloat(SL[Position + 2], FStopY) then
- FStopY := 0;
-
- if SL[Position] = 'm' then
- begin
- FStopX := FStartX + FStopX;
- FStopY := FStartY + FStopY;
- end;
-
- Inc(Position, 2);
-end;
-
-
-// TSVGPathLine
-
-function TSVGPathLine.GetBounds: TRectF;
-begin
- Result.Left := Min(FStartX, FStopX);
- Result.Top := Min(FStartY, FStopY);
- Result.Width := Abs(FStartX - FStopX);
- Result.Height := Abs(FStartY - FStopY);
-end;
-
-procedure TSVGPathLine.AddToPath(Path: TGPGraphicsPath);
-begin
- Path.AddLine(FStartX, FStartY, FStopX, FStopY);
-end;
-
-procedure TSVGPathLine.Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement);
-var
- Command: string;
-begin
- inherited;
-
- Command := SL[Position];
- if (Command = 'L') or (Command = 'l') then
- begin
- if not TryStrToTFloat(SL[Position + 1], FStopX) then
- FStopX := 0;
- if not TryStrToTFloat(SL[Position + 2], FStopY) then
- FStopY := 0;
-
- if SL[Position] = 'l' then
- begin
- FStopX := FStartX + FStopX;
- FStopY := FStartY + FStopY;
- end;
-
- Inc(Position, 2);
- end;
-
- if (Command = 'H') or (Command = 'h') then
- begin
- if not TryStrToTFloat(SL[Position + 1], FStopX) then
- FStopX := 0;
-
- if Command = 'h' then
- FStopX := FStartX + FStopX;
- FStopY := FStartY;
- Inc(Position);
- end;
-
-
- if (Command = 'V') or (Command = 'v') then
- begin
- if not TryStrToTFloat(SL[Position + 1], FStopY) then
- FStopY := 0;
-
- if Command = 'v' then
- FStopY := FStartY + FStopY;
- FStopX := FStartX;
- Inc(Position);
- end;
-end;
-
-
-// TSVGPathCurve
-
-procedure TSVGPathCurve.AssignTo(Dest: TPersistent);
-begin
- inherited;
- if Dest is TSVGPathCurve then
- begin
- TSVGPathCurve(Dest).FControl1X := FControl1X;
- TSVGPathCurve(Dest).FControl1Y := FControl1Y;
- TSVGPathCurve(Dest).FControl2X := FControl2X;
- TSVGPathCurve(Dest).FControl2Y := FControl2Y;
- end;
-end;
-
-function TSVGPathCurve.GetBounds: TRectF;
-var
- Right, Bottom: TFloat;
-begin
- Result.Left := Min(FStartX, Min(FStopX, Min(FControl1X, FControl2X)));
- Result.Top := Min(FStartY, Min(FStopY, Min(FControl1Y, FControl2Y)));
-
- Right := Max(FStartX, Max(FStopX, Max(FControl1X, FControl2X)));
- Bottom := Max(FStartY, Max(FStopY, Max(FControl1Y, FControl2Y)));
- Result.Width := Right - Result.Left;
- Result.Height := Bottom - Result.Top;
-end;
-
-procedure TSVGPathCurve.AddToPath(Path: TGPGraphicsPath);
-begin
- Path.AddBezier(FStartX, FStartY, FControl1X, FControl1Y,
- FControl2X, FControl2Y, FStopX, FStopY);
-end;
-
-procedure TSVGPathCurve.Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement);
-var
- Command: string;
-begin
- inherited;
-
- Command := SL[Position];
- if (Command = 'C') or (Command = 'c') then
- begin
- TryStrToTFloat(SL[Position + 1], FControl1X);
- TryStrToTFloat(SL[Position + 2], FControl1Y);
- TryStrToTFloat(SL[Position + 3], FControl2X);
- TryStrToTFloat(SL[Position + 4], FControl2Y);
- TryStrToTFloat(SL[Position + 5], FStopX);
- TryStrToTFloat(SL[Position + 6], FStopY);
- Inc(Position, 6);
-
- if Command = 'c' then
- begin
- FControl1X := FStartX + FControl1X;
- FControl1Y := FStartY + FControl1Y;
- FControl2X := FStartX + FControl2X;
- FControl2Y := FStartY + FControl2Y;
- FStopX := FStartX + FStopX;
- FStopY := FStartY + FStopY;
- end;
- end;
-
- if (Command = 'S') or (Command = 's') then
- begin
- FControl1X := FStartX;
- FControl1Y := FStartY;
- TryStrToTFloat(SL[Position + 1], FControl2X);
- TryStrToTFloat(SL[Position + 2], FControl2Y);
- TryStrToTFloat(SL[Position + 3], FStopX);
- TryStrToTFloat(SL[Position + 4], FStopY);
- Inc(Position, 4);
-
- if Previous is TSVGPathCurve then
- begin
- FControl1X := FStartX + (FStartX - TSVGPathCurve(Previous).FControl2X);
- FControl1Y := FStartY + (FStartY - TSVGPathCurve(Previous).FControl2Y);
- end;
-
- if Command = 's' then
- begin
- FControl2X := FStartX + FControl2X;
- FControl2Y := FStartY + FControl2Y;
- FStopX := FStartX + FStopX;
- FStopY := FStartY + FStopY;
- end;
- end;
-
- if (Command = 'Q') or (Command = 'q') then
- begin
- TryStrToTFloat(SL[Position + 1], FControl1X);
- TryStrToTFloat(SL[Position + 2], FControl1Y);
- TryStrToTFloat(SL[Position + 3], FStopX);
- TryStrToTFloat(SL[Position + 4], FStopY);
- FControl2X := FControl1X;
- FControl2Y := FControl1Y;
- Inc(Position, 4);
-
- if Command = 'q' then
- begin
- FControl1X := FStartX + FControl1X;
- FControl1Y := FStartY + FControl1Y;
- FControl2X := FStartX + FControl2X;
- FControl2Y := FStartY + FControl2Y;
- FStopX := FStartX + FStopX;
- FStopY := FStartY + FStopY;
- end;
- end;
-
- if (Command = 'T') or (Command = 't') then
- begin
- FControl1X := FStartX;
- FControl1Y := FStartY;
- TryStrToTFloat(SL[Position + 1], FStopX);
- TryStrToTFloat(SL[Position + 2], FStopY);
- Inc(Position, 2);
-
- if Previous is TSVGPathCurve then
- begin
- FControl1X := FStartX + (FStartX - TSVGPathCurve(Previous).FControl2X);
- FControl1Y := FStartY + (FStartY - TSVGPathCurve(Previous).FControl2Y);
- end;
-
- FControl2X := FControl1X;
- FControl2Y := FControl1Y;
-
- if Command = 't' then
- begin
- FStopX := FStartX + FStopX;
- FStopY := FStartY + FStopY;
- end;
- end;
-end;
-
-
-// TSVGPathEllipticArc
-
-procedure TSVGPathEllipticArc.AssignTo(Dest: TPersistent);
-begin
- inherited;
- if Dest is TSVGPathEllipticArc then
- begin
- TSVGPathEllipticArc(Dest).FRX := FRX;
- TSVGPathEllipticArc(Dest).FRY := FRY;
- TSVGPathEllipticArc(Dest).FXRot := FXRot;
- TSVGPathEllipticArc(Dest).FLarge := FLarge;
- TSVGPathEllipticArc(Dest).FSweep := FSweep;
- end;
-end;
-
-function TSVGPathEllipticArc.GetBounds: TRectF;
-begin
- Result.Left := Min(FStartX, FStopX);
- Result.Top := Min(FStartY, FStopY);
- Result.Width := Abs(FStartX - FStopX);
- Result.Height := Abs(FStartY - FStopY);
-end;
-
-procedure TSVGPathEllipticArc.AddToPath(Path: TGPGraphicsPath);
-var
- R: TGPRectF;
- X1, Y1: TFloat;
- DX2, DY2: TFloat;
- Angle: TFloat;
- SinAngle: TFloat;
- CosAngle: TFloat;
- LRX: TFloat;
- LRY: TFloat;
- PRX: TFloat;
- PRY: TFloat;
- PX1: TFloat;
- PY1: TFloat;
- RadiiCheck: TFloat;
- sign: TFloat;
- Sq: TFloat;
- Coef: TFloat;
- CX1: TFloat;
- CY1: TFloat;
- sx2: TFloat;
- sy2: TFloat;
- cx: TFloat;
- cy: TFloat;
- ux: TFloat;
- uy: TFloat;
- vx: TFloat;
- vy: TFloat;
- p: TFloat;
- n: TFloat;
- AngleStart: TFloat;
- AngleExtent: TFloat;
- ArcPath: TGPGraphicsPath;
- Matrix: TGPMatrix;
- Center: TGPPointF;
-begin
- if (FStartX = FStopX) and (FStartY = FStopY) then
- Exit;
-
- if (FRX = 0) or (FRY = 0) then
- begin
- Path.AddLine(FStartX, FStartY, FStopX, FStopY);
- Exit;
- end;
-
- //
- // Elliptical arc implementation based on the SVG specification notes
- //
-
- // Compute the half distance between the current and the final point
- DX2 := (FStartX - FStopX) / 2.0;
- DY2 := (FStartY - FStopY) / 2.0;
-
- // Convert angle from degrees to radians
- Angle := DegToRad(FMod(FXRot, c360));
- cosAngle := cos(Angle);
- sinAngle := sin(Angle);
-
- //
- // Step 1 : Compute (x1, y1)
- //
- x1 := (cosAngle * DX2 + sinAngle * DY2);
- y1 := (-sinAngle * DX2 + cosAngle * DY2);
- // Ensure radii are large enough
- LRX := abs(Frx);
- LRY := abs(Fry);
- Prx := LRX * LRX;
- Pry := LRY * LRY;
- Px1 := x1 * x1;
- Py1 := y1 * y1;
-
- // check that radii are large enough
- RadiiCheck := Px1/Prx + Py1/Pry;
- if (RadiiCheck > 1) then
- begin
- LRX := sqrt(RadiiCheck) * LRX;
- LRY := sqrt(RadiiCheck) * LRY;
- Prx := LRX * LRX;
- Pry := LRY * LRY;
- end;
-
- //
- // Step 2 : Compute (cx1, cy1)
- //
- sign := IfThen(FLarge = FSweep, -1, 1);
- Sq := ((Prx * Pry)-(Prx * Py1)-(Pry * Px1)) / ((Prx * Py1)+(Pry * Px1));
- Sq := IfThen(Sq < 0, 0.0, Sq);
- Coef := (sign * sqrt(Sq));
- CX1 := Coef * ((LRX * y1) / LRY);
- CY1 := Coef * -((LRY * x1) / LRX);
-
- //
- // Step 3 : Compute (cx, cy) from (cx1, cy1)
- //
- sx2 := (FStartX + FStopX) / 2.0;
- sy2 := (FStartY + FStopY) / 2.0;
- cx := sx2 + (cosAngle * CX1 - sinAngle * CY1);
- cy := sy2 + (sinAngle * CX1 + cosAngle * CY1);
-
- //
- // Step 4 : Compute the angleStart (angle1) and the angleExtent (dangle)
- //
- ux := (x1 - CX1) / LRX;
- uy := (y1 - CY1) / LRY;
- vx := (-x1 - CX1) / LRX;
- vy := (-y1 - CY1) / LRY;
-
- // Compute the angle start
- n := (ux * ux) + (uy * uy);
- n := sqrt(n);
-// n := sqrt((ux * ux) + (uy * uy));
- p := ux; // (1 * ux) + (0 * uy)
- sign := IfThen(uy < 0, -1, 1);
- AngleStart := RadToDeg(sign * arccos(p / n));
-
- // Compute the angle extent
- n := sqrt((ux * ux + uy * uy) * (vx * vx + vy * vy));
- p := ux * vx + uy * vy;
- sign := IfThen(ux * vy - uy * vx < 0, -1, 1);
- AngleExtent := RadToDeg(sign * arccos(p / n));
- if ((Fsweep = 0) and (AngleExtent > 0)) then
- begin
- AngleExtent := AngleExtent - c360;
- end else if ((FSweep = 1) and (AngleExtent < 0)) then
- begin
- AngleExtent := AngleExtent + c360;
- end;
-
- AngleStart := FMod(AngleStart, c360);
- AngleExtent := FMod(AngleExtent, c360);
-
- R.x := cx - LRX;
- R.y := cy - LRY;
- R.width := LRX * 2.0;
- R.height := LRY * 2.0;
-
- ArcPath := TGPGraphicsPath.Create;
- try
- ArcPath.AddArc(R, AngleStart, AngleExtent);
- Matrix := TGPMatrix.Create;
- try
- Center.X := cx;
- Center.Y := cy;
- Matrix.RotateAt(FXRot, Center);
- ArcPath.Transform(Matrix);
- finally
- Matrix.Free;
- end;
- Path.AddPath(ArcPath, True);
- finally
- ArcPath.Free;
- end;
-end;
-
-procedure TSVGPathEllipticArc.Read(SL: TStrings; var Position: Integer; Previous: TSVGPathElement);
-var
- Command: string;
-begin
- inherited;
-
- Command := SL[Position];
- if (Command = 'A') or (Command = 'a') then
- begin
- TryStrToTFloat(SL[Position + 1], FRX);
- TryStrToTFloat(SL[Position + 2], FRY);
- TryStrToTFloat(SL[Position + 3], FXRot);
- TryStrToInt(SL[Position + 4], FLarge);
- TryStrToInt(SL[Position + 5], FSweep);
- TryStrToTFloat(SL[Position + 6], FStopX);
- TryStrToTFloat(SL[Position + 7], FStopY);
- Inc(Position, 7);
-
- FRX := Abs(FRX);
- FRY := Abs(FRY);
-
- if FLarge <> 0 then
- FLarge := 1;
-
- if FSweep <> 0 then
- FSweep := 1;
-
- if Command = 'a' then
- begin
- FStopX := FStartX + FStopX;
- FStopY := FStartY + FStopY;
- end;
- end;
-end;
-
-// TSVGPathClose
-
-function TSVGPathClose.FindLastMoveTo: TSVGPathMove;
-var
- Index: Integer;
- Previous: TSVGObject;
-begin
- for Index := Parent.Count - 2 downto 0 do
- begin
- Previous := Parent.Items[Index];
- if Previous is TSVGPathMove then
- begin
- Result := TSVGPathMove(Previous);
- Exit;
- end;
- end;
- Result := nil;
-end;
-
-function TSVGPathClose.GetBounds: TRectF;
-begin
- Result.Left := 0;
- Result.Top := 0;
- Result.Width := 0;
- Result.Height := 0;
-end;
-
-procedure TSVGPathClose.Read(SL: TStrings; var Position: Integer;
- Previous: TSVGPathElement);
-var
- LastMoveTo: TSVGPathMove;
-begin
- FStartX := Previous.FStopX;
- FStartY := Previous.FStopY;
- LastMoveTo := FindLastMoveTo;
- if Assigned(LastMoveTo) then
- begin
- FStopX := LastMoveTo.FStopX;
- FStopY := LastMoveTo.FStopY;
- end else begin
- FStopX := FStartX;
- FStopY := FStartY;
- end;
-end;
-
-procedure TSVGPathClose.AddToPath(Path: TGPGraphicsPath);
-begin
- Path.CloseFigure;
-end;
-
-end.
+{******************************************************************}
+{ SVG path classes }
+{ }
+{ home page : http://www.mwcs.de }
+{ email : martin.walter@mwcs.de }
+{ }
+{ date : 05-04-2008 }
+{ }
+{ Use of this file is permitted for commercial and non-commercial }
+{ use, as long as the author is credited. }
+{ This file (c) 2005, 2008 Martin Walter }
+{ }
+{ Thanks to: }
+{ Kiriakos Vlahos (fixed SVGPath...) }
+{ }
+{ This Software is distributed on an "AS IS" basis, WITHOUT }
+{ WARRANTY OF ANY KIND, either express or implied. }
+{ }
+{ *****************************************************************}
+
+unit SVGPath;
+
+interface
+
+uses
+ Winapi.Windows, Winapi.GDIPOBJ,
+ System.Types, System.Classes,
+ SVGTypes, SVG;
+
+type
+ TSVGPathElement = class(TSVGObject)
+ private
+ FStartX: TFloat;
+ FStartY: TFloat;
+ FStopX: TFloat;
+ FStopY: TFloat;
+ protected
+ procedure AssignTo(Dest: TPersistent); override;
+ public
+ function GetBounds: TRectF; virtual; abstract;
+ procedure AddToPath(Path: TGPGraphicsPath); virtual; abstract;
+ procedure Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement); virtual;
+
+ procedure PaintToGraphics(Graphics: TGPGraphics); override;
+ procedure PaintToPath(Path: TGPGraphicsPath); override;
+
+ property StartX: TFloat read FStartX write FStartX;
+ property StartY: TFloat read FStartY write FStartY;
+ property StopX: TFloat read FStopX write FStopX;
+ property StopY: TFloat read FStopY write FStopY;
+ end;
+
+ TSVGPathMove = class(TSVGPathElement)
+ public
+ function GetBounds: TRectF; override;
+ procedure AddToPath(Path: TGPGraphicsPath); override;
+ procedure Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement); override;
+ end;
+
+ TSVGPathLine = class(TSVGPathElement)
+ public
+ function GetBounds: TRectF; override;
+ procedure AddToPath(Path: TGPGraphicsPath); override;
+ procedure Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement); override;
+ end;
+
+ TSVGPathCurve = class(TSVGPathElement)
+ private
+ FControl1X: TFloat;
+ FControl1Y: TFloat;
+ FControl2X: TFloat;
+ FControl2Y: TFloat;
+ protected
+ procedure AssignTo(Dest: TPersistent); override;
+ public
+ function GetBounds: TRectF; override;
+ procedure AddToPath(Path: TGPGraphicsPath); override;
+ procedure Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement); override;
+
+ property Control1X: TFloat read FControl1X write FControl1X;
+ property Control1Y: TFloat read FControl1Y write FControl1Y;
+ property Control2X: TFloat read FControl2X write FControl2X;
+ property Control2Y: TFloat read FControl2Y write FControl2Y;
+ end;
+
+ TSVGPathEllipticArc = class(TSVGPathElement)
+ private
+ FRX: TFloat;
+ FRY: TFloat;
+ FXRot: TFloat;
+ FLarge: Integer;
+ FSweep: Integer;
+ protected
+ procedure AssignTo(Dest: TPersistent); override;
+ public
+ function GetBounds: TRectF; override;
+ procedure AddToPath(Path: TGPGraphicsPath); override;
+ procedure Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement); override;
+
+ property RX: TFloat read FRX write FRX;
+ property RY: TFloat read FRY write FRY;
+ property XRot: TFloat read FXRot write FXRot;
+ property Large: Integer read FLarge write FLarge;
+ property Sweep: Integer read FSweep write FSweep;
+ end;
+
+ TSVGPathClose = class(TSVGPathElement)
+ private
+ function FindLastMoveTo: TSVGPathMove;
+ public
+ function GetBounds: TRectF; override;
+ procedure AddToPath(Path: TGPGraphicsPath); override;
+ procedure Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement); override;
+ end;
+
+implementation
+
+uses
+ System.SysUtils, System.Math,
+ Winapi.GDIPAPI,
+ SVGCommon, SVGParse;
+
+{$IF CompilerVersion <= 28}
+function FMod(const ANumerator, ADenominator: Single): Single;
+begin
+ Result := ANumerator - Trunc(ANumerator / ADenominator) * ADenominator;
+end;
+{$IFEND}
+
+// TSVGPathElement
+
+procedure TSVGPathElement.AssignTo(Dest: TPersistent);
+begin
+ inherited;
+ if Dest is TSVGPathElement then
+ begin
+ TSVGPathElement(Dest).FStartX := FStartX;
+ TSVGPathElement(Dest).FStartY := FStartY;
+ TSVGPathElement(Dest).FStopX := FStopX;
+ TSVGPathElement(Dest).FStopY := FStopY;
+ end;
+end;
+
+procedure TSVGPathElement.Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement);
+begin
+ if Assigned(Previous) then
+ begin
+ FStartX := Previous.FStopX;
+ FStartY := Previous.FStopY;
+ end;
+end;
+
+procedure TSVGPathElement.PaintToGraphics(Graphics: TGPGraphics);
+begin
+end;
+
+procedure TSVGPathElement.PaintToPath(Path: TGPGraphicsPath);
+begin
+end;
+
+// TSVGPathMove
+
+function TSVGPathMove.GetBounds: TRectF;
+begin
+ Result.Left := 0;
+ Result.Top := 0;
+ Result.Width := 0;
+ Result.Height := 0;
+end;
+
+procedure TSVGPathMove.AddToPath(Path: TGPGraphicsPath);
+begin
+ Path.StartFigure;
+end;
+
+procedure TSVGPathMove.Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement);
+begin
+ inherited;
+ if not TryStrToTFloat(SL[Position + 1], FStopX) then
+ FStopX := 0;
+ if not TryStrToTFloat(SL[Position + 2], FStopY) then
+ FStopY := 0;
+
+ if SL[Position] = 'm' then
+ begin
+ FStopX := FStartX + FStopX;
+ FStopY := FStartY + FStopY;
+ end;
+
+ Inc(Position, 2);
+end;
+
+
+// TSVGPathLine
+
+function TSVGPathLine.GetBounds: TRectF;
+begin
+ Result.Left := Min(FStartX, FStopX);
+ Result.Top := Min(FStartY, FStopY);
+ Result.Width := Abs(FStartX - FStopX);
+ Result.Height := Abs(FStartY - FStopY);
+end;
+
+procedure TSVGPathLine.AddToPath(Path: TGPGraphicsPath);
+begin
+ Path.AddLine(FStartX, FStartY, FStopX, FStopY);
+end;
+
+procedure TSVGPathLine.Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement);
+var
+ Command: string;
+begin
+ inherited;
+
+ Command := SL[Position];
+ if (Command = 'L') or (Command = 'l') then
+ begin
+ if not TryStrToTFloat(SL[Position + 1], FStopX) then
+ FStopX := 0;
+ if not TryStrToTFloat(SL[Position + 2], FStopY) then
+ FStopY := 0;
+
+ if SL[Position] = 'l' then
+ begin
+ FStopX := FStartX + FStopX;
+ FStopY := FStartY + FStopY;
+ end;
+
+ Inc(Position, 2);
+ end;
+
+ if (Command = 'H') or (Command = 'h') then
+ begin
+ if not TryStrToTFloat(SL[Position + 1], FStopX) then
+ FStopX := 0;
+
+ if Command = 'h' then
+ FStopX := FStartX + FStopX;
+ FStopY := FStartY;
+ Inc(Position);
+ end;
+
+
+ if (Command = 'V') or (Command = 'v') then
+ begin
+ if not TryStrToTFloat(SL[Position + 1], FStopY) then
+ FStopY := 0;
+
+ if Command = 'v' then
+ FStopY := FStartY + FStopY;
+ FStopX := FStartX;
+ Inc(Position);
+ end;
+end;
+
+
+// TSVGPathCurve
+
+procedure TSVGPathCurve.AssignTo(Dest: TPersistent);
+begin
+ inherited;
+ if Dest is TSVGPathCurve then
+ begin
+ TSVGPathCurve(Dest).FControl1X := FControl1X;
+ TSVGPathCurve(Dest).FControl1Y := FControl1Y;
+ TSVGPathCurve(Dest).FControl2X := FControl2X;
+ TSVGPathCurve(Dest).FControl2Y := FControl2Y;
+ end;
+end;
+
+function TSVGPathCurve.GetBounds: TRectF;
+var
+ Right, Bottom: TFloat;
+begin
+ Result.Left := Min(FStartX, Min(FStopX, Min(FControl1X, FControl2X)));
+ Result.Top := Min(FStartY, Min(FStopY, Min(FControl1Y, FControl2Y)));
+
+ Right := Max(FStartX, Max(FStopX, Max(FControl1X, FControl2X)));
+ Bottom := Max(FStartY, Max(FStopY, Max(FControl1Y, FControl2Y)));
+ Result.Width := Right - Result.Left;
+ Result.Height := Bottom - Result.Top;
+end;
+
+procedure TSVGPathCurve.AddToPath(Path: TGPGraphicsPath);
+begin
+ Path.AddBezier(FStartX, FStartY, FControl1X, FControl1Y,
+ FControl2X, FControl2Y, FStopX, FStopY);
+end;
+
+procedure TSVGPathCurve.Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement);
+var
+ Command: string;
+begin
+ inherited;
+
+ Command := SL[Position];
+ if (Command = 'C') or (Command = 'c') then
+ begin
+ TryStrToTFloat(SL[Position + 1], FControl1X);
+ TryStrToTFloat(SL[Position + 2], FControl1Y);
+ TryStrToTFloat(SL[Position + 3], FControl2X);
+ TryStrToTFloat(SL[Position + 4], FControl2Y);
+ TryStrToTFloat(SL[Position + 5], FStopX);
+ TryStrToTFloat(SL[Position + 6], FStopY);
+ Inc(Position, 6);
+
+ if Command = 'c' then
+ begin
+ FControl1X := FStartX + FControl1X;
+ FControl1Y := FStartY + FControl1Y;
+ FControl2X := FStartX + FControl2X;
+ FControl2Y := FStartY + FControl2Y;
+ FStopX := FStartX + FStopX;
+ FStopY := FStartY + FStopY;
+ end;
+ end;
+
+ if (Command = 'S') or (Command = 's') then
+ begin
+ FControl1X := FStartX;
+ FControl1Y := FStartY;
+ TryStrToTFloat(SL[Position + 1], FControl2X);
+ TryStrToTFloat(SL[Position + 2], FControl2Y);
+ TryStrToTFloat(SL[Position + 3], FStopX);
+ TryStrToTFloat(SL[Position + 4], FStopY);
+ Inc(Position, 4);
+
+ if Previous is TSVGPathCurve then
+ begin
+ FControl1X := FStartX + (FStartX - TSVGPathCurve(Previous).FControl2X);
+ FControl1Y := FStartY + (FStartY - TSVGPathCurve(Previous).FControl2Y);
+ end;
+
+ if Command = 's' then
+ begin
+ FControl2X := FStartX + FControl2X;
+ FControl2Y := FStartY + FControl2Y;
+ FStopX := FStartX + FStopX;
+ FStopY := FStartY + FStopY;
+ end;
+ end;
+
+ if (Command = 'Q') or (Command = 'q') then
+ begin
+ TryStrToTFloat(SL[Position + 1], FControl1X);
+ TryStrToTFloat(SL[Position + 2], FControl1Y);
+ TryStrToTFloat(SL[Position + 3], FStopX);
+ TryStrToTFloat(SL[Position + 4], FStopY);
+ FControl2X := FControl1X;
+ FControl2Y := FControl1Y;
+ Inc(Position, 4);
+
+ if Command = 'q' then
+ begin
+ FControl1X := FStartX + FControl1X;
+ FControl1Y := FStartY + FControl1Y;
+ FControl2X := FStartX + FControl2X;
+ FControl2Y := FStartY + FControl2Y;
+ FStopX := FStartX + FStopX;
+ FStopY := FStartY + FStopY;
+ end;
+ end;
+
+ if (Command = 'T') or (Command = 't') then
+ begin
+ FControl1X := FStartX;
+ FControl1Y := FStartY;
+ TryStrToTFloat(SL[Position + 1], FStopX);
+ TryStrToTFloat(SL[Position + 2], FStopY);
+ Inc(Position, 2);
+
+ if Previous is TSVGPathCurve then
+ begin
+ FControl1X := FStartX + (FStartX - TSVGPathCurve(Previous).FControl2X);
+ FControl1Y := FStartY + (FStartY - TSVGPathCurve(Previous).FControl2Y);
+ end;
+
+ FControl2X := FControl1X;
+ FControl2Y := FControl1Y;
+
+ if Command = 't' then
+ begin
+ FStopX := FStartX + FStopX;
+ FStopY := FStartY + FStopY;
+ end;
+ end;
+end;
+
+
+// TSVGPathEllipticArc
+
+procedure TSVGPathEllipticArc.AssignTo(Dest: TPersistent);
+begin
+ inherited;
+ if Dest is TSVGPathEllipticArc then
+ begin
+ TSVGPathEllipticArc(Dest).FRX := FRX;
+ TSVGPathEllipticArc(Dest).FRY := FRY;
+ TSVGPathEllipticArc(Dest).FXRot := FXRot;
+ TSVGPathEllipticArc(Dest).FLarge := FLarge;
+ TSVGPathEllipticArc(Dest).FSweep := FSweep;
+ end;
+end;
+
+function TSVGPathEllipticArc.GetBounds: TRectF;
+begin
+ Result.Left := Min(FStartX, FStopX);
+ Result.Top := Min(FStartY, FStopY);
+ Result.Width := Abs(FStartX - FStopX);
+ Result.Height := Abs(FStartY - FStopY);
+end;
+
+procedure TSVGPathEllipticArc.AddToPath(Path: TGPGraphicsPath);
+var
+ R: TGPRectF;
+ X1, Y1: TFloat;
+ DX2, DY2: TFloat;
+ Angle: TFloat;
+ SinAngle: TFloat;
+ CosAngle: TFloat;
+ LRX: TFloat;
+ LRY: TFloat;
+ PRX: TFloat;
+ PRY: TFloat;
+ PX1: TFloat;
+ PY1: TFloat;
+ RadiiCheck: TFloat;
+ sign: TFloat;
+ Sq: TFloat;
+ Coef: TFloat;
+ CX1: TFloat;
+ CY1: TFloat;
+ sx2: TFloat;
+ sy2: TFloat;
+ cx: TFloat;
+ cy: TFloat;
+ ux: TFloat;
+ uy: TFloat;
+ vx: TFloat;
+ vy: TFloat;
+ p: TFloat;
+ n: TFloat;
+ AngleStart: TFloat;
+ AngleExtent: TFloat;
+ ArcPath: TGPGraphicsPath;
+ Matrix: TGPMatrix;
+ Center: TGPPointF;
+begin
+ if (FStartX = FStopX) and (FStartY = FStopY) then
+ Exit;
+
+ if (FRX = 0) or (FRY = 0) then
+ begin
+ Path.AddLine(FStartX, FStartY, FStopX, FStopY);
+ Exit;
+ end;
+
+ //
+ // Elliptical arc implementation based on the SVG specification notes
+ //
+
+ // Compute the half distance between the current and the final point
+ DX2 := (FStartX - FStopX) / 2.0;
+ DY2 := (FStartY - FStopY) / 2.0;
+
+ // Convert angle from degrees to radians
+ Angle := DegToRad(FMod(FXRot, c360));
+ cosAngle := cos(Angle);
+ sinAngle := sin(Angle);
+
+ //
+ // Step 1 : Compute (x1, y1)
+ //
+ x1 := (cosAngle * DX2 + sinAngle * DY2);
+ y1 := (-sinAngle * DX2 + cosAngle * DY2);
+ // Ensure radii are large enough
+ LRX := abs(Frx);
+ LRY := abs(Fry);
+ Prx := LRX * LRX;
+ Pry := LRY * LRY;
+ Px1 := x1 * x1;
+ Py1 := y1 * y1;
+
+ // check that radii are large enough
+ RadiiCheck := Px1/Prx + Py1/Pry;
+ if (RadiiCheck > 1) then
+ begin
+ LRX := sqrt(RadiiCheck) * LRX;
+ LRY := sqrt(RadiiCheck) * LRY;
+ Prx := LRX * LRX;
+ Pry := LRY * LRY;
+ end;
+
+ //
+ // Step 2 : Compute (cx1, cy1)
+ //
+ sign := IfThen(FLarge = FSweep, -1, 1);
+ Sq := ((Prx * Pry)-(Prx * Py1)-(Pry * Px1)) / ((Prx * Py1)+(Pry * Px1));
+ Sq := IfThen(Sq < 0, 0.0, Sq);
+ Coef := (sign * sqrt(Sq));
+ CX1 := Coef * ((LRX * y1) / LRY);
+ CY1 := Coef * -((LRY * x1) / LRX);
+
+ //
+ // Step 3 : Compute (cx, cy) from (cx1, cy1)
+ //
+ sx2 := (FStartX + FStopX) / 2.0;
+ sy2 := (FStartY + FStopY) / 2.0;
+ cx := sx2 + (cosAngle * CX1 - sinAngle * CY1);
+ cy := sy2 + (sinAngle * CX1 + cosAngle * CY1);
+
+ //
+ // Step 4 : Compute the angleStart (angle1) and the angleExtent (dangle)
+ //
+ ux := (x1 - CX1) / LRX;
+ uy := (y1 - CY1) / LRY;
+ vx := (-x1 - CX1) / LRX;
+ vy := (-y1 - CY1) / LRY;
+
+ // Compute the angle start
+ n := (ux * ux) + (uy * uy);
+ n := sqrt(n);
+// n := sqrt((ux * ux) + (uy * uy));
+ p := ux; // (1 * ux) + (0 * uy)
+ sign := IfThen(uy < 0, -1, 1);
+ AngleStart := RadToDeg(sign * arccos(p / n));
+
+ // Compute the angle extent
+ n := sqrt((ux * ux + uy * uy) * (vx * vx + vy * vy));
+ p := ux * vx + uy * vy;
+ sign := IfThen(ux * vy - uy * vx < 0, -1, 1);
+ AngleExtent := RadToDeg(sign * arccos(p / n));
+ if ((Fsweep = 0) and (AngleExtent > 0)) then
+ begin
+ AngleExtent := AngleExtent - c360;
+ end else if ((FSweep = 1) and (AngleExtent < 0)) then
+ begin
+ AngleExtent := AngleExtent + c360;
+ end;
+
+ AngleStart := FMod(AngleStart, c360);
+ AngleExtent := FMod(AngleExtent, c360);
+
+ R.x := cx - LRX;
+ R.y := cy - LRY;
+ R.width := LRX * 2.0;
+ R.height := LRY * 2.0;
+
+ ArcPath := TGPGraphicsPath.Create;
+ try
+ ArcPath.AddArc(R, AngleStart, AngleExtent);
+ Matrix := TGPMatrix.Create;
+ try
+ Center.X := cx;
+ Center.Y := cy;
+ Matrix.RotateAt(FXRot, Center);
+ ArcPath.Transform(Matrix);
+ finally
+ Matrix.Free;
+ end;
+ Path.AddPath(ArcPath, True);
+ finally
+ ArcPath.Free;
+ end;
+end;
+
+procedure TSVGPathEllipticArc.Read(SL: TStrings; var Position: Integer; Previous: TSVGPathElement);
+var
+ Command: string;
+begin
+ inherited;
+
+ Command := SL[Position];
+ if (Command = 'A') or (Command = 'a') then
+ begin
+ TryStrToTFloat(SL[Position + 1], FRX);
+ TryStrToTFloat(SL[Position + 2], FRY);
+ TryStrToTFloat(SL[Position + 3], FXRot);
+ TryStrToInt(SL[Position + 4], FLarge);
+ TryStrToInt(SL[Position + 5], FSweep);
+ TryStrToTFloat(SL[Position + 6], FStopX);
+ TryStrToTFloat(SL[Position + 7], FStopY);
+ Inc(Position, 7);
+
+ FRX := Abs(FRX);
+ FRY := Abs(FRY);
+
+ if FLarge <> 0 then
+ FLarge := 1;
+
+ if FSweep <> 0 then
+ FSweep := 1;
+
+ if Command = 'a' then
+ begin
+ FStopX := FStartX + FStopX;
+ FStopY := FStartY + FStopY;
+ end;
+ end;
+end;
+
+// TSVGPathClose
+
+function TSVGPathClose.FindLastMoveTo: TSVGPathMove;
+var
+ Index: Integer;
+ Previous: TSVGObject;
+begin
+ for Index := Parent.Count - 2 downto 0 do
+ begin
+ Previous := Parent.Items[Index];
+ if Previous is TSVGPathMove then
+ begin
+ Result := TSVGPathMove(Previous);
+ Exit;
+ end;
+ end;
+ Result := nil;
+end;
+
+function TSVGPathClose.GetBounds: TRectF;
+begin
+ Result.Left := 0;
+ Result.Top := 0;
+ Result.Width := 0;
+ Result.Height := 0;
+end;
+
+procedure TSVGPathClose.Read(SL: TStrings; var Position: Integer;
+ Previous: TSVGPathElement);
+var
+ LastMoveTo: TSVGPathMove;
+begin
+ FStartX := Previous.FStopX;
+ FStartY := Previous.FStopY;
+ LastMoveTo := FindLastMoveTo;
+ if Assigned(LastMoveTo) then
+ begin
+ FStopX := LastMoveTo.FStopX;
+ FStopY := LastMoveTo.FStopY;
+ end else begin
+ FStopX := FStartX;
+ FStopY := FStartY;
+ end;
+end;
+
+procedure TSVGPathClose.AddToPath(Path: TGPGraphicsPath);
+begin
+ Path.CloseFigure;
+end;
+
+end.
diff --git a/Svg/SVGStyle.pas b/Svg/SVGStyle.pas
index 381737b0..fb69bc00 100644
--- a/Svg/SVGStyle.pas
+++ b/Svg/SVGStyle.pas
@@ -1,455 +1,455 @@
-{******************************************************************}
-{ SVG style class }
-{ }
-{ home page : http://www.mwcs.de }
-{ email : martin.walter@mwcs.de }
-{ }
-{ date : 26-04-2005 }
-{ }
-{ Use of this file is permitted for commercial and non-commercial }
-{ use, as long as the author is credited. }
-{ This file (c) 2005 Martin Walter }
-{ }
-{ Thanks to: }
-{ Kiriakos Vlahos (Process Stylesheet) }
-{ }
-{ This Software is distributed on an "AS IS" basis, WITHOUT }
-{ WARRANTY OF ANY KIND, either express or implied. }
-{ }
-{ *****************************************************************}
-
-unit SVGStyle;
-
-interface
-
-uses
- System.Classes, System.Contnrs;
-
-type
- TStyle = class(TObject)
- strict private
- FValues: TStrings;
- function GetCount: Integer;
- procedure PutValues(const Key: string; const Value: string);
- function GetValues(const Key: string): string;
-
- procedure PutValuesByNum(const Index: Integer; const Value: string);
- function GetValuesByNum(const Index: Integer): string;
-
- procedure PutKey(const Index: Integer; const Key: string);
- function GetKey(const Index: Integer): string;
-
- function Dequote(const Value: string): string;
- private
- FName: string;
- strict private
- FOnChange: TNotifyEvent;
- procedure DoOnChange;
- public
- constructor Create;
- destructor Destroy; override;
- procedure Clear;
- function Clone: TStyle;
- procedure SetValues(const Values: string);
-
- function AddStyle(const Key, Value: string): Integer;
- function IndexOf(const Key: string): Integer;
- procedure Delete(Index: Integer);
- function Remove(const Key: string): Integer;
-
- property Count: Integer read GetCount;
- property Values[const Key: string]: string read GetValues write PutValues; default;
- property ValuesByNum[const Index: Integer]: string read GetValuesByNum write PutValuesByNum;
- property Keys[const Index: Integer]: string read GetKey write PutKey;
- property OnChange: TNotifyEvent read FOnChange write FOnChange;
- end;
-
- TStyleList = class(TObject)
- strict private
- FList: TObjectList;
-
- function GetCount: Integer;
- function GetStyle(const Index: Integer): TStyle;
- procedure PutStyle(const Index: Integer; Style: TStyle);
- public
- constructor Create;
- destructor Destroy; override;
- procedure Clear;
- function Clone: TStyleList;
-
- procedure Delete(Index: Integer);
- function Remove(const Style: TStyle): Integer;
- function Add(const AStyle: TStyle): Integer; overload;
- function Add(const Name, Values: string): Integer; overload;
- function Add(const AStyle: string): Integer; overload;
-
- procedure Insert(Index: Integer; Style: TStyle); overload;
- procedure Insert(Index: Integer; const Name, Values: string); overload;
- procedure Exchange(Index1, Index2: Integer);
- procedure Move(CurIndex, NewIndex: Integer);
- function IndexOf(Style: TStyle): Integer;
- function GetStyleByName(const Name: string): TStyle;
-
- property Style[const Index: Integer]: TStyle read GetStyle write PutStyle; default;
- property Count: Integer read GetCount;
- end;
-
- procedure ProcessStyleSheet(Var S: string);
-
-implementation
-
-uses
- System.SysUtils, System.StrUtils, System.Character;
-
-{$REGION 'TStyle'}
-
-constructor TStyle.Create;
-begin
- inherited;
- FValues := TStringList.Create;
- FValues.NameValueSeparator := '"';
-end;
-
-destructor TStyle.Destroy;
-begin
- FreeAndNil(FValues);
- inherited;
-end;
-
-procedure TStyle.Clear;
-begin
- if FValues <> nil then
- begin
- FValues.Clear;
- end;
-end;
-
-function TStyle.Clone: TStyle;
-begin
- Result := TStyle.Create;
- Result.FName := FName;
- Result.FValues.Assign(FValues);
-end;
-
-function TStyle.GetCount: Integer;
-begin
- Result := FValues.Count;
-end;
-
-procedure TStyle.DoOnChange;
-begin
- if Assigned(FOnChange) then
- begin
- FOnChange(Self);
- end;
-end;
-
-procedure TStyle.PutValues(const Key: string; const Value: string);
-var
- Index: Integer;
-begin
- Index := IndexOf(Key);
- if Index > 0 then
- PutValuesByNum(Index, Value)
- else
- AddStyle(Key, Value);
-end;
-
-function TStyle.GetValues(const Key: string): string;
-begin
- Result := GetValuesByNum(IndexOf(Key));
-end;
-
-procedure TStyle.PutValuesByNum(const Index: Integer; const Value: string);
-begin
- if (Index >= 0) and (Index < FValues.Count) then
- FValues.ValueFromIndex[Index] := DeQuote(Value);
-end;
-
-function TStyle.GetValuesByNum(const Index: Integer): string;
-begin
- if (Index >= 0) and (Index < FValues.Count) then
- Result := FValues.ValueFromIndex[Index]
- else
- Result := '';
-end;
-
-procedure TStyle.PutKey(const Index: Integer; const Key: string);
-begin
- if (Index >= 0) and (Index < FValues.Count) then
- FValues[Index] := Key + FValues.NameValueSeparator + FValues.ValueFromIndex[Index];
-end;
-
-function TStyle.GetKey(const Index: Integer): string;
-begin
- if (Index >= 0) and (Index < FValues.Count) then
- Result := FValues.Names[Index]
- else
- Result := '';
-end;
-
-function TStyle.Dequote(const Value: string): string;
-begin
- if Value <> '' then
- begin
- if (Value[1] = '''') and (Value[Length(Value)] = '''') then
- Result := Copy(Value, 2, Length(Value) - 2)
- else
- if (Value[1] = '"') and (Value[Length(Value)] = '"') then
- Result := Copy(Value, 2, Length(Value) - 2)
- else
- Result := Value;
- end else
- Result := Value;
-end;
-
-procedure TStyle.SetValues(const Values: string);
-var
- C: Integer;
- Key: string;
- Value: string;
- Help: string;
-begin
- Help := Trim(Values);
-
- while Help <> '' do
- begin
- C := Pos(';', Help);
- if C = 0 then
- C := Length(Help) + 1;
- Key := Copy(Help, 1, C - 1);
- Help := Trim(Copy(Help, C + 1, MaxInt));
- C := Pos(':', Key);
- if C <> 0 then
- begin
- Value := Trim(Copy(Key, C + 1, MaxInt));
- Key := Trim(Copy(Key, 1, C - 1));
-
- C := IndexOf(Key);
- if C = -1 then
- FValues.Add(Key + FValues.NameValueSeparator + DeQuote(Value))
- else
- PutValuesByNum(C, Value);
- end;
- end;
-end;
-
-function TStyle.AddStyle(const Key, Value: string): Integer;
-begin
- Result := IndexOf(Key);
- if Result = -1 then
- Result := FValues.Add(Key + FValues.NameValueSeparator + DeQuote(Value))
- else
- PutValuesByNum(Result, Value);
- DoOnChange;
-end;
-
-function TStyle.IndexOf(const Key: string): Integer;
-begin
- for Result := 0 to FValues.Count - 1 do
- begin
- if FValues.Names[Result] = Key then
- Exit;
- end;
- Result := -1;
-end;
-
-procedure TStyle.Delete(Index: Integer);
-begin
- if (Index >= 0) and (Index < FValues.Count) then
- begin
- FValues.Delete(Index);
- end;
-end;
-
-function TStyle.Remove(const Key: string): Integer;
-begin
- Result := IndexOf(Key);
- Delete(Result);
-end;
-{$ENDREGION}
-
-{$REGION 'TStyleList'}
-constructor TStyleList.Create;
-begin
- inherited;
- FList := TObjectList.Create(False);
-end;
-
-destructor TStyleList.Destroy;
-begin
- Clear;
- FList.Free;
- inherited;
-end;
-
-procedure TStyleList.Clear;
-begin
- while FList.Count > 0 do
- begin
- TStyle(FList[0]).Free;
- FList.Delete(0);
- end;
-end;
-
-function TStyleList.Clone: TStyleList;
-var
- C: Integer;
-begin
- Result := TStyleList.Create;
- for C := 0 to FList.Count - 1 do
- Result.Add(GetStyle(C).Clone);
-end;
-
-function TStyleList.GetCount: Integer;
-begin
- Result := FList.Count;
-end;
-
-function TStyleList.GetStyle(const Index: Integer): TStyle;
-begin
- if (Index >= 0) and (Index < FList.Count) then
- Result := TStyle(FList[Index])
- else
- Result := nil;
-end;
-
-procedure TStyleList.PutStyle(const Index: Integer; Style: TStyle);
-begin
- if (Index >= 0) and (Index < FList.Count) then
- begin
- FList[Index].Free;
- FList[Index] := Style;
- end;
-end;
-
-procedure TStyleList.Delete(Index: Integer);
-begin
- if (Index >= 0) and (Index < FList.Count) then
- begin
- FList[Index].Free;
- FList.Delete(Index);
- end;
-end;
-
-function TStyleList.Remove(const Style: TStyle): Integer;
-begin
- Result := IndexOf(Style);
- Delete(Result);
-end;
-
-function TStyleList.Add(const AStyle: TStyle): Integer;
-begin
- Result := FList.Add(AStyle);
-end;
-
-function TStyleList.Add(const Name, Values: string): Integer;
-var
- S: TStyle;
-begin
- S := TStyle.Create;
- S.FName := Name;
- S.SetValues(Values);
- Result := Add(S);
-end;
-
-function TStyleList.Add(const AStyle: string): Integer;
-var
- Name: string;
- StyleStr: string;
- Values: string;
- C: Integer;
- D: Integer;
-begin
- Result := -1;
- StyleStr := Trim(AStyle);
- for C := Low(StyleStr) to High(StyleStr) do
- begin
- if StyleStr[C] = '{' then
- begin
- for D := High(StyleStr) downto C + 1 do
- begin
- if StyleStr[D] = '}' then
- begin
- Name := Trim(Copy(StyleStr, 1, C - 1));
-
- Values := Copy(StyleStr, C + 1, D - C - 1);
- Result := Add(Name, Values);
- end;
- end;
- end;
- end;
-end;
-
-procedure TStyleList.Insert(Index: Integer; Style: TStyle);
-begin
- if (Index >= 0) and (Index < FList.Count) then
- FList.Insert(Index, Style);
-end;
-
-procedure TStyleList.Insert(Index: Integer; const Name, Values: string);
-var
- S: TStyle;
-begin
- if (Index >= 0) and (Index < FList.Count) then
- begin
- S := TStyle.Create;
- S.FName := Name;
- S.SetValues(Values);
- Insert(Index, S);
- end;
-end;
-
-procedure TStyleList.Exchange(Index1, Index2: Integer);
-begin
- if (Index1 >= 0) and (Index1 < FList.Count) and
- (Index2 >= 0) and (Index2 < FList.Count) then
- FList.Exchange(Index1, Index2);
-end;
-
-procedure TStyleList.Move(CurIndex, NewIndex: Integer);
-begin
- if (CurIndex >= 0) and (CurIndex < FList.Count) and
- (NewIndex >= 0) and (NewIndex < FList.Count) then
- FList.Move(CurIndex, NewIndex);
-end;
-
-function TStyleList.IndexOf(Style: TStyle): Integer;
-begin
- Result := FList.IndexOf(Style);
-end;
-
-function TStyleList.GetStyleByName(const Name: string): TStyle;
-var
- C: Integer;
-begin
- for C := 0 to FList.Count - 1 do
- begin
- Result := TStyle(FList[C]);
- if Result.FName = Name then
- Exit;
- end;
-
- Result := nil;
-end;
-
-procedure ProcessStyleSheet(Var S: string);
-Var
- OutS: string;
- C: Char;
-begin
- OutS := '';
- for C in S do
- begin
- if C.IsWhiteSpace then Continue;
- if C = '}' then
- OutS := OutS + C + SLineBreak
- else
- OutS := OutS + C;
- end;
- S := OutS;
-end;
-
-{$ENDREGION}
-
-end.
+{******************************************************************}
+{ SVG style class }
+{ }
+{ home page : http://www.mwcs.de }
+{ email : martin.walter@mwcs.de }
+{ }
+{ date : 26-04-2005 }
+{ }
+{ Use of this file is permitted for commercial and non-commercial }
+{ use, as long as the author is credited. }
+{ This file (c) 2005 Martin Walter }
+{ }
+{ Thanks to: }
+{ Kiriakos Vlahos (Process Stylesheet) }
+{ }
+{ This Software is distributed on an "AS IS" basis, WITHOUT }
+{ WARRANTY OF ANY KIND, either express or implied. }
+{ }
+{ *****************************************************************}
+
+unit SVGStyle;
+
+interface
+
+uses
+ System.Classes, System.Contnrs;
+
+type
+ TStyle = class(TObject)
+ strict private
+ FValues: TStrings;
+ function GetCount: Integer;
+ procedure PutValues(const Key: string; const Value: string);
+ function GetValues(const Key: string): string;
+
+ procedure PutValuesByNum(const Index: Integer; const Value: string);
+ function GetValuesByNum(const Index: Integer): string;
+
+ procedure PutKey(const Index: Integer; const Key: string);
+ function GetKey(const Index: Integer): string;
+
+ function Dequote(const Value: string): string;
+ private
+ FName: string;
+ strict private
+ FOnChange: TNotifyEvent;
+ procedure DoOnChange;
+ public
+ constructor Create;
+ destructor Destroy; override;
+ procedure Clear;
+ function Clone: TStyle;
+ procedure SetValues(const Values: string);
+
+ function AddStyle(const Key, Value: string): Integer;
+ function IndexOf(const Key: string): Integer;
+ procedure Delete(Index: Integer);
+ function Remove(const Key: string): Integer;
+
+ property Count: Integer read GetCount;
+ property Values[const Key: string]: string read GetValues write PutValues; default;
+ property ValuesByNum[const Index: Integer]: string read GetValuesByNum write PutValuesByNum;
+ property Keys[const Index: Integer]: string read GetKey write PutKey;
+ property OnChange: TNotifyEvent read FOnChange write FOnChange;
+ end;
+
+ TStyleList = class(TObject)
+ strict private
+ FList: TObjectList;
+
+ function GetCount: Integer;
+ function GetStyle(const Index: Integer): TStyle;
+ procedure PutStyle(const Index: Integer; Style: TStyle);
+ public
+ constructor Create;
+ destructor Destroy; override;
+ procedure Clear;
+ function Clone: TStyleList;
+
+ procedure Delete(Index: Integer);
+ function Remove(const Style: TStyle): Integer;
+ function Add(const AStyle: TStyle): Integer; overload;
+ function Add(const Name, Values: string): Integer; overload;
+ function Add(const AStyle: string): Integer; overload;
+
+ procedure Insert(Index: Integer; Style: TStyle); overload;
+ procedure Insert(Index: Integer; const Name, Values: string); overload;
+ procedure Exchange(Index1, Index2: Integer);
+ procedure Move(CurIndex, NewIndex: Integer);
+ function IndexOf(Style: TStyle): Integer;
+ function GetStyleByName(const Name: string): TStyle;
+
+ property Style[const Index: Integer]: TStyle read GetStyle write PutStyle; default;
+ property Count: Integer read GetCount;
+ end;
+
+ procedure ProcessStyleSheet(Var S: string);
+
+implementation
+
+uses
+ System.SysUtils, System.StrUtils, System.Character;
+
+{$REGION 'TStyle'}
+
+constructor TStyle.Create;
+begin
+ inherited;
+ FValues := TStringList.Create;
+ FValues.NameValueSeparator := '"';
+end;
+
+destructor TStyle.Destroy;
+begin
+ FreeAndNil(FValues);
+ inherited;
+end;
+
+procedure TStyle.Clear;
+begin
+ if FValues <> nil then
+ begin
+ FValues.Clear;
+ end;
+end;
+
+function TStyle.Clone: TStyle;
+begin
+ Result := TStyle.Create;
+ Result.FName := FName;
+ Result.FValues.Assign(FValues);
+end;
+
+function TStyle.GetCount: Integer;
+begin
+ Result := FValues.Count;
+end;
+
+procedure TStyle.DoOnChange;
+begin
+ if Assigned(FOnChange) then
+ begin
+ FOnChange(Self);
+ end;
+end;
+
+procedure TStyle.PutValues(const Key: string; const Value: string);
+var
+ Index: Integer;
+begin
+ Index := IndexOf(Key);
+ if Index > 0 then
+ PutValuesByNum(Index, Value)
+ else
+ AddStyle(Key, Value);
+end;
+
+function TStyle.GetValues(const Key: string): string;
+begin
+ Result := GetValuesByNum(IndexOf(Key));
+end;
+
+procedure TStyle.PutValuesByNum(const Index: Integer; const Value: string);
+begin
+ if (Index >= 0) and (Index < FValues.Count) then
+ FValues.ValueFromIndex[Index] := DeQuote(Value);
+end;
+
+function TStyle.GetValuesByNum(const Index: Integer): string;
+begin
+ if (Index >= 0) and (Index < FValues.Count) then
+ Result := FValues.ValueFromIndex[Index]
+ else
+ Result := '';
+end;
+
+procedure TStyle.PutKey(const Index: Integer; const Key: string);
+begin
+ if (Index >= 0) and (Index < FValues.Count) then
+ FValues[Index] := Key + FValues.NameValueSeparator + FValues.ValueFromIndex[Index];
+end;
+
+function TStyle.GetKey(const Index: Integer): string;
+begin
+ if (Index >= 0) and (Index < FValues.Count) then
+ Result := FValues.Names[Index]
+ else
+ Result := '';
+end;
+
+function TStyle.Dequote(const Value: string): string;
+begin
+ if Value <> '' then
+ begin
+ if (Value[1] = '''') and (Value[Length(Value)] = '''') then
+ Result := Copy(Value, 2, Length(Value) - 2)
+ else
+ if (Value[1] = '"') and (Value[Length(Value)] = '"') then
+ Result := Copy(Value, 2, Length(Value) - 2)
+ else
+ Result := Value;
+ end else
+ Result := Value;
+end;
+
+procedure TStyle.SetValues(const Values: string);
+var
+ C: Integer;
+ Key: string;
+ Value: string;
+ Help: string;
+begin
+ Help := Trim(Values);
+
+ while Help <> '' do
+ begin
+ C := Pos(';', Help);
+ if C = 0 then
+ C := Length(Help) + 1;
+ Key := Copy(Help, 1, C - 1);
+ Help := Trim(Copy(Help, C + 1, MaxInt));
+ C := Pos(':', Key);
+ if C <> 0 then
+ begin
+ Value := Trim(Copy(Key, C + 1, MaxInt));
+ Key := Trim(Copy(Key, 1, C - 1));
+
+ C := IndexOf(Key);
+ if C = -1 then
+ FValues.Add(Key + FValues.NameValueSeparator + DeQuote(Value))
+ else
+ PutValuesByNum(C, Value);
+ end;
+ end;
+end;
+
+function TStyle.AddStyle(const Key, Value: string): Integer;
+begin
+ Result := IndexOf(Key);
+ if Result = -1 then
+ Result := FValues.Add(Key + FValues.NameValueSeparator + DeQuote(Value))
+ else
+ PutValuesByNum(Result, Value);
+ DoOnChange;
+end;
+
+function TStyle.IndexOf(const Key: string): Integer;
+begin
+ for Result := 0 to FValues.Count - 1 do
+ begin
+ if FValues.Names[Result] = Key then
+ Exit;
+ end;
+ Result := -1;
+end;
+
+procedure TStyle.Delete(Index: Integer);
+begin
+ if (Index >= 0) and (Index < FValues.Count) then
+ begin
+ FValues.Delete(Index);
+ end;
+end;
+
+function TStyle.Remove(const Key: string): Integer;
+begin
+ Result := IndexOf(Key);
+ Delete(Result);
+end;
+{$ENDREGION}
+
+{$REGION 'TStyleList'}
+constructor TStyleList.Create;
+begin
+ inherited;
+ FList := TObjectList.Create(False);
+end;
+
+destructor TStyleList.Destroy;
+begin
+ Clear;
+ FList.Free;
+ inherited;
+end;
+
+procedure TStyleList.Clear;
+begin
+ while FList.Count > 0 do
+ begin
+ TStyle(FList[0]).Free;
+ FList.Delete(0);
+ end;
+end;
+
+function TStyleList.Clone: TStyleList;
+var
+ C: Integer;
+begin
+ Result := TStyleList.Create;
+ for C := 0 to FList.Count - 1 do
+ Result.Add(GetStyle(C).Clone);
+end;
+
+function TStyleList.GetCount: Integer;
+begin
+ Result := FList.Count;
+end;
+
+function TStyleList.GetStyle(const Index: Integer): TStyle;
+begin
+ if (Index >= 0) and (Index < FList.Count) then
+ Result := TStyle(FList[Index])
+ else
+ Result := nil;
+end;
+
+procedure TStyleList.PutStyle(const Index: Integer; Style: TStyle);
+begin
+ if (Index >= 0) and (Index < FList.Count) then
+ begin
+ FList[Index].Free;
+ FList[Index] := Style;
+ end;
+end;
+
+procedure TStyleList.Delete(Index: Integer);
+begin
+ if (Index >= 0) and (Index < FList.Count) then
+ begin
+ FList[Index].Free;
+ FList.Delete(Index);
+ end;
+end;
+
+function TStyleList.Remove(const Style: TStyle): Integer;
+begin
+ Result := IndexOf(Style);
+ Delete(Result);
+end;
+
+function TStyleList.Add(const AStyle: TStyle): Integer;
+begin
+ Result := FList.Add(AStyle);
+end;
+
+function TStyleList.Add(const Name, Values: string): Integer;
+var
+ S: TStyle;
+begin
+ S := TStyle.Create;
+ S.FName := Name;
+ S.SetValues(Values);
+ Result := Add(S);
+end;
+
+function TStyleList.Add(const AStyle: string): Integer;
+var
+ Name: string;
+ StyleStr: string;
+ Values: string;
+ C: Integer;
+ D: Integer;
+begin
+ Result := -1;
+ StyleStr := Trim(AStyle);
+ for C := Low(StyleStr) to High(StyleStr) do
+ begin
+ if StyleStr[C] = '{' then
+ begin
+ for D := High(StyleStr) downto C + 1 do
+ begin
+ if StyleStr[D] = '}' then
+ begin
+ Name := Trim(Copy(StyleStr, 1, C - 1));
+
+ Values := Copy(StyleStr, C + 1, D - C - 1);
+ Result := Add(Name, Values);
+ end;
+ end;
+ end;
+ end;
+end;
+
+procedure TStyleList.Insert(Index: Integer; Style: TStyle);
+begin
+ if (Index >= 0) and (Index < FList.Count) then
+ FList.Insert(Index, Style);
+end;
+
+procedure TStyleList.Insert(Index: Integer; const Name, Values: string);
+var
+ S: TStyle;
+begin
+ if (Index >= 0) and (Index < FList.Count) then
+ begin
+ S := TStyle.Create;
+ S.FName := Name;
+ S.SetValues(Values);
+ Insert(Index, S);
+ end;
+end;
+
+procedure TStyleList.Exchange(Index1, Index2: Integer);
+begin
+ if (Index1 >= 0) and (Index1 < FList.Count) and
+ (Index2 >= 0) and (Index2 < FList.Count) then
+ FList.Exchange(Index1, Index2);
+end;
+
+procedure TStyleList.Move(CurIndex, NewIndex: Integer);
+begin
+ if (CurIndex >= 0) and (CurIndex < FList.Count) and
+ (NewIndex >= 0) and (NewIndex < FList.Count) then
+ FList.Move(CurIndex, NewIndex);
+end;
+
+function TStyleList.IndexOf(Style: TStyle): Integer;
+begin
+ Result := FList.IndexOf(Style);
+end;
+
+function TStyleList.GetStyleByName(const Name: string): TStyle;
+var
+ C: Integer;
+begin
+ for C := 0 to FList.Count - 1 do
+ begin
+ Result := TStyle(FList[C]);
+ if Result.FName = Name then
+ Exit;
+ end;
+
+ Result := nil;
+end;
+
+procedure ProcessStyleSheet(Var S: string);
+Var
+ OutS: string;
+ C: Char;
+begin
+ OutS := '';
+ for C in S do
+ begin
+ if C.IsWhiteSpace then Continue;
+ if C = '}' then
+ OutS := OutS + C + SLineBreak
+ else
+ OutS := OutS + C;
+ end;
+ S := OutS;
+end;
+
+{$ENDREGION}
+
+end.