From af4f4c891aa32a065faf1b1d646ac3a9de9c3c57 Mon Sep 17 00:00:00 2001 From: Don Armstrong Date: Tue, 5 Feb 2013 14:50:30 -0800 Subject: [PATCH] Imported Upstream version 0.7.2+dfsg --- CMakeLists.txt | 55 + COPYING.LESSER.txt | 165 + COPYING.txt | 674 + ChangeLog.txt | 29 + INSTALL.txt | 169 + README.txt | 34 + cmake_extras/CustomPCH.cmake | 89 + cmake_extras/FileSystemSourceGroups.cmake | 17 + src/FlightCrew-cli/CMakeLists.txt | 77 + src/FlightCrew-cli/main.cpp | 163 + src/FlightCrew-gui/CMakeLists.txt | 333 + src/FlightCrew-gui/Form.ui | 145 + src/FlightCrew-gui/MainWindow.cpp | 302 + src/FlightCrew-gui/MainWindow.h | 158 + src/FlightCrew-gui/UpdateChecker.cpp | 187 + src/FlightCrew-gui/UpdateChecker.h | 118 + src/FlightCrew-gui/main.cpp | 67 + .../resources/bash/flightcrew-gui.sh | 25 + .../resources/mac/MacOSXBundleInfo.plist | 30 + src/FlightCrew/CMakeLists.txt | 130 + src/FlightCrew/DllExporting.h | 34 + src/FlightCrew/ErrorMessages.cpp | 194 + src/FlightCrew/ErrorMessages.h | 61 + .../Framework/OpfValidatorsList.cpp | 164 + src/FlightCrew/Framework/OpfValidatorsList.h | 36 + src/FlightCrew/Framework/ValidateCss.cpp | 44 + src/FlightCrew/Framework/ValidateEpub.cpp | 330 + src/FlightCrew/Framework/ValidateNcx.cpp | 51 + src/FlightCrew/Framework/ValidateOpf.cpp | 72 + src/FlightCrew/Framework/ValidateXhtml.cpp | 50 + src/FlightCrew/Framework/flightcrew_p.h | 48 + src/FlightCrew/Misc/BoostFilesystemUse.h | 31 + src/FlightCrew/Misc/CustomAssert.cpp | 103 + src/FlightCrew/Misc/CustomAssert.h | 111 + src/FlightCrew/Misc/DetermineMimetype.cpp | 210 + src/FlightCrew/Misc/DetermineMimetype.h | 34 + src/FlightCrew/Misc/ErrorResultCollector.cpp | 97 + src/FlightCrew/Misc/ErrorResultCollector.h | 67 + src/FlightCrew/Misc/TempFolder.cpp | 73 + src/FlightCrew/Misc/TempFolder.h | 54 + src/FlightCrew/Misc/Utilities.cpp | 381 + src/FlightCrew/Misc/Utilities.h | 157 + src/FlightCrew/Misc/XercesHUse.h | 38 + src/FlightCrew/Result.cpp | 182 + src/FlightCrew/Result.h | 220 + src/FlightCrew/ResultId.h | 89 + src/FlightCrew/ResultType.h | 37 + .../Schemas/AsSources/ContainerXsd.cpp | 165 + .../Schemas/AsSources/EncryptionXsd.cpp | 97 + .../Schemas/AsSources/Ncx20051Dtd.cpp | 969 + src/FlightCrew/Schemas/AsSources/NcxXsd.cpp | 556 + .../Schemas/AsSources/Ops201Xsd.cpp | 5462 +++++ .../Schemas/AsSources/OpsSwitchXsd.cpp | 170 + .../Schemas/AsSources/SignaturesXsd.cpp | 94 + src/FlightCrew/Schemas/AsSources/Svg11Xsd.cpp | 17946 ++++++++++++++++ .../Schemas/AsSources/XencSchemaXsd.cpp | 447 + .../Schemas/AsSources/Xhtml11FlatDtd.cpp | 12808 +++++++++++ src/FlightCrew/Schemas/AsSources/XlinkXsd.cpp | 737 + src/FlightCrew/Schemas/AsSources/XmlXsd.cpp | 780 + .../AsSources/XmldsigCoreSchemaXsd.cpp | 878 + src/FlightCrew/Schemas/container.xsd | 33 + src/FlightCrew/Schemas/encryption.xsd | 19 + src/FlightCrew/Schemas/ncx-2005-1.dtd | 269 + src/FlightCrew/Schemas/ncx.xsd | 201 + src/FlightCrew/Schemas/ops201.xsd | 2201 ++ src/FlightCrew/Schemas/ops_switch.xsd | 42 + src/FlightCrew/Schemas/signatures.xsd | 18 + src/FlightCrew/Schemas/svg11.xsd | 4892 +++++ src/FlightCrew/Schemas/xenc-schema.xsd | 135 + src/FlightCrew/Schemas/xhtml11-flat.dtd | 4513 ++++ src/FlightCrew/Schemas/xlink.xsd | 270 + src/FlightCrew/Schemas/xml.xsd | 287 + .../Schemas/xmldsig-core-schema.xsd | 308 + .../Validators/AllowedChildrenValidator.cpp | 74 + .../Validators/AllowedChildrenValidator.h | 48 + .../Validators/AttributesPresentValidator.cpp | 115 + .../Validators/AttributesPresentValidator.h | 73 + .../Validators/DomSchemaValidator.cpp | 92 + .../Validators/DomSchemaValidator.h | 58 + .../Validators/ElementCountOneValidator.cpp | 66 + .../Validators/ElementCountOneValidator.h | 55 + .../Validators/ElementPresentValidator.cpp | 55 + .../Validators/ElementPresentValidator.h | 59 + src/FlightCrew/Validators/IValidator.h | 45 + .../Validators/Ncx/ContentTargetsPresent.cpp | 144 + .../Validators/Ncx/ContentTargetsPresent.h | 68 + .../Validators/Ncx/NcxSatisfiesSchema.cpp | 62 + .../Validators/Ncx/NcxSatisfiesSchema.h | 51 + .../Ocf/ContainerListedOpfPresent.cpp | 69 + .../Ocf/ContainerListedOpfPresent.h | 42 + .../Validators/Ocf/ContainerListsOpf.cpp | 65 + .../Validators/Ocf/ContainerListsOpf.h | 43 + .../Ocf/ContainerSatisfiesSchema.cpp | 54 + .../Validators/Ocf/ContainerSatisfiesSchema.h | 47 + .../Ocf/EncryptionSatisfiesSchema.cpp | 62 + .../Ocf/EncryptionSatisfiesSchema.h | 48 + .../Validators/Ocf/MimetypeBytesValid.cpp | 51 + .../Validators/Ocf/MimetypeBytesValid.h | 42 + .../Ocf/SignaturesSatisfiesSchema.cpp | 57 + .../Ocf/SignaturesSatisfiesSchema.h | 48 + .../Opf/ContributorAttributesPresent.cpp | 47 + .../Opf/ContributorAttributesPresent.h | 43 + .../Opf/CoverageAttributesPresent.cpp | 45 + .../Opf/CoverageAttributesPresent.h | 43 + .../Opf/CreatorAttributesPresent.cpp | 47 + .../Validators/Opf/CreatorAttributesPresent.h | 43 + .../Opf/CreatorOrContributorRoleValid.cpp | 285 + .../Opf/CreatorOrContributorRoleValid.h | 49 + .../Opf/DCMetadataAllowedChildren.cpp | 54 + .../Opf/DCMetadataAllowedChildren.h | 42 + .../Opf/DCMetadataAttributesPresent.cpp | 44 + .../Opf/DCMetadataAttributesPresent.h | 43 + .../Validators/Opf/DateAttributesPresent.cpp | 45 + .../Validators/Opf/DateAttributesPresent.h | 43 + src/FlightCrew/Validators/Opf/DateValid.cpp | 93 + src/FlightCrew/Validators/Opf/DateValid.h | 63 + .../Opf/DescriptionAttributesPresent.cpp | 45 + .../Opf/DescriptionAttributesPresent.h | 43 + .../Opf/FormatAttributesPresent.cpp | 44 + .../Validators/Opf/FormatAttributesPresent.h | 43 + .../Validators/Opf/GuideAllowedChildren.cpp | 40 + .../Validators/Opf/GuideAllowedChildren.h | 42 + .../Validators/Opf/GuideAttributesPresent.cpp | 44 + .../Validators/Opf/GuideAttributesPresent.h | 43 + .../Opf/IdentifierAttributesPresent.cpp | 45 + .../Opf/IdentifierAttributesPresent.h | 43 + .../Validators/Opf/IdentifierPresent.cpp | 40 + .../Validators/Opf/IdentifierPresent.h | 42 + src/FlightCrew/Validators/Opf/IdsUnique.cpp | 67 + src/FlightCrew/Validators/Opf/IdsUnique.h | 43 + src/FlightCrew/Validators/Opf/IdsValid.cpp | 130 + src/FlightCrew/Validators/Opf/IdsValid.h | 52 + .../Validators/Opf/ItemAttributesPresent.cpp | 59 + .../Validators/Opf/ItemAttributesPresent.h | 43 + .../Validators/Opf/ItemFilesPresent.cpp | 59 + .../Validators/Opf/ItemFilesPresent.h | 43 + .../Validators/Opf/ItemHrefUnique.cpp | 64 + .../Validators/Opf/ItemHrefUnique.h | 43 + .../Validators/Opf/ItemHrefValid.cpp | 79 + src/FlightCrew/Validators/Opf/ItemHrefValid.h | 61 + .../Validators/Opf/ItemLinearValid.cpp | 56 + .../Validators/Opf/ItemLinearValid.h | 43 + .../Validators/Opf/ItemMediaTypeValid.cpp | 65 + .../Validators/Opf/ItemMediaTypeValid.h | 43 + src/FlightCrew/Validators/Opf/ItemPresent.cpp | 41 + src/FlightCrew/Validators/Opf/ItemPresent.h | 43 + .../Opf/ItemReqModsOnlyWithReqNS.cpp | 55 + .../Validators/Opf/ItemReqModsOnlyWithReqNS.h | 43 + .../Opf/ItemrefAttributesPresent.cpp | 53 + .../Validators/Opf/ItemrefAttributesPresent.h | 43 + .../Validators/Opf/ItemrefIdrefUnique.cpp | 66 + .../Validators/Opf/ItemrefIdrefUnique.h | 43 + .../Validators/Opf/ItemrefIdrefValid.cpp | 70 + .../Validators/Opf/ItemrefIdrefValid.h | 43 + .../Validators/Opf/ItemrefPresent.cpp | 41 + .../Validators/Opf/ItemrefPresent.h | 43 + .../Validators/Opf/LanguagePresent.cpp | 40 + .../Validators/Opf/LanguagePresent.h | 42 + .../Opf/ManifestAllowedChildren.cpp | 40 + .../Validators/Opf/ManifestAllowedChildren.h | 42 + .../Opf/ManifestAttributesPresent.cpp | 44 + .../Opf/ManifestAttributesPresent.h | 43 + .../Validators/Opf/MetaAttributesPresent.cpp | 56 + .../Validators/Opf/MetaAttributesPresent.h | 43 + .../Opf/MetadataAllowedChildren.cpp | 161 + .../Validators/Opf/MetadataAllowedChildren.h | 61 + .../Opf/MetadataAttributesPresent.cpp | 44 + .../Opf/MetadataAttributesPresent.h | 43 + src/FlightCrew/Validators/Opf/NcxPresent.cpp | 62 + src/FlightCrew/Validators/Opf/NcxPresent.h | 43 + src/FlightCrew/Validators/Opf/OneManifest.cpp | 38 + src/FlightCrew/Validators/Opf/OneManifest.h | 42 + src/FlightCrew/Validators/Opf/OneMetadata.cpp | 38 + src/FlightCrew/Validators/Opf/OneMetadata.h | 42 + src/FlightCrew/Validators/Opf/OneSpine.cpp | 39 + src/FlightCrew/Validators/Opf/OneSpine.h | 42 + .../Validators/Opf/PackageAllowedChildren.cpp | 44 + .../Validators/Opf/PackageAllowedChildren.h | 42 + .../Opf/PackageAttributesPresent.cpp | 53 + .../Validators/Opf/PackageAttributesPresent.h | 42 + .../Validators/Opf/PackageIsRoot.cpp | 46 + src/FlightCrew/Validators/Opf/PackageIsRoot.h | 42 + .../Opf/PackageUniqueIdentifierValid.cpp | 69 + .../Opf/PackageUniqueIdentifierValid.h | 43 + .../Validators/Opf/PackageVersionCorrect.cpp | 55 + .../Validators/Opf/PackageVersionCorrect.h | 43 + .../Opf/PublisherAttributesPresent.cpp | 45 + .../Opf/PublisherAttributesPresent.h | 43 + .../Validators/Opf/ReachabilityAnalysis.cpp | 584 + .../Validators/Opf/ReachabilityAnalysis.h | 278 + .../Opf/ReferenceAttributesPresent.cpp | 55 + .../Opf/ReferenceAttributesPresent.h | 43 + .../Validators/Opf/ReferenceTypeValid.cpp | 85 + .../Validators/Opf/ReferenceTypeValid.h | 48 + .../Opf/RelationAttributesPresent.cpp | 45 + .../Opf/RelationAttributesPresent.h | 43 + .../Opf/RightsAttributesPresent.cpp | 45 + .../Validators/Opf/RightsAttributesPresent.h | 43 + .../Validators/Opf/SiteAttributesPresent.cpp | 54 + .../Validators/Opf/SiteAttributesPresent.h | 43 + .../Opf/SourceAttributesPresent.cpp | 45 + .../Validators/Opf/SourceAttributesPresent.h | 43 + .../Validators/Opf/SpineAllowedChildren.cpp | 40 + .../Validators/Opf/SpineAllowedChildren.h | 42 + .../Validators/Opf/SpineAttributesPresent.cpp | 52 + .../Validators/Opf/SpineAttributesPresent.h | 43 + .../Validators/Opf/SpineTocValid.cpp | 72 + src/FlightCrew/Validators/Opf/SpineTocValid.h | 43 + .../Opf/SubjectAttributesPresent.cpp | 45 + .../Validators/Opf/SubjectAttributesPresent.h | 43 + .../Validators/Opf/TitleAttributesPresent.cpp | 45 + .../Validators/Opf/TitleAttributesPresent.h | 43 + .../Validators/Opf/TitlePresent.cpp | 40 + src/FlightCrew/Validators/Opf/TitlePresent.h | 42 + .../Validators/Opf/TourAllowedChildren.cpp | 40 + .../Validators/Opf/TourAllowedChildren.h | 42 + .../Validators/Opf/TourAttributesPresent.cpp | 52 + .../Validators/Opf/TourAttributesPresent.h | 43 + .../Validators/Opf/ToursAllowedChildren.cpp | 40 + .../Validators/Opf/ToursAllowedChildren.h | 42 + .../Validators/Opf/ToursAttributesPresent.cpp | 44 + .../Validators/Opf/ToursAttributesPresent.h | 43 + .../Validators/Opf/TypeAttributesPresent.cpp | 44 + .../Validators/Opf/TypeAttributesPresent.h | 43 + .../Opf/XMetadataAllowedChildren.cpp | 67 + .../Validators/Opf/XMetadataAllowedChildren.h | 42 + .../Opf/XMetadataAttributesPresent.cpp | 44 + .../Opf/XMetadataAttributesPresent.h | 43 + .../Validators/SaxSchemaValidator.cpp | 88 + .../Validators/SaxSchemaValidator.h | 53 + .../Validators/Xhtml/SatisfiesXhtmlSchema.cpp | 77 + .../Validators/Xhtml/SatisfiesXhtmlSchema.h | 54 + .../Validators/Xhtml/UsesCorrectDtd.cpp | 90 + .../Validators/Xhtml/UsesCorrectDtd.h | 46 + src/FlightCrew/Validators/Xml/UsesUnicode.cpp | 152 + src/FlightCrew/Validators/Xml/UsesUnicode.h | 93 + .../Validators/Xml/WellFormedXml.cpp | 79 + src/FlightCrew/Validators/Xml/WellFormedXml.h | 53 + src/FlightCrew/Validators/XmlValidator.cpp | 44 + src/FlightCrew/Validators/XmlValidator.h | 54 + src/FlightCrew/constants.h | 132 + src/FlightCrew/exception.h | 66 + src/FlightCrew/flightcrew.cpp | 65 + src/FlightCrew/flightcrew.h | 104 + src/FlightCrew/stdafx.cpp | 24 + src/FlightCrew/stdafx.h | 73 + src/FlightCrew/tests/CMakeLists.txt | 127 + .../framework_tests/EpubValidates_test.cpp | 80 + .../ConvertUtf8PathToBoostPath_test.cpp | 41 + .../misc_tests/DetermineMimetype_test.cpp | 69 + .../tests/misc_tests/NormalizePath_test.cpp | 37 + .../ncx_tests/ContentTargetsPresent_test.cpp | 58 + .../ncx_tests/NcxSatisfiesSchema_test.cpp | 56 + .../ContainerListedOpfPresent_test.cpp | 51 + .../ocf_tests/ContainerListsOpf_test.cpp | 48 + .../ContainerSatisfiesSchema_test.cpp | 47 + .../EncryptionSatisfiesSchema_test.cpp | 47 + .../ocf_tests/MimetypeBytesValid_test.cpp | 46 + .../SignaturesSatisfiesSchema_test.cpp | 47 + .../ContributorAttributesPresent_test.cpp | 52 + .../CoverageAttributesPresent_test.cpp | 52 + .../CreatorAttributesPresent_test.cpp | 52 + .../CreatorOrContributorRoleValid_test.cpp | 58 + .../DCMetadataAllowedChildren_test.cpp | 48 + .../DCMetadataAttributesPresent_test.cpp | 52 + .../opf_tests/DateAttributesPresent_test.cpp | 52 + .../tests/opf_tests/DateValid_test.cpp | 100 + .../DescriptionAttributesPresent_test.cpp | 52 + .../FormatAttributesPresent_test.cpp | 52 + .../opf_tests/GuideAllowedChildren_test.cpp | 48 + .../opf_tests/GuideAttributesPresent_test.cpp | 52 + .../IdentifierAttributesPresent_test.cpp | 52 + .../opf_tests/IdentifierPresent_test.cpp | 51 + .../tests/opf_tests/IdsUnique_test.cpp | 51 + .../tests/opf_tests/IdsValid_test.cpp | 72 + .../opf_tests/ItemAttributesPresent_test.cpp | 84 + .../tests/opf_tests/ItemFilesPresent_test.cpp | 51 + .../tests/opf_tests/ItemHrefUnique_test.cpp | 51 + .../tests/opf_tests/ItemHrefValid_test.cpp | 72 + .../tests/opf_tests/ItemLinearValid_test.cpp | 51 + .../opf_tests/ItemMediaTypeValid_test.cpp | 68 + .../tests/opf_tests/ItemPresent_test.cpp | 51 + .../ItemReqModsOnlyWithReqNS_test.cpp | 48 + .../ItemrefAttributesPresent_test.cpp | 68 + .../opf_tests/ItemrefIdrefUnique_test.cpp | 58 + .../opf_tests/ItemrefIdrefValid_test.cpp | 51 + .../tests/opf_tests/ItemrefPresent_test.cpp | 51 + .../tests/opf_tests/LanguagePresent_test.cpp | 51 + .../ManifestAllowedChildren_test.cpp | 48 + .../ManifestAttributesPresent_test.cpp | 52 + .../opf_tests/MetaAttributesPresent_test.cpp | 76 + .../MetadataAllowedChildren_test.cpp | 69 + .../MetadataAttributesPresent_test.cpp | 52 + .../tests/opf_tests/NcxPresent_test.cpp | 48 + .../tests/opf_tests/OneManifest_test.cpp | 66 + .../tests/opf_tests/OneMetadata_test.cpp | 66 + .../tests/opf_tests/OneSpine_test.cpp | 66 + .../opf_tests/PackageAllowedChildren_test.cpp | 48 + .../PackageAttributesPresent_test.cpp | 76 + .../tests/opf_tests/PackageIsRoot_test.cpp | 47 + .../PackageUniqueIdentifierValid_test.cpp | 51 + .../opf_tests/PackageVersionCorrect_test.cpp | 52 + .../PublisherAttributesPresent_test.cpp | 52 + .../opf_tests/ReachabilityAnalysis_test.cpp | 100 + .../ReferenceAttributesPresent_test.cpp | 76 + .../opf_tests/ReferenceTypeValid_test.cpp | 51 + .../RelationAttributesPresent_test.cpp | 52 + .../RightsAttributesPresent_test.cpp | 52 + .../opf_tests/SiteAttributesPresent_test.cpp | 76 + .../SourceAttributesPresent_test.cpp | 52 + .../opf_tests/SpineAllowedChildren_test.cpp | 48 + .../opf_tests/SpineAttributesPresent_test.cpp | 68 + .../tests/opf_tests/SpineTocValid_test.cpp | 51 + .../SubjectAttributesPresent_test.cpp | 52 + .../opf_tests/TitleAttributesPresent_test.cpp | 52 + .../tests/opf_tests/TitlePresent_test.cpp | 50 + .../opf_tests/TourAllowedChildren_test.cpp | 48 + .../opf_tests/TourAttributesPresent_test.cpp | 68 + .../opf_tests/ToursAllowedChildren_test.cpp | 48 + .../opf_tests/ToursAttributesPresent_test.cpp | 52 + .../opf_tests/TypeAttributesPresent_test.cpp | 52 + .../XMetadataAllowedChildren_test.cpp | 48 + .../XMetadataAttributesPresent_test.cpp | 52 + src/FlightCrew/tests/stdafx_tests.cpp | 22 + src/FlightCrew/tests/stdafx_tests.h | 23 + .../EpubValidates_MissingTitle.epub | Bin 0 -> 1699 bytes .../EpubValidates_MissingXhtmlFiles.epub | Bin 0 -> 1720 bytes .../EpubValidates_NoContainerXml.epub | Bin 0 -> 2608 bytes .../EpubValidates_NotAZip.epub | 1 + .../framework_tests/EpubValidates_Valid.epub | Bin 0 -> 1796 bytes .../test1.xhtml | 10 + .../test2.xhtml | 14 + .../test3.xhtml | 14 + .../ContentTargetsPresent_AllPresent/toc.ncx | 24 + .../test2.xhtml | 14 + .../test3.xhtml | 14 + .../ContentTargetsPresent_NotPresent/toc.ncx | 24 + ...NcxSatisfiesSchema_DoesntSatisfySchema.xml | 35 + .../NcxSatisfiesSchema_SatisfiesSchema.xml | 35 + ...xSatisfiesSchema_SatisfiesSchemaOpf201.xml | 32 + .../META-INF/container.xml | 6 + .../OEBPS/content.opf | 1 + .../META-INF/container.xml | 6 + .../OEBPS/content.opf | 1 + .../ContainerListsOpf_DoesntListOpf.xml | 10 + .../ocf_tests/ContainerListsOpf_ListsOpf.xml | 11 + ...nerSatisfiesSchema_DoesntSatisfySchema.xml | 9 + ...ntainerSatisfiesSchema_SatisfiesSchema.xml | 41 + ...ionSatisfiesSchema_DoesntSatisfySchema.xml | 65 + ...ryptionSatisfiesSchema_SatisfiesSchema.xml | 65 + .../MimetypeBytesValidTest_BytesInvalid.epub | Bin 0 -> 1967 bytes .../MimetypeBytesValidTest_BytesValid.epub | Bin 0 -> 1680 bytes ...resSatisfiesSchema_DoesntSatisfySchema.xml | 85 + ...naturesSatisfiesSchema_SatisfiesSchema.xml | 85 + ...torAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + ...ageAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + ...torAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + ...CreatorOrContributorRoleValid_BadValue.xml | 7 + ...reatorOrContributorRoleValid_GoodValue.xml | 432 + .../DCMetadataAllowedChildren_ChildrenOK.xml | 22 + ...CMetadataAllowedChildren_WrongChildren.xml | 23 + ...ataAttributesPresent_AllowedAttributes.xml | 4 + ...AttributesPresent_NotAllowedAttributes.xml | 4 + ...ateAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../opf_tests/DateValid_BadValue.xml | 13 + .../opf_tests/DateValid_GoodValue.xml | 18 + ...ionAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + ...matAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../GuideAllowedChildren_ChildrenOK.xml | 6 + .../GuideAllowedChildren_WrongChildren.xml | 6 + ...ideAttributesPresent_AllowedAttributes.xml | 4 + ...AttributesPresent_NotAllowedAttributes.xml | 4 + ...ierAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../IdentifierPresent_HasIdentifier.xml | 6 + .../IdentifierPresent_NoIdentifier.xml | 5 + .../opf_tests/IdsUnique_AllNotUnique.xml | 8 + .../opf_tests/IdsUnique_AllUnique.xml | 8 + .../test_data/opf_tests/IdsValid_BadValue.xml | 9 + .../opf_tests/IdsValid_GoodValue.xml | 9 + ...temAttributesPresent_AllowedAttributes.xml | 6 + ...temAttributesPresent_MissingAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../content.opf | 8 + .../test1.xhtml | 1 + .../test2.xhtml | 1 + .../test3.xhtml | 1 + .../ItemFilesPresent_FilesMissing/content.opf | 8 + .../ItemFilesPresent_FilesMissing/test1.xhtml | 1 + .../ItemFilesPresent_FilesMissing/test3.xhtml | 1 + .../ItemHrefUnique_HrefsNotUnique.xml | 8 + .../opf_tests/ItemHrefUnique_HrefsUnique.xml | 8 + .../opf_tests/ItemHrefValid_BadValue.xml | 9 + .../opf_tests/ItemHrefValid_GoodValue.xml | 14 + .../opf_tests/ItemLinearValid_BadValue.xml | 8 + .../opf_tests/ItemLinearValid_GoodValue.xml | 7 + .../opf_tests/ItemMediaTypeValid_BadValue.xml | 16 + .../ItemMediaTypeValid_GoodValue.xml | 18 + .../opf_tests/ItemPresent_HasItem.xml | 6 + .../opf_tests/ItemPresent_NoItem.xml | 5 + ...yWithReqNS_RequiredNamespaceNotPresent.xml | 6 + ...OnlyWithReqNS_RequiredNamespacePresent.xml | 6 + ...refAttributesPresent_AllowedAttributes.xml | 6 + ...refAttributesPresent_MissingAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../ItemrefIdrefUnique_AllNotUnique.xml | 26 + .../ItemrefIdrefUnique_AllUnique.xml | 24 + .../ItemrefIdrefValid_IdDoesNotExist.xml | 9 + .../opf_tests/ItemrefIdrefValid_IdExists.xml | 9 + .../opf_tests/ItemrefPresent_HasItemref.xml | 6 + .../opf_tests/ItemrefPresent_NoItemref.xml | 5 + .../opf_tests/LanguagePresent_HasLanguage.xml | 6 + .../opf_tests/LanguagePresent_NoLanguage.xml | 5 + .../ManifestAllowedChildren_ChildrenOK.xml | 6 + .../ManifestAllowedChildren_WrongChildren.xml | 6 + ...estAttributesPresent_AllowedAttributes.xml | 4 + ...AttributesPresent_NotAllowedAttributes.xml | 4 + ...etaAttributesPresent_AllowedAttributes.xml | 6 + ...etaAttributesPresent_MissingAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../MetadataAllowedChildren_DCXChildrenOK.xml | 7 + ...tadataAllowedChildren_DCXChildrenWrong.xml | 8 + .../MetadataAllowedChildren_StdChildrenOK.xml | 22 + ...tadataAllowedChildren_StdChildrenWrong.xml | 22 + ...ataAttributesPresent_AllowedAttributes.xml | 4 + ...AttributesPresent_NotAllowedAttributes.xml | 4 + .../test_data/opf_tests/NcxPresent_HasNcx.xml | 8 + .../test_data/opf_tests/NcxPresent_NoNcx.xml | 7 + .../opf_tests/OneManifest_NoManifest.xml | 3 + .../opf_tests/OneManifest_OneManifest.xml | 5 + .../opf_tests/OneManifest_TwoManifests.xml | 7 + .../opf_tests/OneMetadata_NoMetadata.xml | 3 + .../opf_tests/OneMetadata_OneMetadata.xml | 5 + .../opf_tests/OneMetadata_TwoMetadatas.xml | 7 + .../test_data/opf_tests/OneSpine_NoSpine.xml | 3 + .../test_data/opf_tests/OneSpine_OneSpine.xml | 5 + .../opf_tests/OneSpine_TwoSpines.xml | 7 + .../PackageAllowedChildren_ChildrenOK.xml | 13 + .../PackageAllowedChildren_WrongChildren.xml | 5 + ...ageAttributesPresent_AllowedAttributes.xml | 3 + ...ageAttributesPresent_MissingAttributes.xml | 3 + ...AttributesPresent_NotAllowedAttributes.xml | 3 + .../PackageIsRoot_PackageNotRoot.xml | 3 + .../opf_tests/PackageIsRoot_PackageRoot.xml | 3 + ...geUniqueIdentifierValid_IdDoesNotExist.xml | 8 + .../PackageUniqueIdentifierValid_IdExists.xml | 8 + ...ackageVersionCorrect_BadPackageVersion.xml | 3 + ...ckageVersionCorrect_GoodPackageVersion.xml | 3 + ...herAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../ReachabilityAnalysis_AllOk/content.opf | 26 + .../ReachabilityAnalysis_AllOk/cover.gif | 1 + .../ReachabilityAnalysis_AllOk/main.css | 2 + .../subdir/second.css | 28 + .../subdir/third.css | 13 + .../ReachabilityAnalysis_AllOk/test1.xhtml | 14 + .../ReachabilityAnalysis_AllOk/test2.xhtml | 13 + .../ReachabilityAnalysis_AllOk/test3.xhtml | 13 + .../content.opf | 18 + .../cover.gif | 1 + .../main.css | 1 + .../test1.xhtml | 12 + .../test2.xhtml | 13 + .../test3.xhtml | 13 + .../content.opf | 19 + .../cover.gif | 1 + .../main.css | 1 + .../test1.xhtml | 12 + .../test2.xhtml | 13 + .../test3.xhtml | 13 + .../content.opf | 17 + .../cover.gif | 1 + .../main.css | 1 + .../test1.xhtml | 13 + .../test2.xhtml | 13 + .../test3.xhtml | 13 + .../test4.xhtml | 14 + .../toc.ncx | 24 + ...nceAttributesPresent_AllowedAttributes.xml | 6 + ...nceAttributesPresent_MissingAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../opf_tests/ReferenceTypeValid_BadValue.xml | 6 + .../ReferenceTypeValid_GoodValue.xml | 23 + ...ionAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + ...htsAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + ...iteAttributesPresent_AllowedAttributes.xml | 8 + ...iteAttributesPresent_MissingAttributes.xml | 8 + ...AttributesPresent_NotAllowedAttributes.xml | 8 + ...rceAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../SpineAllowedChildren_ChildrenOK.xml | 6 + .../SpineAllowedChildren_WrongChildren.xml | 6 + ...ineAttributesPresent_AllowedAttributes.xml | 4 + ...ineAttributesPresent_MissingAttributes.xml | 4 + ...AttributesPresent_NotAllowedAttributes.xml | 4 + .../opf_tests/SpineTocValid_BadValue.xml | 13 + .../opf_tests/SpineTocValid_GoodValue.xml | 13 + ...ectAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + ...tleAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../opf_tests/TitlePresent_HasTitle.xml | 6 + .../opf_tests/TitlePresent_NoTitle.xml | 5 + .../TourAllowedChildren_ChildrenOK.xml | 8 + .../TourAllowedChildren_WrongChildren.xml | 8 + ...ourAttributesPresent_AllowedAttributes.xml | 6 + ...ourAttributesPresent_MissingAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../ToursAllowedChildren_ChildrenOK.xml | 6 + .../ToursAllowedChildren_WrongChildren.xml | 6 + ...ursAttributesPresent_AllowedAttributes.xml | 4 + ...AttributesPresent_NotAllowedAttributes.xml | 4 + ...ypeAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + .../XMetadataAllowedChildren_ChildrenOK.xml | 9 + ...XMetadataAllowedChildren_WrongChildren.xml | 10 + ...ataAttributesPresent_AllowedAttributes.xml | 6 + ...AttributesPresent_NotAllowedAttributes.xml | 6 + ...sfiesXhtmlSchema_DoesntSatisfySchema.xhtml | 15 + ...XhtmlSchema_DoesntSatisfySchemaNoDtd.xhtml | 66 + ...SatisfiesXhtmlSchema_SatisfiesSchema.xhtml | 392 + ...fiesXhtmlSchema_SatisfiesSchemaNoDtd.xhtml | 65 + .../SatisfiesXhtmlSchema_XmlError.xhtml | 8 + .../UsesCorrectDtdTest_DtdCorrect.xhtml | 4 + ...orrectDtdTest_DtdCorrectWithInternal.xhtml | 7 + .../UsesCorrectDtdTest_DtdIncorrect.xhtml | 3 + ...esCorrectDtdTest_DtdIncorrectFarLine.xhtml | 10 + .../UsesUnicode_DeclaresOtherUsesOther.xml | 9 + .../UsesUnicode_DeclaresUtf16UsesOther.xml | 12 + .../UsesUnicode_DeclaresUtf8UsesOther.xml | 12 + .../xml_tests/UsesUnicode_ValidUtf16BE.xml | Bin 0 -> 748 bytes .../xml_tests/UsesUnicode_ValidUtf16LE.xml | Bin 0 -> 754 bytes .../xml_tests/UsesUnicode_ValidUtf8.xml | 12 + .../UsesUnicode_ValidUtf8implicit.xml | 12 + .../UsesUnicode_ValidUtf8lowercase.xml | 12 + .../xml_tests/WellFormedXml_NotValid.xml | 18 + .../xml_tests/WellFormedXml_Valid.xml | 18 + src/FlightCrew/tests/test_main.cpp | 53 + .../xhtml_tests/SatisfiesXhtmlSchema_test.cpp | 93 + .../tests/xhtml_tests/UsesCorrectDtd_test.cpp | 67 + .../tests/xml_tests/UsesUnicode_test.cpp | 114 + .../tests/xml_tests/WellFormedXml_test.cpp | 47 + src/XercesExtensions/CMakeLists.txt | 53 + .../FromXercesStringConverter.cpp | 64 + .../FromXercesStringConverter.h | 53 + .../LocationAwareDOMParser.cpp | 97 + src/XercesExtensions/LocationAwareDOMParser.h | 63 + .../LocationInfoDataHandler.cpp | 49 + .../LocationInfoDataHandler.h | 46 + src/XercesExtensions/NodeLocationInfo.h | 47 + src/XercesExtensions/QName.h | 78 + .../ToXercesStringConverter.cpp | 86 + .../ToXercesStringConverter.h | 55 + src/XercesExtensions/XercesInit.cpp | 40 + src/XercesExtensions/XercesInit.h | 40 + src/XercesExtensions/XmlUtils.cpp | 226 + src/XercesExtensions/XmlUtils.h | 108 + src/utf8-cpp/custom_changes.txt | 7 + src/utf8-cpp/utf8.h | 34 + src/utf8-cpp/utf8/checked.h | 323 + src/utf8-cpp/utf8/core.h | 365 + src/utf8-cpp/utf8/unchecked.h | 228 + src/zipios/CMakeLists.txt | 49 + src/zipios/COPYING | 458 + src/zipios/changes_made.txt | 1 + src/zipios/src/backbuffer.h | 117 + src/zipios/src/basicentry.cpp | 163 + src/zipios/src/collcoll.cpp | 162 + src/zipios/src/deflateoutputstreambuf.cpp | 224 + src/zipios/src/dircoll.cpp | 172 + src/zipios/src/fcoll.cpp | 90 + src/zipios/src/fcollexceptions.cpp | 144 + src/zipios/src/fileentry.cpp | 39 + src/zipios/src/filepath.cpp | 78 + src/zipios/src/filterinputstreambuf.cpp | 47 + src/zipios/src/filteroutputstreambuf.cpp | 47 + src/zipios/src/gzipoutputstream.cpp | 80 + src/zipios/src/gzipoutputstreambuf.cpp | 127 + src/zipios/src/inflateinputstreambuf.cpp | 179 + src/zipios/src/outputstringstream.h | 69 + src/zipios/src/zipextraction.cpp | 84 + src/zipios/src/zipfile.cpp | 223 + src/zipios/src/ziphead.cpp | 295 + src/zipios/src/zipheadio.cpp | 195 + src/zipios/src/zipinputstream.cpp | 82 + src/zipios/src/zipinputstreambuf.cpp | 137 + src/zipios/src/zipios_common.h | 52 + src/zipios/src/zipoutputstream.cpp | 103 + src/zipios/src/zipoutputstreambuf.cpp | 204 + src/zipios/zipios++/basicentry.h | 87 + src/zipios/zipios++/collcoll.h | 174 + src/zipios/zipios++/deflateoutputstreambuf.h | 109 + src/zipios/zipios++/dircoll.h | 93 + src/zipios/zipios++/fcoll.h | 309 + src/zipios/zipios++/fcollexceptions.h | 100 + src/zipios/zipios++/fileentry.h | 240 + src/zipios/zipios++/filepath.h | 208 + src/zipios/zipios++/filterinputstreambuf.h | 66 + src/zipios/zipios++/filteroutputstreambuf.h | 58 + src/zipios/zipios++/gzipoutputstream.h | 71 + src/zipios/zipios++/gzipoutputstreambuf.h | 79 + src/zipios/zipios++/inflateinputstreambuf.h | 89 + src/zipios/zipios++/meta-iostreams.h | 17 + src/zipios/zipios++/simplesmartptr.h | 173 + src/zipios/zipios++/virtualseeker.h | 105 + src/zipios/zipios++/zipextraction.h | 35 + src/zipios/zipios++/zipfile.h | 109 + src/zipios/zipios++/ziphead.h | 271 + src/zipios/zipios++/zipheadio.h | 192 + src/zipios/zipios++/zipinputstream.h | 92 + src/zipios/zipios++/zipinputstreambuf.h | 89 + src/zipios/zipios++/zipios-config.h | 10 + src/zipios/zipios++/zipios-config.h.in | 151 + src/zipios/zipios++/zipios-config.unix.h | 150 + src/zipios/zipios++/zipios-config.w32.h | 56 + src/zipios/zipios++/zipios_defs.h | 36 + src/zipios/zipios++/zipoutputstream.h | 101 + src/zipios/zipios++/zipoutputstreambuf.h | 116 + 626 files changed, 87515 insertions(+) create mode 100644 CMakeLists.txt create mode 100644 COPYING.LESSER.txt create mode 100644 COPYING.txt create mode 100644 ChangeLog.txt create mode 100644 INSTALL.txt create mode 100644 README.txt create mode 100644 cmake_extras/CustomPCH.cmake create mode 100644 cmake_extras/FileSystemSourceGroups.cmake create mode 100644 src/FlightCrew-cli/CMakeLists.txt create mode 100644 src/FlightCrew-cli/main.cpp create mode 100644 src/FlightCrew-gui/CMakeLists.txt create mode 100644 src/FlightCrew-gui/Form.ui create mode 100644 src/FlightCrew-gui/MainWindow.cpp create mode 100644 src/FlightCrew-gui/MainWindow.h create mode 100644 src/FlightCrew-gui/UpdateChecker.cpp create mode 100644 src/FlightCrew-gui/UpdateChecker.h create mode 100644 src/FlightCrew-gui/main.cpp create mode 100644 src/FlightCrew-gui/resources/bash/flightcrew-gui.sh create mode 100644 src/FlightCrew-gui/resources/mac/MacOSXBundleInfo.plist create mode 100644 src/FlightCrew/CMakeLists.txt create mode 100644 src/FlightCrew/DllExporting.h create mode 100644 src/FlightCrew/ErrorMessages.cpp create mode 100644 src/FlightCrew/ErrorMessages.h create mode 100644 src/FlightCrew/Framework/OpfValidatorsList.cpp create mode 100644 src/FlightCrew/Framework/OpfValidatorsList.h create mode 100644 src/FlightCrew/Framework/ValidateCss.cpp create mode 100644 src/FlightCrew/Framework/ValidateEpub.cpp create mode 100644 src/FlightCrew/Framework/ValidateNcx.cpp create mode 100644 src/FlightCrew/Framework/ValidateOpf.cpp create mode 100644 src/FlightCrew/Framework/ValidateXhtml.cpp create mode 100644 src/FlightCrew/Framework/flightcrew_p.h create mode 100644 src/FlightCrew/Misc/BoostFilesystemUse.h create mode 100644 src/FlightCrew/Misc/CustomAssert.cpp create mode 100644 src/FlightCrew/Misc/CustomAssert.h create mode 100644 src/FlightCrew/Misc/DetermineMimetype.cpp create mode 100644 src/FlightCrew/Misc/DetermineMimetype.h create mode 100644 src/FlightCrew/Misc/ErrorResultCollector.cpp create mode 100644 src/FlightCrew/Misc/ErrorResultCollector.h create mode 100644 src/FlightCrew/Misc/TempFolder.cpp create mode 100644 src/FlightCrew/Misc/TempFolder.h create mode 100644 src/FlightCrew/Misc/Utilities.cpp create mode 100644 src/FlightCrew/Misc/Utilities.h create mode 100644 src/FlightCrew/Misc/XercesHUse.h create mode 100644 src/FlightCrew/Result.cpp create mode 100644 src/FlightCrew/Result.h create mode 100644 src/FlightCrew/ResultId.h create mode 100644 src/FlightCrew/ResultType.h create mode 100644 src/FlightCrew/Schemas/AsSources/ContainerXsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/EncryptionXsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/Ncx20051Dtd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/NcxXsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/Ops201Xsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/OpsSwitchXsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/SignaturesXsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/Svg11Xsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/XencSchemaXsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/Xhtml11FlatDtd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/XlinkXsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/XmlXsd.cpp create mode 100644 src/FlightCrew/Schemas/AsSources/XmldsigCoreSchemaXsd.cpp create mode 100644 src/FlightCrew/Schemas/container.xsd create mode 100644 src/FlightCrew/Schemas/encryption.xsd create mode 100644 src/FlightCrew/Schemas/ncx-2005-1.dtd create mode 100644 src/FlightCrew/Schemas/ncx.xsd create mode 100644 src/FlightCrew/Schemas/ops201.xsd create mode 100644 src/FlightCrew/Schemas/ops_switch.xsd create mode 100644 src/FlightCrew/Schemas/signatures.xsd create mode 100644 src/FlightCrew/Schemas/svg11.xsd create mode 100644 src/FlightCrew/Schemas/xenc-schema.xsd create mode 100644 src/FlightCrew/Schemas/xhtml11-flat.dtd create mode 100644 src/FlightCrew/Schemas/xlink.xsd create mode 100644 src/FlightCrew/Schemas/xml.xsd create mode 100644 src/FlightCrew/Schemas/xmldsig-core-schema.xsd create mode 100644 src/FlightCrew/Validators/AllowedChildrenValidator.cpp create mode 100644 src/FlightCrew/Validators/AllowedChildrenValidator.h create mode 100644 src/FlightCrew/Validators/AttributesPresentValidator.cpp create mode 100644 src/FlightCrew/Validators/AttributesPresentValidator.h create mode 100644 src/FlightCrew/Validators/DomSchemaValidator.cpp create mode 100644 src/FlightCrew/Validators/DomSchemaValidator.h create mode 100644 src/FlightCrew/Validators/ElementCountOneValidator.cpp create mode 100644 src/FlightCrew/Validators/ElementCountOneValidator.h create mode 100644 src/FlightCrew/Validators/ElementPresentValidator.cpp create mode 100644 src/FlightCrew/Validators/ElementPresentValidator.h create mode 100644 src/FlightCrew/Validators/IValidator.h create mode 100644 src/FlightCrew/Validators/Ncx/ContentTargetsPresent.cpp create mode 100644 src/FlightCrew/Validators/Ncx/ContentTargetsPresent.h create mode 100644 src/FlightCrew/Validators/Ncx/NcxSatisfiesSchema.cpp create mode 100644 src/FlightCrew/Validators/Ncx/NcxSatisfiesSchema.h create mode 100644 src/FlightCrew/Validators/Ocf/ContainerListedOpfPresent.cpp create mode 100644 src/FlightCrew/Validators/Ocf/ContainerListedOpfPresent.h create mode 100644 src/FlightCrew/Validators/Ocf/ContainerListsOpf.cpp create mode 100644 src/FlightCrew/Validators/Ocf/ContainerListsOpf.h create mode 100644 src/FlightCrew/Validators/Ocf/ContainerSatisfiesSchema.cpp create mode 100644 src/FlightCrew/Validators/Ocf/ContainerSatisfiesSchema.h create mode 100644 src/FlightCrew/Validators/Ocf/EncryptionSatisfiesSchema.cpp create mode 100644 src/FlightCrew/Validators/Ocf/EncryptionSatisfiesSchema.h create mode 100644 src/FlightCrew/Validators/Ocf/MimetypeBytesValid.cpp create mode 100644 src/FlightCrew/Validators/Ocf/MimetypeBytesValid.h create mode 100644 src/FlightCrew/Validators/Ocf/SignaturesSatisfiesSchema.cpp create mode 100644 src/FlightCrew/Validators/Ocf/SignaturesSatisfiesSchema.h create mode 100644 src/FlightCrew/Validators/Opf/ContributorAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/ContributorAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/CoverageAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/CoverageAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/CreatorAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/CreatorAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/CreatorOrContributorRoleValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/CreatorOrContributorRoleValid.h create mode 100644 src/FlightCrew/Validators/Opf/DCMetadataAllowedChildren.cpp create mode 100644 src/FlightCrew/Validators/Opf/DCMetadataAllowedChildren.h create mode 100644 src/FlightCrew/Validators/Opf/DCMetadataAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/DCMetadataAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/DateAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/DateAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/DateValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/DateValid.h create mode 100644 src/FlightCrew/Validators/Opf/DescriptionAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/DescriptionAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/FormatAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/FormatAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/GuideAllowedChildren.cpp create mode 100644 src/FlightCrew/Validators/Opf/GuideAllowedChildren.h create mode 100644 src/FlightCrew/Validators/Opf/GuideAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/GuideAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/IdentifierAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/IdentifierAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/IdentifierPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/IdentifierPresent.h create mode 100644 src/FlightCrew/Validators/Opf/IdsUnique.cpp create mode 100644 src/FlightCrew/Validators/Opf/IdsUnique.h create mode 100644 src/FlightCrew/Validators/Opf/IdsValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/IdsValid.h create mode 100644 src/FlightCrew/Validators/Opf/ItemAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/ItemFilesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemFilesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/ItemHrefUnique.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemHrefUnique.h create mode 100644 src/FlightCrew/Validators/Opf/ItemHrefValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemHrefValid.h create mode 100644 src/FlightCrew/Validators/Opf/ItemLinearValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemLinearValid.h create mode 100644 src/FlightCrew/Validators/Opf/ItemMediaTypeValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemMediaTypeValid.h create mode 100644 src/FlightCrew/Validators/Opf/ItemPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemPresent.h create mode 100644 src/FlightCrew/Validators/Opf/ItemReqModsOnlyWithReqNS.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemReqModsOnlyWithReqNS.h create mode 100644 src/FlightCrew/Validators/Opf/ItemrefAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemrefAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/ItemrefIdrefUnique.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemrefIdrefUnique.h create mode 100644 src/FlightCrew/Validators/Opf/ItemrefIdrefValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemrefIdrefValid.h create mode 100644 src/FlightCrew/Validators/Opf/ItemrefPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/ItemrefPresent.h create mode 100644 src/FlightCrew/Validators/Opf/LanguagePresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/LanguagePresent.h create mode 100644 src/FlightCrew/Validators/Opf/ManifestAllowedChildren.cpp create mode 100644 src/FlightCrew/Validators/Opf/ManifestAllowedChildren.h create mode 100644 src/FlightCrew/Validators/Opf/ManifestAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/ManifestAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/MetaAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/MetaAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/MetadataAllowedChildren.cpp create mode 100644 src/FlightCrew/Validators/Opf/MetadataAllowedChildren.h create mode 100644 src/FlightCrew/Validators/Opf/MetadataAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/MetadataAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/NcxPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/NcxPresent.h create mode 100644 src/FlightCrew/Validators/Opf/OneManifest.cpp create mode 100644 src/FlightCrew/Validators/Opf/OneManifest.h create mode 100644 src/FlightCrew/Validators/Opf/OneMetadata.cpp create mode 100644 src/FlightCrew/Validators/Opf/OneMetadata.h create mode 100644 src/FlightCrew/Validators/Opf/OneSpine.cpp create mode 100644 src/FlightCrew/Validators/Opf/OneSpine.h create mode 100644 src/FlightCrew/Validators/Opf/PackageAllowedChildren.cpp create mode 100644 src/FlightCrew/Validators/Opf/PackageAllowedChildren.h create mode 100644 src/FlightCrew/Validators/Opf/PackageAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/PackageAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/PackageIsRoot.cpp create mode 100644 src/FlightCrew/Validators/Opf/PackageIsRoot.h create mode 100644 src/FlightCrew/Validators/Opf/PackageUniqueIdentifierValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/PackageUniqueIdentifierValid.h create mode 100644 src/FlightCrew/Validators/Opf/PackageVersionCorrect.cpp create mode 100644 src/FlightCrew/Validators/Opf/PackageVersionCorrect.h create mode 100644 src/FlightCrew/Validators/Opf/PublisherAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/PublisherAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/ReachabilityAnalysis.cpp create mode 100644 src/FlightCrew/Validators/Opf/ReachabilityAnalysis.h create mode 100644 src/FlightCrew/Validators/Opf/ReferenceAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/ReferenceAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/ReferenceTypeValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/ReferenceTypeValid.h create mode 100644 src/FlightCrew/Validators/Opf/RelationAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/RelationAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/RightsAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/RightsAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/SiteAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/SiteAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/SourceAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/SourceAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/SpineAllowedChildren.cpp create mode 100644 src/FlightCrew/Validators/Opf/SpineAllowedChildren.h create mode 100644 src/FlightCrew/Validators/Opf/SpineAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/SpineAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/SpineTocValid.cpp create mode 100644 src/FlightCrew/Validators/Opf/SpineTocValid.h create mode 100644 src/FlightCrew/Validators/Opf/SubjectAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/SubjectAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/TitleAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/TitleAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/TitlePresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/TitlePresent.h create mode 100644 src/FlightCrew/Validators/Opf/TourAllowedChildren.cpp create mode 100644 src/FlightCrew/Validators/Opf/TourAllowedChildren.h create mode 100644 src/FlightCrew/Validators/Opf/TourAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/TourAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/ToursAllowedChildren.cpp create mode 100644 src/FlightCrew/Validators/Opf/ToursAllowedChildren.h create mode 100644 src/FlightCrew/Validators/Opf/ToursAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/ToursAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/TypeAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/TypeAttributesPresent.h create mode 100644 src/FlightCrew/Validators/Opf/XMetadataAllowedChildren.cpp create mode 100644 src/FlightCrew/Validators/Opf/XMetadataAllowedChildren.h create mode 100644 src/FlightCrew/Validators/Opf/XMetadataAttributesPresent.cpp create mode 100644 src/FlightCrew/Validators/Opf/XMetadataAttributesPresent.h create mode 100644 src/FlightCrew/Validators/SaxSchemaValidator.cpp create mode 100644 src/FlightCrew/Validators/SaxSchemaValidator.h create mode 100644 src/FlightCrew/Validators/Xhtml/SatisfiesXhtmlSchema.cpp create mode 100644 src/FlightCrew/Validators/Xhtml/SatisfiesXhtmlSchema.h create mode 100644 src/FlightCrew/Validators/Xhtml/UsesCorrectDtd.cpp create mode 100644 src/FlightCrew/Validators/Xhtml/UsesCorrectDtd.h create mode 100644 src/FlightCrew/Validators/Xml/UsesUnicode.cpp create mode 100644 src/FlightCrew/Validators/Xml/UsesUnicode.h create mode 100644 src/FlightCrew/Validators/Xml/WellFormedXml.cpp create mode 100644 src/FlightCrew/Validators/Xml/WellFormedXml.h create mode 100644 src/FlightCrew/Validators/XmlValidator.cpp create mode 100644 src/FlightCrew/Validators/XmlValidator.h create mode 100644 src/FlightCrew/constants.h create mode 100644 src/FlightCrew/exception.h create mode 100644 src/FlightCrew/flightcrew.cpp create mode 100644 src/FlightCrew/flightcrew.h create mode 100644 src/FlightCrew/stdafx.cpp create mode 100644 src/FlightCrew/stdafx.h create mode 100644 src/FlightCrew/tests/CMakeLists.txt create mode 100644 src/FlightCrew/tests/framework_tests/EpubValidates_test.cpp create mode 100644 src/FlightCrew/tests/misc_tests/ConvertUtf8PathToBoostPath_test.cpp create mode 100644 src/FlightCrew/tests/misc_tests/DetermineMimetype_test.cpp create mode 100644 src/FlightCrew/tests/misc_tests/NormalizePath_test.cpp create mode 100644 src/FlightCrew/tests/ncx_tests/ContentTargetsPresent_test.cpp create mode 100644 src/FlightCrew/tests/ncx_tests/NcxSatisfiesSchema_test.cpp create mode 100644 src/FlightCrew/tests/ocf_tests/ContainerListedOpfPresent_test.cpp create mode 100644 src/FlightCrew/tests/ocf_tests/ContainerListsOpf_test.cpp create mode 100644 src/FlightCrew/tests/ocf_tests/ContainerSatisfiesSchema_test.cpp create mode 100644 src/FlightCrew/tests/ocf_tests/EncryptionSatisfiesSchema_test.cpp create mode 100644 src/FlightCrew/tests/ocf_tests/MimetypeBytesValid_test.cpp create mode 100644 src/FlightCrew/tests/ocf_tests/SignaturesSatisfiesSchema_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ContributorAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/CoverageAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/CreatorAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/CreatorOrContributorRoleValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/DCMetadataAllowedChildren_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/DCMetadataAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/DateAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/DateValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/DescriptionAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/FormatAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/GuideAllowedChildren_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/GuideAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/IdentifierAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/IdentifierPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/IdsUnique_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/IdsValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemFilesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemHrefUnique_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemHrefValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemLinearValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemMediaTypeValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemReqModsOnlyWithReqNS_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemrefAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemrefIdrefUnique_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemrefIdrefValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ItemrefPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/LanguagePresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ManifestAllowedChildren_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ManifestAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/MetaAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/MetadataAllowedChildren_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/MetadataAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/NcxPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/OneManifest_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/OneMetadata_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/OneSpine_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/PackageAllowedChildren_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/PackageAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/PackageIsRoot_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/PackageUniqueIdentifierValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/PackageVersionCorrect_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/PublisherAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ReachabilityAnalysis_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ReferenceAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ReferenceTypeValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/RelationAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/RightsAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/SiteAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/SourceAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/SpineAllowedChildren_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/SpineAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/SpineTocValid_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/SubjectAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/TitleAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/TitlePresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/TourAllowedChildren_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/TourAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ToursAllowedChildren_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/ToursAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/TypeAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/XMetadataAllowedChildren_test.cpp create mode 100644 src/FlightCrew/tests/opf_tests/XMetadataAttributesPresent_test.cpp create mode 100644 src/FlightCrew/tests/stdafx_tests.cpp create mode 100644 src/FlightCrew/tests/stdafx_tests.h create mode 100644 src/FlightCrew/tests/test_data/framework_tests/EpubValidates_MissingTitle.epub create mode 100644 src/FlightCrew/tests/test_data/framework_tests/EpubValidates_MissingXhtmlFiles.epub create mode 100644 src/FlightCrew/tests/test_data/framework_tests/EpubValidates_NoContainerXml.epub create mode 100644 src/FlightCrew/tests/test_data/framework_tests/EpubValidates_NotAZip.epub create mode 100644 src/FlightCrew/tests/test_data/framework_tests/EpubValidates_Valid.epub create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test1.xhtml create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test2.xhtml create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test3.xhtml create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/toc.ncx create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/test2.xhtml create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/test3.xhtml create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/toc.ncx create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_DoesntSatisfySchema.xml create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchema.xml create mode 100644 src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchemaOpf201.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_DoesntHaveOpf/META-INF/container.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_DoesntHaveOpf/OEBPS/content.opf create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_HasOpf/META-INF/container.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_HasOpf/OEBPS/content.opf create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/ContainerListsOpf_DoesntListOpf.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/ContainerListsOpf_ListsOpf.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/ContainerSatisfiesSchema_DoesntSatisfySchema.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/ContainerSatisfiesSchema_SatisfiesSchema.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/EncryptionSatisfiesSchema_DoesntSatisfySchema.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/EncryptionSatisfiesSchema_SatisfiesSchema.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/MimetypeBytesValidTest_BytesInvalid.epub create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/MimetypeBytesValidTest_BytesValid.epub create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/SignaturesSatisfiesSchema_DoesntSatisfySchema.xml create mode 100644 src/FlightCrew/tests/test_data/ocf_tests/SignaturesSatisfiesSchema_SatisfiesSchema.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ContributorAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ContributorAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/CoverageAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/CoverageAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/CreatorAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/CreatorAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/CreatorOrContributorRoleValid_BadValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/CreatorOrContributorRoleValid_GoodValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DCMetadataAllowedChildren_ChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DCMetadataAllowedChildren_WrongChildren.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DCMetadataAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DCMetadataAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DateAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DateAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DateValid_BadValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DateValid_GoodValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DescriptionAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/DescriptionAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/FormatAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/FormatAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/GuideAllowedChildren_ChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/GuideAllowedChildren_WrongChildren.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/GuideAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/GuideAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/IdentifierAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/IdentifierAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/IdentifierPresent_HasIdentifier.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/IdentifierPresent_NoIdentifier.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/IdsUnique_AllNotUnique.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/IdsUnique_AllUnique.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/IdsValid_BadValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/IdsValid_GoodValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_MissingAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/content.opf create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test1.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test2.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test3.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/content.opf create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/test1.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/test3.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemHrefUnique_HrefsNotUnique.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemHrefUnique_HrefsUnique.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemHrefValid_BadValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemHrefValid_GoodValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemLinearValid_BadValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemLinearValid_GoodValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemMediaTypeValid_BadValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemMediaTypeValid_GoodValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemPresent_HasItem.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemPresent_NoItem.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespaceNotPresent.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespacePresent.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_MissingAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefUnique_AllNotUnique.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefUnique_AllUnique.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefValid_IdDoesNotExist.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefValid_IdExists.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemrefPresent_HasItemref.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ItemrefPresent_NoItemref.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/LanguagePresent_HasLanguage.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/LanguagePresent_NoLanguage.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ManifestAllowedChildren_ChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ManifestAllowedChildren_WrongChildren.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ManifestAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ManifestAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_MissingAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_DCXChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_DCXChildrenWrong.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_StdChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_StdChildrenWrong.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/MetadataAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/MetadataAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/NcxPresent_HasNcx.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/NcxPresent_NoNcx.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/OneManifest_NoManifest.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/OneManifest_OneManifest.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/OneManifest_TwoManifests.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/OneMetadata_NoMetadata.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/OneMetadata_OneMetadata.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/OneMetadata_TwoMetadatas.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/OneSpine_NoSpine.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/OneSpine_OneSpine.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/OneSpine_TwoSpines.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageAllowedChildren_ChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageAllowedChildren_WrongChildren.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_MissingAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageIsRoot_PackageNotRoot.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageIsRoot_PackageRoot.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageUniqueIdentifierValid_IdDoesNotExist.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageUniqueIdentifierValid_IdExists.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageVersionCorrect_BadPackageVersion.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PackageVersionCorrect_GoodPackageVersion.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PublisherAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/PublisherAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/content.opf create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/cover.gif create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/main.css create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/subdir/second.css create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/subdir/third.css create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test1.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test2.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test3.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/content.opf create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/cover.gif create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/main.css create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test1.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test2.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test3.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/content.opf create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/cover.gif create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/main.css create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test1.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test2.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test3.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/content.opf create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/cover.gif create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/main.css create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test1.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test2.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test3.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test4.xhtml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/toc.ncx create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_MissingAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReferenceTypeValid_BadValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ReferenceTypeValid_GoodValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/RelationAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/RelationAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/RightsAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/RightsAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_MissingAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SourceAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SourceAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SpineAllowedChildren_ChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SpineAllowedChildren_WrongChildren.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_MissingAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SpineTocValid_BadValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SpineTocValid_GoodValue.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SubjectAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/SubjectAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TitleAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TitleAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TitlePresent_HasTitle.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TitlePresent_NoTitle.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TourAllowedChildren_ChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TourAllowedChildren_WrongChildren.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_MissingAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ToursAllowedChildren_ChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ToursAllowedChildren_WrongChildren.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ToursAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/ToursAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TypeAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/TypeAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/XMetadataAllowedChildren_ChildrenOK.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/XMetadataAllowedChildren_WrongChildren.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/XMetadataAttributesPresent_AllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/opf_tests/XMetadataAttributesPresent_NotAllowedAttributes.xml create mode 100644 src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchema.xhtml create mode 100644 src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchemaNoDtd.xhtml create mode 100644 src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchema.xhtml create mode 100644 src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchemaNoDtd.xhtml create mode 100644 src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_XmlError.xhtml create mode 100644 src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrect.xhtml create mode 100644 src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrectWithInternal.xhtml create mode 100644 src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrect.xhtml create mode 100644 src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrectFarLine.xhtml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresOtherUsesOther.xml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresUtf16UsesOther.xml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresUtf8UsesOther.xml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf16BE.xml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf16LE.xml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8.xml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8implicit.xml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8lowercase.xml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/WellFormedXml_NotValid.xml create mode 100644 src/FlightCrew/tests/test_data/xml_tests/WellFormedXml_Valid.xml create mode 100644 src/FlightCrew/tests/test_main.cpp create mode 100644 src/FlightCrew/tests/xhtml_tests/SatisfiesXhtmlSchema_test.cpp create mode 100644 src/FlightCrew/tests/xhtml_tests/UsesCorrectDtd_test.cpp create mode 100644 src/FlightCrew/tests/xml_tests/UsesUnicode_test.cpp create mode 100644 src/FlightCrew/tests/xml_tests/WellFormedXml_test.cpp create mode 100644 src/XercesExtensions/CMakeLists.txt create mode 100644 src/XercesExtensions/FromXercesStringConverter.cpp create mode 100644 src/XercesExtensions/FromXercesStringConverter.h create mode 100644 src/XercesExtensions/LocationAwareDOMParser.cpp create mode 100644 src/XercesExtensions/LocationAwareDOMParser.h create mode 100644 src/XercesExtensions/LocationInfoDataHandler.cpp create mode 100644 src/XercesExtensions/LocationInfoDataHandler.h create mode 100644 src/XercesExtensions/NodeLocationInfo.h create mode 100644 src/XercesExtensions/QName.h create mode 100644 src/XercesExtensions/ToXercesStringConverter.cpp create mode 100644 src/XercesExtensions/ToXercesStringConverter.h create mode 100644 src/XercesExtensions/XercesInit.cpp create mode 100644 src/XercesExtensions/XercesInit.h create mode 100644 src/XercesExtensions/XmlUtils.cpp create mode 100644 src/XercesExtensions/XmlUtils.h create mode 100644 src/utf8-cpp/custom_changes.txt create mode 100644 src/utf8-cpp/utf8.h create mode 100755 src/utf8-cpp/utf8/checked.h create mode 100755 src/utf8-cpp/utf8/core.h create mode 100755 src/utf8-cpp/utf8/unchecked.h create mode 100644 src/zipios/CMakeLists.txt create mode 100644 src/zipios/COPYING create mode 100644 src/zipios/changes_made.txt create mode 100644 src/zipios/src/backbuffer.h create mode 100644 src/zipios/src/basicentry.cpp create mode 100644 src/zipios/src/collcoll.cpp create mode 100644 src/zipios/src/deflateoutputstreambuf.cpp create mode 100644 src/zipios/src/dircoll.cpp create mode 100644 src/zipios/src/fcoll.cpp create mode 100644 src/zipios/src/fcollexceptions.cpp create mode 100644 src/zipios/src/fileentry.cpp create mode 100644 src/zipios/src/filepath.cpp create mode 100644 src/zipios/src/filterinputstreambuf.cpp create mode 100644 src/zipios/src/filteroutputstreambuf.cpp create mode 100644 src/zipios/src/gzipoutputstream.cpp create mode 100644 src/zipios/src/gzipoutputstreambuf.cpp create mode 100644 src/zipios/src/inflateinputstreambuf.cpp create mode 100644 src/zipios/src/outputstringstream.h create mode 100644 src/zipios/src/zipextraction.cpp create mode 100644 src/zipios/src/zipfile.cpp create mode 100644 src/zipios/src/ziphead.cpp create mode 100644 src/zipios/src/zipheadio.cpp create mode 100644 src/zipios/src/zipinputstream.cpp create mode 100644 src/zipios/src/zipinputstreambuf.cpp create mode 100644 src/zipios/src/zipios_common.h create mode 100644 src/zipios/src/zipoutputstream.cpp create mode 100644 src/zipios/src/zipoutputstreambuf.cpp create mode 100644 src/zipios/zipios++/basicentry.h create mode 100644 src/zipios/zipios++/collcoll.h create mode 100644 src/zipios/zipios++/deflateoutputstreambuf.h create mode 100644 src/zipios/zipios++/dircoll.h create mode 100644 src/zipios/zipios++/fcoll.h create mode 100644 src/zipios/zipios++/fcollexceptions.h create mode 100644 src/zipios/zipios++/fileentry.h create mode 100644 src/zipios/zipios++/filepath.h create mode 100644 src/zipios/zipios++/filterinputstreambuf.h create mode 100644 src/zipios/zipios++/filteroutputstreambuf.h create mode 100644 src/zipios/zipios++/gzipoutputstream.h create mode 100644 src/zipios/zipios++/gzipoutputstreambuf.h create mode 100644 src/zipios/zipios++/inflateinputstreambuf.h create mode 100644 src/zipios/zipios++/meta-iostreams.h create mode 100644 src/zipios/zipios++/simplesmartptr.h create mode 100644 src/zipios/zipios++/virtualseeker.h create mode 100644 src/zipios/zipios++/zipextraction.h create mode 100644 src/zipios/zipios++/zipfile.h create mode 100644 src/zipios/zipios++/ziphead.h create mode 100644 src/zipios/zipios++/zipheadio.h create mode 100644 src/zipios/zipios++/zipinputstream.h create mode 100644 src/zipios/zipios++/zipinputstreambuf.h create mode 100644 src/zipios/zipios++/zipios-config.h create mode 100644 src/zipios/zipios++/zipios-config.h.in create mode 100644 src/zipios/zipios++/zipios-config.unix.h create mode 100644 src/zipios/zipios++/zipios-config.w32.h create mode 100644 src/zipios/zipios++/zipios_defs.h create mode 100644 src/zipios/zipios++/zipoutputstream.h create mode 100644 src/zipios/zipios++/zipoutputstreambuf.h diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..30a6a76 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,55 @@ +######################################################## +# +# This is a CMake configuration file. +# To use it you need CMake which can be +# downloaded from here: +# http://www.cmake.org/cmake/resources/software.html +# +######################################################### + +cmake_minimum_required( VERSION 2.8 ) + +project( FlightCrew ) + +set( CMAKE_DEBUG_POSTFIX "d" ) +set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin ) +set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib ) +set( PACKAGE_DIRECTORY ${PROJECT_BINARY_DIR}/package ) + +set( FLIGHTCREW_MAJOR_VERSION 0 ) +set( FLIGHTCREW_MINOR_VERSION 7 ) +set( FLIGHTCREW_REVISION_VERSION 2 ) +set( FLIGHTCREW_FULL_VERSION ${FLIGHTCREW_MAJOR_VERSION}.${FLIGHTCREW_MINOR_VERSION}.${FLIGHTCREW_REVISION_VERSION} ) + +# Check if platform is 64 bit +if( NOT APPLE ) + if( CMAKE_SIZEOF_VOID_P EQUAL 4 ) + set( 64_BIT_PLATFORM 0 ) + else() + set( 64_BIT_PLATFORM 1 ) + endif() +endif() + +# We need this to make sure g++ and the linker +# create exes that can run on 10.6+ +set( CMAKE_OSX_DEPLOYMENT_TARGET "10.6" ) + +# 10.6 is the required minimum OS X version. +set( CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.6.sdk" ) + +# Universal builds for mac +set( CMAKE_OSX_ARCHITECTURES "i386;x86_64" ) + +# The parsing order is significant! +add_subdirectory( src/BoostParts ) +add_subdirectory( src/Xerces ) +add_subdirectory( src/XercesExtensions ) +add_subdirectory( src/zlib ) +add_subdirectory( src/zipios ) +add_subdirectory( src/googlemock ) +add_subdirectory( src/FlightCrew ) +add_subdirectory( src/FlightCrew-cli ) + +if( NOT SKIP_FC_GUI ) + add_subdirectory( src/FlightCrew-gui ) +endif() diff --git a/COPYING.LESSER.txt b/COPYING.LESSER.txt new file mode 100644 index 0000000..b14ca0a --- /dev/null +++ b/COPYING.LESSER.txt @@ -0,0 +1,165 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + + This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. + + 0. Additional Definitions. + + As used herein, "this License" refers to version 3 of the GNU Lesser +General Public License, and the "GNU GPL" refers to version 3 of the GNU +General Public License. + + "The Library" refers to a covered work governed by this License, +other than an Application or a Combined Work as defined below. + + An "Application" is any work that makes use of an interface provided +by the Library, but which is not otherwise based on the Library. +Defining a subclass of a class defined by the Library is deemed a mode +of using an interface provided by the Library. + + A "Combined Work" is a work produced by combining or linking an +Application with the Library. The particular version of the Library +with which the Combined Work was made is also called the "Linked +Version". + + The "Minimal Corresponding Source" for a Combined Work means the +Corresponding Source for the Combined Work, excluding any source code +for portions of the Combined Work that, considered in isolation, are +based on the Application, and not on the Linked Version. + + The "Corresponding Application Code" for a Combined Work means the +object code and/or source code for the Application, including any data +and utility programs needed for reproducing the Combined Work from the +Application, but excluding the System Libraries of the Combined Work. + + 1. Exception to Section 3 of the GNU GPL. + + You may convey a covered work under sections 3 and 4 of this License +without being bound by section 3 of the GNU GPL. + + 2. Conveying Modified Versions. + + If you modify a copy of the Library, and, in your modifications, a +facility refers to a function or data to be supplied by an Application +that uses the facility (other than as an argument passed when the +facility is invoked), then you may convey a copy of the modified +version: + + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or + + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. + + 3. Object Code Incorporating Material from Library Header Files. + + The object code form of an Application may incorporate material from +a header file that is part of the Library. You may convey such object +code under terms of your choice, provided that, if the incorporated +material is not limited to numerical parameters, data structure +layouts and accessors, or small macros, inline functions and templates +(ten or fewer lines in length), you do both of the following: + + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the object code with a copy of the GNU GPL and this license + document. + + 4. Combined Works. + + You may convey a Combined Work under terms of your choice that, +taken together, effectively do not restrict modification of the +portions of the Library contained in the Combined Work and reverse +engineering for debugging such modifications, if you also do each of +the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + + 5. Combined Libraries. + + You may place library facilities that are a work based on the +Library side by side in a single library together with other library +facilities that are not Applications and are not covered by this +License, and convey such a combined library under terms of your +choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions +of the GNU Lesser General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the +Library as you received it specifies that a certain numbered version +of the GNU Lesser General Public License "or any later version" +applies to it, you have the option of following the terms and +conditions either of that published version or of any later version +published by the Free Software Foundation. If the Library as you +received it does not specify a version number of the GNU Lesser +General Public License, you may choose any version of the GNU Lesser +General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide +whether future versions of the GNU Lesser General Public License shall +apply, that proxy's public statement of acceptance of any version is +permanent authorization for you to choose that version for the +Library. diff --git a/COPYING.txt b/COPYING.txt new file mode 100644 index 0000000..818433e --- /dev/null +++ b/COPYING.txt @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/ChangeLog.txt b/ChangeLog.txt new file mode 100644 index 0000000..cd294c7 --- /dev/null +++ b/ChangeLog.txt @@ -0,0 +1,29 @@ +FlightCrew v0.7.2 2011.08.15 + - Use Inno for Windows installer. + - Add version display to GUI and CLI. + - Fix Sigil issue #813: erroneous Resource is reachable but not present in OPF detection. + - OS X minimum version bumped to 10.6. + - made the CSS resource use detection far more robust + - fixed an issue with CSS @import rules in the '@import "something.css"' format not being + recognized + - fixed an issue with links to fonts in commented-out CSS producing "not in manifest" errors + (issue #15) + - fixed an issue with "background" and "background-image" CSS rules that referenced images + having those same images marked as unreachable files (issue #21) + - fixed an issue with "src" declarations in @font-face rules that have a space before the colon + throwing error messages about unreachable files (issue #21) + - clarified what "reachable" means in the error messages + +FlightCrew v0.7.1 2010.11.11. + - added an automatic update checker to the GUI app + - the GUI now displays a "No problems found" message when the epub passes all checks + (issue #9) + - fixed an issue with missing XHTML files causing the GUI to show a dialog about an + std::exception and the CLI to report that the epub itself was not present (issue #8) + - fixed an issue that was causing empty error messages for incorrect uses of XML encodings + (issue #5) + - fixed an issue with anchor links to the current file (links with fragments only) + incorrectly throwing errors in the reachability analysis (issue #3) + +FlightCrew v0.7.0 2010.10.01. + - initial release \ No newline at end of file diff --git a/INSTALL.txt b/INSTALL.txt new file mode 100644 index 0000000..063b017 --- /dev/null +++ b/INSTALL.txt @@ -0,0 +1,169 @@ +*************************************************************** +The latest version of this document is always available here: + http://code.google.com/p/flightcrew/wiki/BuildingFromSource +**************************************************************** + = General notes = + +You will need CMake 2.8.0 or later on all platforms. You can download it +[http://www.cmake.org/cmake/resources/software.html here]. CMake is a +cross-platform system for build automation. It can generate Visual +Studio project files on Windows, Xcode project files on Mac OS X and +Makefiles on Unix systems. After installing CMake, you can see a list of +generators provided on your system by typing `cmake` in your terminal +and pressing enter. The supported generators should be listed near the +bottom of the printout. + +To build FlightCrew-gui, Qt 4.6.x is also required on all platforms. It +can be downloaded [http://qt.nokia.com/downloads here] (choose the LGPL +version). *Qt is not necessary for the core FlightCrew library and +FlightCrew-cli.* + +Mac users should grab the Qt SDK. Windows users can also download the +SDK which comes with MinGW and the Qt Creator IDE. If you want to use +the Visual Studio compiler, you should download the precompiled Qt +libraries for Visual Studio 2008 from Nokia's website. Linux users +should get it from their distribution's package manager (more +information in the Linux section). + +On some platforms a `makeinstaller` target is provided for +FlightCrew-gui which will build a binary installer. For that to work, +you need to have InstallJammer installed and on the system PATH. You can +get InstallJammer [http://www.installjammer.com/ here]. You need to have +the Qt libraries on the system PATH as well. + +== Running the test suite == + +FlightCrew comes with an extensive test suite that should cover _all_ of +the checks it performs, minus the ones coming from schemas. The default +build procedure will build the `fc_tests` application that runs the +tests. *You have to run `fc_tests` from the "bin" folder.* The +application expects a `test_data` folder in the current working +directory, so running it from any other directory will usually fail. + +Note that I said that `test_data` is expected in "the current working +directory", *not* the directory in which `fc_tests` is located. The two +can be the same, but they can also be different. + +== Compiling on Windows == + +It is assumed you want to generate Visual Studio project files. You can +do this by creating a new folder *outside* of the source distribution. + +Now navigate to that folder with a terminal like cmd.exe or PowerShell. +Then type in and run the following: + +cmake -G "Visual Studio 9 2008" /path/to/extracted/folder + +This should create SLN and vcproj files for Visual Studio in that +directory. You can also generate project files for some other VS +version. You can get a list of all supported generators by typing in +and running `cmake`. + +The default build procedure will build `FlightCrew-gui.exe` and +`FlightCrew-cli.exe`; if you want to package that with the required +DLL's into an installer, build the `makeinstaller` project. + +There is also an +[http://www.qtsoftware.com/downloads/visual-studio-add-in add-in] for VS +on Qt's website. It will make it easier to develop Qt applications like +FlightCrew-gui, but is not strictly necessary. + +*NOTE:* If you generate solution files for VS 2010 with CMake version +<= 2.8.1, those builds will fail. This is caused by +[http://www.cmake.org/Bug/view.php?id=10503 a bug] in CMake. This bug +has been fixed and CMake 2.8.2 and above don't have this problem. + +== Compiling on Mac == + +It is assumed you want to generate Xcode project files. You can do this +by creating a new folder *outside* of the source distribution. + +Now navigate to that folder with the Terminal. Then type in and run the +following: + +cmake -G Xcode /path/to/extracted/folder + +This should create Xcode project files in that directory. The default +build procedure will build `FlightCrew-gui.app` and `FlightCrew-cli`; +if you want to package `FlightCrew-gui.app` into a DMG file, invoke the +`makedmg` build target. + +== Compiling on Linux == + +If you want to build FlightCrew-gui you will need the core Qt libraries +and *libqt4-dev*. + +This should be as simple as typing in the following command into your +terminal (on Debian-like systems): + +sudo apt-get install libqt4-gui libqt4-dev + +It is assumed you want to generate Makefiles. You can do this by +creating a new folder *outside* of the source distribution. + +Now navigate to that folder with a terminal. Then type in and run the +following: + +cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release /path/to/extracted/folder +make +sudo make install + +That builds and installs FlightCrew-cli and FlightCrew-gui on Linux. +By default, they are installed in `${CMAKE_INSTALL_PREFIX}/bin`, with +`CMAKE_INSTALL_PREFIX` defaulting to `usr/local`. + +You can change the install location by running cmake like this: + +cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/new/install/prefix -DCMAKE_BUILD_TYPE=Release /path/to/extracted/folder + +Aside from using the install target, you can also build a binary installer +by invoking the `makeinstaller` build target. + +Building from source in the repository is recommended, since code in +the repository should always be stable. If it's not, that's a bug report. + +== Building FlightCrew as a DLL == + +*By default, FlightCrew is configured to build as a static library.* To +compile it as a DLL, you need to do two things: + +* Pass `-DBUILD_SHARED_FC=1` to the cmake call. So for Visual Studio + 2008, it would look something like this: + + cmake -G "Visual Studio 9 2008" -DBUILD_SHARED_FC=1 /path/to/extracted/folder + +* Define `FC_BUILT_AS_DLL` when including `flightcrew.h` + +== Not building FlightCrew-gui == + +Just pass `-DSKIP_FC_GUI=1` to the cmake call. This can be passed along +with the option to build FlightCrew as a DLL. + +== Not building the test executable == + +The default build procedure will also build a `fc_test` executable in the +`bin` directory of your build folder. Running this program runs the +FlightCrew test suite. + +You can disable the building of this application by passing +`-DNO_TEST_EXE=1` to the cmake call. This can also be combined with the +other build options. + +It is *highly* recommended to build and run the test application on your +system. + += Compiling Qt = + +Compiling Qt directly should not be necessary. Nevertheless, if you wish +to compile Qt, you should configure it before compiling like this: + +configure -opensource -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libtiff -qt-libjpeg + +These are the options used to configure the Qt libraries that are +provided with FlightCrew-gui on Windows. + +Building Qt takes many hours. You can save yourself a lot of time by +passing `-nomake tools -nomake examples -nomake demos -nomake docs +-nomake translations` to `configure` as well. For Visual Studio builds, +passing `-ltcg` is also strongly recommended. + diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..c0c3ab0 --- /dev/null +++ b/README.txt @@ -0,0 +1,34 @@ + +FlightCrew is a C++, cross-platform, native code epub validator. +The version of the package can be found in the ChangeLog.txt file. + +It's website is located here: http://code.google.com/p/flightcrew/ + +The src directory contains all of the source code. It has +a few subdirectories: + src/BoostParts - source code of various parts of the Boost C++ + Libraries that FlightCrew uses; + src/FlightCrew - source code for the FlightCrew, the validation + library; + src/FlightCrew-cli - the command-line front-end to the FlightCrew + library; + src/FlightCrew-gui - the GUI front-end to the FlightCrew library; + src/googlemock - a framework used for the test suite + src/utf8-cpp - a header-only library for dealing with utf-8 in C++ + src/Xerces - an XML parser + src/XercesExtensions - a library containing some common wrapper + code for Xerces; this lib is part of FC + src/Zipios - a ZIP library + src/zlib - a lib for data compression (the DEFLATE algorithm) + +The entire public interface of the library can be accessed by including +the src/FlightCrew/flightcrew.h header file. + +The installer directory contains the files needed to produce +a binary installer for Windows and Linux. + +The INSTALL.txt file contains information on building FlightCrew +from source code (and installing it on Linux machines). + +The LGPLv3 license under which Sigil is released is located in +the file called COPYING.txt and COPYING.LESSER.txt. \ No newline at end of file diff --git a/cmake_extras/CustomPCH.cmake b/cmake_extras/CustomPCH.cmake new file mode 100644 index 0000000..1490247 --- /dev/null +++ b/cmake_extras/CustomPCH.cmake @@ -0,0 +1,89 @@ + +# DON'T FORGET to include ${CMAKE_CURRENT_SOURCE_DIR} in include_directories for the compiler +# to see the header, and ${CMAKE_CURRENT_BINARY_DIR} for the compiler to see the GCC PCH + +# "sources" - unexpanded cmake variable holding all the source files +# "includes" - unexpanded cmake variable holding all include paths the PCH needs to know about +# "target_name" - the name of the a special target used to build the PCH for GCC +# "header_name" - the name of the PCH header, without the extension; "stdafx" or something similar; +# note that the source file compiling the header needs to have the same name +macro( precompiled_header sources includes target_name header_name ) + + # MSVC precompiled headers cmake code + if ( MSVC ) + set_source_files_properties( ${header_name}.cpp PROPERTIES COMPILE_FLAGS "/Yc${header_name}.h" ) + + foreach( src_file ${${sources}} ) + if( ${src_file} MATCHES ".*cpp$" ) + set_source_files_properties( ${src_file} PROPERTIES COMPILE_FLAGS "/Yu${header_name}.h" ) + endif() + endforeach() + + # ${header_name}.cpp has to come before ${header_name}.h, + # otherwise we get a linker error... + list( INSERT ${sources} 0 ${header_name}.h ) + list( INSERT ${sources} 0 ${header_name}.cpp ) + + # GCC precompiled headers cmake code + # We don't do this on Macs since GCC there goes haywire + # when you try to generate a PCH with two "-arch" flags + elseif( CMAKE_COMPILER_IS_GNUCXX AND NOT APPLE ) + + # Get the compiler flags for this build type + string( TOUPPER "CMAKE_CXX_FLAGS_${CMAKE_BUILD_TYPE}" flags_for_build_name ) + set( compile_flags ${${flags_for_build_name}} ) + + # Add all the Qt include directories + foreach( item ${${includes}} ) + list( APPEND compile_flags "-I${item}" ) + endforeach() + + # Get the list of all build-independent preprocessor definitions + get_directory_property( defines_global COMPILE_DEFINITIONS ) + list( APPEND defines ${defines_global} ) + + # Get the list of all build-dependent preprocessor definitions + string( TOUPPER "COMPILE_DEFINITIONS_${CMAKE_BUILD_TYPE}" defines_for_build_name ) + get_directory_property( defines_build ${defines_for_build_name} ) + list( APPEND defines ${defines_build} ) + + # Add the "-D" prefix to all of them + foreach( item ${defines} ) + list( APPEND all_define_flags "-D${item}" ) + endforeach() + + list( APPEND compile_flags ${all_define_flags} ) + + # Prepare the compile flags var for passing to GCC + separate_arguments( compile_flags ) + + # Finally, build the precompiled header. + # We don't add the buil command to add_custom_target + # because that would force a PCH rebuild even when + # the ${header_name}.h file hasn't changed. We add it to + # a special add_custom_command to work around this problem. + add_custom_target( ${target_name} ALL + DEPENDS ${header_name}.h.gch + ) + + add_custom_command( OUTPUT ${header_name}.h.gch + COMMAND ${CMAKE_CXX_COMPILER} ${compile_flags} ${CMAKE_CURRENT_SOURCE_DIR}/${header_name}.h -o ${header_name}.h.gch + MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/${header_name}.h + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + VERBATIM ) + endif() +endmacro() + +# Xcode PCH support. Has to be called *AFTER* the target is created. +# "header_name" - the name of the PCH header, without the extension; "stdafx" or something similar; +# note that the source file compiling the header needs to have the same name +macro( xcode_pch header_name ) + if( APPLE ) + set_target_properties( + ${PROJECT_NAME} + PROPERTIES + XCODE_ATTRIBUTE_GCC_PREFIX_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/${PCH_NAME}.h" + XCODE_ATTRIBUTE_GCC_PRECOMPILE_PREFIX_HEADER "YES" + ) + endif() +endmacro() diff --git a/cmake_extras/FileSystemSourceGroups.cmake b/cmake_extras/FileSystemSourceGroups.cmake new file mode 100644 index 0000000..d560481 --- /dev/null +++ b/cmake_extras/FileSystemSourceGroups.cmake @@ -0,0 +1,17 @@ + +# Accepts a variable holding the source files +# and creates source groups (for VS, Xcode etc) +# that replicate the folder hierarchy on disk +macro( create_source_groups source_files_variable ) + foreach( source_file ${${source_files_variable}} ) + string( REGEX REPLACE ${CMAKE_CURRENT_SOURCE_DIR} "" relative_directory "${source_file}") + string( REGEX REPLACE "[\\\\/][^\\\\/]*$" "" relative_directory "${relative_directory}") + string( REGEX REPLACE "^[\\\\/]" "" relative_directory "${relative_directory}") + + if( WIN32 ) + string( REGEX REPLACE "/" "\\\\" relative_directory "${relative_directory}" ) + endif( WIN32 ) + + source_group( "${relative_directory}" FILES ${source_file} ) + endforeach() +endmacro() \ No newline at end of file diff --git a/src/FlightCrew-cli/CMakeLists.txt b/src/FlightCrew-cli/CMakeLists.txt new file mode 100644 index 0000000..6b134e0 --- /dev/null +++ b/src/FlightCrew-cli/CMakeLists.txt @@ -0,0 +1,77 @@ +######################################################## +# +# This is a CMake configuration file. +# To use it you need CMake which can be +# downloaded from here: +# http://www.cmake.org/cmake/resources/software.html +# +######################################################### + +cmake_minimum_required( VERSION 2.8 ) + +# We use the lower case name +# on UNIX systems other than Mac OS X +if ( WIN32 OR APPLE ) + project( FlightCrew-cli ) +else() + project( flightcrew-cli ) +endif() + +file( GLOB_RECURSE SOURCES *.cpp *.h ) + +############################################################################# + +# Creating source groups for VS, Xcode +include( ${CMAKE_SOURCE_DIR}/cmake_extras/FileSystemSourceGroups.cmake ) +create_source_groups( SOURCES ) + +############################################################################# + +# We need to pick up the stdafx.h file +# and the headers for the linked-to libraries +include_directories( ${CMAKE_CURRENT_SOURCE_DIR} + ${BoostParts_SOURCE_DIR} + ${FlightCrew_SOURCE_DIR} + ${XercesExtensions_SOURCE_DIR} + ) + +add_executable( ${PROJECT_NAME} ${SOURCES} ) + +target_link_libraries( ${PROJECT_NAME} FlightCrew ) + +############################################################################# + +if( BUILD_SHARED_FC ) + add_definitions( -DFC_BUILT_AS_DLL ) +endif() + +############################################################################# + +# "Link time code generation" flags for MSVC +# TODO: split into special cmake file +if( MSVC ) + add_definitions( /DUNICODE /D_UNICODE /W4 ) + + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:wchar_t-" ) + set( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Oi /GL" ) + set( CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG" ) + +# "Print all warnings" flag for GCC +elseif( CMAKE_COMPILER_IS_GNUCXX ) + add_definitions( -Wall ) +endif() + +set_source_files_properties( main.cpp PROPERTIES COMPILE_DEFINITIONS FLIGHTCREW_FULL_VERSION="${FLIGHTCREW_FULL_VERSION}" ) + +############################################################################# + +# You can change the install location by +# running cmake like this: +# +# cmake -DCMAKE_INSTALL_PREFIX=/new/install/prefix +# +# By default, the prefix is "/usr/local" +# +if( UNIX AND NOT APPLE ) + install( TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin ) +endif() diff --git a/src/FlightCrew-cli/main.cpp b/src/FlightCrew-cli/main.cpp new file mode 100644 index 0000000..bf8fe51 --- /dev/null +++ b/src/FlightCrew-cli/main.cpp @@ -0,0 +1,163 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +namespace fc = FlightCrew; + +// We set the MSVC warning level down to 3 +// for code that we have no control over +#if defined(_MSC_VER) +# pragma warning( push, 3 ) +#endif + +#include +// We're most definitely not going to use +// it as BOOST_FOREACH. +#define foreach BOOST_FOREACH + +#include +namespace po = boost::program_options; + +// ... and then we reset the warning level +// back to normal (warning level 4) +#if defined(_MSC_VER) +# pragma warning( pop ) +#endif + +static const std::string FLIGHTCREW_VERSION = FLIGHTCREW_FULL_VERSION; + +bool ValidateFiles( const std::vector< std::string > &files_to_validate ) +{ + bool seen_problems = false; + + foreach( const std::string &file, files_to_validate ) + { + std::vector< fc::Result > results; + + try + { + results = fc::ValidateEpub( file ); + } + + catch ( fc::FileDoesNotExistEx& ) + { + std::cerr << "File " << file << " does not exist.\n\n"; + continue; + } + + foreach( const fc::Result &result, results ) + { + seen_problems = true; + std::cerr << result.GetFilepath(); + + if ( result.GetErrorLine() > 0 ) + + std::cerr << "(" << result.GetErrorLine() << ")"; + + std::cerr << ": "; + + if ( result.GetResultType() == fc::ResultType_ERROR ) + + std::cerr << "error "; + + else + + std::cerr << "warning "; + + std::cerr << result.GetResultId() << ": "; + std::cerr << result.GetMessage() << "\n"; + } + + if ( !results.empty() ) + + std::cerr << "\n"; + } + + return seen_problems; +} + + +int main( int argc, char *argv[] ) +{ + try + { + po::options_description options( "Allowed options" ); + options.add_options() + ( "help", "produce help message" ) + ( "version", "show the program version") + ( "input-file", po::value< std::vector< std::string > >(), "input file" ); + + po::positional_options_description positionals; + // -1 for count means unlimited + positionals.add( "input-file", -1 ); + + po::variables_map var_map; + store( po::command_line_parser( argc, argv ). + options( options ).positional( positionals ).run(), var_map ); + po::notify( var_map ); + + if ( var_map.count( "help" ) ) + { + std::cout << "Usage: flightcrew-cli [options] file...\n"; + std::cout << options << "\n"; + return 1; + } + + if ( var_map.count( "version" ) ) + { + std::cout << "flightcrew-cli version: " << FLIGHTCREW_VERSION << " " << "\n"; + return 1; + } + + if ( var_map.count( "input-file" ) ) + { + std::vector< std::string > files_to_validate = + var_map[ "input-file" ].as< std::vector< std::string > >(); + + bool problems_found = ValidateFiles( files_to_validate ); + if ( !problems_found ) + + std::cout << "No problems found.\n"; + + return problems_found; + } + + else + { + std::cout << "No input file specified. Use --help for usage information.\n"; + } + } + + catch ( std::exception& exception ) + { + std::cerr << "Error during run: " << exception.what() << "\n"; + return 1; + } + + catch ( ... ) + { + std::cerr << "Unknown exception!\n"; + return 1; + } + + return 0; +} diff --git a/src/FlightCrew-gui/CMakeLists.txt b/src/FlightCrew-gui/CMakeLists.txt new file mode 100644 index 0000000..8d6afaf --- /dev/null +++ b/src/FlightCrew-gui/CMakeLists.txt @@ -0,0 +1,333 @@ +######################################################## +# +# This is a CMake configuration file. +# To use it you need CMake which can be +# downloaded from here: +# http://www.cmake.org/cmake/resources/software.html +# +######################################################### + +cmake_minimum_required( VERSION 2.8 ) + +# We use the lower case name +# on UNIX systems other than Mac OS X +if ( WIN32 OR APPLE ) + project( FlightCrew-gui ) +else() + project( flightcrew-gui ) +endif() + +############################################################################# + +find_package( Qt4 4.6.0 COMPONENTS QtCore QtGui QtMain QtNetwork REQUIRED ) + +include( ${QT_USE_FILE} ) + +############################################################################# + +file( GLOB_RECURSE RAW_SOURCES *.h *.cpp ) + +set( QOBJECT_HEADERS + MainWindow.h + UpdateChecker.h + ) + +set( UI_FILES + Form.ui + ) + +# Runs MOC on specifed files +qt4_wrap_cpp( MOC_FILES_CPP ${QOBJECT_HEADERS} ) + +# Runs UIC on specified files +qt4_wrap_ui( UI_FILES_H ${UI_FILES} ) + +set( ALL_SOURCES ${RAW_SOURCES} ${MOC_FILES_CPP} ${UI_FILES_H} ) + +############################################################################# + +# Apple bundle configuration +if( APPLE ) + # Copy the PLIST file... + exec_program( "cp ${PROJECT_SOURCE_DIR}/resources/mac/MacOSXBundleInfo.plist ${PROJECT_BINARY_DIR}") + + # ...and set the FlightCrew version string + exec_program( "sed -i -e 's/FCVERSION/${FLIGHTCREW_FULL_VERSION}/g' ${PROJECT_BINARY_DIR}/MacOSXBundleInfo.plist") +endif() + +############################################################################# + +# Creating source groups for VS, Xcode +include( ${CMAKE_SOURCE_DIR}/cmake_extras/FileSystemSourceGroups.cmake ) +create_source_groups( RAW_SOURCES ) + +############################################################################# + +# We need to pick up the stdafx.h file +# and the headers for the linked-to libraries +include_directories( ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${BoostParts_SOURCE_DIR} + ${FlightCrew_SOURCE_DIR} + ${XercesExtensions_SOURCE_DIR} + ) + +############################################################################# + +# We make bundles for Mac OS X +if ( APPLE ) + add_executable( ${PROJECT_NAME} MACOSX_BUNDLE ${ALL_SOURCES} ) + set_target_properties( ${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${PROJECT_BINARY_DIR}/MacOSXBundleInfo.plist ) +# ...and a normal executable for everything else. +else() + add_executable( ${PROJECT_NAME} WIN32 ${ALL_SOURCES} ) +endif() + +target_link_libraries( ${PROJECT_NAME} FlightCrew ${QT_LIBRARIES} ) + +############################################################################# + +if( BUILD_SHARED_FC ) + add_definitions( -DFC_BUILT_AS_DLL ) +endif() + +############################################################################# + +# "Link time code generation" flags for MSVC +# TODO: split into special cmake file +if( MSVC ) + # We'd love to use /W4 here, but there's just so much + # noise coming from Qt it's absurd + add_definitions( /DUNICODE /D_UNICODE ) + + set_source_files_properties( MainWindow.cpp PROPERTIES COMPILE_DEFINITIONS /W4 ) + set_source_files_properties( main.cpp PROPERTIES COMPILE_DEFINITIONS /W4 ) + + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:wchar_t-" ) + set( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Oi /GL" ) + set( CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG" ) + +# "Print all warnings" flag for GCC +elseif( CMAKE_COMPILER_IS_GNUCXX ) + add_definitions( -Wall ) +endif() + +set_source_files_properties( MainWindow.cpp PROPERTIES COMPILE_DEFINITIONS FLIGHTCREW_FULL_VERSION="${FLIGHTCREW_FULL_VERSION}" ) +set_source_files_properties( UpdateChecker.cpp PROPERTIES COMPILE_DEFINITIONS FLIGHTCREW_FULL_VERSION="${FLIGHTCREW_FULL_VERSION}" ) + +############################################################################# + +# For Mac, add frameworks and make a DMG +if( APPLE ) + if(CMAKE_GENERATOR STREQUAL Xcode) + set( WORK_DIR "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Release" ) + else() + set( WORK_DIR "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" ) + endif() + + add_custom_target( addframeworks ALL + COMMAND ${QT_BINARY_DIR}/macdeployqt FlightCrew-gui.app + WORKING_DIRECTORY ${WORK_DIR} + DEPENDS ${PROJECT_NAME} ) + + add_custom_target( makedmg + COMMAND ${QT_BINARY_DIR}/macdeployqt FlightCrew-gui.app -dmg -no-plugins + WORKING_DIRECTORY ${WORK_DIR} + DEPENDS addframeworks ) + +# For Linux and Windows, provide binary installers. +# For this to work on Linux, InstallJammer needs to be installed and on the system path. +# For this to work on Windows, Inno Setup's iscc compiler needs to be installed and on the system path. +else() + set( TEMP_PACKAGE_DIR ${CMAKE_BINARY_DIR}/temp_folder ) + set( MAIN_PACKAGE_DIR ${TEMP_PACKAGE_DIR}/FlightCrew ) + set( OUTPUT_PACKAGE_DIR ${CMAKE_BINARY_DIR}/installer ) + + # MPI (InstallJammer) file will need to be copied to this location + set( MPI_LOCATION ${CMAKE_BINARY_DIR}/temp_folder/FlightCrew.mpi ) + + # ISS conf file for the Inno Setup compiler + # We first create a CMake configured version of the ISS file, + # and then we copy it to the temp folder every time we need to build the installer. + set( ISS_MAIN_LOCATION ${CMAKE_SOURCE_DIR}/installer/FlightCrew.iss ) + Set( ISS_OC_LOCATION ${CMAKE_SOURCE_DIR}/OpenCandy/FlightCrewOC.iss ) + set( ISS_CONFIGURED_LOCATION ${CMAKE_BINARY_DIR}/FlightCrew_configured.iss ) + set( ISS_TEMP_LOCATION ${CMAKE_BINARY_DIR}/temp_folder/FlightCrew_configured.iss ) + + if ( 64_BIT_PLATFORM ) + # Used in the ISS CMake configuration + set( ISS_ARCH "x64" ) + set( ISS_SETUP_FILENAME_PLATFORM "-x64" ) + endif() + + # This is used to build OpenCandy installers. You can't build them + # from the source repo and you shouldn't want to either. By default, + # vanilla installers are built. You want the vanillas. + if ( EXISTS ${ISS_OC_LOCATION} ) + set( OC_INSTALLERS TRUE ) + endif() + + # Creates a copy of the ISS file in ${ISS_CONFIGURED_LOCATION} and then configures it + if ( OC_INSTALLERS ) + set( LICENSE_LOCATION ${CMAKE_SOURCE_DIR}/OpenCandy/win_installer_note.txt ) + configure_file( ${ISS_OC_LOCATION} ${ISS_CONFIGURED_LOCATION} ) + else() + set( LICENSE_LOCATION ${CMAKE_SOURCE_DIR}/installer/win_installer_note.txt ) + configure_file( ${ISS_MAIN_LOCATION} ${ISS_CONFIGURED_LOCATION} ) + endif() + + # Specify platform var for installjammer + if ( WIN32 ) + set( PLATFORM "Windows" ) + else() + if ( 64_BIT_PLATFORM ) + set( PLATFORM "Linux-x86_64" ) + else() + set( PLATFORM "Linux-x86" ) + endif() + endif() + + # We use Inno for the Windows installers and InstallJammer for the Linux ones + if ( WIN32 ) + # Run Inno Setup's iscc compiler (*AFTER* all the PRE_BUILD custom commands execute) + add_custom_target( makeinstaller + COMMAND cmake -E echo "For this to work, Inno Setup's iscc compiler needs to be installed and on the system path." + COMMAND iscc ${ISS_TEMP_LOCATION} ) + else() + # Run InstallJammer (*AFTER* all the PRE_BUILD custom commands execute) + add_custom_target( makeinstaller + COMMAND cmake -E echo "For this to work, InstallJammer needs to be installed and on the system path." + COMMAND installjammer -DBaseDir ${MAIN_PACKAGE_DIR} + -DFCMajorVersion ${FLIGHTCREW_MAJOR_VERSION} + -DFCMinorVersion ${FLIGHTCREW_MINOR_VERSION} + -DFCRevisionVersion ${FLIGHTCREW_REVISION_VERSION} + --platform ${PLATFORM} + --output-dir ${OUTPUT_PACKAGE_DIR} + --build-for-release + --verbose + --build ${MPI_LOCATION} ) + endif() + + # We need to copy the files that will be used to make the installer to + # a temporary directory. On the MSVC compiler the PRE_BUILD custom commands + # can be added directly, but on other generators we need an intermediate target + # since the PRE_BUILD condition is not supported. Using the intermediate for + # MSVC makes it unnecessarily recompile that target every time the project is built. + # So we use the direct way on MSVC, and the intemediate way for other generators. + if( MSVC_IDE ) + set( TARGET_FOR_COPY makeinstaller ) + add_dependencies( makeinstaller ${PROJECT_NAME} ) + else() + set( TARGET_FOR_COPY copyfiles ) + + # The intermediate target for copying + add_custom_target( copyfiles + COMMENT "Copying installer files to temporary location..." + DEPENDS ${PROJECT_NAME} ) + + add_dependencies( makeinstaller copyfiles ) + endif() + + if ( WIN32 OR APPLE ) + set( FC_CLI_NAME FlightCrew-cli ) + else() + set( FC_CLI_NAME flightcrew-cli ) + endif() + + # We want to include the CLI in the installer, so it has to be built + add_dependencies( makeinstaller ${FC_CLI_NAME} ) + + # Copy MPI file to temp folder location + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${CMAKE_SOURCE_DIR}/installer/FlightCrew.mpi ${MPI_LOCATION} ) + + # Copy ISS file to temp folder location + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${ISS_CONFIGURED_LOCATION} ${ISS_TEMP_LOCATION} ) + + # Copy Qt runtime libs + set( QT_LIBS QtCore QtGui QtNetwork ) + + if( UNIX ) + # DBus is needed on Linux + list( APPEND QT_LIBS QtDBus ) + endif() + + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD COMMAND cmake -E make_directory ${MAIN_PACKAGE_DIR}/ ) + foreach( lib ${QT_LIBS} ) + set( location location-NOTFOUND ) + find_file( location ${lib} NAMES ${lib}4.dll lib${lib}.so.4 PATHS ${QT_LIBRARY_DIR} ) + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD COMMAND cmake -E copy ${location} ${MAIN_PACKAGE_DIR}/ ) + endforeach( lib ) + + # Set the path of the application executable + if( MSVC_IDE ) + set( EXE_PATH ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Release/${PROJECT_NAME}${CMAKE_EXECUTABLE_SUFFIX} ) + set( CLI_EXE_PATH ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Release/${FC_CLI_NAME}${CMAKE_EXECUTABLE_SUFFIX} ) + else() + set( EXE_PATH ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${PROJECT_NAME}${CMAKE_EXECUTABLE_SUFFIX} ) + set( CLI_EXE_PATH ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${FC_CLI_NAME}${CMAKE_EXECUTABLE_SUFFIX} ) + endif() + + # Copy the application executable + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${EXE_PATH} ${MAIN_PACKAGE_DIR} ) + + # Copy the CLI application executable + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${CLI_EXE_PATH} ${MAIN_PACKAGE_DIR} ) + + # We need to copy the CRT dlls + if ( WIN32 ) + # Add -DWIN_INSTALLER_USE_64BIT_CRT=1 to the cmake call if you want to build + # an installer for the x64 verison of Sigil. This will make sure that the + # correct CRT libs are included in the installer. + if ( WIN_INSTALLER_USE_64BIT_CRT ) + message( STATUS "Using the 64 bit CRT in the FlightCrew Windows installer" ) + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${CMAKE_SOURCE_DIR}/installer/msvc_crt/x64/msvcp100.dll ${MAIN_PACKAGE_DIR} ) + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${CMAKE_SOURCE_DIR}/installer/msvc_crt/x64/msvcr100.dll ${MAIN_PACKAGE_DIR} ) + else() + message( STATUS "Using the 32 bit CRT in the FlightCrew Windows installer" ) + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${CMAKE_SOURCE_DIR}/installer/msvc_crt/x86/msvcp100.dll ${MAIN_PACKAGE_DIR} ) + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${CMAKE_SOURCE_DIR}/installer/msvc_crt/x86/msvcr100.dll ${MAIN_PACKAGE_DIR} ) + endif() + endif() + + if( UNIX ) + # Copy the Unix launcher that adds the working directory to the LD_LIBRARY_PATH + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${PROJECT_SOURCE_DIR}/resources/bash/flightcrew-gui.sh ${MAIN_PACKAGE_DIR} ) + endif() + + # Copy the Changelog + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${CMAKE_SOURCE_DIR}/ChangeLog.txt ${MAIN_PACKAGE_DIR} ) + + # Copy the license files + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${CMAKE_SOURCE_DIR}/COPYING.txt ${MAIN_PACKAGE_DIR} ) + add_custom_command( TARGET ${TARGET_FOR_COPY} PRE_BUILD + COMMAND cmake -E copy ${CMAKE_SOURCE_DIR}/COPYING.LESSER.txt ${MAIN_PACKAGE_DIR} ) + + # Remove the temp directory used for building the installer + add_custom_command( TARGET makeinstaller POST_BUILD + COMMAND cmake -E remove_directory ${TEMP_PACKAGE_DIR} + COMMENT "Removing temporary directory..." ) +endif() + +############################################################################# + +# You can change the install location by +# running cmake like this: +# +# cmake -DCMAKE_INSTALL_PREFIX=/new/install/prefix +# +# By default, the prefix is "/usr/local" +# +if( UNIX AND NOT APPLE ) + install( TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin ) +endif() diff --git a/src/FlightCrew-gui/Form.ui b/src/FlightCrew-gui/Form.ui new file mode 100644 index 0000000..79c05f0 --- /dev/null +++ b/src/FlightCrew-gui/Form.ui @@ -0,0 +1,145 @@ + + + MainWindow + + + + 0 + 0 + 792 + 395 + + + + FlightCrew-gui + + + + + + + + + true + + + 10 + + + QComboBox::InsertAtTop + + + + + + + + 0 + 0 + + + + Browse... + + + + + + + + + QAbstractItemView::NoEditTriggers + + + false + + + false + + + false + + + true + + + false + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + 120 + 50 + + + + + 16 + + + + Go! + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + 0 + 0 + 792 + 21 + + + + + &File + + + + + + + + &Exit + + + + + + diff --git a/src/FlightCrew-gui/MainWindow.cpp b/src/FlightCrew-gui/MainWindow.cpp new file mode 100644 index 0000000..19de50f --- /dev/null +++ b/src/FlightCrew-gui/MainWindow.cpp @@ -0,0 +1,302 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "MainWindow.h" +#include +namespace fc = FlightCrew; + +static const QString SETTINGS_GROUP = "mainwindow"; +static const QBrush WARNING_BRUSH = QBrush( QColor( 255, 255, 230 ) ); +static const QBrush ERROR_BRUSH = QBrush( QColor( 255, 230, 230 ) ); +static const QString FLIGHTCREW_VERSION = QString( FLIGHTCREW_FULL_VERSION ); + +MainWindow::MainWindow( QWidget*, Qt::WFlags ) +{ + ui.setupUi( this ); + + // We want to have the version showing in the window title. + setWindowTitle( "FlightCrew - " + FLIGHTCREW_VERSION ); + + // Telling Qt to delete this window + // from memory when it is closed + setAttribute( Qt::WA_DeleteOnClose ); + setAcceptDrops( true ); + + // Needs to come before signals connect + // (avoiding side-effects) + ReadSettings(); + ConnectSignalsToSlots(); +} + + +MainWindow::~MainWindow() +{ + WriteSettings(); +} + + +void MainWindow::dragEnterEvent( QDragEnterEvent *event ) +{ + if ( event->mimeData()->hasFormat( "text/uri-list" ) ) + + event->acceptProposedAction(); +} + + +void MainWindow::dropEvent( QDropEvent *event ) +{ + if ( !event->mimeData()->hasUrls() ) + + return; + + event->acceptProposedAction(); + + QList< QUrl > urls = event->mimeData()->urls(); + + if ( urls.empty() ) + + return; + + AddFilenameToComboBox( urls[ 0 ].toLocalFile() ); + StartValidation(); +} + + +void MainWindow::StartValidation() +{ + QString current_file = ui.FilepathsCombo->currentText(); + + if ( QFileInfo( current_file ).suffix().toLower() != "epub" ) + { + QMessageBox::critical( this, + tr( "FlightCrew-gui" ), + tr( "The specified file does not appear to be an epub." ) + ); + return; + } + + if ( !QFileInfo( current_file ).exists() ) + { + QMessageBox::critical( this, + tr( "FlightCrew-gui" ), + tr( "The specified file does not exist." ) + ); + return; + } + + ui.ResultTable->clearContents(); + std::vector< fc::Result > results; + + QApplication::setOverrideCursor( Qt::WaitCursor ); + + try + { + results = fc::ValidateEpub( current_file.toUtf8().constData() ); + } + + catch ( std::exception& exception ) + { + // TODO: extract boost exception info + QMessageBox::critical( this, + tr( "FlightCrew-gui" ), + tr( "An exception occurred: %1." ) + .arg( QString::fromStdString( exception.what() ) ) + ); + return; + } + + QApplication::restoreOverrideCursor(); + + DisplayResults( results ); +} + + +void MainWindow::BrowseForEpub() +{ + QString filename = QFileDialog::getOpenFileName( this, + tr( "Open File" ), + m_LastFolderOpen, + tr( "Epub files (*.epub)" ) + ); + + if ( !filename.isEmpty() ) + { + // Store the folder the user opened from + m_LastFolderOpen = QFileInfo( filename ).absolutePath(); + + AddFilenameToComboBox( filename ); + } +} + + +void MainWindow::DisplayResults( const std::vector< fc::Result > &results ) +{ + ui.ResultTable->clear(); + + if ( results.empty() ) + { + DisplayNoProblemsMessage(); + return; + } + + ConfigureTableForResults(); + + for ( unsigned int i = 0; i < results.size(); ++i ) + { + fc::Result result = results[ i ]; + + ui.ResultTable->insertRow( ui.ResultTable->rowCount() ); + + QBrush row_brush = result.GetResultType() == fc::ResultType_WARNING ? + WARNING_BRUSH : + ERROR_BRUSH; + + QTableWidgetItem *item = NULL; + item = new QTableWidgetItem( QString::fromUtf8( result.GetFilepath().c_str() ) ); + item->setBackground( row_brush ); + ui.ResultTable->setItem( i, 0, item ); + + item = result.GetErrorLine() > 0 ? + new QTableWidgetItem( QString::number( result.GetErrorLine() ) ) : + new QTableWidgetItem( tr( "N/A" ) ); + + item->setBackground( row_brush ); + ui.ResultTable->setItem( i, 1, item ); + + item = new QTableWidgetItem( QString::fromUtf8( result.GetMessage().c_str() ) ); + item->setBackground( row_brush ); + ui.ResultTable->setItem( i, 2, item ); + } + + // We first force the line number column + // to the smallest needed size... + ui.ResultTable->resizeColumnToContents( 0 ); + + // ... and now the file column can be widened. + ui.ResultTable->resizeColumnToContents( 1 ); +} + + +void MainWindow::DisplayNoProblemsMessage() +{ + ui.ResultTable->setRowCount( 1 ); + ui.ResultTable->setColumnCount( 1 ); + ui.ResultTable->setHorizontalHeaderLabels( + QStringList() << tr( "Message" ) ); + + QTableWidgetItem *item = new QTableWidgetItem( tr( "No problems found!" ) ); + item->setTextAlignment( Qt::AlignHCenter | Qt::AlignVCenter ); + + QFont font = item->font(); + font.setPointSize( 16 ); + item->setFont( font ); + + ui.ResultTable->setItem( 0, 0, item ); + ui.ResultTable->resizeRowToContents( 0 ); +} + + +void MainWindow::AddFilenameToComboBox( const QString &filename ) +{ + int index = ui.FilepathsCombo->findText( filename ); + + if ( index == -1 ) + { + ui.FilepathsCombo->insertItem( 0, filename ); + ui.FilepathsCombo->setCurrentIndex( 0 ); + } + + else + { + ui.FilepathsCombo->setCurrentIndex( index ); + } +} + + +void MainWindow::ReadSettings() +{ + QSettings settings; + settings.beginGroup( SETTINGS_GROUP ); + + // The size of the window and it's full screen status + QByteArray geometry = settings.value( "geometry" ).toByteArray(); + + if ( !geometry.isNull() ) + + restoreGeometry( geometry ); + + ui.FilepathsCombo->addItems( settings.value( "path_strings" ).toStringList() ); + m_LastFolderOpen = settings.value( "lastfolderopen" ).toString(); + + ui.FilepathsCombo->setCurrentIndex( settings.value( "lastusedcomboindex" ).toInt() ); +} + + +void MainWindow::WriteSettings() +{ + QSettings settings; + settings.beginGroup( SETTINGS_GROUP ); + + // The size of the window and it's full screen status + settings.setValue( "geometry", saveGeometry() ); + + QStringList path_strings; + + for ( int i = 0; i < ui.FilepathsCombo->count(); ++i ) + { + path_strings.append( ui.FilepathsCombo->itemText( i ) ); + } + + settings.setValue( "path_strings", path_strings ); + settings.setValue( "lastusedcomboindex", ui.FilepathsCombo->currentIndex() ); + settings.setValue( "lastfolderopen", m_LastFolderOpen ); +} + + +void MainWindow::ConfigureTableForResults() +{ + ui.ResultTable->setRowCount( 0 ); + ui.ResultTable->setColumnCount( 3 ); + ui.ResultTable->setHorizontalHeaderLabels( + QStringList() << tr( "File" ) << tr( "Line" ) << tr( "Message" ) ); + ui.ResultTable->verticalHeader()->setResizeMode( QHeaderView::ResizeToContents ); +} + + +void MainWindow::ConnectSignalsToSlots() +{ + connect( ui.actionExit, SIGNAL( triggered() ), qApp, SLOT( closeAllWindows() ) ); + connect( ui.GoButton, SIGNAL( clicked() ), this, SLOT( StartValidation() ) ); + connect( ui.BrowseButton, SIGNAL( clicked() ), this, SLOT( BrowseForEpub() ) ); +} + + + diff --git a/src/FlightCrew-gui/MainWindow.h b/src/FlightCrew-gui/MainWindow.h new file mode 100644 index 0000000..65fb316 --- /dev/null +++ b/src/FlightCrew-gui/MainWindow.h @@ -0,0 +1,158 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef MAINWINDOW_H +#define MAINWINDOW_H + +// We set the MSVC warning level down to 3 +// for code that we have no control over +#if defined(_MSC_VER) +# pragma warning( push, 3 ) +#endif + +#include +#include "ui_Form.h" + +// ... and then we reset the warning level +// back to normal (warning level 4) +#if defined(_MSC_VER) +# pragma warning( pop ) +#endif + +#include +#include +namespace fc = FlightCrew; + +class MainWindow : public QMainWindow +{ + Q_OBJECT + +public: + + /** + * Constructor. + * + * @param parent The window's parent object. + * @param flags The flags used to modify window behavior. + */ + MainWindow( QWidget *parent = 0, Qt::WFlags flags = 0 ); + + /** + * Destructor. + */ + ~MainWindow(); + +protected: + + /** + * Handles drag events. In our case, this func only + * allows file drags. + * @note Overridden from QMainWindow. + * + * @param event The drag event. + */ + void dragEnterEvent( QDragEnterEvent *event ); + + /** + * Handles drop events. In our case, file drop events. + * The file is then validated. + * @note Overridden from QMainWindow. + * + * @param event The drop event. + */ + void dropEvent( QDropEvent *event ); + +private slots: + + /** + * Validates the epub file listed in the combo box. + */ + void StartValidation(); + + /** + * Opens a file browsing dialog so that the user + * can select a file to validate. + */ + void BrowseForEpub(); + +private: + + /** + * Displays the validation results in the table. + * + * @param results The validation results we got from FlightCrew. + */ + void DisplayResults( const std::vector< fc::Result > &results ); + + /** + * Informs the user that no problems were found. + */ + void DisplayNoProblemsMessage(); + + /** + * Adds a filename to the combo box and makes in the + * currently selected item. + * + * @param filename The file to add to the combo. + */ + void AddFilenameToComboBox( const QString &filename ); + + /** + * Reads all the stored application settings like + * window position, geometry etc. + */ + void ReadSettings(); + + /** + * Writes all the stored application settings like + * window position, geometry etc. + */ + void WriteSettings(); + + /** + * Confirgures the table for presenting validation results. + */ + void ConfigureTableForResults(); + + /** + * Connects all the required signals to their slots. + */ + void ConnectSignalsToSlots(); + + + /////////////////////////////// + // PRIVATE MEMBER VARIABLES + /////////////////////////////// + + + /** + * The last folder from which the user opened a file. + */ + QString m_LastFolderOpen; + + /** + * Holds all the widgets Qt Designer created for us. + */ + Ui::MainWindow ui; +}; + +#endif // MAINWINDOW_H \ No newline at end of file diff --git a/src/FlightCrew-gui/UpdateChecker.cpp b/src/FlightCrew-gui/UpdateChecker.cpp new file mode 100644 index 0000000..65f4b4b --- /dev/null +++ b/src/FlightCrew-gui/UpdateChecker.cpp @@ -0,0 +1,187 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "UpdateChecker.h" + +static const QString DOWNLOAD_PAGE_LOCATION = "http://code.google.com/p/flightcrew/downloads/list"; +static const QString UPDATE_XML_LOCATION = "http://flightcrew.googlecode.com/git/version.xml"; +static const QString XML_VERSION_ELEMENT = "current-version"; +static const QString LAST_ONLINE_VERSION_KEY = "last_online_version"; +static const QString LAST_CHECK_TIME_KEY = "last_check_time"; +static const QString SETTINGS_GROUP = "updatechecker"; +static const QString VERSION_NUMBERS = "(\\d+)\\.(\\d+)\\.(\\d+)"; +static const QString FLIGHTCREW_VERSION = QString( FLIGHTCREW_FULL_VERSION ); + +// Delta is six hours +static const int SECONDS_BETWEEN_CHECKS = 60 * 60 * 6 ; + + +UpdateChecker::UpdateChecker( QObject *parent ) + : + QObject( parent ), + m_NetworkManager( new QNetworkAccessManager( this ) ) +{ + connect( m_NetworkManager, SIGNAL( finished( QNetworkReply* ) ), + this, SLOT( ReplyRecieved( QNetworkReply* ) ) + ); +} + + +void UpdateChecker::CheckForUpdate() +{ + QSettings settings; + settings.beginGroup( SETTINGS_GROUP ); + + // The default time is one always longer than the check interval + QDateTime default_time = QDateTime::currentDateTime().addSecs( - SECONDS_BETWEEN_CHECKS - 1 ); + QDateTime last_check_time = settings.value( LAST_CHECK_TIME_KEY, default_time ).toDateTime(); + + // We want to check for a new version + // no sooner than every six hours + if ( last_check_time.secsTo( QDateTime::currentDateTime() ) > SECONDS_BETWEEN_CHECKS ) + { + settings.setValue( LAST_CHECK_TIME_KEY, QDateTime::currentDateTime() ); + + m_NetworkManager->get( QNetworkRequest( QUrl( UPDATE_XML_LOCATION ) ) ); + } +} + + +void UpdateChecker::ReplyRecieved( QNetworkReply* reply ) +{ + QSettings settings; + settings.beginGroup( SETTINGS_GROUP ); + + QString last_online_version = settings.value( LAST_ONLINE_VERSION_KEY, QString() ).toString(); + QString current_online_version = ReadOnlineVersion( TextInReply( reply ) ); + + bool is_newer = IsOnlineVersionNewer( FLIGHTCREW_VERSION, current_online_version ); + + // The message box is displayed only if the online version is newer + // and only if the user hasn't been informed about this release before + if ( is_newer && ( current_online_version != last_online_version ) ) + { + QMessageBox::StandardButton button_clicked; + + button_clicked = QMessageBox::question( 0, + QObject::tr( "FlightCrew" ), + QObject::tr( "

A newer version of FlightCrew is available, version %1.
" + "The ChangeLog can be seen here.

" + "

Would you like to go to the download page?

" ) + .arg( current_online_version ), + QMessageBox::Yes | QMessageBox::No, + QMessageBox::Yes ); + + if ( button_clicked == QMessageBox::Yes ) + { + QDesktopServices::openUrl( QUrl( DOWNLOAD_PAGE_LOCATION ) ); + } + } + + // Store the current online version as the last one checked + settings.setValue( LAST_ONLINE_VERSION_KEY, current_online_version ); + + // Schedule this object for deletion. + // There is no point for its existence + // after it has received and processed the net reply. + deleteLater(); +} + + +QString UpdateChecker::TextInReply( QNetworkReply* reply ) const +{ + if ( !reply->open( QIODevice::ReadOnly | QIODevice::Text ) ) + { + return ""; + } + + QTextStream in( reply ); + + // Input should be UTF-8 + in.setCodec( "UTF-8" ); + + // This will automatically switch reading from + // UTF-8 to UTF-16 if a BOM is detected + in.setAutoDetectUnicode( true ); + + return in.readAll(); +} + + +QString UpdateChecker::ReadOnlineVersion( const QString &online_version_xml ) const +{ + if ( online_version_xml.isEmpty() ) + + return QString(); + + QXmlStreamReader version_reader( online_version_xml ); + + while ( !version_reader.atEnd() ) + { + // Get the next token from the stream + if ( ( version_reader.readNext() == QXmlStreamReader::StartElement ) && + ( version_reader.name() == XML_VERSION_ELEMENT ) + ) + { + return version_reader.readElementText(); + } + } + + return QString(); +} + + +bool UpdateChecker::IsOnlineVersionNewer( const QString ¤t_version_string, + const QString &online_version_string ) const +{ + if ( current_version_string.isEmpty() || online_version_string.isEmpty() ) + + return false; + + QRegExp current_version_numbers( VERSION_NUMBERS ); + QString( current_version_string ).indexOf( current_version_numbers ); + + QRegExp online_version_numbers( VERSION_NUMBERS ); + QString( online_version_string ).indexOf( online_version_numbers ); + + // This code assumes three digits per field, + // which should be way more than enough + int current_version = current_version_numbers.cap( 1 ).toInt() * 1000000 + + current_version_numbers.cap( 2 ).toInt() * 1000 + + current_version_numbers.cap( 3 ).toInt(); + + int online_version = online_version_numbers.cap( 1 ).toInt() * 1000000 + + online_version_numbers.cap( 2 ).toInt() * 1000 + + online_version_numbers.cap( 3 ).toInt(); + + return online_version > current_version; +} + diff --git a/src/FlightCrew-gui/UpdateChecker.h b/src/FlightCrew-gui/UpdateChecker.h new file mode 100644 index 0000000..ad610f1 --- /dev/null +++ b/src/FlightCrew-gui/UpdateChecker.h @@ -0,0 +1,118 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef UPDATECHECKER_H +#define UPDATECHECKER_H + +#include + +class QNetworkAccessManager; +class QNetworkReply; + +/** + * Responsible for checking the current online version of + * FlightCrew against the running one. If a newer version + * exists, then a dialog is displayed informing the user + * about it. + * + * Objects of this class should ALWAYS be created on the heap + * and never explicitly deleted. The reason is that these objects + * receive replies asynchronously from the web and need to persist. + * Upon receiving and processing the network reply, the object + * schedules its own deletion. + */ +class UpdateChecker : QObject +{ + Q_OBJECT + +public: + + /** + * Constructor. + * + * @param parent The object's parent. + */ + UpdateChecker( QObject *parent ); + + /** + * Sends a request for the online version + * if the last check was performed + * a SECONDS_BETWEEN_CHECKS amount of time ago. + */ + void CheckForUpdate(); + +private slots: + + /** + * Gets called when the request posted by CheckForUpdate() + * gets a reply from the server. + * + * @param reply The network reply. + */ + void ReplyRecieved( QNetworkReply* reply ); + +private: + + /** + * Extracts the full text present in the network reply. + * + * @param reply The reply from which text should be extracted. + * @return The full text content. + */ + QString TextInReply( QNetworkReply* reply ) const; + + /** + * Returns the version string present + * in the specified XML file, or an empty QString + * if the required element is not present. + * + * @param online_version_xml The xml content from the reply. + * @return The version string. + */ + QString ReadOnlineVersion( const QString &online_version_xml ) const; + + /** + * Compares the two provided version strings. + * + * @param current_version_string The version of the running program. + * @param online_version_string The newest version. + * @return \c true if the online string specifies + * that the online version is newer. + */ + bool IsOnlineVersionNewer( const QString ¤t_version_string, + const QString &online_version_string ) const; + + + /////////////////////////////// + // PRIVATE MEMBER VARIABLES + /////////////////////////////// + + /** + * The network manager used to post + * network requests and receive replies. + */ + QNetworkAccessManager *m_NetworkManager; + +}; + +#endif // UPDATECHECKER_H + diff --git a/src/FlightCrew-gui/main.cpp b/src/FlightCrew-gui/main.cpp new file mode 100644 index 0000000..4ce3ec5 --- /dev/null +++ b/src/FlightCrew-gui/main.cpp @@ -0,0 +1,67 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +// We set the MSVC warning level down to 3 +// for code that we have no control over +#if defined(_MSC_VER) +# pragma warning( push, 3 ) +#endif + +#include +#include + +// Needs to go here because of Qt includes for some reason +#include "MainWindow.h" +#include "UpdateChecker.h" + +// ... and then we reset the warning level +// back to normal (warning level 4) +#if defined(_MSC_VER) +# pragma warning( pop ) +#endif + + +// Application entry point +int main( int argc, char *argv[] ) +{ + QT_REQUIRE_VERSION( argc, argv, "4.6.0" ); + + QApplication app( argc, argv ); + + // Set application information for + // easier use of QSettings classes + QCoreApplication::setOrganizationName( "Strahinja Markovic" ); + QCoreApplication::setApplicationName( "FlightCrew-gui" ); + + // Needs to be created on the heap so that + // the reply has time to return. + UpdateChecker *checker = new UpdateChecker( &app ); + checker->CheckForUpdate(); + + MainWindow *widget = new MainWindow(); + widget->show(); + return app.exec(); +} + + + + + diff --git a/src/FlightCrew-gui/resources/bash/flightcrew-gui.sh b/src/FlightCrew-gui/resources/bash/flightcrew-gui.sh new file mode 100644 index 0000000..759d40c --- /dev/null +++ b/src/FlightCrew-gui/resources/bash/flightcrew-gui.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +# Entry point for FlightCrew-gui on Unix systems. +# Adds the directory the FlightCrew-gui executable is located +# in to the LD_LIBRARY_PATH so the custom Qt libs +# are recognized and loaded. + +appname=`basename $0 | sed s,\.sh$,,` + +dirname=`dirname $0` +tmp="${dirname#?}" + +if [ "${dirname%$tmp}" != "/" ]; then +dirname=$PWD/$dirname +fi +LD_LIBRARY_PATH=$dirname +export LD_LIBRARY_PATH +#if no agruments are passed then call just FlightCrew-gui program; else pass arguments. +if [$* == ""] +then +$dirname/$appname +else +#argument may not be pass correctly without qoutation marks. +$dirname/$appname "$*" +fi diff --git a/src/FlightCrew-gui/resources/mac/MacOSXBundleInfo.plist b/src/FlightCrew-gui/resources/mac/MacOSXBundleInfo.plist new file mode 100644 index 0000000..2a40ec6 --- /dev/null +++ b/src/FlightCrew-gui/resources/mac/MacOSXBundleInfo.plist @@ -0,0 +1,30 @@ + + + + + CFBundleVersion + FCVERSION + NSHumanReadableCopyright + Copyright © Strahinja Markovic 2010, GNU LGPL v3, CC 3.0 BY-SA + CFBundleShortVersionString + FCVERSION + CFBundleGetInfoString + FCVERSION FlightCrew Open Source ePub Validator. See http://code.google.com/p/flightcrew/ + CFBundleIdentifier + com.valloric.Sigil.app + CFBundleDevelopmentRegion + English + CFBundleExecutable + FlightCrew-gui + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + FlightCrew-gui + CFBundlePackageType + APPL + CFBundleSignature + Fcva + CSResourcesFileMapped + + + diff --git a/src/FlightCrew/CMakeLists.txt b/src/FlightCrew/CMakeLists.txt new file mode 100644 index 0000000..77538e7 --- /dev/null +++ b/src/FlightCrew/CMakeLists.txt @@ -0,0 +1,130 @@ +######################################################## +# +# This is a CMake configuration file. +# To use it you need CMake which can be +# downloaded from here: +# http://www.cmake.org/cmake/resources/software.html +# +######################################################### + +cmake_minimum_required( VERSION 2.8 ) + +# Print a message and fail for people who don't +# read the build instructions and then complain +# when the build process fails for them. +if ( ${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_SOURCE_DIR} ) + message( FATAL_ERROR "You are trying to run CMake from the /src/FlightCrew directory, " + "instead of just from the directory.\nDO NOT DO THIS.\n" + "The correct way looks like this:\n" + " cmake -G '' /path/to/topmost/folder/in/source/package\n" + "You will probably now need to first clean your build directory." ) +endif() + +############################################################################# + +project( FlightCrew ) + +file( GLOB_RECURSE SOURCES *.h *.cpp *.xsd *.dtd ) + +# The test sources are a part of a different target, so we remove them +file( GLOB_RECURSE to_remove tests/*.h tests/*.cpp ) +if( to_remove ) + list( REMOVE_ITEM SOURCES ${to_remove} ) +endif() + +############################################################################# + +# Creating source groups for VS, Xcode +include( ${CMAKE_SOURCE_DIR}/cmake_extras/FileSystemSourceGroups.cmake ) +create_source_groups( SOURCES ) + +############################################################################# + +set( PCH_NAME stdafx ) + +# stdafx.cpp is compiled separately as a PCH +file( GLOB to_remove ${PCH_NAME}.cpp ) +list( REMOVE_ITEM SOURCES ${to_remove} ) + +############################################################################# + +# creating PCH's for MSVC and GCC on Linux +include( ${CMAKE_SOURCE_DIR}/cmake_extras/CustomPCH.cmake ) +set( ALL_INCLUDES ${BoostParts_SOURCE_DIR} + ${Xerces_SOURCE_DIR} + ${zipios_SOURCE_DIR} ) +set( GCC_PCH_TARGET gccPCH_fc ) + +precompiled_header( SOURCES ALL_INCLUDES ${GCC_PCH_TARGET} ${PCH_NAME} ) + +############################################################################# + +# We need to pick up the stdafx.h file (current source dir), +# the stdafx.h.gch file (current binary dir) +# and the headers for the linked-to libraries +include_directories( ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ../zipios + ../BoostParts + ../Xerces + ../XercesExtensions + ../utf8-cpp + ) + +link_directories ( ${PROJECT_BINARY_DIR}/lib ) + +if( BUILD_SHARED_FC ) + # Windows clients also need to specify FC_BUILT_AS_DLL + # when they want a dll, but NOT FC_DLL_EXPORTING + add_definitions( -DFC_DLL_EXPORTING -DFC_BUILT_AS_DLL ) + add_library( ${PROJECT_NAME} SHARED ${SOURCES} ) +else() + add_library( ${PROJECT_NAME} ${SOURCES} ) +endif() + +target_link_libraries( ${PROJECT_NAME} zipios BoostParts XercesExtensions ) + +############################################################################# + +# Xcode PCH support. Has to come after the target is created. +xcode_pch( ${PCH_NAME} ) + +############################################################################# + +# "Link time code generation" flags for MSVC +# TODO: split into special cmake file +if( MSVC ) + add_definitions( /DUNICODE /D_UNICODE /W4 ) + + # This warning is present only at the highest warning level (/W4) + # and is routinely disabled because it complains about valid + # constructs like "while (true)" + add_definitions( /wd4127 ) + + # The /Zc:wchar_t- flag can't go into add_definitions + # because the RC compiler picks it up too and it provokes a name clash + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:wchar_t-") + set( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Oi /GL" ) + set( CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG" ) + +elseif( CMAKE_COMPILER_IS_GNUCXX ) + # "Print all warnings" flag for GCC + add_definitions( -Wall ) + + # Make sure the PCH is built for GCC + add_dependencies( ${PROJECT_NAME} ${GCC_PCH_TARGET} ) +endif() + +# needed for correct Xerces header inclusion +add_definitions( -DXERCES_STATIC_LIBRARY ) + +############################################################################# + +# We don't build the tests when fc is built as a shared +# library on msvc since the tests need access to the fc +# internal apis which are not exported when building a DLL. +# If we tried to build them, we would get linker errors. +# We also don't build the tests if the user specified it. +if( NOT ( BUILD_SHARED_FC AND MSVC ) AND NOT NO_TEST_EXE ) + add_subdirectory( tests ) +endif() diff --git a/src/FlightCrew/DllExporting.h b/src/FlightCrew/DllExporting.h new file mode 100644 index 0000000..8b1aecc --- /dev/null +++ b/src/FlightCrew/DllExporting.h @@ -0,0 +1,34 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#ifdef FC_BUILT_AS_DLL +# ifdef _WIN32 +# ifdef FC_DLL_EXPORTING +# define FC_WIN_DLL_API __declspec(dllexport) +# else +# define FC_WIN_DLL_API __declspec(dllimport) +# endif +# else +# define FC_WIN_DLL_API +# endif +#else +# define FC_WIN_DLL_API +#endif diff --git a/src/FlightCrew/ErrorMessages.cpp b/src/FlightCrew/ErrorMessages.cpp new file mode 100644 index 0000000..a70d469 --- /dev/null +++ b/src/FlightCrew/ErrorMessages.cpp @@ -0,0 +1,194 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ErrorMessages.h" + +namespace FlightCrew +{ + +static const std::string NO_MESSAGE_PLACEHOLDER = + "No message available. " + "Please report this on the FlightCrew issue tracker."; + +boost::mutex ErrorMessages::s_AccessMutex; +ErrorMessages* ErrorMessages::s_Instance = NULL; + +ErrorMessages& ErrorMessages::Instance() +{ + // We use a static local variable + // to hold our singleton instance; using a pointer member + // variable creates problems with object destruction; + + boost::lock_guard< boost::mutex > locker( s_AccessMutex ); + + if ( !s_Instance ) + { + static ErrorMessages messages; + s_Instance = &messages; + } + + return *s_Instance; +} + + +const std::string ErrorMessages::MessageForId( ResultId error_id ) +{ + if ( m_Messages.count( error_id ) ) + + return m_Messages[ error_id ]; + + return NO_MESSAGE_PLACEHOLDER; +} + + +ErrorMessages::ErrorMessages() +{ + LoadMessages(); +} + + +void ErrorMessages::LoadMessages() +{ + // It would be great if these could be read from an external file, + // but we don't want a runtime dependency. So we hard-code them. + // This would be bad for translations, but since we can't translate the + // error messages coming from the schema checkers, we won't be translating + // these either. So it's not a problem. + + m_Messages[ ALL_OK ] = + "All OK."; + m_Messages[ ERROR_GENERIC ] = + "Error."; + m_Messages[ ERROR_SCHEMA_NOT_SATISFIED ] = + "The corresponding schema constraints were not satisfied."; + + m_Messages[ ERROR_EPUB_NOT_VALID_ZIP_ARCHIVE ] = + "The epub file is not a valid ZIP archive."; + m_Messages[ ERROR_EPUB_NO_CONTAINER_XML ] = + "The META-INF/container.xml file was not found."; + + m_Messages[ ERROR_OCF_CONTAINER_DOESNT_LIST_OPF ] = + "An OPF file is not listed as a ."; + m_Messages[ ERROR_OCF_CONTAINER_SPECIFIED_OPF_DOESNT_EXIST ] = + "The specified OPF file \"%1%\" does not exist."; + m_Messages[ ERROR_EPUB_MIMETYPE_BYTES_INVALID ] = + "Bytes 30-60 of your epub file are invalid. This means that one or more of the following " + "rules are not satisfied:\n" + " 1. There needs to be a \"mimetype\" file in the root folder.\n" + " 2. Its content needs to be *exactly* the ASCII string \"application/epub+zip\".\n" + " 3. It needs to be the first file in the epub zip archive.\n" + " 4. It needs to be uncompressed."; + + m_Messages[ ERROR_XML_NOT_WELL_FORMED ] = + "XML syntax error."; + m_Messages[ ERROR_XML_ELEMENT_NOT_PRESENT ] = + "The <%1%> element is missing."; + m_Messages[ ERROR_XML_WRONG_ELEMENT_COUNT ] = + "There needs to be one and only one <%1%> element."; + m_Messages[ ERROR_XML_CHILD_NOT_RECOGNIZED ] = + "The <%1%> element is not an allowed child of the <%2%> element."; + m_Messages[ ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ] = + "The \"%1%\" attribute is not an allowed attribute of the <%2%> element."; + m_Messages[ ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ] = + "The required attribute \"%1%\" is missing from the <%2%> element."; + m_Messages[ ERROR_XML_ID_NOT_UNIQUE ] = + "An element with ID value \"%1%\" already exists in the document."; + m_Messages[ ERROR_XML_BAD_ID_VALUE ] = + "An ID value of \"%1%\" is not a valid value for an ID."; + m_Messages[ ERROR_XML_SPECIFIES_NEITHER_UTF8_NOR_UTF16 ] = + "The file declares the use of the \"%1%\" encoding, but only UTF-8 and UTF-16 are allowed."; + m_Messages[ ERROR_XML_BYTESTREAM_NEITHER_UTF8_NOR_UTF16 ] = + "The file declares the use of UTF-8 or UTF-16, but the bytestream of the file's contents " + "does not match either encoding."; + + m_Messages[ ERROR_OPF_PACKAGE_NOT_ROOT ] = + "The element is not the root element."; + m_Messages[ ERROR_OPF_IDREF_ID_DOES_NOT_EXIST ] = + "The element's \"idref\" attribute is pointing to an with id=\"%1%\" which " + "does not exist in the ."; + m_Messages[ ERROR_OPF_IDREF_NOT_UNIQUE ] = + "The element's \"idref\" attribute has value \"%1%\", but that value is already " + "in use in a previous ."; + m_Messages[ ERROR_OPF_BAD_SPINE_TOC_VALUE ] = + "The element's \"toc\" attribute is pointing to an with id=\"%1%\" which " + "does not exist in the ."; + m_Messages[ ERROR_OPF_PACKAGE_UNIQUE_IDENTIFIER_DOES_NOT_EXIST ] = + "The element's \"unique-identifier\" attribute is pointing to an " + "with id=\"%1%\" which does not exist in the ."; + m_Messages[ ERROR_OPF_BAD_PACKAGE_VERSION ] = + "The element's \"version\" attribute value needs to be \"%1%\", but is \"%2%\"."; + m_Messages[ ERROR_OPF_BAD_ITEM_LINEAR_VALUE ] = + "The element's \"linear\" attribute has value \"%1%\", but only \"yes\" and \"no\" " + "are allowed."; + m_Messages[ ERROR_OPF_BAD_ITEM_MEDIA_TYPE_VALUE ] = + "The element's \"media-type\" attribute has value \"%1%\", but the file's " + "media type is \"%2%\"."; + m_Messages[ ERROR_OPF_BAD_CREATOR_OR_CONTRIBUTOR_ROLE_VALUE ] = + "The \"role\" value \"%1%\" is not a registered MARC value. Either use a valid MARC " + "relator or start your relator with \"oth.\"."; + m_Messages[ ERROR_OPF_BAD_REFERENCE_TYPE_VALUE ] = + "The element's \"type\" attribute has value \"%1%\" which is not an " + "OPF-specified value. Either use a predefined type or start your type with \"other.\"."; + m_Messages[ ERROR_OPF_BAD_DATE_VALUE ] = + "The element's value is \"%1%\", which is not a valid date format."; + m_Messages[ ERROR_OPF_ITEM_HREF_INVALID_URI ] = + "The element's \"href\" attribute value is \"%1%\", which is not a valid URI."; + m_Messages[ ERROR_OPF_ITEM_HREF_HAS_FRAGMENT ] = + "The element's \"href\" attribute value is \"%1%\", which contains " + "a fragment identifier."; + m_Messages[ ERROR_OPF_ITEM_HREF_NOT_UNIQUE ] = + "The element's \"href\" attribute value is \"%1%\" " + "which is already in use in a previous ."; + m_Messages[ ERROR_OPF_ITEM_REQMOD_WITHOUT_REQNS ] = + "The element has a \"required-modules\" attribute but doesn't have a " + "\"required-namespace\" attribute."; + m_Messages[ ERROR_OPF_ITEM_FILE_DOESNT_EXIST ] = + "The element's \"href\" attribute points to file \"%1%\" " + "which does not exist."; + m_Messages[ ERROR_OPF_NCX_NOT_PRESENT ] = + "There is no element in the that has the NCX mimetype " + "(\"application/x-dtbncx+xml\"). The use of an NCX is mandatory in EPUB."; + m_Messages[ ERROR_OPF_REACHABLE_OPS_DOC_NOT_IN_SPINE ] = + "This OPS document is reachable but not present in the OPF . " + "\"Reachable\" means that a reference of some kind that points to this resource exists in the epub."; + m_Messages[ ERROR_OPF_REACHABLE_RESOURCE_NOT_IN_MANIFEST ] = + "This resource is reachable but not present in the OPF . " + "\"Reachable\" means that a reference of some kind that points to this resource exists in the epub."; + + m_Messages[ ERROR_NCX_CONTENT_FILE_DOES_NOT_EXIST ] = + "This element's \"src\" attribute value is \"%1%\", but that file does not exist."; + m_Messages[ ERROR_NCX_CONTENT_FRAGMENT_DOES_NOT_EXIST ] = + "This element's \"src\" attribute value is \"%1%\", but an element with an ID the " + "fragment is referring to does not exist in that file."; + + m_Messages[ ERROR_XHTML_BAD_DTD ] = + std::string( "The file specifies an incorrect DTD. The correct public ID for the DTD is \"" ) + + XHTML11_PUBLIC_ID + "\", while the correct system ID is \"" + XHTML11_SYSTEM_ID + "\". " + "Do note that using a DTD is optional; but if used, it must be correct."; + + m_Messages[ WARNING_GENERIC ] = + "Warning."; + m_Messages[ WARNING_OPF_RESOURCE_IN_MANIFEST_NOT_REACHABLE ] = + "This resource is present in the OPF , but it's not reachable (it's unused)."; +} + +} // namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/ErrorMessages.h b/src/FlightCrew/ErrorMessages.h new file mode 100644 index 0000000..464b65f --- /dev/null +++ b/src/FlightCrew/ErrorMessages.h @@ -0,0 +1,61 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ERRORMESSAGES_H +#define ERRORMESSAGES_H + +#include +#include +#include +#include "ResultId.h" + +namespace FlightCrew +{ + +class ErrorMessages +{ +public: + + static ErrorMessages& Instance(); + + const std::string MessageForId( ResultId error_id ); + +private: + + ErrorMessages(); + + void LoadMessages(); + + /////////////////////////////// + // PRIVATE MEMBER VARIABLES + /////////////////////////////// + + static boost::mutex s_AccessMutex; + + static ErrorMessages *s_Instance; + + boost::unordered_map< ResultId, std::string > m_Messages; +}; + +} // namespace FlightCrew + +#endif // ERRORMESSAGES_H diff --git a/src/FlightCrew/Framework/OpfValidatorsList.cpp b/src/FlightCrew/Framework/OpfValidatorsList.cpp new file mode 100644 index 0000000..f81fbdc --- /dev/null +++ b/src/FlightCrew/Framework/OpfValidatorsList.cpp @@ -0,0 +1,164 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "OpfValidatorsList.h" +#include "Validators/Opf/ContributorAttributesPresent.h" +#include "Validators/Opf/CoverageAttributesPresent.h" +#include "Validators/Opf/CreatorAttributesPresent.h" +#include "Validators/Opf/CreatorOrContributorRoleValid.h" +#include "Validators/Opf/DateAttributesPresent.h" +#include "Validators/Opf/DateValid.h" +#include "Validators/Opf/DCMetadataAllowedChildren.h" +#include "Validators/Opf/DCMetadataAttributesPresent.h" +#include "Validators/Opf/DescriptionAttributesPresent.h" +#include "Validators/Opf/FormatAttributesPresent.h" +#include "Validators/Opf/GuideAllowedChildren.h" +#include "Validators/Opf/GuideAttributesPresent.h" +#include "Validators/Opf/IdentifierAttributesPresent.h" +#include "Validators/Opf/IdentifierPresent.h" +#include "Validators/Opf/IdsUnique.h" +#include "Validators/Opf/IdsValid.h" +#include "Validators/Opf/ItemAttributesPresent.h" +#include "Validators/Opf/ItemHrefUnique.h" +#include "Validators/Opf/ItemHrefValid.h" +#include "Validators/Opf/ItemLinearValid.h" +#include "Validators/Opf/ItemPresent.h" +#include "Validators/Opf/ItemrefAttributesPresent.h" +#include "Validators/Opf/ItemrefIdrefValid.h" +#include "Validators/Opf/ItemrefPresent.h" +#include "Validators/Opf/ItemReqModsOnlyWithReqNS.h" +#include "Validators/Opf/LanguagePresent.h" +#include "Validators/Opf/ManifestAllowedChildren.h" +#include "Validators/Opf/ManifestAttributesPresent.h" +#include "Validators/Opf/MetaAttributesPresent.h" +#include "Validators/Opf/MetadataAllowedChildren.h" +#include "Validators/Opf/MetadataAttributesPresent.h" +#include "Validators/Opf/OneManifest.h" +#include "Validators/Opf/OneMetadata.h" +#include "Validators/Opf/OneSpine.h" +#include "Validators/Opf/PackageAllowedChildren.h" +#include "Validators/Opf/PackageAttributesPresent.h" +#include "Validators/Opf/PackageIsRoot.h" +#include "Validators/Opf/PackageUniqueIdentifierValid.h" +#include "Validators/Opf/PackageVersionCorrect.h" +#include "Validators/Opf/PublisherAttributesPresent.h" +#include "Validators/Opf/ReferenceAttributesPresent.h" +#include "Validators/Opf/ReferenceTypeValid.h" +#include "Validators/Opf/RelationAttributesPresent.h" +#include "Validators/Opf/RightsAttributesPresent.h" +#include "Validators/Opf/SiteAttributesPresent.h" +#include "Validators/Opf/SourceAttributesPresent.h" +#include "Validators/Opf/SpineAllowedChildren.h" +#include "Validators/Opf/SpineAttributesPresent.h" +#include "Validators/Opf/SubjectAttributesPresent.h" +#include "Validators/Opf/TitleAttributesPresent.h" +#include "Validators/Opf/TitlePresent.h" +#include "Validators/Opf/TourAllowedChildren.h" +#include "Validators/Opf/TourAttributesPresent.h" +#include "Validators/Opf/ToursAllowedChildren.h" +#include "Validators/Opf/ToursAttributesPresent.h" +#include "Validators/Opf/TypeAttributesPresent.h" +#include "Validators/Opf/XMetadataAllowedChildren.h" +#include "Validators/Opf/XMetadataAttributesPresent.h" +#include "Validators/Opf/NcxPresent.h" +#include "Validators/Opf/SpineTocValid.h" +#include "Validators/Opf/ItemFilesPresent.h" +#include "Validators/Opf/ReachabilityAnalysis.h" +#include "Validators/Opf/ItemMediaTypeValid.h" +#include "Validators/Opf/ItemrefIdrefUnique.h" + + +namespace FlightCrew +{ + +std::vector< boost::shared_ptr< XmlValidator > > GetOpfXmlValidators() +{ + std::vector< boost::shared_ptr< XmlValidator > > validators; + validators.push_back( boost::shared_ptr< XmlValidator >( new ContributorAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new CoverageAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new CreatorAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new CreatorOrContributorRoleValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new DateAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new DateValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new DCMetadataAllowedChildren() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new DCMetadataAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new DescriptionAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new FormatAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new GuideAllowedChildren() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new GuideAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new IdentifierAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new IdentifierPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new IdsUnique() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new IdsValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemHrefUnique() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemHrefValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemLinearValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemrefAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemrefIdrefValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemrefPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemReqModsOnlyWithReqNS() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new LanguagePresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ManifestAllowedChildren() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ManifestAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new MetaAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new MetadataAllowedChildren() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new MetadataAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new OneManifest() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new OneMetadata() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new OneSpine() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new PackageAllowedChildren() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new PackageAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new PackageIsRoot() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new PackageUniqueIdentifierValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new PackageVersionCorrect() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new PublisherAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ReferenceAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ReferenceTypeValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new RelationAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new RightsAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new SiteAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new SourceAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new SpineAllowedChildren() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new SpineAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new SubjectAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new TitleAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new TitlePresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new TourAllowedChildren() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new TourAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ToursAllowedChildren() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ToursAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new TypeAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new XMetadataAllowedChildren() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new XMetadataAttributesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new NcxPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new SpineTocValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemFilesPresent() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ReachabilityAnalysis() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemMediaTypeValid() ) ); + validators.push_back( boost::shared_ptr< XmlValidator >( new ItemrefIdrefUnique() ) ); + + return validators; +} + +} // namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Framework/OpfValidatorsList.h b/src/FlightCrew/Framework/OpfValidatorsList.h new file mode 100644 index 0000000..812b102 --- /dev/null +++ b/src/FlightCrew/Framework/OpfValidatorsList.h @@ -0,0 +1,36 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef OPFVALIDATORSLIST_H +#define OPFVALIDATORSLIST_H + +#include +#include +#include "Validators/XmlValidator.h" + +namespace FlightCrew +{ + std::vector< boost::shared_ptr< XmlValidator > > GetOpfXmlValidators(); + +} // namespace FlightCrew + +#endif // OPFVALIDATORSLIST_H \ No newline at end of file diff --git a/src/FlightCrew/Framework/ValidateCss.cpp b/src/FlightCrew/Framework/ValidateCss.cpp new file mode 100644 index 0000000..7f98836 --- /dev/null +++ b/src/FlightCrew/Framework/ValidateCss.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include +#include "Result.h" +#include "Misc/Utilities.h" + + +namespace FlightCrew +{ + +std::vector< Result > ValidateCss( const fs::path &filepath ) +{ + xe::XercesInit init; + + if ( !fs::exists( filepath ) ) + + boost_throw( FileDoesNotExistEx() << ei_FilePath( Util::BoostPathToUtf8Path( filepath ) ) ); + + // TODO + return std::vector< Result >(); +} + +} // namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Framework/ValidateEpub.cpp b/src/FlightCrew/Framework/ValidateEpub.cpp new file mode 100644 index 0000000..bc1024a --- /dev/null +++ b/src/FlightCrew/Framework/ValidateEpub.cpp @@ -0,0 +1,330 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include "Result.h" +#include +#include "Misc/TempFolder.h" +#include "Misc/Utilities.h" +#include "Validators/Xml/WellFormedXml.h" +#include +#include +#include +#include +#include +#include "flightcrew_p.h" +#include "Validators/Ocf/ContainerSatisfiesSchema.h" +#include "Validators/Ocf/EncryptionSatisfiesSchema.h" +#include "Validators/Ocf/SignaturesSatisfiesSchema.h" +#include "Validators/Ocf/ContainerListsOpf.h" +#include "Validators/Ocf/ContainerListedOpfPresent.h" +#include "Validators/Ocf/MimetypeBytesValid.h" +#include "Validators/Xml/UsesUnicode.h" + +namespace FlightCrew +{ + +const std::string CONTAINER_XML_NAMESPACE = "urn:oasis:names:tc:opendocument:xmlns:container"; + + +std::vector< Result > ValidateMetaInf( const fs::path &path_to_meta_inf ) +{ + fs::path container_xml( path_to_meta_inf / "container.xml" ); + fs::path signatures_xml( path_to_meta_inf / "signatures.xml" ); + fs::path manifest_xml( path_to_meta_inf / "manifest.xml" ); + fs::path rights_xml( path_to_meta_inf / "rights.xml" ); + fs::path metadata_xml( path_to_meta_inf / "metadata.xml" ); + fs::path encryption_xml( path_to_meta_inf / "encryption.xml" ); + + std::vector< Result > results; + + if ( fs::exists( container_xml ) ) + { + Util::Extend( results, ContainerSatisfiesSchema() .ValidateFile( container_xml ) ); + Util::Extend( results, ContainerListsOpf() .ValidateFile( container_xml ) ); + Util::Extend( results, ContainerListedOpfPresent().ValidateFile( container_xml ) ); + } + + else + { + results.push_back( Result( ERROR_EPUB_NO_CONTAINER_XML ) ); + } + + if ( fs::exists( encryption_xml ) ) + + Util::Extend( results, EncryptionSatisfiesSchema().ValidateFile( encryption_xml ) ); + + if ( fs::exists( signatures_xml ) ) + + Util::Extend( results, SignaturesSatisfiesSchema().ValidateFile( signatures_xml ) ); + + std::vector< fs::path > all_files; + all_files.push_back( container_xml ); + all_files.push_back( signatures_xml ); + all_files.push_back( encryption_xml ); + all_files.push_back( manifest_xml ); + all_files.push_back( rights_xml ); + all_files.push_back( metadata_xml ); + + foreach( fs::path file, all_files ) + { + if ( fs::exists( file ) ) + + Util::Extend( results, UsesUnicode().ValidateFile( file ) ); + } + + // i starts at 3 because we already (implicitly) checked well-formedness + // for container.xml, signatures.xml and encryption.xml so + // we don't want to check it again. + for ( uint i = 3; i < all_files.size(); ++i ) + { + if ( fs::exists( all_files[ i ] ) ) + + Util::Extend( results, WellFormedXml().ValidateFile( all_files[ i ] ) ); + } + + // There are some possible duplicates + Util::RemoveDuplicates( results ); + return results; +} + + +fs::path GetRelativePathToNcx( const xc::DOMDocument &opf ) +{ + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + opf, QName( "item", OPF_XML_NAMESPACE ) ); + + foreach( xc::DOMElement* item, items ) + { + std::string href = fromX( item->getAttribute( toX( "href" ) ) ); + std::string media_type = fromX( item->getAttribute( toX( "media-type" ) ) ); + + if ( xc::XMLUri::isValidURI( true, toX( href ) ) && + media_type == NCX_MIME ) + { + return Util::Utf8PathToBoostPath( Util::UrlDecode( href ) ); + } + } + + return fs::path(); +} + + +std::vector< fs::path > GetRelativePathsToXhtmlDocuments( const xc::DOMDocument &opf ) +{ + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + opf, QName( "item", OPF_XML_NAMESPACE ) ); + + std::vector< fs::path > paths; + + foreach( xc::DOMElement* item, items ) + { + std::string href = fromX( item->getAttribute( toX( "href" ) ) ); + std::string media_type = fromX( item->getAttribute( toX( "media-type" ) ) ); + + if ( xc::XMLUri::isValidURI( true, toX( href ) ) && + ( media_type == XHTML_MIME || media_type == OEB_DOC_MIME ) ) + { + paths.push_back( Util::Utf8PathToBoostPath( Util::UrlDecode( href ) ) ); + } + } + + return paths; +} + + +std::vector< Result > DescendToOpf( const fs::path &path_to_opf ) +{ + WellFormedXml wf_validator; + + // We can't continue if the OPF is not well-formed. + // ValidateOpf will take care of returning any + // validation results for the OPF + if ( !wf_validator.ValidateFile( path_to_opf ).empty() ) + + return std::vector< Result >(); + + xc::DOMDocument& opf = wf_validator.GetDocument(); + std::vector< Result > results; + + fs::path opf_parent = path_to_opf.parent_path(); + fs::path rel_ncx_path = GetRelativePathToNcx( opf ); + fs::path full_ncx_path = opf_parent / GetRelativePathToNcx( opf ); + + if ( !rel_ncx_path.empty() && fs::exists( full_ncx_path ) ) + + Util::Extend( results, ValidateNcx( full_ncx_path ) ); + + std::vector< fs::path > xhtml_paths = GetRelativePathsToXhtmlDocuments( opf ); + + foreach( fs::path rel_xhtml_path, xhtml_paths ) + { + fs::path full_xhtml_path = opf_parent / rel_xhtml_path; + + if ( !rel_xhtml_path.empty() && fs::exists( full_xhtml_path ) ) + + Util::Extend( results, ValidateXhtml( full_xhtml_path ) ); + } + + return results; +} + + +fs::path GetRelativeOpfPath( const xc::DOMDocument &content_xml ) +{ + std::vector< xc::DOMElement* > rootfiles = xe::GetElementsByQName( + content_xml, QName( "rootfile", CONTAINER_XML_NAMESPACE ) ); + + foreach( xc::DOMElement* rootfile, rootfiles ) + { + std::string full_path_attribute = fromX( rootfile->getAttribute( toX( "full-path" ) ) ); + std::string media_type = fromX( rootfile->getAttribute( toX( "media-type" ) ) ); + + if ( media_type == OEBPS_MIME ) + + return Util::Utf8PathToBoostPath( full_path_attribute ); + } + + return fs::path(); +} + + +std::vector< Result > DescendToContentXml( const fs::path &path_to_content_xml ) +{ + WellFormedXml wf_validator; + + // We can't continue if content.xml is not well-formed. + // ValidateMetaInf will take care of returning any + // validation results for content.xml + if ( !wf_validator.ValidateFile( path_to_content_xml ).empty() ) + + return std::vector< Result >(); + + // The base path for the OPF is the publication root path + fs::path root_path = path_to_content_xml.parent_path().parent_path(); + fs::path rel_opf_path = GetRelativeOpfPath( wf_validator.GetDocument() ); + fs::path full_opf_path = root_path / rel_opf_path; + + std::vector< Result > results; + + if ( !rel_opf_path.empty() && fs::exists( full_opf_path ) ) + { + Util::Extend( results, ValidateOpf( full_opf_path ) ); + Util::Extend( results, DescendToOpf( full_opf_path ) ); + } + + return results; +} + +void RemoveBasePathFromResultPaths( std::vector< Result > &results, const fs::path &basepath ) +{ + std::string path_prefix = Util::BoostPathToUtf8Path( basepath ); + + foreach( Result &result, results ) + { + std::string result_path = result.GetFilepath(); + + if ( !result_path.empty() ) + { + std::string relative_path = boost::erase_first_copy( result_path, path_prefix ); + + // We don't want it to look like an absolute path + // because it's not. + if ( boost::starts_with( relative_path, "/" ) ) + + boost::erase_first( relative_path, "/" ); + + result.SetFilepath( relative_path ); + } + } +} + + +void AddEpubFilenameToResultPaths( std::vector< Result > &results, const std::string &epub_name ) +{ + foreach( Result &result, results ) + { + std::string result_path = result.GetFilepath(); + + if ( !result_path.empty() ) + + result.SetFilepath( epub_name + "/" + result_path ); + + else + + result.SetFilepath( epub_name ); + } +} + + +std::vector< Result > ValidateEpubRootFolder( const fs::path &root_folder_path ) +{ + xe::XercesInit init; + + if ( !fs::exists( root_folder_path ) ) + + boost_throw( FileDoesNotExistEx() << ei_FilePath( Util::BoostPathToUtf8Path( root_folder_path ) ) ); + + std::vector< Result > results; + Util::Extend( results, ValidateMetaInf( root_folder_path / "META-INF" ) ); + + fs::path path_to_content_xml = root_folder_path / "META-INF/container.xml"; + + if ( !fs::exists( path_to_content_xml ) ) + { + return results; + } + + Util::Extend( results, DescendToContentXml( path_to_content_xml ) ); + + RemoveBasePathFromResultPaths( results, root_folder_path ); + return results; +} + + +std::vector< Result > ValidateEpub( const fs::path &filepath ) +{ + TempFolder temp_folder; + + std::vector< Result > results; + + try + { + zipios::ExtractZipToFolder( filepath, temp_folder.GetPath() ); + } + + catch ( std::exception& exception ) + { + results.push_back( Result( ERROR_EPUB_NOT_VALID_ZIP_ARCHIVE ) + .SetCustomMessage( exception.what() ) ); + return results; + } + + Util::Extend( results, MimetypeBytesValid().ValidateFile( filepath ) ); + RemoveBasePathFromResultPaths( results, temp_folder.GetPath() ); + + Util::Extend( results, ValidateEpubRootFolder( temp_folder.GetPath() ) ); + AddEpubFilenameToResultPaths( results, Util::BoostPathToUtf8Path( filepath.filename() ) ); + return results; +} + +} // namespace FlightCrew diff --git a/src/FlightCrew/Framework/ValidateNcx.cpp b/src/FlightCrew/Framework/ValidateNcx.cpp new file mode 100644 index 0000000..7694399 --- /dev/null +++ b/src/FlightCrew/Framework/ValidateNcx.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include +#include "Result.h" +#include "Validators/Xml/WellFormedXml.h" +#include "Validators/Xml/UsesUnicode.h" +#include "Misc/Utilities.h" +#include "Validators/Ncx/NcxSatisfiesSchema.h" +#include "Validators/Ncx/ContentTargetsPresent.h" + + +namespace FlightCrew +{ + +std::vector< Result > ValidateNcx( const fs::path &filepath ) +{ + xe::XercesInit init; + + if ( !fs::exists( filepath ) ) + + boost_throw( FileDoesNotExistEx() << ei_FilePath( Util::BoostPathToUtf8Path( filepath ) ) ); + + std::vector< Result > results; + Util::Extend( results, NcxSatisfiesSchema() .ValidateFile( filepath ) ); + Util::Extend( results, ContentTargetsPresent().ValidateFile( filepath ) ); + Util::Extend( results, UsesUnicode() .ValidateFile( filepath ) ); + return Util::SortedInPlace( results ); +} + +} // namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Framework/ValidateOpf.cpp b/src/FlightCrew/Framework/ValidateOpf.cpp new file mode 100644 index 0000000..cbca2b0 --- /dev/null +++ b/src/FlightCrew/Framework/ValidateOpf.cpp @@ -0,0 +1,72 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include +#include "Result.h" +#include "Validators/Xml/WellFormedXml.h" +#include "Validators/Xml/UsesUnicode.h" +#include "OpfValidatorsList.h" +#include "Misc/Utilities.h" + + +namespace FlightCrew +{ + +std::vector< Result > ValidateOpf( const fs::path &filepath ) +{ + xe::XercesInit init; + + if ( !fs::exists( filepath ) ) + + boost_throw( FileDoesNotExistEx() << ei_FilePath( Util::BoostPathToUtf8Path( filepath ) ) ); + + std::vector< Result > results; + + WellFormedXml wf_validator; + Util::Extend( results, wf_validator.ValidateFile( filepath ) ); + + // There is no point in running the other validators + // if the document is not well-formed. + if ( !results.empty() ) + + return Util::SortedInPlace( results ); + + std::vector< boost::shared_ptr< XmlValidator > > xmlvalidators = + GetOpfXmlValidators(); + + xc::DOMDocument& document = wf_validator.GetDocument(); + + foreach( boost::shared_ptr< XmlValidator > validator, xmlvalidators ) + { + Util::Extend( results, validator->ValidateXml( document, filepath ) ); + } + + Util::Extend( results, UsesUnicode().ValidateFile( filepath ) ); + + // Needed because the XmlValidators for the opf take + // a DOM document and not a path + results = Util::AddPathToResults( results, filepath ); + return Util::SortedInPlace( results ); +} + +} // namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Framework/ValidateXhtml.cpp b/src/FlightCrew/Framework/ValidateXhtml.cpp new file mode 100644 index 0000000..9cb298c --- /dev/null +++ b/src/FlightCrew/Framework/ValidateXhtml.cpp @@ -0,0 +1,50 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include +#include "Result.h" +#include "Validators/Xml/WellFormedXml.h" +#include "Validators/Xml/UsesUnicode.h" +#include "Misc/Utilities.h" +#include "Validators/Xhtml/SatisfiesXhtmlSchema.h" +#include "Validators/Xhtml/UsesCorrectDtd.h" + +namespace FlightCrew +{ + +std::vector< Result > ValidateXhtml( const fs::path &filepath ) +{ + xe::XercesInit init; + + if ( !fs::exists( filepath ) ) + + boost_throw( FileDoesNotExistEx() << ei_FilePath( Util::BoostPathToUtf8Path( filepath ) ) ); + + std::vector< Result > results; + Util::Extend( results, SatisfiesXhtmlSchema().ValidateFile( filepath ) ); + Util::Extend( results, UsesUnicode() .ValidateFile( filepath ) ); + Util::Extend( results, UsesCorrectDtd() .ValidateFile( filepath ) ); + return Util::SortedInPlace( results ); +} + +} // namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Framework/flightcrew_p.h b/src/FlightCrew/Framework/flightcrew_p.h new file mode 100644 index 0000000..b823e42 --- /dev/null +++ b/src/FlightCrew/Framework/flightcrew_p.h @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef FLIGHTCREW_P_H +#define FLIGHTCREW_P_H + +#include +#include +#include "Result.h" +#include "Misc/BoostFilesystemUse.h" + +namespace FlightCrew +{ + +std::vector< Result > ValidateEpub( const fs::path &filepath ); + +std::vector< Result > ValidateEpubRootFolder( const fs::path &root_folder_path ); + +std::vector< Result > ValidateOpf( const fs::path &filepath ); + +std::vector< Result > ValidateNcx( const fs::path &filepath ); + +std::vector< Result > ValidateXhtml( const fs::path &filepath ); + +std::vector< Result > ValidateCss( const fs::path &filepath ); + +} // namespace FlightCrew + +#endif // FLIGHTCREW_P_H diff --git a/src/FlightCrew/Misc/BoostFilesystemUse.h b/src/FlightCrew/Misc/BoostFilesystemUse.h new file mode 100644 index 0000000..0c2861c --- /dev/null +++ b/src/FlightCrew/Misc/BoostFilesystemUse.h @@ -0,0 +1,31 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef BOOSTFILESYSTEMUSE_H +#define BOOSTFILESYSTEMUSE_H + +#define BOOST_FILESYSTEM_VERSION 3 +#include +#include +namespace fs = boost::filesystem; + +#endif // BOOSTFILESYSTEMUSE_H diff --git a/src/FlightCrew/Misc/CustomAssert.cpp b/src/FlightCrew/Misc/CustomAssert.cpp new file mode 100644 index 0000000..6d0d755 --- /dev/null +++ b/src/FlightCrew/Misc/CustomAssert.cpp @@ -0,0 +1,103 @@ +/* +* Copyright (c) 2008, Power of Two Games LLC +* 2010, Strahinja Markovic +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are met: +* * Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* * Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* * Neither the name of Power of Two Games LLC nor the +* names of its contributors may be used to endorse or promote products +* derived from this software without specific prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY POWER OF TWO GAMES LLC ``AS IS'' AND ANY +* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +* DISCLAIMED. IN NO EVENT SHALL POWER OF TWO GAMES LLC BE LIABLE FOR ANY +* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include +#include "CustomAssert.h" +#include +#include + +namespace assert_ns +{ + +namespace +{ + +Assert::FailBehavior DefaultHandler(const char* condition, + const char* msg, + const char* file, + const int line) +{ + std::printf("%s(%d): Assert Failure: ", file, line); + + if (condition != NULL) + std::printf("'%s' ", condition); + + if (msg != NULL) + std::printf("%s", msg); + + std::printf("\n"); + + return Assert::Halt; +} + +Assert::Handler& GetAssertHandlerInstance() +{ + static Assert::Handler s_handler = &DefaultHandler; + return s_handler; +} + +} + +Assert::Handler Assert::GetHandler() +{ + return GetAssertHandlerInstance(); +} + +void Assert::SetHandler(Assert::Handler newHandler) +{ + GetAssertHandlerInstance() = newHandler; +} + +Assert::FailBehavior Assert::ReportFailure(const char* condition, + const char* file, + const int line, + const char* msg, ...) +{ + const char* message = NULL; + if (msg != NULL) + { + char messageBuffer[1024]; + { + va_list args; + va_start(args, msg); + + #if defined(_MSC_VER) + vsnprintf_s(messageBuffer, 1024, 1024, msg, args); + #else + vsnprintf(messageBuffer, 1024, msg, args); + #endif + + va_end(args); + } + + message = messageBuffer; + } + + return GetAssertHandlerInstance()(condition, message, file, line); +} + +} diff --git a/src/FlightCrew/Misc/CustomAssert.h b/src/FlightCrew/Misc/CustomAssert.h new file mode 100644 index 0000000..4041bcb --- /dev/null +++ b/src/FlightCrew/Misc/CustomAssert.h @@ -0,0 +1,111 @@ +/* +* Copyright (c) 2008, Power of Two Games LLC +* 2010, Strahinja Markovic +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are met: +* * Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* * Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* * Neither the name of Power of Two Games LLC nor the +* names of its contributors may be used to endorse or promote products +* derived from this software without specific prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY POWER OF TWO GAMES LLC ``AS IS'' AND ANY +* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +* DISCLAIMED. IN NO EVENT SHALL POWER OF TWO GAMES LLC BE LIABLE FOR ANY +* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef CUSTOM_ASSERT_H +#define CUSTOM_ASSERT_H + +namespace assert_ns { namespace Assert +{ + enum FailBehavior + { + Halt, + Continue, + }; + + typedef FailBehavior (*Handler)(const char* condition, + const char* msg, + const char* file, + int line); + + Handler GetHandler(); + void SetHandler(Handler newHandler); + + FailBehavior ReportFailure(const char* condition, + const char* file, + int line, + const char* msg, ...); +}} + +#if defined(_MSC_VER) +# define X_HALT() __debugbreak() +#elif defined(__GNUC__) +# define X_HALT() __builtin_trap() +#else +# define X_HALT() exit(__LINE__) +#endif + +#define X_UNUSED(x) do { (void)sizeof(x); } while(0) + +#ifndef NDEBUG + #define X_ASSERT(cond) \ + do \ + { \ + if (!(cond)) \ + { \ + if (assert_ns::Assert::ReportFailure(#cond, __FILE__, __LINE__, 0) == \ + assert_ns::Assert::Halt) \ + X_HALT(); \ + } \ + } while(0) + + #define X_ASSERT_MSG(cond, msg, ...) \ + do \ + { \ + if (!(cond)) \ + { \ + if (assert_ns::Assert::ReportFailure(#cond, __FILE__, __LINE__, (msg), __VA_ARGS__) == \ + assert_ns::Assert::Halt) \ + X_HALT(); \ + } \ + } while(0) + + #define X_ASSERT_FAIL(msg, ...) \ + do \ + { \ + if (assert_ns::Assert::ReportFailure(0, __FILE__, __LINE__, (msg), __VA_ARGS__) == \ + assert_ns::Assert::Halt) \ + X_HALT(); \ + } while(0) + + #define X_VERIFY(cond) X_ASSERT(cond) + #define X_VERIFY_MSG(cond, msg, ...) X_ASSERT_MSG(cond, msg, ##__VA_ARGS__) +#else + #define X_ASSERT(condition) \ + do { X_UNUSED(condition); } while(0) + #define X_ASSERT_MSG(condition, msg, ...) \ + do { X_UNUSED(condition); X_UNUSED(msg); } while(0) + #define X_ASSERT_FAIL(msg, ...) \ + do { X_UNUSED(msg); } while(0) + #define X_VERIFY(cond) (void)(cond) + #define X_VERIFY_MSG(cond, msg, ...) \ + do { (void)(cond); X_UNUSED(msg); } while(0) +#endif + +#define X_STATIC_ASSERT(x) \ + typedef char StaticAssert[(x) ? 1 : -1]; + +#endif // CUSTOM_ASSERT_H diff --git a/src/FlightCrew/Misc/DetermineMimetype.cpp b/src/FlightCrew/Misc/DetermineMimetype.cpp new file mode 100644 index 0000000..bfe9402 --- /dev/null +++ b/src/FlightCrew/Misc/DetermineMimetype.cpp @@ -0,0 +1,210 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "DetermineMimetype.h" +#include "Utilities.h" + +namespace FlightCrew +{ + +const std::string OEBPS_MIME = "application/oebps-package+xml"; +const std::string XHTML_MIME = "application/xhtml+xml"; +const std::string NCX_MIME = "application/x-dtbncx+xml"; +const std::string PNG_MIME = "image/png"; +const std::string GIF_MIME = "image/gif"; +const std::string JPEG_MIME = "image/jpeg"; +const std::string SVG_MIME = "image/svg+xml"; +const std::string DTBOOK_MIME = "application/x-dtbook+xml"; +const std::string CSS_MIME = "text/css"; +const std::string XML_MIME = "application/xml"; // used for out-of-line xml islands +const std::string XPGT_MIME = "application/vnd.adobe-page-template+xml"; +const std::string OTF_MIME = "application/vnd.ms-opentype"; + +// For the "correct" truetype font mimetype, see this link +// http://mx.gw.com/pipermail/file/2009/000400.html +// Apparently ISO/IEC JTC 1/SC34 are working on a new font top-level medatype. But on +// the other hand they also recognize "application/x-font-ttf" as being the +// experimental (read: not standardized) defacto MIME type for Truetype fonts. +// Number of Google hits for all three possibilities: +// "application/x-truetype-font" 2100 +// "application/x-font-truetype" 4100 +// "application/x-font-ttf" 45900 +// +// So "application/x-font-ttf" it is. +const std::string TTF_MIME = "application/x-font-ttf"; +const std::string OEB_DOC_MIME = "text/x-oeb1-document"; +const std::string OEB_CSS_MIME = "text/x-oeb1-css"; + +const std::string UNKNOWN_MIME = "unknown"; + +// It's just an arbitrary num of starting chars +// that we search for a fingerprint. Things like +// "" should appear in this small section. +static const uint NUM_CHARS_FOR_FINGERPRINT = 1000; +static const boost::regex HTML_TAG_REGEX( "<\\s*html[^>]*>" ); + +static const std::string NCX_SYSTEM_ID = "-//NISO//DTD ncx 2005-1//EN"; +static const std::string DTBOOK_SYSTEM_ID = "-//NISO//DTD dtbook 2005-1//EN"; + +static const boost::regex NCX_TAG_REGEX( + "<[^>]*ncx[^>]*\"http://www.daisy.org/z3986/2005/ncx/\"[^>]*>" ); + +static const boost::regex XPGT_TEMPLATE_REGEX( + "<[^>]*template[^>]*\"http://ns.adobe.com/2006/ade\"[^>]*>" ); + +static const boost::regex DTBOOK_TAG_REGEX( + "<[^>]*dtbook[^>]*\"http://www.daisy.org/z3986/2005/dtbook/\"[^>]*>" ); + + +std::string MimetypeFromExtension( const fs::path &filepath ) +{ + std::string extension = Util::BoostPathToUtf8Path( filepath.extension() ); + boost::erase_first( extension, "." ); + + if ( extension == "xhtml" || + extension == "html" || + extension == "htm" ) + { + // Only the xhtml mimetype is valid + // within epub, "text/html" is not + return XHTML_MIME; + } + + if ( extension == "png" ) + + return PNG_MIME; + + if ( extension == "gif" ) + + return GIF_MIME; + + if ( extension == "jpg" || + extension == "jpeg" ) + { + return JPEG_MIME; + } + + if ( extension == "css" ) + + return CSS_MIME; + + if ( extension == "ncx" ) + + return NCX_MIME; + + if ( extension == "svg" ) + + return SVG_MIME; + + if ( extension == "otf" ) + + return OTF_MIME; + + if ( extension == "ttf" ) + + return TTF_MIME; + + // We don't check for "xml" because + // that's commonly used for several things. + + return UNKNOWN_MIME; +} + + +bool HasHtmlFingerprint( const std::string &contents ) +{ + return boost::regex_search( contents, HTML_TAG_REGEX ); +} + + +bool HasDtbookFingerprint( const std::string &contents ) +{ + return + boost::contains( contents, DTBOOK_SYSTEM_ID ) || + boost::regex_search( contents, DTBOOK_TAG_REGEX ); +} + + +bool HasNcxFingerprint( const std::string &contents ) +{ + return + boost::contains( contents, NCX_SYSTEM_ID ) || + boost::regex_search( contents, NCX_TAG_REGEX ); +} + + +bool HasXpgtFingerprint( const std::string &contents ) +{ + return boost::regex_search( contents, XPGT_TEMPLATE_REGEX ); +} + + +std::string GuessMimetypeFromFileContents( const fs::path &filepath ) +{ + std::string contents; + + try + { + contents = Util::ReadUnicodFile( filepath ); + } + + catch ( std::exception& ) + { + return UNKNOWN_MIME; + } + + std::string contents_start = Util::GetFirstNumChars( contents, NUM_CHARS_FOR_FINGERPRINT ); + + if ( HasHtmlFingerprint( contents_start ) ) + + return XHTML_MIME; + + if ( HasNcxFingerprint( contents_start ) ) + + return DTBOOK_MIME; + + if ( HasNcxFingerprint( contents_start ) ) + + return NCX_MIME; + + if ( HasXpgtFingerprint( contents_start ) ) + + return XPGT_MIME; + + return UNKNOWN_MIME; +} + + +std::string DetermineMimetype( const fs::path &filepath ) +{ + std::string mimetype = MimetypeFromExtension( filepath ); + + if ( mimetype != UNKNOWN_MIME ) + + return mimetype; + + return GuessMimetypeFromFileContents( filepath ); +} + + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Misc/DetermineMimetype.h b/src/FlightCrew/Misc/DetermineMimetype.h new file mode 100644 index 0000000..8f3ecb3 --- /dev/null +++ b/src/FlightCrew/Misc/DetermineMimetype.h @@ -0,0 +1,34 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef DETERMINEMIMETYPE_H +#define DETERMINEMIMETYPE_H + +#include "BoostFilesystemUse.h" + +namespace FlightCrew +{ + std::string DetermineMimetype( const fs::path &filepath ); + +} // namespace FlightCrew + +#endif // DETERMINEMIMETYPE_H diff --git a/src/FlightCrew/Misc/ErrorResultCollector.cpp b/src/FlightCrew/Misc/ErrorResultCollector.cpp new file mode 100644 index 0000000..9e5e1a9 --- /dev/null +++ b/src/FlightCrew/Misc/ErrorResultCollector.cpp @@ -0,0 +1,97 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ErrorResultCollector.h" +#include +#include + +namespace FlightCrew +{ + +void ErrorResultCollector::warning( const xc::SAXParseException &exception ) +{ + AddNewExceptionAsResult( exception ); +} + + +void ErrorResultCollector::error( const xc::SAXParseException &exception ) +{ + AddNewExceptionAsResult( exception ); +} + + +void ErrorResultCollector::fatalError( const xc::SAXParseException &exception ) +{ + AddNewExceptionAsResult( exception, true ); +} + + +void ErrorResultCollector::resetErrors() +{ + m_Results.clear(); +} + + +std::vector< Result > ErrorResultCollector::GetResults() +{ + return m_Results; +} + + +void ErrorResultCollector::AddNewExceptionAsResult( const xc::SAXParseException &exception, + bool xml_error ) +{ + ResultId id = xml_error ? ERROR_XML_NOT_WELL_FORMED : ERROR_SCHEMA_NOT_SATISFIED; + + m_Results.push_back( Result().SetCustomMessage( fromX( exception.getMessage() ) ) + .SetErrorColumn( (int) exception.getColumnNumber() ) + .SetErrorLine( (int) exception.getLineNumber() ) + .SetResultId( id ) + ); +} + + +void ErrorResultCollector::AddNewExceptionAsResult( const xc::SAXException &exception ) +{ + m_Results.push_back( Result().SetCustomMessage( fromX( exception.getMessage() ) ) + .SetResultId( ERROR_GENERIC ) + ); +} + + +void ErrorResultCollector::AddNewExceptionAsResult( const xc::XMLException &exception ) +{ + m_Results.push_back( Result().SetCustomMessage( fromX( exception.getMessage() ) ) + .SetErrorLine( (int) exception.getSrcLine() ) + .SetResultId( ERROR_GENERIC ) + ); +} + + +void ErrorResultCollector::AddNewExceptionAsResult( const xc::DOMException &exception ) +{ + m_Results.push_back( Result().SetCustomMessage( fromX( exception.getMessage() ) ) + .SetResultId( ERROR_GENERIC ) + ); +} + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Misc/ErrorResultCollector.h b/src/FlightCrew/Misc/ErrorResultCollector.h new file mode 100644 index 0000000..6b26b34 --- /dev/null +++ b/src/FlightCrew/Misc/ErrorResultCollector.h @@ -0,0 +1,67 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ERRORRESULTCOLLECTOR_H +#define ERRORRESULTCOLLECTOR_H + +#include +#include +namespace XERCES_CPP_NAMESPACE +{ class SAXParseException; class SAXException; class DOMException; } +namespace xc = XERCES_CPP_NAMESPACE; + +#include "Result.h" + +namespace FlightCrew +{ + +class ErrorResultCollector : public xc::ErrorHandler +{ +public: + + void warning( const xc::SAXParseException &exception ); + + void error( const xc::SAXParseException &exception ); + + void fatalError( const xc::SAXParseException &exception ); + + void resetErrors(); + + std::vector< Result > GetResults(); + + void AddNewExceptionAsResult( const xc::SAXParseException &exception, + bool xml_error = false ); + + void AddNewExceptionAsResult( const xc::SAXException &exception ); + + void AddNewExceptionAsResult( const xc::XMLException &exception ); + + void AddNewExceptionAsResult( const xc::DOMException &exception ); + +private: + + std::vector< Result > m_Results; +}; + +} // namespace FlightCrew + +#endif // ERRORRESULTCOLLECTOR_H diff --git a/src/FlightCrew/Misc/TempFolder.cpp b/src/FlightCrew/Misc/TempFolder.cpp new file mode 100644 index 0000000..ba2b682 --- /dev/null +++ b/src/FlightCrew/Misc/TempFolder.cpp @@ -0,0 +1,73 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "TempFolder.h" +#include + +namespace FlightCrew +{ + +static const char *UNIQUE_PATH_MODEL = "%%%%-%%%%-%%%%-%%%%-%%%%-%%%%-%%%%-%%%%"; +static const char *FC_TEMP_FOLDER = "flightcrew"; + +TempFolder::TempFolder() + : m_PathToFolder( GetNewTempFolderPath() ) +{ + fs::create_directories( m_PathToFolder ); +} + + +TempFolder::~TempFolder() +{ + fs::remove_all( m_PathToFolder ); +} + + +fs::path TempFolder::GetPath() +{ + return m_PathToFolder; +} + + +fs::path TempFolder::GetNewTempFolderPath() +{ +#ifdef _WIN32 + // The specified "c:\\temp" path will only be used + // when the TMP environment variable is undefined + // http://msdn.microsoft.com/en-us/library/hs3e7355.aspx + wchar_t *tmp_name = _wtempnam( L"c:\\temp", L"unused" ); + fs::path main_temp_folder = fs::path( tmp_name ).parent_path(); + free( tmp_name ); +#else + // GCC bitches and moans if we use tempnam(), so + // we'll just use the P_tmpdir macro. We can't use + // that on Win because it points to the drive root there + // instead of the system temp folder + // http://www.delorie.com/gnu/docs/glibc/libc_295.html + fs::path main_temp_folder = fs::path( P_tmpdir ); +#endif + + return main_temp_folder / fs::path( FC_TEMP_FOLDER ) / fs::unique_path( UNIQUE_PATH_MODEL ); +} + + +} // namespace FlightCrew diff --git a/src/FlightCrew/Misc/TempFolder.h b/src/FlightCrew/Misc/TempFolder.h new file mode 100644 index 0000000..78eab12 --- /dev/null +++ b/src/FlightCrew/Misc/TempFolder.h @@ -0,0 +1,54 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef TEMPFOLDER_H +#define TEMPFOLDER_H + +#include "Misc/BoostFilesystemUse.h" + +namespace FlightCrew +{ + +class TempFolder +{ +public: + + TempFolder(); + + ~TempFolder(); + + fs::path GetPath(); + +private: + + TempFolder& operator= ( const TempFolder& ); + TempFolder( const TempFolder& ); + + static fs::path GetNewTempFolderPath(); + + fs::path m_PathToFolder; + +}; + +} // namespace FlightCrew + +#endif // TEMPFOLDER_H diff --git a/src/FlightCrew/Misc/Utilities.cpp b/src/FlightCrew/Misc/Utilities.cpp new file mode 100644 index 0000000..7364fdf --- /dev/null +++ b/src/FlightCrew/Misc/Utilities.cpp @@ -0,0 +1,381 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Utilities.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +namespace FlightCrew +{ + +namespace Util +{ + +std::string ReadUnicodFile( const fs::path &filepath ) +{ + fs::ifstream file( filepath, std::ios::in | std::ios::binary ); + + if ( !file.is_open() ) + + boost_throw( FileDoesNotExistEx() << ei_FilePath( BoostPathToUtf8Path( filepath ) ) ); + + std::vector< char > contents( (std::istreambuf_iterator< char>( file )), + std::istreambuf_iterator< char>() ); + + // May as well be empty + if ( contents.size() < 2 ) + + return std::string(); + + if ( utf8::is_valid( contents.begin(), contents.end() ) ) + + return std::string( contents.begin(), contents.end() ); + + // UTF-16BE + if ( static_cast< unsigned char >( contents[ 0 ] ) == 0xfeU && + static_cast< unsigned char >( contents[ 1 ] ) == 0xffU ) + { + xc::TranscodeFromStr transcoder( + (const XMLByte*) &( *contents.begin() ), contents.size() , "UTF-16BE" ); + + xc::TranscodeToStr transcoder_utf8( transcoder.str(), "UTF-8" ); + + return std::string( (char*) transcoder_utf8.str() ); + } + + // UTF-16LE + else if ( static_cast< unsigned char >( contents[ 0 ] ) == 0xffU && + static_cast< unsigned char >( contents[ 1 ] ) == 0xfeU ) + { + xc::TranscodeFromStr transcoder( + (const XMLByte*) &( *contents.begin() ), contents.size(), "UTF-16LE" ); + + xc::TranscodeToStr transcoder_utf8( transcoder.str(), "UTF-8" ); + + return std::string( (char*) transcoder_utf8.str() ); + } + + else + { + boost_throw( FileNotInUnicodeEx() << ei_FilePath( filepath.generic_string() ) ); + } +} + + +std::string GetFirstNumChars( const std::string &string, uint num_chars ) +{ + if ( string.empty() ) + + return std::string(); + + uint string_size = static_cast< unsigned int >( string.size() ); + uint chars_to_copy = string_size < num_chars ? string_size : num_chars; + + std::string::const_iterator it = string.begin(); + std::advance( it, chars_to_copy ); + + std::string line; + line.resize( num_chars ); + + std::copy( string.begin(), it, line.begin() ); + + return line; +} + + +std::string GetFirstNumCharsFromFile( const fs::path &filepath, uint num_chars ) +{ + try + { + // TODO: Let's not load the entire file + std::string contents = Util::ReadUnicodFile( filepath ); + return GetFirstNumChars( contents, num_chars ); + } + + catch ( FileNotInUnicodeEx& ) + { + return std::string(); + } +} + + +int LineOfCharIndex( const std::string &string, unsigned int char_index ) +{ + // \x0A is the line feed char, + // \x0D is the carriage return char + + std::string line_marker; + + if ( string.find( "\x0A" ) != std::string::npos ) + + line_marker = "\x0A"; + + else + + line_marker = "\x0D"; + + size_t search_start = 0; + int count = 1; + + while ( true ) + { + size_t position = string.find( line_marker, search_start ); + + if ( position == std::string::npos || position > char_index ) + + break; + + ++count; + search_start = position + 1; + } + + return count; +} + + +boost::shared_ptr< xc::DOMDocument > RaiiWrapDocument( xc::DOMDocument *document ) +{ + return boost::shared_ptr< xc::DOMDocument >( document, XercesExt::XercesDeallocator< xc::DOMDocument > ); +} + + +boost::shared_ptr< xc::DOMDocument > LoadXmlDocument( const fs::path &filepath ) +{ + if ( filepath.empty() ) + + boost_throw( XercesParsingError() ); + + xe::LocationAwareDOMParser parser; + + // This scanner ignores schemas and DTDs + parser.useScanner( xc::XMLUni::fgWFXMLScanner ); + parser.setValidationScheme( xc::AbstractDOMParser::Val_Never ); + parser.setDoNamespaces( true ); + + parser.parse( toX( BoostPathToUtf8Path( filepath ) ) ); + + xc::DOMDocument *document = parser.adoptDocument(); + + if ( !document ) + + boost_throw( XercesParsingError() ); + + return RaiiWrapDocument( document ); +} + + +boost::shared_ptr< xc::DOMDocument > LoadXhtmlDocument( const fs::path &filepath ) +{ + if ( filepath.empty() ) + + boost_throw( XercesParsingError() ); + + xe::LocationAwareDOMParser parser; + + parser.setDoSchema( false ); + parser.setLoadSchema( false ); + parser.setSkipDTDValidation( true ); + parser.setDoNamespaces( true ); + parser.useCachedGrammarInParse( true ); + + parser.setValidationScheme( xc::AbstractDOMParser::Val_Never ); + + // This scanner ignores schemas, but does use DTDs + parser.useScanner( xc::XMLUni::fgDGXMLScanner ); + + const xc::MemBufInputSource input( XHTML11_FLAT_DTD, + XHTML11_FLAT_DTD_LEN, + toX( XHTML11_FLAT_DTD_ID ) ); + + parser.loadGrammar( input, xc::Grammar::DTDGrammarType, true ); + + parser.parse( toX( BoostPathToUtf8Path( filepath ) ) ); + + xc::DOMDocument *document = parser.adoptDocument(); + + if ( !document ) + + boost_throw( XercesParsingError() ); + + return RaiiWrapDocument( document ); +} + + +char CharFromTwoHex( std::string two_hex_chars ) +{ + std::istringstream stream( two_hex_chars ); + int int_value; + stream >> std::hex >> int_value; + + return static_cast< char >( int_value ); +} + + +std::string UrlDecode( const std::string &encoded_url ) +{ + std::string decoded; + decoded.reserve( encoded_url.size() ); + + uint i = 0; + while ( i < encoded_url.size() ) + { + if ( encoded_url[ i ] == '%' && + i + 2 < encoded_url.size() ) + { + decoded += CharFromTwoHex( encoded_url.substr( i + 1, 2 ) ); + i += 3; + } + + else + { + decoded += encoded_url[ i ]; + ++i; + } + } + + return decoded; +} + + +std::string GetUrlFragment( const std::string &decoded_url ) +{ + int hash_location = static_cast< int >( decoded_url.find( '#' ) ); + + if ( hash_location != -1 && + hash_location + 1 < static_cast< int >( decoded_url.size() ) ) + { + return decoded_url.substr( hash_location + 1, decoded_url.size() ); + } + + return std::string(); +} + + +std::string UrlWithoutFragment( const std::string &decoded_url ) +{ + int hash_location = static_cast< int >( decoded_url.find( '#' ) ); + + if ( hash_location != -1 ) + + return decoded_url.substr( 0, hash_location ); + + return decoded_url; +} + + +std::string UrlWithoutFileScheme( const std::string &decoded_url ) +{ + if ( boost::starts_with( decoded_url, "file://" ) ) + + return boost::erase_first_copy( decoded_url, "file://" ); + + return decoded_url; +} + + + +fs::path NormalizePath( const fs::path &filepath ) +{ + std::string path_string = BoostPathToUtf8Path( filepath ); + boost::regex up_dir_regex( "[^/]+/\\.\\./" ); + + while ( true ) + { + std::string old_path = path_string; + path_string = boost::erase_all_regex_copy( path_string, up_dir_regex ); + + if ( path_string == old_path ) + + break; + } + + boost::regex current_dir_regex( "(?<=/)\\./" ); + + while ( true ) + { + std::string old_path = path_string; + path_string = boost::erase_all_regex_copy( path_string, current_dir_regex ); + + if ( path_string == old_path ) + + break; + } + + return Utf8PathToBoostPath( path_string ); +} + + +fs::path Utf8PathToBoostPath( const std::string &utf8_path ) +{ + if ( utf8_path.empty() ) + + return fs::path(); + + if ( !utf8::is_valid( utf8_path.begin(), utf8_path.end() ) ) + + boost_throw( PathNotInUtf8() << ei_FilePath( utf8_path ) ); + + boost::filesystem::detail::utf8_codecvt_facet utf8facet; + return fs::path( utf8_path, utf8facet ); +} + + +std::string BoostPathToUtf8Path( const fs::path &filepath ) +{ + if ( filepath.empty() ) + + return std::string(); + + boost::filesystem::detail::utf8_codecvt_facet utf8facet; + return filepath.generic_string( utf8facet ); +} + + +// Taking by const ref and making a copy could be costly, +// but you know what they say about premature optimization. +// If the profiler ends up screaming at this, then we'll refactor. +std::vector< Result > AddPathToResults( const std::vector< Result > &results, const fs::path &filepath ) +{ + std::vector< Result > mod_results = results; + + foreach( Result &result, mod_results ) + { + if ( result.GetFilepath().empty() ) + + result.SetFilepath( BoostPathToUtf8Path( filepath ) ); + } + + return mod_results; +} + + +} // namespace Util + +} // namespace FlightCrew diff --git a/src/FlightCrew/Misc/Utilities.h b/src/FlightCrew/Misc/Utilities.h new file mode 100644 index 0000000..30eb767 --- /dev/null +++ b/src/FlightCrew/Misc/Utilities.h @@ -0,0 +1,157 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef UTILITIES_H +#define UTILITIES_H + +#include +#include +#include +#include +#include "Misc/BoostFilesystemUse.h" +#include "XercesHUse.h" +#include "Result.h" + +namespace FlightCrew +{ + +namespace Util +{ + std::string ReadUnicodFile( const fs::path &filepath ); + + std::string GetFirstNumChars( const std::string &string, unsigned int num_chars ); + + std::string GetFirstNumCharsFromFile( const fs::path &filepath, unsigned int num_chars ); + + int LineOfCharIndex( const std::string &string, unsigned int char_index ); + + boost::shared_ptr< xc::DOMDocument > LoadXmlDocument( const fs::path &filepath ); + + boost::shared_ptr< xc::DOMDocument > LoadXhtmlDocument( const fs::path &filepath ); + + std::string UrlDecode( const std::string &encoded_url ); + + std::string GetUrlFragment( const std::string &decoded_url ); + + std::string UrlWithoutFragment( const std::string &decoded_url ); + + std::string UrlWithoutFileScheme( const std::string &decoded_url ); + + fs::path NormalizePath( const fs::path &filepath ); + + fs::path Utf8PathToBoostPath( const std::string &utf8_path ); + + std::string BoostPathToUtf8Path( const fs::path &filepath ); + + std::vector< Result > AddPathToResults( const std::vector< Result > &results, const fs::path &filepath ); + + template< typename T > + void RemoveDuplicates( std::vector &vector ) + { + std::sort( vector.begin(), vector.end() ); + vector.erase( std::unique( vector.begin(), vector.end() ), vector.end() ); + } + + template< typename T > + bool Contains( const std::vector &vector, const T &value ) + { + return std::find( vector.begin(), vector.end(), value ) != vector.end(); + } + + template< typename T > + std::vector& Extend( std::vector &base_vector, const std::vector &extension_vector ) + { + base_vector.insert( base_vector.end(), extension_vector.begin(), extension_vector.end() ); + return base_vector; + } + + template< typename T > + std::vector& SortedInPlace( std::vector &vector ) + { + std::sort( vector.begin(), vector.end() ); + return vector; + } + + // The STL algos for set union and intersection + // only work for sorted ranges, which boost::unordered_sets aren't. + template< typename T > + boost::unordered_set< T > SetIntersection( + const boost::unordered_set< T > &first, + const boost::unordered_set< T > &second ) + { + boost::unordered_set< T > intersection; + + // We will iterate over the smaller set + // and check presence in the larger one + // for the sake of performance. + if ( second.size() < first.size() ) + + return SetIntersection( second, first ); + + for ( typename boost::unordered_set< T > ::const_iterator it = first.begin(); + it != first.end(); + ++it ) + { + if ( second.find( *it ) != second.end() ) + + intersection.insert( *it ); + } + + return intersection; + } + + template< typename T > + boost::unordered_set< T > SetUnion( + const boost::unordered_set< T > &first, + const boost::unordered_set< T > &second ) + { + boost::unordered_set< T > union_set; + union_set.insert( first .begin(), first .end() ); + union_set.insert( second.begin(), second.end() ); + + return union_set; + } + + template< typename T > + boost::unordered_set< T > SetSubtraction( + const boost::unordered_set< T > &first, + const boost::unordered_set< T > &second ) + { + boost::unordered_set< T > subtracted; + + for ( typename boost::unordered_set< T >::const_iterator it = first.begin(); + it != first.end(); + ++it ) + { + if ( second.find( *it ) == second.end() ) + + subtracted.insert( *it ); + } + + return subtracted; + } + +} // namespace Util + +} // namespace FlightCrew + +#endif // UTILITIES_H diff --git a/src/FlightCrew/Misc/XercesHUse.h b/src/FlightCrew/Misc/XercesHUse.h new file mode 100644 index 0000000..12219e4 --- /dev/null +++ b/src/FlightCrew/Misc/XercesHUse.h @@ -0,0 +1,38 @@ +/************************************************************************ +** +** Copyright (C) 2009, 2010 Strahinja Markovic +** +** This file is part of Sigil. +** +** Sigil is free software: you can redistribute it and/or modify +** it under the terms of the GNU General Public License as published by +** the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** Sigil is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU General Public License for more details. +** +** You should have received a copy of the GNU General Public License +** along with Sigil. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef XERCEHSUSE_H +#define XERCEHSUSE_H + +#include +namespace XERCES_CPP_NAMESPACE +{ + class DOMNode; + class DOMAttr; + class DOMDocument; + class DOMDocumentFragment; + class DOMElement; + class DOMNodeList; +}; +namespace xc = XERCES_CPP_NAMESPACE; + +#endif // XERCEHSUSE_H \ No newline at end of file diff --git a/src/FlightCrew/Result.cpp b/src/FlightCrew/Result.cpp new file mode 100644 index 0000000..acdf22f --- /dev/null +++ b/src/FlightCrew/Result.cpp @@ -0,0 +1,182 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Result.h" +#include "ErrorMessages.h" + +namespace FlightCrew +{ + +Result::Result( ResultId result_id, xe::NodeLocationInfo node_location ) + : + m_ResultId( result_id ), + m_ErrorLine( node_location.LineNumber ), + m_ErrorColumn( node_location.ColumnNumber ) +{ + +} + +ResultType Result::GetResultType() const +{ + if ( static_cast< int >( m_ResultId ) < static_cast< int >( ResultType_WARNING ) ) + + return ResultType_ERROR; + + return ResultType_WARNING; +} + + +ResultId Result::GetResultId() const +{ + return m_ResultId; +} + + +Result& Result::SetResultId( ResultId result_id ) +{ + m_ResultId = result_id; + return *this; +} + + +int Result::GetErrorLine() const +{ + return m_ErrorLine; +} + + +Result& Result::SetErrorLine( int error_line ) +{ + m_ErrorLine = error_line; + return *this; +} + + +int Result::GetErrorColumn() const +{ + return m_ErrorColumn; +} + + +Result& Result::SetErrorColumn( int error_line ) +{ + m_ErrorColumn = error_line; + return *this; +} + + +std::string Result::GetFilepath() const +{ + return m_Filepath; +} + + +Result& Result::SetFilepath( const std::string &filepath ) +{ + m_Filepath = filepath; + return *this; +} + + +Result& Result::AddMessageArgument( const std::string &message_argument ) +{ + m_MessageArguments.push_back( message_argument ); + return *this; +} + + +Result& Result::SetMessageArguments( const std::vector< std::string > &message_arguments ) +{ + m_MessageArguments = message_arguments; + return *this; +} + + +const std::vector< std::string > & Result::GetMessageArguments() const +{ + return m_MessageArguments; +} + + +std::string Result::GetMessage() const +{ + if ( !m_CustomMessage.empty() ) + + return m_CustomMessage; + + boost::format formatter( ErrorMessages::Instance().MessageForId( m_ResultId ) ); + + foreach( std::string argument, m_MessageArguments ) + { + formatter % argument; + } + + return formatter.str(); +} + + +Result& Result::SetCustomMessage( const std::string &custom_message ) +{ + m_CustomMessage = custom_message; + return *this; +} + + +bool Result::operator< ( const Result& other ) const +{ + // Yes, this is ugly but it also needs to be fast. + // We need to make sure that all private vars are + // included because some STL algos uses two "<" + // operations to check for equality. Since this is + // called freaking everywhere, we have to make sure + // only the required comparisons are made, and no more. + + return + m_Filepath != other.m_Filepath ? + m_Filepath < other.m_Filepath : + m_ErrorLine != other.m_ErrorLine ? + m_ErrorLine < other.m_ErrorLine : + m_ErrorColumn != other.m_ErrorColumn ? + m_ErrorColumn < other.m_ErrorColumn : + m_ResultId != other.m_ResultId ? + m_ResultId < other.m_ResultId : + m_CustomMessage != other.m_CustomMessage ? + m_CustomMessage < other.m_CustomMessage : + m_MessageArguments < other.m_MessageArguments; +} + + +bool Result::operator==( const Result& other ) const +{ + return + m_ResultId == other.m_ResultId && + m_ErrorLine == other.m_ErrorLine && + m_ErrorColumn == other.m_ErrorColumn && + m_Filepath == other.m_Filepath && + m_CustomMessage == other.m_CustomMessage && + m_MessageArguments == other.m_MessageArguments; +} + + +} // namespace FlightCrew + + diff --git a/src/FlightCrew/Result.h b/src/FlightCrew/Result.h new file mode 100644 index 0000000..941d861 --- /dev/null +++ b/src/FlightCrew/Result.h @@ -0,0 +1,220 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef RESULT_H +#define RESULT_H + +#include +#include +#include +#include "ResultId.h" +#include "DllExporting.h" + +#if defined(_MSC_VER) +// This warning complains that the private members +// of this class that use the STL are not being exported +// for use by clients. +// Since the clients can't even access the private members +// of this class, it's not a problem. +# pragma warning( disable : 4251 ) +#endif + +namespace FlightCrew +{ + +/** + * Defines a validation result, usually a warning or error. + * Users that just want to consume a prepared Result should + * look at the GetErrorLine, GetErrorColumn and GetMessage + * member functions. + */ +class FC_WIN_DLL_API Result +{ + +public: + + /** + * Constructor. + * + * @param result_id The ID of the Result. + * @param node_location The DOM node location where the result was found. + */ + Result( ResultId result_id = ALL_OK, + XercesExt::NodeLocationInfo node_location = XercesExt::NodeLocationInfo() ); + + /** + * Returns the type of the Result, either a warning or an error. + * + * @return The type of the Result. + */ + ResultType GetResultType() const; + + /** + * Returns the ID of the Result. + * + * @return The ID. + */ + ResultId GetResultId() const; + + /** + * Sets the Result's ID. + * + * @param result_id The new ID. + * @return A reference to this result, for easy function chaining. + */ + Result& SetResultId( ResultId result_id ); + + /** + * Returns the error line number. + * + * @return The line number. + */ + int GetErrorLine() const; + + /** + * Sets the Result's error line number. + * + * @param result_id The new line number. + * @return A reference to this result, for easy function chaining. + */ + Result& SetErrorLine( int error_line ); + + /** + * Returns the error column number. + * + * @return The column number. + */ + int GetErrorColumn() const; + + /** + * Sets the Result's error column number. + * @note This is usually unreliable information because of the way + * Xerces works with XSD's. It's going to be in the ballpark, but + * it won't (usually) have the precision you want. + * + * @param result_id The new column number. + * @return A reference to this result, for easy function chaining. + */ + Result& SetErrorColumn( int error_column ); + + /** + * Returns the path to the file in which this Result occurs. + * The path is relative to the root of the epub document. + * + * @return The path in UTF-8. + */ + std::string GetFilepath() const; + + /** + * Sets the path to the file in which this Result occurs. + * The path should be relative to the root of the epub document. + * + * @param filepath The new path in UTF-8. + * @return A reference to this result, for easy function chaining. + */ + Result& SetFilepath( const std::string &filepath ); + + /** + * Adds a message argument that fills in a placeholder in the + * message that applies to this Result's ID. The order in which + * the arguments are added is the order in which they will replace + * the placeholders. + * + * @param message_argument The argument in UTF-8. + * @return A reference to this result, for easy function chaining. + */ + Result& AddMessageArgument( const std::string &message_argument ); + + /** + * Sets all the message arguments that will fill in the placeholders + * in the message that applies to this Result's ID. The order in which + * the arguments are added is the order in which they will replace + * the placeholders. + * + * @param message_arguments The arguments in UTF-8. + * @return A reference to this result, for easy function chaining. + */ + Result& SetMessageArguments( const std::vector< std::string > &message_arguments ); + + /** + * Returns all the stored message arguments. + * + * @return The current message arguments. + */ + const std::vector< std::string > &GetMessageArguments() const; + + /** + * Returns the error message for this Result with all the + * message arguments already applied. + */ + std::string GetMessage() const; + + /** + * Sets a custom message for this Result. This overrides the template + * message for Results with this ID and ignores all stored message arguments. + */ + Result& SetCustomMessage( const std::string &custom_message ); + + bool operator< ( const Result& other ) const; + + bool operator== ( const Result& other ) const; + +private: + + /////////////////////////////// + // PRIVATE MEMBER VARIABLES + /////////////////////////////// + + /** + * The Result's ID. + */ + ResultId m_ResultId; + + /** + * The line where this Result was found in the content document. + */ + int m_ErrorLine; + + /** + * The column in the line where this Result was found in the content document. + */ + int m_ErrorColumn; + + /** + * The message arguments for the placeholders in the message template. + */ + std::vector< std::string > m_MessageArguments; + + /** + * A custom message that overrides the template one. + */ + std::string m_CustomMessage; + + /** + * The relative path to the file where the Result was found. + */ + std::string m_Filepath; +}; + +} // namespace FlightCrew + +#endif // RESULT_H diff --git a/src/FlightCrew/ResultId.h b/src/FlightCrew/ResultId.h new file mode 100644 index 0000000..43a4a79 --- /dev/null +++ b/src/FlightCrew/ResultId.h @@ -0,0 +1,89 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef RESULTID_H +#define RESULTID_H + +#include "ResultType.h" + +namespace FlightCrew +{ + +enum ResultId +{ + ALL_OK = 100, + UNABLE_TO_PERFORM_VALIDATION, + + ERROR_GENERIC = 300, + ERROR_SCHEMA_NOT_SATISFIED, + + ERROR_EPUB_NOT_VALID_ZIP_ARCHIVE = 500, + ERROR_EPUB_NO_CONTAINER_XML, + ERROR_EPUB_MIMETYPE_BYTES_INVALID, + + ERROR_OCF_CONTAINER_DOESNT_LIST_OPF = 700, + ERROR_OCF_CONTAINER_SPECIFIED_OPF_DOESNT_EXIST, + + ERROR_XML_NOT_WELL_FORMED = 900, + ERROR_XML_ELEMENT_NOT_PRESENT, + ERROR_XML_WRONG_ELEMENT_COUNT, + ERROR_XML_CHILD_NOT_RECOGNIZED, + ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED, + ERROR_XML_REQUIRED_ATTRIBUTE_MISSING, + ERROR_XML_ID_NOT_UNIQUE, + ERROR_XML_BAD_ID_VALUE, + ERROR_XML_SPECIFIES_NEITHER_UTF8_NOR_UTF16, + ERROR_XML_BYTESTREAM_NEITHER_UTF8_NOR_UTF16, + + ERROR_OPF_PACKAGE_NOT_ROOT = 1100, + ERROR_OPF_IDREF_ID_DOES_NOT_EXIST, + ERROR_OPF_IDREF_NOT_UNIQUE, + ERROR_OPF_BAD_SPINE_TOC_VALUE, + ERROR_OPF_PACKAGE_UNIQUE_IDENTIFIER_DOES_NOT_EXIST, + ERROR_OPF_BAD_PACKAGE_VERSION, + ERROR_OPF_BAD_ITEM_LINEAR_VALUE, + ERROR_OPF_BAD_ITEM_MEDIA_TYPE_VALUE, + ERROR_OPF_BAD_CREATOR_OR_CONTRIBUTOR_ROLE_VALUE, + ERROR_OPF_BAD_REFERENCE_TYPE_VALUE, + ERROR_OPF_BAD_DATE_VALUE, + ERROR_OPF_ITEM_HREF_INVALID_URI, + ERROR_OPF_ITEM_HREF_HAS_FRAGMENT, + ERROR_OPF_ITEM_HREF_NOT_UNIQUE, + ERROR_OPF_ITEM_REQMOD_WITHOUT_REQNS, + ERROR_OPF_ITEM_FILE_DOESNT_EXIST, + ERROR_OPF_NCX_NOT_PRESENT, + ERROR_OPF_REACHABLE_OPS_DOC_NOT_IN_SPINE, + ERROR_OPF_REACHABLE_RESOURCE_NOT_IN_MANIFEST, + + ERROR_NCX_CONTENT_FILE_DOES_NOT_EXIST = 1300, + ERROR_NCX_CONTENT_FRAGMENT_DOES_NOT_EXIST, + + ERROR_XHTML_BAD_DTD = 1500, + + WARNING_GENERIC = ResultType_WARNING, + + WARNING_OPF_RESOURCE_IN_MANIFEST_NOT_REACHABLE = ResultType_WARNING + 200 +}; + +} // namespace FlightCrew + +#endif // RESULTID_H diff --git a/src/FlightCrew/ResultType.h b/src/FlightCrew/ResultType.h new file mode 100644 index 0000000..7b96c2b --- /dev/null +++ b/src/FlightCrew/ResultType.h @@ -0,0 +1,37 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef RESULTTYPE_H +#define RESULTTYPE_H + +namespace FlightCrew +{ + +enum ResultType +{ + ResultType_ERROR = 0, + ResultType_WARNING = 2000, +}; + +} // namespace FlightCrew + +#endif // RESULTTYPE_H diff --git a/src/FlightCrew/Schemas/AsSources/ContainerXsd.cpp b/src/FlightCrew/Schemas/AsSources/ContainerXsd.cpp new file mode 100644 index 0000000..a4b1823 --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/ContainerXsd.cpp @@ -0,0 +1,165 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + OCF META-INF/container.xml, XSD + + Specification: http://www.idpf.org/doc_library/epub/OCF_2.0.1_draft.doc + + Namespace: urn:oasis:names:tc:opendocument:xmlns:container + + Created by hand. + + */ + +namespace FlightCrew +{ + +const char* CONTAINER_XSD_NS = "urn:oasis:names:tc:opendocument:xmlns:container"; +const char* CONTAINER_XSD_ID = "container.xsd"; +const unsigned int CONTAINER_XSD_LEN = 1437; +const unsigned char CONTAINER_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, + 0x3f, 0x3e, 0x0d, 0x0a, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x73, 0x3d, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, + 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x20, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x71, 0x75, 0x61, 0x6c, 0x69, + 0x66, 0x69, 0x65, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x3d, 0x22, 0x75, 0x72, 0x6e, 0x3a, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x3a, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x3a, 0x74, 0x63, 0x3a, 0x6f, 0x70, 0x65, + 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x3a, 0x78, 0x6d, + 0x6c, 0x6e, 0x73, 0x3a, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, + 0x72, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, + 0x63, 0x6f, 0x6e, 0x3d, 0x22, 0x75, 0x72, 0x6e, 0x3a, 0x6f, 0x61, 0x73, + 0x69, 0x73, 0x3a, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x3a, 0x74, 0x63, 0x3a, + 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x3a, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x63, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x65, 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, + 0x6e, 0x65, 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x72, 0x6f, 0x6f, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x3a, 0x72, 0x6f, 0x6f, + 0x74, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x79, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, + 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x6d, 0x69, 0x6e, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, + 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, + 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x79, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, + 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x6f, 0x74, 0x66, 0x69, 0x6c, 0x65, + 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x6f, 0x74, 0x66, 0x69, + 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x63, 0x6f, + 0x6e, 0x3a, 0x72, 0x6f, 0x6f, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, + 0x78, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x3d, 0x22, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x79, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, + 0x78, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x3d, 0x22, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x72, 0x6f, 0x6f, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x79, 0x20, 0x70, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, 0x74, + 0x68, 0x65, 0x72, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x75, 0x6c, 0x6c, 0x2d, 0x70, 0x61, 0x74, + 0x68, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x79, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, + 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x3e, 0x0d, 0x0a +}; + + +} //namespace FlightCrew diff --git a/src/FlightCrew/Schemas/AsSources/EncryptionXsd.cpp b/src/FlightCrew/Schemas/AsSources/EncryptionXsd.cpp new file mode 100644 index 0000000..b6a7541 --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/EncryptionXsd.cpp @@ -0,0 +1,97 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + OCF META-INF/encryption.xml, XSD + + Specification: http://www.idpf.org/doc_library/epub/OCF_2.0.1_draft.doc + + Namespace: urn:oasis:names:tc:opendocument:xmlns:container + + Created by hand. + + */ + +namespace FlightCrew +{ + +const char* ENCRYPTION_XSD_ID = "encryption.xsd"; +const unsigned int ENCRYPTION_XSD_LEN = 627; +const unsigned char ENCRYPTION_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, + 0x3f, 0x3e, 0x0d, 0x0a, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x3d, 0x22, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x22, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x75, + 0x72, 0x6e, 0x3a, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x3a, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x3a, 0x74, 0x63, 0x3a, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x3a, 0x78, 0x6d, 0x6c, 0x6e, 0x73, + 0x3a, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x22, 0x0d, + 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x65, 0x6e, 0x63, + 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, + 0x2f, 0x30, 0x34, 0x2f, 0x78, 0x6d, 0x6c, 0x65, 0x6e, 0x63, 0x23, 0x22, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, + 0x73, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, + 0x31, 0x2f, 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, + 0x20, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x78, 0x6d, + 0x6c, 0x65, 0x6e, 0x63, 0x23, 0x22, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x78, + 0x65, 0x6e, 0x63, 0x2d, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x78, + 0x73, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x65, 0x6e, 0x63, 0x72, 0x79, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x65, 0x6e, 0x63, 0x3a, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, + 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x65, 0x6e, 0x63, 0x3a, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, + 0x64, 0x4b, 0x65, 0x79, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, + 0x0a, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x3e, 0x0d, 0x0a +}; + + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Schemas/AsSources/Ncx20051Dtd.cpp b/src/FlightCrew/Schemas/AsSources/Ncx20051Dtd.cpp new file mode 100644 index 0000000..7482519 --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/Ncx20051Dtd.cpp @@ -0,0 +1,969 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + Navigation Control for XML applications 2005-1 DTD + + Specification: http://www.niso.org/workrooms/daisy/Z39-86-2005.html#NCX + + Namespace: http://www.daisy.org/z3986/2005/ncx/ + + Taken from: http://www.daisy.org/z3986/2005/ncx-2005-1.dtd + + This DTD module is identified by the PUBLIC and SYSTEM identifiers: + + PUBLIC "-//NISO//DTD ncx 2005-1//EN" + SYSTEM "http://www.daisy.org/z3986/2005/ncx-2005-1.dtd" + + */ + +namespace FlightCrew +{ + +const char* NCX_2005_1_DTD_ID = "http://www.daisy.org/z3986/2005/ncx-2005-1.dtd"; +const unsigned int NCX_2005_1_DTD_LEN = 11050; +const unsigned char NCX_2005_1_DTD[] = { + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4e, 0x43, 0x58, 0x20, 0x32, 0x30, 0x30, + 0x35, 0x2d, 0x31, 0x20, 0x44, 0x54, 0x44, 0x20, 0x20, 0x32, 0x30, 0x30, + 0x35, 0x2d, 0x30, 0x36, 0x2d, 0x32, 0x36, 0x0d, 0x0a, 0x66, 0x69, 0x6c, + 0x65, 0x3a, 0x20, 0x6e, 0x63, 0x78, 0x2d, 0x32, 0x30, 0x30, 0x35, 0x2d, + 0x31, 0x2e, 0x64, 0x74, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x20, 0x41, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x73, 0x3a, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x20, 0x48, 0x61, + 0x6b, 0x6b, 0x69, 0x6e, 0x65, 0x6e, 0x2c, 0x20, 0x47, 0x65, 0x6f, 0x72, + 0x67, 0x65, 0x20, 0x4b, 0x65, 0x72, 0x73, 0x63, 0x68, 0x65, 0x72, 0x2c, + 0x20, 0x54, 0x6f, 0x6d, 0x20, 0x4d, 0x63, 0x4c, 0x61, 0x75, 0x67, 0x68, + 0x6c, 0x69, 0x6e, 0x2c, 0x20, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x50, + 0x72, 0x69, 0x74, 0x63, 0x68, 0x65, 0x74, 0x74, 0x2c, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x4d, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6c, 0x20, 0x4d, 0x6f, + 0x6f, 0x64, 0x69, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x3a, 0x0d, 0x0a, 0x20, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x2d, 0x30, 0x32, 0x2d, 0x31, 0x32, 0x20, 0x4d, + 0x2e, 0x20, 0x4d, 0x6f, 0x6f, 0x64, 0x69, 0x65, 0x2e, 0x20, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x6e, + 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x65, 0x6c, 0x69, 0x6d, 0x69, + 0x6e, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x69, + 0x74, 0x79, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2d, + 0x30, 0x32, 0x2d, 0x32, 0x37, 0x20, 0x4d, 0x2e, 0x20, 0x4d, 0x6f, 0x6f, + 0x64, 0x69, 0x65, 0x2e, 0x20, 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x74, + 0x69, 0x63, 0x61, 0x6c, 0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, + 0x20, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x62, + 0x79, 0x20, 0x65, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x32, 0x30, 0x30, 0x34, 0x2d, 0x30, 0x33, 0x2d, 0x33, 0x31, 0x20, + 0x4a, 0x2e, 0x20, 0x50, 0x72, 0x69, 0x74, 0x63, 0x68, 0x65, 0x74, 0x74, + 0x2e, 0x20, 0x20, 0x56, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x20, 0x63, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x32, 0x30, 0x30, 0x34, 0x20, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x3a, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, 0x66, 0x72, 0x6f, + 0x6d, 0x20, 0x31, 0x2e, 0x31, 0x2e, 0x30, 0x20, 0x74, 0x6f, 0x20, 0x31, + 0x2e, 0x32, 0x2e, 0x30, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, 0x4d, 0x61, 0x64, 0x65, + 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x20, 0x63, 0x6c, 0x69, 0x70, 0x42, + 0x65, 0x67, 0x69, 0x6e, 0x2f, 0x63, 0x6c, 0x69, 0x70, 0x45, 0x6e, 0x64, + 0x20, 0x6d, 0x61, 0x6e, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x28, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x23, 0x31, 0x30, 0x29, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2d, 0x20, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x6e, 0x61, 0x76, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x28, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x20, 0x23, 0x31, 0x31, 0x29, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, 0x52, 0x65, 0x70, + 0x6c, 0x61, 0x63, 0x65, 0x64, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x28, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x23, 0x31, 0x32, 0x29, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2d, 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x3c, 0x70, 0x61, + 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x3e, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x3c, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x3e, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x28, 0x63, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x23, 0x34, 0x38, 0x29, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2d, 0x20, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x20, 0x6f, 0x6e, + 0x46, 0x6f, 0x63, 0x75, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6f, 0x6e, + 0x42, 0x6c, 0x75, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x6e, 0x61, 0x76, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6e, 0x61, + 0x76, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x28, 0x63, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x20, 0x23, 0x34, 0x39, 0x29, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, + 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x3c, 0x69, 0x6d, 0x67, 0x3e, 0x20, + 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x6f, 0x63, + 0x54, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x64, 0x6f, + 0x63, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x20, 0x28, 0x63, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x20, 0x23, 0x35, 0x30, 0x29, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, + 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x20, 0x72, 0x65, 0x66, 0x65, + 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x61, 0x67, + 0x65, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x6e, 0x61, 0x76, + 0x4c, 0x69, 0x73, 0x74, 0x20, 0x28, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x20, 0x23, 0x35, 0x32, 0x29, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, 0x41, 0x64, 0x64, + 0x65, 0x64, 0x20, 0x3c, 0x6e, 0x61, 0x76, 0x49, 0x6e, 0x66, 0x6f, 0x3e, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x28, 0x63, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x20, 0x23, 0x35, 0x33, 0x29, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, + 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x74, + 0x6f, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x3c, 0x6e, 0x63, 0x78, 0x3e, 0x20, 0x28, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x23, 0x4c, 0x38, 0x29, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2d, 0x20, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x20, 0x70, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x66, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, + 0x61, 0x70, 0x52, 0x65, 0x66, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x0d, 0x0a, 0x20, 0x20, 0x32, 0x30, 0x30, 0x34, + 0x2d, 0x30, 0x34, 0x2d, 0x30, 0x35, 0x20, 0x4a, 0x2e, 0x20, 0x50, 0x72, + 0x69, 0x74, 0x63, 0x68, 0x65, 0x74, 0x74, 0x2e, 0x20, 0x20, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20, + 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x20, 0x66, 0x72, 0x6f, + 0x6d, 0x20, 0x4d, 0x4d, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x4d, 0x47, 0x20, + 0x74, 0x6f, 0x20, 0x32, 0x30, 0x30, 0x34, 0x2d, 0x30, 0x33, 0x2d, 0x33, + 0x31, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, + 0x20, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, 0x66, 0x72, + 0x6f, 0x6d, 0x20, 0x31, 0x2e, 0x32, 0x2e, 0x30, 0x20, 0x74, 0x6f, 0x20, + 0x31, 0x2e, 0x31, 0x2e, 0x32, 0x20, 0x28, 0x70, 0x65, 0x72, 0x20, 0x4d, + 0x4d, 0x20, 0x65, 0x2d, 0x6d, 0x61, 0x69, 0x6c, 0x20, 0x6f, 0x66, 0x20, + 0x33, 0x2f, 0x33, 0x31, 0x29, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x64, 0x20, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x20, 0x74, + 0x6f, 0x20, 0x75, 0x73, 0x65, 0x20, 0x7a, 0x33, 0x39, 0x38, 0x36, 0x2f, + 0x32, 0x30, 0x30, 0x34, 0x20, 0x61, 0x73, 0x20, 0x70, 0x61, 0x74, 0x68, + 0x20, 0x69, 0x6e, 0x73, 0x74, 0x65, 0x61, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x7a, 0x33, 0x39, 0x38, 0x36, 0x2f, 0x76, 0x31, 0x30, 0x30, 0x20, 0x28, + 0x70, 0x65, 0x72, 0x20, 0x33, 0x2f, 0x33, 0x31, 0x20, 0x63, 0x6f, 0x6e, + 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x29, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, 0x41, 0x64, + 0x64, 0x65, 0x64, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x62, + 0x6f, 0x74, 0x68, 0x20, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x61, 0x67, 0x65, 0x4c, + 0x69, 0x73, 0x74, 0x20, 0x28, 0x70, 0x65, 0x72, 0x20, 0x4d, 0x47, 0x20, + 0x65, 0x2d, 0x6d, 0x61, 0x69, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x34, 0x2f, + 0x31, 0x29, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x61, 0x67, 0x65, + 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6e, + 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x28, 0x70, 0x65, + 0x72, 0x20, 0x4d, 0x4d, 0x20, 0x65, 0x2d, 0x6d, 0x61, 0x69, 0x6c, 0x20, + 0x6f, 0x66, 0x20, 0x33, 0x2f, 0x33, 0x31, 0x29, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x64, 0x65, 0x63, 0x6c, + 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6f, 0x6e, 0x20, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x20, + 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x74, 0x6f, 0x20, 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x2c, 0x20, 0x6e, 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x20, 0x28, 0x70, 0x65, 0x72, 0x20, 0x4c, 0x6c, + 0x6f, 0x79, 0x64, 0x27, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, + 0x61, 0x6c, 0x29, 0x0d, 0x0a, 0x32, 0x30, 0x30, 0x34, 0x2d, 0x30, 0x34, + 0x2d, 0x30, 0x35, 0x20, 0x54, 0x2e, 0x20, 0x4d, 0x63, 0x4c, 0x61, 0x75, + 0x67, 0x68, 0x6c, 0x69, 0x6e, 0x2e, 0x20, 0x49, 0x6e, 0x20, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, + 0x20, 0x73, 0x6d, 0x69, 0x6c, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, + 0x65, 0x73, 0x74, 0x2c, 0x20, 0x61, 0x64, 0x64, 0x65, 0x64, 0x20, 0x69, + 0x64, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x74, + 0x6f, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x70, 0x69, 0x65, 0x64, 0x2e, + 0x20, 0x0d, 0x0a, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x31, + 0x2e, 0x33, 0x2e, 0x0d, 0x0a, 0x32, 0x30, 0x30, 0x34, 0x2d, 0x30, 0x35, + 0x2d, 0x31, 0x34, 0x20, 0x54, 0x2e, 0x20, 0x4d, 0x63, 0x4c, 0x61, 0x75, + 0x67, 0x68, 0x6c, 0x69, 0x6e, 0x2e, 0x20, 0x52, 0x65, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, + 0x64, 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x70, 0x69, 0x65, + 0x64, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x2e, 0x20, 0x41, 0x64, 0x64, 0x65, + 0x64, 0x20, 0x62, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x0d, + 0x0a, 0x61, 0x6e, 0x64, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x6d, 0x69, 0x6c, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x2e, 0x20, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x31, 0x2e, + 0x34, 0x2e, 0x0d, 0x0a, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, + 0x20, 0x34, 0x2f, 0x35, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x31, 0x2e, 0x32, + 0x20, 0x0d, 0x0a, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, + 0x34, 0x2f, 0x35, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x73, 0x79, 0x73, 0x74, 0x65, + 0x6d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x20, 0x74, 0x6f, 0x20, 0x75, 0x73, 0x65, 0x20, 0x27, 0x32, 0x30, 0x30, + 0x34, 0x27, 0x20, 0x70, 0x61, 0x74, 0x68, 0x20, 0x0d, 0x0a, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x34, 0x2f, 0x35, 0x2f, 0x32, + 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x54, 0x4d, 0x2c, 0x20, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x31, 0x2e, 0x33, 0x20, 0x0d, + 0x0a, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x35, 0x2f, + 0x31, 0x34, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x54, 0x4d, + 0x2c, 0x20, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x31, + 0x2e, 0x34, 0x20, 0x0d, 0x0a, 0x32, 0x30, 0x30, 0x34, 0x2d, 0x30, 0x37, + 0x2d, 0x30, 0x37, 0x20, 0x4d, 0x2e, 0x20, 0x4d, 0x6f, 0x6f, 0x64, 0x69, + 0x65, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x20, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x32, + 0x2e, 0x30, 0x20, 0x65, 0x76, 0x65, 0x72, 0x79, 0x77, 0x68, 0x65, 0x72, + 0x65, 0x20, 0x62, 0x75, 0x74, 0x20, 0x61, 0x74, 0x20, 0x74, 0x6f, 0x70, + 0x2c, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x77, 0x61, 0x73, 0x20, 0x73, 0x65, 0x74, 0x20, + 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x31, 0x2e, 0x35, 0x2e, 0x0d, 0x0a, 0x32, + 0x30, 0x30, 0x34, 0x2d, 0x30, 0x39, 0x2d, 0x31, 0x35, 0x20, 0x4d, 0x2e, + 0x20, 0x4d, 0x6f, 0x6f, 0x64, 0x69, 0x65, 0x2e, 0x20, 0x20, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x75, 0x72, 0x69, 0x20, 0x74, 0x6f, + 0x20, 0x55, 0x52, 0x49, 0x20, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, + 0x6f, 0x75, 0x74, 0x2e, 0x20, 0x20, 0x53, 0x65, 0x74, 0x20, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x31, + 0x2e, 0x36, 0x2e, 0x0d, 0x0a, 0x32, 0x30, 0x30, 0x34, 0x2d, 0x30, 0x39, + 0x2d, 0x31, 0x36, 0x20, 0x4d, 0x2e, 0x20, 0x4d, 0x6f, 0x6f, 0x64, 0x69, + 0x65, 0x2e, 0x20, 0x20, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x31, + 0x2e, 0x32, 0x2e, 0x30, 0x0d, 0x0a, 0x32, 0x30, 0x30, 0x35, 0x2d, 0x30, + 0x36, 0x2d, 0x32, 0x36, 0x20, 0x4d, 0x2e, 0x20, 0x47, 0x79, 0x6c, 0x6c, + 0x69, 0x6e, 0x67, 0x2e, 0x20, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, + 0x20, 0x70, 0x69, 0x64, 0x2c, 0x20, 0x73, 0x69, 0x64, 0x2c, 0x20, 0x6e, + 0x73, 0x20, 0x75, 0x72, 0x69, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x66, + 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x5a, 0x33, 0x39, 0x38, 0x36, 0x2d, 0x32, 0x30, 0x30, 0x35, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x4e, 0x43, 0x58, 0x20, 0x28, 0x4e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x29, 0x20, 0x69, 0x73, + 0x20, 0x61, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x69, 0x7a, + 0x65, 0x64, 0x20, 0x6e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0d, 0x0a, 0x74, 0x6f, + 0x20, 0x44, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x54, 0x61, 0x6c, + 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x42, 0x6f, 0x6f, 0x6b, 0x73, 0x2c, 0x20, + 0x65, 0x42, 0x6f, 0x6f, 0x6b, 0x73, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x20, 0x77, 0x65, 0x62, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, + 0x6c, 0x73, 0x2e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, + 0x44, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x74, 0x68, 0x61, 0x74, 0x20, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x20, + 0x6e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, + 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x70, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x4d, 0x49, 0x4c, 0x20, 0x32, 0x2e, 0x30, 0x20, 0x20, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x4e, 0x43, 0x58, 0x20, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x20, 0x6e, 0x61, + 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x70, 0x61, 0x74, + 0x68, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x74, 0x68, 0x61, 0x74, + 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x61, 0x70, 0x70, 0x6c, + 0x69, 0x65, 0x64, 0x20, 0x75, 0x70, 0x6f, 0x6e, 0x20, 0x65, 0x78, 0x69, + 0x73, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2c, 0x0d, 0x0a, 0x77, 0x69, 0x74, + 0x68, 0x6f, 0x75, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x6c, 0x6f, 0x6e, + 0x67, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x76, + 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x0d, 0x0a, + 0x74, 0x68, 0x65, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x63, + 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x6c, 0x79, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, + 0x64, 0x20, 0x76, 0x69, 0x61, 0x20, 0x61, 0x20, 0x55, 0x52, 0x49, 0x2e, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x54, 0x68, 0x65, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, + 0x77, 0x69, 0x6e, 0x67, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x73, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x20, 0x74, + 0x6f, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x3a, 0x0d, + 0x0a, 0x20, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x4e, 0x49, 0x53, 0x4f, 0x2f, + 0x2f, 0x44, 0x54, 0x44, 0x20, 0x6e, 0x63, 0x78, 0x20, 0x32, 0x30, 0x30, + 0x35, 0x2d, 0x31, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x64, 0x61, 0x69, 0x73, 0x79, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x7a, 0x33, + 0x39, 0x38, 0x36, 0x2f, 0x32, 0x30, 0x30, 0x35, 0x2f, 0x6e, 0x63, 0x78, + 0x2d, 0x32, 0x30, 0x30, 0x35, 0x2d, 0x31, 0x2e, 0x64, 0x74, 0x64, 0x22, + 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x42, 0x61, 0x73, 0x69, 0x63, 0x20, 0x45, 0x6e, 0x74, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, + 0x31, 0x38, 0x6e, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x22, 0x78, 0x6d, 0x6c, + 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x20, 0x20, 0x20, 0x4e, 0x4d, 0x54, + 0x4f, 0x4b, 0x45, 0x4e, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x64, 0x69, 0x72, 0x20, + 0x20, 0x20, 0x20, 0x28, 0x6c, 0x74, 0x72, 0x7c, 0x72, 0x74, 0x6c, 0x29, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x22, 0x20, + 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x53, 0x4d, 0x49, 0x4c, 0x74, 0x69, 0x6d, 0x65, + 0x56, 0x61, 0x6c, 0x20, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, + 0x20, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x55, 0x52, 0x49, 0x20, 0x20, 0x20, 0x20, 0x22, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x20, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, + 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x6f, 0x70, 0x20, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x20, 0x4e, 0x43, 0x58, 0x20, 0x43, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, + 0x64, 0x2c, 0x20, 0x33, 0x2f, 0x33, 0x31, 0x2f, 0x32, 0x30, 0x30, 0x34, + 0x3a, 0x20, 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x70, 0x61, 0x67, + 0x65, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, + 0x54, 0x20, 0x6e, 0x63, 0x78, 0x20, 0x28, 0x68, 0x65, 0x61, 0x64, 0x2c, + 0x20, 0x64, 0x6f, 0x63, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x2c, 0x20, 0x64, + 0x6f, 0x63, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x2a, 0x2c, 0x20, 0x6e, + 0x61, 0x76, 0x4d, 0x61, 0x70, 0x2c, 0x20, 0x70, 0x61, 0x67, 0x65, 0x4c, + 0x69, 0x73, 0x74, 0x3f, 0x2c, 0x20, 0x6e, 0x61, 0x76, 0x4c, 0x69, 0x73, + 0x74, 0x2a, 0x29, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, + 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x34, 0x2f, 0x35, 0x2f, + 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x64, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x74, + 0x6f, 0x20, 0x31, 0x2e, 0x31, 0x2e, 0x32, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, + 0x64, 0x20, 0x33, 0x2f, 0x32, 0x39, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, + 0x20, 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x34, 0x2f, 0x35, + 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x54, 0x4d, 0x2c, 0x20, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x31, 0x2e, 0x33, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, + 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x35, 0x2f, 0x31, 0x34, + 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x54, 0x4d, 0x2c, 0x20, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x31, 0x2e, 0x34, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, + 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x37, 0x2f, 0x37, 0x2f, + 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x4d, 0x4d, 0x2c, 0x20, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x31, 0x2e, 0x32, 0x2e, 0x30, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, + 0x53, 0x54, 0x20, 0x6e, 0x63, 0x78, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x46, 0x49, + 0x58, 0x45, 0x44, 0x20, 0x22, 0x32, 0x30, 0x30, 0x35, 0x2d, 0x31, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x46, 0x49, 0x58, 0x45, 0x44, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x64, 0x61, 0x69, + 0x73, 0x79, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x7a, 0x33, 0x39, 0x38, 0x36, + 0x2f, 0x32, 0x30, 0x30, 0x35, 0x2f, 0x6e, 0x63, 0x78, 0x2f, 0x22, 0x0d, + 0x0a, 0x20, 0x20, 0x25, 0x69, 0x31, 0x38, 0x6e, 0x3b, 0x0d, 0x0a, 0x3e, + 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x44, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x48, 0x65, 0x61, 0x64, 0x20, 0x2d, + 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x20, 0x61, 0x6c, + 0x6c, 0x20, 0x4e, 0x43, 0x58, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x20, 0x20, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x68, 0x65, 0x61, 0x64, 0x20, 0x28, 0x73, 0x6d, 0x69, 0x6c, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x20, 0x7c, 0x20, 0x6d, + 0x65, 0x74, 0x61, 0x29, 0x2b, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x32, 0x30, 0x30, 0x34, 0x2d, 0x30, 0x34, 0x2d, 0x30, + 0x35, 0x20, 0x54, 0x4d, 0x20, 0x2d, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, + 0x69, 0x64, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, + 0x63, 0x6f, 0x70, 0x69, 0x65, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x32, 0x30, 0x30, 0x34, 0x2d, 0x30, 0x35, + 0x2d, 0x31, 0x34, 0x20, 0x54, 0x4d, 0x20, 0x2d, 0x20, 0x72, 0x65, 0x76, + 0x65, 0x72, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x72, + 0x69, 0x64, 0x65, 0x20, 0x63, 0x6f, 0x70, 0x69, 0x65, 0x64, 0x20, 0x74, + 0x6f, 0x6f, 0x3b, 0x20, 0x61, 0x64, 0x64, 0x65, 0x64, 0x20, 0x62, 0x6f, + 0x6f, 0x6b, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x6d, 0x69, 0x6c, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x20, 0x2d, 0x20, 0x44, 0x75, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x20, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x20, 0x64, 0x61, 0x74, 0x61, + 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x53, 0x4d, + 0x49, 0x4c, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2e, 0x20, 0x20, 0x45, + 0x61, 0x63, 0x68, 0x20, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x20, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x20, 0x0d, 0x0a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x68, 0x61, 0x74, + 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x20, + 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, + 0x53, 0x4d, 0x49, 0x4c, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x20, 0x6d, + 0x75, 0x73, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x69, 0x74, 0x73, + 0x20, 0x69, 0x64, 0x2c, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6f, 0x76, + 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x20, 0x0d, 0x0a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x64, 0x75, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x20, + 0x73, 0x6d, 0x69, 0x6c, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x65, + 0x73, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, + 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4e, 0x43, 0x58, 0x2e, 0x20, 0x20, + 0x54, 0x68, 0x65, 0x20, 0x4e, 0x43, 0x58, 0x20, 0x74, 0x68, 0x75, 0x73, + 0x20, 0x67, 0x61, 0x74, 0x68, 0x65, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x20, + 0x6f, 0x6e, 0x65, 0x20, 0x0d, 0x0a, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, + 0x61, 0x6c, 0x6c, 0x20, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x65, + 0x73, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x53, 0x4d, 0x49, 0x4c, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2c, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x75, 0x73, 0x65, 0x72, 0x2e, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x73, 0x6d, + 0x69, 0x6c, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x65, 0x73, 0x74, + 0x20, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x73, 0x6d, 0x69, 0x6c, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x0d, 0x0a, 0x69, + 0x64, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x20, 0x20, + 0x28, 0x74, 0x72, 0x75, 0x65, 0x7c, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x29, + 0x20, 0x20, 0x20, 0x27, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x27, 0x0d, 0x0a, + 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x20, 0x20, 0x28, 0x76, + 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x7c, 0x68, 0x69, 0x64, 0x64, 0x65, + 0x6e, 0x29, 0x20, 0x27, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x27, 0x0d, + 0x0a, 0x62, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, + 0x20, 0x28, 0x50, 0x41, 0x47, 0x45, 0x5f, 0x4e, 0x55, 0x4d, 0x42, 0x45, + 0x52, 0x7c, 0x4e, 0x4f, 0x54, 0x45, 0x7c, 0x4e, 0x4f, 0x54, 0x45, 0x5f, + 0x52, 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x7c, 0x41, 0x4e, + 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x7c, 0x4c, 0x49, 0x4e, + 0x45, 0x5f, 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x7c, 0x4f, 0x50, 0x54, + 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x53, 0x49, 0x44, 0x45, 0x42, 0x41, + 0x52, 0x7c, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x50, + 0x52, 0x4f, 0x44, 0x55, 0x43, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x45, + 0x29, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, + 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4d, + 0x65, 0x74, 0x61, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x20, 0x61, + 0x62, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x4e, 0x43, + 0x58, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x45, 0x4d, + 0x50, 0x54, 0x59, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x0d, 0x0a, 0x20, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, + 0x41, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, + 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x20, + 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x20, 0x20, 0x43, 0x44, 0x41, + 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x44, 0x6f, 0x63, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x2d, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x2c, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x69, 0x6d, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x20, 0x66, 0x6f, + 0x6c, 0x6c, 0x6f, 0x77, 0x20, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x20, 0x0d, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x33, 0x2f, + 0x33, 0x31, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, + 0x64, 0x65, 0x64, 0x20, 0x69, 0x6d, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x20, 0x64, 0x6f, 0x63, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x20, 0x28, 0x74, 0x65, 0x78, 0x74, 0x2c, 0x20, 0x61, 0x75, 0x64, 0x69, + 0x6f, 0x3f, 0x2c, 0x20, 0x69, 0x6d, 0x67, 0x3f, 0x29, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x64, 0x6f, + 0x63, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x69, 0x64, + 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x25, 0x69, + 0x31, 0x38, 0x6e, 0x3b, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x44, 0x6f, 0x63, 0x41, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x20, 0x2d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x69, 0x6d, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x20, 0x66, 0x6f, 0x6c, 0x6c, + 0x6f, 0x77, 0x73, 0x20, 0x64, 0x6f, 0x63, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x2e, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, + 0x33, 0x2f, 0x33, 0x31, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, + 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6d, 0x67, 0x20, 0x74, 0x6f, + 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x64, 0x6f, 0x63, 0x41, 0x75, 0x74, + 0x68, 0x6f, 0x72, 0x20, 0x28, 0x74, 0x65, 0x78, 0x74, 0x2c, 0x20, 0x61, + 0x75, 0x64, 0x69, 0x6f, 0x3f, 0x2c, 0x20, 0x69, 0x6d, 0x67, 0x3f, 0x29, + 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x64, 0x6f, 0x63, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x0d, 0x0a, + 0x20, 0x20, 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, + 0x20, 0x20, 0x25, 0x69, 0x31, 0x38, 0x6e, 0x3b, 0x0d, 0x0a, 0x3e, 0x0d, + 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4e, 0x61, 0x76, 0x69, + 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x75, 0x72, 0x65, 0x20, 0x2d, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, + 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4e, 0x43, 0x58, 0x20, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, + 0x20, 0x61, 0x72, 0x65, 0x20, 0x70, 0x61, 0x72, 0x74, 0x20, 0x6f, 0x66, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x0d, 0x0a, 0x68, 0x69, 0x65, 0x72, 0x61, + 0x72, 0x63, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x75, 0x72, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x0d, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x33, 0x2f, 0x33, + 0x31, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, 0x64, + 0x65, 0x64, 0x20, 0x6e, 0x61, 0x76, 0x49, 0x6e, 0x66, 0x6f, 0x20, 0x74, + 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, + 0x64, 0x65, 0x6c, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x6e, 0x61, 0x76, 0x4d, 0x61, + 0x70, 0x20, 0x28, 0x6e, 0x61, 0x76, 0x49, 0x6e, 0x66, 0x6f, 0x2a, 0x2c, + 0x20, 0x6e, 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x2a, 0x2c, 0x20, + 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x2b, 0x29, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x6e, + 0x61, 0x76, 0x4d, 0x61, 0x70, 0x0d, 0x0a, 0x20, 0x20, 0x69, 0x64, 0x20, + 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x2d, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x20, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x73, 0x29, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x2c, 0x20, 0x61, + 0x73, 0x20, 0x77, 0x65, 0x6c, 0x6c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x0d, + 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x2e, 0x0d, 0x0a, 0x48, 0x69, 0x65, 0x72, 0x61, 0x72, 0x63, 0x68, + 0x79, 0x20, 0x69, 0x73, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, + 0x6e, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x6e, 0x65, 0x73, 0x74, + 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x2e, 0x20, 0x20, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x6b, 0x69, 0x6e, 0x64, 0x20, 0x0d, 0x0a, 0x6f, 0x66, 0x20, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, 0x75, 0x6e, 0x69, + 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, + 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x22, 0x63, 0x68, 0x61, + 0x70, 0x74, 0x65, 0x72, 0x22, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x29, 0x2e, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x6e, + 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x28, 0x6e, 0x61, 0x76, + 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x2b, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x2a, 0x29, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, + 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x33, 0x2f, 0x32, 0x39, + 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x46, 0x6f, 0x63, 0x75, 0x73, 0x2f, + 0x6f, 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, + 0x2c, 0x20, 0x33, 0x2f, 0x32, 0x39, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, + 0x20, 0x20, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x33, + 0x2f, 0x33, 0x31, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x52, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x20, 0x70, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x66, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x34, 0x2f, + 0x35, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, 0x64, + 0x65, 0x64, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x0d, 0x0a, 0x20, 0x20, 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, + 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x20, + 0x20, 0x70, 0x6c, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x3e, 0x0d, + 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x65, 0x64, 0x2c, 0x20, 0x33, 0x2f, 0x33, 0x31, 0x2f, 0x32, 0x30, + 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x70, + 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x50, 0x61, 0x67, 0x65, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x20, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x70, + 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x28, 0x6e, 0x61, 0x76, + 0x49, 0x6e, 0x66, 0x6f, 0x2a, 0x2c, 0x20, 0x6e, 0x61, 0x76, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x2a, 0x2c, 0x20, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x2b, 0x29, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x34, + 0x2f, 0x35, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, + 0x64, 0x65, 0x64, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x70, + 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, + 0x33, 0x2f, 0x33, 0x31, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, + 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, + 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x34, 0x2f, 0x35, 0x2f, + 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, + 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x6f, 0x66, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x61, 0x67, 0x65, 0x20, 0x54, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x20, 0x2d, 0x20, 0x20, 0x43, 0x6f, 0x6e, 0x74, + 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2c, 0x20, 0x61, 0x75, 0x64, 0x69, + 0x6f, 0x2c, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x76, 0x69, 0x67, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x69, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x70, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x20, 0x20, 0x54, + 0x68, 0x65, 0x20, 0x22, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x69, 0x73, 0x20, + 0x61, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x20, 0x69, + 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, + 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x0d, 0x0a, 0x74, 0x68, + 0x65, 0x20, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x20, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, + 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x20, 0x70, 0x61, + 0x67, 0x65, 0x2e, 0x20, 0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x0d, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x6d, 0x75, 0x73, + 0x74, 0x20, 0x62, 0x65, 0x20, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x2c, + 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x0d, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x20, 0x28, 0x6e, 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x2b, + 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, + 0x64, 0x2c, 0x20, 0x34, 0x2f, 0x35, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, + 0x20, 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x34, 0x2f, 0x35, 0x2f, 0x32, + 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x64, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x34, + 0x2f, 0x35, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, + 0x64, 0x65, 0x64, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x69, 0x64, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x28, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x20, 0x7c, 0x20, 0x6e, 0x6f, + 0x72, 0x6d, 0x61, 0x6c, 0x20, 0x7c, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, + 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, + 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x70, 0x6c, + 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x43, 0x44, 0x41, 0x54, + 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, + 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x4e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x2c, 0x20, 0x66, 0x6c, + 0x61, 0x74, 0x20, 0x73, 0x65, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x6e, + 0x61, 0x76, 0x69, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2c, 0x20, 0x65, 0x2e, 0x67, 0x2e, 0x20, + 0x20, 0x0d, 0x0a, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x2c, 0x20, 0x66, 0x69, + 0x67, 0x75, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x73, 0x2c, 0x20, 0x65, 0x74, 0x63, 0x2e, 0x20, 0x20, 0x45, 0x73, 0x73, + 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x61, 0x20, 0x66, + 0x6c, 0x61, 0x74, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x6f, 0x66, 0x20, 0x6e, 0x61, 0x76, 0x4d, 0x61, 0x70, 0x2e, 0x20, 0x20, + 0x54, 0x68, 0x65, 0x20, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x0d, 0x0a, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, + 0x61, 0x76, 0x4c, 0x69, 0x73, 0x74, 0x2c, 0x20, 0x75, 0x73, 0x69, 0x6e, + 0x67, 0x20, 0x64, 0x74, 0x62, 0x6f, 0x6f, 0x6b, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x2c, 0x20, + 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x6e, 0x6f, 0x74, 0x65, 0x2e, 0x0d, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x33, 0x2f, + 0x33, 0x31, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, + 0x64, 0x65, 0x64, 0x20, 0x6e, 0x61, 0x76, 0x49, 0x6e, 0x66, 0x6f, 0x20, + 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x6e, 0x61, 0x76, 0x4c, + 0x69, 0x73, 0x74, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x61, 0x76, 0x49, 0x6e, + 0x66, 0x6f, 0x2a, 0x2c, 0x20, 0x6e, 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, + 0x6c, 0x2b, 0x2c, 0x20, 0x6e, 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x2b, 0x29, 0x20, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x6e, 0x61, 0x76, 0x4c, 0x69, 0x73, 0x74, + 0x0d, 0x0a, 0x20, 0x20, 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0d, 0x0a, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x20, 0x20, + 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, + 0x64, 0x2c, 0x20, 0x34, 0x2f, 0x35, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, + 0x20, 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x4e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x54, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x2d, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x61, 0x69, 0x6e, 0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x73, 0x29, 0x20, 0x6f, 0x66, 0x20, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x77, 0x65, + 0x6c, 0x6c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x0d, 0x0a, 0x65, 0x6e, 0x74, + 0x69, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x2e, 0x0d, 0x0a, + 0x6e, 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x20, 0x61, + 0x72, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x71, 0x75, 0x69, 0x76, + 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6e, 0x61, 0x76, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x75, + 0x73, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x6e, 0x61, 0x76, 0x4c, 0x69, 0x73, + 0x74, 0x73, 0x2e, 0x20, 0x20, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x0d, + 0x0a, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x6b, 0x69, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x20, 0x74, 0x68, 0x69, + 0x73, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x72, 0x65, 0x70, + 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x2c, 0x20, 0x75, 0x73, 0x69, + 0x6e, 0x67, 0x20, 0x69, 0x74, 0x73, 0x20, 0x64, 0x74, 0x62, 0x6f, 0x6f, + 0x6b, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x0d, 0x0a, + 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, + 0x6e, 0x6f, 0x74, 0x65, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x22, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x67, + 0x65, 0x72, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x0d, 0x0a, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x69, 0x63, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, + 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x76, 0x54, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x2e, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x20, 0x6e, 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x20, + 0x28, 0x6e, 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x2b, 0x2c, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, + 0x2c, 0x20, 0x33, 0x2f, 0x32, 0x39, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, + 0x20, 0x20, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x20, 0x6f, 0x6e, + 0x46, 0x6f, 0x63, 0x75, 0x73, 0x2f, 0x6f, 0x6e, 0x42, 0x6c, 0x75, 0x72, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, + 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x33, 0x2f, 0x33, 0x31, + 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x64, 0x20, 0x6d, 0x61, 0x70, 0x52, 0x65, 0x66, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, + 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x34, 0x2f, 0x35, 0x2f, 0x32, 0x30, + 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, 0x64, 0x65, 0x64, 0x20, 0x70, + 0x6c, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, + 0x6e, 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x0d, 0x0a, 0x20, + 0x20, 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, + 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, + 0x20, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x20, + 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x3e, + 0x0d, 0x0a, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, + 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x33, 0x2f, 0x33, 0x31, + 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, 0x20, 0x41, 0x64, 0x64, 0x65, + 0x64, 0x20, 0x6e, 0x61, 0x76, 0x49, 0x6e, 0x66, 0x6f, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x4e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x2d, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x73, 0x20, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x69, 0x76, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x0d, 0x0a, 0x20, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x61, 0x20, + 0x6e, 0x61, 0x76, 0x4d, 0x61, 0x70, 0x2c, 0x20, 0x70, 0x61, 0x67, 0x65, + 0x4c, 0x69, 0x73, 0x74, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x6e, 0x61, 0x76, + 0x4c, 0x69, 0x73, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x76, 0x61, 0x72, 0x69, + 0x6f, 0x75, 0x73, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x73, + 0x65, 0x72, 0x2e, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x6e, 0x61, 0x76, 0x49, + 0x6e, 0x66, 0x6f, 0x20, 0x28, 0x28, 0x28, 0x74, 0x65, 0x78, 0x74, 0x2c, + 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x3f, 0x29, 0x20, 0x7c, 0x20, 0x61, + 0x75, 0x64, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x69, 0x6d, 0x67, 0x3f, 0x29, + 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x6e, 0x61, 0x76, 0x49, 0x6e, 0x66, 0x6f, 0x0d, 0x0a, 0x20, 0x20, + 0x25, 0x69, 0x31, 0x38, 0x6e, 0x3b, 0x20, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, + 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4e, 0x61, 0x76, + 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x4c, 0x61, 0x62, 0x65, + 0x6c, 0x20, 0x2d, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, + 0x20, 0x61, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x67, 0x69, 0x76, 0x65, + 0x6e, 0x20, 0x3c, 0x6e, 0x61, 0x76, 0x4d, 0x61, 0x70, 0x3e, 0x2c, 0x20, + 0x3c, 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x3e, 0x2c, 0x20, + 0x0d, 0x0a, 0x3c, 0x6e, 0x61, 0x76, 0x4c, 0x69, 0x73, 0x74, 0x3e, 0x2c, + 0x20, 0x6f, 0x72, 0x20, 0x3c, 0x6e, 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x3e, 0x20, 0x69, 0x6e, 0x20, 0x76, 0x61, 0x72, 0x69, 0x6f, + 0x75, 0x73, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x73, 0x65, + 0x72, 0x2e, 0x20, 0x43, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x0d, 0x0a, + 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x73, 0x6f, 0x20, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x6d, 0x75, 0x6c, 0x74, + 0x69, 0x70, 0x6c, 0x65, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x73, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x6e, 0x61, 0x76, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x20, 0x28, 0x28, 0x28, 0x74, 0x65, 0x78, 0x74, 0x2c, + 0x20, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x3f, 0x29, 0x20, 0x7c, 0x20, 0x61, + 0x75, 0x64, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x69, 0x6d, 0x67, 0x3f, 0x29, + 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x6e, 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x0d, 0x0a, 0x20, + 0x20, 0x25, 0x69, 0x31, 0x38, 0x6e, 0x3b, 0x20, 0x0d, 0x0a, 0x3e, 0x0d, + 0x0a, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x20, + 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x53, 0x4d, 0x49, 0x4c, 0x20, 0x74, 0x6f, + 0x20, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x6f, + 0x66, 0x20, 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x45, + 0x4d, 0x50, 0x54, 0x59, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x0d, 0x0a, 0x20, 0x20, 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0d, 0x0a, 0x20, 0x20, 0x73, 0x72, 0x63, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x55, 0x52, 0x49, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, + 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x20, 0x43, 0x6f, 0x6e, 0x74, + 0x61, 0x69, 0x6e, 0x73, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x6f, 0x66, + 0x20, 0x64, 0x6f, 0x63, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x2c, 0x20, 0x6e, + 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x68, 0x65, 0x61, 0x64, + 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x6e, 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x70, 0x61, + 0x67, 0x65, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x29, 0x2c, 0x20, + 0x0d, 0x0a, 0x6f, 0x72, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x6e, 0x61, 0x76, 0x4d, 0x61, 0x70, 0x20, 0x6f, 0x72, + 0x20, 0x6e, 0x61, 0x76, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x28, 0x23, 0x50, 0x43, 0x44, 0x41, + 0x54, 0x41, 0x29, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x74, 0x65, 0x78, 0x74, 0x0d, 0x0a, 0x20, 0x20, + 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0d, 0x0a, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x20, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x20, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x20, 0x61, 0x75, + 0x64, 0x69, 0x6f, 0x20, 0x63, 0x6c, 0x69, 0x70, 0x20, 0x6f, 0x66, 0x20, + 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x68, 0x65, 0x61, + 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, + 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x61, 0x75, 0x64, + 0x69, 0x6f, 0x20, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x3e, 0x0d, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2c, + 0x20, 0x33, 0x2f, 0x32, 0x39, 0x2f, 0x32, 0x30, 0x30, 0x34, 0x3a, 0x20, + 0x20, 0x63, 0x6c, 0x69, 0x70, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x2f, 0x63, + 0x6c, 0x69, 0x70, 0x45, 0x6e, 0x64, 0x20, 0x6e, 0x6f, 0x77, 0x20, 0x52, + 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x61, + 0x75, 0x64, 0x69, 0x6f, 0x0d, 0x0a, 0x20, 0x20, 0x69, 0x64, 0x20, 0x20, + 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x73, 0x72, 0x63, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x55, 0x52, 0x49, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x20, + 0x20, 0x63, 0x6c, 0x69, 0x70, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x20, 0x25, + 0x53, 0x4d, 0x49, 0x4c, 0x74, 0x69, 0x6d, 0x65, 0x56, 0x61, 0x6c, 0x3b, + 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, + 0x0a, 0x20, 0x20, 0x63, 0x6c, 0x69, 0x70, 0x45, 0x6e, 0x64, 0x20, 0x20, + 0x25, 0x53, 0x4d, 0x49, 0x4c, 0x74, 0x69, 0x6d, 0x65, 0x56, 0x61, 0x6c, + 0x3b, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, + 0x0d, 0x0a, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x74, 0x68, + 0x61, 0x74, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x61, 0x63, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x6e, 0x79, 0x20, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x69, 0x6d, 0x67, 0x20, 0x45, 0x4d, 0x50, + 0x54, 0x59, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, + 0x53, 0x54, 0x20, 0x69, 0x6d, 0x67, 0x0d, 0x0a, 0x20, 0x20, 0x69, 0x64, + 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0d, 0x0a, 0x20, 0x20, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0d, 0x0a, 0x20, 0x20, 0x73, 0x72, 0x63, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x55, 0x52, 0x49, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, + 0x55, 0x49, 0x52, 0x45, 0x44, 0x0d, 0x0a, 0x3e, 0x0d, 0x0a +}; + +} //namespace FlightCrew diff --git a/src/FlightCrew/Schemas/AsSources/NcxXsd.cpp b/src/FlightCrew/Schemas/AsSources/NcxXsd.cpp new file mode 100644 index 0000000..a568aac --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/NcxXsd.cpp @@ -0,0 +1,556 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + Navigation Control for XML applications 2005-1 XSD + + Specification: http://www.niso.org/workrooms/daisy/Z39-86-2005.html#NCX + + Namespace: http://www.daisy.org/z3986/2005/ncx/ + + Created by hand. + + */ + +namespace FlightCrew +{ + +const char* NCX_XSD_NS = "http://www.daisy.org/z3986/2005/ncx/"; +const char* NCX_XSD_ID = "ncx.xsd"; +const unsigned int NCX_XSD_LEN = 6134; +const unsigned char NCX_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, + 0x3f, 0x3e, 0x0d, 0x0a, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x3d, 0x22, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x22, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x64, 0x61, + 0x69, 0x73, 0x79, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x7a, 0x33, 0x39, 0x38, + 0x36, 0x2f, 0x32, 0x30, 0x30, 0x35, 0x2f, 0x6e, 0x63, 0x78, 0x2f, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x6e, 0x63, + 0x78, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x64, 0x61, 0x69, 0x73, 0x79, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x7a, 0x33, 0x39, 0x38, 0x36, 0x2f, 0x32, 0x30, 0x30, 0x35, 0x2f, 0x6e, + 0x63, 0x78, 0x2f, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x3a, 0x78, 0x73, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x22, 0x20, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x58, 0x4d, 0x4c, 0x2f, 0x31, 0x39, 0x39, + 0x38, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, + 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x68, 0x65, 0x61, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x64, 0x6f, + 0x63, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x6e, 0x63, 0x78, 0x3a, 0x64, 0x6f, 0x63, 0x41, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6e, + 0x61, 0x76, 0x4d, 0x61, 0x70, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x70, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, + 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6e, + 0x61, 0x76, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x32, 0x30, 0x30, 0x35, 0x2d, 0x31, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x6e, 0x63, 0x78, 0x3a, 0x69, 0x31, 0x38, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6d, + 0x65, 0x74, 0x61, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x6f, + 0x63, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x74, 0x65, + 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, + 0x78, 0x3a, 0x69, 0x6d, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, + 0x63, 0x78, 0x3a, 0x69, 0x31, 0x38, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x6f, 0x63, 0x41, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x74, 0x65, 0x78, 0x74, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x69, 0x6d, 0x67, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x69, 0x31, + 0x38, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, + 0x61, 0x76, 0x4d, 0x61, 0x70, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6e, 0x61, 0x76, + 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, + 0x78, 0x3a, 0x6e, 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, + 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x69, 0x6d, 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x72, 0x63, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x72, 0x63, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x61, 0x76, 0x49, + 0x6e, 0x66, 0x6f, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x74, 0x65, 0x78, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x69, + 0x6d, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, + 0x63, 0x78, 0x3a, 0x69, 0x31, 0x38, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x6e, 0x63, 0x78, 0x3a, 0x74, 0x65, 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x69, 0x6d, 0x67, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, + 0x69, 0x31, 0x38, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6e, 0x61, 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6e, + 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6e, 0x61, + 0x76, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, + 0x64, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, + 0x6c, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6e, 0x61, 0x76, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, + 0x63, 0x78, 0x3a, 0x6e, 0x61, 0x76, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x61, 0x76, 0x4c, + 0x69, 0x73, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6e, 0x61, 0x76, 0x49, 0x6e, + 0x66, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x6e, 0x61, + 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, + 0x78, 0x3a, 0x6e, 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x70, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, + 0x63, 0x78, 0x3a, 0x6e, 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, + 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x6c, 0x61, 0x79, + 0x4f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6e, 0x61, 0x76, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, + 0x3a, 0x6e, 0x61, 0x76, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x6e, 0x63, 0x78, 0x3a, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x6c, 0x61, 0x79, 0x4f, + 0x72, 0x64, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6d, 0x65, 0x74, 0x61, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x69, 0x31, 0x38, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6d, 0x6c, + 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x69, + 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x74, 0x72, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x72, 0x74, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x3e, + 0x0d, 0x0a +}; + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Schemas/AsSources/Ops201Xsd.cpp b/src/FlightCrew/Schemas/AsSources/Ops201Xsd.cpp new file mode 100644 index 0000000..fb73c5c --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/Ops201Xsd.cpp @@ -0,0 +1,5462 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + Open Publication Structure (OPS) 2.0.1 v1.0, XSD + + Specification: http://www.idpf.org/doc_library/epub/OPS_2.0.1_draft.htm + + (uses the xhtml namespace on purpose; the switch element uses the proper namespace) + Namespace: http://www.w3.org/1999/xhtml + + Created by hand. + + */ + +namespace FlightCrew +{ + +const char* OPS201_XSD_NS = "http://www.w3.org/1999/xhtml"; +const char* OPS201_XSD_ID = "ops201.xsd"; +const unsigned int OPS201_XSD_LEN = 64996; +const unsigned char OPS201_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, + 0x3f, 0x3e, 0x0a, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x3d, 0x22, + 0x65, 0x6e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, + 0x39, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x73, + 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, + 0x2f, 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x73, 0x76, + 0x67, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, + 0x30, 0x2f, 0x73, 0x76, 0x67, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x78, + 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x6f, 0x70, 0x73, 0x3d, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x64, 0x70, + 0x66, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x37, 0x2f, 0x6f, + 0x70, 0x73, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x3a, 0x78, 0x6d, 0x6c, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x58, 0x4d, 0x4c, 0x2f, 0x31, 0x39, 0x39, 0x38, 0x2f, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x6f, 0x72, 0x6d, + 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x71, 0x75, 0x61, + 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4f, 0x70, 0x65, + 0x6e, 0x20, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x20, + 0x28, 0x4f, 0x50, 0x53, 0x29, 0x20, 0x32, 0x2e, 0x30, 0x2e, 0x31, 0x20, + 0x76, 0x31, 0x2e, 0x30, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x69, 0x6d, 0x70, + 0x6f, 0x72, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x58, 0x4d, 0x4c, + 0x2f, 0x31, 0x39, 0x39, 0x38, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, + 0x22, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x2f, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x69, 0x64, 0x70, 0x66, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, + 0x37, 0x2f, 0x6f, 0x70, 0x73, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x6f, 0x70, 0x73, 0x5f, 0x73, 0x77, 0x69, 0x74, 0x63, + 0x68, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x30, 0x2f, 0x73, + 0x76, 0x67, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x31, 0x31, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x2f, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x20, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, + 0x72, 0x20, 0x6d, 0x6e, 0x65, 0x6d, 0x6f, 0x6e, 0x69, 0x63, 0x20, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x20, 0x73, 0x65, 0x74, 0x73, 0x20, 0x61, 0x72, 0x65, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, + 0x3a, 0x0a, 0x20, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, + 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x4c, 0x61, + 0x74, 0x69, 0x6e, 0x20, 0x31, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, + 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, + 0x61, 0x74, 0x31, 0x2e, 0x65, 0x6e, 0x74, 0x22, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, + 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, + 0x45, 0x53, 0x20, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x2e, + 0x65, 0x6e, 0x74, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, + 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x2e, 0x65, 0x6e, 0x74, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, + 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, + 0x52, 0x46, 0x43, 0x32, 0x30, 0x34, 0x35, 0x5d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x2d, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, + 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2c, + 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, 0x43, + 0x32, 0x30, 0x34, 0x35, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x43, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, + 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, + 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, + 0x43, 0x32, 0x30, 0x34, 0x35, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x43, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x73, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x68, 0x61, 0x72, + 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, + 0x6e, 0x67, 0x73, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, + 0x5b, 0x52, 0x46, 0x43, 0x32, 0x30, 0x34, 0x35, 0x5d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4c, 0x61, 0x6e, 0x67, 0x75, + 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, + 0x63, 0x6f, 0x64, 0x65, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, + 0x20, 0x5b, 0x52, 0x46, 0x43, 0x33, 0x30, 0x36, 0x36, 0x5d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x43, 0x68, + 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x63, 0x68, + 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x2c, 0x20, 0x61, 0x73, 0x20, + 0x70, 0x65, 0x72, 0x20, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x32, 0x2e, 0x32, 0x20, 0x6f, 0x66, 0x20, 0x5b, 0x58, 0x4d, 0x4c, 0x5d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x31, 0x22, 0x20, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x6f, 0x72, 0x65, + 0x20, 0x64, 0x69, 0x67, 0x69, 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x6e, 0x6f, 0x6e, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x49, + 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x70, 0x61, 0x74, 0x74, 0x65, + 0x72, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x5b, 0x30, + 0x2d, 0x39, 0x5d, 0x2b, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x61, 0x62, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, + 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x74, 0x61, 0x62, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x6f, + 0x72, 0x64, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, + 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, + 0x20, 0x30, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x33, 0x32, 0x37, 0x36, 0x37, + 0x2e, 0x20, 0x55, 0x73, 0x65, 0x72, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x73, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x69, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x20, 0x6c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x20, + 0x7a, 0x65, 0x72, 0x6f, 0x73, 0x2e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x63, 0x6c, 0x75, + 0x73, 0x69, 0x76, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x30, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x6d, 0x61, 0x78, 0x49, 0x6e, 0x63, 0x6c, 0x75, 0x73, + 0x69, 0x76, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x33, + 0x32, 0x37, 0x36, 0x37, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2d, 0x73, 0x65, + 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x4e, 0x4d, 0x54, 0x4f, 0x4b, + 0x45, 0x4e, 0x53, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x65, 0x73, 0x63, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, + 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x2d, 0x73, 0x65, 0x70, + 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x70, 0x61, 0x74, 0x74, + 0x65, 0x72, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x5b, + 0x5e, 0x2c, 0x5d, 0x2b, 0x28, 0x2c, 0x5c, 0x73, 0x2a, 0x5b, 0x5e, 0x2c, + 0x5d, 0x2b, 0x29, 0x2a, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x55, 0x52, 0x49, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, + 0x55, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x20, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x2c, 0x20, 0x73, 0x65, 0x65, 0x20, 0x5b, 0x52, 0x46, + 0x43, 0x32, 0x33, 0x39, 0x36, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x79, 0x55, 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x55, 0x72, 0x69, 0x4c, 0x69, 0x73, 0x74, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x55, 0x6e, 0x69, 0x66, 0x6f, + 0x72, 0x6d, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x44, 0x61, 0x74, + 0x65, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, + 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x69, 0x6d, 0x65, + 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x64, 0x61, 0x74, 0x65, 0x20, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x64, 0x61, + 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, + 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x53, 0x68, 0x65, 0x65, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x73, 0x68, 0x65, 0x65, 0x74, 0x20, + 0x64, 0x61, 0x74, 0x61, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x54, 0x65, 0x78, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x73, 0x20, 0x65, 0x74, 0x63, 0x2e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x6e, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x20, 0x6f, 0x72, 0x20, 0x6e, + 0x6e, 0x25, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x65, 0x72, 0x63, 0x65, + 0x6e, 0x74, 0x61, 0x67, 0x65, 0x20, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x5b, 0x2d, 0x2b, 0x5d, 0x3f, 0x28, 0x5c, 0x64, 0x2b, + 0x7c, 0x5c, 0x64, 0x2b, 0x28, 0x5c, 0x2e, 0x5c, 0x64, 0x2b, 0x29, 0x3f, + 0x25, 0x29, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4d, + 0x75, 0x6c, 0x74, 0x69, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x2c, 0x20, 0x70, + 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x6f, + 0x72, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x70, 0x61, + 0x74, 0x74, 0x65, 0x72, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x5b, 0x2d, 0x2b, 0x5d, 0x3f, 0x28, 0x5c, 0x64, 0x2b, 0x7c, 0x5c, + 0x64, 0x2b, 0x28, 0x5c, 0x2e, 0x5c, 0x64, 0x2b, 0x29, 0x3f, 0x25, 0x29, + 0x7c, 0x5b, 0x31, 0x2d, 0x39, 0x5d, 0x3f, 0x28, 0x5c, 0x64, 0x2b, 0x29, + 0x3f, 0x5c, 0x2a, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x20, 0x72, 0x65, 0x70, 0x72, + 0x65, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x6c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x20, 0x69, 0x6e, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, + 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x6e, 0x6f, 0x6e, 0x4e, 0x65, 0x67, + 0x61, 0x74, 0x69, 0x76, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, + 0x73, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x6d, 0x61, + 0x70, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x68, + 0x61, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x72, 0x65, 0x63, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x70, 0x6f, 0x6c, 0x79, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x43, 0x6f, 0x6f, + 0x72, 0x64, 0x73, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, + 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x5b, 0x2d, 0x2b, 0x5d, 0x3f, 0x28, 0x5c, + 0x64, 0x2b, 0x7c, 0x5c, 0x64, 0x2b, 0x28, 0x5c, 0x2e, 0x5c, 0x64, 0x2b, + 0x29, 0x3f, 0x25, 0x29, 0x28, 0x2c, 0x5c, 0x73, 0x2a, 0x5b, 0x2d, 0x2b, + 0x5d, 0x3f, 0x28, 0x5c, 0x64, 0x2b, 0x7c, 0x5c, 0x64, 0x2b, 0x28, 0x5c, + 0x2e, 0x5c, 0x64, 0x2b, 0x29, 0x3f, 0x25, 0x29, 0x29, 0x2a, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x20, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x72, 0x65, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x72, 0x65, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x6d, 0x6f, 0x73, 0x74, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2d, 0x77, 0x69, + 0x64, 0x65, 0x20, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x20, 0x69, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x20, 0x20, 0x20, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x73, 0x65, + 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x6f, 0x66, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, + 0x64, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x66, 0x6f, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x61, 0x64, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x79, + 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2f, 0x61, 0x6d, 0x70, 0x6c, 0x69, + 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x4e, 0x4d, 0x54, 0x4f, 0x4b, + 0x45, 0x4e, 0x53, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x79, 0x6c, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x53, 0x68, 0x65, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x54, + 0x65, 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x31, + 0x38, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, + 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x61, + 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, + 0x28, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x31, 0x2e, 0x30, 0x20, 0x73, 0x70, 0x65, 0x63, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x77, 0x65, 0x61, 0x6b, 0x2f, 0x6e, + 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x20, 0x74, 0x65, 0x78, 0x74, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6d, + 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x69, + 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x74, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x74, 0x6c, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x20, 0x55, 0x49, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x77, 0x61, + 0x73, 0x20, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x64, 0x62, 0x6c, 0x63, 0x6c, 0x69, + 0x63, 0x6b, 0x20, 0x20, 0x61, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x77, 0x61, 0x73, + 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x6c, 0x69, 0x63, + 0x6b, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, + 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x20, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x62, 0x75, 0x74, 0x74, + 0x6f, 0x6e, 0x20, 0x77, 0x61, 0x73, 0x20, 0x70, 0x72, 0x65, 0x73, 0x73, + 0x65, 0x64, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x75, 0x70, 0x20, + 0x20, 0x20, 0x61, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x20, + 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x77, 0x61, 0x73, 0x20, 0x72, + 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x20, 0x61, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x20, + 0x77, 0x61, 0x73, 0x20, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x20, 0x6f, 0x6e, + 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6d, + 0x6f, 0x75, 0x73, 0x65, 0x6f, 0x75, 0x74, 0x20, 0x20, 0x61, 0x20, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x77, 0x61, 0x73, 0x20, 0x6d, + 0x6f, 0x76, 0x65, 0x64, 0x20, 0x61, 0x77, 0x61, 0x79, 0x20, 0x66, 0x72, + 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6b, + 0x65, 0x79, 0x70, 0x72, 0x65, 0x73, 0x73, 0x20, 0x20, 0x61, 0x20, 0x6b, + 0x65, 0x79, 0x20, 0x77, 0x61, 0x73, 0x20, 0x70, 0x72, 0x65, 0x73, 0x73, + 0x65, 0x64, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x6c, 0x65, 0x61, + 0x73, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, + 0x6b, 0x65, 0x79, 0x64, 0x6f, 0x77, 0x6e, 0x20, 0x20, 0x20, 0x61, 0x20, + 0x6b, 0x65, 0x79, 0x20, 0x77, 0x61, 0x73, 0x20, 0x70, 0x72, 0x65, 0x73, + 0x73, 0x65, 0x64, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6b, 0x65, 0x79, 0x75, 0x70, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x20, 0x6b, 0x65, 0x79, 0x20, 0x77, 0x61, 0x73, + 0x20, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x63, + 0x6c, 0x69, 0x63, 0x6b, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, + 0x64, 0x62, 0x6c, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, + 0x6e, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, + 0x73, 0x65, 0x75, 0x70, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, + 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6f, 0x76, 0x65, 0x72, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x6d, 0x6f, + 0x75, 0x73, 0x65, 0x6f, 0x75, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6f, 0x6e, 0x6b, 0x65, 0x79, 0x70, 0x72, 0x65, 0x73, 0x73, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x6b, 0x65, 0x79, 0x64, 0x6f, 0x77, + 0x6e, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x6b, 0x65, 0x79, + 0x75, 0x70, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, + 0x6f, 0x63, 0x75, 0x73, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x74, 0x68, + 0x61, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x67, 0x65, 0x74, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6b, 0x65, 0x79, + 0x20, 0x20, 0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x69, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x20, 0x6b, 0x65, 0x79, 0x20, 0x63, 0x68, 0x61, + 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x20, 0x20, + 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, + 0x20, 0x74, 0x61, 0x62, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x66, + 0x6f, 0x63, 0x75, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x67, 0x6f, 0x74, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x62, 0x6c, 0x75, 0x72, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6c, 0x6f, 0x73, 0x74, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x6b, 0x65, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, + 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6f, 0x6e, 0x62, 0x6c, 0x75, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x63, 0x6f, 0x72, 0x65, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x31, 0x38, 0x6e, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, 0x54, + 0x65, 0x78, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x2e, + 0x70, 0x72, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x62, 0x72, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x70, 0x61, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x62, 0x64, 0x6f, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x6d, 0x61, 0x70, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x2e, 0x70, 0x72, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x6d, + 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x76, 0x67, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x74, 0x74, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x69, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x62, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x62, 0x69, 0x67, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x65, 0x6d, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x6f, 0x6e, + 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x64, 0x66, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x6f, + 0x64, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x71, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x61, 0x6d, + 0x70, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x6b, 0x62, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x76, 0x61, + 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x63, 0x69, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, + 0x62, 0x62, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, + 0x6d, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x75, 0x62, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x75, + 0x70, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, + 0x65, 0x61, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6d, 0x69, 0x73, 0x63, 0x2e, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x6e, 0x73, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x64, 0x65, 0x6c, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x69, 0x73, 0x63, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x20, 0x63, 0x61, + 0x6e, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x6f, 0x63, 0x63, 0x75, 0x72, + 0x20, 0x61, 0x74, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x6d, 0x69, 0x73, 0x63, 0x2e, 0x69, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x73, 0x74, + 0x79, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x20, 0x63, 0x6f, 0x76, + 0x65, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x6f, + 0x72, 0x20, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x6c, 0x65, 0x76, 0x65, + 0x6c, 0x22, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6d, 0x69, 0x73, 0x63, 0x2e, + 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x65, + 0x61, 0x64, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, + 0x31, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x68, 0x32, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x33, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x68, 0x34, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x35, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x68, 0x36, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x73, 0x74, + 0x73, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x75, 0x6c, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x6f, 0x6c, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x6c, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x65, 0x78, 0x74, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x72, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x70, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x64, 0x69, 0x76, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6c, 0x69, 0x73, 0x74, + 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x65, 0x78, 0x74, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6f, 0x70, 0x73, + 0x3a, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6d, 0x69, 0x73, 0x63, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x46, 0x6c, 0x6f, 0x77, 0x22, 0x20, 0x6d, 0x69, 0x78, + 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x46, 0x6c, 0x6f, 0x77, 0x22, 0x20, 0x6d, 0x69, 0x78, + 0x65, 0x73, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x69, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x20, 0x65, + 0x74, 0x63, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x6d, 0x69, 0x73, 0x63, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, + 0x64, 0x65, 0x6c, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x63, + 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x20, 0x75, 0x73, 0x65, 0x20, 0x22, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x20, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, + 0x69, 0x6e, 0x67, 0x20, 0x61, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, + 0x6c, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6d, 0x69, 0x73, 0x63, + 0x2e, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x70, 0x72, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x72, 0x65, 0x20, 0x75, + 0x73, 0x65, 0x73, 0x20, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, + 0x20, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x62, + 0x69, 0x67, 0x2c, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x2c, 0x20, 0x73, + 0x75, 0x70, 0x20, 0x6f, 0x72, 0x20, 0x73, 0x75, 0x70, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x61, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x2e, 0x70, 0x72, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6d, 0x69, 0x73, 0x63, 0x2e, + 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, + 0x75, 0x73, 0x65, 0x73, 0x20, 0x22, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, + 0x20, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x66, + 0x6f, 0x72, 0x6d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6d, 0x69, + 0x73, 0x63, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x75, 0x74, 0x74, + 0x6f, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x20, + 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, + 0x75, 0x73, 0x65, 0x73, 0x20, 0x22, 0x46, 0x6c, 0x6f, 0x77, 0x22, 0x20, + 0x62, 0x75, 0x74, 0x20, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, + 0x20, 0x61, 0x2c, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x70, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64, 0x69, + 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x69, 0x76, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6c, 0x69, 0x73, + 0x74, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x65, 0x78, 0x74, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x70, 0x65, + 0x63, 0x69, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6d, 0x69, + 0x73, 0x63, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, 0x44, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x75, 0x72, 0x65, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x6d, 0x6c, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x65, 0x61, + 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x31, 0x38, 0x6e, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x48, 0x65, 0x61, 0x64, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, + 0x65, 0x61, 0x64, 0x2e, 0x6d, 0x69, 0x73, 0x63, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x74, 0x79, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6d, 0x65, 0x74, + 0x61, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, + 0x6c, 0x20, 0x69, 0x73, 0x20, 0x22, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x6d, + 0x69, 0x73, 0x63, 0x22, 0x20, 0x63, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65, + 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, + 0x67, 0x6c, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x20, + 0x61, 0x6e, 0x79, 0x20, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x6d, 0x69, 0x73, 0x63, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x6d, 0x69, 0x73, 0x63, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x6d, 0x69, 0x73, + 0x63, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x6d, 0x69, 0x73, 0x63, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64, 0x2e, + 0x6d, 0x69, 0x73, 0x63, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x31, 0x38, + 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x65, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, + 0x70, 0x61, 0x72, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x66, 0x6c, 0x6f, 0x77, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x74, 0x20, 0x73, + 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x64, 0x69, 0x73, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x2c, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x61, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x70, 0x61, 0x67, 0x65, 0x20, 0x68, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x20, 0x6f, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x2e, 0x20, 0x45, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x20, 0x6f, 0x6e, + 0x65, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x72, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x20, 0x70, 0x65, 0x72, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x69, 0x31, 0x38, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, + 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x49, 0x44, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x20, 0x55, 0x52, 0x49, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x72, 0x65, 0x66, 0x22, + 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, + 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6d, 0x65, 0x74, 0x61, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x69, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x69, 0x31, 0x38, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, + 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x49, 0x44, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x2d, 0x65, 0x71, 0x75, 0x69, 0x76, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, + 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, + 0x69, 0x6e, 0x6b, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x70, 0x72, 0x69, 0x6e, + 0x63, 0x69, 0x70, 0x6c, 0x65, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x61, 0x29, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, + 0x69, 0x63, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x62, 0x61, 0x72, 0x73, 0x2f, + 0x6d, 0x65, 0x6e, 0x75, 0x73, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x75, + 0x73, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x69, + 0x6e, 0x6b, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, + 0x6e, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x68, + 0x65, 0x61, 0x64, 0x20, 0x65, 0x2e, 0x67, 0x2e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2c, + 0x20, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x2c, 0x20, 0x6e, + 0x65, 0x78, 0x74, 0x2c, 0x20, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2c, 0x20, + 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x68, 0x65, 0x6c, 0x70, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x62, 0x29, 0x20, 0x74, 0x6f, 0x20, 0x6c, 0x69, + 0x6e, 0x6b, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x73, 0x65, 0x70, 0x61, + 0x72, 0x61, 0x74, 0x65, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x73, + 0x68, 0x65, 0x65, 0x74, 0x20, 0x28, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x73, + 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x29, 0x20, 0x74, 0x6f, 0x20, + 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x61, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x20, + 0x74, 0x6f, 0x20, 0x61, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, + 0x28, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x29, 0x20, + 0x62, 0x79, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, + 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x6e, + 0x6f, 0x64, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x70, + 0x72, 0x69, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, + 0x29, 0x20, 0x74, 0x6f, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x61, 0x20, + 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x70, 0x72, + 0x69, 0x6e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x2e, 0x67, 0x2e, 0x20, 0x61, + 0x20, 0x50, 0x6f, 0x73, 0x74, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, + 0x6f, 0x72, 0x20, 0x50, 0x44, 0x46, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x28, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x61, 0x6c, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x22, 0x20, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x3d, 0x22, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x22, 0x29, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x43, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x72, 0x65, 0x66, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x68, 0x72, 0x65, 0x66, 0x6c, 0x61, 0x6e, 0x67, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x6c, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x76, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, + 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x44, 0x65, 0x73, 0x63, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x63, + 0x68, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, + 0x65, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x73, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x31, 0x38, 0x6e, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x65, 0x73, 0x63, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x54, 0x65, 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x20, + 0x66, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x20, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2c, + 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, + 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x68, 0x61, + 0x72, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x72, 0x63, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x64, 0x65, 0x66, 0x65, 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x64, 0x65, 0x66, 0x65, 0x72, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x22, 0x20, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x70, + 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x6f, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, + 0x6e, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6e, 0x6f, 0x6e, 0x20, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x64, + 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x42, 0x6f, 0x64, 0x79, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x6f, + 0x64, 0x79, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x42, 0x6c, 0x6f, 0x63, + 0x6b, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, + 0x6e, 0x75, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x64, 0x69, 0x76, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x20, 0x6c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x63, + 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, + 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x46, 0x6c, 0x6f, 0x77, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, + 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, 0x50, 0x61, 0x72, 0x61, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x73, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x70, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x20, 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, + 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x73, 0x69, 0x78, 0x20, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x65, 0x61, + 0x64, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x68, + 0x31, 0x20, 0x28, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x20, + 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x29, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, 0x68, 0x36, 0x20, 0x28, 0x74, 0x68, + 0x65, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x69, 0x6d, 0x70, 0x6f, + 0x72, 0x74, 0x61, 0x6e, 0x74, 0x29, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x68, 0x31, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x68, 0x32, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, + 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x33, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x34, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, + 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x68, 0x35, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x68, 0x36, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, + 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x6c, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x6e, 0x6f, 0x72, 0x64, 0x65, + 0x72, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x6c, 0x69, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x28, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x65, 0x64, 0x29, 0x20, 0x6c, 0x69, 0x73, 0x74, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x6c, 0x69, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x69, 0x74, + 0x65, 0x6d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, + 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x46, 0x6c, 0x6f, 0x77, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, + 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x69, + 0x73, 0x74, 0x73, 0x20, 0x2d, 0x20, 0x64, 0x74, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x74, 0x65, 0x72, 0x6d, 0x2c, 0x20, 0x64, 0x64, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x69, 0x74, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x6c, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x64, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, + 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x64, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x46, 0x6c, 0x6f, 0x77, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x20, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x20, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x6e, 0x20, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, + 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x20, 0x48, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, + 0x6c, 0x20, 0x52, 0x75, 0x6c, 0x65, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x72, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, 0x50, + 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x20, + 0x54, 0x65, 0x78, 0x74, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x69, + 0x73, 0x20, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x20, 0x65, + 0x78, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x22, 0x69, 0x6d, + 0x67, 0x7c, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x7c, 0x62, 0x69, 0x67, + 0x7c, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x7c, 0x73, 0x75, 0x62, 0x7c, 0x73, + 0x75, 0x70, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, + 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, + 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x20, 0x66, 0x69, + 0x78, 0x65, 0x64, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x2d, 0x6c, 0x69, + 0x6b, 0x65, 0x20, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x73, 0x20, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x63, 0x69, 0x74, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x55, 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, + 0x65, 0x64, 0x2f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x20, 0x54, + 0x65, 0x78, 0x74, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x6e, 0x73, 0x2f, 0x64, 0x65, 0x6c, 0x20, 0x61, 0x72, + 0x65, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x20, 0x69, 0x6e, + 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x69, 0x74, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x69, 0x6e, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x70, 0x72, + 0x69, 0x61, 0x74, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x6e, 0x63, 0x6c, + 0x75, 0x64, 0x65, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, + 0x20, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x73, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x63, 0x63, 0x75, + 0x72, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x20, 0x69, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x73, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x46, 0x6c, 0x6f, 0x77, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, + 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, + 0x69, 0x74, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, + 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x44, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x65, 0x6c, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, + 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x46, 0x6c, 0x6f, 0x77, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x63, 0x69, 0x74, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x55, 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x44, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x20, 0x54, 0x68, 0x65, 0x20, 0x41, 0x6e, 0x63, 0x68, 0x6f, + 0x72, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x20, 0x69, 0x73, 0x20, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x22, 0x20, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x20, 0x74, 0x68, 0x61, + 0x74, 0x20, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x20, 0x73, 0x68, + 0x6f, 0x75, 0x6c, 0x64, 0x6e, 0x27, 0x74, 0x20, 0x62, 0x65, 0x20, 0x6e, + 0x65, 0x73, 0x74, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x61, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x68, 0x61, 0x72, + 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x72, + 0x65, 0x66, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, + 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, + 0x72, 0x65, 0x66, 0x6c, 0x61, 0x6e, 0x67, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, + 0x6f, 0x64, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x6c, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x76, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, + 0x70, 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x73, 0x68, 0x61, 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x72, 0x65, 0x63, 0x74, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x68, 0x61, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6f, 0x72, + 0x64, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x6f, + 0x6f, 0x72, 0x64, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, 0x49, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x73, 0x70, 0x61, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x20, 0x6c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x63, + 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, + 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x64, 0x6f, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x49, 0x31, 0x38, 0x4e, 0x20, 0x42, 0x69, 0x44, 0x69, + 0x20, 0x6f, 0x76, 0x65, 0x72, 0x2d, 0x72, 0x69, 0x64, 0x65, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x6f, 0x72, + 0x65, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x72, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x74, 0x72, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x74, 0x6c, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x72, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x6e, + 0x65, 0x20, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x6f, + 0x72, 0x65, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x65, 0x6d, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6d, 0x70, 0x68, 0x61, 0x73, + 0x69, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, + 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x20, 0x65, 0x6d, 0x70, 0x68, 0x61, + 0x73, 0x69, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, + 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x64, 0x66, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x64, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, + 0x6d, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x61, 0x6d, 0x70, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, + 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x62, 0x64, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0x69, 0x6e, 0x67, + 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x76, 0x61, 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x76, + 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x69, 0x74, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x62, 0x62, + 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x62, 0x62, 0x72, 0x65, + 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, + 0x6d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, + 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x71, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x64, 0x20, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x69, 0x74, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x75, 0x62, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, + 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, + 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x75, + 0x70, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x75, 0x70, 0x65, 0x72, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x66, 0x69, 0x78, 0x65, 0x64, 0x20, 0x70, 0x69, 0x74, 0x63, 0x68, 0x20, + 0x66, 0x6f, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x69, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x74, 0x61, + 0x6c, 0x69, 0x63, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, + 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x62, 0x6f, 0x6c, 0x64, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x69, 0x67, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x69, 0x67, 0x67, 0x65, 0x72, 0x20, + 0x66, 0x6f, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x6e, + 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, + 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x69, 0x73, 0x20, 0x75, 0x73, + 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x20, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x20, 0x61, 0x73, 0x20, 0x70, + 0x61, 0x72, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x70, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x70, 0x72, 0x65, + 0x63, 0x65, 0x64, 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x61, 0x6e, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x62, 0x65, 0x20, 0x65, + 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2f, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x20, 0x70, 0x61, 0x69, 0x72, 0x73, 0x20, 0x6f, 0x6e, + 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x69, 0x74, 0x73, 0x65, 0x6c, 0x66, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, + 0x62, 0x72, 0x65, 0x76, 0x69, 0x74, 0x79, 0x20, 0x69, 0x73, 0x20, 0x64, + 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x66, 0x6f, 0x72, 0x6d, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x6d, 0x69, 0x73, 0x63, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x65, 0x63, 0x6c, + 0x61, 0x72, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x64, 0x65, 0x62, 0x61, 0x73, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x61, 0x74, 0x61, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x64, 0x65, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x72, 0x69, 0x4c, 0x69, + 0x73, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x61, 0x6e, + 0x64, 0x62, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x54, + 0x65, 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, + 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x75, 0x73, 0x65, 0x6d, 0x61, 0x70, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x55, 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, + 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x4e, 0x4d, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x20, 0x69, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, + 0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x20, 0x61, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, + 0x72, 0x74, 0x79, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x69, 0x74, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x73, 0x65, 0x65, + 0x6d, 0x20, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, 0x74, 0x6f, + 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x20, 0x52, 0x44, 0x46, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, + 0x61, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x62, 0x62, + 0x72, 0x65, 0x76, 0x69, 0x61, 0x74, 0x65, 0x64, 0x20, 0x73, 0x79, 0x6e, + 0x74, 0x61, 0x78, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, 0x70, + 0x6c, 0x61, 0x63, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x62, 0x79, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x70, 0x61, 0x69, 0x72, 0x73, + 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x20, 0x74, 0x61, 0x67, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x69, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x49, 0x44, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x3d, 0x22, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x64, 0x61, 0x74, 0x61, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, + 0x66, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, + 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x6f, 0x20, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x61, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x20, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x73, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x20, 0x77, 0x68, 0x6f, + 0x20, 0x61, 0x72, 0x65, 0x6e, 0x27, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x65, 0x65, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x79, + 0x6f, 0x75, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x61, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x61, 0x6c, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6c, + 0x6f, 0x6e, 0x67, 0x64, 0x65, 0x73, 0x63, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x49, 0x6e, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2c, + 0x20, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, + 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2d, 0x73, 0x69, 0x64, 0x65, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, + 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x4e, 0x6f, + 0x74, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x74, 0x68, 0x65, 0x72, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x20, + 0x54, 0x68, 0x61, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x73, 0x20, + 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, + 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x61, + 0x6e, 0x64, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x74, 0x20, + 0x44, 0x54, 0x44, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6d, 0x67, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x72, 0x63, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x74, 0x22, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x54, 0x65, 0x78, 0x74, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x6f, 0x6e, 0x67, 0x64, 0x65, 0x73, 0x63, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, 0x69, 0x64, 0x74, 0x68, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x73, 0x65, 0x6d, + 0x61, 0x70, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, + 0x49, 0x22, 0x3e, 0x0a, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x09, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x6d, 0x61, 0x70, 0x20, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, + 0x6d, 0x61, 0x70, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, + 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x78, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, + 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x61, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x77, 0x69, 0x64, 0x65, + 0x6c, 0x79, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x09, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x64, 0x65, 0x20, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x20, 0x6d, 0x61, 0x70, 0x73, 0x20, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x73, 0x65, + 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x63, + 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, + 0x6d, 0x65, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6f, 0x72, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x65, 0x64, 0x20, 0x69, + 0x6e, 0x20, 0x61, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x70, 0x61, + 0x72, 0x61, 0x74, 0x65, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x6e, 0x27, 0x74, 0x20, 0x79, 0x65, + 0x74, 0x20, 0x77, 0x69, 0x64, 0x65, 0x6c, 0x79, 0x20, 0x73, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, + 0x61, 0x70, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x6d, 0x69, 0x73, 0x63, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x61, 0x72, 0x65, 0x61, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x69, 0x31, 0x38, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, + 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x53, 0x68, 0x65, 0x65, + 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x54, 0x65, 0x78, 0x74, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x72, 0x65, 0x61, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x68, 0x61, 0x70, 0x65, 0x22, 0x20, + 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x72, 0x65, 0x63, + 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x68, 0x61, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6f, 0x72, + 0x64, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x6f, + 0x6f, 0x72, 0x64, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x72, + 0x65, 0x66, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, + 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x68, 0x72, 0x65, + 0x66, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x6f, + 0x68, 0x72, 0x65, 0x66, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x6c, 0x74, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x54, 0x65, 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x73, 0x20, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, + 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x65, + 0x74, 0x68, 0x6f, 0x64, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x3d, 0x22, 0x67, 0x65, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x67, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x70, 0x6f, 0x73, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x65, 0x6e, 0x63, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x61, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x77, + 0x77, 0x77, 0x2d, 0x66, 0x6f, 0x72, 0x6d, 0x2d, 0x75, 0x72, 0x6c, 0x65, + 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6f, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x63, 0x65, 0x70, + 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x63, 0x65, 0x70, + 0x74, 0x2d, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, + 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x6e, 0x6f, + 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, 0x6d, 0x6f, + 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x4f, 0x4e, 0x45, 0x20, + 0x66, 0x69, 0x65, 0x6c, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x6e, 0x27, 0x74, + 0x20, 0x62, 0x65, 0x20, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x66, 0x6f, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x49, 0x44, 0x52, 0x45, 0x46, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x6b, 0x65, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, + 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, + 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6f, 0x6e, 0x62, 0x6c, 0x75, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x74, 0x65, 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x62, + 0x6f, 0x78, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, + 0x61, 0x64, 0x69, 0x6f, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x68, 0x69, 0x64, 0x64, 0x65, + 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, + 0x6f, 0x72, 0x6d, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x70, 0x75, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x61, + 0x6d, 0x65, 0x22, 0x3e, 0x0a, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x09, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x69, 0x73, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x62, 0x75, 0x74, + 0x20, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x20, 0x26, 0x61, 0x6d, 0x70, + 0x3b, 0x20, 0x72, 0x65, 0x73, 0x65, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x09, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x68, 0x65, 0x63, 0x6b, + 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x63, + 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, + 0x6c, 0x79, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, + 0x69, 0x7a, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x78, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x73, 0x72, 0x63, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x55, 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6c, + 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x73, 0x65, 0x6d, 0x61, + 0x70, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, + 0x61, 0x6d, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x69, 0x7a, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x75, 0x6c, + 0x74, 0x69, 0x70, 0x6c, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x62, 0x6c, + 0x75, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, + 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x54, 0x65, 0x78, 0x74, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x20, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, + 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x54, 0x65, 0x78, 0x74, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x2d, 0x6c, 0x69, 0x6e, + 0x65, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, + 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x66, 0x6f, 0x63, 0x75, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x77, 0x73, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x73, 0x22, + 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x61, 0x64, + 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x65, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, + 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x73, + 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x73, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4f, 0x6e, + 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6c, 0x65, 0x67, 0x65, 0x6e, + 0x64, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x68, + 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x20, 0x69, + 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x69, 0x66, 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x20, 0x73, + 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x62, + 0x65, 0x20, 0x70, 0x72, 0x65, 0x63, 0x65, 0x64, 0x65, 0x64, 0x20, 0x62, + 0x79, 0x20, 0x77, 0x68, 0x69, 0x74, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4e, 0x4f, 0x54, + 0x45, 0x3a, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x69, 0x73, + 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x66, + 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x31, 0x2e, 0x30, 0x20, 0x44, 0x54, 0x44, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x20, + 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x6e, + 0x64, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x69, 0x6e, 0x20, 0x48, 0x54, 0x4d, + 0x4c, 0x34, 0x20, 0x44, 0x54, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x66, 0x6f, 0x72, 0x6d, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x6d, 0x69, 0x73, 0x63, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x65, 0x67, 0x65, + 0x6e, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x73, 0x65, 0x74, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6b, 0x65, 0x79, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, + 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x75, 0x74, 0x74, + 0x6f, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x20, 0x69, 0x73, 0x20, 0x22, 0x46, 0x6c, 0x6f, 0x77, + 0x22, 0x20, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x20, + 0x61, 0x2c, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, + 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, + 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x3d, 0x22, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x65, 0x74, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x20, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x20, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, + 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x3d, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x44, 0x65, 0x72, 0x69, 0x76, 0x65, 0x64, 0x20, + 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x49, 0x45, 0x54, 0x46, 0x20, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x73, 0x74, 0x61, + 0x6e, 0x64, 0x61, 0x72, 0x64, 0x2c, 0x20, 0x73, 0x65, 0x65, 0x20, 0x5b, + 0x52, 0x46, 0x43, 0x31, 0x39, 0x34, 0x32, 0x5d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x62, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x73, 0x65, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x68, + 0x69, 0x63, 0x6b, 0x6e, 0x65, 0x73, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x20, 0x61, 0x72, 0x6f, + 0x75, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x20, 0x54, 0x68, 0x65, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x75, 0x6e, 0x69, + 0x74, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x73, 0x63, 0x72, 0x65, 0x65, + 0x6e, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x2e, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x66, 0x72, 0x61, + 0x6d, 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x73, 0x20, 0x77, + 0x68, 0x69, 0x63, 0x68, 0x20, 0x70, 0x61, 0x72, 0x74, 0x73, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x20, + 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x73, + 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x65, 0x64, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f, + 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x61, + 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x41, 0x4c, 0x53, + 0x20, 0x74, 0x6f, 0x20, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x61, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x68, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x69, + 0x67, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x76, 0x6f, 0x69, 0x64, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x62, 0x6f, 0x76, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, 0x65, + 0x6c, 0x6f, 0x77, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x68, 0x73, 0x69, 0x64, 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6c, 0x68, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x72, 0x68, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x76, 0x73, 0x69, 0x64, 0x65, 0x73, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, 0x6f, 0x78, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x52, 0x75, + 0x6c, 0x65, 0x73, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, + 0x20, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, + 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x73, + 0x20, 0x74, 0x6f, 0x20, 0x64, 0x72, 0x61, 0x77, 0x20, 0x62, 0x65, 0x74, + 0x77, 0x65, 0x65, 0x6e, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x3a, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x66, 0x20, 0x72, 0x75, + 0x6c, 0x65, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x62, 0x73, 0x65, 0x6e, + 0x74, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, 0x61, 0x73, 0x73, 0x75, 0x6d, + 0x65, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x6e, 0x6f, 0x6e, 0x65, 0x22, 0x20, 0x69, 0x66, 0x20, 0x62, + 0x6f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x69, 0x73, 0x20, 0x61, 0x62, 0x73, + 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x72, 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65, + 0x72, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x77, + 0x69, 0x73, 0x65, 0x20, 0x22, 0x61, 0x6c, 0x6c, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x6e, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x77, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x6c, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x68, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, + 0x74, 0x61, 0x6c, 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x68, 0x61, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x63, 0x68, 0x61, 0x72, 0x2c, 0x20, 0x65, 0x2e, 0x67, 0x2e, 0x20, 0x63, + 0x68, 0x61, 0x72, 0x3d, 0x27, 0x3a, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x68, 0x61, 0x72, 0x6f, 0x66, 0x66, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x63, + 0x68, 0x61, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, + 0x65, 0x66, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x79, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x63, 0x68, 0x61, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x68, 0x61, 0x72, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, + 0x74, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x68, 0x61, 0x72, 0x6f, + 0x66, 0x66, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, + 0x65, 0x6c, 0x6c, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, + 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, + 0x6f, 0x70, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, 0x6f, + 0x74, 0x74, 0x6f, 0x6d, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x63, 0x6f, 0x6c, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x6f, + 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x74, 0x68, + 0x65, 0x61, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x74, 0x66, + 0x6f, 0x6f, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x74, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, + 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x75, 0x6d, 0x6d, 0x61, + 0x72, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x54, 0x65, + 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, 0x69, 0x64, 0x74, + 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x50, + 0x69, 0x78, 0x65, 0x6c, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, + 0x72, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x54, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x72, 0x75, 0x6c, 0x65, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x54, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, + 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x55, 0x73, 0x65, + 0x20, 0x74, 0x68, 0x65, 0x61, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x75, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x20, 0x68, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x73, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x62, 0x72, 0x65, + 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x20, 0x70, + 0x61, 0x67, 0x65, 0x20, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x69, + 0x65, 0x73, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, + 0x74, 0x61, 0x74, 0x69, 0x63, 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x73, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x62, 0x6f, 0x64, 0x79, 0x20, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, + 0x69, 0x6e, 0x67, 0x20, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x73, 0x65, 0x20, 0x74, 0x66, 0x6f, 0x6f, + 0x74, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x65, 0x20, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x73, 0x20, 0x77, + 0x68, 0x65, 0x6e, 0x20, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x69, 0x6e, 0x67, + 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x20, 0x70, 0x61, 0x67, 0x65, 0x20, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x69, 0x65, 0x73, 0x2c, 0x20, 0x6f, + 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, + 0x20, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x73, 0x20, 0x77, 0x68, 0x65, + 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x20, + 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x72, 0x65, + 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, + 0x20, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x20, 0x70, + 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x73, 0x65, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x20, + 0x74, 0x62, 0x6f, 0x64, 0x79, 0x20, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, + 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x65, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, + 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x68, 0x65, 0x61, 0x64, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x74, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x68, 0x61, 0x6c, 0x69, 0x67, + 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, + 0x65, 0x6c, 0x6c, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x74, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x63, 0x65, 0x6c, 0x6c, 0x68, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, + 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x62, 0x6f, + 0x64, 0x79, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x74, 0x72, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x65, 0x6c, + 0x6c, 0x68, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x76, 0x61, 0x6c, + 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x20, + 0x61, 0x20, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x6c, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x49, + 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x20, 0x79, 0x6f, 0x75, + 0x20, 0x74, 0x6f, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x20, + 0x73, 0x65, 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, + 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x6c, + 0x75, 0x6d, 0x6e, 0x73, 0x20, 0x74, 0x6f, 0x67, 0x65, 0x74, 0x68, 0x65, + 0x72, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x61, 0x6e, 0x22, 0x20, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x31, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x4c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x68, 0x61, 0x6c, 0x69, 0x67, + 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, + 0x65, 0x6c, 0x6c, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x63, 0x6f, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x6c, 0x69, + 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, + 0x72, 0x74, 0x69, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x65, + 0x6c, 0x6c, 0x73, 0x20, 0x69, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x6f, 0x72, 0x65, + 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x2e, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x77, 0x69, 0x64, + 0x74, 0x68, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x6f, 0x66, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x2c, + 0x20, 0x65, 0x2e, 0x67, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x36, + 0x34, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x64, + 0x74, 0x68, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, + 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, + 0x30, 0x2e, 0x35, 0x2a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, + 0x20, 0x6f, 0x66, 0x20, 0x30, 0x2e, 0x35, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x63, 0x61, + 0x75, 0x73, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x6f, + 0x6e, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x20, + 0x61, 0x70, 0x70, 0x6c, 0x79, 0x20, 0x74, 0x6f, 0x20, 0x6d, 0x6f, 0x72, + 0x65, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x63, + 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x61, 0x6e, + 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x31, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, 0x69, 0x64, 0x74, + 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4d, 0x75, 0x6c, + 0x74, 0x69, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x68, 0x61, + 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x74, 0x68, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x74, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x68, 0x61, 0x6c, 0x69, 0x67, + 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, + 0x65, 0x6c, 0x6c, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x20, 0x69, 0x73, 0x20, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, + 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x77, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x77, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x63, 0x6f, + 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x68, 0x20, 0x69, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x68, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x2c, 0x20, 0x74, 0x64, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x20, 0x61, 0x63, + 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x73, 0x20, 0x62, 0x6f, 0x74, 0x68, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x68, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x46, 0x6c, 0x6f, 0x77, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x62, + 0x62, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x54, 0x65, + 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x78, 0x69, 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x52, 0x45, + 0x46, 0x53, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x73, 0x63, 0x6f, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x77, 0x73, 0x70, 0x61, 0x6e, 0x22, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x31, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, + 0x6f, 0x6c, 0x73, 0x70, 0x61, 0x6e, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x31, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x65, + 0x6c, 0x6c, 0x68, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x65, + 0x6c, 0x6c, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x46, + 0x6c, 0x6f, 0x77, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x62, 0x62, 0x72, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x54, 0x65, 0x78, 0x74, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x78, 0x69, + 0x73, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x52, 0x45, 0x46, 0x53, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x63, 0x6f, + 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x53, 0x63, + 0x6f, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x72, 0x6f, 0x77, 0x73, 0x70, 0x61, 0x6e, 0x22, 0x20, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x31, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x73, + 0x70, 0x61, 0x6e, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x3d, 0x22, 0x31, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x68, + 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x6c, 0x76, + 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x0a, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x3e, 0x0a +}; + +} //namespace FlightCrew diff --git a/src/FlightCrew/Schemas/AsSources/OpsSwitchXsd.cpp b/src/FlightCrew/Schemas/AsSources/OpsSwitchXsd.cpp new file mode 100644 index 0000000..683b460 --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/OpsSwitchXsd.cpp @@ -0,0 +1,170 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + (Part of the) Open Publication Structure (OPS) 2.0.1 v1.0, XSD + (only houses the , and elements) + + Specification: http://www.idpf.org/doc_library/epub/OPS_2.0.1_draft.htm + + Namespace: http://www.idpf.org/2007/ops + + Created by hand. + + */ + +namespace FlightCrew +{ + +const char* OPS_SWITCH_XSD_ID = "ops_switch.xsd"; +const unsigned int OPS_SWITCH_XSD_LEN = 1504; +const unsigned char OPS_SWITCH_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, + 0x3f, 0x3e, 0x0d, 0x0a, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x73, 0x3d, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, + 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x20, 0x78, + 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x6f, 0x70, 0x73, 0x3d, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x64, 0x70, + 0x66, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x37, 0x2f, 0x6f, + 0x70, 0x73, 0x22, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, + 0x39, 0x39, 0x39, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x20, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x69, 0x64, 0x70, 0x66, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x32, 0x30, 0x30, 0x37, 0x2f, 0x6f, 0x70, 0x73, 0x22, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x09, 0x3c, 0x78, 0x73, 0x3a, + 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x20, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x70, 0x73, 0x32, 0x30, 0x31, 0x2e, 0x78, + 0x73, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x09, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x22, 0x3e, 0x0d, 0x0a, + 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6f, + 0x70, 0x73, 0x3a, 0x63, 0x61, 0x73, 0x65, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x09, 0x09, + 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6f, 0x70, 0x73, 0x3a, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x09, + 0x09, 0x09, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x09, 0x09, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x09, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x61, 0x73, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x09, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x41, 0x6e, 0x79, 0x74, 0x68, + 0x69, 0x6e, 0x67, 0x20, 0x67, 0x6f, 0x65, 0x73, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x09, 0x09, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x09, 0x09, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, + 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x09, 0x09, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x79, + 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2d, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x09, 0x09, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x09, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x42, 0x61, + 0x73, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x61, 0x6e, 0x79, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, + 0x3b, 0x20, 0x61, 0x63, 0x74, 0x73, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x20, + 0x64, 0x69, 0x76, 0x2e, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x09, 0x09, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x09, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x3a, 0x46, 0x6c, + 0x6f, 0x77, 0x22, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x09, 0x09, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x09, 0x09, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x09, 0x09, 0x09, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x09, 0x09, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x09, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x3e, 0x0d, 0x0a +}; + +} //namespace FlightCrew diff --git a/src/FlightCrew/Schemas/AsSources/SignaturesXsd.cpp b/src/FlightCrew/Schemas/AsSources/SignaturesXsd.cpp new file mode 100644 index 0000000..593b94a --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/SignaturesXsd.cpp @@ -0,0 +1,94 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + OCF META-INF/signatures.xml, XSD + + Specification: http://www.idpf.org/doc_library/epub/OCF_2.0.1_draft.doc + + Namespace: urn:oasis:names:tc:opendocument:xmlns:container + + Created by hand. + + */ + +namespace FlightCrew +{ + +const char* SIGNATURES_XSD_ID = "signatures.xsd"; +const unsigned int SIGNATURES_XSD_LEN = 589; +const unsigned char SIGNATURES_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, + 0x3f, 0x3e, 0x0d, 0x0a, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x3d, 0x22, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x75, 0x72, + 0x6e, 0x3a, 0x6f, 0x61, 0x73, 0x69, 0x73, 0x3a, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x3a, 0x74, 0x63, 0x3a, 0x6f, 0x70, 0x65, 0x6e, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x3a, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, + 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x22, 0x0d, 0x0a, + 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x73, 0x69, 0x67, 0x3d, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x30, 0x2f, + 0x30, 0x39, 0x2f, 0x78, 0x6d, 0x6c, 0x64, 0x73, 0x69, 0x67, 0x23, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x73, + 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, + 0x2f, 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x20, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x32, 0x30, 0x30, 0x30, 0x2f, 0x30, 0x39, 0x2f, 0x78, 0x6d, 0x6c, + 0x64, 0x73, 0x69, 0x67, 0x23, 0x22, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x78, + 0x6d, 0x6c, 0x64, 0x73, 0x69, 0x67, 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2d, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x69, 0x67, 0x3a, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x3e, 0x0d, + 0x0a +}; + + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Schemas/AsSources/Svg11Xsd.cpp b/src/FlightCrew/Schemas/AsSources/Svg11Xsd.cpp new file mode 100644 index 0000000..f15afc9 --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/Svg11Xsd.cpp @@ -0,0 +1,17946 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + Scalable Vector Graphics (SVG) 1.1 (Second Edition), XSD + + Specification: http://www.w3.org/TR/SVG11/ + + Namespace: http://www.w3.org/2000/svg + + Created by converting the SVG flat DTD. + + */ + +namespace FlightCrew +{ + +const char* SVG11_XSD_ID = "svg11.xsd"; +const unsigned int SVG11_XSD_LEN = 214828; +const unsigned char SVG11_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, + 0x3f, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, + 0x2e, 0x31, 0x20, 0x44, 0x54, 0x44, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x31, 0x31, 0x2e, 0x64, 0x74, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x53, 0x56, + 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x54, 0x44, 0x0d, 0x0a, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, + 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, + 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, + 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, + 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x54, 0x68, 0x65, 0x20, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x62, 0x6c, 0x65, + 0x20, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x20, 0x47, 0x72, 0x61, 0x70, + 0x68, 0x69, 0x63, 0x73, 0x20, 0x28, 0x53, 0x56, 0x47, 0x29, 0x0d, 0x0a, + 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, + 0x6f, 0x72, 0x6c, 0x64, 0x20, 0x57, 0x69, 0x64, 0x65, 0x20, 0x57, 0x65, + 0x62, 0x20, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x74, 0x69, 0x75, 0x6d, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x4d, 0x61, 0x73, 0x73, + 0x61, 0x63, 0x68, 0x75, 0x73, 0x65, 0x74, 0x74, 0x73, 0x20, 0x49, 0x6e, + 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x54, + 0x65, 0x63, 0x68, 0x6e, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x2c, 0x20, 0x49, + 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x20, 0x4e, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x64, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x63, 0x68, 0x65, 0x72, 0x63, 0x68, 0x65, + 0x20, 0x65, 0x6e, 0x20, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x69, 0x71, 0x75, 0x65, 0x20, 0x65, 0x74, 0x20, 0x65, 0x6e, 0x20, 0x41, + 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x71, 0x75, 0x65, 0x2c, 0x20, + 0x4b, 0x65, 0x69, 0x6f, 0x20, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x74, 0x79, 0x29, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x73, 0x65, 0x2c, 0x20, + 0x63, 0x6f, 0x70, 0x79, 0x2c, 0x20, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x44, 0x54, 0x44, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x74, 0x73, 0x0d, + 0x0a, 0x20, 0x20, 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, + 0x69, 0x6e, 0x67, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, + 0x79, 0x20, 0x70, 0x75, 0x72, 0x70, 0x6f, 0x73, 0x65, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x20, 0x66, 0x65, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x68, 0x65, 0x72, 0x65, 0x62, 0x79, 0x0d, + 0x0a, 0x20, 0x20, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x69, + 0x6e, 0x20, 0x70, 0x65, 0x72, 0x70, 0x65, 0x74, 0x75, 0x69, 0x74, 0x79, + 0x2c, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, + 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, + 0x65, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, + 0x6e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x0d, 0x0a, + 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x70, 0x61, 0x72, 0x61, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x20, + 0x69, 0x6e, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x63, 0x6f, 0x70, 0x69, 0x65, + 0x73, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x70, 0x79, + 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, + 0x73, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x6e, 0x6f, 0x0d, 0x0a, 0x20, + 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x73, 0x75, 0x69, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x75, 0x72, + 0x70, 0x6f, 0x73, 0x65, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x49, 0x74, 0x20, 0x69, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x64, 0x20, 0x22, 0x61, 0x73, 0x20, 0x69, 0x73, 0x22, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x20, 0x65, 0x78, 0x70, 0x72, + 0x65, 0x73, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x72, 0x20, 0x69, 0x6d, 0x70, + 0x6c, 0x69, 0x65, 0x64, 0x20, 0x77, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x74, + 0x79, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x3a, 0x20, 0x20, 0x20, 0x4a, + 0x75, 0x6e, 0x20, 0x46, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, + 0x3c, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x2e, 0x6a, 0x75, + 0x6e, 0x40, 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, + 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, + 0x73, 0x76, 0x67, 0x31, 0x31, 0x2e, 0x64, 0x74, 0x64, 0x2c, 0x76, 0x20, + 0x31, 0x2e, 0x32, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, + 0x32, 0x30, 0x20, 0x31, 0x38, 0x3a, 0x30, 0x37, 0x3a, 0x34, 0x33, 0x20, + 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, + 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x72, 0x69, + 0x76, 0x65, 0x72, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x31, + 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x44, 0x54, 0x44, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x69, 0x73, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, + 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, + 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x44, 0x54, 0x44, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, + 0x2e, 0x31, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, + 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, + 0x2f, 0x73, 0x76, 0x67, 0x31, 0x31, 0x2e, 0x64, 0x74, 0x64, 0x22, 0x0d, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, + 0x20, 0x20, 0x55, 0x73, 0x65, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x55, + 0x52, 0x49, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x30, 0x2f, + 0x73, 0x76, 0x67, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x53, 0x65, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0d, 0x0a, + 0x20, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x73, 0x65, + 0x20, 0x6f, 0x66, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x73, 0x20, 0x69, + 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, 0x2e, 0x0d, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x66, + 0x75, 0x74, 0x75, 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x20, 0x77, 0x69, + 0x74, 0x68, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x72, 0x65, 0x2d, 0x46, 0x72, 0x61, + 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x52, 0x65, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x50, 0x6c, 0x61, + 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, + 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, + 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x0d, 0x0a, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x2e, + 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, + 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, + 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, + 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x52, + 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, + 0x6f, 0x72, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, + 0x32, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, 0x30, + 0x20, 0x31, 0x38, 0x3a, 0x30, 0x37, 0x3a, 0x34, 0x33, 0x20, 0x66, 0x75, + 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, + 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, + 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, + 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, + 0x77, 0x6f, 0x72, 0x6b, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, + 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, + 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x6e, 0x65, 0x65, + 0x64, 0x65, 0x64, 0x20, 0x6f, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, + 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x53, 0x56, 0x47, 0x0d, 0x0a, 0x20, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2c, 0x20, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x0d, 0x0a, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2b, 0x20, 0x44, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x2b, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2b, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2b, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x0d, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x31, 0x2e, 0x31, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x66, 0x69, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, + 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, + 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, + 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, + 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, + 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, + 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, + 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x32, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, + 0x30, 0x34, 0x2f, 0x32, 0x30, 0x20, 0x31, 0x38, 0x3a, 0x30, 0x37, 0x3a, + 0x34, 0x32, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, + 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x31, 0x2e, 0x31, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, + 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, + 0x73, 0x76, 0x67, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x0d, 0x0a, 0x20, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, + 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x2e, 0x0d, 0x0a, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x73, 0x3d, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x58, 0x4d, 0x4c, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x73, 0x76, 0x67, 0x3d, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x30, 0x2f, 0x73, 0x76, + 0x67, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, + 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x46, + 0x6f, 0x72, 0x6d, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, + 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x22, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x32, 0x30, 0x30, 0x30, 0x2f, 0x73, 0x76, 0x67, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x63, 0x61, 0x6c, 0x61, + 0x62, 0x6c, 0x65, 0x20, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x20, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x28, 0x53, 0x56, 0x47, + 0x29, 0x20, 0x76, 0x31, 0x2e, 0x31, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, + 0x4c, 0x20, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, + 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x76, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x77, 0x65, 0x61, 0x6b, 0x65, 0x64, + 0x20, 0x62, 0x79, 0x20, 0x68, 0x61, 0x6e, 0x64, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x78, 0x6c, + 0x69, 0x6e, 0x6b, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x58, 0x4d, 0x4c, 0x2f, 0x31, 0x39, + 0x39, 0x38, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x22, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, + 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x66, 0x61, 0x6c, 0x73, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, + 0x72, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x63, + 0x6c, 0x69, 0x70, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x27, 0x20, 0x6f, 0x72, + 0x20, 0x27, 0x66, 0x69, 0x6c, 0x6c, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x27, + 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x43, 0x6c, 0x69, 0x70, 0x46, 0x69, + 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x6e, 0x6f, 0x6e, 0x7a, 0x65, 0x72, 0x6f, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x65, 0x76, 0x65, 0x6e, 0x6f, + 0x64, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, + 0x43, 0x32, 0x30, 0x34, 0x35, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x3c, 0x63, 0x6f, 0x6f, + 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x3e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x6f, 0x66, 0x20, 0x3c, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, + 0x6e, 0x61, 0x74, 0x65, 0x3e, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x43, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x3c, 0x63, 0x6f, 0x6c, + 0x6f, 0x72, 0x3e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x3c, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, + 0x72, 0x3e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x6e, 0x74, 0x65, 0x67, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, + 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x63, 0x6f, 0x64, + 0x65, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, + 0x46, 0x43, 0x33, 0x30, 0x36, 0x36, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x4e, 0x4d, 0x54, 0x4f, 0x4b, 0x45, + 0x4e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x2d, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, + 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x2c, + 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, 0x43, + 0x33, 0x30, 0x36, 0x36, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4c, 0x61, + 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x3c, 0x6c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x3e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x61, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x3c, 0x6c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x3e, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x3c, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x3e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x3c, 0x6e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x3e, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6f, + 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x3c, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x3e, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x70, + 0x61, 0x63, 0x69, 0x74, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x70, 0x61, 0x74, 0x68, + 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x50, 0x61, 0x74, 0x68, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, + 0x27, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x50, 0x72, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, + 0x6f, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x65, 0x78, 0x70, 0x72, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x41, 0x6e, 0x20, 0x53, 0x56, 0x47, 0x20, 0x63, 0x6f, 0x6c, 0x6f, + 0x72, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x52, 0x47, 0x42, + 0x20, 0x70, 0x6c, 0x75, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x20, 0x49, 0x43, 0x43, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x72, 0x62, 0x69, 0x74, 0x72, 0x61, 0x72, + 0x79, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x73, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, + 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x61, 0x20, 0x55, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x20, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x49, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x2c, 0x20, 0x73, 0x65, 0x65, + 0x20, 0x5b, 0x55, 0x52, 0x49, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x55, + 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x76, + 0x69, 0x65, 0x77, 0x42, 0x6f, 0x78, 0x27, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x56, 0x69, 0x65, 0x77, 0x42, 0x6f, 0x78, 0x53, 0x70, 0x65, 0x63, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x31, 0x2e, 0x31, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, + 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, + 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, + 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, + 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, + 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, + 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, + 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, + 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x33, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x2f, 0x31, 0x31, 0x2f, 0x30, 0x33, 0x20, 0x31, 0x35, + 0x3a, 0x35, 0x34, 0x3a, 0x31, 0x34, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, + 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x31, 0x2e, 0x31, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, + 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, + 0x77, 0x6f, 0x20, 0x70, 0x61, 0x72, 0x74, 0x73, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x65, 0x64, 0x20, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x27, 0x41, 0x27, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x27, 0x42, + 0x27, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x41, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, + 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x53, 0x56, 0x47, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x42, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, + 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2d, 0x71, + 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x53, + 0x56, 0x47, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x41, 0x3a, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x58, 0x4d, 0x4c, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x31, 0x2e, 0x20, 0x44, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x65, 0x20, 0x61, 0x20, 0x25, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x72, + 0x65, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3b, 0x20, 0x63, 0x6f, 0x6e, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x2c, + 0x20, 0x75, 0x73, 0x65, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x6f, 0x20, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x70, 0x72, 0x65, + 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, + 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x20, 0x27, 0x25, + 0x4e, 0x53, 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3b, + 0x27, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, + 0x54, 0x44, 0x20, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x73, + 0x6f, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x75, 0x6e, 0x6c, 0x65, 0x73, + 0x73, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x72, + 0x69, 0x64, 0x64, 0x65, 0x6e, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x62, 0x65, 0x68, 0x61, 0x76, + 0x69, 0x6f, 0x75, 0x72, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x6c, + 0x20, 0x44, 0x54, 0x44, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x70, 0x72, + 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x65, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x32, 0x2e, 0x20, 0x44, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x61, + 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x28, 0x65, 0x67, 0x2e, 0x2c, 0x20, + 0x25, 0x53, 0x56, 0x47, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3b, 0x29, + 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x55, 0x52, 0x49, + 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x75, + 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3a, 0x0d, 0x0a, + 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x33, 0x2e, 0x20, 0x44, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, + 0x20, 0x28, 0x65, 0x67, 0x2e, 0x2c, 0x20, 0x25, 0x53, 0x56, 0x47, 0x2e, + 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x3b, 0x29, 0x20, 0x63, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x70, + 0x72, 0x65, 0x66, 0x69, 0x78, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x28, 0x73, 0x29, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x73, 0x65, 0x20, 0x77, + 0x68, 0x65, 0x6e, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, + 0x67, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x73, 0x20, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x72, + 0x69, 0x64, 0x64, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x20, + 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x6e, 0x20, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x2e, 0x20, 0x49, 0x66, 0x20, 0x6e, 0x6f, 0x20, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, + 0x78, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x73, 0x20, 0x64, 0x65, + 0x73, 0x69, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x6d, + 0x70, 0x74, 0x79, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x0d, + 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x34, 0x2e, 0x20, 0x44, + 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x20, 0x28, 0x65, 0x67, 0x2e, 0x2c, 0x20, 0x25, 0x53, 0x56, 0x47, + 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x29, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x64, + 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x28, 0x65, 0x73, 0x29, 0x20, + 0x28, 0x65, 0x67, 0x2e, 0x2c, 0x20, 0x27, 0x25, 0x53, 0x56, 0x47, 0x2e, + 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x3b, 0x3a, 0x27, 0x29, 0x20, 0x75, + 0x73, 0x65, 0x64, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, 0x20, + 0x69, 0x73, 0x20, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x2c, 0x20, 0x61, + 0x6e, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x20, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x69, 0x74, 0x20, 0x69, + 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x35, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x20, 0x25, 0x53, 0x56, 0x47, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, + 0x6e, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x53, 0x56, + 0x47, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x20, 0x65, 0x6d, 0x62, 0x65, 0x64, + 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x20, + 0x54, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x65, + 0x6d, 0x70, 0x74, 0x79, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x44, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x65, 0x20, 0x61, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, + 0x58, 0x4c, 0x49, 0x4e, 0x4b, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, 0x4c, + 0x69, 0x6e, 0x6b, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x44, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x61, 0x20, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x20, 0x25, 0x4e, 0x53, 0x2e, 0x64, 0x65, 0x63, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x20, 0x63, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, + 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, 0x2c, + 0x20, 0x70, 0x6c, 0x75, 0x73, 0x20, 0x74, 0x68, 0x65, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x69, 0x74, 0x73, 0x20, 0x66, 0x6f, + 0x72, 0x6d, 0x20, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, + 0x20, 0x6f, 0x6e, 0x20, 0x77, 0x68, 0x65, 0x74, 0x68, 0x65, 0x72, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, + 0x6e, 0x67, 0x20, 0x69, 0x73, 0x20, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x44, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x61, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x20, 0x25, 0x53, 0x56, 0x47, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x61, 0x6c, 0x6c, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, + 0x20, 0x53, 0x56, 0x47, 0x2c, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x77, + 0x68, 0x65, 0x6e, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, + 0x67, 0x20, 0x69, 0x73, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, + 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x42, 0x3a, 0x20, 0x53, 0x56, + 0x47, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x36, 0x2e, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x64, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2d, 0x71, 0x75, 0x61, + 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x75, 0x72, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, + 0x68, 0x61, 0x70, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x6d, 0x61, 0x72, 0x6b, 0x65, + 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x70, 0x61, 0x74, 0x74, 0x65, + 0x72, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, + 0x6c, 0x69, 0x70, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x66, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, + 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x76, 0x69, 0x65, 0x77, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, + 0x54, 0x44, 0x20, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, + 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x31, 0x31, 0x2d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, + 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, + 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, + 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, + 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, + 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, + 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, + 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x31, 0x31, + 0x2d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, + 0x20, 0x31, 0x2e, 0x33, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x31, + 0x2f, 0x31, 0x34, 0x20, 0x31, 0x35, 0x3a, 0x31, 0x31, 0x3a, 0x30, 0x33, + 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, + 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, + 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, + 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, + 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, + 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, + 0x2f, 0x73, 0x76, 0x67, 0x31, 0x31, 0x2d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x6f, + 0x66, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x74, + 0x68, 0x61, 0x74, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x75, 0x70, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, + 0x6c, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x53, 0x56, 0x47, 0x20, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x6d, 0x6f, + 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x55, + 0x73, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, + 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, + 0x72, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x75, 0x73, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x75, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, + 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x73, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, 0x61, + 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, + 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, + 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, + 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, + 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6d, 0x61, 0x72, 0x6b, 0x65, + 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, + 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x67, + 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, + 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x6d, 0x6f, + 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x50, + 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x61, 0x74, + 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6c, 0x69, 0x70, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6c, + 0x69, 0x70, 0x50, 0x61, 0x74, 0x68, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x63, 0x6c, 0x69, 0x70, 0x50, 0x61, 0x74, 0x68, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x6d, 0x61, 0x73, + 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x6d, 0x61, 0x73, 0x6b, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, + 0x73, 0x76, 0x67, 0x2d, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, + 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, + 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x63, 0x75, 0x72, + 0x73, 0x6f, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x68, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x6d, 0x6f, + 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, + 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x76, 0x69, 0x65, 0x77, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x76, 0x69, + 0x65, 0x77, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x76, 0x69, 0x65, 0x77, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, + 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, + 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x61, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, + 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, + 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, + 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, + 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, + 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x31, 0x31, 0x2d, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x64, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x44, 0x54, 0x44, 0x20, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, + 0x73, 0x76, 0x67, 0x31, 0x31, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, + 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, + 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, + 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, + 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, + 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, + 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, + 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, + 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, + 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, + 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, + 0x73, 0x76, 0x67, 0x31, 0x31, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x34, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, + 0x35, 0x3a, 0x31, 0x31, 0x3a, 0x30, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, + 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x73, 0x76, 0x67, 0x31, 0x31, 0x2d, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x65, 0x74, 0x20, + 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, + 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x70, 0x72, 0x65, + 0x73, 0x65, 0x6e, 0x74, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, + 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x53, 0x56, 0x47, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x45, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x46, 0x65, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x46, 0x65, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x64, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x43, + 0x6c, 0x61, 0x73, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x53, 0x68, 0x65, 0x65, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x74, 0x79, 0x6c, 0x65, 0x53, 0x68, 0x65, 0x65, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x4c, 0x69, 0x73, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x74, 0x65, + 0x78, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x53, 0x68, 0x69, 0x66, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x46, 0x6f, 0x6e, 0x74, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x46, 0x6f, 0x6e, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x46, 0x6f, 0x6e, 0x74, 0x53, 0x69, 0x7a, 0x65, + 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x47, + 0x6c, 0x79, 0x70, 0x68, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x48, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, + 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x4f, + 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, + 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4b, + 0x65, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x54, + 0x65, 0x78, 0x74, 0x44, 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, 0x72, 0x69, 0x74, 0x69, 0x6e, 0x67, + 0x2d, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, + 0x72, 0x2d, 0x74, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x6c, 0x2d, 0x74, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x74, 0x62, 0x2d, 0x72, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x72, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x72, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x74, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, + 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2d, 0x62, + 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x61, 0x75, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x6c, + 0x69, 0x6e, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x2d, + 0x65, 0x64, 0x67, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x62, + 0x65, 0x66, 0x6f, 0x72, 0x65, 0x2d, 0x65, 0x64, 0x67, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x63, 0x65, 0x6e, 0x74, + 0x72, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x66, 0x74, 0x65, 0x72, 0x2d, 0x65, + 0x64, 0x67, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x66, + 0x74, 0x65, 0x72, 0x2d, 0x65, 0x64, 0x67, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x64, + 0x65, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x62, 0x65, 0x74, 0x69, 0x63, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x68, + 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x74, 0x68, + 0x65, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, + 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x61, + 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x73, 0x68, 0x69, 0x66, 0x74, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x68, 0x69, 0x66, + 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x72, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, + 0x74, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x72, 0x74, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, + 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x6f, 0x6d, + 0x69, 0x6e, 0x61, 0x6e, 0x74, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x75, 0x74, 0x6f, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x75, 0x73, 0x65, 0x2d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x6e, 0x6f, 0x2d, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x73, 0x65, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x69, 0x64, 0x65, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x62, 0x65, 0x74, 0x69, 0x63, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x68, 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6d, + 0x61, 0x74, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6d, 0x69, + 0x64, 0x64, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, + 0x66, 0x74, 0x65, 0x72, 0x2d, 0x65, 0x64, 0x67, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, + 0x65, 0x78, 0x74, 0x2d, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x2d, 0x65, + 0x64, 0x67, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x2d, 0x6f, + 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x68, + 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x47, 0x6c, 0x79, + 0x70, 0x68, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x48, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x2d, + 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, + 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x47, 0x6c, 0x79, 0x70, + 0x68, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x6b, 0x65, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4b, 0x65, + 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x2d, 0x73, 0x70, 0x61, 0x63, 0x69, + 0x6e, 0x67, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6e, 0x63, + 0x68, 0x6f, 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x65, 0x6e, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x64, 0x65, + 0x63, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x65, 0x78, 0x74, + 0x44, 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x6e, 0x69, 0x63, 0x6f, 0x64, 0x65, + 0x2d, 0x62, 0x69, 0x64, 0x69, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, + 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x65, 0x6d, 0x62, 0x65, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x62, 0x69, 0x64, 0x69, 0x2d, 0x6f, 0x76, 0x65, 0x72, 0x72, + 0x69, 0x64, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, 0x6f, 0x72, 0x64, 0x2d, 0x73, 0x70, + 0x61, 0x63, 0x69, 0x6e, 0x67, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, + 0x6d, 0x69, 0x6c, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x46, 0x6f, 0x6e, 0x74, 0x46, 0x61, 0x6d, 0x69, + 0x6c, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x46, 0x6f, 0x6e, 0x74, 0x53, 0x69, + 0x7a, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x2d, 0x61, 0x64, 0x6a, 0x75, 0x73, + 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x46, 0x6f, 0x6e, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x41, 0x64, 0x6a, + 0x75, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, + 0x6e, 0x74, 0x2d, 0x73, 0x74, 0x72, 0x65, 0x74, 0x63, 0x68, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x77, 0x69, 0x64, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x61, 0x72, 0x72, 0x6f, + 0x77, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x75, 0x6c, 0x74, 0x72, 0x61, 0x2d, 0x63, + 0x6f, 0x6e, 0x64, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x65, 0x78, + 0x74, 0x72, 0x61, 0x2d, 0x63, 0x6f, 0x6e, 0x64, 0x65, 0x6e, 0x73, 0x65, + 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x64, 0x65, 0x6e, 0x73, 0x65, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x73, 0x65, 0x6d, 0x69, 0x2d, 0x63, 0x6f, 0x6e, 0x64, 0x65, + 0x6e, 0x73, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x65, 0x6d, 0x69, 0x2d, 0x65, + 0x78, 0x70, 0x61, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x65, 0x78, 0x70, + 0x61, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x65, 0x78, 0x74, 0x72, 0x61, + 0x2d, 0x65, 0x78, 0x70, 0x61, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x75, + 0x6c, 0x74, 0x72, 0x61, 0x2d, 0x65, 0x78, 0x70, 0x61, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x72, 0x6d, 0x61, + 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x69, 0x74, 0x61, 0x6c, 0x69, 0x63, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, + 0x62, 0x6c, 0x69, 0x71, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, + 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, + 0x2d, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x6d, + 0x61, 0x6c, 0x6c, 0x2d, 0x63, 0x61, 0x70, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, + 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, + 0x6e, 0x74, 0x2d, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, + 0x6f, 0x6c, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x31, 0x30, + 0x30, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x32, 0x30, 0x30, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x33, 0x30, 0x30, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x34, 0x30, 0x30, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x35, 0x30, 0x30, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x36, + 0x30, 0x30, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x37, 0x30, 0x30, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x38, 0x30, 0x30, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x39, 0x30, 0x30, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, + 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4d, 0x61, + 0x72, 0x6b, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, + 0x72, 0x6b, 0x65, 0x72, 0x2d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4d, 0x61, + 0x72, 0x6b, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2d, 0x6d, 0x69, 0x64, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4d, 0x61, 0x72, + 0x6b, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, + 0x72, 0x6b, 0x65, 0x72, 0x2d, 0x65, 0x6e, 0x64, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4d, 0x61, 0x72, 0x6b, + 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, + 0x73, 0x76, 0x67, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x6f, 0x72, + 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x64, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x72, + 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x73, 0x74, 0x6f, 0x70, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x6f, + 0x70, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4f, 0x70, 0x61, + 0x63, 0x69, 0x74, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6c, 0x69, 0x70, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x43, 0x6c, 0x69, 0x70, 0x50, 0x61, 0x74, 0x68, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x63, 0x6c, 0x69, 0x70, 0x2d, 0x70, 0x61, 0x74, 0x68, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6c, 0x69, 0x70, 0x50, 0x61, 0x74, 0x68, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x63, 0x6c, 0x69, 0x70, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6c, 0x69, 0x70, 0x46, 0x69, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x6d, 0x61, 0x73, 0x6b, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x4d, 0x61, 0x73, 0x6b, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, + 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6d, 0x61, 0x73, 0x6b, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4d, 0x61, 0x73, 0x6b, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x66, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x66, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, + 0x75, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x52, 0x47, 0x42, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, + 0x69, 0x6e, 0x65, 0x61, 0x72, 0x52, 0x47, 0x42, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, + 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x75, 0x72, 0x73, 0x6f, + 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, + 0x67, 0x31, 0x31, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x73, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x6f, 0x73, 0x74, 0x2d, 0x46, 0x72, + 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x52, 0x65, 0x64, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x50, 0x6c, + 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x6f, 0x72, 0x65, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x6f, 0x72, 0x65, 0x20, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x63, 0x6f, 0x72, 0x65, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, + 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, + 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, + 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, + 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, + 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, + 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, + 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, + 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, + 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x33, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, 0x38, 0x20, 0x31, + 0x33, 0x3a, 0x35, 0x30, 0x3a, 0x32, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, + 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x6f, 0x72, 0x65, 0x20, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, + 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, + 0x63, 0x6f, 0x72, 0x65, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, + 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x43, 0x6f, 0x72, 0x65, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x64, 0x2c, 0x20, 0x78, 0x6d, 0x6c, + 0x3a, 0x62, 0x61, 0x73, 0x65, 0x2c, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, + 0x61, 0x6e, 0x67, 0x2c, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x63, 0x6f, 0x72, 0x65, 0x20, 0x73, 0x65, 0x74, 0x20, 0x6f, + 0x66, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, + 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x6e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x69, 0x64, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, + 0x44, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x62, 0x61, 0x73, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6c, + 0x61, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x69, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6f, 0x72, + 0x65, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x41, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, + 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, + 0x6e, 0x65, 0x72, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, + 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, + 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, + 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, + 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2d, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, + 0x31, 0x2e, 0x32, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, + 0x32, 0x30, 0x20, 0x31, 0x38, 0x3a, 0x30, 0x37, 0x3a, 0x34, 0x32, 0x20, + 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, + 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, + 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, + 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, + 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x62, 0x61, 0x63, 0x6b, 0x67, + 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x65, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x73, 0x65, 0x74, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, + 0x75, 0x6e, 0x64, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, + 0x79, 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, + 0x20, 0x27, 0x6e, 0x65, 0x77, 0x27, 0x2c, 0x20, 0x27, 0x61, 0x63, 0x63, + 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x27, 0x29, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, 0x63, 0x6b, + 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x2d, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, + 0x6f, 0x75, 0x6e, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, + 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x2d, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x65, 0x72, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, + 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x56, 0x69, 0x65, 0x77, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x41, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, + 0x56, 0x69, 0x65, 0x77, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x76, 0x69, 0x65, 0x77, 0x70, + 0x6f, 0x72, 0x74, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, + 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, + 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, + 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, + 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x76, 0x69, 0x65, 0x77, 0x70, 0x6f, 0x72, 0x74, 0x2d, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, + 0x2e, 0x32, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, + 0x30, 0x20, 0x31, 0x38, 0x3a, 0x30, 0x37, 0x3a, 0x34, 0x33, 0x20, 0x66, + 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, + 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x56, 0x69, 0x65, 0x77, + 0x70, 0x6f, 0x72, 0x74, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x76, 0x69, 0x65, 0x77, 0x70, + 0x6f, 0x72, 0x74, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, + 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x56, + 0x69, 0x65, 0x77, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x69, 0x70, + 0x2c, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x66, 0x6c, 0x6f, 0x77, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x56, 0x69, + 0x65, 0x77, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x73, 0x65, 0x74, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x27, 0x63, 0x6c, 0x69, 0x70, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, + 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, + 0x67, 0x2e, 0x2c, 0x20, 0x27, 0x61, 0x75, 0x74, 0x6f, 0x27, 0x2c, 0x20, + 0x72, 0x65, 0x63, 0x74, 0x28, 0x2e, 0x2e, 0x2e, 0x29, 0x29, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x43, 0x6c, 0x69, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6c, 0x69, 0x70, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, + 0x6c, 0x69, 0x70, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x43, 0x6c, 0x69, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x76, 0x65, + 0x72, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x76, 0x65, 0x72, 0x66, 0x6c, 0x6f, 0x77, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, + 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x75, 0x74, 0x6f, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, + 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x63, 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x76, 0x65, 0x72, 0x66, + 0x6c, 0x6f, 0x77, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x76, 0x69, 0x65, + 0x77, 0x70, 0x6f, 0x72, 0x74, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x20, 0x41, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, + 0x2e, 0x31, 0x20, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x70, 0x61, + 0x69, 0x6e, 0x74, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, + 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, + 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, + 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, + 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x70, 0x61, 0x69, 0x6e, 0x74, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x32, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, 0x30, 0x20, 0x31, + 0x38, 0x3a, 0x30, 0x37, 0x3a, 0x34, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, + 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x20, 0x41, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, + 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, + 0x2d, 0x70, 0x61, 0x69, 0x6e, 0x74, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x6c, + 0x2c, 0x20, 0x66, 0x69, 0x6c, 0x6c, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x2c, + 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2c, 0x20, 0x73, 0x74, 0x72, + 0x6f, 0x6b, 0x65, 0x2d, 0x64, 0x61, 0x73, 0x68, 0x61, 0x72, 0x72, 0x61, + 0x79, 0x2c, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x64, 0x61, + 0x73, 0x68, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x2c, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, + 0x2d, 0x6c, 0x69, 0x6e, 0x65, 0x63, 0x61, 0x70, 0x2c, 0x20, 0x73, 0x74, + 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6c, 0x69, 0x6e, 0x65, 0x6a, 0x6f, 0x69, + 0x6e, 0x2c, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6d, 0x69, + 0x74, 0x65, 0x72, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x2c, 0x20, 0x73, 0x74, + 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2c, 0x20, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2c, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x69, 0x6e, 0x67, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x73, 0x65, 0x74, 0x73, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x61, 0x20, 0x27, 0x66, 0x69, 0x6c, 0x6c, 0x27, 0x20, 0x6f, + 0x72, 0x20, 0x27, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x27, 0x20, 0x70, + 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x20, 0x3c, 0x70, 0x61, 0x69, 0x6e, 0x74, 0x3e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x27, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x64, 0x61, + 0x73, 0x68, 0x61, 0x72, 0x72, 0x61, 0x79, 0x27, 0x20, 0x70, 0x72, 0x6f, + 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, + 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x27, 0x6e, 0x6f, 0x6e, 0x65, 0x27, 0x2c, + 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x3c, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x3e, 0x73, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x44, 0x61, 0x73, 0x68, 0x41, 0x72, + 0x72, 0x61, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, + 0x64, 0x61, 0x73, 0x68, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x27, 0x20, + 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x27, 0x6e, 0x6f, 0x6e, + 0x65, 0x27, 0x2c, 0x20, 0x3c, 0x6c, 0x65, 0x67, 0x6e, 0x74, 0x68, 0x3e, + 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x74, 0x72, 0x6f, 0x6b, 0x65, + 0x44, 0x61, 0x73, 0x68, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, + 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6d, 0x69, 0x74, 0x65, 0x72, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, + 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, + 0x2e, 0x2c, 0x20, 0x3c, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x3e, 0x29, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x4d, + 0x69, 0x74, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x73, + 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x77, 0x69, 0x64, 0x74, 0x68, 0x27, + 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x3c, 0x6c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x3e, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x57, 0x69, 0x64, 0x74, 0x68, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x69, 0x6c, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x6c, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x69, 0x6c, 0x6c, + 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x6c, 0x2d, 0x72, 0x75, 0x6c, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x43, 0x6c, 0x69, 0x70, 0x46, 0x69, 0x6c, 0x6c, 0x52, 0x75, 0x6c, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, + 0x72, 0x6f, 0x6b, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x50, 0x61, 0x69, + 0x6e, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, + 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x64, 0x61, 0x73, 0x68, 0x61, 0x72, + 0x72, 0x61, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x64, 0x61, 0x73, + 0x68, 0x61, 0x72, 0x72, 0x61, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x74, 0x72, 0x6f, 0x6b, 0x65, + 0x44, 0x61, 0x73, 0x68, 0x41, 0x72, 0x72, 0x61, 0x79, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, + 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x64, 0x61, 0x73, 0x68, 0x6f, 0x66, + 0x66, 0x73, 0x65, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x64, 0x61, + 0x73, 0x68, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x74, 0x72, 0x6f, + 0x6b, 0x65, 0x44, 0x61, 0x73, 0x68, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6c, 0x69, 0x6e, + 0x65, 0x63, 0x61, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6c, 0x69, + 0x6e, 0x65, 0x63, 0x61, 0x70, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, + 0x75, 0x74, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, + 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6c, 0x69, + 0x6e, 0x65, 0x6a, 0x6f, 0x69, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, + 0x6c, 0x69, 0x6e, 0x65, 0x6a, 0x6f, 0x69, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x6d, 0x69, 0x74, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x62, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, + 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, + 0x2d, 0x6d, 0x69, 0x74, 0x65, 0x72, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, + 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6d, 0x69, 0x74, 0x65, 0x72, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x4d, 0x69, 0x74, + 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, 0x72, + 0x6f, 0x6b, 0x65, 0x2d, 0x77, 0x69, 0x64, 0x74, 0x68, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x6f, + 0x6b, 0x65, 0x2d, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x74, 0x72, 0x6f, + 0x6b, 0x65, 0x57, 0x69, 0x64, 0x74, 0x68, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, + 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x66, 0x69, 0x6c, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x69, 0x6c, 0x6c, 0x2d, 0x72, 0x75, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, 0x72, 0x6f, + 0x6b, 0x65, 0x2d, 0x64, 0x61, 0x73, 0x68, 0x61, 0x72, 0x72, 0x61, 0x79, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x64, 0x61, 0x73, 0x68, 0x6f, + 0x66, 0x66, 0x73, 0x65, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, + 0x6c, 0x69, 0x6e, 0x65, 0x63, 0x61, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, 0x72, 0x6f, 0x6b, + 0x65, 0x2d, 0x6c, 0x69, 0x6e, 0x65, 0x6a, 0x6f, 0x69, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, + 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6d, 0x69, 0x74, 0x65, 0x72, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x77, 0x69, + 0x64, 0x74, 0x68, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6f, 0x6c, + 0x6f, 0x72, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x61, 0x75, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x52, + 0x47, 0x42, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x52, 0x47, + 0x42, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x2d, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, + 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x75, 0x74, + 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x53, + 0x70, 0x65, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, + 0x7a, 0x65, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, + 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x2d, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, + 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x70, 0x61, 0x69, 0x6e, 0x74, + 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x50, 0x61, 0x69, 0x6e, 0x74, 0x20, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, + 0x79, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x50, 0x61, + 0x69, 0x6e, 0x74, 0x20, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, + 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, + 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, + 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x6f, 0x70, + 0x61, 0x63, 0x69, 0x74, 0x79, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x32, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, 0x30, 0x20, 0x31, 0x38, + 0x3a, 0x30, 0x37, 0x3a, 0x34, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, + 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x31, 0x2e, 0x31, 0x20, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x20, 0x4f, 0x70, + 0x61, 0x63, 0x69, 0x74, 0x79, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, + 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, + 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x6f, 0x70, 0x61, 0x63, + 0x69, 0x74, 0x79, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, + 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x61, 0x69, 0x6e, 0x74, 0x20, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, + 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2c, 0x20, 0x66, 0x69, + 0x6c, 0x6c, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2c, 0x20, + 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, + 0x74, 0x79, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x73, 0x65, 0x74, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x70, + 0x61, 0x63, 0x69, 0x74, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x69, 0x6c, 0x6c, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, + 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x66, 0x69, 0x6c, 0x6c, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, + 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, + 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, + 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, + 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, + 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x69, 0x6c, 0x6c, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x73, + 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, + 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, + 0x74, 0x79, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, + 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x41, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, + 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x70, 0x68, + 0x69, 0x63, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, + 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, + 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, + 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, + 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2d, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, + 0x2e, 0x32, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, + 0x30, 0x20, 0x31, 0x38, 0x3a, 0x30, 0x37, 0x3a, 0x34, 0x33, 0x20, 0x66, + 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, + 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x47, 0x72, 0x61, 0x70, + 0x68, 0x69, 0x63, 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x70, 0x68, + 0x69, 0x63, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, + 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x73, 0x70, + 0x6c, 0x61, 0x79, 0x2c, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2d, 0x72, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x2c, 0x20, 0x73, 0x68, 0x61, 0x70, 0x65, 0x2d, 0x72, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2c, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x72, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x76, 0x69, 0x73, 0x69, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x73, 0x65, 0x74, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x64, 0x69, 0x73, 0x70, + 0x6c, 0x61, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x73, 0x74, 0x2d, 0x69, + 0x74, 0x65, 0x6d, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x75, 0x6e, 0x2d, 0x69, 0x6e, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6d, 0x61, + 0x72, 0x6b, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x72, 0x6f, 0x77, + 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x2d, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x2d, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x66, 0x6f, + 0x6f, 0x74, 0x65, 0x72, 0x2d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x72, 0x6f, 0x77, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x2d, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x2d, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x2d, 0x63, 0x65, 0x6c, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x2d, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x6e, 0x6f, 0x6e, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, + 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2d, 0x72, 0x65, 0x6e, 0x64, 0x65, + 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2d, 0x72, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x61, 0x75, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, + 0x7a, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, + 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x65, 0x72, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, + 0x65, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x76, 0x69, + 0x73, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x6c, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x76, + 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x6f, 0x6b, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x70, + 0x61, 0x69, 0x6e, 0x74, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x6c, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x6c, + 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x6e, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, + 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x73, 0x68, 0x61, 0x70, 0x65, 0x2d, 0x72, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x68, 0x61, 0x70, 0x65, 0x2d, + 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x61, 0x75, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, + 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x63, 0x72, 0x69, 0x73, 0x70, 0x45, 0x64, 0x67, 0x65, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x67, 0x65, 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x50, 0x72, 0x65, + 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, + 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x72, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x72, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x61, 0x75, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, + 0x7a, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, + 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x4c, 0x65, 0x67, 0x69, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x67, 0x65, 0x6f, 0x6d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x50, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x76, 0x69, 0x73, 0x69, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x76, 0x69, 0x73, + 0x69, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x69, + 0x6d, 0x61, 0x67, 0x65, 0x2d, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, + 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2d, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x73, 0x68, 0x61, 0x70, 0x65, 0x2d, 0x72, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x2d, + 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x76, 0x69, 0x73, + 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2d, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x44, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, + 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x41, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x64, 0x6f, 0x63, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, + 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, + 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, + 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, + 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, + 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, + 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x64, 0x6f, 0x63, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x32, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, 0x30, 0x20, 0x31, + 0x38, 0x3a, 0x30, 0x37, 0x3a, 0x34, 0x32, 0x20, 0x66, 0x75, 0x6a, 0x69, + 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, + 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x64, + 0x6f, 0x63, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x75, 0x6e, + 0x6c, 0x6f, 0x61, 0x64, 0x2c, 0x20, 0x6f, 0x6e, 0x61, 0x62, 0x6f, 0x72, + 0x74, 0x2c, 0x20, 0x6f, 0x6e, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x2c, 0x20, + 0x6f, 0x6e, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x2c, 0x20, 0x6f, 0x6e, + 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x2c, 0x20, 0x6f, 0x6e, 0x7a, 0x6f, + 0x6f, 0x6d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x73, 0x65, 0x74, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, + 0x6e, 0x75, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x75, 0x6e, 0x6c, 0x6f, + 0x61, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x61, 0x62, 0x6f, 0x72, 0x74, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, + 0x6e, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x6f, 0x6e, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x72, 0x65, + 0x73, 0x69, 0x7a, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x73, 0x63, 0x72, + 0x6f, 0x6c, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6f, 0x6e, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x6f, 0x6e, 0x7a, 0x6f, 0x6f, 0x6d, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x7a, 0x6f, 0x6f, 0x6d, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x75, 0x6e, 0x6c, 0x6f, 0x61, 0x64, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x6f, 0x6e, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x6f, 0x6e, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, + 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x7a, 0x6f, 0x6f, 0x6d, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x64, 0x6f, 0x63, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, + 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, + 0x20, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, + 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x70, + 0x68, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, + 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, + 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, + 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, + 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x32, 0x20, 0x32, 0x30, + 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, 0x30, 0x20, 0x31, 0x38, 0x3a, + 0x30, 0x37, 0x3a, 0x34, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, + 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, + 0x2e, 0x31, 0x20, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, + 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x69, 0x6e, 0x2c, + 0x20, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x6f, 0x75, 0x74, 0x2c, + 0x20, 0x6f, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x2c, + 0x20, 0x6f, 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x2c, 0x20, 0x6f, 0x6e, + 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x2c, 0x20, 0x6f, + 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x75, 0x70, 0x2c, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, + 0x65, 0x6f, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, + 0x73, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x2c, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, + 0x75, 0x73, 0x65, 0x6f, 0x75, 0x74, 0x2c, 0x20, 0x6f, 0x6e, 0x6c, 0x6f, + 0x61, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x73, 0x65, 0x74, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, + 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x69, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x66, 0x6f, + 0x63, 0x75, 0x73, 0x69, 0x6e, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x66, 0x6f, + 0x63, 0x75, 0x73, 0x6f, 0x75, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, + 0x6f, 0x75, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x61, 0x63, 0x74, 0x69, + 0x76, 0x61, 0x74, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, + 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x6d, 0x6f, + 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, + 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x6d, 0x6f, + 0x75, 0x73, 0x65, 0x75, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x75, + 0x70, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6f, + 0x76, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6f, 0x76, 0x65, + 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6f, + 0x75, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6f, 0x75, 0x74, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, + 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, + 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, + 0x73, 0x69, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x6f, 0x75, + 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x6f, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, + 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, + 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, + 0x75, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6f, 0x76, 0x65, + 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6f, 0x75, 0x74, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, + 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, + 0x61, 0x70, 0x68, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, + 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x41, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x61, 0x6e, 0x69, 0x6d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, + 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, + 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x61, 0x6e, + 0x69, 0x6d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, + 0x33, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, 0x38, + 0x20, 0x31, 0x33, 0x3a, 0x35, 0x30, 0x3a, 0x32, 0x33, 0x20, 0x66, 0x75, + 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, + 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x41, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, + 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, + 0x67, 0x2d, 0x61, 0x6e, 0x69, 0x6d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, + 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x41, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x6e, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x2c, 0x20, 0x6f, 0x6e, + 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x6f, 0x6e, 0x72, 0x65, 0x70, 0x65, 0x61, + 0x74, 0x2c, 0x20, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x73, + 0x65, 0x74, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x62, 0x65, 0x67, + 0x69, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6f, 0x6e, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, + 0x6e, 0x65, 0x6e, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x65, 0x6e, 0x64, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6f, + 0x6e, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x6e, 0x72, 0x65, 0x70, 0x65, + 0x61, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x62, 0x65, 0x67, + 0x69, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x6f, 0x6e, 0x65, 0x6e, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x72, 0x65, 0x70, + 0x65, 0x61, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x61, 0x6e, 0x69, 0x6d, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x58, + 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x2d, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, + 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, + 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, + 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, + 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, + 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, + 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, + 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x32, 0x20, 0x32, 0x30, 0x30, 0x32, + 0x2f, 0x30, 0x34, 0x2f, 0x32, 0x30, 0x20, 0x31, 0x38, 0x3a, 0x30, 0x37, + 0x3a, 0x34, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, + 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, + 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, + 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, + 0x20, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, + 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, + 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, + 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x58, 0x4c, + 0x69, 0x6e, 0x6b, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x65, 0x2c, 0x20, 0x68, 0x72, 0x65, + 0x66, 0x2c, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x2c, 0x20, 0x61, 0x72, 0x63, + 0x72, 0x6f, 0x6c, 0x65, 0x2c, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2c, + 0x20, 0x73, 0x68, 0x6f, 0x77, 0x2c, 0x20, 0x61, 0x63, 0x74, 0x75, 0x61, + 0x74, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x2c, 0x20, 0x58, 0x4c, 0x69, + 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2c, 0x20, + 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x2c, 0x20, + 0x61, 0x6e, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x58, 0x4c, 0x69, + 0x6e, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x73, 0x65, 0x74, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, + 0x3a, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x3d, 0x22, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x68, 0x72, 0x65, 0x66, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x72, 0x6f, + 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, + 0x61, 0x72, 0x63, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x73, 0x68, 0x6f, 0x77, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x63, + 0x74, 0x75, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x52, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, + 0x22, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x68, 0x72, 0x65, 0x66, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x72, 0x6f, + 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, + 0x61, 0x72, 0x63, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x73, 0x68, 0x6f, 0x77, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x63, + 0x74, 0x75, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x45, 0x6d, + 0x62, 0x65, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x3a, 0x68, 0x72, 0x65, 0x66, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x72, 0x6f, 0x6c, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x72, 0x63, + 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x73, 0x68, 0x6f, 0x77, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x63, 0x74, 0x75, 0x61, + 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x61, + 0x63, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, + 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, + 0x3a, 0x68, 0x72, 0x65, 0x66, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, + 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x72, 0x63, 0x72, + 0x6f, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, + 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, + 0x69, 0x6e, 0x6b, 0x3a, 0x73, 0x68, 0x6f, 0x77, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x63, 0x74, 0x75, 0x61, 0x74, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, + 0x2e, 0x31, 0x20, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x65, 0x78, + 0x74, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2d, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, + 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, + 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, + 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, + 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, + 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x65, 0x78, 0x74, 0x72, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2d, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, + 0x32, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x30, 0x34, 0x2f, 0x32, 0x30, + 0x20, 0x31, 0x38, 0x3a, 0x30, 0x37, 0x3a, 0x34, 0x32, 0x20, 0x66, 0x75, + 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, + 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2f, + 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, + 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, + 0x73, 0x76, 0x67, 0x2d, 0x65, 0x78, 0x74, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x2e, + 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x45, 0x78, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x73, 0x65, 0x74, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x65, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x65, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x65, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x65, 0x78, 0x74, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x75, 0x72, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x31, 0x2e, 0x31, 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x6d, 0x6f, 0x64, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, + 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, + 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, + 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, + 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, + 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, + 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, + 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x6d, 0x6f, 0x64, + 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x35, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, + 0x31, 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, 0x35, 0x3a, 0x31, 0x31, 0x3a, + 0x30, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, + 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, + 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, + 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, + 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, + 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, + 0x67, 0x2d, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, + 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x76, 0x67, 0x2c, 0x20, 0x67, 0x2c, 0x20, 0x64, 0x65, 0x66, 0x73, + 0x2c, 0x20, 0x64, 0x65, 0x73, 0x63, 0x2c, 0x20, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x2c, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2c, + 0x20, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x2c, 0x20, 0x75, 0x73, 0x65, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x20, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x55, 0x73, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x56, 0x69, 0x65, 0x77, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x6f, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, + 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, + 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, + 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, + 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x66, 0x6c, 0x6f, 0x6f, 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6c, + 0x6f, 0x6f, 0x64, 0x2d, 0x6f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4f, + 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x2d, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x76, 0x67, 0x3a, + 0x20, 0x53, 0x56, 0x47, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x76, 0x67, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, + 0x72, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, + 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x22, 0x20, + 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x73, + 0x76, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x73, 0x76, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x73, + 0x76, 0x67, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x73, 0x76, 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, + 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, + 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, + 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, 0x69, 0x64, + 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x76, 0x69, 0x65, 0x77, 0x42, 0x6f, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x56, 0x69, 0x65, 0x77, 0x42, + 0x6f, 0x78, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, + 0x74, 0x69, 0x6f, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x3d, 0x22, 0x78, 0x4d, 0x69, 0x64, 0x59, 0x4d, 0x69, 0x64, 0x20, 0x6d, + 0x65, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x50, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x41, + 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x53, 0x70, + 0x65, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x7a, 0x6f, 0x6f, 0x6d, 0x41, 0x6e, 0x64, 0x50, + 0x61, 0x6e, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, + 0x22, 0x6d, 0x61, 0x67, 0x6e, 0x69, 0x66, 0x79, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6d, + 0x61, 0x67, 0x6e, 0x69, 0x66, 0x79, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x31, 0x2e, 0x31, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x31, 0x2e, 0x31, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, + 0x61, 0x73, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x65, + 0x78, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, + 0x2f, 0x65, 0x63, 0x6d, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x76, 0x67, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x3a, 0x20, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x67, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, + 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, + 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, + 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x67, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, + 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x67, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, + 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, + 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x67, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x65, 0x66, 0x73, 0x3a, + 0x20, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x64, 0x65, 0x66, 0x73, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, + 0x72, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, + 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x65, 0x66, 0x73, 0x22, + 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x64, 0x65, 0x66, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x64, 0x65, 0x66, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x64, 0x65, 0x66, 0x73, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x65, 0x66, 0x73, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, + 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x64, 0x65, 0x66, 0x73, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x65, 0x73, 0x63, 0x3a, 0x20, 0x44, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x65, + 0x73, 0x63, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x65, 0x73, + 0x63, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x64, 0x65, 0x73, 0x63, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x65, 0x73, + 0x63, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x64, 0x65, 0x73, 0x63, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x3a, 0x20, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x3a, 0x20, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x3a, 0x20, 0x53, 0x79, 0x6d, + 0x62, 0x6f, 0x6c, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, + 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, + 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, + 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x22, 0x20, 0x73, + 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x79, + 0x6d, 0x62, 0x6f, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x73, + 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x69, 0x65, 0x77, 0x42, 0x6f, 0x78, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x56, 0x69, 0x65, 0x77, 0x42, 0x6f, 0x78, 0x53, 0x70, 0x65, 0x63, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x41, 0x73, 0x70, + 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x22, 0x20, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x78, 0x4d, 0x69, 0x64, 0x59, + 0x4d, 0x69, 0x64, 0x20, 0x6d, 0x65, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x50, 0x72, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, + 0x74, 0x69, 0x6f, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x75, 0x73, 0x65, 0x3a, 0x20, 0x55, + 0x73, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x75, 0x73, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x75, 0x73, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, + 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x55, 0x73, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x75, 0x73, 0x65, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x75, 0x73, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x45, 0x6d, 0x62, + 0x65, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x75, 0x73, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x6f, 0x6e, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, + 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, + 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, + 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, + 0x2e, 0x34, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x31, 0x2f, 0x31, + 0x34, 0x20, 0x31, 0x35, 0x3a, 0x31, 0x31, 0x3a, 0x30, 0x32, 0x20, 0x66, + 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, + 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x6f, 0x6e, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, + 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x63, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x6d, + 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, + 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x6e, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, + 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x3a, 0x20, + 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, + 0x76, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x75, + 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x74, 0x65, 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, 0x65, + 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x77, + 0x69, 0x74, 0x63, 0x68, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, + 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x73, 0x77, 0x69, 0x74, + 0x63, 0x68, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x77, 0x69, 0x74, 0x63, + 0x68, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6f, 0x6e, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x49, + 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2e, + 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, + 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, + 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, + 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, + 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, + 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, + 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, + 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, + 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, + 0x76, 0x20, 0x31, 0x2e, 0x34, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, + 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, 0x35, 0x3a, 0x31, 0x31, 0x3a, 0x30, + 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, + 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, + 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, + 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x49, + 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, + 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, + 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, + 0x6d, 0x61, 0x67, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, + 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, 0x70, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, + 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x3a, 0x20, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x20, 0x73, 0x75, + 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x69, + 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x56, 0x69, + 0x65, 0x77, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4f, + 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, + 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, + 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, + 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, + 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, 0x69, 0x64, + 0x74, 0x68, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, + 0x6f, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, + 0x78, 0x4d, 0x69, 0x64, 0x59, 0x4d, 0x69, 0x64, 0x20, 0x6d, 0x65, 0x65, + 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x50, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x41, 0x73, 0x70, + 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x53, 0x70, 0x65, 0x63, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, + 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, + 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, + 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, + 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, + 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x33, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x30, 0x2f, 0x32, 0x34, 0x20, 0x31, + 0x37, 0x3a, 0x34, 0x30, 0x3a, 0x31, 0x36, 0x20, 0x66, 0x75, 0x6a, 0x69, + 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, + 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, + 0x76, 0x67, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, + 0x70, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x2d, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, + 0x73, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x44, 0x65, 0x73, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x73, 0x68, 0x65, 0x65, 0x74, 0x20, + 0x64, 0x61, 0x74, 0x61, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x3a, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, + 0x79, 0x6c, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x69, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6c, 0x61, 0x6e, 0x67, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x65, 0x73, 0x63, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x68, 0x61, 0x70, 0x65, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, + 0x31, 0x20, 0x53, 0x68, 0x61, 0x70, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, + 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x68, 0x61, + 0x70, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, + 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, + 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, + 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x6d, + 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x33, 0x20, 0x32, 0x30, 0x30, + 0x32, 0x2f, 0x31, 0x30, 0x2f, 0x32, 0x34, 0x20, 0x31, 0x37, 0x3a, 0x34, + 0x30, 0x3a, 0x31, 0x36, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, + 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, + 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, + 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, + 0x31, 0x20, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, + 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, + 0x73, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x53, 0x68, 0x61, 0x70, 0x65, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x70, 0x61, 0x74, 0x68, 0x2c, 0x20, 0x72, 0x65, 0x63, 0x74, + 0x2c, 0x20, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x2c, 0x20, 0x6c, 0x69, + 0x6e, 0x65, 0x2c, 0x20, 0x65, 0x6c, 0x6c, 0x69, 0x70, 0x73, 0x65, 0x2c, + 0x20, 0x70, 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x2c, 0x20, 0x70, + 0x6f, 0x6c, 0x79, 0x67, 0x6f, 0x6e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, + 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x68, 0x61, 0x70, 0x65, + 0x73, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x6f, 0x66, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x50, + 0x61, 0x74, 0x68, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x70, 0x61, 0x74, 0x68, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, + 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, + 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x70, 0x61, 0x74, 0x68, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x70, 0x61, + 0x74, 0x68, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, + 0x69, 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, + 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, + 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x50, 0x61, 0x74, 0x68, + 0x44, 0x61, 0x74, 0x61, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x74, 0x68, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x65, 0x63, 0x74, 0x3a, + 0x20, 0x52, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x72, 0x65, 0x63, 0x74, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x63, 0x74, 0x22, 0x20, 0x73, 0x75, + 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x72, 0x65, 0x63, 0x74, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x72, 0x65, 0x63, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x72, 0x65, 0x63, 0x74, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x72, 0x65, 0x63, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, + 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, + 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, + 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, + 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, + 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, + 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x79, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, + 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, + 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x72, 0x65, 0x63, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x3a, 0x20, 0x43, 0x69, + 0x72, 0x63, 0x6c, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x63, 0x69, 0x72, 0x63, + 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x69, + 0x72, 0x63, 0x6c, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, + 0x61, 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, 0x61, + 0x63, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x78, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, + 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x79, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, + 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x69, 0x6e, 0x65, + 0x3a, 0x20, 0x4c, 0x69, 0x6e, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x20, 0x73, + 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x6c, 0x69, 0x6e, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x6c, 0x69, 0x6e, 0x65, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x31, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, + 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, 0x31, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, + 0x32, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x79, 0x32, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6c, + 0x6c, 0x69, 0x70, 0x73, 0x65, 0x3a, 0x20, 0x45, 0x6c, 0x6c, 0x69, 0x70, + 0x73, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x65, + 0x6c, 0x6c, 0x69, 0x70, 0x73, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x65, 0x6c, + 0x6c, 0x69, 0x70, 0x73, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, + 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, + 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x65, 0x6c, 0x6c, 0x69, 0x70, 0x73, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x65, 0x6c, 0x6c, 0x69, 0x70, + 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x65, 0x6c, + 0x6c, 0x69, 0x70, 0x73, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x65, 0x6c, 0x6c, 0x69, 0x70, 0x73, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4f, + 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, + 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, + 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x78, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, + 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x72, 0x78, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x72, 0x79, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x65, 0x6c, 0x6c, + 0x69, 0x70, 0x73, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x70, 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x3a, 0x20, 0x50, + 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x70, 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x70, 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x20, + 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x6f, 0x6c, 0x79, 0x6c, + 0x69, 0x6e, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x70, 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x70, 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, + 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, 0x61, 0x63, + 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, + 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, + 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, + 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, + 0x72, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, + 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x70, + 0x6f, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x6f, 0x6c, 0x79, 0x67, 0x6f, 0x6e, 0x3a, + 0x20, 0x50, 0x6f, 0x6c, 0x79, 0x67, 0x6f, 0x6e, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x6f, 0x6c, 0x79, 0x67, 0x6f, 0x6e, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x6f, 0x6c, 0x79, 0x67, 0x6f, 0x6e, 0x22, + 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x6f, 0x6c, 0x79, + 0x67, 0x6f, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x70, 0x6f, 0x6c, 0x79, 0x67, 0x6f, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x70, 0x6f, 0x6c, 0x79, 0x67, 0x6f, 0x6e, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x70, 0x6f, 0x6c, 0x79, 0x67, 0x6f, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, 0x6e, 0x74, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, + 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, + 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, + 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x6f, 0x6c, 0x79, + 0x67, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, + 0x68, 0x61, 0x70, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x65, 0x78, + 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, + 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, + 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, + 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, + 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, + 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, + 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, + 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x74, 0x65, 0x78, + 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x34, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x30, 0x2f, 0x32, 0x34, 0x20, 0x31, + 0x37, 0x3a, 0x34, 0x30, 0x3a, 0x31, 0x36, 0x20, 0x66, 0x75, 0x6a, 0x69, + 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x54, 0x65, 0x78, 0x74, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, + 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, + 0x67, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x65, 0x78, 0x74, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2c, 0x20, 0x74, 0x73, 0x70, 0x61, + 0x6e, 0x2c, 0x20, 0x74, 0x72, 0x65, 0x66, 0x2c, 0x20, 0x74, 0x65, 0x78, + 0x74, 0x50, 0x61, 0x74, 0x68, 0x2c, 0x20, 0x61, 0x6c, 0x74, 0x47, 0x6c, + 0x79, 0x70, 0x68, 0x2c, 0x20, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, + 0x68, 0x44, 0x65, 0x66, 0x2c, 0x20, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, + 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x2c, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x52, 0x65, 0x66, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, + 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, + 0x20, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, + 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x73, 0x68, 0x69, + 0x66, 0x74, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, + 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, + 0x27, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x27, 0x2c, 0x20, + 0x27, 0x73, 0x75, 0x62, 0x27, 0x2c, 0x20, 0x65, 0x74, 0x63, 0x2e, 0x29, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x27, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x6d, 0x69, 0x6c, + 0x79, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x20, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x2c, 0x20, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x73, + 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x27, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, + 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x27, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, + 0x65, 0x2d, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x27, 0x20, 0x70, 0x72, + 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, + 0x67, 0x6c, 0x79, 0x70, 0x68, 0x2d, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, + 0x6e, 0x74, 0x61, 0x6c, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, + 0x74, 0x79, 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, + 0x2c, 0x20, 0x3c, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x3e, 0x29, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, + 0x67, 0x6c, 0x79, 0x70, 0x68, 0x2d, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, + 0x61, 0x6c, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, + 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, + 0x27, 0x61, 0x75, 0x74, 0x6f, 0x27, 0x2c, 0x20, 0x3c, 0x61, 0x6e, 0x67, + 0x6c, 0x65, 0x3e, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x6b, 0x65, 0x72, 0x6e, 0x69, 0x6e, + 0x67, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x27, + 0x61, 0x75, 0x74, 0x6f, 0x27, 0x2c, 0x20, 0x3c, 0x6c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x3e, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x2d, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x27, 0x20, 0x6f, 0x72, + 0x20, 0x27, 0x77, 0x6f, 0x72, 0x64, 0x2d, 0x73, 0x70, 0x61, 0x63, 0x69, + 0x6e, 0x67, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, + 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, + 0x27, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x27, 0x2c, 0x20, 0x3c, 0x6c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x3e, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x74, 0x65, 0x78, + 0x74, 0x2d, 0x64, 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x27, 0x6e, + 0x6f, 0x6e, 0x65, 0x27, 0x2c, 0x20, 0x27, 0x75, 0x6e, 0x64, 0x65, 0x72, + 0x6c, 0x69, 0x6e, 0x65, 0x27, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, + 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, + 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x54, + 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x6f, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, + 0x65, 0x78, 0x74, 0x3a, 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, + 0x74, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, + 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, + 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, + 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, + 0x78, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x54, 0x65, 0x78, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, 0x6e, 0x74, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, + 0x74, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, + 0x6e, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x78, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x79, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x41, 0x64, 0x6a, 0x75, + 0x73, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x61, 0x63, + 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, + 0x41, 0x6e, 0x64, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x65, 0x78, 0x74, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x73, 0x70, + 0x61, 0x6e, 0x3a, 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x53, 0x70, 0x61, + 0x6e, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x73, + 0x70, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x74, 0x73, 0x70, 0x61, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x74, 0x72, 0x65, 0x66, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x73, 0x70, 0x61, 0x6e, + 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x74, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x74, 0x73, 0x70, 0x61, 0x6e, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x73, 0x70, 0x61, 0x6e, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x74, 0x73, 0x70, 0x61, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, + 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, 0x61, 0x63, 0x69, + 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, + 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, + 0x6e, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, + 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x78, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x79, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x74, 0x61, 0x74, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x65, + 0x78, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x41, 0x64, + 0x6a, 0x75, 0x73, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x70, + 0x61, 0x63, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x61, 0x63, 0x69, + 0x6e, 0x67, 0x41, 0x6e, 0x64, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x73, + 0x70, 0x61, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x74, 0x72, 0x65, 0x66, 0x3a, 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x52, + 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x74, 0x72, 0x65, 0x66, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x74, 0x72, 0x65, 0x66, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, + 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, + 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x72, 0x65, 0x66, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x74, 0x72, 0x65, + 0x66, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x72, 0x65, + 0x66, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x74, 0x72, 0x65, 0x66, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, + 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, 0x61, 0x63, 0x69, + 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, + 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, + 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, + 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, + 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x78, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x79, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x74, 0x61, + 0x74, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, + 0x65, 0x78, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x41, + 0x64, 0x6a, 0x75, 0x73, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, + 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x61, 0x63, + 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x64, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x74, + 0x72, 0x65, 0x66, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x74, 0x65, 0x78, 0x74, 0x50, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x54, 0x65, + 0x78, 0x74, 0x20, 0x50, 0x61, 0x74, 0x68, 0x20, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x74, 0x65, 0x78, 0x74, 0x50, 0x61, 0x74, 0x68, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x74, 0x73, 0x70, 0x61, 0x6e, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x74, 0x72, 0x65, 0x66, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6c, 0x74, 0x47, 0x6c, + 0x79, 0x70, 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, + 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x65, 0x78, 0x74, 0x50, 0x61, 0x74, 0x68, 0x22, 0x20, 0x73, + 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x74, 0x65, 0x78, 0x74, 0x50, 0x61, 0x74, 0x68, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x50, 0x61, + 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x65, + 0x78, 0x74, 0x50, 0x61, 0x74, 0x68, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x50, + 0x61, 0x74, 0x68, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, + 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, + 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x52, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x65, + 0x78, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x41, 0x64, + 0x6a, 0x75, 0x73, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x70, + 0x61, 0x63, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x61, 0x63, 0x69, + 0x6e, 0x67, 0x41, 0x6e, 0x64, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, + 0x74, 0x72, 0x65, 0x74, 0x63, 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, + 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x61, 0x75, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x65, 0x78, 0x61, 0x63, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x74, 0x65, + 0x78, 0x74, 0x50, 0x61, 0x74, 0x68, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x3a, + 0x20, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x20, 0x47, + 0x6c, 0x79, 0x70, 0x68, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x74, 0x47, + 0x6c, 0x79, 0x70, 0x68, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, + 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, + 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, + 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6c, + 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x6c, 0x74, 0x47, 0x6c, + 0x79, 0x70, 0x68, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, + 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, + 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, + 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, + 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, + 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x73, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x79, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x6c, 0x79, + 0x70, 0x68, 0x52, 0x65, 0x66, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x74, + 0x61, 0x74, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, + 0x70, 0x68, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, + 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x44, 0x65, 0x66, 0x3a, 0x20, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x20, 0x47, 0x6c, + 0x79, 0x70, 0x68, 0x20, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, + 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x44, 0x65, 0x66, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x52, 0x65, + 0x66, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6c, 0x74, 0x47, 0x6c, + 0x79, 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, + 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x44, 0x65, 0x66, 0x22, 0x20, + 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, + 0x70, 0x68, 0x44, 0x65, 0x66, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x44, + 0x65, 0x66, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6c, + 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x44, 0x65, 0x66, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x6c, + 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x44, 0x65, 0x66, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, + 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x44, 0x65, 0x66, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x6c, 0x74, 0x47, 0x6c, + 0x79, 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x3a, 0x20, 0x41, 0x6c, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x20, 0x47, 0x6c, 0x79, 0x70, 0x68, + 0x20, 0x49, 0x74, 0x65, 0x6d, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6c, 0x74, 0x47, + 0x6c, 0x79, 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x52, 0x65, 0x66, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, + 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x61, + 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x6c, 0x74, + 0x47, 0x6c, 0x79, 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, 0x70, + 0x68, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x6c, 0x74, 0x47, 0x6c, 0x79, + 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6c, 0x74, 0x47, + 0x6c, 0x79, 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x52, 0x65, + 0x66, 0x3a, 0x20, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x20, 0x52, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x6c, + 0x79, 0x70, 0x68, 0x52, 0x65, 0x66, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x52, 0x65, 0x66, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x52, 0x65, 0x66, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x67, 0x6c, + 0x79, 0x70, 0x68, 0x52, 0x65, 0x66, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, + 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x78, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x79, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x52, + 0x65, 0x66, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x67, 0x6c, 0x79, 0x70, 0x68, 0x52, 0x65, 0x66, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x73, 0x76, 0x67, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x4d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, + 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, + 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, + 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, + 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, + 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, + 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, + 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, + 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, + 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, + 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x6d, 0x6f, + 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x34, 0x20, 0x32, 0x30, 0x30, 0x32, + 0x2f, 0x31, 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, 0x35, 0x3a, 0x31, 0x31, + 0x3a, 0x30, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, + 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, + 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, + 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, + 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, + 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, + 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, + 0x72, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, + 0x70, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x27, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x27, 0x20, 0x70, 0x72, 0x6f, + 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, + 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x27, 0x6e, 0x6f, 0x6e, 0x65, 0x27, 0x2c, + 0x20, 0x3c, 0x75, 0x72, 0x69, 0x3e, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, + 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, + 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x3a, 0x20, + 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x54, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, + 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, + 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, + 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x72, 0x65, 0x66, 0x58, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, + 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x66, 0x59, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, + 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, + 0x72, 0x6b, 0x65, 0x72, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x57, 0x69, 0x64, + 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x75, 0x73, 0x65, 0x72, 0x53, 0x70, 0x61, 0x63, + 0x65, 0x4f, 0x6e, 0x55, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x57, 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, + 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x76, 0x69, 0x65, 0x77, 0x42, 0x6f, 0x78, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x56, 0x69, 0x65, 0x77, + 0x42, 0x6f, 0x78, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, + 0x61, 0x74, 0x69, 0x6f, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x3d, 0x22, 0x78, 0x4d, 0x69, 0x64, 0x59, 0x4d, 0x69, 0x64, 0x20, + 0x6d, 0x65, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x50, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x53, + 0x70, 0x65, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x6d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x20, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, + 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, + 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, + 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, + 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, + 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, + 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, + 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, + 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, + 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x6d, + 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x33, 0x20, 0x32, 0x30, 0x30, + 0x32, 0x2f, 0x31, 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, 0x35, 0x3a, 0x31, + 0x31, 0x3a, 0x30, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, + 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, + 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, + 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, + 0x31, 0x20, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, + 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, + 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x50, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, 0x6f, + 0x72, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, + 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, + 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x50, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x63, + 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, + 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2d, + 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x61, 0x75, 0x74, 0x6f, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x61, 0x75, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x70, 0x65, 0x72, + 0x63, 0x65, 0x70, 0x74, 0x75, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x76, 0x65, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x69, + 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x61, 0x74, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x62, 0x73, 0x6f, + 0x6c, 0x75, 0x74, 0x65, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x69, 0x6d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x47, + 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, + 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, + 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, + 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, + 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x33, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x30, 0x2f, 0x32, 0x34, 0x20, 0x31, + 0x37, 0x3a, 0x34, 0x30, 0x3a, 0x31, 0x35, 0x20, 0x66, 0x75, 0x6a, 0x69, + 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, + 0x74, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x47, 0x72, 0x61, 0x64, + 0x69, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6c, + 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x73, 0x74, + 0x6f, 0x70, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, + 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, + 0x74, 0x20, 0x66, 0x69, 0x6c, 0x6c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, + 0x20, 0x3c, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x3e, 0x20, 0x6f, 0x72, + 0x20, 0x61, 0x20, 0x3c, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, + 0x67, 0x65, 0x3e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x69, 0x6e, 0x65, + 0x61, 0x72, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x3a, 0x20, + 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x20, 0x47, 0x72, 0x61, 0x64, 0x69, + 0x65, 0x6e, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6c, 0x69, 0x6e, + 0x65, 0x61, 0x72, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, + 0x74, 0x6f, 0x70, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x47, 0x72, 0x61, 0x64, 0x69, + 0x65, 0x6e, 0x74, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, + 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x47, 0x72, 0x61, + 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x47, 0x72, 0x61, + 0x64, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x47, 0x72, 0x61, 0x64, 0x69, + 0x65, 0x6e, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x47, 0x72, + 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, + 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x31, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, + 0x31, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x78, 0x32, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x79, 0x32, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, + 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, + 0x74, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x75, 0x73, 0x65, 0x72, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x6e, 0x55, + 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x42, 0x6f, + 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x70, + 0x72, 0x65, 0x61, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x66, + 0x6c, 0x65, 0x63, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x6c, + 0x69, 0x6e, 0x65, 0x61, 0x72, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6c, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, + 0x3a, 0x20, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6c, 0x20, 0x47, 0x72, 0x61, + 0x64, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x72, + 0x61, 0x64, 0x69, 0x61, 0x6c, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x73, 0x74, 0x6f, 0x70, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, + 0x6d, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6c, 0x47, 0x72, 0x61, + 0x64, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, + 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, + 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6c, 0x47, + 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6c, 0x47, + 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6c, 0x47, 0x72, 0x61, + 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6c, + 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, + 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, + 0x69, 0x6e, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, + 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x63, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x66, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, + 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, + 0x55, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x75, + 0x73, 0x65, 0x72, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x6e, 0x55, 0x73, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x42, 0x6f, 0x75, + 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, + 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x72, + 0x65, 0x61, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x70, 0x61, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x66, 0x6c, + 0x65, 0x63, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6c, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x74, 0x6f, + 0x70, 0x3a, 0x20, 0x53, 0x74, 0x6f, 0x70, 0x20, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x74, + 0x6f, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, + 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x6f, 0x70, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x73, 0x74, 0x6f, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x73, 0x74, 0x6f, 0x70, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x73, 0x74, 0x6f, 0x70, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x73, 0x74, 0x6f, 0x70, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x72, 0x50, 0x65, 0x72, 0x63, 0x65, + 0x6e, 0x74, 0x61, 0x67, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x73, 0x74, 0x6f, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, + 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, + 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, + 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x70, 0x61, 0x74, 0x74, 0x65, + 0x72, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, + 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, + 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, + 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, + 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x34, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x2f, 0x31, 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, 0x35, + 0x3a, 0x31, 0x31, 0x3a, 0x30, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, + 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x31, 0x2e, 0x31, 0x20, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2f, + 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, + 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, + 0x73, 0x76, 0x67, 0x2d, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, + 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, + 0x74, 0x74, 0x65, 0x72, 0x6e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, + 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x61, 0x74, 0x74, + 0x65, 0x72, 0x6e, 0x20, 0x66, 0x69, 0x6c, 0x6c, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, + 0x3a, 0x20, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, + 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x74, 0x74, + 0x65, 0x72, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, + 0x70, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, + 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x74, 0x74, + 0x65, 0x72, 0x6e, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x74, 0x74, + 0x65, 0x72, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x61, 0x74, 0x74, + 0x65, 0x72, 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, + 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, + 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, + 0x55, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x75, + 0x73, 0x65, 0x72, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x6e, 0x55, 0x73, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x42, 0x6f, 0x75, + 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x75, 0x73, 0x65, 0x72, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, + 0x6e, 0x55, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, + 0x69, 0x65, 0x77, 0x42, 0x6f, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x56, 0x69, 0x65, 0x77, 0x42, 0x6f, + 0x78, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, + 0x69, 0x6f, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, + 0x22, 0x78, 0x4d, 0x69, 0x64, 0x59, 0x4d, 0x69, 0x64, 0x20, 0x6d, 0x65, + 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x50, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x41, 0x73, + 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x53, 0x70, 0x65, + 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x70, 0x61, 0x74, + 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x43, 0x6c, 0x69, 0x70, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x6c, + 0x69, 0x70, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6c, 0x69, 0x70, 0x2e, 0x6d, 0x6f, + 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, + 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, + 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, + 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, + 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, + 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, + 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, + 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x63, 0x6c, 0x69, 0x70, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, + 0x2e, 0x33, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x30, 0x2f, 0x32, + 0x34, 0x20, 0x31, 0x37, 0x3a, 0x34, 0x30, 0x3a, 0x31, 0x35, 0x20, 0x66, + 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, + 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x6c, 0x69, 0x70, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, + 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, + 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x6c, 0x69, 0x70, 0x2e, 0x6d, 0x6f, + 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6c, + 0x69, 0x70, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x69, 0x70, 0x50, 0x61, 0x74, + 0x68, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, + 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6c, 0x69, 0x70, 0x70, 0x69, 0x6e, 0x67, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x63, 0x6c, 0x69, 0x70, 0x2d, 0x70, + 0x61, 0x74, 0x68, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, + 0x79, 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, + 0x20, 0x27, 0x6e, 0x6f, 0x6e, 0x65, 0x27, 0x2c, 0x20, 0x3c, 0x75, 0x72, + 0x69, 0x3e, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6c, 0x69, 0x70, + 0x50, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x43, 0x6c, 0x69, 0x70, 0x20, 0x50, + 0x61, 0x74, 0x68, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6c, 0x69, + 0x70, 0x50, 0x61, 0x74, 0x68, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x55, 0x73, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x63, 0x6c, 0x69, 0x70, 0x50, 0x61, 0x74, 0x68, 0x22, 0x20, + 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x63, 0x6c, 0x69, 0x70, 0x50, 0x61, 0x74, 0x68, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x63, 0x6c, 0x69, + 0x70, 0x50, 0x61, 0x74, 0x68, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, + 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x50, 0x61, 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4f, 0x70, + 0x61, 0x63, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, + 0x72, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, + 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6c, 0x69, 0x70, 0x50, 0x61, 0x74, + 0x68, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x75, 0x73, 0x65, 0x72, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x6e, 0x55, + 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x42, 0x6f, + 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x6c, 0x69, 0x70, + 0x50, 0x61, 0x74, 0x68, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x63, 0x6c, 0x69, 0x70, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4d, 0x61, 0x73, + 0x6b, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, + 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x4d, 0x61, 0x73, 0x6b, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, + 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, + 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, + 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, + 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, + 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, + 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x6d, 0x61, 0x73, + 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x34, 0x20, + 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, + 0x35, 0x3a, 0x31, 0x31, 0x3a, 0x30, 0x33, 0x20, 0x66, 0x75, 0x6a, 0x69, + 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, + 0x20, 0x31, 0x2e, 0x31, 0x20, 0x4d, 0x61, 0x73, 0x6b, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, + 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, + 0x67, 0x2d, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x4d, 0x61, 0x73, 0x6b, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6d, 0x61, 0x73, 0x6b, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, + 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6d, 0x61, 0x73, + 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x6d, 0x61, + 0x73, 0x6b, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, + 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, + 0x27, 0x6e, 0x6f, 0x6e, 0x65, 0x27, 0x2c, 0x20, 0x3c, 0x75, 0x72, 0x69, + 0x3e, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x50, + 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x61, 0x73, 0x6b, 0x3a, 0x20, 0x4d, 0x61, 0x73, 0x6b, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, + 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, 0x67, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, + 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, + 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, + 0x73, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, 0x65, + 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x56, + 0x69, 0x65, 0x77, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, + 0x61, 0x73, 0x6b, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x6d, 0x61, + 0x73, 0x6b, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x73, 0x6b, 0x55, 0x6e, 0x69, 0x74, 0x73, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x75, 0x73, 0x65, 0x72, 0x53, 0x70, + 0x61, 0x63, 0x65, 0x4f, 0x6e, 0x55, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x42, 0x6f, 0x78, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x73, 0x6b, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x69, 0x74, 0x73, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x75, 0x73, 0x65, 0x72, 0x53, 0x70, + 0x61, 0x63, 0x65, 0x4f, 0x6e, 0x55, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x42, 0x6f, 0x78, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, + 0x67, 0x2d, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, + 0x73, 0x76, 0x67, 0x2d, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x6d, + 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, + 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, + 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, + 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, + 0x76, 0x20, 0x31, 0x2e, 0x34, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, + 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, 0x35, 0x3a, 0x31, 0x31, 0x3a, 0x30, + 0x32, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, + 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, + 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, + 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, + 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, + 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x66, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, + 0x42, 0x6c, 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x66, 0x65, 0x43, 0x6f, 0x6c, + 0x6f, 0x72, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x2c, 0x20, 0x66, 0x65, + 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x2c, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x6f, 0x6c, + 0x76, 0x65, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x2c, 0x20, 0x66, 0x65, + 0x44, 0x69, 0x66, 0x66, 0x75, 0x73, 0x65, 0x4c, 0x69, 0x67, 0x68, 0x74, + 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x66, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x2c, 0x20, + 0x66, 0x65, 0x46, 0x6c, 0x6f, 0x6f, 0x64, 0x2c, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x65, 0x47, 0x61, 0x75, 0x73, 0x73, + 0x69, 0x61, 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x2c, 0x20, 0x66, 0x65, 0x49, + 0x6d, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, + 0x65, 0x2c, 0x20, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x4e, 0x6f, + 0x64, 0x65, 0x2c, 0x20, 0x66, 0x65, 0x4d, 0x6f, 0x72, 0x70, 0x68, 0x6f, + 0x6c, 0x6f, 0x67, 0x79, 0x2c, 0x20, 0x66, 0x65, 0x4f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x2c, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x66, 0x65, 0x53, 0x70, 0x65, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x4c, 0x69, + 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x66, 0x65, 0x54, 0x69, + 0x6c, 0x65, 0x2c, 0x20, 0x66, 0x65, 0x54, 0x75, 0x72, 0x62, 0x75, 0x6c, + 0x65, 0x6e, 0x63, 0x65, 0x2c, 0x20, 0x66, 0x65, 0x44, 0x69, 0x73, 0x74, + 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x20, 0x66, 0x65, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x65, 0x53, 0x70, + 0x6f, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2c, 0x20, 0x66, 0x65, 0x46, + 0x75, 0x6e, 0x63, 0x52, 0x2c, 0x20, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, + 0x47, 0x2c, 0x20, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x42, 0x2c, 0x20, + 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x41, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, + 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, + 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x66, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x20, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x27, + 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x2f, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, 0x27, 0x6e, 0x6f, + 0x6e, 0x65, 0x27, 0x2c, 0x20, 0x3c, 0x75, 0x72, 0x69, 0x3e, 0x29, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x3c, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x3e, 0x73, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x61, + 0x74, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x6f, 0x6e, 0x65, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x61, 0x74, 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x20, + 0x74, 0x77, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, + 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, + 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x69, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, + 0x76, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, + 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, + 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, + 0x69, 0x6e, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x75, 0x73, 0x65, 0x72, 0x53, 0x70, 0x61, 0x63, + 0x65, 0x4f, 0x6e, 0x55, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, + 0x78, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x69, 0x6d, 0x69, 0x74, + 0x69, 0x76, 0x65, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x75, 0x73, 0x65, 0x72, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, + 0x6e, 0x55, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x66, 0x65, 0x42, 0x6c, 0x65, 0x6e, 0x64, 0x3a, 0x20, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, + 0x42, 0x6c, 0x65, 0x6e, 0x64, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x42, 0x6c, 0x65, 0x6e, 0x64, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x66, 0x65, 0x42, 0x6c, 0x65, 0x6e, 0x64, 0x22, 0x20, + 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, + 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x42, 0x6c, 0x65, 0x6e, 0x64, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, + 0x42, 0x6c, 0x65, 0x6e, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x66, 0x65, 0x42, 0x6c, 0x65, 0x6e, 0x64, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x42, + 0x6c, 0x65, 0x6e, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, + 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x32, 0x22, + 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x6f, 0x64, 0x65, 0x22, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x6e, 0x6f, + 0x72, 0x6d, 0x61, 0x6c, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x6f, + 0x72, 0x6d, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, + 0x6c, 0x79, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x64, 0x61, 0x72, 0x6b, 0x65, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x67, 0x68, + 0x74, 0x65, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x42, 0x6c, 0x65, 0x6e, 0x64, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x3a, 0x20, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x20, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6c, + 0x6f, 0x72, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x4d, 0x61, 0x74, + 0x72, 0x69, 0x78, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, + 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x3d, 0x22, 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x73, 0x61, 0x74, 0x75, 0x72, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x68, 0x75, + 0x65, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x75, 0x6d, + 0x69, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x6f, 0x41, 0x6c, 0x70, 0x68, + 0x61, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x43, + 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x65, 0x72, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x43, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, + 0x65, 0x72, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x43, 0x6f, + 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x66, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x52, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x66, 0x65, 0x46, 0x75, + 0x6e, 0x63, 0x47, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x42, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, + 0x41, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, + 0x65, 0x72, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x43, + 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, + 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, + 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, + 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x3a, 0x20, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x57, + 0x69, 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x32, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x6f, + 0x76, 0x65, 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x76, 0x65, + 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x61, 0x74, 0x6f, 0x70, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x78, 0x6f, 0x72, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, + 0x72, 0x69, 0x74, 0x68, 0x6d, 0x65, 0x74, 0x69, 0x63, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6b, 0x31, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6b, 0x32, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x33, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x34, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x66, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x43, 0x6f, + 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, + 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, + 0x65, 0x63, 0x74, 0x20, 0x43, 0x6f, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, + 0x20, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x20, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x4d, + 0x61, 0x74, 0x72, 0x69, 0x78, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, + 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x4d, 0x61, 0x74, + 0x72, 0x69, 0x78, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x43, 0x6f, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x4d, 0x61, 0x74, 0x72, + 0x69, 0x78, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x66, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x4d, 0x61, + 0x74, 0x72, 0x69, 0x78, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x66, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x4d, 0x61, + 0x74, 0x72, 0x69, 0x78, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x6f, + 0x6c, 0x76, 0x65, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, + 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x65, 0x72, 0x6e, 0x65, + 0x6c, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x22, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x64, 0x69, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x69, 0x61, 0x73, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x58, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x59, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x65, 0x64, 0x67, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x20, + 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x64, 0x75, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x77, + 0x72, 0x61, 0x70, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x6e, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x55, 0x6e, 0x69, 0x74, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x41, 0x6c, 0x70, 0x68, 0x61, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x43, 0x6f, + 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x44, + 0x69, 0x66, 0x66, 0x75, 0x73, 0x65, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, + 0x6e, 0x67, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, + 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x44, 0x69, 0x66, 0x66, 0x75, 0x73, + 0x65, 0x20, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x44, 0x69, 0x66, 0x66, 0x75, 0x73, + 0x65, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x66, 0x65, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, + 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x66, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, + 0x69, 0x67, 0x68, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x66, 0x65, 0x53, 0x70, 0x6f, 0x74, 0x4c, 0x69, 0x67, 0x68, + 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, + 0x44, 0x69, 0x66, 0x66, 0x75, 0x73, 0x65, 0x4c, 0x69, 0x67, 0x68, 0x74, + 0x69, 0x6e, 0x67, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x44, 0x69, 0x66, 0x66, 0x75, 0x73, 0x65, 0x4c, 0x69, 0x67, 0x68, 0x74, + 0x69, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x66, 0x65, 0x44, 0x69, 0x66, 0x66, 0x75, 0x73, 0x65, 0x4c, 0x69, + 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x44, 0x69, 0x66, 0x66, 0x75, 0x73, 0x65, 0x4c, + 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x44, 0x69, + 0x66, 0x66, 0x75, 0x73, 0x65, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, + 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, 0x74, + 0x68, 0x49, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x2d, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x75, 0x72, 0x66, 0x61, 0x63, 0x65, 0x53, 0x63, + 0x61, 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, + 0x69, 0x66, 0x66, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x65, + 0x72, 0x6e, 0x65, 0x6c, 0x55, 0x6e, 0x69, 0x74, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x44, 0x69, 0x66, 0x66, + 0x75, 0x73, 0x65, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x44, 0x69, + 0x73, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, + 0x70, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, + 0x66, 0x65, 0x63, 0x74, 0x20, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x63, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x61, 0x70, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x66, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x63, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x63, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x22, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, + 0x69, 0x76, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x63, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x44, 0x69, 0x73, 0x70, + 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x66, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, + 0x69, 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x32, + 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x63, 0x61, 0x6c, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, + 0x41, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x52, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x47, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x42, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x41, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, + 0x22, 0x41, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x52, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x47, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x42, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x41, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x46, 0x6c, 0x6f, + 0x6f, 0x64, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, + 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x46, 0x6c, 0x6f, 0x6f, 0x64, 0x20, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x6c, + 0x6f, 0x6f, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x46, 0x6c, 0x6f, 0x6f, 0x64, + 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, + 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x6c, 0x6f, + 0x6f, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x66, 0x65, 0x46, 0x6c, 0x6f, 0x6f, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x6c, 0x6f, 0x6f, 0x64, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, + 0x65, 0x46, 0x6c, 0x6f, 0x6f, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, + 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6c, 0x6f, 0x6f, + 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6c, 0x6f, 0x6f, 0x64, 0x2d, 0x6f, + 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4f, 0x70, 0x61, 0x63, 0x69, 0x74, + 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x46, 0x6c, 0x6f, 0x6f, 0x64, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x47, 0x61, 0x75, 0x73, + 0x73, 0x69, 0x61, 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x3a, 0x20, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, + 0x47, 0x61, 0x75, 0x73, 0x73, 0x69, 0x61, 0x6e, 0x20, 0x42, 0x6c, 0x75, + 0x72, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x47, 0x61, 0x75, + 0x73, 0x73, 0x69, 0x61, 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x66, 0x65, 0x47, 0x61, 0x75, 0x73, 0x73, 0x69, 0x61, + 0x6e, 0x42, 0x6c, 0x75, 0x72, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, + 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x66, 0x65, 0x47, 0x61, 0x75, 0x73, 0x73, 0x69, 0x61, 0x6e, 0x42, 0x6c, + 0x75, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x66, 0x65, 0x47, 0x61, 0x75, 0x73, 0x73, 0x69, 0x61, 0x6e, 0x42, 0x6c, + 0x75, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x47, 0x61, 0x75, 0x73, 0x73, 0x69, 0x61, 0x6e, 0x42, 0x6c, 0x75, 0x72, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x66, 0x65, 0x47, 0x61, 0x75, 0x73, 0x73, 0x69, 0x61, 0x6e, 0x42, + 0x6c, 0x75, 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, + 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x64, 0x44, 0x65, + 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x65, 0x47, 0x61, 0x75, 0x73, 0x73, 0x69, 0x61, 0x6e, 0x42, 0x6c, 0x75, + 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x49, 0x6d, 0x61, + 0x67, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, + 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x66, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, + 0x69, 0x76, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x49, 0x6d, 0x61, + 0x67, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x49, 0x6d, 0x61, 0x67, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, + 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x45, 0x6d, + 0x62, 0x65, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, + 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, + 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x78, 0x4d, 0x69, 0x64, 0x59, 0x4d, 0x69, + 0x64, 0x20, 0x6d, 0x65, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x50, 0x72, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, + 0x6f, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x66, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, + 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, + 0x65, 0x63, 0x74, 0x20, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x66, + 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x22, + 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, + 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, + 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, + 0x4d, 0x65, 0x72, 0x67, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, + 0x69, 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4d, + 0x65, 0x72, 0x67, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, + 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, + 0x65, 0x63, 0x74, 0x20, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x20, 0x4e, 0x6f, + 0x64, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x4e, 0x6f, 0x64, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x4d, 0x65, 0x72, + 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x4d, 0x65, + 0x72, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x4e, 0x6f, + 0x64, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x66, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x4e, 0x6f, + 0x64, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x4d, 0x6f, 0x72, + 0x70, 0x68, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x3a, 0x20, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x4d, + 0x6f, 0x72, 0x70, 0x68, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4d, 0x6f, + 0x72, 0x70, 0x68, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x65, 0x4d, 0x6f, 0x72, 0x70, 0x68, 0x6f, 0x6c, 0x6f, + 0x67, 0x79, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4d, + 0x6f, 0x72, 0x70, 0x68, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x4d, 0x6f, 0x72, + 0x70, 0x68, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4d, 0x6f, 0x72, 0x70, 0x68, 0x6f, 0x6c, + 0x6f, 0x67, 0x79, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x4d, 0x6f, 0x72, 0x70, 0x68, 0x6f, + 0x6c, 0x6f, 0x67, 0x79, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, + 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x3d, 0x22, 0x65, 0x72, 0x6f, 0x64, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x65, 0x72, 0x6f, 0x64, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x6c, + 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x61, 0x64, 0x69, + 0x75, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4d, 0x6f, 0x72, 0x70, + 0x68, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x3a, + 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, + 0x63, 0x74, 0x20, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, + 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x4f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4f, + 0x66, 0x66, 0x73, 0x65, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x66, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4f, 0x66, 0x66, + 0x73, 0x65, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, + 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x64, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x4f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, + 0x65, 0x53, 0x70, 0x65, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x4c, 0x69, 0x67, + 0x68, 0x74, 0x69, 0x6e, 0x67, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x53, 0x70, 0x65, + 0x63, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, + 0x6e, 0x67, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x53, 0x70, + 0x65, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, + 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x66, 0x65, 0x44, + 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x66, 0x65, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x66, 0x65, 0x53, 0x70, 0x6f, + 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x66, 0x65, 0x53, 0x70, 0x65, 0x63, 0x75, 0x6c, 0x61, + 0x72, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x22, 0x20, 0x73, + 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, + 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x53, 0x70, 0x65, 0x63, 0x75, 0x6c, + 0x61, 0x72, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x53, 0x70, + 0x65, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, + 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x53, 0x70, 0x65, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x4c, 0x69, 0x67, 0x68, + 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x53, 0x70, 0x65, 0x63, 0x75, + 0x6c, 0x61, 0x72, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, + 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x2d, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x73, 0x75, 0x72, 0x66, 0x61, 0x63, 0x65, 0x53, 0x63, 0x61, 0x6c, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x65, + 0x63, 0x75, 0x6c, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x65, + 0x63, 0x75, 0x6c, 0x61, 0x72, 0x45, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x65, 0x72, + 0x6e, 0x65, 0x6c, 0x55, 0x6e, 0x69, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x53, 0x70, 0x65, 0x63, 0x75, + 0x6c, 0x61, 0x72, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x54, 0x69, + 0x6c, 0x65, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, + 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x54, 0x69, 0x6c, 0x65, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x54, + 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x54, + 0x69, 0x6c, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x54, 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x66, 0x65, 0x54, 0x69, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x54, 0x69, 0x6c, 0x65, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, + 0x65, 0x54, 0x69, 0x6c, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, + 0x69, 0x76, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x66, 0x65, 0x54, 0x69, 0x6c, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x54, 0x75, 0x72, 0x62, + 0x75, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x54, 0x75, + 0x72, 0x62, 0x75, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x54, 0x75, 0x72, + 0x62, 0x75, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x66, 0x65, 0x54, 0x75, 0x72, 0x62, 0x75, 0x6c, 0x65, 0x6e, 0x63, + 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, + 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x54, 0x75, + 0x72, 0x62, 0x75, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x54, 0x75, 0x72, 0x62, + 0x75, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x54, 0x75, 0x72, 0x62, 0x75, 0x6c, 0x65, 0x6e, + 0x63, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x66, 0x65, 0x54, 0x75, 0x72, 0x62, 0x75, 0x6c, 0x65, + 0x6e, 0x63, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x62, 0x61, 0x73, 0x65, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6e, 0x75, 0x6d, 0x4f, 0x63, 0x74, 0x61, 0x76, 0x65, 0x73, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x49, 0x6e, + 0x74, 0x65, 0x67, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x65, 0x65, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x69, 0x74, 0x63, + 0x68, 0x54, 0x69, 0x6c, 0x65, 0x73, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x6e, 0x6f, 0x53, 0x74, 0x69, 0x74, 0x63, + 0x68, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x69, 0x74, 0x63, + 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x53, 0x74, 0x69, 0x74, 0x63, 0x68, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x74, 0x75, 0x72, 0x62, 0x75, + 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x66, + 0x72, 0x61, 0x63, 0x74, 0x61, 0x6c, 0x4e, 0x6f, 0x69, 0x73, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x74, 0x75, 0x72, 0x62, 0x75, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x54, 0x75, 0x72, 0x62, 0x75, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x44, 0x69, 0x73, + 0x74, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x20, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x4c, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x44, 0x69, + 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, + 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x65, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, + 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, + 0x65, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, + 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x44, + 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x66, 0x65, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x67, + 0x68, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x7a, + 0x69, 0x6d, 0x75, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x65, 0x6c, 0x65, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x66, 0x65, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4c, 0x69, 0x67, + 0x68, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, + 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x3a, + 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, + 0x63, 0x74, 0x20, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x4c, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, + 0x66, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, + 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x7a, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x53, 0x70, + 0x6f, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x53, + 0x70, 0x6f, 0x74, 0x20, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x53, + 0x70, 0x6f, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x65, 0x53, 0x70, 0x6f, 0x74, 0x4c, 0x69, 0x67, 0x68, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x53, 0x70, 0x6f, 0x74, + 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x66, 0x65, 0x53, 0x70, 0x6f, 0x74, 0x4c, 0x69, 0x67, + 0x68, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x53, 0x70, 0x6f, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, + 0x53, 0x70, 0x6f, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x7a, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x73, 0x41, 0x74, 0x58, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x41, 0x74, 0x59, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x41, 0x74, 0x5a, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, + 0x70, 0x65, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x45, 0x78, 0x70, 0x6f, 0x6e, + 0x65, 0x6e, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x65, 0x41, + 0x6e, 0x67, 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x53, 0x70, 0x6f, 0x74, + 0x4c, 0x69, 0x67, 0x68, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x52, 0x3a, 0x20, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x20, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x52, 0x65, + 0x64, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x52, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x52, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x52, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x46, + 0x75, 0x6e, 0x63, 0x52, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x52, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, 0x46, 0x75, + 0x6e, 0x63, 0x52, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x67, + 0x61, 0x6d, 0x6d, 0x61, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6d, 0x70, 0x6c, 0x69, + 0x74, 0x75, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x65, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x52, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x47, 0x3a, + 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, 0x66, 0x65, + 0x63, 0x74, 0x20, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x47, 0x72, 0x65, 0x65, 0x6e, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x47, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x73, + 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, + 0x47, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, + 0x47, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, + 0x65, 0x46, 0x75, 0x6e, 0x63, 0x47, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x47, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x65, + 0x46, 0x75, 0x6e, 0x63, 0x47, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, + 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x63, 0x72, + 0x65, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x67, 0x61, 0x6d, 0x6d, 0x61, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, + 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6d, 0x70, + 0x6c, 0x69, 0x74, 0x75, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x65, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x47, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, + 0x42, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, 0x45, 0x66, + 0x66, 0x65, 0x63, 0x74, 0x20, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x42, 0x6c, 0x75, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, + 0x63, 0x42, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x6e, + 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, 0x46, 0x75, + 0x6e, 0x63, 0x42, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, + 0x6e, 0x63, 0x42, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x42, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x42, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x42, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, + 0x63, 0x72, 0x65, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x65, 0x61, + 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x67, 0x61, 0x6d, 0x6d, 0x61, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, + 0x65, 0x70, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, + 0x6d, 0x70, 0x6c, 0x69, 0x74, 0x75, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x65, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x42, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x65, 0x46, 0x75, + 0x6e, 0x63, 0x41, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x20, + 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x46, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x20, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, + 0x75, 0x6e, 0x63, 0x41, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x73, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x65, + 0x46, 0x75, 0x6e, 0x63, 0x41, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, + 0x46, 0x75, 0x6e, 0x63, 0x41, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x41, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, + 0x41, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x41, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, + 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x6e, + 0x65, 0x61, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x67, 0x61, 0x6d, 0x6d, 0x61, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x6c, 0x6f, 0x70, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x63, 0x65, 0x70, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x74, 0x75, 0x64, 0x65, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x65, 0x78, 0x70, 0x6f, 0x6e, 0x65, + 0x6e, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x66, + 0x66, 0x73, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x65, 0x46, 0x75, 0x6e, 0x63, + 0x41, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x66, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, + 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, + 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, + 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x75, + 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, + 0x2e, 0x33, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x30, 0x2f, 0x32, + 0x34, 0x20, 0x31, 0x37, 0x3a, 0x34, 0x30, 0x3a, 0x31, 0x35, 0x20, 0x66, + 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, + 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x43, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x75, 0x72, 0x73, 0x6f, + 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x75, 0x72, 0x73, 0x6f, 0x72, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, + 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x27, 0x63, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x27, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, + 0x2f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, 0x20, + 0x27, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x68, 0x61, 0x69, 0x72, 0x27, 0x2c, + 0x20, 0x3c, 0x75, 0x72, 0x69, 0x3e, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, + 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x3a, 0x20, 0x43, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x75, 0x72, 0x73, + 0x6f, 0x72, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, + 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x63, 0x75, 0x72, 0x73, 0x6f, + 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x63, 0x75, 0x72, + 0x73, 0x6f, 0x72, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x48, 0x79, 0x70, 0x65, + 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, + 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, + 0x69, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x6d, + 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, + 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, + 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, + 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, + 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x6d, + 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x34, 0x20, 0x32, 0x30, 0x30, + 0x32, 0x2f, 0x31, 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, 0x35, 0x3a, 0x31, + 0x31, 0x3a, 0x30, 0x32, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, + 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, + 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, + 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, + 0x31, 0x20, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x69, + 0x6e, 0x67, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, + 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, + 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, + 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, + 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x68, 0x79, 0x70, 0x65, 0x72, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x69, 0x6e, + 0x67, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x74, + 0x6f, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x4e, 0x4d, + 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x3a, 0x20, 0x41, 0x6e, 0x63, 0x68, + 0x6f, 0x72, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, + 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, + 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, + 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, + 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, + 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x61, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x52, 0x65, + 0x70, 0x6c, 0x61, 0x63, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x69, 0x6e, 0x6b, 0x54, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x68, 0x79, + 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x56, 0x69, 0x65, 0x77, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x56, 0x69, + 0x65, 0x77, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x76, 0x69, 0x65, 0x77, 0x2e, 0x6d, 0x6f, + 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, + 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, + 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, + 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, + 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, + 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, + 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, + 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, + 0x76, 0x69, 0x65, 0x77, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, + 0x2e, 0x33, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x30, 0x2f, 0x32, + 0x34, 0x20, 0x31, 0x37, 0x3a, 0x34, 0x30, 0x3a, 0x31, 0x36, 0x20, 0x66, + 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, + 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x56, 0x69, 0x65, 0x77, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, + 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, + 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x76, 0x69, 0x65, 0x77, 0x2e, 0x6d, 0x6f, + 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x56, 0x69, + 0x65, 0x77, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x76, 0x69, 0x65, 0x77, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, + 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, + 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x76, 0x69, 0x65, 0x77, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, + 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, + 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, + 0x77, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x76, 0x69, 0x65, + 0x77, 0x3a, 0x20, 0x56, 0x69, 0x65, 0x77, 0x20, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x76, 0x69, + 0x65, 0x77, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x76, 0x69, 0x65, 0x77, 0x22, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x56, 0x69, 0x65, 0x77, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x76, 0x69, 0x65, + 0x77, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x76, 0x69, 0x65, 0x77, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x69, + 0x65, 0x77, 0x42, 0x6f, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x56, 0x69, 0x65, 0x77, 0x42, 0x6f, 0x78, + 0x53, 0x70, 0x65, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, + 0x6f, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, + 0x78, 0x4d, 0x69, 0x64, 0x59, 0x4d, 0x69, 0x64, 0x20, 0x6d, 0x65, 0x65, + 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x50, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x41, 0x73, 0x70, + 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x53, 0x70, 0x65, 0x63, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x7a, 0x6f, 0x6f, 0x6d, 0x41, 0x6e, 0x64, 0x50, 0x61, 0x6e, + 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x6d, + 0x61, 0x67, 0x6e, 0x69, 0x66, 0x79, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x67, + 0x6e, 0x69, 0x66, 0x79, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x69, 0x65, + 0x77, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x76, 0x69, 0x65, 0x77, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x76, 0x69, 0x65, 0x77, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, + 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, + 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, + 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x77, 0x6f, + 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, 0x69, 0x6e, + 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x33, 0x20, 0x32, 0x30, + 0x30, 0x32, 0x2f, 0x31, 0x30, 0x2f, 0x32, 0x34, 0x20, 0x31, 0x37, 0x3a, + 0x34, 0x30, 0x3a, 0x31, 0x36, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, + 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, + 0x2e, 0x31, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, + 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, + 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x6d, 0x6f, 0x64, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, + 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, + 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x53, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x3a, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, + 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, + 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x73, 0x76, 0x67, 0x2d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, + 0x20, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, + 0x6c, 0x65, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x61, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, + 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, + 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, + 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, + 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, + 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x61, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, + 0x31, 0x2e, 0x33, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x30, 0x2f, + 0x32, 0x34, 0x20, 0x31, 0x37, 0x3a, 0x34, 0x30, 0x3a, 0x31, 0x34, 0x20, + 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, + 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, + 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x65, 0x2c, 0x20, 0x73, 0x65, 0x74, 0x2c, 0x20, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, + 0x2c, 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, + 0x6f, 0x72, 0x2c, 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x20, 0x6d, 0x70, + 0x61, 0x74, 0x68, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, + 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, + 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, + 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, + 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, + 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, + 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x65, 0x67, + 0x69, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x75, 0x72, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x65, 0x6e, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, + 0x69, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x78, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x22, 0x20, + 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x61, 0x6c, 0x77, + 0x61, 0x79, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x77, + 0x61, 0x79, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x77, 0x68, 0x65, 0x6e, 0x4e, 0x6f, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, + 0x70, 0x65, 0x61, 0x74, 0x44, 0x75, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x66, 0x69, 0x6c, 0x6c, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x3d, 0x22, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x66, + 0x72, 0x65, 0x65, 0x7a, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x61, + 0x6c, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x70, + 0x61, 0x63, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x6c, 0x69, 0x6e, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x65, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x65, 0x79, 0x53, 0x70, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x72, 0x6f, 0x6d, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x62, 0x79, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x64, 0x64, + 0x69, 0x74, 0x69, 0x76, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x3d, 0x22, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x73, 0x75, 0x6d, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, + 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x20, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x6e, 0x6f, 0x6e, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x6e, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, + 0x75, 0x6d, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x3a, 0x20, 0x41, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, + 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x54, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x65, + 0x74, 0x3a, 0x20, 0x53, 0x65, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x73, + 0x65, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x73, 0x65, 0x74, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, + 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x65, 0x74, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x73, 0x65, 0x74, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x73, 0x65, 0x74, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x73, + 0x65, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x69, + 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x73, 0x65, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x4d, 0x6f, + 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x20, 0x4d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x4d, + 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x6d, 0x70, + 0x61, 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, + 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x6e, + 0x69, 0x6d, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x65, 0x4d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, + 0x6d, 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x41, 0x64, 0x64, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x61, 0x6c, 0x63, + 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x3d, 0x22, 0x70, 0x61, 0x63, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x64, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x63, 0x65, + 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3d, 0x22, 0x73, 0x70, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6b, 0x65, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6b, 0x65, 0x79, 0x53, 0x70, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x72, 0x6f, 0x6d, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x6f, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x79, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x74, 0x68, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6b, 0x65, 0x79, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x65, 0x4d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x41, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, + 0x6f, 0x72, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, + 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, + 0x69, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x66, 0x6f, 0x72, 0x6d, 0x3a, 0x20, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x20, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x20, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, + 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, + 0x6f, 0x72, 0x6d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, + 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, + 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x64, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, + 0x6c, 0x61, 0x74, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x63, 0x61, + 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x73, 0x6b, 0x65, 0x77, 0x58, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x73, 0x6b, 0x65, 0x77, 0x59, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, + 0x6f, 0x72, 0x6d, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x70, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x4d, 0x6f, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x50, 0x61, 0x74, 0x68, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, + 0x2e, 0x6d, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x70, 0x61, 0x74, 0x68, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x6d, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x6d, 0x70, 0x61, 0x74, + 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x6d, 0x70, 0x61, + 0x74, 0x68, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x6d, 0x70, 0x61, 0x74, 0x68, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x6d, 0x70, 0x61, 0x74, 0x68, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x61, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x46, 0x6f, + 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x46, 0x6f, 0x6e, 0x74, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, + 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, + 0x67, 0x20, 0x74, 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, + 0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x66, 0x6f, + 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x34, + 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, 0x31, 0x31, 0x2f, 0x31, 0x34, 0x20, + 0x31, 0x35, 0x3a, 0x31, 0x31, 0x3a, 0x30, 0x32, 0x20, 0x66, 0x75, 0x6a, + 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, + 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, + 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x46, 0x6f, 0x6e, 0x74, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x2f, 0x53, + 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x73, + 0x76, 0x67, 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, + 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x46, 0x6f, 0x6e, 0x74, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x2c, 0x20, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2c, 0x20, 0x67, 0x6c, 0x79, 0x70, + 0x68, 0x2c, 0x20, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2d, 0x67, + 0x6c, 0x79, 0x70, 0x68, 0x2c, 0x20, 0x68, 0x6b, 0x65, 0x72, 0x6e, 0x2c, + 0x20, 0x76, 0x6b, 0x65, 0x72, 0x6e, 0x2c, 0x20, 0x66, 0x6f, 0x6e, 0x74, + 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x73, 0x72, 0x63, 0x2c, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x2d, + 0x66, 0x61, 0x63, 0x65, 0x2d, 0x75, 0x72, 0x69, 0x2c, 0x20, 0x66, 0x6f, + 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x2c, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, + 0x65, 0x2d, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x73, 0x72, 0x63, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, + 0x70, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x0d, 0x0a, + 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x3a, 0x20, + 0x46, 0x6f, 0x6e, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x2d, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x68, 0x6b, 0x65, 0x72, 0x6e, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x76, 0x6b, 0x65, 0x72, 0x6e, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, + 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x6f, + 0x72, 0x69, 0x7a, 0x2d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x2d, 0x78, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x6f, 0x72, 0x69, + 0x7a, 0x2d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x2d, 0x79, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x2d, + 0x61, 0x64, 0x76, 0x2d, 0x78, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, + 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x65, 0x72, 0x74, 0x2d, 0x6f, 0x72, 0x69, + 0x67, 0x69, 0x6e, 0x2d, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x76, 0x65, 0x72, 0x74, 0x2d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, + 0x2d, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x65, + 0x72, 0x74, 0x2d, 0x61, 0x64, 0x76, 0x2d, 0x79, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, + 0x6e, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, + 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x3a, 0x20, 0x46, 0x6f, + 0x6e, 0x74, 0x20, 0x46, 0x61, 0x63, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, + 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, + 0x73, 0x72, 0x63, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2d, + 0x73, 0x72, 0x63, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x22, 0x20, 0x73, 0x75, 0x62, 0x73, + 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, + 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, + 0x6d, 0x69, 0x6c, 0x79, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x77, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x73, 0x74, 0x72, 0x65, 0x74, 0x63, 0x68, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x6e, 0x69, 0x63, 0x6f, 0x64, 0x65, 0x2d, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x6e, + 0x69, 0x74, 0x73, 0x2d, 0x70, 0x65, 0x72, 0x2d, 0x65, 0x6d, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x6e, 0x6f, 0x73, 0x65, + 0x2d, 0x31, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x65, 0x6d, 0x76, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x65, 0x6d, + 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x6c, 0x6f, + 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x61, + 0x70, 0x2d, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x2d, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x63, 0x65, + 0x6e, 0x74, 0x2d, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x73, 0x63, 0x65, 0x6e, 0x74, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x65, 0x73, 0x63, 0x65, + 0x6e, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, 0x69, + 0x64, 0x74, 0x68, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x62, 0x6f, + 0x78, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x65, 0x6f, 0x67, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x62, 0x65, 0x74, 0x69, 0x63, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x74, 0x68, 0x65, + 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x68, 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x2d, 0x69, 0x64, 0x65, 0x6f, + 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x76, 0x2d, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x62, 0x65, + 0x74, 0x69, 0x63, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, + 0x2d, 0x6d, 0x61, 0x74, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, + 0x6c, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x2d, 0x68, + 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x2d, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x69, 0x6e, + 0x65, 0x2d, 0x74, 0x68, 0x69, 0x63, 0x6b, 0x6e, 0x65, 0x73, 0x73, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x69, 0x6b, + 0x65, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x2d, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x73, 0x74, 0x72, 0x69, 0x6b, 0x65, 0x74, 0x68, 0x72, 0x6f, 0x75, + 0x67, 0x68, 0x2d, 0x74, 0x68, 0x69, 0x63, 0x6b, 0x6e, 0x65, 0x73, 0x73, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x76, 0x65, 0x72, + 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x76, 0x65, + 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x74, 0x68, 0x69, 0x63, 0x6b, 0x6e, + 0x65, 0x73, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, + 0x63, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, + 0x6c, 0x79, 0x70, 0x68, 0x3a, 0x20, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x20, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, + 0x67, 0x6c, 0x79, 0x70, 0x68, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, + 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, + 0x67, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, + 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6c, 0x69, 0x70, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, + 0x61, 0x73, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, + 0x73, 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, + 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x56, 0x69, 0x65, 0x77, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, + 0x6e, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x67, 0x6c, 0x79, 0x70, 0x68, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x67, 0x6c, + 0x79, 0x70, 0x68, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x2e, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x67, 0x6c, 0x79, 0x70, + 0x68, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x75, 0x6e, 0x69, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x2d, 0x6e, 0x61, 0x6d, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x50, 0x61, 0x74, 0x68, 0x44, 0x61, + 0x74, 0x61, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x72, 0x61, 0x62, + 0x69, 0x63, 0x2d, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6c, 0x61, 0x6e, 0x67, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x64, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x6f, 0x72, 0x69, 0x7a, + 0x2d, 0x61, 0x64, 0x76, 0x2d, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x76, 0x65, 0x72, 0x74, 0x2d, 0x6f, 0x72, 0x69, 0x67, 0x69, + 0x6e, 0x2d, 0x78, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, + 0x65, 0x72, 0x74, 0x2d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x2d, 0x79, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x65, 0x72, 0x74, + 0x2d, 0x61, 0x64, 0x76, 0x2d, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x67, 0x6c, 0x79, 0x70, + 0x68, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2d, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x3a, + 0x20, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x47, 0x6c, 0x79, + 0x70, 0x68, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2d, 0x67, 0x6c, 0x79, 0x70, 0x68, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, + 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, + 0x61, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, + 0x72, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6c, 0x69, 0x70, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x4d, 0x61, 0x73, 0x6b, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x48, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x69, 0x6e, + 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, + 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x46, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x2d, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2d, 0x67, 0x6c, 0x79, + 0x70, 0x68, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2d, 0x67, 0x6c, 0x79, 0x70, + 0x68, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x2d, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2d, 0x67, 0x6c, 0x79, 0x70, 0x68, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x50, 0x61, 0x74, 0x68, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x2d, 0x61, 0x64, 0x76, 0x2d, 0x78, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x65, 0x72, 0x74, 0x2d, + 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x2d, 0x78, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x76, 0x65, 0x72, 0x74, 0x2d, 0x6f, 0x72, 0x69, + 0x67, 0x69, 0x6e, 0x2d, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x76, 0x65, 0x72, 0x74, 0x2d, 0x61, 0x64, 0x76, 0x2d, 0x79, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2d, 0x67, 0x6c, 0x79, + 0x70, 0x68, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x68, + 0x6b, 0x65, 0x72, 0x6e, 0x3a, 0x20, 0x48, 0x6f, 0x72, 0x69, 0x7a, 0x6f, + 0x6e, 0x74, 0x61, 0x6c, 0x20, 0x4b, 0x65, 0x72, 0x6e, 0x69, 0x6e, 0x67, + 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x6b, 0x65, 0x72, 0x6e, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x68, 0x6b, 0x65, 0x72, 0x6e, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x68, 0x6b, 0x65, 0x72, 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x68, 0x6b, 0x65, 0x72, 0x6e, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x31, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x67, 0x31, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x32, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x32, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6b, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x68, 0x6b, 0x65, 0x72, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x76, 0x6b, 0x65, 0x72, + 0x6e, 0x3a, 0x20, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, + 0x4b, 0x65, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x76, 0x6b, 0x65, 0x72, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x76, 0x6b, 0x65, 0x72, 0x6e, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x76, 0x6b, + 0x65, 0x72, 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x2e, 0x76, 0x6b, 0x65, 0x72, 0x6e, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x31, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x67, 0x31, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x32, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x67, 0x32, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x22, 0x20, + 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x76, 0x6b, 0x65, 0x72, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, + 0x63, 0x65, 0x2d, 0x73, 0x72, 0x63, 0x3a, 0x20, 0x46, 0x6f, 0x6e, 0x74, + 0x20, 0x46, 0x61, 0x63, 0x65, 0x20, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, + 0x61, 0x63, 0x65, 0x2d, 0x73, 0x72, 0x63, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x75, + 0x72, 0x69, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x66, 0x6f, + 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x6e, 0x61, 0x6d, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, + 0x65, 0x2d, 0x73, 0x72, 0x63, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, + 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x73, 0x72, 0x63, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x73, 0x72, 0x63, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, + 0x61, 0x63, 0x65, 0x2d, 0x73, 0x72, 0x63, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x6e, 0x74, + 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x73, 0x72, 0x63, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x73, 0x72, 0x63, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x75, 0x72, 0x69, 0x3a, 0x20, + 0x46, 0x6f, 0x6e, 0x74, 0x20, 0x46, 0x61, 0x63, 0x65, 0x20, 0x55, 0x52, + 0x49, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, + 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x75, 0x72, 0x69, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, + 0x66, 0x61, 0x63, 0x65, 0x2d, 0x75, 0x72, 0x69, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x75, + 0x72, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, + 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x75, 0x72, + 0x69, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, 0x6e, + 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x75, 0x72, 0x69, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, + 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x75, 0x72, 0x69, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, + 0x6b, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, + 0x2d, 0x75, 0x72, 0x69, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x3a, 0x20, 0x46, 0x6f, 0x6e, 0x74, 0x20, + 0x46, 0x61, 0x63, 0x65, 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x20, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, + 0x61, 0x63, 0x65, 0x2d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, + 0x61, 0x63, 0x65, 0x2d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, + 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, + 0x61, 0x63, 0x65, 0x2d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, + 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x6e, 0x61, + 0x6d, 0x65, 0x3a, 0x20, 0x46, 0x6f, 0x6e, 0x74, 0x20, 0x46, 0x61, 0x63, + 0x65, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, + 0x63, 0x65, 0x2d, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, + 0x2d, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, 0x6e, 0x74, + 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, + 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, + 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x63, 0x65, 0x2d, 0x6e, 0x61, + 0x6d, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x73, 0x72, + 0x63, 0x3a, 0x20, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x2d, 0x73, 0x72, 0x63, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x2e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x2d, 0x73, 0x72, 0x63, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x73, 0x72, 0x63, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x73, 0x72, 0x63, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x58, 0x4c, 0x69, 0x6e, + 0x6b, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, + 0x56, 0x47, 0x2e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x2d, 0x73, 0x72, 0x63, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, + 0x2d, 0x66, 0x6f, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x45, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x73, + 0x76, 0x67, 0x2d, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x69, 0x73, 0x20, 0x53, 0x56, 0x47, 0x2c, 0x20, 0x61, 0x20, 0x6c, + 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, + 0x77, 0x6f, 0x2d, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x20, + 0x69, 0x6e, 0x20, 0x58, 0x4d, 0x4c, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, + 0x30, 0x30, 0x31, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x32, 0x20, 0x57, 0x33, + 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, + 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, + 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, + 0x64, 0x3a, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x6d, 0x6f, 0x64, + 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x34, 0x20, 0x32, 0x30, 0x30, 0x32, 0x2f, + 0x31, 0x31, 0x2f, 0x31, 0x34, 0x20, 0x31, 0x35, 0x3a, 0x31, 0x31, 0x3a, + 0x30, 0x32, 0x20, 0x66, 0x75, 0x6a, 0x69, 0x73, 0x61, 0x77, 0x61, 0x20, + 0x45, 0x78, 0x70, 0x20, 0x24, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, + 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, + 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, + 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x53, 0x20, 0x53, 0x56, 0x47, 0x20, 0x31, 0x2e, 0x31, 0x20, + 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, + 0x73, 0x2f, 0x53, 0x56, 0x47, 0x2f, 0x31, 0x2e, 0x31, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x73, 0x76, 0x67, 0x2d, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x22, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x0d, + 0x0a, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x45, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, + 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x51, 0x75, + 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x20, 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, + 0x28, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x29, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x45, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x3a, 0x20, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, + 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x72, 0x65, 0x69, + 0x67, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x20, 0x73, 0x75, + 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x2e, 0x66, 0x6f, 0x72, 0x65, 0x69, + 0x67, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x66, 0x6f, 0x72, + 0x65, 0x69, 0x67, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, + 0x47, 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, + 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, + 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x50, 0x72, + 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, 0x2e, 0x47, 0x72, + 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x53, 0x56, 0x47, + 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x78, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, 0x6f, + 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x79, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x43, + 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x77, + 0x69, 0x64, 0x74, 0x68, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x76, 0x67, 0x3a, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x76, 0x67, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, + 0x72, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, + 0x47, 0x2e, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x76, 0x67, 0x2d, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x56, 0x47, 0x20, + 0x31, 0x2e, 0x31, 0x20, 0x44, 0x54, 0x44, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0d, 0x0a +}; + +} //namespace FlightCrew diff --git a/src/FlightCrew/Schemas/AsSources/XencSchemaXsd.cpp b/src/FlightCrew/Schemas/AsSources/XencSchemaXsd.cpp new file mode 100644 index 0000000..4eaa9dc --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/XencSchemaXsd.cpp @@ -0,0 +1,447 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + XML Encryption Syntax and Processing, XSD + + Specification: http://www.w3.org/TR/xmlenc-core/ + + Namespace: http://www.w3.org/2001/04/xmlenc# + + Taken from: http://www.w3.org/TR/xmlenc-core/xenc-schema.xsd + + */ + +namespace FlightCrew +{ + +const char* XENC_SCHEMA_XSD_ID = "xenc-schema.xsd"; +const unsigned int XENC_SCHEMA_XSD_LEN = 4829; +const unsigned char XENC_SCHEMA_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x75, 0x74, 0x66, 0x2d, 0x38, 0x22, + 0x3f, 0x3e, 0x0a, 0x3c, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x78, + 0x6d, 0x6c, 0x6e, 0x73, 0x3d, 0x27, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x27, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x3d, + 0x27, 0x31, 0x2e, 0x30, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x65, 0x6e, 0x63, + 0x3d, 0x27, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, + 0x2f, 0x30, 0x34, 0x2f, 0x78, 0x6d, 0x6c, 0x65, 0x6e, 0x63, 0x23, 0x27, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, + 0x6e, 0x73, 0x3a, 0x64, 0x73, 0x3d, 0x27, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x32, 0x30, 0x30, 0x30, 0x2f, 0x30, 0x39, 0x2f, 0x78, 0x6d, 0x6c, + 0x64, 0x73, 0x69, 0x67, 0x23, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x27, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x78, 0x6d, + 0x6c, 0x65, 0x6e, 0x63, 0x23, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x6f, + 0x72, 0x6d, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x27, 0x71, + 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x27, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x27, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x30, 0x2f, 0x30, 0x39, 0x2f, 0x78, + 0x6d, 0x6c, 0x64, 0x73, 0x69, 0x67, 0x23, 0x27, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x27, 0x78, + 0x6d, 0x6c, 0x64, 0x73, 0x69, 0x67, 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2d, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x78, 0x73, 0x64, 0x27, 0x2f, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, + 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x27, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, + 0x27, 0x74, 0x72, 0x75, 0x65, 0x27, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x45, 0x6e, 0x63, 0x72, + 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, + 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, + 0x3a, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, + 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x27, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x27, 0x30, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x27, 0x64, 0x73, 0x3a, 0x4b, 0x65, 0x79, + 0x49, 0x6e, 0x66, 0x6f, 0x27, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x27, 0x30, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x43, + 0x69, 0x70, 0x68, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x27, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x27, 0x78, 0x65, 0x6e, + 0x63, 0x3a, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x27, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x27, 0x30, + 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x49, 0x64, 0x27, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x27, 0x49, 0x44, 0x27, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x27, + 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x27, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x54, 0x79, 0x70, + 0x65, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x61, 0x6e, 0x79, + 0x55, 0x52, 0x49, 0x27, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x27, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x4d, 0x69, 0x6d, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x73, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x27, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x27, + 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x27, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x45, 0x6e, 0x63, + 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x27, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x27, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x27, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x27, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x0a, 0x20, 0x20, + 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x45, 0x6e, 0x63, 0x72, 0x79, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, + 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x27, + 0x74, 0x72, 0x75, 0x65, 0x27, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x4b, 0x65, 0x79, 0x53, 0x69, + 0x7a, 0x65, 0x27, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x27, 0x30, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, + 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x4b, 0x65, 0x79, 0x53, 0x69, 0x7a, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x4f, 0x41, 0x45, 0x50, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x27, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x27, 0x30, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x27, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x42, 0x69, 0x6e, 0x61, 0x72, + 0x79, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x3d, 0x27, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x27, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x27, 0x30, + 0x27, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x27, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x27, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x27, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, + 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x61, 0x6e, 0x79, 0x55, + 0x52, 0x49, 0x27, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x27, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x27, 0x4b, 0x65, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x27, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x27, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x44, 0x61, 0x74, + 0x61, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, + 0x63, 0x3a, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x54, 0x79, 0x70, 0x65, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x27, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x43, 0x69, + 0x70, 0x68, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x27, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x27, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x42, + 0x69, 0x6e, 0x61, 0x72, 0x79, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x43, + 0x69, 0x70, 0x68, 0x65, 0x72, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x43, + 0x69, 0x70, 0x68, 0x65, 0x72, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x78, 0x65, + 0x6e, 0x63, 0x3a, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x52, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x27, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, + 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x27, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x27, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x73, + 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, + 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x54, + 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x27, 0x30, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x27, 0x55, 0x52, 0x49, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x27, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x27, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x27, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x27, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x54, 0x79, 0x70, 0x65, 0x27, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x27, 0x64, 0x73, 0x3a, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x27, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x27, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x45, 0x6e, 0x63, 0x72, 0x79, + 0x70, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x27, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x45, 0x6e, 0x63, + 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, + 0x70, 0x65, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x27, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, + 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x27, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, 0x3a, + 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x27, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, + 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x64, + 0x73, 0x3a, 0x4b, 0x65, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x45, 0x6e, 0x63, 0x72, + 0x79, 0x70, 0x74, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x27, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x45, 0x6e, 0x63, + 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, + 0x65, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x27, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4b, + 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x27, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x45, 0x6e, + 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x27, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x27, 0x78, 0x65, 0x6e, + 0x63, 0x3a, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4c, + 0x69, 0x73, 0x74, 0x27, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x27, 0x30, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x43, 0x61, + 0x72, 0x72, 0x69, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, + 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x27, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x27, 0x30, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, + 0x6e, 0x74, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x73, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x27, 0x6f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4d, + 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, + 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4b, 0x41, 0x2d, 0x4e, 0x6f, + 0x6e, 0x63, 0x65, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x42, 0x69, 0x6e, 0x61, 0x72, + 0x79, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x44, + 0x69, 0x67, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x2f, 0x3e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, + 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x72, 0x69, 0x67, 0x69, + 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x4b, 0x65, 0x79, 0x49, 0x6e, 0x66, 0x6f, + 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, + 0x3a, 0x4b, 0x65, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, + 0x4b, 0x65, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x20, 0x6d, 0x69, 0x6e, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x4b, 0x65, 0x79, 0x49, + 0x6e, 0x66, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, + 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x79, + 0x55, 0x52, 0x49, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x45, 0x6e, 0x64, 0x20, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, + 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x73, 0x3a, 0x4b, 0x65, 0x79, 0x49, + 0x6e, 0x66, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x27, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4c, + 0x69, 0x73, 0x74, 0x27, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x27, 0x31, 0x27, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x27, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x27, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x27, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x78, + 0x65, 0x6e, 0x63, 0x3a, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x4b, 0x65, 0x79, 0x52, + 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x27, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x52, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x27, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, + 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x27, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x3d, 0x27, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, + 0x27, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x27, 0x30, 0x27, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x27, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x55, 0x52, 0x49, 0x27, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x27, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x27, 0x20, + 0x75, 0x73, 0x65, 0x3d, 0x27, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, + 0x73, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, + 0x63, 0x3a, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x54, 0x79, + 0x70, 0x65, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x27, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x54, + 0x79, 0x70, 0x65, 0x27, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x45, 0x6e, + 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x70, + 0x65, 0x72, 0x74, 0x79, 0x27, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x27, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x49, 0x64, 0x27, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x27, 0x49, 0x44, 0x27, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x27, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x27, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x27, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x27, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x27, 0x78, 0x65, 0x6e, 0x63, 0x3a, 0x45, 0x6e, + 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x70, + 0x65, 0x72, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x27, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x27, 0x45, + 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, + 0x70, 0x65, 0x72, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, + 0x69, 0x78, 0x65, 0x64, 0x3d, 0x27, 0x74, 0x72, 0x75, 0x65, 0x27, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x27, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x27, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, + 0x6e, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x3d, 0x27, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x27, 0x20, 0x70, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x73, 0x3d, 0x27, 0x6c, 0x61, 0x78, 0x27, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x27, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x27, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x27, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x27, 0x20, + 0x75, 0x73, 0x65, 0x3d, 0x27, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x27, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x27, 0x49, 0x64, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x27, 0x49, 0x44, 0x27, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x27, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x27, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x58, 0x4d, 0x4c, 0x2f, 0x31, 0x39, 0x39, 0x38, 0x2f, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x3e, 0x0a, 0x0a +}; + + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Schemas/AsSources/Xhtml11FlatDtd.cpp b/src/FlightCrew/Schemas/AsSources/Xhtml11FlatDtd.cpp new file mode 100644 index 0000000..ea00412 --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/Xhtml11FlatDtd.cpp @@ -0,0 +1,12808 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + Extensible HTML version 1.1 DTD, flat file + + Specification: http://www.w3.org/TR/xhtml11/Overview.html + + Namespace: http://www.w3.org/1999/xhtml + + Taken from: http://www.w3.org/TR/xhtml11/xhtml11.zip + + This DTD module is identified by the PUBLIC and SYSTEM identifiers: + + PUBLIC "-//W3C//DTD XHTML 1.1//EN" + SYSTEM "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" + + */ + +namespace FlightCrew +{ + +const char* XHTML11_FLAT_DTD_ID = "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"; +const unsigned int XHTML11_FLAT_DTD_LEN = 153112; +const unsigned char XHTML11_FLAT_DTD[] = { + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x31, 0x20, + 0x44, 0x54, 0x44, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, + 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x31, + 0x2e, 0x64, 0x74, 0x64, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x31, + 0x20, 0x44, 0x54, 0x44, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x62, 0x6c, 0x65, 0x20, 0x48, 0x79, 0x70, 0x65, 0x72, 0x54, 0x65, + 0x78, 0x74, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x4c, 0x61, + 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x28, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, + 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, + 0x30, 0x30, 0x30, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x20, 0x57, 0x69, + 0x64, 0x65, 0x20, 0x57, 0x65, 0x62, 0x20, 0x43, 0x6f, 0x6e, 0x73, 0x6f, + 0x72, 0x74, 0x69, 0x75, 0x6d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x28, 0x4d, 0x61, 0x73, 0x73, 0x61, 0x63, 0x68, 0x75, 0x73, + 0x65, 0x74, 0x74, 0x73, 0x20, 0x49, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, + 0x74, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x63, 0x68, 0x6e, 0x6f, + 0x6c, 0x6f, 0x67, 0x79, 0x2c, 0x20, 0x49, 0x6e, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x20, 0x4e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, + 0x64, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x52, 0x65, 0x63, 0x68, 0x65, 0x72, 0x63, 0x68, 0x65, 0x20, 0x65, 0x6e, + 0x20, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x71, 0x75, + 0x65, 0x20, 0x65, 0x74, 0x20, 0x65, 0x6e, 0x20, 0x41, 0x75, 0x74, 0x6f, + 0x6d, 0x61, 0x74, 0x69, 0x71, 0x75, 0x65, 0x2c, 0x20, 0x4b, 0x65, 0x69, + 0x6f, 0x20, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x74, 0x79, + 0x29, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x73, 0x65, 0x2c, 0x20, 0x63, 0x6f, + 0x70, 0x79, 0x2c, 0x20, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x20, 0x61, + 0x6e, 0x64, 0x20, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x44, 0x54, 0x44, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x74, 0x73, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x75, 0x72, 0x70, 0x6f, 0x73, 0x65, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, + 0x20, 0x66, 0x65, 0x65, 0x20, 0x69, 0x73, 0x20, 0x68, 0x65, 0x72, 0x65, + 0x62, 0x79, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x67, 0x72, 0x61, + 0x6e, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x70, 0x65, 0x72, 0x70, + 0x65, 0x74, 0x75, 0x69, 0x74, 0x79, 0x2c, 0x20, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x20, 0x63, 0x6f, 0x70, 0x79, + 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6e, 0x6f, 0x74, 0x69, 0x63, 0x65, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x70, 0x61, 0x72, 0x61, 0x67, 0x72, 0x61, 0x70, + 0x68, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x20, 0x69, 0x6e, 0x20, + 0x61, 0x6c, 0x6c, 0x20, 0x63, 0x6f, 0x70, 0x69, 0x65, 0x73, 0x2e, 0x20, + 0x20, 0x54, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x20, 0x6d, + 0x61, 0x6b, 0x65, 0x20, 0x6e, 0x6f, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x73, 0x75, 0x69, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x75, 0x72, + 0x70, 0x6f, 0x73, 0x65, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x49, 0x74, 0x20, 0x69, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x64, 0x20, 0x22, 0x61, 0x73, 0x20, 0x69, 0x73, 0x22, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x20, 0x65, 0x78, 0x70, 0x72, 0x65, + 0x73, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x72, 0x20, 0x69, 0x6d, 0x70, 0x6c, + 0x69, 0x65, 0x64, 0x20, 0x77, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x74, 0x79, + 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x41, + 0x75, 0x74, 0x68, 0x6f, 0x72, 0x3a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4d, + 0x75, 0x72, 0x72, 0x61, 0x79, 0x20, 0x4d, 0x2e, 0x20, 0x41, 0x6c, 0x74, + 0x68, 0x65, 0x69, 0x6d, 0x20, 0x3c, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, + 0x6d, 0x40, 0x65, 0x6e, 0x67, 0x2e, 0x73, 0x75, 0x6e, 0x2e, 0x63, 0x6f, + 0x6d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, + 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x20, 0x20, 0x24, + 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x31, 0x2e, + 0x64, 0x74, 0x64, 0x2c, 0x76, 0x20, 0x31, 0x2e, 0x32, 0x30, 0x20, 0x32, + 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x35, 0x20, 0x31, 0x34, + 0x3a, 0x32, 0x30, 0x3a, 0x35, 0x31, 0x20, 0x61, 0x68, 0x62, 0x79, 0x20, + 0x45, 0x78, 0x70, 0x20, 0x24, 0x0a, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x20, 0x66, + 0x69, 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x6f, 0x66, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x54, 0x44, + 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x6c, 0x65, 0x61, + 0x73, 0x65, 0x20, 0x75, 0x73, 0x65, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69, + 0x63, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x20, 0x74, 0x6f, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, + 0x20, 0x69, 0x74, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x44, 0x54, 0x44, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, + 0x31, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x44, 0x54, + 0x44, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x31, 0x2f, + 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x55, 0x73, 0x65, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x55, 0x52, + 0x49, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3a, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x53, 0x65, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, + 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x73, + 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, 0x2e, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x4e, 0x53, 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, + 0x78, 0x65, 0x64, 0x20, 0x22, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x65, 0x66, + 0x69, 0x78, 0x20, 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x75, 0x73, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3a, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x58, 0x4c, 0x49, 0x4e, 0x4b, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x20, + 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x58, 0x4c, 0x49, 0x4e, 0x4b, 0x2e, 0x78, 0x6d, + 0x6c, 0x6e, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x22, + 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x46, 0x6f, + 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2c, 0x20, 0x69, + 0x66, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x61, 0x72, 0x65, 0x20, 0x75, 0x73, + 0x69, 0x6e, 0x67, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, + 0x31, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x2c, 0x20, + 0x75, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x46, 0x50, 0x49, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x64, 0x65, 0x63, 0x6c, + 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6f, 0x6e, + 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x3f, + 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x3d, + 0x22, 0x31, 0x2e, 0x30, 0x22, 0x3f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, + 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x44, 0x54, + 0x44, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x31, 0x2f, + 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, + 0x31, 0x2e, 0x64, 0x74, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x78, 0x6d, 0x6c, + 0x6e, 0x73, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, + 0x39, 0x39, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x78, + 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x3d, 0x22, 0x65, 0x6e, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x68, 0x74, + 0x6d, 0x6c, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x66, 0x75, 0x74, 0x75, + 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x20, + 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, + 0x69, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2d, 0x74, 0x65, 0x73, + 0x74, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x69, 0x73, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x65, 0x63, 0x6c, + 0x61, 0x72, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, + 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x62, 0x69, 0x64, 0x69, 0x72, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x0a, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x62, 0x69, 0x64, 0x69, 0x20, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x0a, 0x3c, 0x3f, 0x64, 0x6f, 0x63, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x64, 0x6f, 0x63, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x72, + 0x6f, 0x6c, 0x65, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x20, + 0x7b, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x31, 0x20, + 0x7d, 0x20, 0x3f, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x72, 0x65, + 0x2d, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x52, + 0x65, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x69, 0x73, + 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x73, 0x20, 0x61, 0x73, 0x20, 0x61, + 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, + 0x20, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x20, 0x6d, 0x61, 0x72, 0x6b, + 0x75, 0x70, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x74, + 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, 0x20, 0x70, 0x72, + 0x69, 0x6f, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, + 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x0a, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x72, 0x65, 0x66, + 0x77, 0x2d, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x70, 0x72, 0x65, 0x66, 0x77, 0x2d, 0x72, 0x65, 0x64, 0x65, 0x63, + 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x25, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x72, 0x65, 0x66, 0x77, 0x2d, + 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x3b, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x72, 0x65, 0x66, 0x77, 0x2d, + 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x49, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, + 0x6c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, + 0x6e, 0x6c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x53, + 0x74, 0x79, 0x6c, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, + 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, + 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2d, 0x31, 0x2e, 0x6d, + 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, + 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, + 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, + 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, + 0x53, 0x74, 0x79, 0x6c, 0x65, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x27, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x27, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2c, 0x20, 0x75, 0x73, 0x65, 0x64, + 0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, + 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, + 0x2e, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x20, 0x70, + 0x72, 0x69, 0x6f, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x6e, 0x20, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, + 0x62, 0x65, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, + 0x69, 0x6e, 0x20, 0x25, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x74, + 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x43, 0x6f, 0x72, 0x65, + 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x22, 0x0a, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x44, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, + 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x0a, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, + 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x20, + 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x31, 0x31, 0x2d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x46, + 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x28, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x2e, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, + 0x72, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, + 0x72, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, + 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, + 0x77, 0x6f, 0x72, 0x6b, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, + 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, + 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, + 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, + 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, + 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, + 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, + 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, + 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, + 0x72, 0x6b, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, + 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x61, + 0x72, 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x72, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, + 0x74, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x73, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, + 0x72, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2c, 0x20, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2b, 0x20, 0x20, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x2b, 0x20, 0x20, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2b, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x2d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x2b, 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2b, 0x20, 0x20, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2b, 0x20, 0x20, + 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x65, 0x20, 0x49, 0x6e, 0x74, 0x72, 0x69, 0x6e, 0x73, + 0x69, 0x63, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x20, 0x62, 0x75, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, + 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x62, 0x65, + 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x69, 0x74, 0x20, 0x6d, 0x75, 0x73, + 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, + 0x69, 0x61, 0x74, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, + 0x72, 0x69, 0x6f, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x62, 0x75, 0x74, 0x20, 0x61, + 0x66, 0x74, 0x65, 0x72, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x61, 0x72, 0x63, 0x68, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x22, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, + 0x72, 0x63, 0x68, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, 0x72, 0x63, 0x68, 0x2e, 0x6d, + 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x42, 0x61, 0x73, 0x65, 0x20, 0x41, 0x72, 0x63, 0x68, + 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x20, 0x31, 0x2e, 0x30, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x61, 0x72, 0x63, 0x68, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, + 0x20, 0x3e, 0x0a, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, 0x72, + 0x63, 0x68, 0x2e, 0x6d, 0x6f, 0x64, 0x3b, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, + 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, + 0x49, 0x4f, 0x4e, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x4e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x31, 0x2e, 0x30, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x4e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, + 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, + 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, + 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, + 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, + 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, + 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x4e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, + 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, + 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x6f, 0x6c, + 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x2c, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x20, 0x69, 0x6d, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x73, 0x70, 0x65, + 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, + 0x73, 0x2e, 0x20, 0x57, 0x68, 0x65, 0x6e, 0x20, 0x61, 0x6e, 0x20, 0x65, + 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x46, 0x50, 0x49, 0x20, + 0x69, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6b, 0x6e, 0x6f, 0x77, + 0x6e, 0x2c, 0x20, 0x69, 0x74, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x63, + 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x68, 0x65, + 0x72, 0x65, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x4e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x47, 0x4d, 0x4c, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x58, 0x4d, 0x4c, 0x20, 0x4e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x57, 0x33, 0x43, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x31, 0x2e, 0x30, 0x20, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x77, + 0x33, 0x63, 0x2d, 0x78, 0x6d, 0x6c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x49, 0x53, 0x4f, 0x20, + 0x38, 0x38, 0x37, 0x39, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x20, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x62, 0x6c, + 0x65, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x4c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x28, 0x58, 0x4d, 0x4c, 0x29, 0x20, + 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x30, + 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x63, 0x64, + 0x61, 0x74, 0x61, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, + 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x4d, + 0x4c, 0x20, 0x31, 0x2e, 0x30, 0x3a, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x47, 0x4d, 0x4c, 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x61, + 0x6c, 0x20, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x49, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, + 0x66, 0x70, 0x69, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x49, 0x53, 0x4f, 0x20, 0x38, 0x38, 0x37, + 0x39, 0x3a, 0x31, 0x39, 0x38, 0x36, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, + 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x20, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x49, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x4e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x70, 0x61, 0x64, 0x64, + 0x69, 0x6e, 0x67, 0x2f, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x70, 0x61, 0x63, + 0x69, 0x6e, 0x67, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6e, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x69, 0x78, + 0x65, 0x6c, 0x73, 0x20, 0x6f, 0x72, 0x20, 0x6e, 0x6e, 0x25, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, + 0x65, 0x20, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3a, 0x20, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x2d, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, + 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, + 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, + 0x4e, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x73, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, + 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x4c, 0x69, 0x6e, + 0x6b, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x69, 0x6e, 0x67, + 0x6c, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x2d, + 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x65, 0x73, 0x63, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, + 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x44, 0x65, 0x73, 0x63, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x69, 0x78, + 0x65, 0x6c, 0x2c, 0x20, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, + 0x67, 0x65, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x76, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, + 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, + 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3a, 0x20, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x4c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x72, 0x20, + 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x64, 0x69, 0x67, 0x69, 0x74, 0x73, 0x20, + 0x28, 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x29, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, + 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3a, 0x20, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x20, 0x72, 0x65, 0x70, 0x72, + 0x65, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x6c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x20, 0x69, 0x6e, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, + 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, + 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, + 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x50, 0x69, 0x78, + 0x65, 0x6c, 0x73, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, + 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, + 0x4e, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, + 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, + 0x4e, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x74, 0x65, 0x78, 0x74, 0x75, 0x61, 0x6c, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x74, 0x65, 0x78, + 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, + 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x54, + 0x65, 0x78, 0x74, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x20, 0x4e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, + 0x67, 0x6c, 0x65, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, + 0x72, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x5b, 0x49, 0x53, 0x4f, 0x31, + 0x30, 0x36, 0x34, 0x36, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x63, 0x68, 0x61, + 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3a, 0x20, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, + 0x72, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, + 0x65, 0x72, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x2c, + 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, 0x43, + 0x32, 0x30, 0x34, 0x35, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x63, 0x68, 0x61, + 0x72, 0x73, 0x65, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, + 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3a, 0x20, 0x43, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, + 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, + 0x61, 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, + 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x65, + 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x2c, 0x20, 0x61, 0x73, + 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, 0x43, 0x32, 0x30, 0x34, + 0x35, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, + 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, + 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x4e, + 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, + 0x43, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x73, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65, 0x2c, 0x20, 0x61, 0x73, + 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, 0x43, 0x32, 0x30, 0x34, + 0x35, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, + 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3a, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x2d, 0x73, 0x65, + 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, + 0x5b, 0x52, 0x46, 0x43, 0x32, 0x30, 0x34, 0x35, 0x5d, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, + 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, + 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x64, 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x69, + 0x6d, 0x65, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x64, 0x61, 0x74, 0x65, + 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x64, + 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x3a, 0x20, 0x44, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, + 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, + 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, 0x43, 0x33, 0x30, 0x36, 0x36, 0x5d, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, + 0x49, 0x4f, 0x4e, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x64, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, + 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3a, 0x20, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, + 0x64, 0x65, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x55, 0x6e, 0x69, 0x66, 0x6f, 0x72, + 0x6d, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x49, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x2c, 0x20, 0x73, + 0x65, 0x65, 0x20, 0x5b, 0x55, 0x52, 0x49, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, + 0x75, 0x72, 0x69, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3a, + 0x20, 0x55, 0x52, 0x49, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x2d, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x55, 0x6e, 0x69, 0x66, + 0x6f, 0x72, 0x6d, 0x20, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x20, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, + 0x2c, 0x20, 0x73, 0x65, 0x65, 0x20, 0x5b, 0x55, 0x52, 0x49, 0x5d, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x20, 0x75, 0x72, 0x69, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x4e, 0x4f, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x3a, 0x20, 0x55, 0x52, 0x49, 0x73, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, + 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, + 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, + 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, + 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, + 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, + 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, + 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, + 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, + 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, + 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x44, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, + 0x20, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2c, 0x20, + 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x6f, 0x66, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x6f, 0x74, 0x68, + 0x65, 0x72, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x74, + 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, + 0x67, 0x2f, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, + 0x67, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6e, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, + 0x73, 0x20, 0x6f, 0x72, 0x20, 0x6e, 0x6e, 0x25, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x20, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2d, + 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x4c, 0x69, 0x6e, 0x6b, + 0x54, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x20, 0x22, 0x4e, 0x4d, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x53, + 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x69, + 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x2d, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, + 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x65, + 0x73, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, + 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x2c, 0x20, 0x70, + 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x6f, + 0x72, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, 0x22, + 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x6f, + 0x72, 0x65, 0x20, 0x64, 0x69, 0x67, 0x69, 0x74, 0x73, 0x20, 0x28, 0x4e, + 0x55, 0x4d, 0x42, 0x45, 0x52, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, + 0x72, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x69, + 0x6e, 0x67, 0x20, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x69, 0x6e, + 0x20, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x50, + 0x69, 0x78, 0x65, 0x6c, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x20, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, + 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x74, 0x65, 0x78, 0x74, 0x75, 0x61, 0x6c, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x54, 0x65, 0x78, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, + 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x44, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, + 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x66, 0x72, + 0x6f, 0x6d, 0x20, 0x5b, 0x49, 0x53, 0x4f, 0x31, 0x30, 0x36, 0x34, 0x36, + 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, + 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, + 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, + 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, + 0x43, 0x32, 0x30, 0x34, 0x35, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x43, 0x68, + 0x61, 0x72, 0x73, 0x65, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, + 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x68, 0x61, + 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, + 0x69, 0x6e, 0x67, 0x73, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, + 0x20, 0x5b, 0x52, 0x46, 0x43, 0x32, 0x30, 0x34, 0x35, 0x5d, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x43, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x73, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, + 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65, 0x2c, 0x20, + 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, 0x43, 0x32, + 0x30, 0x34, 0x35, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x2d, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, + 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2c, 0x20, 0x61, 0x73, + 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, 0x43, 0x32, 0x30, 0x34, + 0x35, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x61, 0x74, 0x65, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x69, 0x6e, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x49, + 0x53, 0x4f, 0x20, 0x64, 0x61, 0x74, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x44, 0x61, 0x74, 0x65, 0x74, 0x69, + 0x6d, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, + 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x20, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, + 0x20, 0x5b, 0x49, 0x53, 0x4f, 0x38, 0x38, 0x37, 0x39, 0x5d, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x46, 0x50, 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x2c, 0x20, + 0x61, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x5b, 0x52, 0x46, 0x43, 0x33, + 0x30, 0x36, 0x36, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x4c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, 0x22, 0x4e, 0x4d, 0x54, 0x4f, 0x4b, + 0x45, 0x4e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x61, 0x20, 0x55, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x49, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x2c, 0x20, 0x73, 0x65, 0x65, 0x20, 0x5b, + 0x55, 0x52, 0x49, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x55, 0x52, 0x49, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, + 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x61, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2d, 0x73, 0x65, 0x70, + 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x6f, 0x66, 0x20, 0x55, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x49, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x2c, 0x20, 0x73, 0x65, 0x65, + 0x20, 0x5b, 0x55, 0x52, 0x49, 0x5d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x55, 0x52, + 0x49, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, + 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, + 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x73, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x22, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x2e, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, + 0x6d, 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x51, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, + 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, + 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, + 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, + 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, + 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, + 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, + 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, + 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, + 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, + 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, + 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x3a, 0x0a, 0x23, 0x32, 0x30, 0x30, 0x30, 0x2d, 0x31, 0x30, + 0x2d, 0x32, 0x32, 0x3a, 0x20, 0x61, 0x64, 0x64, 0x65, 0x64, 0x20, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, 0x75, + 0x62, 0x79, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x51, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x28, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x29, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x69, 0x6e, + 0x20, 0x74, 0x77, 0x6f, 0x20, 0x70, 0x61, 0x72, 0x74, 0x73, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x65, 0x64, 0x20, 0x53, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x27, 0x41, 0x27, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x27, 0x42, 0x27, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x41, 0x20, 0x64, + 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x71, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x2c, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x64, + 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2c, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x70, 0x72, + 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x42, 0x20, 0x64, + 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x70, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2d, + 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x61, 0x70, 0x70, 0x6c, + 0x65, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2d, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x3c, 0x61, 0x70, 0x70, 0x6c, 0x65, 0x74, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x2d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x3c, 0x62, 0x61, + 0x73, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x20, 0x74, 0x6f, + 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6f, 0x6e, 0x65, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x49, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, + 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x74, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x27, 0x74, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x2d, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x27, 0x29, 0x20, 0x73, 0x75, 0x69, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x70, 0x75, 0x72, 0x70, 0x6f, 0x73, 0x65, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x41, 0x3a, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x58, 0x4d, 0x4c, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x31, 0x2e, 0x20, 0x44, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x61, 0x20, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3b, + 0x20, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6b, 0x65, 0x79, + 0x77, 0x6f, 0x72, 0x64, 0x2c, 0x20, 0x75, 0x73, 0x65, 0x64, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, + 0x6e, 0x67, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x73, 0x68, + 0x6f, 0x75, 0x6c, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x20, 0x27, 0x25, 0x4e, + 0x53, 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3b, 0x27, + 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, 0x54, + 0x44, 0x20, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x73, 0x6f, + 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x75, 0x6e, 0x6c, 0x65, 0x73, 0x73, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x76, 0x65, + 0x72, 0x72, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x2c, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x62, 0x65, 0x68, + 0x61, 0x76, 0x69, 0x6f, 0x75, 0x72, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, + 0x77, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x61, + 0x6c, 0x6c, 0x20, 0x44, 0x54, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, + 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x4e, 0x53, 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x64, 0x20, + 0x22, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x64, + 0x20, 0x22, 0x25, 0x4e, 0x53, 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, + 0x65, 0x64, 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x32, 0x2e, 0x20, 0x44, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, + 0x61, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x28, 0x65, 0x67, 0x2e, 0x2c, + 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x3b, 0x29, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, + 0x6e, 0x67, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x55, 0x52, 0x49, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, + 0x65, 0x6e, 0x63, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x3a, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x20, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x33, 0x2e, 0x20, 0x44, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, + 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x28, 0x65, 0x67, 0x2e, + 0x2c, 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x65, + 0x66, 0x69, 0x78, 0x3b, 0x29, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, + 0x6e, 0x69, 0x6e, 0x67, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x70, + 0x72, 0x65, 0x66, 0x69, 0x78, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x28, 0x73, 0x29, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x73, 0x65, 0x20, 0x77, + 0x68, 0x65, 0x6e, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, + 0x67, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x73, + 0x20, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x6f, 0x76, + 0x65, 0x72, 0x72, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, 0x20, 0x64, 0x72, 0x69, 0x76, + 0x65, 0x72, 0x20, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x20, 0x73, 0x75, 0x62, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, + 0x20, 0x61, 0x6e, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x20, 0x49, + 0x66, 0x20, 0x6e, 0x6f, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x69, 0x73, 0x20, 0x64, 0x65, 0x73, 0x69, 0x72, + 0x65, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x61, 0x79, + 0x20, 0x62, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, + 0x20, 0x61, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, + 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x4e, 0x4f, 0x54, 0x45, 0x3a, 0x20, 0x41, 0x73, 0x20, + 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x69, 0x6e, + 0x20, 0x5b, 0x58, 0x4d, 0x4c, 0x4e, 0x41, 0x4d, 0x45, 0x53, 0x5d, 0x2c, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x20, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x73, + 0x20, 0x61, 0x20, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x55, 0x52, 0x49, 0x20, 0x72, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x69, 0x74, + 0x73, 0x65, 0x6c, 0x66, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x6e, 0x74, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x20, 0x20, 0x22, + 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x34, 0x2e, + 0x20, 0x44, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x20, 0x28, 0x65, 0x67, 0x2e, 0x2c, 0x20, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x29, 0x20, 0x63, + 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, + 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, + 0x6c, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x64, 0x20, 0x70, 0x72, 0x65, 0x66, + 0x69, 0x78, 0x28, 0x65, 0x73, 0x29, 0x20, 0x28, 0x65, 0x67, 0x2e, 0x2c, + 0x20, 0x27, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x65, + 0x66, 0x69, 0x78, 0x3b, 0x3a, 0x27, 0x29, 0x20, 0x75, 0x73, 0x65, 0x64, + 0x20, 0x77, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, 0x20, + 0x69, 0x73, 0x20, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x2c, 0x20, 0x61, + 0x6e, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x20, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x69, 0x74, 0x20, 0x69, + 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x65, + 0x66, 0x69, 0x78, 0x65, 0x64, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2e, 0x70, 0x66, 0x78, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x3b, 0x3a, 0x22, 0x20, + 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, + 0x66, 0x78, 0x20, 0x20, 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x71, + 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x20, 0x68, 0x65, 0x72, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x2d, 0x65, 0x78, + 0x74, 0x72, 0x61, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x22, 0x22, 0x20, 0x3e, + 0x0a, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x35, 0x2e, 0x20, 0x54, + 0x68, 0x65, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, + 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x65, 0x78, 0x74, + 0x72, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x20, 0x6d, + 0x61, 0x79, 0x20, 0x62, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, + 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, + 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x20, 0x65, 0x6d, + 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, + 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x20, 0x20, 0x58, 0x4c, + 0x69, 0x6e, 0x6b, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, + 0x65, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, 0x68, + 0x65, 0x72, 0x65, 0x20, 0x69, 0x66, 0x20, 0x75, 0x73, 0x65, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, + 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, + 0x68, 0x65, 0x20, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x64, 0x65, 0x72, + 0x20, 0x6f, 0x66, 0x20, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x41, 0x20, 0x69, 0x73, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x66, 0x6f, + 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x44, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x65, 0x20, 0x61, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, + 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x25, 0x4e, + 0x53, 0x2e, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, + 0x67, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x58, + 0x4d, 0x4c, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x44, 0x54, 0x44, 0x2c, 0x20, 0x70, 0x6c, 0x75, 0x73, 0x20, + 0x74, 0x68, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, + 0x6e, 0x73, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2c, 0x20, 0x69, 0x74, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x64, + 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x6e, 0x20, + 0x77, 0x68, 0x65, 0x74, 0x68, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, 0x20, 0x69, + 0x73, 0x20, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x0a, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x4e, 0x53, + 0x2e, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x6d, 0x6c, 0x6e, 0x73, + 0x3a, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x65, 0x66, + 0x69, 0x78, 0x3b, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x23, 0x46, + 0x49, 0x58, 0x45, 0x44, 0x20, 0x27, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3b, 0x27, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, + 0x6c, 0x6e, 0x73, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x4e, 0x53, 0x2e, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x65, 0x78, + 0x74, 0x72, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x22, + 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, + 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x66, + 0x75, 0x74, 0x75, 0x72, 0x65, 0x20, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x20, + 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x58, 0x4c, 0x49, 0x4e, 0x4b, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x22, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x44, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x20, 0x61, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x25, 0x4e, 0x53, + 0x2e, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, + 0x20, 0x61, 0x6c, 0x6c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x58, 0x4d, + 0x4c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x75, + 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2c, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, + 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, 0x20, 0x69, 0x73, + 0x20, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x0a, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x25, 0x4e, 0x53, 0x2e, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x58, 0x4c, 0x49, 0x4e, 0x4b, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x5d, + 0x5d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x46, 0x49, 0x58, 0x45, 0x44, 0x20, + 0x27, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x3b, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x58, + 0x4c, 0x49, 0x4e, 0x4b, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, + 0x64, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x71, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x72, + 0x65, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x20, + 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x42, 0x3a, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x36, 0x2e, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x73, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, + 0x73, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, + 0x64, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2d, 0x71, 0x75, 0x61, 0x6c, 0x69, + 0x66, 0x69, 0x65, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, 0x70, 0x70, 0x6c, 0x65, 0x74, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x70, 0x70, + 0x6c, 0x65, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, + 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x61, + 0x70, 0x70, 0x6c, 0x65, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x62, 0x61, + 0x73, 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x62, 0x64, 0x6f, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x62, 0x64, 0x6f, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x62, 0x64, 0x6f, 0x22, 0x20, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, + 0x6b, 0x70, 0x68, 0x72, 0x61, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, + 0x74, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, + 0x72, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, + 0x3b, 0x70, 0x72, 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x31, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x68, 0x31, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x68, 0x32, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x70, 0x66, 0x78, 0x3b, 0x68, 0x32, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x33, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x68, + 0x33, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x68, 0x34, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x68, 0x34, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, + 0x35, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, + 0x3b, 0x68, 0x35, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x36, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x68, 0x36, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, + 0x6c, 0x6b, 0x70, 0x72, 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x68, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x68, 0x72, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x64, 0x69, 0x76, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x64, 0x69, 0x76, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, + 0x78, 0x3b, 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x65, 0x64, 0x69, 0x74, 0x2d, 0x31, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x6e, 0x73, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x69, 0x6e, 0x73, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x64, 0x65, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x70, 0x66, 0x78, 0x3b, 0x64, 0x65, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, + 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x6f, 0x72, 0x6d, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x66, 0x6f, + 0x72, 0x6d, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, + 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x74, 0x65, 0x78, 0x74, + 0x61, 0x72, 0x65, 0x61, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, + 0x73, 0x65, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, + 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6c, 0x65, + 0x67, 0x65, 0x6e, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, + 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x75, 0x74, + 0x74, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, + 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x62, + 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, 0x74, + 0x65, 0x78, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, + 0x66, 0x78, 0x3b, 0x61, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x6d, 0x67, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x69, 0x6d, + 0x67, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, 0x68, 0x72, 0x61, 0x73, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x62, 0x62, 0x72, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x61, 0x62, + 0x62, 0x72, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x61, 0x63, 0x72, 0x6f, 0x6e, + 0x79, 0x6d, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x69, 0x74, 0x65, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x63, 0x69, 0x74, 0x65, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x70, 0x66, 0x78, 0x3b, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, + 0x66, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, + 0x3b, 0x64, 0x66, 0x6e, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x65, 0x6d, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x65, 0x6d, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6b, 0x62, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x70, 0x66, 0x78, 0x3b, 0x6b, 0x62, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x71, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, + 0x71, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x73, 0x61, 0x6d, 0x70, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, + 0x66, 0x78, 0x3b, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x76, 0x61, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, + 0x78, 0x3b, 0x76, 0x61, 0x72, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, 0x72, 0x65, + 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, + 0x3b, 0x62, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x69, 0x67, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x62, 0x69, 0x67, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x69, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, + 0x66, 0x78, 0x3b, 0x69, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x73, 0x6d, 0x61, + 0x6c, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x75, 0x62, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x73, 0x75, 0x62, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x73, 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, + 0x66, 0x78, 0x3b, 0x73, 0x75, 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x74, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x74, + 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x72, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x62, + 0x72, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x73, 0x70, 0x61, 0x6e, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, + 0x73, 0x6d, 0x61, 0x70, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x28, + 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x63, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, + 0x2c, 0x20, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x29, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6d, 0x61, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x70, 0x66, 0x78, 0x3b, 0x6d, 0x61, 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x72, + 0x65, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, + 0x61, 0x72, 0x65, 0x61, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x6e, 0x6b, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x6c, 0x69, 0x6e, + 0x6b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x64, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x64, 0x6c, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, + 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, + 0x3b, 0x64, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x64, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x64, 0x64, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x6f, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, + 0x66, 0x78, 0x3b, 0x6f, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x75, 0x6c, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x75, 0x6c, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x6c, 0x69, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x6c, 0x69, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, + 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x65, 0x74, 0x61, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6d, 0x65, + 0x74, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, + 0x6d, 0x65, 0x74, 0x61, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x6f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, + 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6e, 0x6f, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, + 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, + 0x66, 0x78, 0x3b, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x65, + 0x61, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, + 0x68, 0x65, 0x61, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x62, 0x6f, 0x64, 0x79, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x70, 0x66, 0x78, 0x3b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, + 0x78, 0x3b, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x74, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, + 0x78, 0x3b, 0x74, 0x68, 0x65, 0x61, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x66, + 0x6f, 0x6f, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, + 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, + 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x62, 0x6f, 0x64, + 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x74, 0x62, + 0x6f, 0x64, 0x79, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x63, 0x6f, + 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x6f, 0x6c, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x63, + 0x6f, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x74, 0x72, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x74, 0x68, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, + 0x78, 0x3b, 0x74, 0x68, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x64, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x74, 0x64, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x72, 0x75, 0x62, 0x79, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x72, 0x75, 0x62, 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x72, 0x75, 0x62, 0x79, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x72, 0x62, 0x63, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, + 0x78, 0x3b, 0x72, 0x62, 0x63, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x74, 0x63, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x72, 0x74, + 0x63, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x72, 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x72, 0x62, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, + 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, + 0x3b, 0x72, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x70, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x70, 0x66, 0x78, 0x3b, 0x72, 0x70, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x32, 0x2e, 0x30, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x3a, 0x20, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, + 0x6d, 0x61, 0x67, 0x65, 0x2d, 0x32, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x61, 0x6c, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x70, 0x66, 0x78, 0x3b, 0x61, 0x6c, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, + 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x6d, + 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x74, 0x72, 0x69, 0x6e, 0x73, 0x69, 0x63, + 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, + 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, + 0x6e, 0x74, 0x72, 0x69, 0x6e, 0x73, 0x69, 0x63, 0x20, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, + 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, + 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, + 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, + 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, + 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, + 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, + 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, + 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, + 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, + 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, + 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x74, 0x72, 0x69, + 0x6e, 0x73, 0x69, 0x63, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x20, + 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x49, 0x6e, 0x74, 0x72, 0x69, 0x6e, 0x73, 0x69, 0x63, 0x20, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x65, 0x73, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x64, 0x20, 0x69, 0x6e, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x34, 0x2e, + 0x30, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x38, 0x2e, 0x32, 0x2e, 0x33, 0x20, 0x22, + 0x49, 0x6e, 0x74, 0x72, 0x69, 0x6e, 0x73, 0x69, 0x63, 0x20, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x22, 0x2e, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, + 0x62, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x20, 0x70, 0x72, 0x69, + 0x6f, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x62, 0x75, 0x74, 0x20, 0x61, 0x66, 0x74, 0x65, + 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, + 0x6f, 0x72, 0x6b, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x22, 0x4e, 0x6f, 0x74, 0x65, 0x3a, 0x20, + 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x61, 0x64, 0x76, 0x69, 0x73, 0x65, + 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x72, 0x65, 0x20, + 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x79, 0x20, 0x74, 0x6f, 0x20, 0x6f, 0x63, + 0x63, 0x75, 0x72, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, + 0x65, 0x61, 0x6c, 0x6d, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x6e, 0x74, 0x72, + 0x69, 0x6e, 0x73, 0x69, 0x63, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x2c, + 0x20, 0x68, 0x6f, 0x77, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, + 0x20, 0x61, 0x72, 0x65, 0x20, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x74, + 0x6f, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x29, 0x2e, 0x20, 0x52, + 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x20, 0x69, 0x6e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x72, 0x65, 0x61, + 0x6c, 0x6d, 0x20, 0x69, 0x73, 0x20, 0x63, 0x61, 0x72, 0x72, 0x69, 0x65, + 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x62, 0x79, 0x20, 0x6d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, + 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x57, 0x6f, 0x72, 0x6b, 0x69, 0x6e, + 0x67, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x28, 0x73, 0x65, 0x65, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x57, 0x33, 0x43, 0x20, 0x57, 0x65, 0x62, + 0x20, 0x73, 0x69, 0x74, 0x65, 0x20, 0x61, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x29, 0x2e, 0x22, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4e, 0x4f, 0x54, 0x45, 0x3a, 0x20, + 0x42, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x64, 0x65, 0x63, 0x6c, + 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x6e, 0x20, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x6f, 0x63, 0x63, 0x75, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, + 0x65, 0x66, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, + 0x72, 0x65, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x20, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x6f, + 0x74, 0x68, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x73, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, + 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x61, 0x20, 0x64, 0x65, + 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x20, 0x6f, 0x6e, 0x20, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x74, 0x68, 0x61, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x68, + 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x73, + 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x69, 0x66, 0x20, 0x61, 0x6e, + 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x20, 0x28, 0x65, 0x67, 0x2e, 0x2c, 0x20, 0x25, 0x61, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x29, 0x20, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, 0x2e, 0x0a, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x6f, 0x6e, + 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x64, 0x62, 0x6c, 0x63, 0x6c, 0x69, 0x63, + 0x6b, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, + 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x20, 0x20, 0x25, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x75, 0x70, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, + 0x65, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, + 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x20, + 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6f, + 0x75, 0x74, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6b, + 0x65, 0x79, 0x70, 0x72, 0x65, 0x73, 0x73, 0x20, 0x20, 0x20, 0x25, 0x53, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6f, 0x6e, 0x6b, 0x65, 0x79, 0x64, 0x6f, 0x77, 0x6e, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6b, 0x65, 0x79, + 0x75, 0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x20, 0x6f, 0x6e, 0x20, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x20, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x61, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x62, 0x6c, 0x75, 0x72, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x6f, + 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6f, 0x6e, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x74, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x6f, 0x6e, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x62, 0x6c, 0x75, 0x72, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x6f, + 0x6e, 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x62, 0x6c, 0x75, + 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6f, 0x6e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x6f, 0x6e, + 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x73, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x62, 0x6c, + 0x75, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x64, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x65, 0x78, + 0x74, 0x61, 0x72, 0x65, 0x61, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, + 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x62, 0x6c, + 0x75, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x6e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x6f, + 0x6e, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x62, 0x75, 0x74, 0x74, + 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x62, + 0x6c, 0x75, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x20, 0x6f, 0x6e, 0x20, 0x62, 0x6f, 0x64, 0x79, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x62, 0x6f, 0x64, + 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x75, 0x6e, + 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x20, 0x6f, 0x6e, 0x20, 0x61, 0x72, 0x65, 0x61, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x61, 0x72, 0x65, 0x61, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x62, 0x6c, 0x75, + 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x73, + 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x31, + 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x73, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x73, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, + 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, + 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, + 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, + 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, + 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, + 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, + 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x44, 0x54, 0x44, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x4e, 0x53, 0x2e, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x20, 0x69, 0x73, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x51, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x69, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x4e, 0x4d, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x53, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x22, 0x0a, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x22, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x69, 0x64, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6c, 0x61, 0x6e, 0x67, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x64, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x62, 0x69, 0x64, 0x69, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x69, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x64, 0x69, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x28, 0x20, 0x6c, 0x74, 0x72, 0x20, 0x7c, 0x20, 0x72, + 0x74, 0x6c, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x49, 0x31, 0x38, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x64, + 0x69, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x5d, + 0x5d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x49, 0x31, 0x38, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x6c, 0x61, 0x6e, + 0x67, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x22, 0x0a, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x65, 0x78, 0x74, 0x72, + 0x61, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x22, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x74, 0x72, + 0x69, 0x6e, 0x73, 0x69, 0x63, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x64, + 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, 0x20, 0x70, 0x72, 0x65, 0x76, + 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, + 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x25, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, + 0x38, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, + 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, + 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x72, 0x65, 0x64, + 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x2e, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x20, 0x22, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, + 0x64, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, + 0x69, 0x61, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, + 0x54, 0x44, 0x20, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x0a, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, + 0x31, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, + 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x31, 0x31, 0x2d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2d, 0x31, 0x2e, 0x6d, + 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, + 0x2e, 0x31, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, + 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x30, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, + 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, + 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x31, 0x2d, + 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, + 0x76, 0x20, 0x31, 0x2e, 0x31, 0x32, 0x20, 0x32, 0x30, 0x30, 0x30, 0x2f, + 0x31, 0x31, 0x2f, 0x31, 0x38, 0x20, 0x31, 0x38, 0x3a, 0x32, 0x30, 0x3a, + 0x32, 0x35, 0x20, 0x61, 0x68, 0x62, 0x79, 0x20, 0x45, 0x78, 0x70, 0x20, + 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x49, 0x45, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, + 0x2e, 0x31, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x31, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x31, 0x2d, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, + 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, + 0x67, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6d, 0x61, 0x6b, 0x65, + 0x20, 0x75, 0x70, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, + 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x68, 0x61, 0x73, 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, + 0x20, 0x62, 0x61, 0x73, 0x69, 0x63, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x3a, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x20, 0x63, + 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x2d, 0x6c, 0x65, 0x76, + 0x65, 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x20, 0x20, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x2d, 0x6c, 0x69, 0x6b, 0x65, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2c, 0x20, 0x65, 0x67, 0x2e, 0x2c, + 0x20, 0x70, 0x61, 0x72, 0x61, 0x67, 0x72, 0x61, 0x70, 0x68, 0x73, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x46, 0x6c, 0x6f, 0x77, + 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6e, 0x79, + 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x6f, 0x72, 0x20, 0x69, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x41, 0x6e, 0x79, 0x20, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, + 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x74, 0x6f, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2c, 0x20, 0x62, 0x75, + 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x20, + 0x74, 0x68, 0x72, 0x65, 0x65, 0x20, 0x61, 0x72, 0x65, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, + 0x64, 0x20, 0x27, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x27, 0x20, 0x28, + 0x69, 0x6e, 0x73, 0x6f, 0x66, 0x61, 0x72, 0x20, 0x61, 0x73, 0x20, 0x74, + 0x68, 0x61, 0x74, 0x20, 0x74, 0x65, 0x72, 0x6d, 0x20, 0x61, 0x70, 0x70, + 0x6c, 0x69, 0x65, 0x73, 0x20, 0x68, 0x65, 0x72, 0x65, 0x29, 0x2e, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x72, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x20, 0x77, 0x6f, 0x72, 0x64, 0x20, + 0x27, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x27, 0x20, 0x28, 0x69, + 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, + 0x74, 0x65, 0x78, 0x74, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x29, + 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x77, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, 0x65, 0x78, + 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x6c, 0x79, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x69, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, + 0x20, 0x61, 0x73, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x61, 0x73, 0x20, 0x58, 0x4d, + 0x4c, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x20, 0x74, + 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x63, 0x63, 0x75, + 0x72, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x61, + 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x57, 0x68, 0x69, 0x6c, 0x65, 0x20, 0x69, + 0x6e, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x20, 0x63, 0x61, 0x73, 0x65, 0x73, + 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x6d, 0x61, 0x79, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x74, 0x6f, + 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, + 0x6e, 0x20, 0x74, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x64, 0x61, 0x74, 0x65, 0x20, 0x63, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, + 0x64, 0x65, 0x6c, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x20, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x61, 0x63, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x20, 0x62, + 0x79, 0x20, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x69, 0x6e, + 0x67, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x20, 0x2a, 0x2e, 0x65, 0x78, 0x74, + 0x72, 0x61, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x20, 0x61, 0x73, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, + 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, + 0x3b, 0x20, 0x20, 0x20, 0x20, 0x77, 0x68, 0x6f, 0x73, 0x65, 0x20, 0x70, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, + 0x20, 0x61, 0x6e, 0x79, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x6f, + 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x3b, 0x20, 0x20, 0x77, 0x68, 0x6f, + 0x73, 0x65, 0x20, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, + 0x79, 0x20, 0x62, 0x65, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x69, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x3b, + 0x20, 0x20, 0x20, 0x77, 0x68, 0x6f, 0x73, 0x65, 0x20, 0x70, 0x61, 0x72, + 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x61, + 0x6e, 0x79, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x49, 0x66, 0x20, 0x75, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, + 0x73, 0x65, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, + 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x6d, 0x75, + 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x4f, 0x52, 0x2d, + 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x62, 0x65, 0x67, 0x69, + 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, + 0x6e, 0x20, 0x4f, 0x52, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x20, 0x28, 0x22, 0x7c, 0x22, 0x29, 0x2c, 0x20, 0x65, 0x67, + 0x2e, 0x2c, 0x20, 0x22, 0x7c, 0x20, 0x61, 0x20, 0x7c, 0x20, 0x62, 0x20, + 0x7c, 0x20, 0x63, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x2a, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x6e, + 0x6f, 0x74, 0x20, 0x70, 0x61, 0x72, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x2a, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x65, 0x73, 0x20, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x22, 0x7c, 0x20, 0x22, 0x20, 0x74, 0x6f, + 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x20, 0x66, 0x6f, 0x72, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x73, + 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x20, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x69, 0x6e, + 0x20, 0x68, 0x65, 0x61, 0x64, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x48, 0x65, 0x61, 0x64, 0x4f, 0x70, + 0x74, 0x73, 0x2e, 0x6d, 0x69, 0x78, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x28, 0x20, 0x25, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, + 0x25, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, 0x6c, 0x69, + 0x6e, 0x6b, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, + 0x25, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x20, 0x4d, 0x69, + 0x73, 0x63, 0x65, 0x6c, 0x6c, 0x61, 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x20, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x64, + 0x65, 0x6c, 0x20, 0x61, 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, + 0x74, 0x6f, 0x20, 0x64, 0x65, 0x6e, 0x6f, 0x74, 0x65, 0x20, 0x65, 0x64, + 0x69, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x45, 0x64, 0x69, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x20, 0x22, 0x7c, 0x20, 0x25, 0x69, 0x6e, 0x73, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x64, 0x65, + 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x20, 0x61, 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, + 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, + 0x6e, 0x64, 0x20, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, + 0x76, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x20, 0x22, 0x7c, 0x20, 0x25, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, + 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x4d, 0x69, 0x73, 0x63, 0x2e, + 0x65, 0x78, 0x74, 0x72, 0x61, 0x20, 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x68, 0x65, 0x73, 0x65, 0x20, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, + 0x6e, 0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x20, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x20, 0x6e, 0x6f, 0x72, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x63, 0x61, 0x6e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x65, 0x73, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, + 0x6c, 0x79, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x61, + 0x6e, 0x79, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x4d, 0x69, 0x73, + 0x63, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x45, 0x64, 0x69, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, 0x2e, + 0x65, 0x78, 0x74, 0x72, 0x61, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x49, 0x6e, + 0x6c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x20, 0x22, 0x25, 0x62, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x49, 0x6e, 0x6c, 0x50, + 0x68, 0x72, 0x61, 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x7c, 0x20, 0x25, 0x65, 0x6d, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x73, 0x74, 0x72, + 0x6f, 0x6e, 0x67, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, + 0x20, 0x25, 0x64, 0x66, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x7c, 0x20, 0x25, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, + 0x25, 0x73, 0x61, 0x6d, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x7c, 0x20, 0x25, 0x6b, 0x62, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x76, 0x61, 0x72, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x63, 0x69, 0x74, 0x65, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7c, 0x20, 0x25, 0x61, 0x62, 0x62, 0x72, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x61, 0x63, 0x72, 0x6f, + 0x6e, 0x79, 0x6d, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, + 0x20, 0x25, 0x71, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x49, 0x6e, 0x6c, 0x50, 0x72, 0x65, 0x73, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x7c, 0x20, + 0x25, 0x74, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, + 0x20, 0x25, 0x69, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, + 0x20, 0x25, 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, + 0x20, 0x25, 0x62, 0x69, 0x67, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, 0x73, 0x6d, + 0x61, 0x6c, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, + 0x20, 0x25, 0x73, 0x75, 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x7c, 0x20, 0x25, 0x73, 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x49, 0x31, 0x38, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x20, 0x22, 0x7c, 0x20, 0x25, 0x62, 0x64, 0x6f, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x41, + 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, + 0x22, 0x7c, 0x20, 0x25, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x49, 0x6e, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x7c, 0x20, 0x25, 0x69, 0x6d, 0x67, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x6d, 0x61, 0x70, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7c, 0x20, 0x25, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x49, 0x6e, 0x6c, + 0x46, 0x6f, 0x72, 0x6d, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x7c, 0x20, 0x25, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, + 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x62, 0x75, + 0x74, 0x74, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x65, 0x78, + 0x74, 0x72, 0x61, 0x20, 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x52, 0x75, 0x62, + 0x79, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x22, 0x7c, 0x20, 0x25, + 0x72, 0x75, 0x62, 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x20, + 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x6c, 0x6c, + 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, + 0x73, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x6d, 0x69, + 0x78, 0x65, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x49, 0x6e, 0x6c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x50, 0x68, 0x72, 0x61, 0x73, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x50, 0x72, 0x65, 0x73, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x49, 0x31, 0x38, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x41, 0x6e, 0x63, 0x68, 0x6f, + 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x46, 0x6f, 0x72, 0x6d, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x3b, 0x22, + 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x49, 0x6e, + 0x6c, 0x4e, 0x6f, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, + 0x61, 0x6c, 0x6c, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x20, 0x72, 0x75, 0x62, 0x79, + 0x2c, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, + 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, + 0x20, 0x6d, 0x69, 0x78, 0x65, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x49, 0x6e, + 0x6c, 0x4e, 0x6f, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x49, 0x6e, 0x6c, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, + 0x50, 0x68, 0x72, 0x61, 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x50, + 0x72, 0x65, 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, 0x38, 0x6e, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, + 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, + 0x6e, 0x6c, 0x46, 0x6f, 0x72, 0x6d, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x3b, 0x22, 0x0a, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x4e, 0x6f, 0x52, + 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, + 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x6c, + 0x6c, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x65, 0x78, + 0x63, 0x65, 0x70, 0x74, 0x20, 0x72, 0x75, 0x62, 0x79, 0x0a, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x4e, 0x6f, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, + 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x4e, 0x6f, 0x52, 0x75, + 0x62, 0x79, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x4e, 0x6f, 0x41, + 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, + 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x6c, + 0x6c, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, + 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, 0x61, + 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x69, + 0x6e, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x49, + 0x6e, 0x6c, 0x4e, 0x6f, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x49, 0x6e, 0x6c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x49, 0x6e, 0x6c, 0x50, 0x68, 0x72, 0x61, 0x73, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, + 0x6e, 0x6c, 0x50, 0x72, 0x65, 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, 0x38, + 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x46, 0x6f, 0x72, 0x6d, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x3b, 0x22, + 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x49, 0x6e, + 0x6c, 0x4e, 0x6f, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x2e, 0x6d, 0x69, + 0x78, 0x3b, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, + 0x61, 0x6c, 0x6c, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x61, 0x6e, 0x63, 0x68, + 0x6f, 0x72, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x0a, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x49, 0x6e, 0x6c, 0x4e, 0x6f, 0x41, 0x6e, 0x63, 0x68, 0x6f, + 0x72, 0x2e, 0x6d, 0x69, 0x78, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x25, 0x49, 0x6e, 0x6c, 0x4e, 0x6f, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, + 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x6c, + 0x6c, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2c, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, + 0x64, 0x69, 0x6e, 0x67, 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x49, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x4d, 0x69, 0x73, 0x63, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x22, + 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x20, 0x42, 0x6c, 0x6f, 0x63, + 0x6b, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x49, 0x6e, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x34, 0x2e, 0x30, + 0x20, 0x44, 0x54, 0x44, 0x2c, 0x20, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x77, 0x65, 0x72, 0x65, + 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x25, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x3b, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x20, + 0x54, 0x68, 0x65, 0x20, 0x25, 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x20, 0x61, 0x6e, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, + 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x6e, 0x6f, 0x77, 0x20, 0x62, 0x65, + 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, 0x65, 0x78, + 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x6c, 0x79, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6f, 0x6e, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x64, 0x65, 0x73, 0x69, + 0x72, 0x65, 0x64, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x48, 0x65, 0x61, + 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x68, 0x31, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x68, 0x32, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x68, 0x33, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7c, 0x20, 0x25, 0x68, 0x34, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x7c, 0x20, 0x25, 0x68, 0x35, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x68, 0x36, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x20, 0x22, 0x25, 0x75, 0x6c, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x6f, 0x6c, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x64, 0x6c, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x22, 0x7c, + 0x20, 0x25, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x20, 0x20, 0x22, 0x7c, 0x20, 0x25, 0x66, 0x6f, + 0x72, 0x6d, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, 0x20, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x20, 0x20, 0x22, 0x7c, 0x20, 0x25, 0x66, 0x69, 0x65, + 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x42, 0x6c, 0x6b, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x22, 0x25, 0x70, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x64, 0x69, + 0x76, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x42, 0x6c, 0x6b, 0x50, 0x68, 0x72, 0x61, 0x73, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x7c, 0x20, 0x25, + 0x70, 0x72, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, + 0x20, 0x25, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x42, 0x6c, 0x6b, 0x50, 0x72, 0x65, 0x73, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x22, 0x7c, 0x20, 0x25, 0x68, + 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x42, 0x6c, 0x6b, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x46, 0x6f, 0x72, 0x6d, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x20, 0x22, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x20, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x6c, 0x6c, 0x20, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, + 0x64, 0x20, 0x61, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x63, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x6d, 0x69, 0x78, + 0x65, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x25, 0x42, 0x6c, 0x6b, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x42, 0x6c, 0x6b, 0x50, 0x68, 0x72, 0x61, 0x73, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x42, 0x6c, 0x6b, 0x50, 0x72, 0x65, 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x42, 0x6c, + 0x6b, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x3b, 0x22, + 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x69, 0x6e, 0x63, + 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x20, 0x70, 0x6c, 0x75, 0x73, 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x2e, 0x6d, 0x69, 0x78, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7c, 0x20, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x25, 0x46, 0x6c, 0x6f, 0x77, 0x2e, 0x6d, 0x69, 0x78, 0x3b, + 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x6c, + 0x6c, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x2c, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x46, 0x6c, 0x6f, 0x77, 0x2e, 0x6d, 0x69, 0x78, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x25, 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7c, 0x20, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, + 0x25, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, 0x49, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x31, 0x2d, 0x6d, 0x6f, 0x64, 0x65, + 0x6c, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x68, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, + 0x68, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x68, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, + 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, + 0x45, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x43, 0x68, 0x61, + 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x45, 0x6e, 0x74, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x68, 0x61, 0x72, + 0x65, 0x6e, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x43, 0x68, 0x61, 0x72, + 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x63, 0x68, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, + 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, + 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, + 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x68, 0x61, 0x72, 0x65, + 0x6e, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, + 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, + 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, + 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, + 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, + 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x49, 0x45, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x43, 0x68, + 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x45, 0x6e, 0x74, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, + 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x68, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, + 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x68, 0x61, 0x72, + 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x65, 0x74, 0x20, + 0x6f, 0x66, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, + 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x4c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x31, 0x2c, + 0x20, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x63, 0x68, 0x61, 0x72, + 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x61, 0x74, 0x31, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, + 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, + 0x45, 0x53, 0x20, 0x4c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x31, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x61, 0x74, 0x31, + 0x2e, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x50, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x43, + 0x29, 0x20, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x20, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x53, 0x74, 0x61, + 0x6e, 0x64, 0x61, 0x72, 0x64, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x31, 0x39, 0x38, 0x36, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, + 0x20, 0x63, 0x6f, 0x70, 0x79, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x6e, 0x79, + 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x69, 0x73, 0x20, 0x67, 0x72, 0x61, + 0x6e, 0x74, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x75, 0x73, 0x65, + 0x20, 0x77, 0x69, 0x74, 0x68, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x20, 0x53, 0x47, + 0x4d, 0x4c, 0x20, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x20, 0x61, + 0x6e, 0x64, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x64, 0x20, 0x69, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, + 0x53, 0x4f, 0x20, 0x38, 0x38, 0x37, 0x39, 0x2c, 0x20, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, + 0x6f, 0x74, 0x69, 0x63, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x63, + 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x6c, 0x6c, + 0x20, 0x63, 0x6f, 0x70, 0x69, 0x65, 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, + 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x73, + 0x65, 0x74, 0x2e, 0x20, 0x54, 0x79, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x20, + 0x69, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x6c, 0x61, 0x74, 0x31, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x4c, 0x61, 0x74, 0x69, + 0x6e, 0x20, 0x31, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x61, 0x74, 0x31, 0x2e, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x25, 0x48, 0x54, 0x4d, + 0x4c, 0x6c, 0x61, 0x74, 0x31, 0x3b, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6e, 0x62, 0x73, + 0x70, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x36, 0x30, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6e, 0x6f, 0x2d, 0x62, 0x72, + 0x65, 0x61, 0x6b, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x3d, 0x20, + 0x6e, 0x6f, 0x6e, 0x2d, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x69, 0x6e, 0x67, + 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x41, 0x30, + 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x69, 0x65, 0x78, + 0x63, 0x6c, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x36, 0x31, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x76, 0x65, 0x72, + 0x74, 0x65, 0x64, 0x20, 0x65, 0x78, 0x63, 0x6c, 0x61, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x2c, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x41, 0x31, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x63, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, + 0x36, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, + 0x65, 0x6e, 0x74, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x41, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x70, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, + 0x36, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, + 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x41, 0x33, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x20, 0x22, 0x26, 0x23, + 0x31, 0x36, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x20, 0x73, 0x69, 0x67, + 0x6e, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x41, 0x34, 0x20, 0x49, 0x53, + 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x79, 0x65, 0x6e, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x31, 0x36, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x79, 0x65, 0x6e, 0x20, 0x73, 0x69, 0x67, 0x6e, + 0x20, 0x3d, 0x20, 0x79, 0x75, 0x61, 0x6e, 0x20, 0x73, 0x69, 0x67, 0x6e, + 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x41, 0x35, 0x20, 0x49, 0x53, 0x4f, + 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x62, 0x72, 0x76, 0x62, 0x61, 0x72, 0x20, + 0x22, 0x26, 0x23, 0x31, 0x36, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x6e, 0x20, 0x62, 0x61, + 0x72, 0x20, 0x3d, 0x20, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x6e, 0x20, 0x76, + 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x62, 0x61, 0x72, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x41, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x73, 0x65, 0x63, 0x74, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x31, 0x36, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x69, 0x67, 0x6e, + 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x41, 0x37, 0x20, 0x49, 0x53, 0x4f, + 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x75, 0x6d, 0x6c, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x31, 0x36, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x64, 0x69, 0x61, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, + 0x20, 0x3d, 0x20, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x64, + 0x69, 0x61, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, + 0x41, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x64, 0x69, 0x61, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x63, + 0x6f, 0x70, 0x79, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x36, 0x39, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x70, + 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, + 0x20, 0x55, 0x2b, 0x30, 0x30, 0x41, 0x39, 0x20, 0x49, 0x53, 0x4f, 0x6e, + 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x6f, 0x72, 0x64, 0x66, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x31, 0x37, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x66, 0x65, 0x6d, 0x69, 0x6e, 0x69, 0x6e, 0x65, 0x20, 0x6f, + 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, + 0x61, 0x74, 0x6f, 0x72, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x41, 0x41, + 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x61, 0x71, + 0x75, 0x6f, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x37, 0x31, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x2d, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x6f, 0x75, + 0x62, 0x6c, 0x65, 0x20, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x71, 0x75, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, + 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x69, + 0x6e, 0x67, 0x20, 0x67, 0x75, 0x69, 0x6c, 0x6c, 0x65, 0x6d, 0x65, 0x74, + 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x41, 0x42, 0x20, 0x49, 0x53, 0x4f, + 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x31, 0x37, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x20, + 0x3d, 0x20, 0x64, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x72, 0x79, 0x20, 0x68, 0x79, 0x70, 0x68, 0x65, 0x6e, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x41, 0x43, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x73, 0x68, 0x79, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, + 0x37, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, + 0x6f, 0x66, 0x74, 0x20, 0x68, 0x79, 0x70, 0x68, 0x65, 0x6e, 0x20, 0x3d, + 0x20, 0x64, 0x69, 0x73, 0x63, 0x72, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x72, 0x79, 0x20, 0x68, 0x79, 0x70, 0x68, 0x65, 0x6e, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, + 0x30, 0x41, 0x44, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x72, 0x65, 0x67, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x37, + 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x65, + 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x20, 0x73, 0x69, 0x67, + 0x6e, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, + 0x65, 0x64, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x20, 0x6d, 0x61, 0x72, + 0x6b, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x41, 0x45, + 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6d, 0x61, 0x63, + 0x72, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x37, 0x35, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x61, 0x63, 0x72, 0x6f, + 0x6e, 0x20, 0x3d, 0x20, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x20, + 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x6f, 0x76, 0x65, + 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x41, 0x50, 0x4c, 0x20, 0x6f, 0x76, + 0x65, 0x72, 0x62, 0x61, 0x72, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x41, + 0x46, 0x20, 0x49, 0x53, 0x4f, 0x64, 0x69, 0x61, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x64, 0x65, + 0x67, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x37, 0x36, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x65, 0x67, 0x72, + 0x65, 0x65, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x55, 0x2b, 0x30, + 0x30, 0x42, 0x30, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x70, 0x6c, 0x75, 0x73, 0x6d, 0x6e, 0x20, 0x22, 0x26, 0x23, 0x31, 0x37, + 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x6c, + 0x75, 0x73, 0x2d, 0x6d, 0x69, 0x6e, 0x75, 0x73, 0x20, 0x73, 0x69, 0x67, + 0x6e, 0x20, 0x3d, 0x20, 0x70, 0x6c, 0x75, 0x73, 0x2d, 0x6f, 0x72, 0x2d, + 0x6d, 0x69, 0x6e, 0x75, 0x73, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x42, 0x31, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x73, 0x75, 0x70, 0x32, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, + 0x37, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, + 0x75, 0x70, 0x65, 0x72, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x74, + 0x77, 0x6f, 0x20, 0x3d, 0x20, 0x73, 0x75, 0x70, 0x65, 0x72, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x20, 0x64, 0x69, 0x67, 0x69, 0x74, 0x20, 0x74, + 0x77, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3d, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x2c, 0x20, + 0x55, 0x2b, 0x30, 0x30, 0x42, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, + 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x73, 0x75, 0x70, 0x33, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x31, 0x37, 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x73, 0x75, 0x70, 0x65, 0x72, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x20, 0x3d, 0x20, 0x73, 0x75, 0x70, + 0x65, 0x72, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x64, 0x69, 0x67, + 0x69, 0x74, 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x63, 0x75, 0x62, + 0x65, 0x64, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x42, 0x33, 0x20, 0x49, + 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x38, 0x30, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, 0x20, 0x61, + 0x63, 0x63, 0x65, 0x6e, 0x74, 0x20, 0x3d, 0x20, 0x73, 0x70, 0x61, 0x63, + 0x69, 0x6e, 0x67, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, + 0x30, 0x42, 0x34, 0x20, 0x49, 0x53, 0x4f, 0x64, 0x69, 0x61, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x38, + 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x69, + 0x63, 0x72, 0x6f, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x42, 0x35, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x70, 0x61, 0x72, 0x61, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, + 0x38, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, + 0x69, 0x6c, 0x63, 0x72, 0x6f, 0x77, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x20, + 0x3d, 0x20, 0x70, 0x61, 0x72, 0x61, 0x67, 0x72, 0x61, 0x70, 0x68, 0x20, + 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x42, 0x36, 0x20, 0x49, + 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6d, 0x69, 0x64, 0x64, 0x6f, + 0x74, 0x20, 0x22, 0x26, 0x23, 0x31, 0x38, 0x33, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x20, + 0x64, 0x6f, 0x74, 0x20, 0x3d, 0x20, 0x47, 0x65, 0x6f, 0x72, 0x67, 0x69, + 0x61, 0x6e, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x47, 0x72, 0x65, + 0x65, 0x6b, 0x20, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x20, 0x64, 0x6f, + 0x74, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x42, 0x37, 0x20, 0x49, 0x53, + 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x63, 0x65, 0x64, 0x69, 0x6c, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x31, 0x38, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x65, 0x64, 0x69, 0x6c, 0x6c, 0x61, 0x20, + 0x3d, 0x20, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x63, 0x65, + 0x64, 0x69, 0x6c, 0x6c, 0x61, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x42, + 0x38, 0x20, 0x49, 0x53, 0x4f, 0x64, 0x69, 0x61, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, 0x75, + 0x70, 0x31, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x38, 0x35, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x75, 0x70, 0x65, + 0x72, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x6f, 0x6e, 0x65, 0x20, + 0x3d, 0x20, 0x73, 0x75, 0x70, 0x65, 0x72, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x20, 0x64, 0x69, 0x67, 0x69, 0x74, 0x20, 0x6f, 0x6e, 0x65, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x42, 0x39, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x6f, 0x72, 0x64, 0x6d, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x31, 0x38, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x61, 0x73, 0x63, 0x75, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x6f, 0x72, + 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, + 0x74, 0x6f, 0x72, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x42, 0x41, 0x20, 0x49, 0x53, + 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x61, 0x71, 0x75, 0x6f, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x31, 0x38, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, + 0x65, 0x20, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x71, 0x75, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x69, 0x6e, + 0x67, 0x20, 0x67, 0x75, 0x69, 0x6c, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x2c, + 0x20, 0x55, 0x2b, 0x30, 0x30, 0x42, 0x42, 0x20, 0x49, 0x53, 0x4f, 0x6e, + 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x66, 0x72, 0x61, 0x63, 0x31, 0x34, 0x20, 0x22, + 0x26, 0x23, 0x31, 0x38, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x76, 0x75, 0x6c, 0x67, 0x61, 0x72, 0x20, 0x66, 0x72, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x71, 0x75, + 0x61, 0x72, 0x74, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x66, 0x72, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x71, 0x75, 0x61, 0x72, 0x74, + 0x65, 0x72, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x42, 0x43, 0x20, 0x49, + 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x66, 0x72, 0x61, 0x63, 0x31, + 0x32, 0x20, 0x22, 0x26, 0x23, 0x31, 0x38, 0x39, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x76, 0x75, 0x6c, 0x67, 0x61, 0x72, 0x20, + 0x66, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x65, + 0x20, 0x68, 0x61, 0x6c, 0x66, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x66, 0x72, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x68, 0x61, 0x6c, 0x66, 0x2c, + 0x20, 0x55, 0x2b, 0x30, 0x30, 0x42, 0x44, 0x20, 0x49, 0x53, 0x4f, 0x6e, + 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x66, 0x72, 0x61, 0x63, 0x33, 0x34, 0x20, 0x22, + 0x26, 0x23, 0x31, 0x39, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x76, 0x75, 0x6c, 0x67, 0x61, 0x72, 0x20, 0x66, 0x72, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x20, + 0x71, 0x75, 0x61, 0x72, 0x74, 0x65, 0x72, 0x73, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x66, 0x72, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x20, + 0x71, 0x75, 0x61, 0x72, 0x74, 0x65, 0x72, 0x73, 0x2c, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x42, 0x45, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x69, 0x71, 0x75, 0x65, 0x73, 0x74, 0x20, 0x22, 0x26, 0x23, 0x31, + 0x39, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x69, + 0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x64, 0x20, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x74, 0x75, + 0x72, 0x6e, 0x65, 0x64, 0x20, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, + 0x42, 0x46, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x41, + 0x67, 0x72, 0x61, 0x76, 0x65, 0x20, 0x22, 0x26, 0x23, 0x31, 0x39, 0x32, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x41, 0x20, 0x77, 0x69, 0x74, 0x68, + 0x20, 0x67, 0x72, 0x61, 0x76, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, + 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x41, 0x20, 0x67, 0x72, 0x61, 0x76, 0x65, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x43, 0x30, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, + 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x41, 0x61, 0x63, 0x75, 0x74, 0x65, 0x20, 0x22, 0x26, + 0x23, 0x31, 0x39, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, + 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x41, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x43, 0x31, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x41, 0x63, 0x69, 0x72, 0x63, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x31, 0x39, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, + 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x41, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, + 0x65, 0x78, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, 0x32, 0x20, 0x49, 0x53, 0x4f, + 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x41, 0x74, 0x69, 0x6c, 0x64, 0x65, + 0x20, 0x22, 0x26, 0x23, 0x31, 0x39, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, + 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x41, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x69, 0x6c, 0x64, + 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, 0x33, 0x20, 0x49, 0x53, 0x4f, 0x6c, + 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x41, 0x75, 0x6d, 0x6c, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x31, 0x39, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, + 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, + 0x41, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x64, 0x69, 0x61, 0x65, 0x72, + 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, 0x34, 0x20, 0x49, + 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x41, 0x72, 0x69, 0x6e, + 0x67, 0x20, 0x20, 0x22, 0x26, 0x23, 0x31, 0x39, 0x37, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, + 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x20, 0x41, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x72, 0x69, + 0x6e, 0x67, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x41, 0x20, 0x72, 0x69, 0x6e, 0x67, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x30, 0x30, 0x43, 0x35, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, + 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x41, 0x45, 0x6c, 0x69, 0x67, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x31, 0x39, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, + 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x41, + 0x45, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, + 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x20, 0x41, 0x45, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, 0x36, 0x20, 0x49, 0x53, + 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x43, 0x63, 0x65, 0x64, 0x69, + 0x6c, 0x20, 0x22, 0x26, 0x23, 0x31, 0x39, 0x39, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, + 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x43, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x63, 0x65, 0x64, + 0x69, 0x6c, 0x6c, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, 0x37, 0x20, 0x49, + 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x45, 0x67, 0x72, 0x61, + 0x76, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x30, 0x30, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, + 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x20, 0x45, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x67, 0x72, + 0x61, 0x76, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, 0x38, 0x20, 0x49, 0x53, + 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x45, 0x61, 0x63, 0x75, 0x74, + 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x30, 0x31, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, + 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x45, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x63, 0x75, + 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, 0x39, 0x20, 0x49, 0x53, 0x4f, + 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x45, 0x63, 0x69, 0x72, 0x63, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x32, 0x30, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, + 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x45, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x63, 0x69, 0x72, 0x63, + 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, 0x41, + 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x45, 0x75, + 0x6d, 0x6c, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x30, 0x33, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, + 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x45, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, + 0x64, 0x69, 0x61, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, + 0x30, 0x43, 0x42, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x49, 0x67, 0x72, 0x61, 0x76, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, + 0x30, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, + 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, + 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x49, 0x20, 0x77, 0x69, + 0x74, 0x68, 0x20, 0x67, 0x72, 0x61, 0x76, 0x65, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, + 0x43, 0x43, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x49, 0x61, 0x63, 0x75, 0x74, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x30, + 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, + 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, + 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x49, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, + 0x44, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x49, + 0x63, 0x69, 0x72, 0x63, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x30, 0x36, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x49, 0x20, 0x77, 0x69, 0x74, 0x68, + 0x20, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x43, 0x45, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, + 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x49, 0x75, 0x6d, 0x6c, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x32, 0x30, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, + 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x49, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x64, 0x69, 0x61, 0x65, 0x72, 0x65, 0x73, + 0x69, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x43, 0x46, 0x20, 0x49, 0x53, 0x4f, + 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x45, 0x54, 0x48, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x32, 0x30, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, + 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x45, 0x54, 0x48, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x44, 0x30, + 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4e, 0x74, + 0x69, 0x6c, 0x64, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x30, 0x39, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, + 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x4e, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, + 0x74, 0x69, 0x6c, 0x64, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x44, 0x31, 0x20, + 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4f, 0x67, 0x72, + 0x61, 0x76, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x31, 0x30, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, + 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x4f, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x67, + 0x72, 0x61, 0x76, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x44, 0x32, 0x20, 0x49, + 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4f, 0x61, 0x63, 0x75, + 0x74, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x31, 0x31, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, + 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x20, 0x4f, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x63, + 0x75, 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x44, 0x33, 0x20, 0x49, 0x53, + 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4f, 0x63, 0x69, 0x72, 0x63, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x31, 0x32, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, + 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x4f, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x63, 0x69, 0x72, + 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x2c, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x44, + 0x34, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4f, + 0x74, 0x69, 0x6c, 0x64, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x31, 0x33, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x4f, 0x20, 0x77, 0x69, 0x74, 0x68, + 0x20, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x44, 0x35, + 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4f, 0x75, + 0x6d, 0x6c, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x31, 0x34, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, + 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x4f, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, + 0x64, 0x69, 0x61, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, + 0x30, 0x44, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, + 0x31, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, + 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, + 0x44, 0x37, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4f, + 0x73, 0x6c, 0x61, 0x73, 0x68, 0x20, 0x22, 0x26, 0x23, 0x32, 0x31, 0x36, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x4f, 0x20, 0x77, 0x69, 0x74, 0x68, + 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x61, 0x74, 0x69, + 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x4f, 0x20, 0x73, 0x6c, 0x61, 0x73, 0x68, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x30, 0x30, 0x44, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, + 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x55, 0x67, 0x72, 0x61, 0x76, 0x65, 0x20, 0x22, + 0x26, 0x23, 0x32, 0x31, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, + 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x55, + 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x67, 0x72, 0x61, 0x76, 0x65, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x44, 0x39, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, + 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x55, 0x61, 0x63, 0x75, 0x74, 0x65, 0x20, 0x22, 0x26, + 0x23, 0x32, 0x31, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, + 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x55, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x44, 0x41, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x55, 0x63, 0x69, 0x72, 0x63, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x32, 0x31, 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, + 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x55, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, + 0x65, 0x78, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x44, 0x42, 0x20, 0x49, 0x53, 0x4f, + 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x55, 0x75, 0x6d, 0x6c, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x32, 0x32, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, + 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x55, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x64, 0x69, 0x61, 0x65, + 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x44, 0x43, 0x20, + 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x59, 0x61, 0x63, + 0x75, 0x74, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x32, 0x31, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, + 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x59, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, + 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x44, 0x44, 0x20, 0x49, + 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x54, 0x48, 0x4f, 0x52, + 0x4e, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x32, 0x32, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, + 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x20, 0x54, 0x48, 0x4f, 0x52, 0x4e, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, + 0x44, 0x45, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x73, 0x7a, 0x6c, 0x69, 0x67, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x32, + 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, + 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x73, 0x68, 0x61, 0x72, 0x70, 0x20, 0x73, + 0x20, 0x3d, 0x20, 0x65, 0x73, 0x73, 0x2d, 0x7a, 0x65, 0x64, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x44, 0x46, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x61, 0x67, 0x72, 0x61, 0x76, 0x65, 0x20, 0x22, 0x26, 0x23, + 0x32, 0x32, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, + 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x61, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x67, 0x72, 0x61, 0x76, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x61, 0x74, 0x69, + 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x20, 0x61, 0x20, 0x67, 0x72, 0x61, 0x76, 0x65, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x45, 0x30, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x61, 0x61, 0x63, 0x75, 0x74, 0x65, 0x20, 0x22, 0x26, 0x23, + 0x32, 0x32, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, + 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x61, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x45, + 0x31, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x61, + 0x63, 0x69, 0x72, 0x63, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x32, 0x36, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x61, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x63, + 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, + 0x30, 0x45, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x61, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, + 0x32, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, + 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x61, 0x20, 0x77, 0x69, 0x74, 0x68, + 0x20, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x45, 0x33, + 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x61, 0x75, + 0x6d, 0x6c, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x32, 0x38, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, + 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x20, 0x61, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x64, 0x69, + 0x61, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x45, + 0x34, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x61, + 0x72, 0x69, 0x6e, 0x67, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x32, 0x39, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x61, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x72, + 0x69, 0x6e, 0x67, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6c, 0x61, + 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x61, 0x20, 0x72, 0x69, 0x6e, 0x67, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x45, 0x35, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, + 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x61, 0x65, 0x6c, 0x69, 0x67, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x32, 0x33, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, + 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x61, 0x65, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x6c, + 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, + 0x69, 0x67, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x61, 0x65, 0x2c, 0x20, + 0x55, 0x2b, 0x30, 0x30, 0x45, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, + 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x63, 0x63, 0x65, 0x64, 0x69, 0x6c, 0x20, 0x22, + 0x26, 0x23, 0x32, 0x33, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, + 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x63, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x63, 0x65, 0x64, 0x69, 0x6c, 0x6c, 0x61, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x45, 0x37, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, + 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x65, 0x67, 0x72, 0x61, 0x76, 0x65, 0x20, 0x22, 0x26, + 0x23, 0x32, 0x33, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, + 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x65, 0x20, 0x77, 0x69, + 0x74, 0x68, 0x20, 0x67, 0x72, 0x61, 0x76, 0x65, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, + 0x45, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x65, 0x61, 0x63, 0x75, 0x74, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x33, + 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, + 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, + 0x61, 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x45, 0x39, 0x20, + 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x65, 0x63, 0x69, + 0x72, 0x63, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x33, 0x34, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, + 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x63, 0x69, 0x72, + 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x2c, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x45, + 0x41, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x65, + 0x75, 0x6d, 0x6c, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x33, 0x35, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x64, + 0x69, 0x61, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, + 0x45, 0x42, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x69, 0x67, 0x72, 0x61, 0x76, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x33, + 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, + 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x69, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, + 0x67, 0x72, 0x61, 0x76, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x45, 0x43, 0x20, + 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x69, 0x61, 0x63, + 0x75, 0x74, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x33, 0x37, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, + 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x69, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x63, 0x75, + 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x45, 0x44, 0x20, 0x49, 0x53, 0x4f, + 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x69, 0x63, 0x69, 0x72, 0x63, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x32, 0x33, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, + 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x69, + 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, + 0x66, 0x6c, 0x65, 0x78, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x45, 0x45, 0x20, 0x49, + 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x69, 0x75, 0x6d, 0x6c, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x33, 0x39, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, + 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x69, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x64, 0x69, 0x61, 0x65, + 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x45, 0x46, 0x20, + 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x65, 0x74, 0x68, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x34, 0x30, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, + 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x65, 0x74, 0x68, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x46, + 0x30, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6e, + 0x74, 0x69, 0x6c, 0x64, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x34, 0x31, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x6e, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, + 0x69, 0x6c, 0x64, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x46, 0x31, 0x20, 0x49, + 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6f, 0x67, 0x72, 0x61, + 0x76, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x34, 0x32, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, + 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x6f, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x67, 0x72, 0x61, 0x76, + 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x30, 0x30, 0x46, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x6c, + 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x6f, 0x61, 0x63, 0x75, 0x74, 0x65, 0x20, + 0x22, 0x26, 0x23, 0x32, 0x34, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, + 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6f, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x46, 0x33, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x6f, 0x63, 0x69, 0x72, 0x63, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x32, 0x34, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, + 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6f, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x30, 0x30, 0x46, 0x34, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, + 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x6f, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x20, 0x22, + 0x26, 0x23, 0x32, 0x34, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, + 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6f, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, + 0x30, 0x46, 0x35, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x6f, 0x75, 0x6d, 0x6c, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, + 0x34, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, + 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6f, 0x20, 0x77, 0x69, 0x74, 0x68, + 0x20, 0x64, 0x69, 0x61, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x46, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x20, 0x22, 0x26, 0x23, + 0x32, 0x34, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x69, 0x67, + 0x6e, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x46, 0x37, 0x20, 0x49, 0x53, + 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6f, 0x73, 0x6c, 0x61, 0x73, 0x68, + 0x20, 0x22, 0x26, 0x23, 0x32, 0x34, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, + 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6f, + 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6b, 0x65, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, + 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6f, 0x20, 0x73, + 0x6c, 0x61, 0x73, 0x68, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x46, 0x38, 0x20, 0x49, + 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x75, 0x67, 0x72, 0x61, + 0x76, 0x65, 0x20, 0x22, 0x26, 0x23, 0x32, 0x34, 0x39, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, + 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x75, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x67, 0x72, 0x61, 0x76, + 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x30, 0x30, 0x46, 0x39, 0x20, 0x49, 0x53, 0x4f, 0x6c, + 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x75, 0x61, 0x63, 0x75, 0x74, 0x65, 0x20, + 0x22, 0x26, 0x23, 0x32, 0x35, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, + 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x75, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x46, 0x41, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x75, 0x63, 0x69, 0x72, 0x63, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x32, 0x35, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, + 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x75, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x30, 0x30, 0x46, 0x42, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, + 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x75, 0x75, 0x6d, 0x6c, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x32, 0x35, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, + 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x75, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x64, 0x69, 0x61, 0x65, 0x72, 0x65, 0x73, 0x69, + 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x30, 0x30, 0x46, 0x43, 0x20, 0x49, 0x53, 0x4f, 0x6c, + 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x79, 0x61, 0x63, 0x75, 0x74, 0x65, 0x20, + 0x22, 0x26, 0x23, 0x32, 0x35, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, + 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x79, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x63, 0x75, 0x74, 0x65, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x30, 0x46, 0x44, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x74, 0x68, 0x6f, 0x72, 0x6e, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x32, 0x35, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, + 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x6f, 0x72, 0x6e, + 0x20, 0x77, 0x69, 0x74, 0x68, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x46, 0x45, 0x20, + 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x79, 0x75, 0x6d, + 0x6c, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x32, 0x35, 0x35, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, + 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x79, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x64, 0x69, 0x61, + 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x46, 0x46, + 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x31, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x79, 0x6d, 0x62, + 0x6f, 0x6c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x79, 0x6d, 0x62, + 0x6f, 0x6c, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x2e, 0x65, 0x6e, 0x74, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4d, 0x61, 0x74, 0x68, + 0x65, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x2c, 0x20, 0x47, 0x72, + 0x65, 0x65, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x79, 0x6d, 0x62, + 0x6f, 0x6c, 0x69, 0x63, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, + 0x65, 0x72, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, + 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x20, 0x73, 0x65, 0x74, 0x2e, 0x20, 0x54, 0x79, 0x70, + 0x69, 0x63, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x48, 0x54, 0x4d, + 0x4c, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x49, 0x45, 0x53, 0x20, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x31, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x2e, 0x65, 0x6e, + 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x48, 0x54, + 0x4d, 0x4c, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x3b, 0x0a, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x6f, 0x72, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x28, 0x43, 0x29, 0x20, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x4f, + 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x39, 0x38, 0x36, + 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x70, + 0x79, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x66, 0x6f, 0x72, + 0x6d, 0x20, 0x69, 0x73, 0x20, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x75, 0x73, 0x65, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x6f, + 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x20, 0x53, 0x47, 0x4d, 0x4c, 0x20, 0x73, + 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, + 0x61, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x69, + 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x38, + 0x38, 0x37, 0x39, 0x2c, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x64, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x69, 0x63, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, + 0x64, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x63, 0x6f, 0x70, + 0x69, 0x65, 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x52, 0x65, 0x6c, 0x65, 0x76, 0x61, 0x6e, 0x74, 0x20, + 0x49, 0x53, 0x4f, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x73, + 0x65, 0x74, 0x20, 0x69, 0x73, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, + 0x75, 0x6e, 0x6c, 0x65, 0x73, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x65, 0x77, 0x6c, 0x79, 0x20, 0x69, + 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x64, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x4e, 0x65, 0x77, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x20, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x2c, 0x20, 0x6e, 0x6f, 0x74, + 0x20, 0x69, 0x6e, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x38, 0x38, 0x37, 0x39, + 0x20, 0x6c, 0x69, 0x73, 0x74, 0x29, 0x20, 0x64, 0x6f, 0x20, 0x6e, 0x6f, + 0x74, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x68, 0x20, 0x77, 0x69, 0x74, 0x68, + 0x20, 0x61, 0x6e, 0x79, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x78, + 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x38, + 0x38, 0x37, 0x39, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x31, 0x30, + 0x36, 0x34, 0x36, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, + 0x72, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x72, 0x65, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, 0x63, 0x68, + 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x2c, 0x20, 0x69, 0x6e, 0x20, + 0x68, 0x65, 0x78, 0x2e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, + 0x61, 0x72, 0x65, 0x20, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x49, 0x53, 0x4f, 0x20, 0x31, 0x30, 0x36, 0x34, 0x36, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x66, + 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x73, 0x65, + 0x74, 0x2e, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, + 0x20, 0x55, 0x6e, 0x69, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x2e, 0x20, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x4c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x45, 0x78, 0x74, + 0x65, 0x6e, 0x64, 0x65, 0x64, 0x2d, 0x42, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x66, 0x6e, 0x6f, + 0x66, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x34, 0x30, 0x32, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x74, + 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x66, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x68, 0x6f, 0x6f, 0x6b, 0x20, 0x3d, 0x20, 0x66, + 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, 0x66, 0x6c, + 0x6f, 0x72, 0x69, 0x6e, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x31, 0x39, 0x32, + 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x47, 0x72, 0x65, 0x65, 0x6b, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x39, 0x31, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, + 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x31, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x42, 0x65, 0x74, 0x61, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x39, 0x31, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, + 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x62, + 0x65, 0x74, 0x61, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x32, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x47, 0x61, 0x6d, 0x6d, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x39, 0x31, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, + 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x67, 0x61, + 0x6d, 0x6d, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x33, 0x20, + 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x44, 0x65, 0x6c, + 0x74, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x31, 0x36, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, + 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x34, 0x20, 0x49, 0x53, 0x4f, 0x67, + 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x45, 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x31, 0x37, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, + 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x65, 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x2c, 0x20, 0x55, + 0x2b, 0x30, 0x33, 0x39, 0x35, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x5a, 0x65, 0x74, 0x61, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x31, 0x38, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, + 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x7a, 0x65, 0x74, 0x61, 0x2c, 0x20, 0x55, 0x2b, + 0x30, 0x33, 0x39, 0x36, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x45, 0x74, 0x61, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x31, 0x39, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, + 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x20, 0x65, 0x74, 0x61, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, + 0x39, 0x37, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x54, 0x68, 0x65, 0x74, 0x61, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x39, 0x32, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, + 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x74, 0x68, 0x65, 0x74, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, + 0x39, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x49, 0x6f, 0x74, 0x61, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x39, 0x32, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, + 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x69, 0x6f, 0x74, + 0x61, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x39, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4b, + 0x61, 0x70, 0x70, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, + 0x32, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, + 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, + 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6b, 0x61, 0x70, 0x70, + 0x61, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x41, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4c, + 0x61, 0x6d, 0x62, 0x64, 0x61, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, + 0x32, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, + 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, + 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6c, 0x61, 0x6d, 0x62, + 0x64, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x42, 0x20, 0x49, + 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4d, 0x75, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x32, 0x34, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, + 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x6d, 0x75, 0x2c, 0x20, 0x55, 0x2b, 0x30, + 0x33, 0x39, 0x43, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x4e, 0x75, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x32, 0x35, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, + 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x6e, 0x75, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x44, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x58, 0x69, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x39, 0x32, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, + 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x78, + 0x69, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x45, 0x20, 0x49, 0x53, + 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4f, 0x6d, 0x69, 0x63, 0x72, + 0x6f, 0x6e, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x32, 0x37, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, + 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x6f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x6e, 0x2c, + 0x20, 0x55, 0x2b, 0x30, 0x33, 0x39, 0x46, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x50, 0x69, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x32, 0x38, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, + 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x70, 0x69, 0x2c, 0x20, 0x55, 0x2b, + 0x30, 0x33, 0x41, 0x30, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x52, 0x68, 0x6f, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x39, 0x32, 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, + 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x72, + 0x68, 0x6f, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x41, 0x31, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x65, 0x72, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x20, 0x53, 0x69, 0x67, 0x6d, + 0x61, 0x66, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6e, 0x6f, 0x20, 0x55, + 0x2b, 0x30, 0x33, 0x41, 0x32, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, + 0x74, 0x65, 0x72, 0x20, 0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x53, 0x69, 0x67, 0x6d, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x39, 0x33, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, + 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x73, 0x69, 0x67, + 0x6d, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x41, 0x33, 0x20, 0x49, + 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x54, 0x61, 0x75, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x33, 0x32, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, + 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x74, 0x61, 0x75, 0x2c, 0x20, 0x55, 0x2b, + 0x30, 0x33, 0x41, 0x34, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x55, 0x70, 0x73, 0x69, 0x6c, 0x6f, + 0x6e, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x33, 0x33, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, + 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x20, 0x75, 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x30, 0x33, 0x41, 0x35, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, + 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x50, 0x68, 0x69, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x39, 0x33, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, + 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x70, 0x68, 0x69, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x41, 0x36, + 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x43, 0x68, + 0x69, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x33, + 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, + 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, + 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x63, 0x68, 0x69, 0x2c, 0x20, + 0x55, 0x2b, 0x30, 0x33, 0x41, 0x37, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x50, 0x73, 0x69, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x33, 0x36, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, + 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x70, 0x73, 0x69, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x33, 0x41, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x4f, 0x6d, 0x65, 0x67, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x39, 0x33, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, 0x69, + 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6f, + 0x6d, 0x65, 0x67, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x41, 0x39, + 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, + 0x34, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, + 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, 0x31, 0x20, 0x49, 0x53, 0x4f, 0x67, + 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x62, 0x65, 0x74, 0x61, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x34, 0x36, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, + 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, + 0x62, 0x65, 0x74, 0x61, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, 0x32, + 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x67, 0x61, + 0x6d, 0x6d, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x34, + 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, + 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x67, 0x61, 0x6d, 0x6d, 0x61, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x30, 0x33, 0x42, 0x33, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, + 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x39, 0x34, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, + 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x64, + 0x65, 0x6c, 0x74, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, 0x34, + 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x65, 0x70, + 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x34, + 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, + 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x65, 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, 0x35, 0x20, 0x49, 0x53, 0x4f, + 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x7a, 0x65, 0x74, 0x61, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x35, 0x30, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, + 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x7a, 0x65, 0x74, 0x61, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, + 0x36, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x65, + 0x74, 0x61, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, + 0x35, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, + 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x65, 0x74, 0x61, 0x2c, 0x20, 0x55, + 0x2b, 0x30, 0x33, 0x42, 0x37, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, + 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x74, 0x68, 0x65, 0x74, 0x61, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x39, 0x35, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, + 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, + 0x65, 0x74, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, 0x38, 0x20, + 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x69, 0x6f, 0x74, + 0x61, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x35, 0x33, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, + 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x69, 0x6f, 0x74, 0x61, 0x2c, 0x20, 0x55, 0x2b, + 0x30, 0x33, 0x42, 0x39, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x6b, 0x61, 0x70, 0x70, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x39, 0x35, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, + 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6b, 0x61, 0x70, + 0x70, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, 0x41, 0x20, 0x49, + 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x61, 0x6d, 0x62, + 0x64, 0x61, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x35, 0x35, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, + 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x20, 0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x30, 0x33, 0x42, 0x42, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, + 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x6d, 0x75, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x39, 0x35, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, + 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6d, 0x75, + 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, 0x43, 0x20, 0x49, 0x53, 0x4f, + 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6e, 0x75, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x35, 0x37, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, + 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x6e, 0x75, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, 0x44, 0x20, + 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x78, 0x69, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x35, 0x38, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, + 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x78, 0x69, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, + 0x42, 0x45, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x6f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x6e, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x39, 0x35, 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, + 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6f, 0x6d, 0x69, 0x63, 0x72, + 0x6f, 0x6e, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x42, 0x46, 0x20, 0x4e, + 0x45, 0x57, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x70, 0x69, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x39, 0x36, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, + 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x70, + 0x69, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x43, 0x30, 0x20, 0x49, 0x53, + 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x68, 0x6f, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x36, 0x31, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, + 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x72, 0x68, 0x6f, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x43, + 0x31, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, + 0x69, 0x67, 0x6d, 0x61, 0x66, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, + 0x36, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, + 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x20, + 0x73, 0x69, 0x67, 0x6d, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x43, + 0x32, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, + 0x69, 0x67, 0x6d, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, + 0x36, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, + 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x73, 0x69, 0x67, 0x6d, 0x61, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x30, 0x33, 0x43, 0x33, 0x20, 0x49, 0x53, 0x4f, 0x67, + 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x74, 0x61, 0x75, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x36, 0x34, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, + 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, + 0x74, 0x61, 0x75, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x43, 0x34, 0x20, + 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x75, 0x70, 0x73, + 0x69, 0x6c, 0x6f, 0x6e, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x36, 0x35, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, + 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x75, 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x30, 0x33, 0x43, 0x35, 0x20, 0x49, 0x53, 0x4f, 0x67, + 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x70, 0x68, 0x69, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x36, 0x36, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, + 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, + 0x70, 0x68, 0x69, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x43, 0x36, 0x20, + 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x63, 0x68, 0x69, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x36, 0x37, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, + 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x63, 0x68, 0x69, 0x2c, 0x20, 0x55, 0x2b, 0x30, + 0x33, 0x43, 0x37, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x70, 0x73, 0x69, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x39, 0x36, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, + 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x70, 0x73, 0x69, 0x2c, + 0x20, 0x55, 0x2b, 0x30, 0x33, 0x43, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x67, + 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x6f, 0x6d, 0x65, 0x67, 0x61, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x36, 0x39, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, + 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, + 0x6f, 0x6d, 0x65, 0x67, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x43, + 0x39, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x74, + 0x68, 0x65, 0x74, 0x61, 0x73, 0x79, 0x6d, 0x20, 0x22, 0x26, 0x23, 0x39, + 0x37, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, + 0x72, 0x65, 0x65, 0x6b, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, + 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65, 0x74, 0x61, 0x20, + 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, + 0x44, 0x31, 0x20, 0x4e, 0x45, 0x57, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x75, 0x70, 0x73, 0x69, + 0x68, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x37, 0x38, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, + 0x6b, 0x20, 0x75, 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x20, 0x77, 0x69, + 0x74, 0x68, 0x20, 0x68, 0x6f, 0x6f, 0x6b, 0x20, 0x73, 0x79, 0x6d, 0x62, + 0x6f, 0x6c, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x44, 0x32, 0x20, 0x4e, + 0x45, 0x57, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x70, 0x69, 0x76, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x39, 0x38, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x70, 0x69, + 0x20, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x2c, 0x20, 0x55, 0x2b, 0x30, + 0x33, 0x44, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x67, 0x72, 0x6b, 0x33, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x20, 0x50, 0x75, 0x6e, 0x63, 0x74, 0x75, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x62, 0x75, 0x6c, 0x6c, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x32, 0x36, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x62, 0x75, 0x6c, 0x6c, + 0x65, 0x74, 0x20, 0x3d, 0x20, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x20, 0x73, + 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x32, 0x32, 0x20, 0x49, 0x53, 0x4f, + 0x70, 0x75, 0x62, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x20, 0x69, 0x73, 0x20, + 0x4e, 0x4f, 0x54, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, + 0x20, 0x61, 0x73, 0x20, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x20, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2c, 0x20, 0x55, 0x2b, 0x32, + 0x32, 0x31, 0x39, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x68, 0x65, 0x6c, 0x6c, 0x69, 0x70, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x33, 0x30, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, + 0x6e, 0x74, 0x61, 0x6c, 0x20, 0x65, 0x6c, 0x6c, 0x69, 0x70, 0x73, 0x69, + 0x73, 0x20, 0x3d, 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x20, 0x64, 0x6f, + 0x74, 0x20, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x32, 0x30, 0x32, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x70, 0x75, 0x62, + 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x70, 0x72, 0x69, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x38, 0x32, 0x34, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x72, 0x69, 0x6d, 0x65, 0x20, 0x3d, 0x20, + 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x66, 0x65, + 0x65, 0x74, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x33, 0x32, 0x20, 0x49, + 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x50, 0x72, 0x69, 0x6d, + 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x34, 0x33, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x6f, 0x75, + 0x62, 0x6c, 0x65, 0x20, 0x70, 0x72, 0x69, 0x6d, 0x65, 0x20, 0x3d, 0x20, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x20, 0x3d, 0x20, 0x69, 0x6e, + 0x63, 0x68, 0x65, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x33, + 0x33, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6f, + 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, + 0x32, 0x35, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x3d, 0x20, 0x73, + 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x33, + 0x45, 0x20, 0x4e, 0x45, 0x57, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x66, 0x72, 0x61, 0x73, 0x6c, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x36, 0x30, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x72, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x6c, 0x61, 0x73, 0x68, 0x2c, 0x20, + 0x55, 0x2b, 0x32, 0x30, 0x34, 0x34, 0x20, 0x4e, 0x45, 0x57, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x6c, 0x69, 0x6b, 0x65, 0x20, 0x53, 0x79, 0x6d, 0x62, + 0x6f, 0x6c, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x77, 0x65, 0x69, 0x65, 0x72, 0x70, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x34, 0x37, 0x32, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x50, 0x20, 0x3d, + 0x20, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x20, 0x73, 0x65, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3d, 0x20, 0x57, 0x65, 0x69, 0x65, 0x72, 0x73, 0x74, 0x72, 0x61, 0x73, + 0x73, 0x20, 0x70, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x31, 0x38, 0x20, + 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x34, 0x36, + 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x62, 0x6c, + 0x61, 0x63, 0x6b, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x63, 0x61, + 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x49, 0x20, 0x3d, 0x20, 0x69, 0x6d, + 0x61, 0x67, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x20, 0x70, 0x61, 0x72, 0x74, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x31, 0x31, 0x20, 0x49, 0x53, + 0x4f, 0x61, 0x6d, 0x73, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x65, 0x61, 0x6c, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x34, 0x37, 0x36, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x62, 0x6c, 0x61, 0x63, + 0x6b, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x63, 0x61, 0x70, 0x69, + 0x74, 0x61, 0x6c, 0x20, 0x52, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, 0x6c, + 0x20, 0x70, 0x61, 0x72, 0x74, 0x20, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x31, 0x43, 0x20, 0x49, 0x53, + 0x4f, 0x61, 0x6d, 0x73, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x34, 0x38, 0x32, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x72, 0x61, 0x64, + 0x65, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, + 0x20, 0x55, 0x2b, 0x32, 0x31, 0x32, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x6e, + 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x61, 0x6c, 0x65, 0x66, 0x73, 0x79, 0x6d, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x38, 0x35, 0x30, 0x31, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x6c, 0x65, 0x66, 0x20, 0x73, 0x79, + 0x6d, 0x62, 0x6f, 0x6c, 0x20, 0x3d, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, + 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x65, + 0x20, 0x63, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x32, 0x31, 0x33, 0x35, 0x20, 0x4e, 0x45, 0x57, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x6c, 0x65, 0x66, + 0x20, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x20, 0x69, 0x73, 0x20, 0x4e, + 0x4f, 0x54, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, + 0x61, 0x73, 0x20, 0x68, 0x65, 0x62, 0x72, 0x65, 0x77, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x61, 0x6c, 0x65, 0x66, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x35, 0x44, 0x30, 0x20, 0x61, + 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x73, 0x61, 0x6d, 0x65, 0x20, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x20, 0x63, + 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, + 0x20, 0x74, 0x6f, 0x20, 0x64, 0x65, 0x70, 0x69, 0x63, 0x74, 0x20, 0x62, + 0x6f, 0x74, 0x68, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, + 0x72, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x41, 0x72, 0x72, 0x6f, 0x77, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x61, 0x72, + 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x35, 0x39, + 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x65, + 0x66, 0x74, 0x77, 0x61, 0x72, 0x64, 0x73, 0x20, 0x61, 0x72, 0x72, 0x6f, + 0x77, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x39, 0x30, 0x20, 0x49, 0x53, + 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x75, 0x61, 0x72, 0x72, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x35, 0x39, 0x33, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x75, 0x70, 0x77, 0x61, 0x72, + 0x64, 0x73, 0x20, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x2c, 0x20, 0x55, 0x2b, + 0x32, 0x31, 0x39, 0x31, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x72, 0x61, 0x72, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x38, 0x35, 0x39, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x77, 0x61, 0x72, 0x64, 0x73, 0x20, + 0x61, 0x72, 0x72, 0x6f, 0x77, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x39, + 0x32, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x64, 0x61, + 0x72, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x35, + 0x39, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, + 0x6f, 0x77, 0x6e, 0x77, 0x61, 0x72, 0x64, 0x73, 0x20, 0x61, 0x72, 0x72, + 0x6f, 0x77, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x39, 0x33, 0x20, 0x49, + 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x68, 0x61, 0x72, 0x72, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x35, 0x39, 0x36, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x65, 0x66, 0x74, + 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x61, 0x72, 0x72, 0x6f, 0x77, + 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x39, 0x34, 0x20, 0x49, 0x53, 0x4f, + 0x61, 0x6d, 0x73, 0x61, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x63, 0x72, 0x61, 0x72, 0x72, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x36, 0x32, 0x39, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x6f, 0x77, 0x6e, 0x77, + 0x61, 0x72, 0x64, 0x73, 0x20, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0x20, 0x6c, + 0x65, 0x66, 0x74, 0x77, 0x61, 0x72, 0x64, 0x73, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x20, + 0x63, 0x61, 0x72, 0x72, 0x69, 0x61, 0x67, 0x65, 0x20, 0x72, 0x65, 0x74, + 0x75, 0x72, 0x6e, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x42, 0x35, 0x20, + 0x4e, 0x45, 0x57, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x41, 0x72, 0x72, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x36, 0x35, 0x36, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x64, 0x73, 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x61, + 0x72, 0x72, 0x6f, 0x77, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x44, 0x30, + 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x55, 0x6e, 0x69, 0x63, 0x6f, 0x64, + 0x65, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x73, + 0x61, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6c, 0x41, 0x72, 0x72, + 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, + 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x27, 0x69, 0x73, 0x20, + 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x27, 0x20, + 0x61, 0x72, 0x72, 0x6f, 0x77, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x62, 0x75, + 0x74, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x20, + 0x6e, 0x6f, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6e, 0x79, + 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, + 0x63, 0x74, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x61, + 0x74, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, + 0x53, 0x6f, 0x20, 0x3f, 0x20, 0x6c, 0x41, 0x72, 0x72, 0x20, 0x63, 0x61, + 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, + 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x27, 0x69, 0x73, 0x20, 0x69, 0x6d, + 0x70, 0x6c, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x27, 0x20, 0x61, 0x73, + 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x73, 0x75, 0x67, + 0x67, 0x65, 0x73, 0x74, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x75, 0x41, 0x72, 0x72, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x36, 0x35, 0x37, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x75, 0x70, 0x77, 0x61, + 0x72, 0x64, 0x73, 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x61, + 0x72, 0x72, 0x6f, 0x77, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x44, 0x31, + 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x61, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x41, + 0x72, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x36, + 0x35, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x77, 0x61, 0x72, 0x64, 0x73, 0x20, 0x64, 0x6f, + 0x75, 0x62, 0x6c, 0x65, 0x20, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x32, 0x31, 0x44, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x74, + 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x55, 0x6e, 0x69, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x64, 0x6f, 0x65, + 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x73, 0x61, 0x79, 0x20, 0x74, 0x68, + 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x27, 0x69, + 0x6d, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x27, 0x20, 0x63, 0x68, 0x61, 0x72, + 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x62, 0x75, 0x74, 0x20, 0x64, 0x6f, + 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, + 0x72, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x75, + 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x6f, 0x20, 0x3f, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x41, 0x72, 0x72, 0x20, 0x63, 0x61, + 0x6e, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x27, 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x27, 0x20, + 0x61, 0x73, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x73, + 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x64, 0x41, 0x72, + 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x36, 0x35, + 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x6f, + 0x77, 0x6e, 0x77, 0x61, 0x72, 0x64, 0x73, 0x20, 0x64, 0x6f, 0x75, 0x62, + 0x6c, 0x65, 0x20, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x2c, 0x20, 0x55, 0x2b, + 0x32, 0x31, 0x44, 0x33, 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x61, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x68, 0x41, 0x72, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x38, 0x36, 0x36, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x61, 0x72, 0x72, + 0x6f, 0x77, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x31, 0x44, 0x34, 0x20, + 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x61, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4d, 0x61, 0x74, 0x68, 0x65, 0x6d, + 0x61, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x66, 0x6f, 0x72, 0x61, 0x6c, 0x6c, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x30, 0x34, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, + 0x6c, 0x6c, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x30, 0x30, 0x20, 0x49, + 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x70, 0x61, 0x72, 0x74, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x30, 0x36, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x61, 0x6c, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x30, + 0x32, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x65, 0x78, 0x69, 0x73, 0x74, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x38, 0x37, 0x30, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x65, 0x78, 0x69, 0x73, 0x74, + 0x73, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x30, 0x33, 0x20, 0x49, 0x53, + 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x30, 0x39, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6d, 0x70, 0x74, + 0x79, 0x20, 0x73, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x6e, 0x75, 0x6c, 0x6c, + 0x20, 0x73, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x30, 0x35, + 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6e, 0x61, + 0x62, 0x6c, 0x61, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, + 0x31, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6e, + 0x61, 0x62, 0x6c, 0x61, 0x20, 0x3d, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x77, + 0x61, 0x72, 0x64, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x30, 0x37, 0x20, + 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x69, 0x73, 0x69, + 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x31, + 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x2c, 0x20, 0x55, 0x2b, + 0x32, 0x32, 0x30, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x6e, 0x6f, 0x74, 0x69, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x38, 0x37, 0x31, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x2c, 0x20, 0x55, 0x2b, + 0x32, 0x32, 0x30, 0x39, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x6e, 0x69, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x38, 0x37, 0x31, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x20, + 0x61, 0x73, 0x20, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x2c, 0x20, 0x55, + 0x2b, 0x32, 0x32, 0x30, 0x42, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, + 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, + 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, + 0x62, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x6d, 0x65, + 0x6d, 0x6f, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x27, 0x6e, 0x69, 0x27, 0x3f, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x70, 0x72, 0x6f, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x38, 0x37, 0x31, 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6e, 0x2d, 0x61, 0x72, 0x79, 0x20, 0x70, 0x72, 0x6f, 0x64, + 0x75, 0x63, 0x74, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, + 0x74, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, + 0x32, 0x30, 0x46, 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x62, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x72, 0x6f, + 0x64, 0x20, 0x69, 0x73, 0x20, 0x4e, 0x4f, 0x54, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, + 0x74, 0x65, 0x72, 0x20, 0x61, 0x73, 0x20, 0x55, 0x2b, 0x30, 0x33, 0x41, + 0x30, 0x20, 0x27, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, 0x61, 0x70, + 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, + 0x70, 0x69, 0x27, 0x20, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, + 0x20, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x20, 0x6d, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, 0x75, 0x6d, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x32, 0x31, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6e, 0x2d, 0x61, 0x72, + 0x79, 0x20, 0x73, 0x75, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, + 0x55, 0x2b, 0x32, 0x32, 0x31, 0x31, 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, + 0x73, 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x73, 0x75, 0x6d, 0x20, 0x69, 0x73, 0x20, 0x4e, 0x4f, 0x54, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x63, 0x68, 0x61, 0x72, + 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x61, 0x73, 0x20, 0x55, 0x2b, 0x30, + 0x33, 0x41, 0x33, 0x20, 0x27, 0x67, 0x72, 0x65, 0x65, 0x6b, 0x20, 0x63, + 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, + 0x72, 0x20, 0x73, 0x69, 0x67, 0x6d, 0x61, 0x27, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x20, + 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, + 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x6d, 0x69, 0x6e, 0x75, 0x73, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x38, 0x37, 0x32, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6d, 0x69, 0x6e, 0x75, 0x73, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, + 0x20, 0x55, 0x2b, 0x32, 0x32, 0x31, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x74, + 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x6f, 0x77, 0x61, 0x73, 0x74, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x32, 0x37, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x73, 0x74, 0x65, 0x72, 0x69, + 0x73, 0x6b, 0x20, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2c, + 0x20, 0x55, 0x2b, 0x32, 0x32, 0x31, 0x37, 0x20, 0x49, 0x53, 0x4f, 0x74, + 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x61, 0x64, 0x69, 0x63, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x33, 0x30, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, + 0x20, 0x72, 0x6f, 0x6f, 0x74, 0x20, 0x3d, 0x20, 0x72, 0x61, 0x64, 0x69, + 0x63, 0x61, 0x6c, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, + 0x2b, 0x32, 0x32, 0x31, 0x41, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, + 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x38, 0x37, 0x33, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x74, 0x6f, 0x2c, 0x20, 0x55, 0x2b, 0x32, + 0x32, 0x31, 0x44, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x69, 0x6e, 0x66, 0x69, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x38, 0x37, 0x33, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x69, 0x6e, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x2c, 0x20, + 0x55, 0x2b, 0x32, 0x32, 0x31, 0x45, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, + 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x61, 0x6e, 0x67, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x33, 0x36, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x2c, 0x20, + 0x55, 0x2b, 0x32, 0x32, 0x32, 0x30, 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, + 0x73, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x34, 0x33, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x3d, 0x20, 0x77, 0x65, 0x64, 0x67, 0x65, + 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x32, 0x37, 0x20, 0x49, 0x53, 0x4f, + 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6f, 0x72, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x34, 0x34, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x6f, 0x67, 0x69, 0x63, + 0x61, 0x6c, 0x20, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x76, 0x65, 0x65, 0x2c, + 0x20, 0x55, 0x2b, 0x32, 0x32, 0x32, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x74, + 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x63, 0x61, 0x70, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x34, 0x35, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x73, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x63, 0x61, 0x70, + 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x32, 0x39, 0x20, 0x49, 0x53, 0x4f, + 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x63, 0x75, 0x70, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x34, 0x36, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x75, 0x6e, 0x69, 0x6f, 0x6e, + 0x20, 0x3d, 0x20, 0x63, 0x75, 0x70, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, + 0x32, 0x41, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x69, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x38, 0x37, 0x34, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x6c, 0x2c, 0x20, 0x55, + 0x2b, 0x32, 0x32, 0x32, 0x42, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, + 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x34, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x38, 0x37, 0x35, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x66, 0x6f, 0x72, + 0x65, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x33, 0x34, 0x20, 0x49, 0x53, + 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, 0x69, 0x6d, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, 0x36, 0x34, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x69, 0x6c, 0x64, + 0x65, 0x20, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x20, 0x3d, + 0x20, 0x76, 0x61, 0x72, 0x69, 0x65, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, + 0x20, 0x3d, 0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x20, 0x74, + 0x6f, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x33, 0x43, 0x20, 0x49, + 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x20, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x20, 0x69, 0x73, 0x20, 0x4e, 0x4f, + 0x54, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x63, + 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x61, 0x73, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x2c, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x37, 0x45, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x20, + 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, + 0x64, 0x20, 0x74, 0x6f, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, + 0x6e, 0x74, 0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x63, 0x6f, + 0x6e, 0x67, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x37, + 0x37, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, + 0x70, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x6c, 0x79, + 0x20, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x20, 0x74, 0x6f, 0x2c, 0x20, 0x55, + 0x2b, 0x32, 0x32, 0x34, 0x35, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, + 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x61, 0x73, 0x79, 0x6d, 0x70, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x38, 0x37, 0x37, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x6c, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x65, + 0x71, 0x75, 0x61, 0x6c, 0x20, 0x74, 0x6f, 0x20, 0x3d, 0x20, 0x61, 0x73, + 0x79, 0x6d, 0x70, 0x74, 0x6f, 0x74, 0x69, 0x63, 0x20, 0x74, 0x6f, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x34, 0x38, 0x20, 0x49, 0x53, 0x4f, + 0x61, 0x6d, 0x73, 0x72, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6e, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x38, 0x30, 0x30, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, + 0x71, 0x75, 0x61, 0x6c, 0x20, 0x74, 0x6f, 0x2c, 0x20, 0x55, 0x2b, 0x32, + 0x32, 0x36, 0x30, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x65, 0x71, 0x75, 0x69, 0x76, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x38, 0x38, 0x30, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, + 0x74, 0x6f, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x36, 0x31, 0x20, 0x49, + 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x65, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x38, 0x30, 0x34, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x65, 0x73, + 0x73, 0x2d, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x6f, 0x72, 0x20, 0x65, 0x71, + 0x75, 0x61, 0x6c, 0x20, 0x74, 0x6f, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, + 0x36, 0x34, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x67, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x38, 0x38, 0x30, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x67, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x2d, 0x74, 0x68, 0x61, + 0x6e, 0x20, 0x6f, 0x72, 0x20, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x20, 0x74, + 0x6f, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x36, 0x35, 0x20, 0x49, + 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, 0x75, 0x62, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x38, 0x33, 0x34, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x75, 0x62, + 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, + 0x38, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x73, 0x75, 0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x38, 0x38, 0x33, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x73, 0x75, 0x70, 0x65, 0x72, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, + 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x38, 0x33, 0x20, 0x49, 0x53, 0x4f, + 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6e, 0x6f, 0x74, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, + 0x6e, 0x73, 0x75, 0x70, 0x2c, 0x20, 0x27, 0x6e, 0x6f, 0x74, 0x20, 0x61, + 0x20, 0x73, 0x75, 0x70, 0x65, 0x72, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, + 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x38, 0x33, 0x27, 0x20, 0x69, 0x73, + 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, + 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x53, 0x79, 0x6d, 0x62, + 0x6f, 0x6c, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x6e, + 0x74, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x61, + 0x6e, 0x64, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x69, 0x6e, + 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x2e, 0x20, 0x53, 0x68, 0x6f, 0x75, + 0x6c, 0x64, 0x20, 0x69, 0x74, 0x20, 0x62, 0x65, 0x2c, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x3f, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x74, 0x20, 0x69, 0x73, 0x20, 0x69, + 0x6e, 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x6e, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x20, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x6e, 0x73, 0x75, 0x62, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x38, 0x38, 0x33, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x20, 0x73, 0x75, 0x62, 0x73, + 0x65, 0x74, 0x20, 0x6f, 0x66, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x38, + 0x34, 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x6e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, + 0x75, 0x62, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, + 0x38, 0x33, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x73, 0x75, 0x62, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x72, + 0x20, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x20, 0x74, 0x6f, 0x2c, 0x20, 0x55, + 0x2b, 0x32, 0x32, 0x38, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, + 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x73, 0x75, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x38, 0x38, 0x33, 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x75, 0x70, 0x65, 0x72, 0x73, 0x65, 0x74, + 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x72, 0x20, 0x65, 0x71, 0x75, 0x61, 0x6c, + 0x20, 0x74, 0x6f, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x38, 0x37, + 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6f, 0x70, + 0x6c, 0x75, 0x73, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x38, + 0x35, 0x33, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, + 0x69, 0x72, 0x63, 0x6c, 0x65, 0x64, 0x20, 0x70, 0x6c, 0x75, 0x73, 0x20, + 0x3d, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x20, 0x73, 0x75, 0x6d, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x39, 0x35, 0x20, 0x49, 0x53, + 0x4f, 0x61, 0x6d, 0x73, 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6f, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x38, 0x35, 0x35, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x69, 0x72, 0x63, + 0x6c, 0x65, 0x64, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x20, 0x3d, 0x20, + 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x20, 0x70, 0x72, 0x6f, 0x64, 0x75, + 0x63, 0x74, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x39, 0x37, 0x20, + 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x70, 0x65, 0x72, + 0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x38, 0x36, + 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x75, 0x70, + 0x20, 0x74, 0x61, 0x63, 0x6b, 0x20, 0x3d, 0x20, 0x6f, 0x72, 0x74, 0x68, + 0x6f, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x74, 0x6f, 0x20, 0x3d, 0x20, + 0x70, 0x65, 0x72, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x63, 0x75, 0x6c, 0x61, + 0x72, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x32, 0x41, 0x35, 0x20, 0x49, + 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, 0x64, 0x6f, 0x74, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x39, 0x30, 0x31, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x6f, 0x74, + 0x20, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2c, 0x20, 0x55, + 0x2b, 0x32, 0x32, 0x43, 0x35, 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, + 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, + 0x6f, 0x74, 0x20, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x20, + 0x69, 0x73, 0x20, 0x4e, 0x4f, 0x54, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, + 0x61, 0x6d, 0x65, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, + 0x72, 0x20, 0x61, 0x73, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x42, 0x37, 0x20, + 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x20, 0x64, 0x6f, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4d, 0x69, 0x73, + 0x63, 0x65, 0x6c, 0x6c, 0x61, 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x20, 0x54, + 0x65, 0x63, 0x68, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x63, + 0x65, 0x69, 0x6c, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x39, + 0x36, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, + 0x65, 0x66, 0x74, 0x20, 0x63, 0x65, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x20, + 0x3d, 0x20, 0x61, 0x70, 0x6c, 0x20, 0x75, 0x70, 0x73, 0x74, 0x69, 0x6c, + 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x33, 0x30, 0x38, 0x20, 0x49, + 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x63, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x63, 0x65, + 0x69, 0x6c, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x39, 0x36, + 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x20, 0x63, 0x65, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x2c, + 0x20, 0x55, 0x2b, 0x32, 0x33, 0x30, 0x39, 0x20, 0x49, 0x53, 0x4f, 0x61, + 0x6d, 0x73, 0x63, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x66, 0x6c, 0x6f, 0x6f, 0x72, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x39, 0x37, 0x30, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, + 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x61, 0x70, 0x6c, 0x20, + 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x74, 0x69, 0x6c, 0x65, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x32, 0x33, 0x30, 0x41, 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, + 0x73, 0x63, 0x20, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x39, 0x37, 0x31, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, + 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x33, 0x30, + 0x42, 0x20, 0x49, 0x53, 0x4f, 0x61, 0x6d, 0x73, 0x63, 0x20, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x39, 0x30, 0x30, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x69, + 0x6e, 0x67, 0x20, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x62, 0x72, 0x61, + 0x63, 0x6b, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x62, 0x72, 0x61, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x32, 0x33, 0x32, 0x39, 0x20, 0x49, 0x53, 0x4f, 0x74, + 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x69, 0x73, 0x20, 0x4e, 0x4f, 0x54, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x63, 0x68, + 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x61, 0x73, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x33, 0x43, 0x20, 0x27, 0x6c, 0x65, 0x73, 0x73, 0x20, + 0x74, 0x68, 0x61, 0x6e, 0x27, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6f, 0x72, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x33, 0x39, 0x20, 0x27, 0x73, + 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x6e, 0x67, 0x6c, + 0x65, 0x20, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x6d, 0x61, 0x72, 0x6b, 0x27, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x30, 0x30, 0x32, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x2d, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, + 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, + 0x20, 0x3d, 0x20, 0x6b, 0x65, 0x74, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, + 0x33, 0x32, 0x41, 0x20, 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x61, 0x6e, + 0x67, 0x20, 0x69, 0x73, 0x20, 0x4e, 0x4f, 0x54, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, + 0x74, 0x65, 0x72, 0x20, 0x61, 0x73, 0x20, 0x55, 0x2b, 0x30, 0x30, 0x33, + 0x45, 0x20, 0x27, 0x67, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x20, 0x74, + 0x68, 0x61, 0x6e, 0x27, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, + 0x72, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x33, 0x41, 0x20, 0x27, 0x73, 0x69, + 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x6e, 0x67, 0x6c, + 0x65, 0x20, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x6d, 0x61, 0x72, 0x6b, 0x27, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x47, 0x65, 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x20, 0x53, 0x68, 0x61, 0x70, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x6f, + 0x7a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x36, + 0x37, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, + 0x6f, 0x7a, 0x65, 0x6e, 0x67, 0x65, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x35, + 0x43, 0x41, 0x20, 0x49, 0x53, 0x4f, 0x70, 0x75, 0x62, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4d, 0x69, 0x73, 0x63, + 0x65, 0x6c, 0x6c, 0x61, 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x20, 0x53, 0x79, + 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, 0x70, 0x61, 0x64, 0x65, + 0x73, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x38, 0x32, 0x34, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x62, 0x6c, 0x61, 0x63, + 0x6b, 0x20, 0x73, 0x70, 0x61, 0x64, 0x65, 0x20, 0x73, 0x75, 0x69, 0x74, + 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x36, 0x36, 0x30, 0x20, 0x49, 0x53, 0x4f, + 0x70, 0x75, 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x20, 0x68, 0x65, 0x72, 0x65, 0x20, + 0x73, 0x65, 0x65, 0x6d, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x6d, 0x65, 0x61, + 0x6e, 0x20, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, + 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x68, + 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x63, 0x6c, 0x75, 0x62, 0x73, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x39, 0x38, 0x32, 0x37, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x62, 0x6c, 0x61, 0x63, + 0x6b, 0x20, 0x63, 0x6c, 0x75, 0x62, 0x20, 0x73, 0x75, 0x69, 0x74, 0x20, + 0x3d, 0x20, 0x73, 0x68, 0x61, 0x6d, 0x72, 0x6f, 0x63, 0x6b, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x55, 0x2b, 0x32, 0x36, 0x36, 0x33, 0x20, 0x49, 0x53, 0x4f, 0x70, + 0x75, 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x68, 0x65, 0x61, 0x72, 0x74, 0x73, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x39, 0x38, 0x32, 0x39, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x20, 0x68, + 0x65, 0x61, 0x72, 0x74, 0x20, 0x73, 0x75, 0x69, 0x74, 0x20, 0x3d, 0x20, + 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x65, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x32, 0x36, 0x36, 0x35, 0x20, 0x49, 0x53, 0x4f, 0x70, 0x75, + 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x64, 0x69, 0x61, 0x6d, 0x73, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x39, 0x38, 0x33, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x20, 0x64, 0x69, + 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x20, 0x73, 0x75, 0x69, 0x74, 0x2c, 0x20, + 0x55, 0x2b, 0x32, 0x36, 0x36, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x70, 0x75, + 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, + 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, + 0x53, 0x20, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x2e, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x63, + 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x73, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, + 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x73, 0x65, + 0x74, 0x2e, 0x20, 0x54, 0x79, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x69, + 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x73, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x20, + 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x2f, + 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x61, 0x6c, 0x2e, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x48, 0x54, 0x4d, 0x4c, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x61, 0x6c, 0x3b, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x28, 0x43, 0x29, 0x20, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x4f, 0x72, 0x67, 0x61, + 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x39, 0x38, 0x36, 0x3a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x20, 0x69, + 0x6e, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x69, + 0x73, 0x20, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x75, 0x73, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x69, + 0x6e, 0x67, 0x20, 0x53, 0x47, 0x4d, 0x4c, 0x20, 0x73, 0x79, 0x73, 0x74, + 0x65, 0x6d, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x73, 0x20, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x38, 0x38, 0x37, 0x39, + 0x2c, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x20, 0x69, + 0x73, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, 0x69, + 0x6e, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x63, 0x6f, 0x70, 0x69, 0x65, 0x73, + 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x52, 0x65, 0x6c, 0x65, 0x76, 0x61, 0x6e, 0x74, 0x20, 0x49, 0x53, 0x4f, + 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x73, 0x65, 0x74, 0x20, + 0x69, 0x73, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x75, 0x6e, 0x6c, + 0x65, 0x73, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x61, 0x72, + 0x65, 0x20, 0x6e, 0x65, 0x77, 0x6c, 0x79, 0x20, 0x69, 0x6e, 0x74, 0x72, + 0x6f, 0x64, 0x75, 0x63, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x4e, 0x65, 0x77, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x28, + 0x69, 0x2e, 0x65, 0x2e, 0x2c, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x69, 0x6e, + 0x20, 0x49, 0x53, 0x4f, 0x20, 0x38, 0x38, 0x37, 0x39, 0x20, 0x6c, 0x69, + 0x73, 0x74, 0x29, 0x20, 0x64, 0x6f, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x63, + 0x6c, 0x61, 0x73, 0x68, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x6e, + 0x79, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x78, 0x69, 0x73, 0x74, + 0x69, 0x6e, 0x67, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x38, 0x38, 0x37, 0x39, + 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x2e, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x31, 0x30, 0x36, 0x34, 0x36, + 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x6e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x61, 0x72, 0x65, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, + 0x63, 0x74, 0x65, 0x72, 0x2c, 0x20, 0x69, 0x6e, 0x20, 0x68, 0x65, 0x78, + 0x2e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, + 0x20, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x49, 0x53, 0x4f, + 0x20, 0x31, 0x30, 0x36, 0x34, 0x36, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x20, + 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x68, 0x61, + 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x73, 0x65, 0x74, 0x2e, 0x20, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x55, 0x6e, + 0x69, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x2e, + 0x20, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x43, 0x30, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x42, 0x61, 0x73, 0x69, 0x63, 0x20, 0x4c, 0x61, + 0x74, 0x69, 0x6e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x71, 0x75, 0x6f, 0x74, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x26, 0x23, 0x33, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x20, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x3d, 0x20, 0x41, 0x50, 0x4c, + 0x20, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x30, + 0x32, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x61, + 0x6d, 0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x33, 0x38, + 0x3b, 0x23, 0x33, 0x38, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x20, 0x61, 0x6d, 0x70, 0x65, 0x72, 0x73, 0x61, 0x6e, 0x64, 0x2c, + 0x20, 0x55, 0x2b, 0x30, 0x30, 0x32, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x6e, + 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x6c, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x33, 0x38, 0x3b, 0x23, 0x36, 0x30, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x20, 0x6c, 0x65, 0x73, 0x73, 0x2d, + 0x74, 0x68, 0x61, 0x6e, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x55, + 0x2b, 0x30, 0x30, 0x33, 0x43, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x67, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x36, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x20, 0x67, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x2d, 0x74, 0x68, 0x61, + 0x6e, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x30, + 0x33, 0x45, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x61, + 0x70, 0x6f, 0x73, 0x09, 0x20, 0x22, 0x26, 0x23, 0x33, 0x39, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x20, 0x61, 0x70, 0x6f, 0x73, + 0x74, 0x72, 0x6f, 0x70, 0x68, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x2c, + 0x20, 0x55, 0x2b, 0x30, 0x30, 0x32, 0x37, 0x20, 0x49, 0x53, 0x4f, 0x6e, + 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x4c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x45, 0x78, 0x74, 0x65, 0x6e, + 0x64, 0x65, 0x64, 0x2d, 0x41, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x4f, 0x45, 0x6c, 0x69, 0x67, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x33, 0x33, 0x38, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, + 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x69, 0x67, + 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x4f, 0x45, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x31, 0x35, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x32, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x6f, 0x65, 0x6c, 0x69, 0x67, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x33, 0x33, 0x39, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x73, 0x6d, 0x61, 0x6c, + 0x6c, 0x20, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x6f, + 0x65, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x31, 0x35, 0x33, 0x20, 0x49, 0x53, + 0x4f, 0x6c, 0x61, 0x74, 0x32, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x69, 0x73, 0x6e, 0x6f, 0x6d, 0x65, + 0x72, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, + 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x20, 0x63, 0x68, + 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x69, 0x6e, 0x20, 0x73, + 0x6f, 0x6d, 0x65, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x53, 0x63, 0x61, 0x72, 0x6f, 0x6e, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x33, 0x35, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x63, 0x61, 0x70, + 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, + 0x53, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x63, 0x61, 0x72, 0x6f, 0x6e, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x55, 0x2b, 0x30, 0x31, 0x36, 0x30, 0x20, 0x49, 0x53, 0x4f, + 0x6c, 0x61, 0x74, 0x32, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, 0x63, 0x61, 0x72, 0x6f, 0x6e, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x33, 0x35, 0x33, 0x3b, 0x22, 0x3e, 0x20, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x20, + 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x20, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x63, 0x61, 0x72, 0x6f, + 0x6e, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x55, 0x2b, 0x30, 0x31, 0x36, 0x31, 0x20, 0x49, 0x53, + 0x4f, 0x6c, 0x61, 0x74, 0x32, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x59, 0x75, 0x6d, 0x6c, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x33, 0x37, 0x36, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x20, 0x6c, 0x61, 0x74, 0x69, 0x6e, + 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6c, 0x65, 0x74, + 0x74, 0x65, 0x72, 0x20, 0x59, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x64, + 0x69, 0x61, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, + 0x30, 0x31, 0x37, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x6c, 0x61, 0x74, 0x32, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, + 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x6f, 0x64, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x20, 0x4c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x73, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x63, 0x69, 0x72, 0x63, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x37, 0x31, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x20, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x20, 0x6c, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x20, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, + 0x6c, 0x65, 0x78, 0x20, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x30, 0x32, 0x43, 0x36, 0x20, 0x49, 0x53, 0x4f, 0x70, 0x75, + 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x37, 0x33, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x69, 0x6c, + 0x64, 0x65, 0x2c, 0x20, 0x55, 0x2b, 0x30, 0x32, 0x44, 0x43, 0x20, 0x49, + 0x53, 0x4f, 0x64, 0x69, 0x61, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x20, + 0x50, 0x75, 0x6e, 0x63, 0x74, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x65, 0x6e, 0x73, 0x70, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x38, 0x31, 0x39, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2c, 0x20, 0x55, + 0x2b, 0x32, 0x30, 0x30, 0x32, 0x20, 0x49, 0x53, 0x4f, 0x70, 0x75, 0x62, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x65, 0x6d, 0x73, 0x70, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x38, 0x31, 0x39, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6d, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2c, 0x20, + 0x55, 0x2b, 0x32, 0x30, 0x30, 0x33, 0x20, 0x49, 0x53, 0x4f, 0x70, 0x75, + 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x74, 0x68, 0x69, 0x6e, 0x73, 0x70, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x38, 0x32, 0x30, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x69, 0x6e, 0x20, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x30, 0x39, 0x20, 0x49, 0x53, + 0x4f, 0x70, 0x75, 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x7a, 0x77, 0x6e, 0x6a, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x30, 0x34, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x7a, 0x65, 0x72, 0x6f, 0x20, 0x77, + 0x69, 0x64, 0x74, 0x68, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x6a, 0x6f, 0x69, + 0x6e, 0x65, 0x72, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x30, 0x43, 0x20, + 0x4e, 0x45, 0x57, 0x20, 0x52, 0x46, 0x43, 0x20, 0x32, 0x30, 0x37, 0x30, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x7a, 0x77, 0x6a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, + 0x23, 0x38, 0x32, 0x30, 0x35, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x7a, 0x65, 0x72, 0x6f, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, + 0x20, 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x72, 0x2c, 0x20, 0x55, 0x2b, 0x32, + 0x30, 0x30, 0x44, 0x20, 0x4e, 0x45, 0x57, 0x20, 0x52, 0x46, 0x43, 0x20, + 0x32, 0x30, 0x37, 0x30, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x72, 0x6d, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x30, 0x36, 0x3b, 0x22, 0x3e, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0x74, + 0x6f, 0x2d, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6d, 0x61, 0x72, 0x6b, + 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x30, 0x45, 0x20, 0x4e, 0x45, 0x57, + 0x20, 0x52, 0x46, 0x43, 0x20, 0x32, 0x30, 0x37, 0x30, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, + 0x6c, 0x6d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, + 0x30, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x2d, 0x74, 0x6f, 0x2d, 0x6c, 0x65, 0x66, 0x74, + 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x30, + 0x46, 0x20, 0x4e, 0x45, 0x57, 0x20, 0x52, 0x46, 0x43, 0x20, 0x32, 0x30, + 0x37, 0x30, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x6e, 0x64, 0x61, 0x73, 0x68, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x38, 0x32, 0x31, 0x31, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x20, 0x64, 0x61, 0x73, 0x68, 0x2c, + 0x20, 0x55, 0x2b, 0x32, 0x30, 0x31, 0x33, 0x20, 0x49, 0x53, 0x4f, 0x70, + 0x75, 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x6d, 0x64, 0x61, 0x73, 0x68, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x38, 0x32, 0x31, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6d, 0x20, 0x64, 0x61, 0x73, 0x68, 0x2c, + 0x20, 0x55, 0x2b, 0x32, 0x30, 0x31, 0x34, 0x20, 0x49, 0x53, 0x4f, 0x70, + 0x75, 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x6c, 0x73, 0x71, 0x75, 0x6f, 0x20, 0x20, 0x20, + 0x22, 0x26, 0x23, 0x38, 0x32, 0x31, 0x36, 0x3b, 0x22, 0x3e, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x73, 0x69, 0x6e, + 0x67, 0x6c, 0x65, 0x20, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x30, + 0x31, 0x38, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, + 0x73, 0x71, 0x75, 0x6f, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, + 0x31, 0x37, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, + 0x71, 0x75, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, + 0x72, 0x6b, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x31, 0x39, 0x20, 0x49, + 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x73, 0x62, 0x71, 0x75, 0x6f, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x31, 0x38, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, + 0x65, 0x20, 0x6c, 0x6f, 0x77, 0x2d, 0x39, 0x20, 0x71, 0x75, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x2c, 0x20, + 0x55, 0x2b, 0x32, 0x30, 0x31, 0x41, 0x20, 0x4e, 0x45, 0x57, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x6c, 0x64, 0x71, 0x75, 0x6f, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, + 0x32, 0x32, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6c, 0x65, 0x66, 0x74, 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, + 0x71, 0x75, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, + 0x72, 0x6b, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x31, 0x43, 0x20, 0x49, + 0x53, 0x4f, 0x6e, 0x75, 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x64, 0x71, 0x75, 0x6f, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x32, 0x31, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x71, 0x75, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x2b, 0x32, 0x30, 0x31, 0x44, 0x20, 0x49, 0x53, 0x4f, 0x6e, 0x75, + 0x6d, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x62, 0x64, 0x71, 0x75, 0x6f, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x23, 0x38, 0x32, 0x32, 0x32, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x6c, 0x6f, + 0x77, 0x2d, 0x39, 0x20, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x30, + 0x31, 0x45, 0x20, 0x4e, 0x45, 0x57, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x64, 0x61, 0x67, 0x67, + 0x65, 0x72, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x32, 0x34, 0x3b, + 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x61, 0x67, 0x67, + 0x65, 0x72, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x32, 0x30, 0x20, 0x49, + 0x53, 0x4f, 0x70, 0x75, 0x62, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x44, 0x61, 0x67, 0x67, 0x65, + 0x72, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x32, 0x35, 0x3b, 0x22, + 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, + 0x65, 0x20, 0x64, 0x61, 0x67, 0x67, 0x65, 0x72, 0x2c, 0x20, 0x55, 0x2b, + 0x32, 0x30, 0x32, 0x31, 0x20, 0x49, 0x53, 0x4f, 0x70, 0x75, 0x62, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x6c, 0x20, 0x20, 0x22, 0x26, 0x23, + 0x38, 0x32, 0x34, 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x70, 0x65, 0x72, 0x20, 0x6d, 0x69, 0x6c, 0x6c, 0x65, 0x20, 0x73, + 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x33, 0x30, 0x20, + 0x49, 0x53, 0x4f, 0x74, 0x65, 0x63, 0x68, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x6c, 0x73, 0x61, + 0x71, 0x75, 0x6f, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x34, 0x39, + 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x69, 0x6e, + 0x67, 0x6c, 0x65, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x20, + 0x71, 0x75, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, + 0x72, 0x6b, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x33, 0x39, 0x20, 0x49, + 0x53, 0x4f, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x73, 0x61, + 0x71, 0x75, 0x6f, 0x20, 0x69, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x6f, + 0x73, 0x65, 0x64, 0x20, 0x62, 0x75, 0x74, 0x20, 0x6e, 0x6f, 0x74, 0x20, + 0x79, 0x65, 0x74, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x73, 0x74, 0x61, 0x6e, + 0x64, 0x61, 0x72, 0x64, 0x69, 0x7a, 0x65, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x72, 0x73, + 0x61, 0x71, 0x75, 0x6f, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x32, 0x35, + 0x30, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x69, + 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x6e, 0x67, 0x6c, + 0x65, 0x20, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x6d, 0x61, 0x72, 0x6b, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x2b, 0x32, 0x30, 0x33, 0x41, + 0x20, 0x49, 0x53, 0x4f, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, + 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, + 0x73, 0x61, 0x71, 0x75, 0x6f, 0x20, 0x69, 0x73, 0x20, 0x70, 0x72, 0x6f, + 0x70, 0x6f, 0x73, 0x65, 0x64, 0x20, 0x62, 0x75, 0x74, 0x20, 0x6e, 0x6f, + 0x74, 0x20, 0x79, 0x65, 0x74, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x73, 0x74, + 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x69, 0x7a, 0x65, 0x64, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x65, 0x75, 0x72, 0x6f, 0x20, 0x20, 0x20, 0x22, 0x26, 0x23, 0x38, 0x33, + 0x36, 0x34, 0x3b, 0x22, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x20, + 0x65, 0x75, 0x72, 0x6f, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x55, + 0x2b, 0x32, 0x30, 0x41, 0x43, 0x20, 0x4e, 0x45, 0x57, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x68, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x6f, 0x73, + 0x74, 0x2d, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, + 0x52, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, + 0x72, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x69, 0x73, + 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x73, 0x20, 0x61, 0x73, 0x20, 0x61, + 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, + 0x20, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x20, 0x6d, 0x61, 0x72, 0x6b, + 0x75, 0x70, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x74, + 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, 0x20, 0x66, 0x6f, + 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x66, 0x72, 0x61, 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x64, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x6f, 0x73, + 0x74, 0x66, 0x77, 0x2d, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x47, 0x4e, 0x4f, 0x52, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x70, 0x6f, 0x73, 0x74, 0x66, 0x77, 0x2d, 0x72, 0x65, + 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, + 0x5b, 0x0a, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x6f, 0x73, + 0x74, 0x66, 0x77, 0x2d, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x2e, 0x6d, + 0x6f, 0x64, 0x3b, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x6f, + 0x73, 0x74, 0x66, 0x77, 0x2d, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x2e, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x65, 0x78, 0x74, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x28, 0x52, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x29, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2e, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, + 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, + 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x54, 0x65, 0x78, + 0x74, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x31, 0x2e, 0x6d, + 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, + 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, + 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, + 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, + 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, + 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, + 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, + 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, + 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, + 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, + 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, + 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, + 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, + 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x31, 0x2e, + 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x65, + 0x78, 0x74, 0x75, 0x61, 0x6c, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, + 0x54, 0x65, 0x78, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x63, 0x6f, 0x72, 0x65, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x63, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, + 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, 0x31, + 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, + 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, + 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, + 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, + 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, + 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, + 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, + 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, + 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, + 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x72, 0x2c, + 0x20, 0x73, 0x70, 0x61, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x20, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, + 0x72, 0x61, 0x6c, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x2e, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x62, 0x72, + 0x3a, 0x20, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x6e, + 0x65, 0x20, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x72, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x62, 0x72, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, + 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x45, 0x4d, 0x50, 0x54, 0x59, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x72, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x62, 0x72, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, + 0x62, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, + 0x62, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x62, 0x72, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x62, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, + 0x25, 0x62, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x72, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x70, 0x61, + 0x6e, 0x3a, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x20, 0x69, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, + 0x6e, 0x65, 0x72, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, + 0x70, 0x61, 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, + 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, + 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x22, 0x73, 0x70, 0x61, 0x6e, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x73, 0x70, + 0x61, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, + 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x73, 0x70, 0x61, 0x6e, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x70, 0x61, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, + 0x6e, 0x6c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, + 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, 0x68, 0x72, 0x61, + 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, 0x68, + 0x72, 0x61, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, 0x68, 0x72, + 0x61, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x20, 0x50, 0x68, 0x72, 0x61, 0x73, 0x61, 0x6c, 0x20, 0x31, 0x2e, + 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, 0x68, 0x72, 0x61, 0x73, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x50, 0x68, + 0x72, 0x61, 0x73, 0x61, 0x6c, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, 0x68, 0x72, 0x61, + 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, + 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, + 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, + 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, + 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, + 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, + 0x6e, 0x6c, 0x70, 0x68, 0x72, 0x61, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, + 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, + 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, + 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x50, 0x68, + 0x72, 0x61, 0x73, 0x61, 0x6c, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, + 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, + 0x6c, 0x70, 0x68, 0x72, 0x61, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x50, 0x68, 0x72, 0x61, 0x73, 0x61, 0x6c, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x62, + 0x62, 0x72, 0x2c, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x2c, + 0x20, 0x63, 0x69, 0x74, 0x65, 0x2c, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x2c, + 0x20, 0x64, 0x66, 0x6e, 0x2c, 0x20, 0x65, 0x6d, 0x2c, 0x20, 0x6b, 0x62, + 0x64, 0x2c, 0x20, 0x71, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x2c, 0x20, + 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x2c, 0x20, 0x76, 0x61, 0x72, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, + 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x69, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x70, + 0x68, 0x72, 0x61, 0x73, 0x61, 0x6c, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, + 0x70, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x62, 0x62, 0x72, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x61, 0x62, 0x62, 0x72, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x61, 0x62, 0x62, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, + 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, + 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x61, 0x62, 0x62, 0x72, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x22, 0x61, 0x62, 0x62, 0x72, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, + 0x61, 0x62, 0x62, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, + 0x20, 0x25, 0x61, 0x62, 0x62, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x62, 0x62, 0x72, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x61, 0x62, 0x62, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x61, 0x62, 0x62, 0x72, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x61, 0x62, + 0x62, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x62, + 0x62, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, + 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x63, 0x72, 0x6f, + 0x6e, 0x79, 0x6d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, + 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x20, 0x25, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x61, 0x63, 0x72, 0x6f, 0x6e, + 0x79, 0x6d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x61, 0x63, + 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, + 0x54, 0x20, 0x25, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, + 0x6d, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x69, 0x74, 0x65, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x63, + 0x69, 0x74, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x63, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, + 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, + 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x63, 0x69, 0x74, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x22, 0x63, 0x69, 0x74, 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x63, 0x69, + 0x74, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, + 0x63, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x63, 0x69, 0x74, 0x65, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x63, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x63, 0x69, 0x74, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x63, 0x69, 0x74, 0x65, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x69, 0x74, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x63, 0x6f, + 0x64, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x22, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x63, 0x6f, 0x64, + 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x63, + 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, + 0x6f, 0x64, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x63, 0x6f, 0x64, 0x65, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x64, 0x66, 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x64, 0x66, 0x6e, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x66, 0x6e, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, + 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x66, 0x6e, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x64, 0x66, 0x6e, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, + 0x54, 0x20, 0x25, 0x64, 0x66, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x20, 0x25, 0x64, 0x66, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x66, 0x6e, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x64, 0x66, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x64, 0x66, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x64, 0x66, 0x6e, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x66, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x65, 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x65, 0x6d, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x65, 0x6d, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, + 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, + 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x65, 0x6d, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x65, 0x6d, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x65, 0x6d, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x65, 0x6d, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x65, + 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x65, 0x6d, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x65, 0x6d, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x65, 0x6d, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x65, 0x6d, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x6b, 0x62, 0x64, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6b, 0x62, 0x64, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6b, 0x62, 0x64, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, + 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, + 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6b, 0x62, 0x64, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x6b, 0x62, 0x64, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x25, 0x6b, 0x62, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, + 0x20, 0x25, 0x6b, 0x62, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6b, 0x62, 0x64, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x6b, 0x62, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6b, 0x62, 0x64, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6b, 0x62, 0x64, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6b, 0x62, 0x64, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x71, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x71, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x71, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, + 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x71, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x71, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x20, 0x25, 0x71, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, + 0x25, 0x71, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x71, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x71, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x71, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x71, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x69, + 0x74, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x71, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x61, + 0x6d, 0x70, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x73, 0x61, 0x6d, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x73, 0x61, 0x6d, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x22, 0x73, 0x61, 0x6d, 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x73, 0x61, 0x6d, + 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x73, + 0x61, 0x6d, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, + 0x61, 0x6d, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x61, 0x6d, 0x70, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x73, 0x61, 0x6d, 0x70, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, + 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, + 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, + 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x73, 0x74, 0x72, + 0x6f, 0x6e, 0x67, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x73, 0x74, + 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x74, + 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x25, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x76, 0x61, 0x72, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x76, 0x61, 0x72, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x76, 0x61, 0x72, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, + 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, + 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x76, 0x61, 0x72, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x76, 0x61, 0x72, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x20, 0x25, 0x76, 0x61, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x20, 0x25, 0x76, 0x61, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x76, 0x61, 0x72, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x76, 0x61, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x76, 0x61, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x76, 0x61, 0x72, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x76, 0x61, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, + 0x68, 0x72, 0x61, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x62, 0x6c, 0x6b, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x20, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, 0x31, + 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, + 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, + 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, + 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, + 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, + 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, + 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, + 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, + 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, + 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, + 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x76, 0x2c, 0x20, + 0x70, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, + 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, + 0x65, 0x69, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, 0x6d, + 0x61, 0x72, 0x6b, 0x75, 0x70, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, + 0x69, 0x76, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x64, 0x69, 0x76, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x69, 0x76, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, + 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, + 0x46, 0x6c, 0x6f, 0x77, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, + 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x64, 0x69, 0x76, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x22, 0x64, 0x69, 0x76, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x64, 0x69, 0x76, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x64, 0x69, + 0x76, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x64, 0x69, 0x76, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x69, 0x76, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x64, 0x69, 0x76, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x25, 0x64, 0x69, 0x76, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x64, 0x69, 0x76, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x70, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, + 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, + 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x70, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x70, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x70, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x25, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x70, + 0x68, 0x72, 0x61, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, + 0x6b, 0x70, 0x68, 0x72, 0x61, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, + 0x70, 0x68, 0x72, 0x61, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, + 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x20, 0x50, 0x68, 0x72, 0x61, 0x73, 0x61, 0x6c, 0x20, + 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x70, 0x68, 0x72, 0x61, 0x73, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x50, + 0x68, 0x72, 0x61, 0x73, 0x61, 0x6c, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x70, 0x68, + 0x72, 0x61, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, + 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, + 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, + 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, + 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, + 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x62, 0x6c, 0x6b, 0x70, 0x68, 0x72, 0x61, 0x73, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, + 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, + 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, + 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, + 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, + 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x50, + 0x68, 0x72, 0x61, 0x73, 0x61, 0x6c, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, + 0x6c, 0x6b, 0x70, 0x68, 0x72, 0x61, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, + 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x50, 0x68, 0x72, 0x61, 0x73, 0x61, 0x6c, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x2c, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x2c, 0x20, + 0x68, 0x31, 0x2c, 0x20, 0x68, 0x32, 0x2c, 0x20, 0x68, 0x33, 0x2c, 0x20, + 0x68, 0x34, 0x2c, 0x20, 0x68, 0x35, 0x2c, 0x20, 0x68, 0x36, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, + 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x70, 0x68, 0x72, + 0x61, 0x73, 0x61, 0x6c, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x2e, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, + 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x22, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x25, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x25, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, + 0x74, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, + 0x74, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x28, 0x20, 0x25, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x6d, 0x69, + 0x78, 0x3b, 0x20, 0x29, 0x2b, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, + 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, + 0x74, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x69, 0x74, 0x65, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x71, 0x75, 0x6f, 0x74, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x72, 0x65, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x70, 0x72, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x70, 0x72, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, + 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x50, 0x68, 0x72, 0x61, 0x73, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7c, 0x20, 0x25, 0x74, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x69, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, + 0x38, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7c, 0x20, 0x25, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x6d, 0x61, 0x70, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x65, 0x78, + 0x74, 0x72, 0x61, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x72, + 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x70, 0x72, + 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x70, 0x72, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x20, 0x25, 0x70, 0x72, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x70, 0x72, 0x65, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x70, 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x70, 0x72, 0x65, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x70, 0x72, 0x65, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x20, 0x20, + 0x20, 0x28, 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x20, + 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x46, 0x49, 0x58, 0x45, 0x44, 0x20, 0x27, 0x70, 0x72, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x27, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x70, 0x72, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x20, 0x48, 0x65, 0x61, 0x64, + 0x69, 0x6e, 0x67, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, + 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x68, 0x31, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x31, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x31, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x68, 0x31, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x68, + 0x31, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x48, + 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x31, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x68, 0x31, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x31, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, + 0x53, 0x54, 0x20, 0x25, 0x68, 0x31, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x68, 0x31, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x32, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x68, 0x32, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x68, 0x32, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x68, + 0x32, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x68, 0x32, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x20, 0x25, 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, + 0x32, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x32, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x32, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x68, 0x32, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x32, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x68, 0x33, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x33, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x33, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x68, 0x33, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x68, 0x33, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x48, 0x65, 0x61, + 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x68, 0x33, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x33, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x68, 0x33, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x25, 0x68, 0x33, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x68, 0x33, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x34, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x34, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x34, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x68, 0x34, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x20, 0x25, 0x68, 0x34, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, + 0x20, 0x25, 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x34, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x68, 0x34, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x34, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x68, 0x34, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x34, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, + 0x35, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x68, 0x35, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x68, 0x35, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x22, 0x68, 0x35, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x68, 0x35, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x48, 0x65, 0x61, 0x64, 0x69, + 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x68, 0x35, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x35, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x68, 0x35, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, + 0x68, 0x35, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x35, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x68, 0x36, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x36, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x36, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x68, 0x36, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, + 0x68, 0x36, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, + 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x36, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x68, 0x36, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x36, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x25, 0x68, 0x36, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, + 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x68, 0x36, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x70, 0x68, 0x72, 0x61, 0x73, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x65, + 0x78, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x48, + 0x79, 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x28, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x68, 0x79, + 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6d, + 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x48, 0x79, 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x48, 0x79, 0x70, 0x65, 0x72, 0x74, 0x65, + 0x78, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, + 0x74, 0x65, 0x78, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, + 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, + 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, + 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, + 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, + 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, + 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, + 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, + 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x48, 0x79, 0x70, 0x65, 0x72, + 0x74, 0x65, 0x78, 0x74, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, + 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x68, 0x79, 0x70, + 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x48, 0x79, + 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x20, 0x28, 0x27, 0x61, + 0x27, 0x29, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x6f, + 0x66, 0x20, 0x61, 0x20, 0x68, 0x79, 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, + 0x74, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, + 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6f, 0x72, 0x20, 0x6c, 0x69, 0x6e, + 0x6b, 0x20, 0x27, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x27, 0x29, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x76, 0x69, 0x61, 0x20, 0x69, 0x74, 0x73, 0x20, 0x27, 0x69, + 0x64, 0x27, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x61, 0x74, 0x68, 0x65, 0x72, + 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x27, 0x6e, + 0x61, 0x6d, 0x65, 0x27, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x61, 0x73, 0x20, 0x77, 0x61, 0x73, 0x20, 0x75, 0x73, + 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x20, + 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x61, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x4e, 0x6f, 0x41, 0x6e, 0x63, + 0x68, 0x6f, 0x72, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, + 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, + 0x61, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x20, 0x25, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x61, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x61, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x61, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x68, 0x72, 0x65, 0x66, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x68, 0x61, 0x72, 0x73, + 0x65, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x68, 0x72, 0x65, 0x66, 0x6c, 0x61, 0x6e, 0x67, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x43, 0x6f, 0x64, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x6c, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x69, + 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x76, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x73, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x6b, 0x65, 0x79, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x68, 0x61, 0x72, + 0x61, 0x63, 0x74, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x61, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x68, 0x79, 0x70, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x28, 0x72, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x64, 0x29, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, + 0x73, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x73, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x4c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, + 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, + 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, + 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, + 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, + 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, + 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, + 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, + 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x2d, 0x31, 0x2e, 0x6d, + 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, + 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, + 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, + 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, + 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, + 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x31, 0x2e, + 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4c, 0x69, + 0x73, 0x74, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x64, 0x6c, 0x2c, 0x20, 0x64, 0x74, 0x2c, 0x20, 0x64, 0x64, 0x2c, + 0x20, 0x6f, 0x6c, 0x2c, 0x20, 0x75, 0x6c, 0x2c, 0x20, 0x6c, 0x69, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x2d, + 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, + 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x6c, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x22, 0x64, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x74, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x64, 0x74, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x64, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x64, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, 0x6c, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x22, 0x6f, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x75, 0x6c, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x75, 0x6c, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6c, 0x69, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x6c, 0x69, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x64, 0x6c, 0x3a, 0x20, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x6c, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x64, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x64, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, + 0x20, 0x22, 0x28, 0x20, 0x25, 0x64, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x64, 0x64, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x2b, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x64, 0x6c, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x64, 0x6c, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x64, + 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x64, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x64, 0x6c, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x74, 0x3a, 0x20, 0x44, + 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x54, 0x65, + 0x72, 0x6d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x64, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x64, 0x74, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x74, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, + 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, + 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x64, 0x74, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x64, 0x74, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x74, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x64, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x64, 0x74, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x64, 0x74, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x64, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x64, 0x3a, 0x20, 0x44, 0x65, 0x66, 0x69, + 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x64, 0x64, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x64, 0x64, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x64, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, + 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x46, 0x6c, + 0x6f, 0x77, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x25, 0x64, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, + 0x25, 0x64, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x64, 0x64, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x64, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x64, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, + 0x25, 0x64, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x64, + 0x64, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6f, + 0x6c, 0x3a, 0x20, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x4c, + 0x69, 0x73, 0x74, 0x20, 0x28, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, + 0x64, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x29, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, 0x6c, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6f, + 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, + 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x28, 0x20, 0x25, 0x6c, 0x69, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x29, 0x2b, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x6f, 0x6c, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x6f, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x6c, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6f, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6f, 0x6c, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6f, 0x6c, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x75, 0x6c, 0x3a, 0x20, 0x55, 0x6e, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x28, + 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, + 0x73, 0x29, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x75, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x75, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x75, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x6c, 0x69, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x2b, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x75, + 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x75, + 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x75, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x75, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x75, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x75, + 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x75, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x69, 0x3a, + 0x20, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x49, 0x74, 0x65, 0x6d, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x6c, 0x69, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6c, 0x69, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6c, 0x69, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, + 0x7c, 0x20, 0x25, 0x46, 0x6c, 0x6f, 0x77, 0x2e, 0x6d, 0x69, 0x78, 0x3b, + 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x6c, 0x69, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x6c, 0x69, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6c, 0x69, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6c, 0x69, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6c, 0x69, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x73, 0x74, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x64, 0x69, 0x74, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x65, 0x64, 0x69, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x65, 0x64, 0x69, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x65, 0x64, 0x69, 0x74, + 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6e, 0x67, + 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x31, 0x2e, + 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x65, 0x64, 0x69, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x45, 0x64, 0x69, + 0x74, 0x69, 0x6e, 0x67, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, + 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x65, + 0x64, 0x69, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, + 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, + 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, + 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, + 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, + 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x65, 0x64, 0x69, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, + 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, + 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, + 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, + 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x61, 0x72, + 0x6b, 0x75, 0x70, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x65, 0x64, 0x69, 0x74, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x20, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x73, 0x2c, 0x20, 0x64, + 0x65, 0x6c, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x75, + 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, + 0x61, 0x74, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6e, 0x73, + 0x65, 0x72, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x64, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x20, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x20, 0x65, 0x64, 0x69, 0x74, + 0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x69, 0x6e, 0x73, 0x3a, 0x20, 0x49, 0x6e, 0x73, 0x65, 0x72, + 0x74, 0x65, 0x64, 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x6e, + 0x73, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x69, 0x6e, 0x73, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x69, 0x6e, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, + 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x46, + 0x6c, 0x6f, 0x77, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, + 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x69, 0x6e, 0x73, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x22, 0x69, 0x6e, 0x73, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x69, 0x6e, 0x73, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x69, 0x6e, 0x73, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x69, 0x6e, 0x73, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x6e, 0x73, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x69, 0x6e, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, + 0x25, 0x69, 0x6e, 0x73, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x69, 0x74, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x61, 0x74, + 0x65, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x44, + 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x6e, + 0x73, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x64, + 0x65, 0x6c, 0x3a, 0x20, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x20, + 0x54, 0x65, 0x78, 0x74, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, 0x65, 0x6c, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x64, 0x65, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x64, 0x65, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x46, 0x6c, 0x6f, 0x77, + 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x64, + 0x65, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x64, + 0x65, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x20, 0x25, 0x64, 0x65, 0x6c, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x64, 0x65, 0x6c, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x65, 0x6c, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x64, 0x65, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x64, 0x65, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x64, 0x65, + 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x69, 0x74, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x44, 0x61, 0x74, 0x65, + 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x65, 0x6c, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x65, 0x64, 0x69, + 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, 0x49, + 0x44, 0x49, 0x20, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x64, 0x6f, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x25, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x62, 0x69, 0x64, 0x69, 0x3b, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, + 0x64, 0x6f, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x64, 0x6f, 0x2e, 0x6d, 0x6f, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x42, 0x49, 0x44, 0x49, 0x20, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, + 0x64, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x31, + 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x62, 0x64, 0x6f, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x44, 0x4f, + 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, + 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, + 0x64, 0x6f, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, + 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, + 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x62, 0x64, 0x6f, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, + 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, + 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, + 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, + 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, + 0x44, 0x4f, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x31, + 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x62, 0x64, 0x6f, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, 0x69, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, + 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x20, 0x28, 0x62, 0x64, + 0x6f, 0x29, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x27, 0x62, 0x64, 0x6f, 0x27, 0x2c, 0x20, 0x75, 0x73, + 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, + 0x64, 0x65, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x55, 0x6e, 0x69, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x62, 0x69, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x61, 0x6c, + 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x66, 0x72, 0x61, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x65, + 0x78, 0x74, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x44, 0x45, + 0x50, 0x45, 0x4e, 0x44, 0x45, 0x4e, 0x43, 0x49, 0x45, 0x53, 0x3a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x6c, 0x69, 0x65, 0x73, 0x20, + 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x20, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x62, 0x69, 0x64, 0x69, 0x3b, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x61, 0x73, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x2e, 0x20, 0x42, 0x69, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x73, + 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, + 0x64, 0x65, 0x73, 0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x62, 0x64, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x27, 0x64, 0x69, 0x72, 0x27, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, + 0x64, 0x6f, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x62, 0x64, 0x6f, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x64, 0x6f, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, + 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, + 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x64, 0x6f, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x22, 0x62, 0x64, 0x6f, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x62, + 0x64, 0x6f, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, + 0x62, 0x64, 0x6f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x62, 0x64, 0x6f, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x64, + 0x6f, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x62, 0x64, 0x6f, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, + 0x53, 0x54, 0x20, 0x25, 0x62, 0x64, 0x6f, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, + 0x67, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x61, 0x6e, 0x67, 0x75, + 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, + 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, + 0x20, 0x6c, 0x74, 0x72, 0x20, 0x7c, 0x20, 0x72, 0x74, 0x6c, 0x20, 0x29, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0a, 0x3e, 0x0a, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, + 0x64, 0x6f, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, + 0x75, 0x62, 0x79, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x73, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x20, 0x22, 0x25, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x72, 0x75, 0x62, 0x79, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x72, 0x75, 0x62, 0x79, 0x2e, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x72, 0x75, 0x62, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, + 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x52, 0x75, + 0x62, 0x79, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x72, 0x75, + 0x62, 0x79, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x72, 0x75, 0x62, + 0x79, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x52, 0x75, 0x62, 0x79, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, + 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x72, 0x75, 0x62, 0x79, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, + 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x31, 0x39, 0x39, 0x39, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, + 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, + 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x72, 0x75, + 0x62, 0x79, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, + 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, + 0x33, 0x20, 0x32, 0x33, 0x3a, 0x31, 0x34, 0x3a, 0x33, 0x33, 0x20, 0x61, + 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x52, 0x75, 0x62, 0x79, 0x20, 0x41, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x53, 0x70, 0x65, 0x63, 0x69, + 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x54, 0x52, 0x2f, 0x72, 0x75, 0x62, 0x79, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, + 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x52, 0x75, 0x62, 0x79, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x54, 0x52, 0x2f, 0x72, 0x75, 0x62, 0x79, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x72, 0x75, 0x62, 0x79, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x52, 0x75, 0x62, 0x79, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x75, 0x62, 0x79, 0x2c, 0x20, 0x72, + 0x62, 0x63, 0x2c, 0x20, 0x72, 0x74, 0x63, 0x2c, 0x20, 0x72, 0x62, 0x2c, + 0x20, 0x72, 0x74, 0x2c, 0x20, 0x72, 0x70, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, + 0x64, 0x20, 0x74, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x75, + 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x72, 0x75, 0x62, 0x79, 0x20, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, + 0x72, 0x6b, 0x75, 0x70, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, + 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x3a, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x75, 0x62, + 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x72, 0x75, + 0x62, 0x79, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x62, 0x63, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x22, 0x72, 0x62, 0x63, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, + 0x74, 0x63, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x72, + 0x74, 0x63, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x72, 0x62, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x74, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x72, 0x74, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x72, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, + 0x72, 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x72, 0x70, 0x20, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, + 0x62, 0x79, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x66, 0x61, 0x6c, 0x6c, + 0x62, 0x61, 0x63, 0x6b, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x66, 0x61, 0x6c, + 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x2e, 0x6d, 0x61, 0x6e, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x79, 0x20, 0x22, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x20, 0x72, 0x75, 0x62, 0x79, 0x20, 0x69, 0x73, + 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, 0x62, 0x79, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3b, 0x20, 0x69, 0x74, + 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x64, 0x65, 0x6e, + 0x20, 0x62, 0x79, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x67, 0x6e, + 0x6f, 0x72, 0x65, 0x20, 0x69, 0x74, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x52, + 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, + 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x75, 0x62, + 0x79, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x66, + 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x66, 0x61, 0x6c, 0x6c, 0x62, + 0x61, 0x63, 0x6b, 0x2e, 0x6d, 0x61, 0x6e, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x79, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x72, 0x62, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, 0x72, 0x70, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, 0x72, 0x74, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, 0x72, 0x70, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x22, 0x0a, 0x3e, 0x0a, + 0x5d, 0x5d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x72, 0x62, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x28, 0x20, 0x25, 0x72, + 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x28, + 0x20, 0x25, 0x72, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, + 0x20, 0x25, 0x72, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, + 0x20, 0x25, 0x72, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, + 0x29, 0x20, 0x29, 0x20, 0x29, 0x22, 0x0a, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x2e, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x22, 0x28, 0x20, 0x25, + 0x72, 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, + 0x72, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x52, 0x75, 0x62, 0x79, + 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x52, 0x75, + 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x7c, 0x20, 0x28, 0x20, 0x25, 0x72, 0x62, 0x63, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, 0x72, 0x74, 0x63, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, 0x72, 0x74, 0x63, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x3f, 0x20, 0x29, 0x22, 0x0a, + 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x20, 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, + 0x62, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x74, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x72, + 0x65, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x74, + 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, + 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x73, 0x20, + 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, + 0x70, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x75, 0x74, 0x20, 0x69, 0x74, 0x20, + 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x72, 0x75, 0x62, 0x79, 0x20, + 0x64, 0x65, 0x73, 0x63, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x20, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x54, 0x68, 0x65, + 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x25, 0x4e, 0x6f, + 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, + 0x64, 0x20, 0x74, 0x6f, 0x20, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x6f, 0x73, 0x65, + 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x6d, 0x69, 0x6e, + 0x69, 0x6d, 0x75, 0x6d, 0x20, 0x65, 0x66, 0x66, 0x6f, 0x72, 0x74, 0x2e, + 0x20, 0x20, 0x49, 0x74, 0x27, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x64, 0x20, 0x61, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x27, + 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x29, 0x27, + 0x20, 0x62, 0x79, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x4e, 0x6f, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, + 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x29, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x72, 0x20, + 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x64, 0x69, 0x67, 0x69, 0x74, 0x73, 0x20, + 0x28, 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x29, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x20, 0x22, 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x75, 0x62, 0x79, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x72, 0x75, 0x62, 0x79, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x72, 0x75, + 0x62, 0x79, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x72, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x52, 0x75, + 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x3b, 0x20, 0x25, 0x52, 0x75, 0x62, 0x79, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x3b, 0x20, 0x29, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x72, 0x75, + 0x62, 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, + 0x72, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x72, 0x75, 0x62, 0x79, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x72, 0x62, 0x63, 0x20, 0x28, 0x72, 0x75, 0x62, 0x79, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x29, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x62, 0x63, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x72, 0x62, 0x63, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x72, 0x62, 0x63, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x25, 0x72, + 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x29, 0x2b, 0x22, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x25, 0x72, 0x62, 0x63, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, + 0x20, 0x25, 0x72, 0x62, 0x63, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x62, 0x63, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x74, 0x63, 0x20, 0x28, 0x72, + 0x75, 0x62, 0x79, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x63, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x72, 0x74, 0x63, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x72, 0x74, 0x63, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x74, 0x63, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x28, 0x25, 0x72, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x29, 0x2b, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x72, 0x74, 0x63, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x72, 0x74, 0x63, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x74, + 0x63, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x72, 0x62, 0x20, 0x28, 0x72, 0x75, 0x62, 0x79, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x29, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, + 0x62, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x72, 0x62, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x72, 0x62, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x75, 0x73, + 0x65, 0x73, 0x20, 0x25, 0x4e, 0x6f, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x61, 0x73, 0x20, 0x69, + 0x74, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, + 0x68, 0x69, 0x63, 0x68, 0x20, 0x69, 0x73, 0x20, 0x27, 0x28, 0x20, 0x23, + 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x29, 0x27, 0x20, 0x62, 0x79, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x20, 0x49, 0x74, + 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x6f, 0x76, 0x65, 0x72, + 0x72, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x62, 0x79, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x69, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, + 0x66, 0x20, 0x69, 0x74, 0x73, 0x20, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x6c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x69, 0x74, + 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, + 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x75, 0x62, 0x79, 0x20, 0x64, 0x65, 0x73, 0x63, 0x65, 0x6e, + 0x64, 0x65, 0x6e, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x62, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x20, 0x22, 0x25, 0x4e, 0x6f, 0x52, 0x75, 0x62, + 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x25, 0x72, 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, + 0x25, 0x72, 0x62, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x72, 0x62, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x72, 0x74, 0x20, 0x28, 0x72, 0x75, 0x62, 0x79, 0x20, + 0x74, 0x65, 0x78, 0x74, 0x29, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, + 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x72, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x72, 0x74, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x75, 0x73, + 0x65, 0x73, 0x20, 0x25, 0x4e, 0x6f, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x61, 0x73, 0x20, 0x69, + 0x74, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, + 0x68, 0x69, 0x63, 0x68, 0x20, 0x69, 0x73, 0x20, 0x27, 0x28, 0x20, 0x23, + 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x29, 0x27, 0x20, 0x62, 0x79, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x20, 0x49, 0x74, + 0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x6f, 0x76, 0x65, 0x72, + 0x72, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x62, 0x79, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x69, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, + 0x66, 0x20, 0x69, 0x74, 0x73, 0x20, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, + 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x6c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x69, 0x74, + 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, + 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x75, 0x62, 0x79, 0x20, 0x64, 0x65, 0x73, 0x63, 0x65, 0x6e, + 0x64, 0x65, 0x6e, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x20, 0x22, 0x25, 0x4e, 0x6f, 0x52, 0x75, 0x62, + 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x22, 0x20, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x20, 0x25, 0x72, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, + 0x20, 0x25, 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x72, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x62, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x69, 0x73, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x20, 0x72, 0x75, 0x62, 0x79, 0x20, 0x6f, 0x6e, + 0x6c, 0x79, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x74, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x72, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, + 0x72, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x72, 0x62, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x31, 0x22, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x72, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x70, 0x20, 0x28, 0x72, 0x75, 0x62, 0x79, + 0x20, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69, 0x73, + 0x29, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x66, 0x61, + 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x72, 0x70, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x72, 0x70, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, + 0x54, 0x41, 0x20, 0x29, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x72, 0x70, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x72, 0x70, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x70, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x52, 0x75, 0x62, 0x79, 0x20, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x20, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x66, 0x6f, + 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x61, 0x6e, + 0x20, 0x65, 0x61, 0x73, 0x79, 0x20, 0x77, 0x61, 0x79, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, + 0x75, 0x62, 0x79, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x73, 0x65, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x72, 0x65, 0x20, 0x69, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x75, 0x62, + 0x79, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, + 0x72, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, + 0x74, 0x6f, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x72, + 0x6b, 0x75, 0x70, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x2e, 0x20, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, + 0x6c, 0x65, 0x2c, 0x20, 0x69, 0x66, 0x20, 0x61, 0x20, 0x6d, 0x61, 0x72, + 0x6b, 0x75, 0x70, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x61, 0x73, 0x20, 0x61, + 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x25, 0x61, 0x74, 0x74, 0x72, 0x73, + 0x3b, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x61, + 0x64, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x6f, 0x73, + 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x20, 0x62, 0x79, 0x20, 0x6a, 0x75, 0x73, 0x74, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, + 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x20, 0x20, 0x22, 0x25, 0x61, 0x74, 0x74, 0x72, 0x73, 0x3b, 0x22, + 0x20, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x65, 0x66, + 0x6f, 0x72, 0x65, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, + 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x52, 0x75, 0x62, 0x79, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x52, + 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x20, 0x20, 0x22, 0x49, 0x47, + 0x4e, 0x4f, 0x52, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x52, 0x75, + 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x20, 0x20, 0x22, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x72, 0x75, 0x62, 0x79, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x72, + 0x75, 0x62, 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, 0x62, 0x63, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x52, 0x62, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x52, 0x62, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, + 0x72, 0x62, 0x63, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x52, 0x62, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, 0x74, + 0x63, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x52, 0x74, 0x63, 0x2e, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x52, 0x74, 0x63, 0x2e, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, + 0x53, 0x54, 0x20, 0x25, 0x72, 0x74, 0x63, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x52, 0x75, + 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x52, 0x74, 0x63, 0x2e, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, 0x62, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x52, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x52, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x72, 0x62, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x52, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, 0x74, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x52, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x52, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x72, 0x74, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x52, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x52, 0x75, 0x62, 0x79, 0x2e, + 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x72, 0x70, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x52, 0x70, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x52, + 0x70, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x72, 0x70, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x52, + 0x75, 0x62, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x52, 0x70, 0x2e, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x5d, 0x5d, + 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x72, 0x75, 0x62, 0x79, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x70, 0x72, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, + 0x72, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x72, 0x65, 0x73, 0x2e, 0x6d, + 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x72, 0x65, 0x73, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x72, 0x65, 0x73, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, + 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, + 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, + 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x72, 0x65, 0x73, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, + 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, + 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, + 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x30, 0x2f, + 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x70, 0x72, 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, + 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x72, 0x65, 0x73, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, + 0x68, 0x65, 0x69, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x70, 0x72, 0x65, 0x73, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x72, 0x65, 0x6c, + 0x61, 0x74, 0x65, 0x64, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x2e, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, + 0x6e, 0x6c, 0x70, 0x72, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x69, 0x6e, 0x6c, 0x70, 0x72, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, + 0x6c, 0x70, 0x72, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, + 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, + 0x6c, 0x70, 0x72, 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x69, 0x6e, 0x6c, 0x70, 0x72, 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, + 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, + 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, + 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, + 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, + 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, + 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, + 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, + 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, 0x72, 0x65, 0x73, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, + 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, + 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, + 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, + 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, + 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, + 0x72, 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, + 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x49, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, + 0x2c, 0x20, 0x62, 0x69, 0x67, 0x2c, 0x20, 0x69, 0x2c, 0x20, 0x73, 0x6d, + 0x61, 0x6c, 0x6c, 0x2c, 0x20, 0x73, 0x75, 0x62, 0x2c, 0x20, 0x73, 0x75, + 0x70, 0x2c, 0x20, 0x74, 0x74, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, + 0x74, 0x6f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x6d, 0x61, 0x72, 0x6b, + 0x75, 0x70, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x62, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, + 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, + 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x62, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x62, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x62, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x62, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x62, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x25, 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x62, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x69, 0x67, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x62, 0x69, 0x67, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x62, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x62, 0x69, 0x67, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x62, 0x69, 0x67, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x62, 0x69, 0x67, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x62, 0x69, 0x67, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, + 0x69, 0x67, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x69, 0x67, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x62, + 0x69, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, + 0x62, 0x69, 0x67, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, + 0x69, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x69, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, + 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, + 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x69, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x69, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x69, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x69, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x69, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, + 0x54, 0x20, 0x25, 0x69, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x69, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, + 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, + 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x73, 0x6d, 0x61, 0x6c, 0x6c, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, + 0x54, 0x20, 0x25, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, + 0x6d, 0x61, 0x6c, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x6d, 0x61, 0x6c, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x73, 0x75, 0x62, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x75, 0x62, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x75, + 0x62, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, + 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, + 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x75, + 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x73, 0x75, + 0x62, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x73, 0x75, 0x62, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x20, 0x25, 0x73, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x75, 0x62, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x73, 0x75, 0x62, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x75, 0x62, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x73, 0x75, 0x62, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x75, 0x62, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x73, 0x75, 0x70, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x75, 0x70, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x75, 0x70, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, + 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x75, 0x70, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x73, 0x75, 0x70, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, + 0x54, 0x20, 0x25, 0x73, 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x20, 0x25, 0x73, 0x75, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x75, 0x70, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x73, 0x75, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x75, 0x70, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x73, 0x75, 0x70, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x75, 0x70, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x74, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x74, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x74, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, + 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, + 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, + 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x74, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x74, 0x74, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x74, 0x74, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, + 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x74, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, 0x74, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x74, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6e, 0x6c, 0x70, + 0x72, 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x62, 0x6c, 0x6b, 0x70, 0x72, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x62, 0x6c, 0x6b, 0x70, 0x72, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, + 0x6c, 0x6b, 0x70, 0x72, 0x65, 0x73, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, + 0x6b, 0x70, 0x72, 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x62, 0x6c, 0x6b, 0x70, 0x72, 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, + 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, + 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, + 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, + 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, + 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, + 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, + 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, + 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x70, 0x72, 0x65, 0x73, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, + 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, + 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, + 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, + 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, + 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x6c, 0x6f, 0x63, + 0x6b, 0x20, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, + 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, + 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x70, 0x72, + 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, + 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x20, + 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x72, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, + 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x70, 0x72, + 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x68, 0x72, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x72, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x68, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x68, 0x72, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x68, 0x72, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x68, 0x72, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x72, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x68, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x72, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x68, 0x72, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x68, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x6c, 0x6b, 0x70, 0x72, 0x65, 0x73, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x72, + 0x65, 0x73, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4c, + 0x69, 0x6e, 0x6b, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, + 0x6e, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x6e, 0x6b, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x6e, 0x6b, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6c, 0x69, 0x6e, 0x6b, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, + 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, + 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, + 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, + 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, + 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, + 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, + 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, + 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x6e, 0x6b, 0x2d, 0x31, 0x2e, 0x6d, + 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, + 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, + 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, + 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, + 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, + 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, + 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, 0x6e, + 0x6b, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, + 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x69, 0x74, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x68, + 0x69, 0x63, 0x68, 0x20, 0x63, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x28, 0x69, + 0x6e, 0x20, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x6c, 0x65, 0x29, + 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x6c, 0x69, + 0x6e, 0x6b, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, + 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x20, 0x73, 0x75, 0x63, 0x68, 0x20, + 0x61, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x29, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x74, + 0x6f, 0x6f, 0x6c, 0x62, 0x61, 0x72, 0x73, 0x2f, 0x6d, 0x65, 0x6e, 0x75, + 0x73, 0x2c, 0x20, 0x65, 0x2e, 0x67, 0x2e, 0x20, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x72, 0x65, + 0x76, 0x69, 0x6f, 0x75, 0x73, 0x2c, 0x20, 0x6e, 0x65, 0x78, 0x74, 0x2c, + 0x20, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2c, 0x20, 0x65, 0x6e, 0x64, 0x2c, + 0x20, 0x68, 0x65, 0x6c, 0x70, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, + 0x29, 0x20, 0x74, 0x6f, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x74, 0x6f, + 0x20, 0x61, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x20, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x73, 0x68, 0x65, 0x65, 0x74, 0x20, + 0x28, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, + 0x68, 0x65, 0x65, 0x74, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x29, 0x20, 0x74, 0x6f, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x61, + 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x28, 0x72, 0x65, 0x6c, 0x3d, 0x22, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x64, 0x29, 0x20, 0x62, 0x79, 0x20, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x63, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, + 0x66, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x6e, 0x6f, 0x64, 0x65, 0x73, + 0x20, 0x61, 0x72, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, + 0x74, 0x6f, 0x20, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x65, 0x29, 0x20, 0x74, 0x6f, 0x20, 0x6d, 0x61, 0x6b, 0x65, + 0x20, 0x61, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x74, 0x6f, 0x20, 0x61, + 0x20, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, + 0x69, 0x73, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x2e, 0x67, 0x2e, + 0x20, 0x61, 0x20, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x20, 0x6f, 0x72, 0x20, 0x70, 0x64, 0x66, 0x20, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x61, + 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x22, 0x20, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x3d, 0x22, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x22, 0x29, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, + 0x69, 0x6e, 0x6b, 0x3a, 0x20, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x2d, 0x49, + 0x6e, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x20, 0x4c, + 0x69, 0x6e, 0x6b, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x22, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x6c, 0x69, + 0x6e, 0x6b, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, + 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6c, 0x69, 0x6e, 0x6b, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x72, 0x65, 0x66, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x72, + 0x65, 0x66, 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x6c, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x69, + 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x76, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x73, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x44, 0x65, 0x73, 0x63, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x69, + 0x6e, 0x6b, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x44, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x65, 0x74, 0x61, + 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x65, + 0x74, 0x61, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x65, 0x74, 0x61, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x4d, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x65, 0x74, 0x61, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x4d, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x65, 0x74, 0x61, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, + 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, + 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, + 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x65, 0x74, 0x61, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, + 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, + 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, + 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x4d, 0x65, 0x74, 0x61, 0x69, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x31, + 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6d, 0x65, 0x74, 0x61, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, + 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x4d, + 0x65, 0x74, 0x61, 0x20, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6d, 0x65, 0x74, 0x61, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, + 0x74, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x64, + 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x65, 0x74, + 0x61, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x6d, 0x65, 0x74, 0x61, 0x3a, 0x20, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, + 0x63, 0x20, 0x4d, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6d, 0x65, 0x74, 0x61, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x45, 0x4d, 0x50, 0x54, 0x59, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x6d, 0x65, 0x74, 0x61, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x6d, + 0x65, 0x74, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, + 0x25, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6d, 0x65, 0x74, 0x61, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6d, 0x65, 0x74, + 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, + 0x6c, 0x6e, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, 0x38, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x2d, 0x65, 0x71, 0x75, 0x69, 0x76, + 0x20, 0x20, 0x20, 0x4e, 0x4d, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4e, 0x4d, 0x54, 0x4f, + 0x4b, 0x45, 0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x65, + 0x74, 0x61, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, + 0x61, 0x73, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x61, + 0x73, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x61, 0x73, 0x65, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x42, 0x61, 0x73, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x42, 0x61, 0x73, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, + 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, + 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, + 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, + 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, + 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, + 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, + 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, + 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x2d, 0x31, 0x2e, 0x6d, + 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, + 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, + 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, + 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, + 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, + 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, + 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x42, 0x61, 0x73, 0x65, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, + 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x62, 0x61, 0x73, + 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, + 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, 0x61, 0x73, 0x65, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x62, 0x61, 0x73, 0x65, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x62, 0x61, 0x73, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x69, 0x74, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, + 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x20, 0x61, 0x20, 0x62, 0x61, 0x73, 0x65, 0x20, 0x55, 0x52, 0x49, 0x20, + 0x61, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74, 0x20, 0x77, 0x68, 0x69, 0x63, + 0x68, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, 0x55, + 0x52, 0x49, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x73, + 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x4e, 0x6f, 0x74, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x61, + 0x6c, 0x73, 0x6f, 0x20, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x68, 0x65, + 0x61, 0x64, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, + 0x6f, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x62, 0x61, 0x73, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3a, 0x20, 0x44, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x42, 0x61, 0x73, 0x65, 0x20, 0x55, 0x52, + 0x49, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x45, 0x4d, 0x50, + 0x54, 0x59, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x62, 0x61, 0x73, 0x65, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x25, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x20, 0x25, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x61, 0x73, 0x65, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x62, 0x61, 0x73, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x62, + 0x61, 0x73, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x72, 0x65, 0x66, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, + 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, + 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x28, 0x20, 0x25, 0x48, 0x65, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x73, 0x2e, + 0x6d, 0x69, 0x78, 0x3b, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, + 0x20, 0x28, 0x20, 0x25, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, 0x48, 0x65, 0x61, 0x64, 0x4f, + 0x70, 0x74, 0x73, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x2c, 0x20, 0x28, 0x20, + 0x25, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x2c, 0x20, 0x25, 0x48, 0x65, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x73, 0x2e, + 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x3f, 0x20, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x7c, 0x20, 0x28, 0x20, 0x25, 0x62, 0x61, 0x73, 0x65, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, 0x48, 0x65, + 0x61, 0x64, 0x4f, 0x70, 0x74, 0x73, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x2c, + 0x20, 0x28, 0x20, 0x25, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, 0x48, 0x65, 0x61, 0x64, 0x4f, + 0x70, 0x74, 0x73, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x29, 0x29, + 0x29, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x62, 0x61, 0x73, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, + 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, + 0x67, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, + 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, + 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, + 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, + 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, + 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, + 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, + 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, + 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, + 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, + 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2c, 0x20, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x75, + 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x73, 0x20, 0x61, 0x73, 0x20, 0x77, 0x65, 0x6c, 0x6c, 0x20, 0x61, + 0x73, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x74, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, + 0x72, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f, 0x74, 0x20, + 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x2e, 0x0a, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x3a, 0x20, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6e, 0x67, 0x20, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, + 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x29, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x22, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x20, 0x25, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, + 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, + 0x65, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x68, 0x61, + 0x72, 0x73, 0x65, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x72, 0x63, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, + 0x65, 0x66, 0x65, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x20, 0x64, 0x65, 0x66, 0x65, 0x72, 0x20, 0x29, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x46, 0x49, 0x58, 0x45, 0x44, + 0x20, 0x27, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x27, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x3a, 0x20, 0x4e, 0x6f, 0x2d, 0x53, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x20, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x20, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x42, 0x6c, 0x6f, 0x63, + 0x6b, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2b, 0x22, 0x0a, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x22, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x6e, 0x6f, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6e, 0x6f, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x53, 0x68, 0x65, 0x65, 0x74, 0x73, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, + 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, + 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x53, + 0x68, 0x65, 0x65, 0x74, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x53, 0x68, 0x65, + 0x65, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, + 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, + 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, + 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, + 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, + 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, + 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, + 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x44, 0x54, + 0x44, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x20, 0x53, 0x68, 0x65, 0x65, 0x74, 0x73, 0x20, 0x31, 0x2e, 0x30, + 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x74, + 0x79, 0x6c, 0x65, 0x20, 0x53, 0x68, 0x65, 0x65, 0x74, 0x73, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, + 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x74, 0x73, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, + 0x20, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, + 0x73, 0x68, 0x65, 0x65, 0x74, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x68, 0x65, + 0x61, 0x64, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x74, + 0x79, 0x6c, 0x65, 0x3a, 0x20, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x53, + 0x68, 0x65, 0x65, 0x74, 0x20, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, + 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x29, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, + 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, 0x38, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x44, 0x65, 0x73, 0x63, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x28, 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x46, 0x49, 0x58, 0x45, 0x44, 0x20, 0x27, + 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x27, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, + 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6d, + 0x61, 0x67, 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, + 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, + 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, + 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x52, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, + 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, + 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, + 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, + 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, + 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, + 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x49, + 0x6d, 0x61, 0x67, 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, + 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, + 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, + 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, + 0x6d, 0x67, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, + 0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, + 0x62, 0x61, 0x73, 0x69, 0x63, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, + 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x0a, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x6f, 0x20, + 0x61, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, + 0x6d, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x2d, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x55, 0x41, 0x73, 0x20, 0x61, 0x73, + 0x20, 0x77, 0x65, 0x6c, 0x6c, 0x20, 0x61, 0x73, 0x20, 0x74, 0x6f, 0x20, + 0x6d, 0x61, 0x6b, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, + 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x62, + 0x6c, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6e, 0x61, 0x76, 0x69, 0x67, + 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x73, 0x65, 0x72, + 0x73, 0x20, 0x6f, 0x66, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x6f, + 0x6e, 0x2d, 0x76, 0x69, 0x73, 0x75, 0x61, 0x6c, 0x20, 0x55, 0x41, 0x73, + 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x74, + 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x61, 0x20, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x27, 0x61, 0x6c, 0x74, 0x27, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, + 0x76, 0x6f, 0x69, 0x64, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2d, + 0x73, 0x69, 0x64, 0x65, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x6d, + 0x61, 0x70, 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x6d, 0x67, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x69, 0x6d, 0x67, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x69, 0x6d, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x20, 0x20, 0x22, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x69, 0x6d, 0x67, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x69, 0x6d, 0x67, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x69, 0x6d, 0x67, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x69, 0x6d, 0x67, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x69, + 0x6d, 0x67, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x6d, 0x67, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x69, + 0x6d, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, + 0x69, 0x6d, 0x67, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x73, 0x72, 0x63, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6c, 0x74, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x54, + 0x65, 0x78, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x64, 0x65, 0x73, 0x63, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x65, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x69, 0x6d, 0x67, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x2d, 0x73, 0x69, 0x64, 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, + 0x4d, 0x61, 0x70, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x73, 0x69, 0x73, 0x6d, 0x61, + 0x70, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2e, + 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, + 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, + 0x69, 0x64, 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x61, + 0x70, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, + 0x73, 0x69, 0x64, 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, + 0x61, 0x70, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x73, 0x69, 0x73, 0x6d, + 0x61, 0x70, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, + 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, + 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, + 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, + 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, + 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x63, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, + 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, + 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, + 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x69, + 0x64, 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x61, 0x70, + 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, 0x73, 0x69, 0x73, 0x6d, 0x61, + 0x70, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, + 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, + 0x73, 0x69, 0x64, 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, + 0x61, 0x70, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x61, 0x72, 0x65, 0x61, 0x2c, 0x20, 0x6d, 0x61, 0x70, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, + 0x73, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, + 0x6e, 0x64, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, + 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x64, 0x65, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, + 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x72, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x28, 0x6f, 0x72, 0x20, 0x61, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x69, 0x6d, 0x67, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x29, 0x20, 0x62, 0x65, 0x20, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x44, 0x54, 0x44, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x54, 0x68, 0x65, 0x73, 0x65, 0x20, 0x63, 0x61, 0x6e, 0x20, + 0x62, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x20, 0x69, 0x6e, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x72, 0x20, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, + 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x61, + 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x6c, 0x61, 0x74, 0x74, 0x65, 0x72, 0x20, 0x69, 0x73, 0x6e, 0x27, 0x74, + 0x20, 0x77, 0x69, 0x64, 0x65, 0x6c, 0x79, 0x20, 0x73, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x72, + 0x65, 0x61, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x45, 0x4d, 0x50, + 0x54, 0x59, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x61, 0x72, 0x65, 0x61, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x25, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x20, 0x25, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x72, 0x65, 0x61, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, 0x22, 0x28, 0x20, 0x72, 0x65, 0x63, + 0x74, 0x20, 0x7c, 0x20, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x20, 0x7c, + 0x20, 0x70, 0x6f, 0x6c, 0x79, 0x20, 0x7c, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x20, 0x29, 0x22, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x43, 0x6f, 0x6f, 0x72, 0x64, + 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x20, 0x22, + 0x43, 0x44, 0x41, 0x54, 0x41, 0x22, 0x20, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x61, 0x72, 0x65, + 0x61, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x25, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x72, 0x65, + 0x66, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, + 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x73, 0x68, 0x61, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x53, 0x68, 0x61, 0x70, 0x65, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x27, 0x72, 0x65, 0x63, 0x74, 0x27, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x73, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6f, 0x72, 0x64, + 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x6f, + 0x68, 0x72, 0x65, 0x66, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, + 0x20, 0x6e, 0x6f, 0x68, 0x72, 0x65, 0x66, 0x20, 0x29, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x6c, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x61, 0x62, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6b, 0x65, 0x79, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, + 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x20, + 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x69, + 0x64, 0x65, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x6d, 0x61, 0x70, + 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x25, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x68, 0x61, 0x70, + 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x53, 0x68, + 0x61, 0x70, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x27, 0x72, + 0x65, 0x63, 0x74, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x6f, 0x6f, 0x72, 0x64, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, + 0x20, 0x69, 0x6d, 0x67, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x74, 0x6f, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x64, 0x65, + 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x6d, 0x61, 0x70, 0x73, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, + 0x54, 0x20, 0x25, 0x69, 0x6d, 0x67, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x6d, + 0x61, 0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x52, + 0x45, 0x46, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x20, 0x66, 0x6f, + 0x72, 0x6d, 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, + 0x73, 0x69, 0x64, 0x65, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x6d, + 0x61, 0x70, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x75, 0x73, 0x65, 0x6d, 0x61, 0x70, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x49, 0x44, 0x52, 0x45, 0x46, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6d, 0x6f, 0x64, + 0x69, 0x66, 0x79, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x69, 0x73, 0x74, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6c, 0x6c, + 0x6f, 0x77, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x2d, 0x73, 0x69, 0x64, 0x65, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, + 0x20, 0x6d, 0x61, 0x70, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x6d, 0x61, 0x70, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x52, 0x45, 0x46, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x27, 0x75, 0x73, 0x65, 0x6d, 0x61, 0x70, 0x27, 0x20, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x27, + 0x69, 0x64, 0x27, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x3c, 0x6d, 0x61, 0x70, 0x3e, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x6d, 0x75, 0x73, + 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x73, 0x61, 0x6d, 0x65, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6d, 0x61, 0x70, 0x73, 0x20, 0x77, 0x61, 0x73, 0x20, 0x6e, + 0x6f, 0x74, 0x20, 0x77, 0x69, 0x64, 0x65, 0x6c, 0x79, 0x20, 0x73, 0x75, + 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x6e, 0x61, 0x74, + 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x74, 0x20, 0x69, 0x73, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, + 0x61, 0x6e, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, + 0x62, 0x79, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x20, 0x75, 0x73, + 0x65, 0x6d, 0x61, 0x70, 0x20, 0x49, 0x44, 0x52, 0x45, 0x46, 0x20, 0x74, + 0x6f, 0x20, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x20, 0x69, 0x6e, 0x20, 0x61, + 0x6e, 0x79, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x20, 0x62, 0x75, 0x74, 0x20, + 0x61, 0x20, 0x3c, 0x6d, 0x61, 0x70, 0x3e, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6d, 0x61, 0x70, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x6d, 0x61, 0x70, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x6d, 0x61, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x28, 0x20, + 0x25, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, + 0x29, 0x20, 0x7c, 0x20, 0x25, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x2b, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6d, 0x61, + 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x6d, 0x61, + 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x6d, 0x61, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x20, 0x25, 0x6d, 0x61, 0x70, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x61, 0x70, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x6d, 0x61, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6d, 0x61, 0x70, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6d, 0x61, 0x70, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, + 0x6e, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, + 0x49, 0x52, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, 0x38, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x61, 0x70, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x63, + 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2d, 0x73, 0x69, + 0x64, 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x61, 0x70, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2e, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2e, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2e, 0x6d, 0x6f, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2d, 0x73, 0x69, 0x64, 0x65, + 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x61, 0x70, 0x73, 0x20, + 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2d, 0x73, 0x69, 0x64, + 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x61, 0x70, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, + 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, + 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, + 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, + 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, + 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x73, 0x69, + 0x73, 0x6d, 0x61, 0x70, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, + 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, + 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, + 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, + 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2d, 0x73, 0x69, 0x64, 0x65, 0x20, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x61, 0x70, 0x73, 0x20, 0x31, + 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x23, + 0x32, 0x30, 0x30, 0x30, 0x2d, 0x31, 0x30, 0x2d, 0x32, 0x32, 0x3a, 0x20, + 0x61, 0x64, 0x64, 0x65, 0x64, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x27, 0x69, + 0x73, 0x6d, 0x61, 0x70, 0x27, 0x20, 0x6f, 0x6e, 0x20, 0x3c, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x2d, 0x73, 0x69, 0x64, 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, + 0x65, 0x20, 0x4d, 0x61, 0x70, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x61, 0x64, 0x64, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x27, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x27, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x74, 0x6f, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x69, 0x6d, 0x67, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, 0x73, + 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2d, 0x73, 0x69, 0x64, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, + 0x73, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x75, + 0x73, 0x65, 0x72, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x69, 0x6d, 0x67, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x69, 0x73, 0x6d, 0x61, 0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x28, 0x20, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x20, 0x29, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, + 0x25, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x73, 0x6d, 0x61, + 0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x69, + 0x73, 0x6d, 0x61, 0x70, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x61, 0x70, 0x2d, + 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x20, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, + 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, + 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, + 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, + 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, + 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, + 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, + 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, + 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, + 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, + 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, + 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, + 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x4a, 0x61, 0x76, + 0x61, 0x20, 0x41, 0x70, 0x70, 0x6c, 0x65, 0x74, 0x73, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x20, 0x4f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x73, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, + 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x65, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x3a, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x20, + 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x20, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, + 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x5b, 0x25, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x45, 0x4d, 0x50, + 0x54, 0x59, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, + 0x54, 0x20, 0x25, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x69, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x74, 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, + 0x64, 0x61, 0x74, 0x61, 0x20, 0x7c, 0x20, 0x72, 0x65, 0x66, 0x20, 0x7c, + 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x29, 0x20, 0x20, 0x27, + 0x64, 0x61, 0x74, 0x61, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x6d, 0x62, 0x65, 0x64, + 0x64, 0x65, 0x64, 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x6d, 0x6f, + 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x20, 0x4f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, + 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x45, 0x6d, 0x62, 0x65, 0x64, + 0x64, 0x65, 0x64, 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, + 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, + 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, + 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, + 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, + 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, + 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, + 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, + 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, + 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, + 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, + 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x20, + 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, + 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x6d, 0x62, + 0x65, 0x64, 0x64, 0x65, 0x64, 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, + 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x69, 0x74, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x2c, 0x20, 0x75, 0x73, 0x65, 0x64, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x20, + 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x6f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x73, 0x20, 0x61, 0x73, 0x20, 0x70, 0x61, 0x72, 0x74, + 0x20, 0x6f, 0x66, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x70, 0x61, + 0x67, 0x65, 0x73, 0x2e, 0x20, 0x49, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, + 0x70, 0x72, 0x69, 0x6f, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x6f, 0x74, 0x68, + 0x65, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4e, 0x6f, 0x74, 0x65, + 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x75, 0x73, 0x65, 0x20, 0x6f, 0x66, + 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x20, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x0a, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x3a, 0x20, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x20, + 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x20, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, + 0x20, 0x25, 0x46, 0x6c, 0x6f, 0x77, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, + 0x7c, 0x20, 0x25, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x6f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, + 0x25, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x25, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, + 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x64, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x64, + 0x65, 0x62, 0x61, 0x73, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, + 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x64, 0x65, 0x74, 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x73, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, + 0x61, 0x6e, 0x64, 0x62, 0x79, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x54, 0x65, 0x78, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x64, 0x74, + 0x68, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, + 0x2d, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, + 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, + 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, + 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, + 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, + 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, + 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, + 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, + 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, + 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, + 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, + 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, + 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, + 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, + 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x2c, 0x20, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, + 0x74, 0x68, 0x65, 0x61, 0x64, 0x2c, 0x20, 0x74, 0x66, 0x6f, 0x6f, 0x74, + 0x2c, 0x20, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x2c, 0x20, 0x63, 0x6f, 0x6c, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2c, 0x20, 0x63, 0x6f, 0x6c, 0x2c, 0x20, + 0x74, 0x72, 0x2c, 0x20, 0x74, 0x68, 0x2c, 0x20, 0x74, 0x64, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, + 0x73, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, + 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x6d, 0x61, + 0x72, 0x6b, 0x75, 0x70, 0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, + 0x20, 0x74, 0x6f, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x34, 0x2e, 0x30, + 0x2c, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x20, + 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, + 0x74, 0x20, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x62, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x76, 0x69, 0x73, 0x75, 0x61, + 0x6c, 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x71, 0x75, 0x61, + 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x3a, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x63, 0x61, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x68, 0x65, 0x61, 0x64, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x74, 0x68, 0x65, 0x61, + 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x22, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x63, 0x6f, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x63, 0x6f, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x72, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x74, 0x72, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x74, 0x68, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x74, 0x68, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x64, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x22, 0x74, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x68, 0x65, 0x20, 0x66, 0x72, 0x61, + 0x6d, 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x73, 0x20, 0x77, + 0x68, 0x69, 0x63, 0x68, 0x20, 0x70, 0x61, 0x72, 0x74, 0x73, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x20, + 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x73, 0x68, + 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x65, 0x64, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f, 0x74, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x61, 0x73, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x41, 0x4c, 0x53, 0x20, 0x74, + 0x6f, 0x20, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x61, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x68, 0x20, 0x77, 0x69, 0x74, + 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x66, 0x72, + 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, + 0x20, 0x76, 0x6f, 0x69, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7c, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x62, 0x65, 0x6c, 0x6f, 0x77, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x68, 0x73, 0x69, + 0x64, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, + 0x20, 0x6c, 0x68, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7c, 0x20, 0x72, 0x68, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7c, 0x20, 0x76, 0x73, 0x69, 0x64, 0x65, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x62, 0x6f, 0x78, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x62, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x54, 0x68, 0x65, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x73, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x72, + 0x75, 0x6c, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x72, 0x61, 0x77, + 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x20, 0x63, 0x65, 0x6c, + 0x6c, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x66, + 0x20, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x62, + 0x73, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, 0x61, 0x73, + 0x73, 0x75, 0x6d, 0x65, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x6e, 0x6f, 0x6e, 0x65, 0x22, 0x20, 0x69, 0x66, 0x20, + 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x69, 0x73, 0x20, 0x61, 0x62, + 0x73, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x72, 0x20, 0x62, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, + 0x77, 0x69, 0x73, 0x65, 0x20, 0x22, 0x61, 0x6c, 0x6c, 0x22, 0x0a, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x72, 0x75, 0x6c, + 0x65, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, + 0x6e, 0x6f, 0x6e, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7c, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x63, 0x6f, 0x6c, 0x73, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x61, 0x6c, + 0x6c, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, + 0x6c, 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x43, 0x65, 0x6c, 0x6c, + 0x48, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x61, 0x6c, 0x69, 0x67, + 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x6c, + 0x65, 0x66, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, + 0x20, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x7c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x6a, 0x75, 0x73, 0x74, + 0x69, 0x66, 0x79, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, + 0x20, 0x63, 0x68, 0x61, 0x72, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x68, 0x61, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x68, 0x61, 0x72, + 0x6f, 0x66, 0x66, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, + 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x43, 0x65, 0x6c, 0x6c, 0x56, 0x41, + 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x74, 0x6f, 0x70, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x6d, 0x69, + 0x64, 0x64, 0x6c, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7c, 0x20, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, + 0x63, 0x6f, 0x70, 0x65, 0x20, 0x69, 0x73, 0x20, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x61, 0x78, 0x65, + 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x63, 0x6f, + 0x70, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x72, 0x6f, 0x77, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x63, 0x6f, 0x6c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x72, 0x6f, 0x77, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7c, 0x20, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x22, 0x0a, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x3a, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, + 0x25, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x3f, 0x2c, 0x20, 0x28, 0x20, 0x25, 0x63, 0x6f, 0x6c, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2a, 0x20, 0x7c, 0x20, 0x25, + 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x2a, 0x20, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x28, 0x28, 0x20, 0x25, 0x74, 0x68, 0x65, 0x61, 0x64, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x3f, 0x2c, 0x20, 0x25, 0x74, 0x66, + 0x6f, 0x6f, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x3f, 0x2c, + 0x20, 0x25, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x2b, 0x20, 0x29, 0x20, 0x7c, 0x20, 0x28, 0x20, 0x25, 0x74, + 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2b, 0x20, 0x29, 0x29, + 0x29, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x6f, + 0x72, 0x64, 0x65, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x65, 0x6c, + 0x6c, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x20, 0x25, 0x4c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, + 0x67, 0x20, 0x20, 0x25, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x3a, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x43, 0x61, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x63, + 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, + 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, + 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x63, 0x61, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, + 0x25, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x61, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x61, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x63, 0x61, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x65, 0x61, 0x64, 0x3a, 0x20, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x55, 0x73, 0x65, 0x20, 0x74, + 0x68, 0x65, 0x61, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x75, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x65, 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x73, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x62, 0x72, 0x65, 0x61, 0x6b, + 0x69, 0x6e, 0x67, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x20, 0x70, 0x61, + 0x67, 0x65, 0x20, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x69, 0x65, + 0x73, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x74, + 0x61, 0x74, 0x69, 0x63, 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, + 0x20, 0x77, 0x68, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x62, 0x6f, 0x64, 0x79, 0x20, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, + 0x69, 0x6e, 0x67, 0x20, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x0a, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x74, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x68, + 0x65, 0x61, 0x64, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x74, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x74, 0x72, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x2b, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x74, + 0x68, 0x65, 0x61, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, + 0x20, 0x25, 0x74, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x61, 0x64, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x74, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, + 0x68, 0x65, 0x61, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x25, 0x74, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x65, 0x6c, 0x6c, + 0x48, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x65, + 0x6c, 0x6c, 0x56, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x61, 0x64, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x66, + 0x6f, 0x6f, 0x74, 0x3a, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x46, + 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x55, 0x73, 0x65, 0x20, 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x20, 0x74, 0x6f, + 0x20, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x20, 0x66, + 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x73, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, + 0x62, 0x72, 0x65, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x20, 0x70, 0x61, 0x67, 0x65, 0x20, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x61, 0x72, 0x69, 0x65, 0x73, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, 0x20, 0x66, 0x6f, + 0x6f, 0x74, 0x65, 0x72, 0x73, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x20, 0x73, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x72, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x73, + 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x61, 0x6e, + 0x65, 0x6c, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x66, 0x6f, 0x6f, + 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, + 0x25, 0x74, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, + 0x2b, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x74, 0x66, 0x6f, 0x6f, 0x74, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x66, 0x6f, + 0x6f, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, 0x66, 0x6f, 0x6f, 0x74, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x43, 0x65, 0x6c, 0x6c, 0x48, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x65, 0x6c, 0x6c, 0x56, 0x41, 0x6c, 0x69, 0x67, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x74, 0x66, 0x6f, 0x6f, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x3a, 0x20, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x20, 0x42, 0x6f, 0x64, 0x79, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x55, 0x73, 0x65, 0x20, 0x6d, 0x75, 0x6c, + 0x74, 0x69, 0x70, 0x6c, 0x65, 0x20, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x20, + 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x77, 0x68, 0x65, + 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, + 0x6e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x20, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, + 0x72, 0x6f, 0x77, 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x62, + 0x6f, 0x64, 0x79, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x62, 0x6f, 0x64, + 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x28, 0x20, 0x25, 0x74, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x29, 0x2b, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x74, 0x62, 0x6f, + 0x64, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, + 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, 0x62, 0x6f, + 0x64, 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x43, 0x65, 0x6c, 0x6c, 0x48, 0x41, 0x6c, 0x69, 0x67, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x65, 0x6c, 0x6c, 0x56, 0x41, 0x6c, + 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x3a, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x43, 0x6f, 0x6c, + 0x75, 0x6d, 0x6e, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x63, 0x6f, 0x6c, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x20, 0x61, + 0x20, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x6c, 0x20, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0x49, 0x74, + 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x20, 0x79, 0x6f, 0x75, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x20, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x20, 0x73, 0x65, + 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x2d, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, + 0x6e, 0x73, 0x20, 0x74, 0x6f, 0x67, 0x65, 0x74, 0x68, 0x65, 0x72, 0x2e, + 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x6f, 0x6c, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x63, 0x6f, 0x6c, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x63, + 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x20, 0x25, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x63, + 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x25, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x27, 0x31, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x65, 0x6c, 0x6c, 0x48, + 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x65, 0x6c, + 0x6c, 0x56, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x6c, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x63, 0x6f, 0x6c, 0x3a, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x43, + 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x63, 0x6f, 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x20, 0x66, + 0x6f, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x65, 0x6c, 0x6c, + 0x73, 0x20, 0x69, 0x6e, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x72, 0x20, + 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, + 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, + 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x2c, 0x20, 0x65, 0x2e, 0x67, + 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, + 0x64, 0x74, 0x68, 0x3d, 0x22, 0x36, 0x34, 0x22, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x69, 0x6e, + 0x20, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x20, 0x70, 0x69, 0x78, 0x65, + 0x6c, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, + 0x64, 0x74, 0x68, 0x3d, 0x22, 0x30, 0x2e, 0x35, 0x2a, 0x22, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x6f, 0x66, 0x20, 0x30, 0x2e, + 0x35, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, + 0x73, 0x70, 0x61, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x63, 0x61, 0x75, 0x73, 0x65, 0x73, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x6e, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x6f, 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x74, 0x6f, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x20, 0x74, 0x6f, + 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x6f, + 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x2e, 0x0a, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x63, 0x6f, 0x6c, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x6f, 0x6c, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x45, + 0x4d, 0x50, 0x54, 0x59, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x63, 0x6f, 0x6c, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x63, 0x6f, 0x6c, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x63, + 0x6f, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x63, + 0x6f, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, + 0x63, 0x6f, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x27, 0x31, 0x27, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x65, 0x6c, + 0x6c, 0x48, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x65, 0x6c, 0x6c, 0x56, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x6c, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x72, 0x3a, + 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x52, 0x6f, 0x77, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x72, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x72, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x72, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, + 0x25, 0x74, 0x68, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, + 0x20, 0x25, 0x74, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, + 0x29, 0x2b, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x20, 0x25, 0x74, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x20, 0x20, 0x25, 0x74, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x72, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x74, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x72, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, + 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, 0x72, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x65, 0x6c, 0x6c, + 0x48, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x65, + 0x6c, 0x6c, 0x56, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x72, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x3a, 0x20, 0x54, + 0x61, 0x62, 0x6c, 0x65, 0x20, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x20, + 0x43, 0x65, 0x6c, 0x6c, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x20, + 0x69, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x2c, 0x20, 0x74, 0x64, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x62, 0x75, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x63, + 0x65, 0x6c, 0x6c, 0x73, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6e, 0x67, 0x20, + 0x61, 0x73, 0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x75, 0x73, 0x65, 0x20, + 0x74, 0x64, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x68, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, + 0x68, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, + 0x68, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, + 0x41, 0x20, 0x7c, 0x20, 0x25, 0x46, 0x6c, 0x6f, 0x77, 0x2e, 0x6d, 0x69, + 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x74, 0x68, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x74, 0x68, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x74, 0x68, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x68, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, + 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, 0x68, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x62, + 0x62, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x54, 0x65, 0x78, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x78, 0x69, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x52, + 0x45, 0x46, 0x53, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x6f, + 0x77, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x27, 0x31, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, + 0x6c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, + 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x27, 0x31, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x65, 0x6c, 0x6c, 0x48, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x43, 0x65, 0x6c, 0x6c, 0x56, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x64, + 0x3a, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x44, 0x61, 0x74, 0x61, + 0x20, 0x43, 0x65, 0x6c, 0x6c, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x64, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x64, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x64, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x7c, 0x20, 0x25, 0x46, 0x6c, 0x6f, 0x77, 0x2e, 0x6d, 0x69, 0x78, + 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x74, 0x64, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x74, 0x64, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x64, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x74, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x64, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, 0x64, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x62, 0x62, + 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x54, + 0x65, 0x78, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x61, 0x78, 0x69, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x52, 0x45, + 0x46, 0x53, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x6f, 0x77, + 0x73, 0x70, 0x61, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x27, + 0x31, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, + 0x73, 0x70, 0x61, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x27, + 0x31, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x65, + 0x6c, 0x6c, 0x48, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x43, 0x65, 0x6c, 0x6c, 0x56, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x64, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x46, 0x6f, 0x72, 0x6d, 0x73, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, + 0x6f, 0x72, 0x6d, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x6f, 0x72, + 0x6d, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x6d, 0x6f, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, + 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, + 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, + 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x6f, 0x72, + 0x6d, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x73, 0x20, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x6c, 0x65, + 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x6f, 0x72, 0x6d, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x6d, + 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x61, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, 0x30, 0x30, 0x31, 0x20, 0x57, + 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, 0x2c, 0x20, 0x49, 0x4e, 0x52, + 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, 0x6f, 0x29, 0x2c, 0x20, 0x41, + 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x24, + 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x6f, + 0x72, 0x6d, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, + 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, + 0x32, 0x20, 0x32, 0x32, 0x3a, 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, + 0x6c, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, + 0x20, 0x53, 0x4d, 0x49, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x44, 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, + 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x46, 0x6f, + 0x72, 0x6d, 0x73, 0x20, 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, + 0x45, 0x4d, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, + 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, + 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, + 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, 0x6f, 0x72, 0x6d, + 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x73, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2c, 0x20, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x2c, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2c, 0x20, 0x6f, + 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2c, 0x20, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2c, 0x20, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2c, 0x20, 0x6c, 0x65, 0x67, + 0x65, 0x6e, 0x64, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x74, 0x6f, + 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x20, 0x73, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6f, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, + 0x6d, 0x73, 0x2c, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x73, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x66, 0x6f, 0x72, 0x6d, + 0x73, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x71, 0x75, 0x61, + 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x3a, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x66, 0x6f, 0x72, 0x6d, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x20, 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x22, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x73, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, 0x70, + 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x20, 0x22, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x20, 0x20, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x74, 0x65, 0x78, 0x74, 0x61, + 0x72, 0x65, 0x61, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, + 0x65, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6c, 0x65, + 0x67, 0x65, 0x6e, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x75, + 0x74, 0x74, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x22, 0x20, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x25, 0x42, 0x6c, 0x6b, 0x4e, 0x6f, 0x46, + 0x6f, 0x72, 0x6d, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x69, 0x6e, 0x63, + 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x6e, 0x6f, + 0x6e, 0x2d, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x70, 0x6c, 0x75, 0x73, 0x20, 0x25, 0x4d, 0x69, + 0x73, 0x63, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x2d, 0x2d, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x42, 0x6c, 0x6b, 0x4e, 0x6f, 0x46, 0x6f, 0x72, 0x6d, 0x2e, 0x6d, + 0x69, 0x78, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, 0x48, 0x65, + 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, 0x4c, 0x69, + 0x73, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, 0x42, 0x6c, 0x6b, 0x53, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x42, 0x6c, 0x6b, 0x50, 0x68, + 0x72, 0x61, 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x42, 0x6c, 0x6b, 0x50, 0x72, 0x65, + 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x3a, 0x20, 0x46, + 0x6f, 0x72, 0x6d, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x66, 0x6f, 0x72, 0x6d, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x66, 0x6f, 0x72, + 0x6d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x42, 0x6c, 0x6b, 0x4e, 0x6f, + 0x46, 0x6f, 0x72, 0x6d, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, 0x66, 0x69, 0x65, 0x6c, 0x64, + 0x73, 0x65, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, + 0x2b, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x66, 0x6f, + 0x72, 0x6d, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, + 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x25, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, + 0x55, 0x49, 0x52, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x28, 0x20, 0x67, 0x65, 0x74, 0x20, 0x7c, 0x20, 0x70, 0x6f, 0x73, + 0x74, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x27, 0x67, 0x65, 0x74, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x65, 0x6e, 0x63, 0x74, 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, + 0x3b, 0x20, 0x20, 0x20, 0x27, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x78, 0x2d, 0x77, 0x77, 0x77, 0x2d, 0x66, + 0x6f, 0x72, 0x6d, 0x2d, 0x75, 0x72, 0x6c, 0x65, 0x6e, 0x63, 0x6f, 0x64, + 0x65, 0x64, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, + 0x63, 0x65, 0x70, 0x74, 0x2d, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, + 0x20, 0x25, 0x43, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x73, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, + 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x20, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x20, + 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x61, 0x63, 0x68, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, + 0x6e, 0x6f, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, + 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x4f, 0x4e, + 0x45, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, + 0x41, 0x54, 0x41, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, + 0x25, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x74, 0x65, + 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7c, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x50, 0x68, 0x72, 0x61, 0x73, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x49, 0x31, 0x38, 0x6e, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, + 0x6c, 0x50, 0x72, 0x65, 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x41, 0x6e, 0x63, 0x68, + 0x6f, 0x72, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x53, 0x70, 0x65, 0x63, + 0x69, 0x61, 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, + 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x4d, 0x69, 0x73, 0x63, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x44, 0x52, 0x45, 0x46, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x6b, 0x65, 0x79, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3a, 0x20, 0x46, 0x6f, 0x72, 0x6d, + 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x20, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x6e, 0x70, + 0x75, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x45, + 0x4d, 0x50, 0x54, 0x59, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x49, 0x6e, + 0x70, 0x75, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x74, 0x65, + 0x78, 0x74, 0x20, 0x7c, 0x20, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x20, 0x7c, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x62, 0x6f, 0x78, + 0x20, 0x7c, 0x20, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x20, 0x7c, 0x20, 0x73, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7c, 0x20, 0x72, 0x65, 0x73, 0x65, 0x74, 0x20, 0x7c, 0x20, 0x66, 0x69, + 0x6c, 0x65, 0x20, 0x7c, 0x20, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x20, + 0x7c, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x7c, 0x20, 0x62, 0x75, + 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x29, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x27, 0x6e, 0x61, 0x6d, 0x65, 0x27, 0x20, 0x72, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, + 0x20, 0x62, 0x75, 0x74, 0x20, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x20, + 0x26, 0x20, 0x72, 0x65, 0x73, 0x65, 0x74, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x69, + 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x27, 0x74, 0x65, 0x78, 0x74, 0x27, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, + 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x63, 0x68, 0x65, 0x63, + 0x6b, 0x65, 0x64, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, + 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, + 0x6c, 0x79, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x69, 0x7a, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6d, 0x61, 0x78, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x72, 0x63, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, + 0x6c, 0x74, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x6b, 0x65, 0x79, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x3a, 0x20, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, + 0x20, 0x25, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, + 0x2b, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, + 0x69, 0x7a, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, + 0x70, 0x6c, 0x65, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, + 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, + 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x29, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6f, 0x70, 0x74, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x3a, 0x20, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, 0x70, 0x74, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, + 0x20, 0x22, 0x28, 0x20, 0x25, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x2b, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, + 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, + 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, + 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x6f, 0x70, 0x74, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x28, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x54, 0x65, 0x78, + 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, + 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x70, 0x74, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, + 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x53, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x43, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, + 0x41, 0x20, 0x29, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, + 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, + 0x20, 0x25, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x65, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x73, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x29, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x28, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x54, 0x65, 0x78, 0x74, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, + 0x3a, 0x20, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x2d, 0x4c, 0x69, 0x6e, 0x65, + 0x20, 0x54, 0x65, 0x78, 0x74, 0x20, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x65, + 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x28, + 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x29, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x25, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x74, 0x65, 0x78, 0x74, 0x61, + 0x72, 0x65, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, 0x65, 0x78, 0x74, 0x61, + 0x72, 0x65, 0x61, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x6f, 0x77, 0x73, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, + 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6c, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x23, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, + 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x64, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x29, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x28, 0x20, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, + 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x6b, 0x65, 0x79, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, + 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, + 0x65, 0x74, 0x3a, 0x20, 0x46, 0x6f, 0x72, 0x6d, 0x20, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x23, 0x50, 0x43, 0x44, + 0x41, 0x54, 0x41, 0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x6f, + 0x6c, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x69, 0x78, 0x65, + 0x64, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x70, 0x72, + 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x70, 0x65, 0x72, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x77, + 0x68, 0x69, 0x74, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x0a, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, + 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, + 0x41, 0x20, 0x7c, 0x20, 0x25, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x2e, + 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x7c, 0x20, 0x25, 0x46, 0x6c, + 0x6f, 0x77, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, + 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, + 0x25, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, 0x71, 0x6e, + 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x66, 0x69, 0x65, 0x6c, 0x64, + 0x73, 0x65, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, + 0x6f, 0x66, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, + 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, + 0x20, 0x25, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, + 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x66, 0x69, 0x65, 0x6c, 0x64, + 0x73, 0x65, 0x74, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x2e, 0x61, 0x74, 0x74, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x3a, + 0x20, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x20, 0x4c, 0x65, + 0x67, 0x65, 0x6e, 0x64, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x2e, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6c, 0x65, 0x67, + 0x65, 0x6e, 0x64, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, + 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x7c, 0x20, 0x25, 0x49, + 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, + 0x2a, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, + 0x4e, 0x54, 0x20, 0x25, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x6c, 0x65, 0x67, 0x65, + 0x6e, 0x64, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x6c, 0x65, 0x67, 0x65, + 0x6e, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, + 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x6b, 0x65, 0x79, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x68, 0x61, 0x72, + 0x61, 0x63, 0x74, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x65, 0x67, 0x65, 0x6e, + 0x64, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x62, + 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x3a, 0x20, 0x50, 0x75, 0x73, 0x68, 0x20, + 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, + 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, + 0x6e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, 0x43, 0x44, 0x41, 0x54, + 0x41, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, 0x42, + 0x6c, 0x6b, 0x4e, 0x6f, 0x46, 0x6f, 0x72, 0x6d, 0x2e, 0x6d, 0x69, 0x78, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7c, 0x20, 0x25, 0x49, + 0x6e, 0x6c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, + 0x6e, 0x6c, 0x50, 0x68, 0x72, 0x61, 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, + 0x6c, 0x50, 0x72, 0x65, 0x73, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, 0x38, 0x6e, + 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, + 0x6c, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x3b, 0x20, 0x29, 0x2a, 0x22, 0x0a, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x62, + 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, + 0x20, 0x20, 0x25, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x75, 0x74, + 0x74, 0x6f, 0x6e, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, + 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, + 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x5b, 0x25, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x2e, 0x61, 0x74, + 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, + 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x62, 0x75, 0x74, 0x74, 0x6f, + 0x6e, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x44, 0x41, 0x54, 0x41, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x28, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x7c, 0x20, 0x73, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x20, 0x7c, 0x20, 0x72, 0x65, 0x73, 0x65, + 0x74, 0x20, 0x29, 0x20, 0x27, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x27, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, 0x20, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x29, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, + 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x74, 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6b, + 0x65, 0x79, 0x20, 0x20, 0x20, 0x20, 0x25, 0x43, 0x68, 0x61, 0x72, 0x61, + 0x63, 0x74, 0x65, 0x72, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, + 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, 0x49, 0x4d, 0x50, 0x4c, + 0x49, 0x45, 0x44, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, + 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x66, + 0x6f, 0x72, 0x6d, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x75, + 0x70, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, + 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, + 0x65, 0x67, 0x61, 0x63, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x20, 0x22, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x65, + 0x67, 0x61, 0x63, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, + 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x65, 0x67, 0x61, 0x63, + 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, + 0x43, 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, + 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x75, 0x70, 0x20, 0x31, 0x2e, 0x30, 0x2f, + 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, + 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x65, + 0x67, 0x61, 0x63, 0x79, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, + 0x3e, 0x0a, 0x25, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6c, 0x65, 0x67, + 0x61, 0x63, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x3b, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, + 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x28, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x29, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x78, + 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x78, 0x68, 0x74, 0x6d, + 0x6c, 0x2d, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x6d, 0x6f, 0x64, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, + 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x45, 0x4c, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x53, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x20, 0x31, 0x2e, 0x30, 0x2f, + 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, + 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, + 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x53, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x66, + 0x69, 0x6c, 0x65, 0x3a, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, + 0x73, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2c, 0x20, 0x61, 0x20, 0x72, + 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x6f, 0x66, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x73, 0x20, + 0x61, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x58, 0x4d, + 0x4c, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, + 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x38, 0x2d, 0x32, + 0x30, 0x30, 0x31, 0x20, 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x49, 0x54, + 0x2c, 0x20, 0x49, 0x4e, 0x52, 0x49, 0x41, 0x2c, 0x20, 0x4b, 0x65, 0x69, + 0x6f, 0x29, 0x2c, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x3a, 0x20, 0x24, 0x49, 0x64, 0x3a, 0x20, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, 0x31, 0x2e, + 0x6d, 0x6f, 0x64, 0x2c, 0x76, 0x20, 0x34, 0x2e, 0x30, 0x20, 0x32, 0x30, + 0x30, 0x31, 0x2f, 0x30, 0x34, 0x2f, 0x30, 0x32, 0x20, 0x32, 0x32, 0x3a, + 0x34, 0x32, 0x3a, 0x34, 0x39, 0x20, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x69, + 0x6d, 0x20, 0x45, 0x78, 0x70, 0x20, 0x24, 0x20, 0x53, 0x4d, 0x49, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x44, + 0x54, 0x44, 0x20, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, + 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, + 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, + 0x3a, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, + 0x2f, 0x2f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x20, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x20, + 0x31, 0x2e, 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x20, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68, 0x74, + 0x6d, 0x6c, 0x2d, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x44, 0x54, 0x44, 0x2f, 0x78, 0x68, + 0x74, 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, 0x31, + 0x2e, 0x6d, 0x6f, 0x64, 0x22, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x28, 0x6e, 0x6f, 0x6e, 0x65, 0x29, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2c, + 0x20, 0x68, 0x65, 0x61, 0x64, 0x2c, 0x20, 0x62, 0x6f, 0x64, 0x79, 0x2c, + 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x65, 0x20, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, + 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x61, 0x6a, + 0x6f, 0x72, 0x20, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x61, + 0x6c, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, + 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x69, + 0x72, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4e, 0x6f, 0x74, 0x65, + 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x68, 0x65, 0x61, 0x64, 0x20, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x20, 0x69, 0x73, 0x20, 0x72, 0x65, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, + 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x68, 0x65, 0x6e, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x42, 0x61, 0x73, 0x65, 0x20, 0x4d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x63, 0x6c, + 0x75, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x44, 0x54, 0x44, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x65, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, + 0x20, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, + 0x4d, 0x4c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x20, 0x55, 0x52, 0x49, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x75, + 0x73, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x69, 0x73, 0x20, 0x27, 0x25, + 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3b, + 0x27, 0x2c, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x69, + 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3a, 0x20, 0x44, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x54, 0x69, 0x74, 0x6c, + 0x65, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x54, 0x68, 0x65, 0x20, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, + 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x70, 0x61, 0x72, 0x74, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x6c, 0x6f, 0x77, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x49, 0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, + 0x65, 0x20, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x2c, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, + 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x67, 0x65, + 0x20, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x20, 0x6f, 0x72, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x20, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x20, 0x45, 0x78, 0x61, 0x63, 0x74, 0x6c, + 0x79, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x20, + 0x69, 0x73, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x20, + 0x70, 0x65, 0x72, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x2e, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, + 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, + 0x25, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x28, 0x20, 0x23, 0x50, + 0x43, 0x44, 0x41, 0x54, 0x41, 0x20, 0x29, 0x22, 0x20, 0x3e, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, + 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, + 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, + 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, + 0x38, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, + 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, + 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x68, 0x65, 0x61, 0x64, 0x3a, 0x20, 0x44, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x48, 0x65, 0x61, 0x64, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x68, 0x65, 0x61, 0x64, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x65, 0x61, 0x64, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x28, 0x20, 0x25, 0x48, 0x65, 0x61, 0x64, 0x4f, 0x70, 0x74, + 0x73, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x2c, 0x20, 0x25, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, + 0x48, 0x65, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x73, 0x2e, 0x6d, 0x69, 0x78, + 0x3b, 0x20, 0x29, 0x22, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, + 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, 0x22, 0x68, 0x65, 0x61, 0x64, 0x22, + 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x20, 0x25, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, + 0x3b, 0x20, 0x20, 0x25, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x65, 0x61, 0x64, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, + 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x65, + 0x61, 0x64, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x66, 0x75, 0x74, 0x75, 0x72, + 0x65, 0x20, 0x75, 0x73, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x73, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x55, 0x52, 0x49, 0x2e, 0x64, + 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x27, 0x25, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x3b, 0x27, + 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, + 0x53, 0x54, 0x20, 0x25, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x71, 0x6e, 0x61, + 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x49, 0x31, 0x38, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, + 0x20, 0x6f, 0x66, 0x20, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x62, 0x6f, 0x64, 0x79, 0x3a, 0x20, + 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x42, 0x6f, 0x64, + 0x79, 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, + 0x25, 0x20, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, + 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x62, 0x6f, 0x64, 0x79, + 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x6f, + 0x64, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x42, 0x6c, 0x6f, 0x63, + 0x6b, 0x2e, 0x6d, 0x69, 0x78, 0x3b, 0x20, 0x29, 0x2b, 0x22, 0x0a, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x62, 0x6f, 0x64, 0x79, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x62, 0x6f, + 0x64, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x62, 0x6f, + 0x64, 0x79, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, + 0x4c, 0x49, 0x53, 0x54, 0x20, 0x25, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x61, + 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x68, 0x74, 0x6d, 0x6c, + 0x3a, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x44, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x20, 0x25, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x2e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x20, 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, + 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x74, + 0x6d, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x5b, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x68, 0x74, 0x6d, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x20, 0x20, 0x22, 0x28, 0x20, 0x25, 0x68, 0x65, 0x61, 0x64, 0x2e, 0x71, + 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x2c, 0x20, 0x25, 0x62, 0x6f, 0x64, 0x79, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x29, 0x22, 0x20, 0x3e, + 0x0a, 0x3c, 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, + 0x68, 0x74, 0x6d, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x20, + 0x22, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x20, 0x3e, 0x0a, 0x3c, 0x21, 0x45, + 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x20, 0x25, 0x68, 0x74, 0x6d, 0x6c, + 0x2e, 0x71, 0x6e, 0x61, 0x6d, 0x65, 0x3b, 0x20, 0x20, 0x25, 0x68, 0x74, + 0x6d, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, + 0x66, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x2e, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x68, 0x74, + 0x6d, 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x20, + 0x22, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x22, 0x20, 0x3e, 0x0a, + 0x3c, 0x21, 0x5b, 0x25, 0x68, 0x74, 0x6d, 0x6c, 0x2e, 0x61, 0x74, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x3b, 0x5b, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x64, + 0x72, 0x69, 0x76, 0x65, 0x72, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, + 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x20, 0x25, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x2e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x25, 0x46, 0x50, 0x49, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, + 0x70, 0x65, 0x3b, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x23, 0x46, 0x49, 0x58, 0x45, 0x44, 0x20, 0x27, 0x25, 0x58, + 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x3b, 0x27, 0x22, 0x0a, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x73, 0x65, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, + 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x74, + 0x6f, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x20, 0x58, 0x48, 0x54, + 0x4d, 0x4c, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x0a, + 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x41, 0x54, 0x54, 0x4c, 0x49, 0x53, + 0x54, 0x20, 0x25, 0x68, 0x74, 0x6d, 0x6c, 0x2e, 0x71, 0x6e, 0x61, 0x6d, + 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x2e, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x2e, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x25, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x2e, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x2e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x25, 0x49, 0x31, 0x38, 0x6e, 0x2e, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x3b, 0x0a, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x74, 0x6d, + 0x6c, 0x2e, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x2d, 0x2d, + 0x3e, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x65, + 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x2d, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2d, 0x31, 0x2e, 0x6d, 0x6f, 0x64, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x5d, 0x5d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x58, 0x48, + 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x44, 0x54, 0x44, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, + 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x2e, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a +}; + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Schemas/AsSources/XlinkXsd.cpp b/src/FlightCrew/Schemas/AsSources/XlinkXsd.cpp new file mode 100644 index 0000000..2aa3619 --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/XlinkXsd.cpp @@ -0,0 +1,737 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + XML Linking Language (XLink) Version 1.1, XSD + + Specification: http://www.w3.org/TR/xlink11/ + + Namespace: http://www.w3.org/1999/xlink + + Taken from: http://www.w3.org/1999/xlink.xsd + + */ + +namespace FlightCrew +{ + +const char* XLINK_XSD_ID = "xlink.xsd"; +const unsigned int XLINK_XSD_LEN = 8322; +const unsigned char XLINK_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x27, 0x31, 0x2e, 0x30, 0x27, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x27, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x27, + 0x3f, 0x3e, 0x0d, 0x0a, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x73, 0x3d, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, + 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x20, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, + 0x39, 0x39, 0x2f, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0x20, 0x78, 0x6d, + 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3d, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, 0x6c, + 0x69, 0x6e, 0x6b, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x0d, 0x0a, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x0d, 0x0a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x2c, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x77, 0x68, 0x69, 0x63, + 0x68, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, + 0x64, 0x20, 0x69, 0x6e, 0x0d, 0x0a, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, + 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x66, 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, + 0x72, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x75, 0x6c, 0x61, 0x72, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x69, 0x6e, 0x67, + 0x0d, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2c, 0x20, 0x65, 0x2e, 0x67, 0x2e, 0x0d, 0x0a, 0x3c, 0x21, 0x5b, 0x43, + 0x44, 0x41, 0x54, 0x41, 0x5b, 0x0d, 0x0a, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, + 0x78, 0x73, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, + 0x30, 0x31, 0x2f, 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x78, 0x6c, 0x3d, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x22, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, 0x39, + 0x2f, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x3e, + 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, + 0x79, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x2e, 0x2e, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3e, 0x0d, 0x0a, 0x20, 0x2e, + 0x2e, 0x2e, 0x0d, 0x0a, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x3e, 0x5d, 0x5d, 0x3e, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x0d, + 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x58, 0x4d, 0x4c, 0x2f, 0x31, 0x39, + 0x39, 0x38, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x22, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x79, + 0x70, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, + 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, + 0x79, 0x70, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, + 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x6f, 0x72, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x61, 0x72, + 0x63, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x72, 0x65, + 0x66, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x3a, 0x68, 0x72, 0x65, 0x66, 0x54, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x72, 0x65, 0x66, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x79, 0x55, 0x52, + 0x49, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, + 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x72, 0x6f, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x6f, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x79, 0x55, 0x52, 0x49, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x6d, 0x69, 0x6e, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x31, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x72, 0x63, 0x72, 0x6f, 0x6c, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x3a, 0x61, 0x72, 0x63, 0x72, 0x6f, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x72, 0x63, 0x72, 0x6f, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x6d, 0x69, 0x6e, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x31, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x41, 0x74, 0x74, 0x72, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, + 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x68, 0x6f, + 0x77, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x3a, 0x73, 0x68, 0x6f, 0x77, 0x54, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x68, 0x6f, 0x77, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x65, 0x77, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, + 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x6e, 0x65, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x74, 0x75, 0x61, 0x74, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x3a, 0x61, 0x63, 0x74, 0x75, 0x61, 0x74, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x74, 0x75, 0x61, + 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x6f, 0x6e, 0x4c, 0x6f, 0x61, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6e, + 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6e, 0x6f, 0x6e, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x4e, 0x43, 0x4e, 0x61, 0x6d, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, + 0x72, 0x6f, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x4e, 0x43, 0x4e, + 0x61, 0x6d, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x6f, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x6f, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x4e, 0x43, 0x4e, 0x61, 0x6d, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x41, 0x74, + 0x74, 0x72, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x20, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, + 0x3a, 0x68, 0x72, 0x65, 0x66, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, + 0x3a, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, + 0x3a, 0x61, 0x72, 0x63, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, + 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x73, 0x68, 0x6f, 0x77, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x63, 0x74, 0x75, 0x61, 0x74, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, + 0x61, 0x78, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x69, + 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x75, 0x73, 0x65, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x75, 0x73, 0x65, + 0x72, 0x2d, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, 0x20, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x6d, + 0x61, 0x6b, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x6c, 0x69, 0x6e, + 0x6b, 0x73, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, + 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, + 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x72, 0x6f, 0x6c, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, + 0x6c, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, + 0x3a, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x72, 0x63, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x49, 0x6e, 0x74, + 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x75, 0x73, + 0x65, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x20, 0x6f, 0x66, 0x20, 0x75, 0x73, 0x65, 0x72, 0x2d, 0x64, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x20, + 0x74, 0x68, 0x65, 0x6d, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x6e, 0x6b, 0x73, + 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x4e, 0x6f, 0x74, 0x65, 0x20, + 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, + 0x6c, 0x20, 0x61, 0x72, 0x65, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x61, 0x62, + 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x62, + 0x79, 0x20, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x79, 0x20, 0x64, 0x65, 0x63, + 0x6c, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, + 0x73, 0x65, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, + 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x2c, 0x20, + 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x20, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x77, 0x69, 0x6c, + 0x6c, 0x20, 0x68, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x2e, 0x0d, 0x0a, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, + 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x20, 0x6d, 0x69, 0x6e, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, + 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x64, 0x65, 0x64, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, + 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x45, 0x6c, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, + 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, + 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x20, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, + 0x61, 0x6e, 0x67, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x3a, + 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, + 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2c, 0x20, 0x62, 0x75, + 0x74, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x73, 0x20, 0x6d, + 0x75, 0x63, 0x68, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x6f, 0x74, 0x69, 0x76, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x69, + 0x6e, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, + 0x6f, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x6f, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x69, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x64, 0x20, 0x68, 0x65, 0x72, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, + 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x6e, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x2e, + 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, + 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, + 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6d, + 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x45, + 0x6c, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x3a, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, + 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, + 0x74, 0x74, 0x72, 0x73, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x20, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x72, 0x6f, 0x6c, 0x65, 0x22, + 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, + 0x6c, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, + 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x72, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, + 0x3a, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x74, 0x74, + 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x61, 0x62, + 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x6f, 0x72, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, + 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x66, 0x69, + 0x78, 0x65, 0x64, 0x3d, 0x22, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, + 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x68, + 0x72, 0x65, 0x66, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x3a, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x3a, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, + 0x74, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x2c, 0x20, + 0x62, 0x75, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x73, + 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x6e, 0x6f, 0x20, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x58, 0x4c, 0x69, 0x6e, 0x6b, 0x20, 0x66, 0x75, 0x6e, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x66, 0x20, 0x74, 0x68, 0x65, 0x79, + 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x65, 0x64, 0x2e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0d, 0x0a, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x0d, + 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, + 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x20, + 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, + 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x0d, + 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x22, + 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, + 0x6b, 0x3a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x4d, 0x6f, 0x64, + 0x65, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x3a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x74, + 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x61, 0x72, 0x63, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x72, 0x63, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x20, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x61, 0x72, 0x63, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0x3e, + 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x66, + 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x61, 0x72, 0x63, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x72, 0x63, 0x72, + 0x6f, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, + 0x73, 0x68, 0x6f, 0x77, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, + 0x61, 0x63, 0x74, 0x75, 0x61, 0x74, 0x65, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x3a, 0x66, 0x72, 0x6f, 0x6d, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x3a, 0x74, 0x6f, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x72, + 0x6f, 0x6d, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x68, 0x61, + 0x76, 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x62, + 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x20, 0x77, 0x68, 0x65, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x0d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, + 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, + 0x0a, 0x0d, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x72, 0x63, 0x4d, + 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6c, 0x69, + 0x6e, 0x6b, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0d, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x72, + 0x63, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x78, 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x72, 0x63, 0x4d, + 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6c, 0x69, 0x6e, 0x6b, 0x3a, 0x61, 0x72, 0x63, 0x41, 0x74, 0x74, 0x72, + 0x73, 0x22, 0x2f, 0x3e, 0x0d, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0d, 0x0a, 0x0d, 0x0a, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x3e, 0x0d, 0x0a +}; + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Schemas/AsSources/XmlXsd.cpp b/src/FlightCrew/Schemas/AsSources/XmlXsd.cpp new file mode 100644 index 0000000..dc63d89 --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/XmlXsd.cpp @@ -0,0 +1,780 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + Extensible Markup Language (XML) 1.0 (Fifth Edition), XSD + + Specification: http://www.w3.org/TR/REC-xml/ + + Namespace: http://www.w3.org/XML/1998/namespace + + Taken from: http://www.w3.org/2001/xml.xsd + + */ + +namespace FlightCrew +{ + +const char* XML_XSD_ID = "xml.xsd"; +const unsigned int XML_XSD_LEN = 8836; +const unsigned char XML_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x27, 0x31, 0x2e, 0x30, 0x27, 0x3f, 0x3e, 0x0a, 0x3c, 0x3f, + 0x78, 0x6d, 0x6c, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, + 0x65, 0x74, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x2e, 0x2e, 0x2f, + 0x32, 0x30, 0x30, 0x38, 0x2f, 0x30, 0x39, 0x2f, 0x78, 0x73, 0x64, 0x2e, + 0x78, 0x73, 0x6c, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, + 0x65, 0x78, 0x74, 0x2f, 0x78, 0x73, 0x6c, 0x22, 0x3f, 0x3e, 0x0a, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x58, 0x4d, 0x4c, + 0x2f, 0x31, 0x39, 0x39, 0x38, 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x22, 0x20, 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, + 0x73, 0x3a, 0x78, 0x73, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x58, 0x4d, 0x4c, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x22, 0x20, 0x0a, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, + 0x20, 0x20, 0x20, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, + 0x39, 0x39, 0x39, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x0a, 0x20, + 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x3d, 0x22, 0x65, + 0x6e, 0x22, 0x3e, 0x0a, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x64, + 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x31, 0x3e, + 0x41, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x4d, + 0x4c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3c, + 0x2f, 0x68, 0x31, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, + 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x62, 0x6f, + 0x64, 0x79, 0x74, 0x65, 0x78, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x69, 0x73, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x64, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, + 0x4d, 0x4c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x2c, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x75, 0x69, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, + 0x74, 0x20, 0x62, 0x79, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x65, 0x65, 0x20, 0x3c, 0x61, + 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x58, 0x4d, 0x4c, 0x2f, 0x31, 0x39, 0x39, 0x38, 0x2f, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2e, 0x68, 0x74, 0x6d, 0x6c, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x58, 0x4d, 0x4c, 0x2f, 0x31, 0x39, 0x39, 0x38, 0x2f, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2e, 0x68, 0x74, + 0x6d, 0x6c, 0x3c, 0x2f, 0x61, 0x3e, 0x20, 0x61, 0x6e, 0x64, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x52, + 0x45, 0x43, 0x2d, 0x78, 0x6d, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, + 0x52, 0x45, 0x43, 0x2d, 0x78, 0x6d, 0x6c, 0x3c, 0x2f, 0x61, 0x3e, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, + 0x62, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4e, 0x6f, + 0x74, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, + 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x64, + 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x6f, + 0x6e, 0x6c, 0x79, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x57, + 0x6f, 0x72, 0x6c, 0x64, 0x20, 0x57, 0x69, 0x64, 0x65, 0x20, 0x57, 0x65, + 0x62, 0x20, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x74, 0x69, 0x75, 0x6d, + 0x20, 0x6f, 0x72, 0x20, 0x69, 0x74, 0x73, 0x20, 0x73, 0x75, 0x62, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x73, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x63, + 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x20, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x61, + 0x72, 0x65, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x20, 0x62, 0x65, + 0x6c, 0x6f, 0x77, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x65, 0x79, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6e, + 0x6f, 0x74, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, + 0x69, 0x74, 0x68, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, + 0x69, 0x6e, 0x67, 0x20, 0x73, 0x65, 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, + 0x73, 0x20, 0x62, 0x79, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x57, 0x6f, 0x72, + 0x6b, 0x69, 0x6e, 0x67, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x2c, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x6f, 0x72, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, + 0x3e, 0x20, 0x20, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, + 0x65, 0x65, 0x20, 0x66, 0x75, 0x72, 0x74, 0x68, 0x65, 0x72, 0x20, 0x62, + 0x65, 0x6c, 0x6f, 0x77, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, + 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, + 0x20, 0x3c, 0x61, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x23, 0x75, 0x73, 0x61, 0x67, 0x65, 0x22, 0x3e, + 0x68, 0x6f, 0x77, 0x20, 0x74, 0x6f, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, + 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x79, 0x6f, 0x75, 0x72, 0x20, 0x6f, + 0x77, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x58, 0x53, 0x44, + 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3c, 0x2f, 0x61, 0x3e, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x3c, 0x61, 0x20, 0x68, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x23, 0x6e, 0x73, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x74, 0x68, 0x65, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x2d, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, + 0x6e, 0x67, 0x20, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x20, 0x67, 0x6f, + 0x76, 0x65, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x69, 0x73, + 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x3c, 0x2f, 0x61, 0x3e, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x61, 0x6e, 0x67, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, + 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x33, 0x3e, 0x6c, 0x61, 0x6e, 0x67, + 0x20, 0x28, 0x61, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x3c, + 0x2f, 0x68, 0x33, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, + 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x77, 0x68, 0x6f, 0x73, 0x65, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, + 0x61, 0x67, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x66, 0x6f, 0x72, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, + 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x6f, 0x66, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x20, 0x6f, 0x66, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, + 0x6e, 0x79, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x20, + 0x69, 0x74, 0x73, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x65, 0x64, 0x2e, 0x20, + 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x69, + 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x79, 0x20, 0x76, 0x69, 0x72, + 0x74, 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x73, 0x20, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x73, 0x70, 0x65, + 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x3c, + 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x68, 0x34, 0x3e, 0x4e, 0x6f, 0x74, 0x65, 0x73, 0x3c, 0x2f, 0x68, + 0x34, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, + 0x74, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x6c, 0x65, + 0x76, 0x61, 0x6e, 0x74, 0x20, 0x49, 0x53, 0x4f, 0x20, 0x32, 0x2d, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x33, 0x2d, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x73, + 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x70, 0x6f, 0x73, 0x73, 0x69, + 0x62, 0x6c, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x69, + 0x73, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x6c, 0x79, 0x20, 0x6e, + 0x65, 0x76, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x67, + 0x6f, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20, 0x61, + 0x20, 0x72, 0x65, 0x61, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x63, 0x20, 0x70, + 0x6f, 0x73, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x20, + 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x53, 0x65, 0x65, 0x20, 0x42, 0x43, 0x50, 0x20, 0x34, + 0x37, 0x20, 0x61, 0x74, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x72, 0x66, 0x63, 0x2d, 0x65, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x72, 0x66, 0x63, 0x2f, 0x62, 0x63, 0x70, 0x2f, + 0x62, 0x63, 0x70, 0x34, 0x37, 0x2e, 0x74, 0x78, 0x74, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x72, 0x66, 0x63, 0x2d, 0x65, 0x64, + 0x69, 0x74, 0x6f, 0x72, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x72, 0x66, 0x63, + 0x2f, 0x62, 0x63, 0x70, 0x2f, 0x62, 0x63, 0x70, 0x34, 0x37, 0x2e, 0x74, + 0x78, 0x74, 0x3c, 0x2f, 0x61, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x49, 0x41, 0x4e, + 0x41, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x73, + 0x75, 0x62, 0x74, 0x61, 0x67, 0x20, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, + 0x72, 0x79, 0x20, 0x61, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x61, 0x6e, 0x61, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x2d, 0x73, 0x75, 0x62, 0x74, 0x61, 0x67, 0x2d, 0x72, 0x65, 0x67, + 0x69, 0x73, 0x74, 0x72, 0x79, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x69, 0x61, 0x6e, 0x61, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x61, + 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x6c, + 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x2d, 0x73, 0x75, 0x62, 0x74, + 0x61, 0x67, 0x2d, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x3c, + 0x2f, 0x61, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x66, 0x75, 0x72, 0x74, 0x68, 0x65, 0x72, 0x20, 0x69, 0x6e, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x54, 0x68, 0x65, 0x20, 0x75, 0x6e, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x27, 0x75, 0x6e, 0x2d, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x27, 0x20, 0x6f, 0x66, 0x20, 0x78, 0x6d, 0x6c, + 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6d, 0x70, + 0x74, 0x79, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x75, 0x6e, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3d, 0x22, 0x78, 0x73, + 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x20, 0x20, 0x20, 0x20, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x75, 0x6e, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x0a, + 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x33, 0x3e, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x20, 0x28, 0x61, 0x73, 0x20, 0x61, 0x6e, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x29, 0x3c, 0x2f, 0x68, 0x33, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x64, 0x65, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, + 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x77, + 0x68, 0x6f, 0x73, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x6b, + 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x77, 0x68, 0x61, 0x74, 0x20, 0x77, + 0x68, 0x69, 0x74, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x70, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x73, 0x63, 0x69, 0x70, 0x6c, 0x69, + 0x6e, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x64, + 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3b, 0x20, 0x69, + 0x74, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x68, 0x65, 0x72, + 0x69, 0x74, 0x65, 0x64, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x69, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x76, 0x69, 0x72, 0x74, + 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, + 0x4d, 0x4c, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, + 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x78, 0x73, 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, + 0x73, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x4e, 0x43, 0x4e, 0x61, 0x6d, + 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x0a, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x79, 0x55, + 0x52, 0x49, 0x22, 0x3e, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x33, 0x3e, 0x62, 0x61, 0x73, + 0x65, 0x20, 0x28, 0x61, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x29, + 0x3c, 0x2f, 0x68, 0x33, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, + 0x65, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x77, 0x68, 0x6f, 0x73, + 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x73, 0x20, + 0x61, 0x20, 0x55, 0x52, 0x49, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x6e, + 0x79, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, 0x55, 0x52, 0x49, 0x73, 0x20, 0x69, + 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6f, 0x6e, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, + 0x69, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x70, + 0x70, 0x65, 0x61, 0x72, 0x73, 0x3b, 0x20, 0x69, 0x74, 0x73, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x68, 0x65, + 0x72, 0x69, 0x74, 0x65, 0x64, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x69, 0x73, 0x20, 0x72, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x62, 0x79, 0x20, 0x76, 0x69, 0x72, 0x74, 0x75, 0x65, 0x20, 0x6f, + 0x66, 0x20, 0x69, 0x74, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x58, 0x4d, 0x4c, 0x20, 0x42, 0x61, 0x73, 0x65, 0x20, 0x73, 0x70, 0x65, + 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x3c, + 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x53, 0x65, 0x65, 0x20, 0x3c, 0x61, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x6d, 0x6c, 0x62, 0x61, 0x73, 0x65, + 0x2f, 0x22, 0x3e, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, + 0x78, 0x6d, 0x6c, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x3c, 0x2f, 0x61, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, + 0x62, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, + 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, + 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x78, 0x73, 0x3a, 0x49, 0x44, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x68, 0x33, 0x3e, 0x69, 0x64, 0x20, 0x28, 0x61, 0x73, 0x20, 0x61, + 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x3c, 0x2f, 0x68, 0x33, 0x3e, 0x20, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, 0x6e, 0x6f, 0x74, 0x65, 0x73, + 0x20, 0x61, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x77, 0x68, 0x6f, 0x73, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x68, 0x6f, + 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, + 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, 0x69, 0x66, + 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f, + 0x20, 0x62, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, + 0x49, 0x44, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x69, 0x73, 0x20, + 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, + 0x76, 0x69, 0x72, 0x74, 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, + 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x69, 0x64, 0x20, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x53, 0x65, 0x65, 0x20, 0x3c, 0x61, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x6d, 0x6c, 0x2d, 0x69, 0x64, + 0x2f, 0x22, 0x3e, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, + 0x78, 0x6d, 0x6c, 0x2d, 0x69, 0x64, 0x2f, 0x3c, 0x2f, 0x61, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x6e, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x62, + 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x62, + 0x61, 0x73, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x78, + 0x6d, 0x6c, 0x3a, 0x69, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x3c, 0x2f, + 0x78, 0x73, 0x3a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x3e, 0x0a, 0x0a, 0x20, 0x3c, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x68, 0x33, 0x3e, 0x46, 0x61, 0x74, 0x68, 0x65, + 0x72, 0x20, 0x28, 0x69, 0x6e, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x20, 0x61, 0x74, 0x20, 0x61, 0x6c, 0x6c, + 0x29, 0x3c, 0x2f, 0x68, 0x33, 0x3e, 0x20, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, + 0x22, 0x62, 0x6f, 0x64, 0x79, 0x74, 0x65, 0x78, 0x74, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x64, 0x65, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x20, 0x4a, + 0x6f, 0x6e, 0x20, 0x42, 0x6f, 0x73, 0x61, 0x6b, 0x2c, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x63, 0x68, 0x61, 0x69, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x72, + 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x57, + 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x20, 0x69, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, + 0x20, 0x62, 0x79, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, + 0x20, 0x64, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, + 0x20, 0x74, 0x68, 0x65, 0x20, 0x57, 0x33, 0x43, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x50, 0x6c, 0x65, 0x6e, 0x61, 0x72, 0x79, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, + 0x09, 0x49, 0x6e, 0x20, 0x61, 0x70, 0x70, 0x72, 0x65, 0x63, 0x69, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x68, 0x69, 0x73, + 0x20, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x6c, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x20, 0x61, 0x6e, 0x64, 0x0a, + 0x09, 0x64, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x57, 0x33, 0x43, 0x20, 0x58, 0x4d, 0x4c, 0x20, + 0x50, 0x6c, 0x65, 0x6e, 0x61, 0x72, 0x79, 0x20, 0x6f, 0x6e, 0x20, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x31, 0x30, 0x74, 0x68, 0x20, 0x64, 0x61, 0x79, + 0x20, 0x6f, 0x66, 0x0a, 0x09, 0x46, 0x65, 0x62, 0x72, 0x75, 0x61, 0x72, + 0x79, 0x2c, 0x20, 0x32, 0x30, 0x30, 0x30, 0x2c, 0x20, 0x72, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x4a, 0x6f, + 0x6e, 0x20, 0x42, 0x6f, 0x73, 0x61, 0x6b, 0x20, 0x69, 0x6e, 0x20, 0x70, + 0x65, 0x72, 0x70, 0x65, 0x74, 0x75, 0x69, 0x74, 0x79, 0x0a, 0x09, 0x74, + 0x68, 0x65, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, + 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x46, 0x61, 0x74, 0x68, 0x65, 0x72, 0x22, + 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, + 0x3c, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x78, 0x6d, 0x6c, + 0x3a, 0x69, 0x64, 0x3d, 0x22, 0x75, 0x73, 0x61, 0x67, 0x65, 0x22, 0x20, + 0x69, 0x64, 0x3d, 0x22, 0x75, 0x73, 0x61, 0x67, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x32, 0x3e, 0x3c, 0x61, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x73, 0x61, 0x67, 0x65, 0x22, 0x3e, + 0x41, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x68, 0x32, 0x3e, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3d, 0x22, 0x62, 0x6f, 0x64, 0x79, 0x74, 0x65, 0x78, + 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x73, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x20, 0x73, 0x75, 0x69, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x75, 0x73, 0x65, 0x20, + 0x62, 0x79, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x20, 0x77, + 0x69, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x20, 0x3c, 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x78, 0x6d, + 0x6c, 0x3a, 0x62, 0x61, 0x73, 0x65, 0x3c, 0x2f, 0x63, 0x6f, 0x64, 0x65, + 0x3e, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x63, 0x6f, + 0x64, 0x65, 0x3e, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x3c, + 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x2c, 0x20, 0x3c, 0x63, 0x6f, 0x64, + 0x65, 0x3e, 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3c, + 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x20, 0x6f, 0x72, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x78, 0x6d, + 0x6c, 0x3a, 0x69, 0x64, 0x3c, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x20, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x20, 0x6f, + 0x6e, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x79, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x2e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x54, 0x6f, 0x20, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74, + 0x68, 0x69, 0x73, 0x2c, 0x20, 0x73, 0x75, 0x63, 0x68, 0x20, 0x61, 0x20, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, + 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2c, 0x20, + 0x65, 0x2e, 0x67, 0x2e, 0x20, 0x61, 0x73, 0x20, 0x66, 0x6f, 0x6c, 0x6c, + 0x6f, 0x77, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x72, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x26, 0x6c, 0x74, 0x3b, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x2e, + 0x20, 0x2e, 0x20, 0x2e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x20, 0x2e, 0x20, 0x2e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x26, 0x6c, + 0x74, 0x3b, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x58, 0x4d, 0x4c, 0x2f, 0x31, 0x39, 0x39, 0x38, 0x2f, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x78, + 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x72, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x6f, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x72, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x26, 0x6c, 0x74, 0x3b, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x58, 0x4d, 0x4c, 0x2f, 0x31, 0x39, 0x39, 0x38, + 0x2f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x39, + 0x2f, 0x30, 0x31, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x72, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x75, 0x62, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x2c, 0x20, 0x71, 0x75, 0x61, 0x6c, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x6f, + 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x20, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x62, 0x65, 0x6c, 0x6f, + 0x77, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, + 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x20, + 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x2c, 0x20, 0x65, 0x2e, 0x67, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x72, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x26, 0x6c, 0x74, 0x3b, + 0x74, 0x79, 0x70, 0x65, 0x20, 0x2e, 0x20, 0x2e, 0x20, 0x2e, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, + 0x20, 0x2e, 0x20, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x26, 0x6c, 0x74, 0x3b, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x65, 0x63, + 0x69, 0x61, 0x6c, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x72, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x20, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x77, 0x68, + 0x69, 0x63, 0x68, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x2d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, + 0x20, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x6e, 0x79, 0x20, + 0x6f, 0x66, 0x20, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x20, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x2e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x3c, 0x78, + 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x6e, + 0x73, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x22, + 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x69, 0x64, 0x3d, 0x22, 0x6e, 0x73, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x32, 0x3e, 0x3c, 0x61, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6e, 0x73, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x3e, 0x56, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x68, 0x32, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3d, 0x22, 0x62, 0x6f, 0x64, 0x79, 0x74, 0x65, 0x78, 0x74, 0x22, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x49, 0x6e, 0x20, 0x6b, 0x65, 0x65, 0x70, + 0x69, 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, + 0x57, 0x47, 0x27, 0x73, 0x20, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, + 0x64, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x6f, 0x6c, 0x69, 0x63, + 0x79, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, + 0x20, 0x61, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, + 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, + 0x2f, 0x32, 0x30, 0x30, 0x39, 0x2f, 0x30, 0x31, 0x2f, 0x78, 0x6d, 0x6c, + 0x2e, 0x78, 0x73, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x39, + 0x2f, 0x30, 0x31, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x3c, + 0x2f, 0x61, 0x3e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x41, 0x74, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x64, 0x61, 0x74, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x73, 0x73, + 0x75, 0x65, 0x20, 0x69, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x61, 0x6c, + 0x73, 0x6f, 0x20, 0x62, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, + 0x61, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x20, + 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x78, 0x6d, 0x6c, + 0x2e, 0x78, 0x73, 0x64, 0x3c, 0x2f, 0x61, 0x3e, 0x2e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, + 0x68, 0x65, 0x20, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x74, 0x20, 0x74, 0x68, + 0x61, 0x74, 0x20, 0x55, 0x52, 0x49, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x68, + 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x75, 0x74, + 0x75, 0x72, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, + 0x6e, 0x20, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x72, + 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, + 0x69, 0x62, 0x6c, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x20, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x58, 0x4d, 0x4c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x20, 0x69, 0x74, 0x73, 0x65, 0x6c, 0x66, 0x2c, 0x20, 0x6f, 0x72, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x58, 0x4d, 0x4c, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x69, + 0x74, 0x73, 0x65, 0x6c, 0x66, 0x2e, 0x20, 0x20, 0x49, 0x6e, 0x20, 0x6f, + 0x74, 0x68, 0x65, 0x72, 0x20, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x20, + 0x6f, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x73, 0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x61, 0x74, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, + 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, + 0x30, 0x30, 0x31, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x61, 0x3e, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x61, 0x63, 0x63, 0x6f, 0x72, + 0x64, 0x69, 0x6e, 0x67, 0x6c, 0x79, 0x3b, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x20, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, + 0x39, 0x2f, 0x30, 0x31, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, + 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x39, 0x2f, 0x30, 0x31, 0x2f, + 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x20, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x61, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x6e, 0x6f, 0x74, 0x20, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x72, 0x65, + 0x76, 0x69, 0x6f, 0x75, 0x73, 0x20, 0x64, 0x61, 0x74, 0x65, 0x64, 0x20, + 0x28, 0x61, 0x6e, 0x64, 0x20, 0x75, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x69, 0x6e, 0x67, 0x29, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x72, 0x65, + 0x20, 0x61, 0x74, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x75, 0x6c, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x69, 0x3e, 0x3c, + 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x32, 0x30, 0x30, 0x39, 0x2f, 0x30, 0x31, 0x2f, 0x78, 0x6d, + 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x3e, 0x0a, 0x09, 0x68, 0x74, 0x74, + 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, + 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x39, 0x2f, 0x30, 0x31, 0x2f, 0x78, + 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, + 0x6c, 0x69, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, + 0x69, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x37, 0x2f, 0x30, 0x38, + 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x22, 0x3e, 0x0a, 0x09, + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, + 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x37, 0x2f, 0x30, + 0x38, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x3c, 0x2f, 0x61, + 0x3e, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x6c, 0x69, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x34, + 0x2f, 0x31, 0x30, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, 0x22, + 0x3e, 0x0a, 0x09, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, + 0x34, 0x2f, 0x31, 0x30, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, 0x73, 0x64, + 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x69, 0x3e, 0x3c, 0x61, 0x20, 0x68, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, + 0x30, 0x30, 0x31, 0x2f, 0x30, 0x33, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, 0x78, + 0x73, 0x64, 0x22, 0x3e, 0x0a, 0x09, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, + 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x32, 0x30, 0x30, 0x31, 0x2f, 0x30, 0x33, 0x2f, 0x78, 0x6d, 0x6c, 0x2e, + 0x78, 0x73, 0x64, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x75, 0x6c, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x78, 0x73, 0x3a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x3c, 0x2f, 0x78, 0x73, + 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, + 0x0a, 0x0a, 0x3c, 0x2f, 0x78, 0x73, 0x3a, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x3e, 0x0a, 0x0a +}; + +} //namespace FlightCrew diff --git a/src/FlightCrew/Schemas/AsSources/XmldsigCoreSchemaXsd.cpp b/src/FlightCrew/Schemas/AsSources/XmldsigCoreSchemaXsd.cpp new file mode 100644 index 0000000..16d44e6 --- /dev/null +++ b/src/FlightCrew/Schemas/AsSources/XmldsigCoreSchemaXsd.cpp @@ -0,0 +1,878 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include + +/* + XML Signature Syntax and Processing (Second Edition), XSD + + Specification: http://www.w3.org/TR/xmldsig-core/ + + Namespace: http://www.w3.org/2000/09/xmldsig# + + Taken from: http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd + + */ + +namespace FlightCrew +{ + +const char* XMLDSIG_CORE_SCHEMA_XSD_ID = "xmldsig-core-schema.xsd"; +const unsigned int XMLDSIG_CORE_SCHEMA_XSD_LEN = 10003; +const unsigned char XMLDSIG_CORE_SCHEMA_XSD[] = { + 0x3c, 0x3f, 0x78, 0x6d, 0x6c, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x3d, 0x22, 0x31, 0x2e, 0x30, 0x22, 0x20, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x75, 0x74, 0x66, 0x2d, 0x38, 0x22, + 0x3f, 0x3e, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x58, 0x4d, 0x4c, 0x20, 0x53, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x30, + 0x2f, 0x30, 0x39, 0x2f, 0x78, 0x6d, 0x6c, 0x64, 0x73, 0x69, 0x67, 0x23, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x24, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x3a, 0x20, 0x31, 0x2e, 0x31, 0x20, 0x24, 0x20, 0x6f, 0x6e, + 0x20, 0x24, 0x44, 0x61, 0x74, 0x65, 0x3a, 0x20, 0x32, 0x30, 0x30, 0x32, + 0x2f, 0x30, 0x32, 0x2f, 0x30, 0x38, 0x20, 0x32, 0x30, 0x3a, 0x33, 0x32, + 0x3a, 0x32, 0x36, 0x20, 0x24, 0x20, 0x62, 0x79, 0x20, 0x24, 0x41, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x3a, 0x20, 0x72, 0x65, 0x61, 0x67, 0x6c, 0x65, + 0x20, 0x24, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x43, 0x6f, 0x70, 0x79, + 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x30, 0x31, 0x20, 0x54, + 0x68, 0x65, 0x20, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x20, + 0x53, 0x6f, 0x63, 0x69, 0x65, 0x74, 0x79, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x57, 0x33, 0x43, 0x20, 0x28, 0x4d, 0x61, 0x73, 0x73, 0x61, 0x63, 0x68, + 0x75, 0x73, 0x65, 0x74, 0x74, 0x73, 0x20, 0x49, 0x6e, 0x73, 0x74, 0x69, + 0x74, 0x75, 0x74, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x66, 0x20, + 0x54, 0x65, 0x63, 0x68, 0x6e, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x2c, 0x20, + 0x49, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x20, 0x4e, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x64, 0x65, 0x20, 0x52, 0x65, 0x63, + 0x68, 0x65, 0x72, 0x63, 0x68, 0x65, 0x20, 0x65, 0x6e, 0x20, 0x49, 0x6e, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x71, 0x75, 0x65, 0x20, 0x65, + 0x74, 0x20, 0x65, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x41, 0x75, 0x74, + 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x71, 0x75, 0x65, 0x2c, 0x20, 0x4b, 0x65, + 0x69, 0x6f, 0x20, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x74, + 0x79, 0x29, 0x2e, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x73, 0x20, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, + 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x43, + 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x74, 0x69, 0x75, 0x6d, 0x2f, 0x4c, 0x65, + 0x67, 0x61, 0x6c, 0x2f, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, + 0x69, 0x73, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x69, 0x73, 0x20, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x65, 0x64, 0x20, + 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x57, 0x33, 0x43, 0x20, 0x53, + 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x20, 0x4c, 0x69, 0x63, 0x65, + 0x6e, 0x73, 0x65, 0x20, 0x5b, 0x31, 0x5d, 0x20, 0x61, 0x73, 0x20, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x46, 0x41, 0x51, 0x20, + 0x5b, 0x32, 0x5d, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x5b, 0x31, + 0x5d, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, + 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x43, 0x6f, 0x6e, 0x73, + 0x6f, 0x72, 0x74, 0x69, 0x75, 0x6d, 0x2f, 0x4c, 0x65, 0x67, 0x61, 0x6c, + 0x2f, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x73, + 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x2d, 0x31, 0x39, 0x39, 0x38, + 0x30, 0x37, 0x32, 0x30, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x5b, 0x32, 0x5d, + 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x43, 0x6f, 0x6e, 0x73, 0x6f, + 0x72, 0x74, 0x69, 0x75, 0x6d, 0x2f, 0x4c, 0x65, 0x67, 0x61, 0x6c, 0x2f, + 0x49, 0x50, 0x52, 0x2d, 0x46, 0x41, 0x51, 0x2d, 0x32, 0x30, 0x30, 0x30, + 0x30, 0x36, 0x32, 0x30, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x23, 0x44, 0x54, + 0x44, 0x0a, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x0a, 0x3c, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3d, 0x22, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, 0x31, 0x2f, 0x58, 0x4d, + 0x4c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a, 0x64, + 0x73, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, + 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, 0x30, + 0x30, 0x2f, 0x30, 0x39, 0x2f, 0x78, 0x6d, 0x6c, 0x64, 0x73, 0x69, 0x67, + 0x23, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, + 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x32, 0x30, + 0x30, 0x30, 0x2f, 0x30, 0x39, 0x2f, 0x78, 0x6d, 0x6c, 0x64, 0x73, 0x69, + 0x67, 0x23, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x30, 0x2e, 0x31, + 0x22, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x6f, 0x72, + 0x6d, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3d, 0x22, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x22, 0x3e, 0x20, 0x0a, 0x0a, + 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, 0x61, 0x73, 0x69, 0x63, 0x20, 0x54, + 0x79, 0x70, 0x65, 0x73, 0x20, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, + 0x20, 0x66, 0x6f, 0x72, 0x20, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x42, 0x69, 0x6e, + 0x61, 0x72, 0x79, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x72, 0x65, 0x73, + 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, + 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x42, 0x69, 0x6e, + 0x61, 0x72, 0x79, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x72, 0x65, + 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x3c, + 0x2f, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x20, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x69, 0x67, 0x6e, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x3c, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, + 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x4b, 0x65, + 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x2f, 0x3e, 0x20, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x20, 0x20, 0x0a, + 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x64, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x49, 0x44, 0x22, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, 0x2f, + 0x3e, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, + 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, + 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x69, 0x67, 0x6e, + 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x22, + 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x49, 0x44, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x53, 0x69, 0x67, 0x6e, + 0x65, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x66, + 0x6f, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, + 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x43, 0x61, 0x6e, 0x6f, 0x6e, 0x69, 0x63, + 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, + 0x68, 0x6f, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x2f, 0x3e, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x52, 0x65, + 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x20, + 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x49, 0x44, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x43, 0x61, 0x6e, 0x6f, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x43, + 0x61, 0x6e, 0x6f, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x43, 0x61, 0x6e, 0x6f, 0x6e, 0x69, 0x63, 0x61, 0x6c, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, + 0x61, 0x6e, 0x79, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, + 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x28, 0x30, 0x2c, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x29, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x28, 0x31, + 0x2c, 0x31, 0x29, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x41, 0x6c, 0x67, 0x6f, 0x72, + 0x69, 0x74, 0x68, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, + 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x4d, 0x65, + 0x74, 0x68, 0x6f, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x4d, 0x65, 0x74, 0x68, + 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, + 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x48, 0x4d, + 0x41, 0x43, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x48, 0x4d, 0x41, 0x43, 0x4f, 0x75, 0x74, 0x70, 0x75, + 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x54, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, + 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, + 0x22, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x28, + 0x30, 0x2c, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x29, + 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x66, 0x72, + 0x6f, 0x6d, 0x20, 0x28, 0x31, 0x2c, 0x31, 0x29, 0x20, 0x65, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x41, 0x6c, 0x67, + 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, + 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x52, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x52, + 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x0a, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x52, + 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, + 0x73, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x73, + 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, + 0x22, 0x30, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x64, 0x73, 0x3a, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x4d, 0x65, + 0x74, 0x68, 0x6f, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, + 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x64, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x49, 0x44, 0x22, 0x20, 0x75, 0x73, 0x65, + 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, 0x2f, + 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x55, 0x52, + 0x49, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x79, + 0x55, 0x52, 0x49, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, + 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, + 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, + 0x72, 0x6d, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, + 0x73, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x73, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, + 0x72, 0x6d, 0x73, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x20, 0x6d, + 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, + 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, + 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, + 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, 0x74, 0x68, + 0x65, 0x72, 0x22, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x28, 0x31, 0x2c, 0x31, 0x29, 0x20, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x28, + 0x30, 0x2c, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x29, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x58, 0x50, 0x61, 0x74, 0x68, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x22, + 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, + 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x6e, 0x64, 0x20, 0x52, 0x65, + 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, + 0x0a, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x4d, 0x65, + 0x74, 0x68, 0x6f, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, + 0x68, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x3c, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, + 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, + 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, + 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, + 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x20, 0x20, + 0x20, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x41, 0x6c, + 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x44, 0x69, + 0x67, 0x65, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x3c, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x44, + 0x69, 0x67, 0x65, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x72, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x61, 0x73, 0x65, + 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x42, 0x69, 0x6e, 0x61, + 0x72, 0x79, 0x22, 0x2f, 0x3e, 0x0a, 0x3c, 0x2f, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x45, 0x6e, 0x64, 0x20, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, + 0x49, 0x6e, 0x66, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x4b, 0x65, 0x79, + 0x49, 0x6e, 0x66, 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x4b, 0x65, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x4b, 0x65, 0x79, 0x49, 0x6e, + 0x66, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4b, 0x65, 0x79, 0x49, 0x6e, 0x66, + 0x6f, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, + 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, + 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x65, 0x64, 0x22, 0x3e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x4b, 0x65, 0x79, 0x4e, + 0x61, 0x6d, 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, 0x6c, + 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x58, 0x35, 0x30, 0x39, + 0x44, 0x61, 0x74, 0x61, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x50, 0x47, 0x50, 0x44, 0x61, 0x74, + 0x61, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x53, 0x50, 0x4b, 0x49, 0x44, 0x61, 0x74, 0x61, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, + 0x4d, 0x67, 0x6d, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, + 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, + 0x72, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x28, 0x31, 0x2c, 0x31, 0x29, 0x20, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x28, 0x30, + 0x2c, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x29, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x64, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x49, 0x44, 0x22, 0x20, + 0x75, 0x73, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4d, 0x67, 0x6d, + 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x0a, + 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, + 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, 0x22, 0x74, + 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x63, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x64, 0x73, 0x3a, 0x44, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x52, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, + 0x22, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, 0x6c, 0x4d, + 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x64, 0x73, 0x3a, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, + 0x6c, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, + 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x61, 0x6c, 0x4d, 0x65, + 0x74, 0x68, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, + 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x22, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x20, 0x20, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x55, 0x52, 0x49, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x79, 0x55, + 0x52, 0x49, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x58, 0x35, 0x30, + 0x39, 0x44, 0x61, 0x74, 0x61, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x58, 0x35, 0x30, 0x39, 0x44, 0x61, 0x74, 0x61, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x58, 0x35, 0x30, + 0x39, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, + 0x20, 0x0a, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x58, 0x35, 0x30, + 0x39, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x20, + 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x58, 0x35, 0x30, + 0x39, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x53, 0x65, 0x72, 0x69, 0x61, + 0x6c, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, + 0x58, 0x35, 0x30, 0x39, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x53, 0x65, + 0x72, 0x69, 0x61, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x58, 0x35, 0x30, + 0x39, 0x53, 0x4b, 0x49, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x58, 0x35, 0x30, 0x39, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x58, 0x35, 0x30, 0x39, 0x43, + 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, + 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x58, 0x35, 0x30, 0x39, 0x43, + 0x52, 0x4c, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x61, + 0x73, 0x65, 0x36, 0x34, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, + 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, + 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, + 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x58, 0x35, 0x30, 0x39, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x53, 0x65, + 0x72, 0x69, 0x61, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x20, 0x0a, + 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x58, 0x35, 0x30, + 0x39, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x58, 0x35, 0x30, 0x39, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x22, 0x2f, 0x3e, 0x20, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x45, 0x6e, 0x64, 0x20, 0x58, 0x35, 0x30, 0x39, 0x44, 0x61, 0x74, 0x61, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, + 0x65, 0x67, 0x69, 0x6e, 0x20, 0x50, 0x47, 0x50, 0x44, 0x61, 0x74, 0x61, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x50, 0x47, 0x50, + 0x44, 0x61, 0x74, 0x61, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x50, 0x47, 0x50, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x50, 0x47, 0x50, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x50, 0x47, 0x50, 0x4b, 0x65, 0x79, 0x49, 0x44, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, + 0x36, 0x34, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x2f, 0x3e, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x50, 0x47, + 0x50, 0x4b, 0x65, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, + 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x2f, 0x3e, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, + 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x70, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, + 0x22, 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, + 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x50, 0x47, 0x50, 0x4b, 0x65, + 0x79, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x42, 0x69, 0x6e, + 0x61, 0x72, 0x79, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, + 0x72, 0x22, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, + 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, + 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x3e, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x45, + 0x6e, 0x64, 0x20, 0x50, 0x47, 0x50, 0x44, 0x61, 0x74, 0x61, 0x20, 0x2d, + 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x42, 0x65, 0x67, + 0x69, 0x6e, 0x20, 0x53, 0x50, 0x4b, 0x49, 0x44, 0x61, 0x74, 0x61, 0x20, + 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x50, 0x4b, 0x49, + 0x44, 0x61, 0x74, 0x61, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x53, 0x50, 0x4b, 0x49, 0x44, 0x61, 0x74, 0x61, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x50, 0x4b, 0x49, 0x44, 0x61, 0x74, 0x61, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x6d, 0x61, 0x78, 0x4f, 0x63, 0x63, + 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x53, 0x50, 0x4b, 0x49, 0x53, 0x65, 0x78, 0x70, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x42, 0x69, + 0x6e, 0x61, 0x72, 0x79, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, + 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x20, 0x6d, + 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x20, 0x0a, 0x0a, 0x3c, 0x21, + 0x2d, 0x2d, 0x20, 0x45, 0x6e, 0x64, 0x20, 0x53, 0x50, 0x4b, 0x49, 0x44, + 0x61, 0x74, 0x61, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x45, 0x6e, 0x64, 0x20, 0x4b, 0x65, 0x79, 0x49, 0x6e, 0x66, + 0x6f, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x20, 0x28, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x2c, 0x20, + 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x50, 0x72, 0x6f, + 0x70, 0x65, 0x72, 0x74, 0x79, 0x29, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x6d, 0x69, 0x6e, 0x4f, + 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x61, 0x6e, 0x79, 0x22, 0x20, + 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, 0x22, 0x2f, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x49, 0x44, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x4d, 0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x20, + 0x75, 0x73, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x22, 0x2f, 0x3e, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x64, + 0x64, 0x20, 0x61, 0x20, 0x67, 0x72, 0x65, 0x70, 0x20, 0x66, 0x61, 0x63, + 0x65, 0x74, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x79, 0x55, 0x52, 0x49, + 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x4d, 0x61, + 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, + 0x3e, 0x20, 0x0a, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, + 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4d, 0x61, + 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x52, + 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x20, 0x6d, 0x61, + 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, + 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, + 0x0a, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x64, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x49, 0x44, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, + 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x70, + 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x22, 0x64, 0x73, 0x3a, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x22, 0x20, 0x6d, + 0x61, 0x78, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x64, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x49, 0x44, 0x22, 0x20, 0x75, + 0x73, 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x22, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x53, 0x69, 0x67, 0x6e, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, + 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x69, 0x67, 0x6e, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x3d, + 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6d, 0x61, 0x78, + 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x75, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x61, 0x6e, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x3d, 0x22, 0x23, 0x23, 0x6f, 0x74, 0x68, + 0x65, 0x72, 0x22, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x78, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x28, 0x31, 0x2c, 0x31, 0x29, 0x20, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, + 0x28, 0x31, 0x2c, 0x75, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x29, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, + 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x6e, 0x79, 0x55, + 0x52, 0x49, 0x22, 0x20, 0x75, 0x73, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x49, 0x64, 0x22, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x49, 0x44, 0x22, 0x20, 0x75, 0x73, + 0x65, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, + 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, + 0x21, 0x2d, 0x2d, 0x20, 0x45, 0x6e, 0x64, 0x20, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x20, 0x28, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, + 0x2c, 0x20, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x50, + 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x29, 0x20, 0x2d, 0x2d, 0x3e, + 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x20, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x20, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x2d, 0x2d, + 0x3e, 0x0a, 0x0a, 0x3c, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x48, 0x4d, 0x41, + 0x43, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, + 0x61, 0x73, 0x65, 0x3d, 0x22, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, + 0x22, 0x2f, 0x3e, 0x0a, 0x3c, 0x2f, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x20, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x20, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2d, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x44, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x44, + 0x53, 0x41, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x3c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x44, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x50, 0x22, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x43, 0x72, + 0x79, 0x70, 0x74, 0x6f, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x51, + 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x43, + 0x72, 0x79, 0x70, 0x74, 0x6f, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x47, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, + 0x73, 0x3a, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x42, 0x69, 0x6e, 0x61, + 0x72, 0x79, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x59, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x42, 0x69, 0x6e, + 0x61, 0x72, 0x79, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x4a, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, + 0x73, 0x3a, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x42, 0x69, 0x6e, 0x61, + 0x72, 0x79, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, + 0x73, 0x3d, 0x22, 0x30, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x6d, 0x69, + 0x6e, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x53, 0x65, + 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, + 0x3a, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x42, 0x69, 0x6e, 0x61, 0x72, + 0x79, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x50, 0x67, 0x65, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, + 0x72, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, + 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, + 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, 0x3c, 0x2f, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x3e, + 0x0a, 0x0a, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x52, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x64, 0x73, 0x3a, 0x52, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x2f, 0x3e, 0x0a, 0x3c, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x54, 0x79, 0x70, 0x65, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x52, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x20, + 0x20, 0x3c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x75, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, + 0x3a, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x42, 0x69, 0x6e, 0x61, 0x72, + 0x79, 0x22, 0x2f, 0x3e, 0x20, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x65, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x45, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x64, 0x73, 0x3a, 0x43, 0x72, 0x79, 0x70, + 0x74, 0x6f, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x2f, 0x3e, 0x20, + 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x3e, 0x0a, 0x3c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, + 0x54, 0x79, 0x70, 0x65, 0x3e, 0x20, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, + 0x20, 0x45, 0x6e, 0x64, 0x20, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2d, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x21, 0x2d, + 0x2d, 0x20, 0x45, 0x6e, 0x64, 0x20, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x20, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x3c, 0x2f, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x3e, 0x0a +}; + + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Schemas/container.xsd b/src/FlightCrew/Schemas/container.xsd new file mode 100644 index 0000000..53a17cc --- /dev/null +++ b/src/FlightCrew/Schemas/container.xsd @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/encryption.xsd b/src/FlightCrew/Schemas/encryption.xsd new file mode 100644 index 0000000..8a1f54c --- /dev/null +++ b/src/FlightCrew/Schemas/encryption.xsd @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/ncx-2005-1.dtd b/src/FlightCrew/Schemas/ncx-2005-1.dtd new file mode 100644 index 0000000..441b2cc --- /dev/null +++ b/src/FlightCrew/Schemas/ncx-2005-1.dtd @@ -0,0 +1,269 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/ncx.xsd b/src/FlightCrew/Schemas/ncx.xsd new file mode 100644 index 0000000..84c8d9d --- /dev/null +++ b/src/FlightCrew/Schemas/ncx.xsd @@ -0,0 +1,201 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/ops201.xsd b/src/FlightCrew/Schemas/ops201.xsd new file mode 100644 index 0000000..b66b98c --- /dev/null +++ b/src/FlightCrew/Schemas/ops201.xsd @@ -0,0 +1,2201 @@ + + + + + + Open Publication Structure (OPS) 2.0.1 v1.0 in XML Schema + + + + + + + + + + + + ================ Character mnemonic entities ========================= + + XHTML entity sets are identified by the PUBLIC and SYSTEM identifiers: + + PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN" + SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent" + + PUBLIC "-//W3C//ENTITIES Special for XHTML//EN" + SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml-special.ent" + + PUBLIC "-//W3C//ENTITIES Symbols for XHTML//EN" + SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml-symbol.ent" + + + + + + ================== Imported Names ==================================== + + + + + + + media type, as per [RFC2045] + + + + + + + + + comma-separated list of media types, as per [RFC2045] + + + + + + + + + a character encoding, as per [RFC2045] + + + + + + + + + a space separated list of character encodings, as per [RFC2045] + + + + + + + + + a language code, as per [RFC3066] + + + + + + + + + a single character, as per section 2.2 of [XML] + + + + + + + + + + + one or more digits + + + + + + + + + + + tabindex attribute specifies the position of the current element + in the tabbing order for the current document. This value must be + a number between 0 and 32767. User agents should ignore leading zeros. + + + + + + + + + + + + space-separated list of link types + + + + + + + + + single or comma-separated list of media descriptors + + + + + + + + + + + a Uniform Resource Identifier, see [RFC2396] + + + + + + + + + a space separated list of Uniform Resource Identifiers + + + + + + + + + date and time information. ISO date format + + + + + + + + + script expression + + + + + + + + + style sheet data + + + + + + + + + used for titles etc. + + + + + + + + + nn for pixels or nn% for percentage length + + + + + + + + + + + pixel, percentage, or relative + + + + + + + + + + + integer representing length in pixels + + + + + + + + these are used for image maps + + + + + + + + + + + + + + + + comma separated list of lengths + + + + + + + + + + =================== Generic Attributes =============================== + + + + + + + core attributes common to most elements + id document-wide unique id + class space separated list of classes + style associated style info + title advisory title/amplification + + + + + + + + + + + + internationalization attributes + xml:lang language code (as per XML 1.0 spec) + dir direction for weak/neutral text + + + + + + + + + + + + + + + + + attributes for common UI events + onclick a pointer button was clicked + ondblclick a pointer button was double clicked + onmousedown a pointer button was pressed down + onmouseup a pointer button was released + onmousemove a pointer was moved onto the element + onmouseout a pointer was moved away from the element + onkeypress a key was pressed and released + onkeydown a key was pressed down + onkeyup a key was released + + + + + + + + + + + + + + + + + + attributes for elements that can get the focus + accesskey accessibility key character + tabindex position in tabbing order + onfocus the element got the focus + onblur the element lost the focus + + + + + + + + + + + + + + + + + =================== Text Elements ==================================== + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + these can only occur at block level + + + + + + + + + + + + + + + + + + + + + + "Inline" covers inline or "text-level" elements + + + + + + + + + + + ================== Block level elements ============================== + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + "Flow" mixes block and inline and is used for list items etc. + + + + + + + + + + + + + ================== Content models for exclusions ===================== + + + + + + + a elements use "Inline" excluding a + + + + + + + + + + + + + + + pre uses "Inline" excluding big, small, sup or sup + + + + + + + + + + + + + + + + form uses "Block" excluding form + + + + + + + + + + + + button uses "Flow" but excludes a, form and form controls + + + + + + + + + + + + + + + + + + + ================ Document Structure ================================== + + + + + + + + + + + + + + + + + ================ Document Head ======================================= + + + + + + + + + + + + + + + + + + + content model is "head.misc" combined with a single + title and an optional base element in any order + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The title element is not considered part of the flow of text. + It should be displayed, for example as the page header or + window title. Exactly one title is required per document. + + + + + + + + + + + + document base URI + + + + + + + + + + + + generic metainformation + + + + + + + + + + + + + + + + Relationship values can be used in principle: + + a) for document specific toolbars/menus when used + with the link element in document head e.g. + start, contents, previous, next, index, end, help + b) to link to a separate style sheet (rel="stylesheet") + c) to make a link to a script (rel="script") + d) by stylesheets to control how collections of + html nodes are rendered into printed documents + e) to make a link to a printable version of this document + e.g. a PostScript or PDF version (rel="alternate" media="print") + + + + + + + + + + + + + + + + + + style info, which may include CDATA sections + + + + + + + + + + + + + + + + script statements, which may include CDATA sections + + + + + + + + + + + + + + + + + + + + + + alternate content container for non script-based rendering + + + + + + + + + + + + + + =================== Document Body ==================================== + + + + + + + + + + + + + + + + + + + generic language/style container + + + + + + + + + + + + + + =================== Paragraphs ======================================= + + + + + + + + + + + + + + + + =================== Headings ========================================= + + There are six levels of headings from h1 (the most important) + to h6 (the least important). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + =================== Lists ============================================ + + + + + + + Unordered list + + + + + + + + + + + + + + Ordered (numbered) list + + + + + + + + + + + + + + list item + + + + + + + + + + + + + + definition lists - dt for term, dd for its definition + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + =================== Address ========================================== + + + + + + + information on author + + + + + + + + + + + + + + =================== Horizontal Rule ================================== + + + + + + + + + + + + =================== Preformatted Text ================================ + + + + + + + content is "Inline" excluding "img|object|big|small|sub|sup" + + + + + + + + + + + + + + + =================== Block-like Quotes ================================ + + + + + + + + + + + + + + + + + =================== Inserted/Deleted Text ============================ + + ins/del are allowed in block and inline content, but its + inappropriate to include block content within an ins element + occurring in inline content. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ================== The Anchor Element ================================ + + + + + + + content is "Inline" except that anchors shouldn't be nested + + + + + + + + + + + + + + + + + + + + + + + ===================== Inline Elements ================================ + + + + + + + generic language/style container + + + + + + + + + + + + + + + I18N BiDi over-ride + + + + + + + + + + + + + + + + + + + + + + + + + forced line break + + + + + + + + + + + emphasis + + + + + + + + + + + + + + + strong emphasis + + + + + + + + + + + + + + + definitional + + + + + + + + + + + + + + + program code + + + + + + + + + + + + + + + sample + + + + + + + + + + + + + + + something user would type + + + + + + + + + + + + + + + variable + + + + + + + + + + + + + + + citation + + + + + + + + + + + + + + + abbreviation + + + + + + + + + + + + + + + acronym + + + + + + + + + + + + + + + inlined quote + + + + + + + + + + + + + + + + subscript + + + + + + + + + + + + + + + superscript + + + + + + + + + + + + + + + fixed pitch font + + + + + + + + + + + + + + + italic font + + + + + + + + + + + + + + + bold font + + + + + + + + + + + + + + + bigger font + + + + + + + + + + + + + + + smaller font + + + + + + + + + + + + + + ==================== Object ====================================== + + object is used to embed objects as part of HTML pages. + param elements should precede other content. Parameters + can also be expressed as attribute/value pairs on the + object element itself when brevity is desired. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + param is used to supply a named property value. + In XML it would seem natural to follow RDF and support an + abbreviated syntax where the param elements are replaced + by attribute value pairs on the object start tag. + + + + + + + + + + + + + + + + + + + + + + =================== Images =========================================== + + To avoid accessibility problems for people who aren't + able to see the image, you should provide a text + description using the alt and longdesc attributes. + In addition, avoid the use of server-side image maps. + Note that in this DTD there is no name attribute. That + is only available in the transitional and frameset DTD. + + + + + + + + + + + + + + + usemap points to a map element which may be in this document + or an external document, although the latter is not widely supported + + + + + + + + + + + + + + + + ================== Client-side image maps ============================ + + These can be placed in the same document or grouped in a + separate document although this isn't yet widely supported + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ================ Forms =============================================== + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Each label must not contain more than ONE field + Label elements shouldn't be nested. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + form control + + + + + + + + + + the name attribute is required for all but submit & reset + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + option selector + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + option group + + + + + + + + + + + + + + + + + + + + + + selectable choice + + + + + + + + + + + + + + + + + + + + + + + + + + + multi-line text field + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The fieldset element is used to group form fields. + Only one legend element should occur in the content + and if present should only be preceded by whitespace. + + NOTE: this content model is different from the XHTML 1.0 DTD, + closer to the intended content model in HTML4 DTD + + + + + + + + + + + + + + + + + + + + fieldset label + + + + + + + + + + + + + + + + Content is "Flow" excluding a, form and form controls + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ======================= Tables ======================================= + + Derived from IETF HTML table standard, see [RFC1942] + + + + + + + The border attribute sets the thickness of the frame around the + table. The default units are screen pixels. + + The frame attribute specifies which parts of the frame around + the table should be rendered. The values are not the same as + CALS to avoid a name clash with the valign attribute. + + + + + + + + + + + + + + + + + + + The rules attribute defines which rules to draw between cells: + + If rules is absent then assume: + "none" if border is absent or border="0" otherwise "all" + + + + + + + + + + + + + + + horizontal alignment attributes for cell contents + + char alignment char, e.g. char=':' + charoff offset for alignment char + + + + + + + + + + + + + + + + + + + + + vertical alignment attributes for cell contents + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Use thead to duplicate headers when breaking table + across page boundaries, or for static headers when + tbody sections are rendered in scrolling panel. + + Use tfoot to duplicate footers when breaking table + across page boundaries, or for static footers when + tbody sections are rendered in scrolling panel. + + Use multiple tbody sections when rules are needed + between groups of table rows. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + colgroup groups a set of col elements. It allows you to group + several semantically related columns together. + + + + + + + + + + + + + + + + + + col elements define the alignment properties for cells in + one or more columns. + + The width attribute specifies the width of the columns, e.g. + + width=64 width in screen pixels + width=0.5* relative width of 0.5 + + The span attribute causes the attributes of one + col element to apply to more than one column. + + + + + + + + + + + + + + + + + + + + + + + + + + + Scope is simpler than headers attribute for common tables + + + + + + + + + + + + + th is for headers, td for data and for cells acting as both + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/ops_switch.xsd b/src/FlightCrew/Schemas/ops_switch.xsd new file mode 100644 index 0000000..38b0aaa --- /dev/null +++ b/src/FlightCrew/Schemas/ops_switch.xsd @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + Anything goes. + + + + + + + + + + + + + + + Basically any XHTML content is allowed; acts like div. + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/signatures.xsd b/src/FlightCrew/Schemas/signatures.xsd new file mode 100644 index 0000000..3d71640 --- /dev/null +++ b/src/FlightCrew/Schemas/signatures.xsd @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/svg11.xsd b/src/FlightCrew/Schemas/svg11.xsd new file mode 100644 index 0000000..1685fe7 --- /dev/null +++ b/src/FlightCrew/Schemas/svg11.xsd @@ -0,0 +1,4892 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Scalable Vector Graphics (SVG) v1.1 in XML Schema. + Converted from the SVG v1.1 DTD and tweaked by hand. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/xenc-schema.xsd b/src/FlightCrew/Schemas/xenc-schema.xsd new file mode 100644 index 0000000..c902d4f --- /dev/null +++ b/src/FlightCrew/Schemas/xenc-schema.xsd @@ -0,0 +1,135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/xhtml11-flat.dtd b/src/FlightCrew/Schemas/xhtml11-flat.dtd new file mode 100644 index 0000000..b9f5881 --- /dev/null +++ b/src/FlightCrew/Schemas/xhtml11-flat.dtd @@ -0,0 +1,4513 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + +%xhtml-arch.mod;]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + +]]> + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + +]]> + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + +]]> + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + + + + +]]> + + + +]]> + + + + +]]> + + + +]]> + + + + +]]> + + + +]]> + + + + +]]> + + + +]]> + + + + +]]> + + + +]]> + + + + +]]> + + + +]]> + + +]]> + + +]]> + + + + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + + + +]]> + + + +]]> + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + +]]> + + + +]]> + + + + + + + + + + + + + +]]> + + + + + + +]]> + + + + + + +]]> +]]> + + + + + + + +]]> + + + + + + + + +]]> + + + + +]]> +]]> + + + + + + +]]> +]]> + + + + + + + + + + +]]> + + + + + +]]> + + + + + +]]> +]]> + + + + + +]]> + + + + + +]]> + + + + + +]]> +]]> +]]> + + +]]> + + + + + + + + + + + + + + + + + + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + +]]> + + + + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + +]]> + + + +]]> + + + + +]]> + + + + + + + + + + + + + + + + +]]> + + + +]]> + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + +]]> + + + + + + +]]> + + + + + + + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + + + +]]> + + + +]]> + + + + + + + + +]]> + + + +]]> + + + + + + + + +]]> + + + +]]> + + + + + + + + +]]> + + + +]]> + + + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + +]]> + + + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + + + + + +]]> + + + +]]> + + +]]> + + + + +%xhtml-legacy.mod;]]> + + + + + + + + + + + + + + + + + + +]]> + + + +]]> + + + + + + + +]]> + + + + + + +]]> + + + + + + + +]]> + + + +]]> + + + + + + + +]]> + + + + + + + +]]> + + +]]> + + + diff --git a/src/FlightCrew/Schemas/xlink.xsd b/src/FlightCrew/Schemas/xlink.xsd new file mode 100644 index 0000000..bc7f31e --- /dev/null +++ b/src/FlightCrew/Schemas/xlink.xsd @@ -0,0 +1,270 @@ + + + + + This schema document provides attribute declarations and +attribute group, complex type and simple type definitions which can be used in +the construction of user schemas to define the structure of particular linking +constructs, e.g. + + + + + + + ... + + ... + + + ... +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Intended for use as the type of user-declared elements to make them + simple links. + + + + + + + + + + + + + + + + + + + + + + + + + Intended for use as the type of user-declared elements to make them + extended links. + Note that the elements referenced in the content model are all abstract. + The intention is that by simply declaring elements with these as their + substitutionGroup, all the right things will happen. + + + + + + + + + + + + + + xml:lang is not required, but provides much of the + motivation for title elements in addition to attributes, and so + is provided here for convenience. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label is not required, but locators have no particular + XLink function if they are not labeled. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + from and to have default behavior when values are missing + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Schemas/xml.xsd b/src/FlightCrew/Schemas/xml.xsd new file mode 100644 index 0000000..aea7d0d --- /dev/null +++ b/src/FlightCrew/Schemas/xml.xsd @@ -0,0 +1,287 @@ + + + + + + +
+

About the XML namespace

+ +
+

+ This schema document describes the XML namespace, in a form + suitable for import by other schema documents. +

+

+ See + http://www.w3.org/XML/1998/namespace.html and + + http://www.w3.org/TR/REC-xml for information + about this namespace. +

+

+ Note that local names in this namespace are intended to be + defined only by the World Wide Web Consortium or its subgroups. + The names currently defined in this namespace are listed below. + They should not be used with conflicting semantics by any Working + Group, specification, or document instance. +

+

+ See further below in this document for more information about how to refer to this schema document from your own + XSD schema documents and about the + namespace-versioning policy governing this schema document. +

+
+
+
+
+ + + + +
+ +

lang (as an attribute name)

+

+ denotes an attribute whose value + is a language code for the natural language of the content of + any element; its value is inherited. This name is reserved + by virtue of its definition in the XML specification.

+ +
+
+

Notes

+

+ Attempting to install the relevant ISO 2- and 3-letter + codes as the enumerated possible values is probably never + going to be a realistic possibility. +

+

+ See BCP 47 at + http://www.rfc-editor.org/rfc/bcp/bcp47.txt + and the IANA language subtag registry at + + http://www.iana.org/assignments/language-subtag-registry + for further information. +

+

+ The union allows for the 'un-declaration' of xml:lang with + the empty string. +

+
+
+
+ + + + + + + + + +
+ + + + +
+ +

space (as an attribute name)

+

+ denotes an attribute whose + value is a keyword indicating what whitespace processing + discipline is intended for the content of the element; its + value is inherited. This name is reserved by virtue of its + definition in the XML specification.

+ +
+
+
+ + + + + + +
+ + + +
+ +

base (as an attribute name)

+

+ denotes an attribute whose value + provides a URI to be used as the base for interpreting any + relative URIs in the scope of the element on which it + appears; its value is inherited. This name is reserved + by virtue of its definition in the XML Base specification.

+ +

+ See http://www.w3.org/TR/xmlbase/ + for information about this attribute. +

+
+
+
+
+ + + + +
+ +

id (as an attribute name)

+

+ denotes an attribute whose value + should be interpreted as if declared to be of type ID. + This name is reserved by virtue of its definition in the + xml:id specification.

+ +

+ See http://www.w3.org/TR/xml-id/ + for information about this attribute. +

+
+
+
+
+ + + + + + + + + + +
+ +

Father (in any context at all)

+ +
+

+ denotes Jon Bosak, the chair of + the original XML Working Group. This name is reserved by + the following decision of the W3C XML Plenary and + XML Coordination groups: +

+
+

+ In appreciation for his vision, leadership and + dedication the W3C XML Plenary on this 10th day of + February, 2000, reserves for Jon Bosak in perpetuity + the XML name "xml:Father". +

+
+
+
+
+
+ + + +
+

About this schema document

+ +
+

+ This schema defines attributes and an attribute group suitable + for use by schemas wishing to allow xml:base, + xml:lang, xml:space or + xml:id attributes on elements they define. +

+

+ To enable this, such a schema must import this schema for + the XML namespace, e.g. as follows: +

+
+          <schema . . .>
+           . . .
+           <import namespace="http://www.w3.org/XML/1998/namespace"
+                      schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+     
+

+ or +

+
+           <import namespace="http://www.w3.org/XML/1998/namespace"
+                      schemaLocation="http://www.w3.org/2009/01/xml.xsd"/>
+     
+

+ Subsequently, qualified reference to any of the attributes or the + group defined below will have the desired effect, e.g. +

+
+          <type . . .>
+           . . .
+           <attributeGroup ref="xml:specialAttrs"/>
+     
+

+ will define a type which will schema-validate an instance element + with any of those attributes. +

+
+
+
+
+ + + +
+

Versioning policy for this schema document

+
+

+ In keeping with the XML Schema WG's standard versioning + policy, this schema document will persist at + + http://www.w3.org/2009/01/xml.xsd. +

+

+ At the date of issue it can also be found at + + http://www.w3.org/2001/xml.xsd. +

+

+ The schema document at that URI may however change in the future, + in order to remain compatible with the latest version of XML + Schema itself, or with the XML namespace itself. In other words, + if the XML Schema or XML namespaces change, the version of this + document at + http://www.w3.org/2001/xml.xsd + + will change accordingly; the version at + + http://www.w3.org/2009/01/xml.xsd + + will not change. +

+

+ Previous dated (and unchanging) versions of this schema + document are at: +

+ +
+
+
+
+ +
+ diff --git a/src/FlightCrew/Schemas/xmldsig-core-schema.xsd b/src/FlightCrew/Schemas/xmldsig-core-schema.xsd new file mode 100644 index 0000000..8422fdf --- /dev/null +++ b/src/FlightCrew/Schemas/xmldsig-core-schema.xsd @@ -0,0 +1,308 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/Validators/AllowedChildrenValidator.cpp b/src/FlightCrew/Validators/AllowedChildrenValidator.cpp new file mode 100644 index 0000000..13139f3 --- /dev/null +++ b/src/FlightCrew/Validators/AllowedChildrenValidator.cpp @@ -0,0 +1,74 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "AllowedChildrenValidator.h" +#include "Misc/Utilities.h" +#include +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > AllowedChildrenValidator::ValidateAllowedChildren( + const QName &parent_qname, + const std::vector< QName > &allowed_children, + const xc::DOMDocument &document ) +{ + xc::DOMNodeList *parents_matching = document.getElementsByTagNameNS( + toX( parent_qname.namespace_name ), toX( parent_qname.local_name ) ); + + std::vector< Result > results; + + if ( parents_matching->getLength() < 1 ) + + return results; + + xc::DOMElement* parent = static_cast< xc::DOMElement* >( parents_matching->item( 0 ) ); + std::vector< xc::DOMElement* > children = xe::GetElementChildren( *parent ); + + for ( uint i = 0; i < children.size(); ++i ) + { + xc::DOMElement *child = children[ i ]; + QName child_qname( fromX( child->getLocalName() ), fromX( child->getNamespaceURI() ) ); + + if ( !Util::Contains< QName >( allowed_children, child_qname ) ) + + results.push_back( NotAllowedChildResult( *children[ i ] ) ); + } + + return results; +} + + +Result AllowedChildrenValidator::NotAllowedChildResult( const xc::DOMNode &child ) +{ + const xc::DOMElement* element = static_cast< const xc::DOMElement* >( &child ); + const xc::DOMElement* parent = static_cast< const xc::DOMElement* >( child.getParentNode() ); + + return ResultWithNodeLocation( ERROR_XML_CHILD_NOT_RECOGNIZED, child ) + .AddMessageArgument( fromX( element->getLocalName() ) ) + .AddMessageArgument( fromX( parent->getLocalName() ) ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/AllowedChildrenValidator.h b/src/FlightCrew/Validators/AllowedChildrenValidator.h new file mode 100644 index 0000000..f9000de --- /dev/null +++ b/src/FlightCrew/Validators/AllowedChildrenValidator.h @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ALLOWEDCHILDRENVALIDATOR_H +#define ALLOWEDCHILDRENVALIDATOR_H + +#include "XmlValidator.h" +#include + +namespace xe = XercesExt; + +namespace FlightCrew +{ + +class AllowedChildrenValidator : public XmlValidator +{ + +protected: + + std::vector< Result > ValidateAllowedChildren( const xe::QName &parent_qname, + const std::vector< xe::QName > &allowed_children, + const xc::DOMDocument &document ); + + Result NotAllowedChildResult( const xc::DOMNode &child ); +}; + +} // namespace FlightCrew + +#endif // ALLOWEDCHILDRENVALIDATOR_H diff --git a/src/FlightCrew/Validators/AttributesPresentValidator.cpp b/src/FlightCrew/Validators/AttributesPresentValidator.cpp new file mode 100644 index 0000000..6f0ca11 --- /dev/null +++ b/src/FlightCrew/Validators/AttributesPresentValidator.cpp @@ -0,0 +1,115 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "AttributesPresentValidator.h" +#include "ToXercesStringConverter.h" +#include "FromXercesStringConverter.h" +#include "Misc/Utilities.h" + + +namespace FlightCrew +{ + +std::vector< Result > AttributesPresentValidator::HasOnlyAllowedAttributes( + const QName &element_qname, + const std::vector< QName > &attribute_qnames, + const xc::DOMDocument &document ) +{ + xc::DOMNodeList *elements = document.getElementsByTagNameNS( + toX( element_qname.namespace_name ), toX( element_qname.local_name ) ); + + std::vector< Result > results; + + for ( uint i = 0; i < elements->getLength(); ++i ) + { + xc::DOMElement* element = static_cast< xc::DOMElement* >( elements->item( i ) ); + xc::DOMNamedNodeMap *attributes = element->getAttributes(); + + for ( uint j = 0; j < attributes->getLength(); ++j ) + { + xc::DOMAttr* attribute = static_cast< xc::DOMAttr* >( attributes->item( j ) ); + + if ( !IsAllowedAttribute( *attribute, attribute_qnames ) ) + { + results.push_back( + ResultWithNodeLocation( ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED, *element ) + .AddMessageArgument( fromX( attribute->getName() ) ) + .AddMessageArgument( element_qname.local_name ) + ); + } + } + } + + return results; +} + + +std::vector< Result > AttributesPresentValidator::HasMandatoryAttributes( + const QName &element_qname, + const std::vector< QName > &attribute_qnames, + const xc::DOMDocument &document ) +{ + xc::DOMNodeList *elements = document.getElementsByTagNameNS( + toX( element_qname.namespace_name ), toX( element_qname.local_name ) ); + + std::vector< Result > results; + + for ( uint i = 0; i < elements->getLength(); ++i ) + { + xc::DOMElement* element = static_cast< xc::DOMElement* >( elements->item( i ) ); + + foreach( QName attribute_qname, attribute_qnames ) + { + if ( !element->hasAttributeNS( + toX( attribute_qname.namespace_name ), toX( attribute_qname.local_name ) ) ) + { + results.push_back( + ResultWithNodeLocation( ERROR_XML_REQUIRED_ATTRIBUTE_MISSING, *element ) + .AddMessageArgument( attribute_qname.local_name ) + .AddMessageArgument( element_qname.local_name ) + ); + } + } + } + + return results; +} + +bool AttributesPresentValidator::IsAllowedAttribute( + const xc::DOMAttr &attribute, + const std::vector< QName > &allowed_attribute_qnames ) +{ + QName attribute_qname( fromX( attribute.getLocalName() ), fromX( attribute.getNamespaceURI() ) ); + + bool allowed_name = Util::Contains< QName >( + allowed_attribute_qnames, attribute_qname ); + + // This includes the namespace prefix, + // so e.g. opf:scheme + std::string full_attribute_name = fromX( attribute.getName() ); + + bool is_xmlns = boost::starts_with( full_attribute_name, "xmlns" ); + + return allowed_name || is_xmlns; +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/AttributesPresentValidator.h b/src/FlightCrew/Validators/AttributesPresentValidator.h new file mode 100644 index 0000000..0bc9e83 --- /dev/null +++ b/src/FlightCrew/Validators/AttributesPresentValidator.h @@ -0,0 +1,73 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ATTRIBUTESPRESENTVALIDATOR_H +#define ATTRIBUTESPRESENTVALIDATOR_H + +#include "XmlValidator.h" +#include + +namespace xe = XercesExt; + +namespace FlightCrew +{ + +class AttributesPresentValidator : public XmlValidator +{ + +protected: + + /** + * Checks that the attributes of all the elements matching the given name + * are allowed. + * + * @param element_qname The name of the element whose attributes we want to check. + * @param attribute_qnames A list of allowed attributes. + * @param document The document being validated. + * @return A list of validation results, empty if no problem were found. + */ + std::vector< Result > HasOnlyAllowedAttributes( const xe::QName &element_qname, + const std::vector< xe::QName > &attribute_qnames, + const xc::DOMDocument &document ); + + /** + * Checks that all the elements matching the given name have all their + * mandatory attributes. + * + * @param element_qname The name of the element whose attributes we want to check. + * @param attribute_qnames A list of mandatory attributes. + * @param document The document being validated. + * @return A list of validation results, empty if no problem were found. + */ + std::vector< Result > HasMandatoryAttributes( const xe::QName &element_qname, + const std::vector< xe::QName > &attribute_qnames, + const xc::DOMDocument &document ); + +private: + + bool IsAllowedAttribute( const xc::DOMAttr &attribute, + const std::vector< xe::QName > &allowed_attribute_qnames ); +}; + +} // namespace FlightCrew + +#endif // ATTRIBUTESPRESENTVALIDATOR_H \ No newline at end of file diff --git a/src/FlightCrew/Validators/DomSchemaValidator.cpp b/src/FlightCrew/Validators/DomSchemaValidator.cpp new file mode 100644 index 0000000..99c14e1 --- /dev/null +++ b/src/FlightCrew/Validators/DomSchemaValidator.cpp @@ -0,0 +1,92 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "DomSchemaValidator.h" +#include "Misc/ErrorResultCollector.h" +#include +#include +#include +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > DomSchemaValidator::ValidateAgainstSchema( + const fs::path &filepath, + const std::string &external_schema_location, + const std::vector< const xc::MemBufInputSource* > &schemas, + const std::vector< const xc::MemBufInputSource* > &dtds ) +{ + xe::LocationAwareDOMParser parser; + + parser.setDoSchema( true ); + parser.setLoadSchema( false ); + parser.setSkipDTDValidation( true ); + parser.setDoNamespaces( true ); + parser.useCachedGrammarInParse( true ); + + parser.setValidationScheme( xc::AbstractDOMParser::Val_Always ); + + LoadSchemas( parser, external_schema_location, schemas, dtds ); + + ErrorResultCollector collector; + parser.setErrorHandler( &collector ); + + try + { + parser.parse( toX( Util::BoostPathToUtf8Path( filepath ) ) ); + } + + catch ( xc::SAXException& exception ) + { + collector.AddNewExceptionAsResult( exception ); + } + + catch ( xc::XMLException& exception ) + { + collector.AddNewExceptionAsResult( exception ); + } + + return Util::AddPathToResults( collector.GetResults(), filepath ); +} + + +void DomSchemaValidator::LoadSchemas( + xe::LocationAwareDOMParser &parser, + const std::string &external_schema_location, + const std::vector< const xc::MemBufInputSource* > &schemas, + const std::vector< const xc::MemBufInputSource* > &dtds ) +{ + foreach( const xc::MemBufInputSource *input, dtds ) + { + parser.loadGrammar( *input, xc::Grammar::DTDGrammarType, true ); + } + + foreach( const xc::MemBufInputSource *input, schemas ) + { + parser.loadGrammar( *input, xc::Grammar::SchemaGrammarType, true ); + } + + parser.setExternalSchemaLocation( external_schema_location.c_str() ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/DomSchemaValidator.h b/src/FlightCrew/Validators/DomSchemaValidator.h new file mode 100644 index 0000000..d894d41 --- /dev/null +++ b/src/FlightCrew/Validators/DomSchemaValidator.h @@ -0,0 +1,58 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef DOMSCHEMAVALIDATOR_H +#define DOMSCHEMAVALIDATOR_H + +#include +namespace XERCES_CPP_NAMESPACE { class MemBufInputSource; }; +namespace xc = XERCES_CPP_NAMESPACE; +namespace XercesExt { class LocationAwareDOMParser; } +namespace xe = XercesExt; +#include "IValidator.h" + +namespace FlightCrew +{ + +class DomSchemaValidator : public IValidator +{ + +protected: + + std::vector< Result > ValidateAgainstSchema( + const fs::path &filepath, + const std::string &external_schema_location, + const std::vector< const xc::MemBufInputSource* > &schemas, + const std::vector< const xc::MemBufInputSource* > &dtds ); + +private: + + void LoadSchemas( + xe::LocationAwareDOMParser &parser, + const std::string &external_schema_location, + const std::vector< const xc::MemBufInputSource* > &schemas, + const std::vector< const xc::MemBufInputSource* > &dtds ); +}; + +} // namespace FlightCrew + +#endif // DOMSCHEMAVALIDATOR_H diff --git a/src/FlightCrew/Validators/ElementCountOneValidator.cpp b/src/FlightCrew/Validators/ElementCountOneValidator.cpp new file mode 100644 index 0000000..adc3e2c --- /dev/null +++ b/src/FlightCrew/Validators/ElementCountOneValidator.cpp @@ -0,0 +1,66 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ElementCountOneValidator.h" +#include "ToXercesStringConverter.h" +#include + +namespace FlightCrew +{ + +std::vector< Result > ElementCountOneValidator::VerifyElementCountOne( + const QName &element_qname, + const QName &parent_qname, + const xc::DOMDocument &document ) +{ + xc::DOMNodeList *elements = document.getElementsByTagNameNS( + toX( element_qname.namespace_name ), toX( element_qname.local_name ) ); + + std::vector< Result > results; + + if ( elements->getLength() != 1 ) + { + Result result; + + if ( elements->getLength() < 1 ) + { + xc::DOMNode *parent = xe::GetFirstAvailableElement( parent_qname, document ); + + result = parent != NULL ? + ResultWithNodeLocation( ERROR_XML_WRONG_ELEMENT_COUNT, *parent ) : + Result( ERROR_XML_WRONG_ELEMENT_COUNT ); + } + + else + { + result = ResultWithNodeLocation( + ERROR_XML_WRONG_ELEMENT_COUNT, *elements->item( 1 ) ); + } + + result.AddMessageArgument( element_qname.local_name ); + results.push_back( result ); + } + + return results; +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/ElementCountOneValidator.h b/src/FlightCrew/Validators/ElementCountOneValidator.h new file mode 100644 index 0000000..a084d5a --- /dev/null +++ b/src/FlightCrew/Validators/ElementCountOneValidator.h @@ -0,0 +1,55 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ELEMENTCOUNTONEVALIDATOR_H +#define ELEMENTCOUNTONEVALIDATOR_H + +#include "XmlValidator.h" +#include + +namespace xe = XercesExt; + +namespace FlightCrew +{ + +class ElementCountOneValidator : public XmlValidator +{ + +protected: + + /** + * Verifies that there is only one element of the specified type in the document. + * We try to report the location of the error as the location + * of a parent element that is supposed to contain the required element. + * + * @param element_qname The name of the element whose correct count we want to check. + * @param document The document being validated. + * @return A list of validation results. + */ + std::vector< Result > VerifyElementCountOne( const xe::QName &element_qname, + const xe::QName &parent_qname, + const xc::DOMDocument &document ); +}; + +} // namespace FlightCrew + +#endif // ELEMENTCOUNTONEVALIDATOR_H \ No newline at end of file diff --git a/src/FlightCrew/Validators/ElementPresentValidator.cpp b/src/FlightCrew/Validators/ElementPresentValidator.cpp new file mode 100644 index 0000000..8fc762e --- /dev/null +++ b/src/FlightCrew/Validators/ElementPresentValidator.cpp @@ -0,0 +1,55 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ElementPresentValidator.h" +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > ElementPresentValidator::VerifyElementPresent( + const QName &element_qname, + const std::vector< QName > &possible_parents, + const xc::DOMDocument &document ) +{ + xc::DOMNodeList *matching_elements = document.getElementsByTagNameNS( + toX( element_qname.namespace_name ), toX( element_qname.local_name ) ); + + std::vector< Result > results; + + if ( matching_elements->getLength() < 1 ) + { + xc::DOMNode* parent = xe::GetFirstAvailableElement( possible_parents, document ); + + Result result = parent != NULL ? + ResultWithNodeLocation( ERROR_XML_ELEMENT_NOT_PRESENT, *parent ) : + Result( ERROR_XML_ELEMENT_NOT_PRESENT ); + + result.AddMessageArgument( element_qname.local_name ); + results.push_back( result ); + } + + return results; +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/ElementPresentValidator.h b/src/FlightCrew/Validators/ElementPresentValidator.h new file mode 100644 index 0000000..b135a96 --- /dev/null +++ b/src/FlightCrew/Validators/ElementPresentValidator.h @@ -0,0 +1,59 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ELEMENTPRESENTVALIDATOR_H +#define ELEMENTPRESENTVALIDATOR_H + +#include "XmlValidator.h" +#include + +namespace xe = XercesExt; + +namespace FlightCrew +{ + +class ElementPresentValidator : public XmlValidator +{ + +protected: + + /** + * Verifies the presence of the element in the document. + * We try to report the location of the error as the location + * of a parent element that is supposed to contain the required element. + * Since it's possible that the element can be a child of several + * different parent types, a list is provided. The first parent + * present is reported as the location of the error. + * + * @param element_qname The name of the element whose presence we want to check. + * @param possible_parents A list of possible parent names. + * @param document The document being validated. + * @return A list of validation results. + */ + std::vector< Result > VerifyElementPresent( const xe::QName &element_qname, + const std::vector< xe::QName > &possible_parents, + const xc::DOMDocument &document ); +}; + +} // namespace FlightCrew + +#endif // ELEMENTPRESENTVALIDATOR_H \ No newline at end of file diff --git a/src/FlightCrew/Validators/IValidator.h b/src/FlightCrew/Validators/IValidator.h new file mode 100644 index 0000000..ca7190f --- /dev/null +++ b/src/FlightCrew/Validators/IValidator.h @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef IVALIDATOR_H +#define IVALIDATOR_H + +#include +#include "Misc/BoostFilesystemUse.h" + +namespace FlightCrew +{ + +class Result; + +class IValidator +{ +public: + + virtual std::vector< Result > ValidateFile( const fs::path &filepath ) = 0; + + virtual ~IValidator() {}; +}; + +} // namespace FlightCrew + +#endif // IVALIDATOR_H diff --git a/src/FlightCrew/Validators/Ncx/ContentTargetsPresent.cpp b/src/FlightCrew/Validators/Ncx/ContentTargetsPresent.cpp new file mode 100644 index 0000000..c615e83 --- /dev/null +++ b/src/FlightCrew/Validators/Ncx/ContentTargetsPresent.cpp @@ -0,0 +1,144 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ContentTargetsPresent.h" +#include +#include +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > ContentTargetsPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath ) +{ + std::vector< Result > results; + std::vector< ContentTargetsPresent::ContentTarget > targets = + GetContentTargets( document, filepath.parent_path() ); + + fs::path current_xhtml_path; + boost::unordered_set< std::string > document_ids; + + foreach( const ContentTargetsPresent::ContentTarget &target, targets ) + { + // They're sorted by content file path, so until + // the path changes, they all refer to the same file + if ( target.content_file != current_xhtml_path ) + { + if ( !fs::exists( target.content_file ) ) + { + results.push_back( + Result( ERROR_NCX_CONTENT_FILE_DOES_NOT_EXIST, target.content_node ) + .AddMessageArgument( target.raw_src_path ) + ); + + continue; + } + + current_xhtml_path = target.content_file; + document_ids = GetAllIdsFromDocument( current_xhtml_path ); + } + + if ( !target.fragment.empty() && !document_ids.count( target.fragment ) ) + { + results.push_back( + Result( ERROR_NCX_CONTENT_FRAGMENT_DOES_NOT_EXIST, target.content_node ) + .AddMessageArgument( target.raw_src_path ) + ); + } + } + + return results; +} + +std::vector< ContentTargetsPresent::ContentTarget > ContentTargetsPresent::GetContentTargets( + const xc::DOMDocument &document, + const fs::path &folderpath ) +{ + std::vector< xc::DOMAttr* > srcs = xe::GetAllAttributesFromElements( + QName( "content", NCX_XML_NAMESPACE ), + QName( "src", "" ), + document ); + + std::vector< ContentTargetsPresent::ContentTarget > targets; + + foreach( xc::DOMAttr* src, srcs ) + { + ContentTargetsPresent::ContentTarget target; + + target.raw_src_path = fromX( src->getValue() ); + std::string decoded_url = Util::UrlDecode( target.raw_src_path ); + + fs::path resource_path = + Util::Utf8PathToBoostPath( + Util::UrlWithoutFragment( decoded_url ) ); + + target.content_file = Util::NormalizePath( folderpath / resource_path ); + target.fragment = Util::GetUrlFragment( decoded_url ); + target.content_node = xe::GetNodeLocationInfo( *src ); + + targets.push_back( target ); + } + + std::sort( targets.begin(), targets.end() ); + + return targets; +} + + +boost::unordered_set< std::string > ContentTargetsPresent::GetAllIdsFromDocument( + const fs::path &filepath ) +{ + boost::shared_ptr< xc::DOMDocument > document; + + try + { + document = Util::LoadXhtmlDocument( filepath ); + } + + catch ( std::exception& ) + { + // If the file doesn't exist or some other + // snafu, then there are obviously no ids. + return boost::unordered_set< std::string > (); + } + + std::vector< xc::DOMAttr* > ids = xe::GetAllAttributesFromElements( + QName( "*", "*" ), + QName( "id", "*" ), + *document ); + + boost::unordered_set< std::string > id_values; + + foreach( xc::DOMAttr* id, ids ) + { + std::string id_value = fromX( id->getValue() ); + + id_values.insert( id_value ); + } + + return id_values; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Ncx/ContentTargetsPresent.h b/src/FlightCrew/Validators/Ncx/ContentTargetsPresent.h new file mode 100644 index 0000000..cf1c8e3 --- /dev/null +++ b/src/FlightCrew/Validators/Ncx/ContentTargetsPresent.h @@ -0,0 +1,68 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef CONTENTTARGETSPRESENT_H +#define CONTENTTARGETSPRESENT_H + +#include "../XmlValidator.h" +#include +#include + +namespace FlightCrew +{ + +class ContentTargetsPresent : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); + +private: + + struct ContentTarget + { + XercesExt::NodeLocationInfo content_node; + fs::path content_file; + std::string fragment; + std::string raw_src_path; + + bool operator< ( const ContentTarget &other ) const + { + return content_file < other.content_file; + } + }; + + std::vector< ContentTarget > GetContentTargets( + const xc::DOMDocument &document, + const fs::path &folderpath ); + + boost::unordered_set< std::string > GetAllIdsFromDocument( + const fs::path &filepath ); + +}; + +} // namespace FlightCrew + +#endif // CONTENTTARGETSPRESENT_H + diff --git a/src/FlightCrew/Validators/Ncx/NcxSatisfiesSchema.cpp b/src/FlightCrew/Validators/Ncx/NcxSatisfiesSchema.cpp new file mode 100644 index 0000000..dd0f737 --- /dev/null +++ b/src/FlightCrew/Validators/Ncx/NcxSatisfiesSchema.cpp @@ -0,0 +1,62 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "NcxSatisfiesSchema.h" +#include "Result.h" +#include + +namespace FlightCrew +{ + +NcxSatisfiesSchema::NcxSatisfiesSchema() + : + m_NcxDtd( NCX_2005_1_DTD, + NCX_2005_1_DTD_LEN, + toX( NCX_2005_1_DTD_ID ) ), + m_NcxSchema( NCX_XSD, + NCX_XSD_LEN, + toX( NCX_XSD_ID ) ), + m_XmlSchema( XML_XSD, + XML_XSD_LEN, + toX( XML_XSD_ID ) ) +{ + +} + + +std::vector< Result > NcxSatisfiesSchema::ValidateFile( const fs::path &filepath ) +{ + std::string location = std::string( NCX_XSD_NS ) + .append( " " ) + .append( NCX_XSD_ID ); + + std::vector< const xc::MemBufInputSource* > schemas; + schemas.push_back( &m_XmlSchema ); + schemas.push_back( &m_NcxSchema ); + + std::vector< const xc::MemBufInputSource* > dtds; + dtds.push_back( &m_NcxDtd ); + + return ValidateAgainstSchema( filepath, location, schemas, dtds ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Ncx/NcxSatisfiesSchema.h b/src/FlightCrew/Validators/Ncx/NcxSatisfiesSchema.h new file mode 100644 index 0000000..ea2418e --- /dev/null +++ b/src/FlightCrew/Validators/Ncx/NcxSatisfiesSchema.h @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef NCXSATISFIESSCHEMA_H +#define NCXSATISFIESSCHEMA_H + +#include +namespace xc = XERCES_CPP_NAMESPACE; +#include "../DomSchemaValidator.h" + +namespace FlightCrew +{ + +class NcxSatisfiesSchema : public DomSchemaValidator +{ +public: + + NcxSatisfiesSchema(); + + std::vector< Result > ValidateFile( const fs::path &filepath ); + +private: + + const xc::MemBufInputSource m_NcxDtd; + const xc::MemBufInputSource m_NcxSchema; + const xc::MemBufInputSource m_XmlSchema; + +}; + +} // namespace FlightCrew + +#endif // NCXSATISFIESSCHEMA_H diff --git a/src/FlightCrew/Validators/Ocf/ContainerListedOpfPresent.cpp b/src/FlightCrew/Validators/Ocf/ContainerListedOpfPresent.cpp new file mode 100644 index 0000000..a6af43c --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/ContainerListedOpfPresent.cpp @@ -0,0 +1,69 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ContainerListedOpfPresent.h" +#include +#include +#include +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > ContainerListedOpfPresent::ValidateFile( const fs::path &filepath ) +{ + // TODO: try/catch for loaddoc + boost::shared_ptr< xc::DOMDocument > document = Util::LoadXmlDocument( filepath ); + + std::vector< xc::DOMElement* > rootfiles = xe::GetElementsByQName( + *document, QName( "rootfile", CONTAINER_XML_NAMESPACE ) ); + + std::vector< Result > results; + fs::path opf_path; + + foreach( xc::DOMElement* rootfile, rootfiles ) + { + std::string full_path_attribute = fromX( rootfile->getAttribute( toX( "full-path" ) ) ); + std::string media_type = fromX( rootfile->getAttribute( toX( "media-type" ) ) ); + + if ( media_type == OEBPS_MIME ) + { + opf_path = filepath.parent_path().parent_path() / + Util::Utf8PathToBoostPath( full_path_attribute ); + + if ( !fs::exists( opf_path ) ) + { + results.push_back( + Result( ERROR_OCF_CONTAINER_SPECIFIED_OPF_DOESNT_EXIST, + xe::GetNodeLocationInfo( *rootfile ) ) + .AddMessageArgument( full_path_attribute ) + ); + } + + break; + } + } + + return Util::AddPathToResults( results, filepath ); +} + +} // namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Validators/Ocf/ContainerListedOpfPresent.h b/src/FlightCrew/Validators/Ocf/ContainerListedOpfPresent.h new file mode 100644 index 0000000..05e88be --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/ContainerListedOpfPresent.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef CONTAINERLISTEDOPFPRESENT_H +#define CONTAINERLISTEDOPFPRESENT_H + +#include "../IValidator.h" +#include "Result.h" + +namespace FlightCrew +{ + +class ContainerListedOpfPresent : public IValidator +{ +public: + + virtual std::vector< Result > ValidateFile( const fs::path &filepath ); +}; + +} // namespace FlightCrew + +#endif // CONTAINERLISTEDOPFPRESENT_H + diff --git a/src/FlightCrew/Validators/Ocf/ContainerListsOpf.cpp b/src/FlightCrew/Validators/Ocf/ContainerListsOpf.cpp new file mode 100644 index 0000000..e019cb1 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/ContainerListsOpf.cpp @@ -0,0 +1,65 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ContainerListsOpf.h" +#include +#include +#include +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + + +std::vector< Result > ContainerListsOpf::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > rootfiles = xe::GetElementsByQName( + document, QName( "rootfile", CONTAINER_XML_NAMESPACE ) ); + + std::vector< Result > results; + + foreach( xc::DOMElement* rootfile, rootfiles ) + { + std::string media_type = fromX( rootfile->getAttribute( toX( "media-type" ) ) ); + + if ( media_type == OEBPS_MIME ) + + return results; + } + + std::vector< xc::DOMElement* > rootfiles_elements = xe::GetElementsByQName( + document, QName( "rootfiles", CONTAINER_XML_NAMESPACE ) ); + + if ( rootfiles_elements.empty() ) + + return results; + + results.push_back( + ResultWithNodeLocation( ERROR_OCF_CONTAINER_DOESNT_LIST_OPF, *rootfiles_elements[ 0 ] ) + ); + + return results; +} + +} // namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Validators/Ocf/ContainerListsOpf.h b/src/FlightCrew/Validators/Ocf/ContainerListsOpf.h new file mode 100644 index 0000000..56e4b86 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/ContainerListsOpf.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef CONTAINERLISTSOPF_H +#define CONTAINERLISTSOPF_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class ContainerListsOpf : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // CONTAINERLISTSOPF_H + diff --git a/src/FlightCrew/Validators/Ocf/ContainerSatisfiesSchema.cpp b/src/FlightCrew/Validators/Ocf/ContainerSatisfiesSchema.cpp new file mode 100644 index 0000000..c48a920 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/ContainerSatisfiesSchema.cpp @@ -0,0 +1,54 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ContainerSatisfiesSchema.h" +#include "Result.h" +#include + + +namespace FlightCrew +{ + + +ContainerSatisfiesSchema::ContainerSatisfiesSchema() + : + m_ContainerSchema( CONTAINER_XSD, + CONTAINER_XSD_LEN, + toX( CONTAINER_XSD_ID ) ) +{ + +} + + +std::vector< Result > ContainerSatisfiesSchema::ValidateFile( const fs::path &filepath ) +{ + std::string location = std::string( CONTAINER_XSD_NS ) + .append( " " ) + .append( CONTAINER_XSD_ID ); + + std::vector< const xc::MemBufInputSource* > schemas; + schemas.push_back( &m_ContainerSchema ); + + return ValidateAgainstSchema( filepath, location, schemas ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Ocf/ContainerSatisfiesSchema.h b/src/FlightCrew/Validators/Ocf/ContainerSatisfiesSchema.h new file mode 100644 index 0000000..e1275d0 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/ContainerSatisfiesSchema.h @@ -0,0 +1,47 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef CONTAINERSATISFIESSCHEMA_H +#define CONTAINERSATISFIESSCHEMA_H + +#include "../SaxSchemaValidator.h" + +namespace FlightCrew +{ + +class ContainerSatisfiesSchema : public SaxSchemaValidator +{ +public: + + ContainerSatisfiesSchema(); + + std::vector< Result > ValidateFile( const fs::path &filepath ); + +private: + + const xc::MemBufInputSource m_ContainerSchema; + +}; + +} // namespace FlightCrew + +#endif // CONTAINERSATISFIESSCHEMA_H diff --git a/src/FlightCrew/Validators/Ocf/EncryptionSatisfiesSchema.cpp b/src/FlightCrew/Validators/Ocf/EncryptionSatisfiesSchema.cpp new file mode 100644 index 0000000..b920cf4 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/EncryptionSatisfiesSchema.cpp @@ -0,0 +1,62 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "EncryptionSatisfiesSchema.h" +#include "Result.h" +#include + + +namespace FlightCrew +{ + + +EncryptionSatisfiesSchema::EncryptionSatisfiesSchema() + : + m_EncryptionSchema( ENCRYPTION_XSD, + ENCRYPTION_XSD_LEN, + toX( ENCRYPTION_XSD_ID ) ), + m_XencSchema( XENC_SCHEMA_XSD, + XENC_SCHEMA_XSD_LEN, + toX( XENC_SCHEMA_XSD_ID ) ), + m_XmldsigSchema( XMLDSIG_CORE_SCHEMA_XSD, + XMLDSIG_CORE_SCHEMA_XSD_LEN, + toX( XMLDSIG_CORE_SCHEMA_XSD_ID ) ) +{ + +} + + +std::vector< Result > EncryptionSatisfiesSchema::ValidateFile( const fs::path &filepath ) +{ + std::string location = std::string( CONTAINER_XSD_NS ) + .append( " " ) + .append( ENCRYPTION_XSD_ID ); + + std::vector< const xc::MemBufInputSource* > schemas; + schemas.push_back( &m_XmldsigSchema ); + schemas.push_back( &m_XencSchema ); + schemas.push_back( &m_EncryptionSchema ); + + return ValidateAgainstSchema( filepath, location, schemas ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Ocf/EncryptionSatisfiesSchema.h b/src/FlightCrew/Validators/Ocf/EncryptionSatisfiesSchema.h new file mode 100644 index 0000000..fb51337 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/EncryptionSatisfiesSchema.h @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ENCRYPTIONSATISFIESSCHEMA_H +#define ENCRYPTIONSATISFIESSCHEMA_H + +#include "../SaxSchemaValidator.h" + +namespace FlightCrew +{ + +class EncryptionSatisfiesSchema : public SaxSchemaValidator +{ +public: + + EncryptionSatisfiesSchema(); + + std::vector< Result > ValidateFile( const fs::path &filepath ); + +private: + + const xc::MemBufInputSource m_EncryptionSchema; + const xc::MemBufInputSource m_XencSchema; + const xc::MemBufInputSource m_XmldsigSchema; +}; + +} // namespace FlightCrew + +#endif // ENCRYPTIONSATISFIESSCHEMA_H diff --git a/src/FlightCrew/Validators/Ocf/MimetypeBytesValid.cpp b/src/FlightCrew/Validators/Ocf/MimetypeBytesValid.cpp new file mode 100644 index 0000000..9f48e69 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/MimetypeBytesValid.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "MimetypeBytesValid.h" +#include "Misc/Utilities.h" + +static const std::string MIMETYPE_BYTES = "mimetypeapplication/epub+zipPK"; + +namespace FlightCrew +{ + +std::vector< Result > MimetypeBytesValid::ValidateFile( const fs::path &filepath ) +{ + fs::ifstream file( filepath, std::ios::in | std::ios::binary ); + + // As per the OCF spec, bytes 30 to 60 of an epub archive + // have to match what we have in MIMETYPE_BYTES + char bytes30to60[ 30 + 1 ] = { 0 }; + file.seekg( 30 ); + file.read( bytes30to60, 30 ); + + std::string string_bytes( bytes30to60 ); + std::vector< Result > results; + + if ( string_bytes != MIMETYPE_BYTES ) + + results.push_back( Result( ERROR_EPUB_MIMETYPE_BYTES_INVALID ) ); + + return results; +} + +} // namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Validators/Ocf/MimetypeBytesValid.h b/src/FlightCrew/Validators/Ocf/MimetypeBytesValid.h new file mode 100644 index 0000000..c453f82 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/MimetypeBytesValid.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef MIMETYPEBYTESVALID_H +#define MIMETYPEBYTESVALID_H + +#include "../IValidator.h" +#include "Result.h" + +namespace FlightCrew +{ + +class MimetypeBytesValid : public IValidator +{ +public: + + virtual std::vector< Result > ValidateFile( const fs::path &filepath ); +}; + +} // namespace FlightCrew + +#endif // MIMETYPEBYTESVALID_H + diff --git a/src/FlightCrew/Validators/Ocf/SignaturesSatisfiesSchema.cpp b/src/FlightCrew/Validators/Ocf/SignaturesSatisfiesSchema.cpp new file mode 100644 index 0000000..0f0d475 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/SignaturesSatisfiesSchema.cpp @@ -0,0 +1,57 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "SignaturesSatisfiesSchema.h" +#include "Result.h" +#include + +namespace FlightCrew +{ + + +SignaturesSatisfiesSchema::SignaturesSatisfiesSchema() + : + m_SignaturesSchema( SIGNATURES_XSD, + SIGNATURES_XSD_LEN, + toX( SIGNATURES_XSD_ID ) ), + m_XmldsigSchema( XMLDSIG_CORE_SCHEMA_XSD, + XMLDSIG_CORE_SCHEMA_XSD_LEN, + toX( XMLDSIG_CORE_SCHEMA_XSD_ID ) ) +{ + +} + + +std::vector< Result > SignaturesSatisfiesSchema::ValidateFile( const fs::path &filepath ) +{ + std::string location = std::string( CONTAINER_XSD_NS ) + .append( " " ) + .append( SIGNATURES_XSD_ID ); + + std::vector< const xc::MemBufInputSource* > schemas; + schemas.push_back( &m_XmldsigSchema ); + schemas.push_back( &m_SignaturesSchema ); + + return ValidateAgainstSchema( filepath, location, schemas ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Ocf/SignaturesSatisfiesSchema.h b/src/FlightCrew/Validators/Ocf/SignaturesSatisfiesSchema.h new file mode 100644 index 0000000..0f7c327 --- /dev/null +++ b/src/FlightCrew/Validators/Ocf/SignaturesSatisfiesSchema.h @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef SIGNATURESSATISFIESSCHEMA_H +#define SIGNATURESSATISFIESSCHEMA_H + +#include "../SaxSchemaValidator.h" + +namespace FlightCrew +{ + +class SignaturesSatisfiesSchema : public SaxSchemaValidator +{ +public: + + SignaturesSatisfiesSchema(); + + std::vector< Result > ValidateFile( const fs::path &filepath ); + +private: + + const xc::MemBufInputSource m_SignaturesSchema; + const xc::MemBufInputSource m_XmldsigSchema; + +}; + +} // namespace FlightCrew + +#endif // SIGNATURESSATISFIESSCHEMA_H diff --git a/src/FlightCrew/Validators/Opf/ContributorAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/ContributorAttributesPresent.cpp new file mode 100644 index 0000000..7cafa18 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ContributorAttributesPresent.cpp @@ -0,0 +1,47 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ContributorAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > ContributorAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + allowed_attributes.push_back( QName( "file-as", OPF_XML_NAMESPACE ) ); + allowed_attributes.push_back( QName( "role", OPF_XML_NAMESPACE ) ); + + QName element_qname( "contributor", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ContributorAttributesPresent.h b/src/FlightCrew/Validators/Opf/ContributorAttributesPresent.h new file mode 100644 index 0000000..2265224 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ContributorAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef CONTRIBUTORATTRIBUTESPRESENT_H +#define CONTRIBUTORATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class ContributorAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // CONTRIBUTORATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/CoverageAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/CoverageAttributesPresent.cpp new file mode 100644 index 0000000..72104a6 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/CoverageAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "CoverageAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > CoverageAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + + QName element_qname( "coverage", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/CoverageAttributesPresent.h b/src/FlightCrew/Validators/Opf/CoverageAttributesPresent.h new file mode 100644 index 0000000..4a66139 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/CoverageAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef COVERAGEATTRIBUTESPRESENT_H +#define COVERAGEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class CoverageAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // COVERAGEATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/CreatorAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/CreatorAttributesPresent.cpp new file mode 100644 index 0000000..80f57ac --- /dev/null +++ b/src/FlightCrew/Validators/Opf/CreatorAttributesPresent.cpp @@ -0,0 +1,47 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "CreatorAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > CreatorAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + allowed_attributes.push_back( QName( "file-as", OPF_XML_NAMESPACE ) ); + allowed_attributes.push_back( QName( "role", OPF_XML_NAMESPACE ) ); + + QName element_qname( "creator", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/CreatorAttributesPresent.h b/src/FlightCrew/Validators/Opf/CreatorAttributesPresent.h new file mode 100644 index 0000000..dffdb41 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/CreatorAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef CREATORATTRIBUTESPRESENT_H +#define CREATORATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class CreatorAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // CREATORATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/CreatorOrContributorRoleValid.cpp b/src/FlightCrew/Validators/Opf/CreatorOrContributorRoleValid.cpp new file mode 100644 index 0000000..100929e --- /dev/null +++ b/src/FlightCrew/Validators/Opf/CreatorOrContributorRoleValid.cpp @@ -0,0 +1,285 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "CreatorOrContributorRoleValid.h" +#include +#include +#include +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > CreatorOrContributorRoleValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > elements = xe::GetElementsByQName( + document, QName( "creator", DC_XML_NAMESPACE ) ); + + Util::Extend< xc::DOMElement* >( elements, xe::GetElementsByQName( + document, QName( "contributor", DC_XML_NAMESPACE ) ) ); + + std::vector< Result > results; + boost::unordered_set< std::string > relators = GetRelatorSet(); + + foreach( xc::DOMElement* element, elements ) + { + std::string role = fromX( element->getAttributeNS( toX( OPF_XML_NAMESPACE ), toX( "role" ) ) ); + + // The "role" is not a required attribute and + // can thus be empty. + if ( !role.empty() && + relators.count( role ) == 0 && + !boost::starts_with( role, "oth." ) ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_BAD_CREATOR_OR_CONTRIBUTOR_ROLE_VALUE, *element ) + .AddMessageArgument( role ) + ); + } + } + + return results; +} + +boost::unordered_set< std::string > CreatorOrContributorRoleValid::GetRelatorSet() +{ + boost::unordered_set< std::string > relators; + relators.insert( "act" ); + relators.insert( "adp" ); + relators.insert( "anl" ); + relators.insert( "anm" ); + relators.insert( "ann" ); + relators.insert( "app" ); + relators.insert( "arc" ); + relators.insert( "arr" ); + relators.insert( "acp" ); + relators.insert( "art" ); + relators.insert( "ard" ); + relators.insert( "asg" ); + relators.insert( "asn" ); + relators.insert( "att" ); + relators.insert( "auc" ); + relators.insert( "aut" ); + relators.insert( "aqt" ); + relators.insert( "aft" ); + relators.insert( "aud" ); + relators.insert( "aui" ); + relators.insert( "aus" ); + relators.insert( "ant" ); + relators.insert( "bnd" ); + relators.insert( "bdd" ); + relators.insert( "bkd" ); + relators.insert( "bkp" ); + relators.insert( "bjd" ); + relators.insert( "bpd" ); + relators.insert( "bsl" ); + relators.insert( "cll" ); + relators.insert( "ctg" ); + relators.insert( "cns" ); + relators.insert( "chr" ); + relators.insert( "cng" ); + relators.insert( "cli" ); + relators.insert( "clb" ); + relators.insert( "col" ); + relators.insert( "clt" ); + relators.insert( "cmm" ); + relators.insert( "cwt" ); + relators.insert( "com" ); + relators.insert( "cpl" ); + relators.insert( "cpt" ); + relators.insert( "cpe" ); + relators.insert( "cmp" ); + relators.insert( "cmt" ); + relators.insert( "ccp" ); + relators.insert( "cnd" ); + relators.insert( "csl" ); + relators.insert( "csp" ); + relators.insert( "cos" ); + relators.insert( "cot" ); + relators.insert( "coe" ); + relators.insert( "cts" ); + relators.insert( "ctt" ); + relators.insert( "cte" ); + relators.insert( "ctr" ); + relators.insert( "ctb" ); + relators.insert( "cpc" ); + relators.insert( "cph" ); + relators.insert( "crr" ); + relators.insert( "crp" ); + relators.insert( "cst" ); + relators.insert( "cov" ); + relators.insert( "cre" ); + relators.insert( "cur" ); + relators.insert( "dnc" ); + relators.insert( "dtc" ); + relators.insert( "dtm" ); + relators.insert( "dte" ); + relators.insert( "dto" ); + relators.insert( "dfd" ); + relators.insert( "dft" ); + relators.insert( "dfe" ); + relators.insert( "dgg" ); + relators.insert( "dln" ); + relators.insert( "dpc" ); + relators.insert( "dpt" ); + relators.insert( "dsr" ); + relators.insert( "drt" ); + relators.insert( "dis" ); + relators.insert( "dst" ); + relators.insert( "dnr" ); + relators.insert( "drm" ); + relators.insert( "dub" ); + relators.insert( "edt" ); + relators.insert( "elg" ); + relators.insert( "elt" ); + relators.insert( "eng" ); + relators.insert( "egr" ); + relators.insert( "etr" ); + relators.insert( "exp" ); + relators.insert( "fac" ); + relators.insert( "fld" ); + relators.insert( "flm" ); + relators.insert( "fpy" ); + relators.insert( "frg" ); + relators.insert( "fmo" ); + relators.insert( "fnd" ); + relators.insert( "gis" ); + relators.insert( "hnr" ); + relators.insert( "hst" ); + relators.insert( "ilu" ); + relators.insert( "ill" ); + relators.insert( "ins" ); + relators.insert( "itr" ); + relators.insert( "ive" ); + relators.insert( "ivr" ); + relators.insert( "inv" ); + relators.insert( "lbr" ); + relators.insert( "ldr" ); + relators.insert( "lsa" ); + relators.insert( "led" ); + relators.insert( "len" ); + relators.insert( "lil" ); + relators.insert( "lit" ); + relators.insert( "lie" ); + relators.insert( "lel" ); + relators.insert( "let" ); + relators.insert( "lee" ); + relators.insert( "lbt" ); + relators.insert( "lse" ); + relators.insert( "lso" ); + relators.insert( "lgd" ); + relators.insert( "ltg" ); + relators.insert( "lyr" ); + relators.insert( "mfr" ); + relators.insert( "mrk" ); + relators.insert( "mdc" ); + relators.insert( "mte" ); + relators.insert( "mod" ); + relators.insert( "mon" ); + relators.insert( "mcp" ); + relators.insert( "msd" ); + relators.insert( "mus" ); + relators.insert( "nrt" ); + relators.insert( "opn" ); + relators.insert( "orm" ); + relators.insert( "org" ); + relators.insert( "oth" ); + relators.insert( "own" ); + relators.insert( "ppm" ); + relators.insert( "pta" ); + relators.insert( "pth" ); + relators.insert( "pat" ); + relators.insert( "prf" ); + relators.insert( "pma" ); + relators.insert( "pht" ); + relators.insert( "ptf" ); + relators.insert( "ptt" ); + relators.insert( "pte" ); + relators.insert( "plt" ); + relators.insert( "prt" ); + relators.insert( "pop" ); + relators.insert( "prm" ); + relators.insert( "prc" ); + relators.insert( "pro" ); + relators.insert( "pmn" ); + relators.insert( "prd" ); + relators.insert( "prg" ); + relators.insert( "pdr" ); + relators.insert( "pfr" ); + relators.insert( "pbl" ); + relators.insert( "pbd" ); + relators.insert( "ppt" ); + relators.insert( "rcp" ); + relators.insert( "rce" ); + relators.insert( "red" ); + relators.insert( "ren" ); + relators.insert( "rpt" ); + relators.insert( "rps" ); + relators.insert( "rth" ); + relators.insert( "rtm" ); + relators.insert( "res" ); + relators.insert( "rsp" ); + relators.insert( "rst" ); + relators.insert( "rse" ); + relators.insert( "rpy" ); + relators.insert( "rsg" ); + relators.insert( "rev" ); + relators.insert( "rbr" ); + relators.insert( "sce" ); + relators.insert( "sad" ); + relators.insert( "scr" ); + relators.insert( "scl" ); + relators.insert( "spy" ); + relators.insert( "sec" ); + relators.insert( "std" ); + relators.insert( "sgn" ); + relators.insert( "sng" ); + relators.insert( "sds" ); + relators.insert( "spk" ); + relators.insert( "spn" ); + relators.insert( "stm" ); + relators.insert( "stn" ); + relators.insert( "str" ); + relators.insert( "stl" ); + relators.insert( "sht" ); + relators.insert( "srv" ); + relators.insert( "tch" ); + relators.insert( "tcd" ); + relators.insert( "ths" ); + relators.insert( "trc" ); + relators.insert( "trl" ); + relators.insert( "tyd" ); + relators.insert( "tyg" ); + relators.insert( "vdg" ); + relators.insert( "voc" ); + relators.insert( "wit" ); + relators.insert( "wde" ); + relators.insert( "wdc" ); + relators.insert( "wam" ); + + return relators; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/CreatorOrContributorRoleValid.h b/src/FlightCrew/Validators/Opf/CreatorOrContributorRoleValid.h new file mode 100644 index 0000000..4f53d0e --- /dev/null +++ b/src/FlightCrew/Validators/Opf/CreatorOrContributorRoleValid.h @@ -0,0 +1,49 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef CREATORORCONTRIBUTORROLEVALID_H +#define CREATORORCONTRIBUTORROLEVALID_H + +#include "../XmlValidator.h" +#include + +namespace FlightCrew +{ + +class CreatorOrContributorRoleValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); + +private: + + boost::unordered_set< std::string > GetRelatorSet(); + +}; + +} // namespace FlightCrew + +#endif // CREATORORCONTRIBUTORROLEVALID_H + diff --git a/src/FlightCrew/Validators/Opf/DCMetadataAllowedChildren.cpp b/src/FlightCrew/Validators/Opf/DCMetadataAllowedChildren.cpp new file mode 100644 index 0000000..a82e11d --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DCMetadataAllowedChildren.cpp @@ -0,0 +1,54 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "DCMetadataAllowedChildren.h" + +namespace FlightCrew +{ + +std::vector< Result > DCMetadataAllowedChildren::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_children; + + allowed_children.push_back( TITLE_QNAME ); + allowed_children.push_back( LANGUAGE_QNAME ); + allowed_children.push_back( IDENTIFIER_QNAME ); + allowed_children.push_back( CREATOR_QNAME ); + allowed_children.push_back( SUBJECT_QNAME ); + allowed_children.push_back( DESCRIPTION_QNAME ); + allowed_children.push_back( PUBLISHER_QNAME ); + allowed_children.push_back( CONTRIBUTOR_QNAME ); + allowed_children.push_back( DATE_QNAME ); + allowed_children.push_back( TYPE_QNAME ); + allowed_children.push_back( FORMAT_QNAME ); + allowed_children.push_back( SOURCE_QNAME ); + allowed_children.push_back( RELATION_QNAME ); + allowed_children.push_back( COVERAGE_QNAME ); + allowed_children.push_back( RIGHTS_QNAME ); + + return ValidateAllowedChildren( + QName( "dc-metadata", OPF_XML_NAMESPACE ), allowed_children, document ); +} + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Validators/Opf/DCMetadataAllowedChildren.h b/src/FlightCrew/Validators/Opf/DCMetadataAllowedChildren.h new file mode 100644 index 0000000..0f85e0a --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DCMetadataAllowedChildren.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef DCMETADATAALLOWEDCHILDREN_H +#define DCMETADATAALLOWEDCHILDREN_H + +#include "../AllowedChildrenValidator.h" + +namespace FlightCrew +{ + +class DCMetadataAllowedChildren : public AllowedChildrenValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // DCMETADATAALLOWEDCHILDREN_H diff --git a/src/FlightCrew/Validators/Opf/DCMetadataAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/DCMetadataAttributesPresent.cpp new file mode 100644 index 0000000..9d40bf1 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DCMetadataAttributesPresent.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "DCMetadataAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > DCMetadataAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + + QName element_qname( "dc-metadata", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/DCMetadataAttributesPresent.h b/src/FlightCrew/Validators/Opf/DCMetadataAttributesPresent.h new file mode 100644 index 0000000..c2730e0 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DCMetadataAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef DCMETADATAATTRIBUTESPRESENT_H +#define DCMETADATAATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class DCMetadataAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // DCMETADATAATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/DateAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/DateAttributesPresent.cpp new file mode 100644 index 0000000..a441716 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DateAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "DateAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > DateAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "event", OPF_XML_NAMESPACE ) ); + + QName element_qname( "date", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/DateAttributesPresent.h b/src/FlightCrew/Validators/Opf/DateAttributesPresent.h new file mode 100644 index 0000000..dda149c --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DateAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef DATEATTRIBUTESPRESENT_H +#define DATEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class DateAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // DATEATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/DateValid.cpp b/src/FlightCrew/Validators/Opf/DateValid.cpp new file mode 100644 index 0000000..f3e6a66 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DateValid.cpp @@ -0,0 +1,93 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "DateValid.h" +#include +#include +#include + +// We could make it so that some of these use the previous ones, +// but this is more readable. +static const std::string DATE_Y + = "\\d{4}"; +static const std::string DATE_YM + = "\\d{4}-\\d{2}"; +static const std::string DATE_YMD + = "\\d{4}-\\d{2}-\\d{2}"; +static const std::string DATE_YMD_HM + = "\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(((\\+|-)\\d{2}:\\d{2})|Z)"; +static const std::string DATE_YMD_HMS + = "\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(((\\+|-)\\d{2}:\\d{2})|Z)"; +static const std::string DATE_YMD_HMSF + = "\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d+(((\\+|-)\\d{2}:\\d{2})|Z)"; + +static const boost::regex DATE_Y_REGEX( DATE_Y ); +static const boost::regex DATE_YM_REGEX( DATE_YM ); +static const boost::regex DATE_YMD_REGEX( DATE_YMD ); +static const boost::regex DATE_YMD_HM_REGEX( DATE_YMD_HM ); +static const boost::regex DATE_YMD_HMS_REGEX( DATE_YMD_HMS ); +static const boost::regex DATE_YMD_HMSF_REGEX( DATE_YMD_HMSF ); + + +namespace FlightCrew +{ + +std::vector< Result > DateValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > dates = xe::GetElementsByQName( + document, QName( "date", DC_XML_NAMESPACE ) ); + + std::vector< Result > results; + + foreach( xc::DOMElement* date, dates ) + { + std::string date_string = fromX( date->getTextContent() ); + + if ( date_string.empty() || !ValidDateString( date_string ) ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_BAD_DATE_VALUE, *date ) + .AddMessageArgument( date_string ) + ); + } + } + + return results; +} + + +// For the date format specification, see here: +// http://www.w3.org/TR/NOTE-datetime +bool DateValid::ValidDateString( const std::string &date_string ) +{ + return boost::regex_match( date_string, DATE_Y_REGEX ) || + boost::regex_match( date_string, DATE_YM_REGEX ) || + boost::regex_match( date_string, DATE_YMD_REGEX ) || + boost::regex_match( date_string, DATE_YMD_HM_REGEX ) || + boost::regex_match( date_string, DATE_YMD_HMS_REGEX ) || + boost::regex_match( date_string, DATE_YMD_HMSF_REGEX ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/DateValid.h b/src/FlightCrew/Validators/Opf/DateValid.h new file mode 100644 index 0000000..f748d6e --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DateValid.h @@ -0,0 +1,63 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef DATEVALID_H +#define DATEVALID_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class DateValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); + +private: + + /** + * Validates the date string format, but does not check + * that the date itself is valid. + * + * @param date_string The date string to validate. + * @return \c true when the string format is valid. + */ + bool ValidDateString( const std::string &date_string ); + + /** + * Validates the date itself. It assumes that the input date + * string already matches the correct format. + * + * @param date_string The date string to validate. + * @return \c true when the date is valid. + */ + bool ValidDateTime( const std::string &date_string ); +}; + +} // namespace FlightCrew + +#endif // DATEVALID_H + diff --git a/src/FlightCrew/Validators/Opf/DescriptionAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/DescriptionAttributesPresent.cpp new file mode 100644 index 0000000..b65615b --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DescriptionAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "DescriptionAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > DescriptionAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + + QName element_qname( "description", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/DescriptionAttributesPresent.h b/src/FlightCrew/Validators/Opf/DescriptionAttributesPresent.h new file mode 100644 index 0000000..802b2d1 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/DescriptionAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef DESCRIPTIONATTRIBUTESPRESENT_H +#define DESCRIPTIONATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class DescriptionAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // DESCRIPTIONATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/FormatAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/FormatAttributesPresent.cpp new file mode 100644 index 0000000..6ffdd46 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/FormatAttributesPresent.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "FormatAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > FormatAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + + QName element_qname( "format", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/FormatAttributesPresent.h b/src/FlightCrew/Validators/Opf/FormatAttributesPresent.h new file mode 100644 index 0000000..5bbf13c --- /dev/null +++ b/src/FlightCrew/Validators/Opf/FormatAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef FORMATATTRIBUTESPRESENT_H +#define FORMATATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class FormatAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // FORMATATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/GuideAllowedChildren.cpp b/src/FlightCrew/Validators/Opf/GuideAllowedChildren.cpp new file mode 100644 index 0000000..07d4a50 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/GuideAllowedChildren.cpp @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "GuideAllowedChildren.h" + +namespace FlightCrew +{ + +std::vector< Result > GuideAllowedChildren::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_children; + + allowed_children.push_back( QName( "reference", OPF_XML_NAMESPACE ) ); + + return ValidateAllowedChildren( + QName( "guide", OPF_XML_NAMESPACE ), allowed_children, document ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/GuideAllowedChildren.h b/src/FlightCrew/Validators/Opf/GuideAllowedChildren.h new file mode 100644 index 0000000..c6a8087 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/GuideAllowedChildren.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef GUIDEALLOWEDCHILDREN_H +#define GUIDEALLOWEDCHILDREN_H + +#include "../AllowedChildrenValidator.h" + +namespace FlightCrew +{ + +class GuideAllowedChildren : public AllowedChildrenValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // GUIDEALLOWEDCHILDREN_H diff --git a/src/FlightCrew/Validators/Opf/GuideAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/GuideAttributesPresent.cpp new file mode 100644 index 0000000..ecb2bfc --- /dev/null +++ b/src/FlightCrew/Validators/Opf/GuideAttributesPresent.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "GuideAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > GuideAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + + QName element_qname( "guide", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/GuideAttributesPresent.h b/src/FlightCrew/Validators/Opf/GuideAttributesPresent.h new file mode 100644 index 0000000..dcff94a --- /dev/null +++ b/src/FlightCrew/Validators/Opf/GuideAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef GUIDEATTRIBUTESPRESENT_H +#define GUIDEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class GuideAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // GUIDEATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/IdentifierAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/IdentifierAttributesPresent.cpp new file mode 100644 index 0000000..aaf3b1f --- /dev/null +++ b/src/FlightCrew/Validators/Opf/IdentifierAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "IdentifierAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > IdentifierAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "scheme", OPF_XML_NAMESPACE ) ); + + QName element_qname( "identifier", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/IdentifierAttributesPresent.h b/src/FlightCrew/Validators/Opf/IdentifierAttributesPresent.h new file mode 100644 index 0000000..ca73641 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/IdentifierAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef IDENTIFIERATTRIBUTESPRESENT_H +#define IDENTIFIERATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class IdentifierAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // IDENTIFIERATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/IdentifierPresent.cpp b/src/FlightCrew/Validators/Opf/IdentifierPresent.cpp new file mode 100644 index 0000000..485cac4 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/IdentifierPresent.cpp @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "IdentifierPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > IdentifierPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > possible_parents; + possible_parents.push_back( QName( "metadata", OPF_XML_NAMESPACE ) ); + possible_parents.push_back( QName( "dc-metadata", OPF_XML_NAMESPACE ) ); + + return VerifyElementPresent( + QName( "identifier", DC_XML_NAMESPACE ), possible_parents, document ); +} + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Validators/Opf/IdentifierPresent.h b/src/FlightCrew/Validators/Opf/IdentifierPresent.h new file mode 100644 index 0000000..747b6a0 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/IdentifierPresent.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef IDENTIFIERPRESENT_H +#define IDENTIFIERPRESENT_H + +#include "../ElementPresentValidator.h" + +namespace FlightCrew +{ + +class IdentifierPresent : public ElementPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // IDENTIFIERPRESENT_H diff --git a/src/FlightCrew/Validators/Opf/IdsUnique.cpp b/src/FlightCrew/Validators/Opf/IdsUnique.cpp new file mode 100644 index 0000000..98a7e30 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/IdsUnique.cpp @@ -0,0 +1,67 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "IdsUnique.h" +#include +#include +#include + + +namespace FlightCrew +{ + +std::vector< Result > IdsUnique::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + xc::DOMNodeList *elements = document.getElementsByTagName( toX( "*" ) ); + + boost::unordered_set< std::string > ids; + std::vector< Result > results; + + for ( uint i = 0; i < elements->getLength(); ++i ) + { + xc::DOMElement *element = static_cast< xc::DOMElement* >( elements->item( i ) ); + std::string id = fromX( element->getAttribute( toX( "id" ) ) ); + + if ( !id.empty() ) + { + if ( ids.count( id ) == 0 ) + { + ids.insert( id ); + } + + else + { + results.push_back( + ResultWithNodeLocation( ERROR_XML_ID_NOT_UNIQUE, *element ) + .AddMessageArgument( id ) + ); + } + } + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/IdsUnique.h b/src/FlightCrew/Validators/Opf/IdsUnique.h new file mode 100644 index 0000000..dee3767 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/IdsUnique.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef IDSUNIQUE_H +#define IDSUNIQUE_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class IdsUnique : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // IDSUNIQUE_H + diff --git a/src/FlightCrew/Validators/Opf/IdsValid.cpp b/src/FlightCrew/Validators/Opf/IdsValid.cpp new file mode 100644 index 0000000..c43e3c4 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/IdsValid.cpp @@ -0,0 +1,130 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "IdsValid.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > IdsValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > elements = xe::GetElementsByQName( + document, QName( "*", "*" ) ); + + std::vector< Result > results; + + foreach( xc::DOMElement* element, elements ) + { + if ( !element->hasAttribute( toX( "id" ) ) ) + + continue; + + std::string id = fromX( element->getAttribute( toX( "id" ) ) ); + + if ( !ValidId( id ) ) + { + results.push_back( + ResultWithNodeLocation( ERROR_XML_BAD_ID_VALUE, *element ) + .AddMessageArgument( id ) + ); + } + } + + return results; +} + +// The specification of what constitutes a valid ID name +// can be found here: +// http://www.w3.org/TR/REC-xml-names/#NT-NCName +bool IdsValid::ValidId( const std::string &id ) +{ + if ( id.empty() ) + + return false; + + std::string::const_iterator iter = id.begin(); + bool first_code_point = true; + + while ( iter != id.end() ) + { + utf8::uint32_t code_point = utf8::next( iter, id.end() ); + + if ( first_code_point ) + { + if ( !ValidIdNameStartChar( code_point ) ) + + return false; + + first_code_point = false; + } + + else + { + if ( !ValidIdNameChar( code_point ) ) + + return false; + } + } + + return true; +} + + +bool IdsValid::ValidIdNameStartChar( utf8::uint32_t code_point ) +{ + return + code_point == '_' || + ( 'A' <= code_point && code_point <= 'Z' ) || + ( 'a' <= code_point && code_point <= 'z' ) || + ( 0xC0 <= code_point && code_point <= 0xD6 ) || + ( 0xD8 <= code_point && code_point <= 0xF6 ) || + ( 0xF8 <= code_point && code_point <= 0x2FF ) || + ( 0x370 <= code_point && code_point <= 0x37D ) || + ( 0x37F <= code_point && code_point <= 0x1FFF ) || + ( 0x200C <= code_point && code_point <= 0x200D ) || + ( 0x2070 <= code_point && code_point <= 0x218F ) || + ( 0x2C00 <= code_point && code_point <= 0x2FEF ) || + ( 0x3001 <= code_point && code_point <= 0xD7FF ) || + ( 0xF900 <= code_point && code_point <= 0xFDCF ) || + ( 0xFDF0 <= code_point && code_point <= 0xFFFD ) || + ( 0x10000 <= code_point && code_point <= 0xEFFFF ); +} + +bool IdsValid::ValidIdNameChar( utf8::uint32_t code_point ) +{ + return + ValidIdNameStartChar( code_point ) || + code_point == '-' || + code_point == '.' || + code_point == 0xB7 || + ( '0' <= code_point && code_point <= '9' ) || + ( 0x0300 <= code_point && code_point <= 0x036F ) || + ( 0x203F <= code_point && code_point <= 0x2040 ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/IdsValid.h b/src/FlightCrew/Validators/Opf/IdsValid.h new file mode 100644 index 0000000..ad9f0d8 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/IdsValid.h @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef IDSVALID_H +#define IDSVALID_H + +#include "../XmlValidator.h" +#include + +namespace FlightCrew +{ + +class IdsValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); + +private: + + bool ValidId( const std::string &id ); + + bool ValidIdNameStartChar( utf8::uint32_t code_point ); + + bool ValidIdNameChar( utf8::uint32_t code_point ); +}; + +} // namespace FlightCrew + +#endif // IDSVALID_H + diff --git a/src/FlightCrew/Validators/Opf/ItemAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/ItemAttributesPresent.cpp new file mode 100644 index 0000000..540d596 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemAttributesPresent.cpp @@ -0,0 +1,59 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemAttributesPresent.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > ItemAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "href", "" ) ); + allowed_attributes.push_back( QName( "media-type", "" ) ); + allowed_attributes.push_back( QName( "fallback", "" ) ); + allowed_attributes.push_back( QName( "fallback-style", "" ) ); + allowed_attributes.push_back( QName( "required-namespace", "" ) ); + allowed_attributes.push_back( QName( "required-modules", "" ) ); + + QName element_qname( "item", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + std::vector< QName > mandatory_attributes; + mandatory_attributes.push_back( QName( "id", "" ) ); + mandatory_attributes.push_back( QName( "href", "" ) ); + mandatory_attributes.push_back( QName( "media-type", "" ) ); + + std::vector< Result > mandatory_results = HasMandatoryAttributes( + element_qname, mandatory_attributes, document ); + + return Util::Extend( allowed_results, mandatory_results ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemAttributesPresent.h b/src/FlightCrew/Validators/Opf/ItemAttributesPresent.h new file mode 100644 index 0000000..a1df30c --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMATTRIBUTESPRESENT_H +#define ITEMATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class ItemAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/ItemFilesPresent.cpp b/src/FlightCrew/Validators/Opf/ItemFilesPresent.cpp new file mode 100644 index 0000000..bfe8209 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemFilesPresent.cpp @@ -0,0 +1,59 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemFilesPresent.h" +#include "Misc/Utilities.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > ItemFilesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath ) +{ + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + document, QName( "item", OPF_XML_NAMESPACE ) ); + + std::vector< Result > results; + + foreach( xc::DOMElement* item, items ) + { + std::string href = fromX( item->getAttribute( toX( "href" ) ) ); + fs::path item_path = filepath.parent_path() / + Util::Utf8PathToBoostPath( Util::UrlDecode( href ) ); + + if ( !fs::exists( item_path ) ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_ITEM_FILE_DOESNT_EXIST, *item ) + .AddMessageArgument( href ) ); + } + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemFilesPresent.h b/src/FlightCrew/Validators/Opf/ItemFilesPresent.h new file mode 100644 index 0000000..f1555cb --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemFilesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMFILESPRESENT_H +#define ITEMFILESPRESENT_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class ItemFilesPresent : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMFILESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/ItemHrefUnique.cpp b/src/FlightCrew/Validators/Opf/ItemHrefUnique.cpp new file mode 100644 index 0000000..a95edf0 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemHrefUnique.cpp @@ -0,0 +1,64 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemHrefUnique.h" +#include +#include +#include + + +namespace FlightCrew +{ + +std::vector< Result > ItemHrefUnique::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + document, QName( "item", OPF_XML_NAMESPACE ) ); + + boost::unordered_set< std::string > hrefs; + std::vector< Result > results; + + foreach( xc::DOMElement* item, items ) + { + std::string href = fromX( item->getAttribute( toX( "href" ) ) ); + + if ( hrefs.count( href ) == 0 ) + { + hrefs.insert( href ); + } + + else + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_ITEM_HREF_NOT_UNIQUE, *item ) + .AddMessageArgument( href ) + ); + } + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemHrefUnique.h b/src/FlightCrew/Validators/Opf/ItemHrefUnique.h new file mode 100644 index 0000000..1f98652 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemHrefUnique.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMHREFUNIQUE_H +#define ITEMHREFUNIQUE_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class ItemHrefUnique : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMHREFUNIQUE_H + diff --git a/src/FlightCrew/Validators/Opf/ItemHrefValid.cpp b/src/FlightCrew/Validators/Opf/ItemHrefValid.cpp new file mode 100644 index 0000000..d6e7ca5 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemHrefValid.cpp @@ -0,0 +1,79 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemHrefValid.h" +#include +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > ItemHrefValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + document, QName( "item", OPF_XML_NAMESPACE ) ); + + std::vector< Result > results; + + foreach( xc::DOMElement* item, items ) + { + std::string href = fromX( item->getAttribute( toX( "href" ) ) ); + + ResultId result_id = ALL_OK; + + if ( href.empty() || !ValidUri( href ) ) + + result_id = ERROR_OPF_ITEM_HREF_INVALID_URI; + + else if ( UriHasFragment( href ) ) + + result_id = ERROR_OPF_ITEM_HREF_HAS_FRAGMENT; + + if ( result_id != ALL_OK ) + { + results.push_back( + ResultWithNodeLocation( result_id, *item ) + .AddMessageArgument( href ) ); + } + } + + return results; +} + + +bool ItemHrefValid::ValidUri( const std::string &uri ) +{ + return xc::XMLUri::isValidURI( true, toX( uri ) ); +} + + +bool ItemHrefValid::UriHasFragment( const std::string &uri ) +{ + return boost::contains( uri, "#" ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemHrefValid.h b/src/FlightCrew/Validators/Opf/ItemHrefValid.h new file mode 100644 index 0000000..d183ed2 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemHrefValid.h @@ -0,0 +1,61 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMHREFVALID_H +#define ITEMHREFVALID_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class ItemHrefValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); + +private: + + /** + * Validates the URI (absolute or relative). + * + * @param uri The URI string to validate. + * @return \c true if the URI is valid. + */ + bool ValidUri( const std::string &uri ); + + /** + * Examines whether the URI has a fragment identifier. + * + * @param uri The URI string to examine. + * @return \c true if the URI has a fragment. + */ + bool UriHasFragment( const std::string &uri ); +}; + +} // namespace FlightCrew + +#endif // ITEMHREFVALID_H + diff --git a/src/FlightCrew/Validators/Opf/ItemLinearValid.cpp b/src/FlightCrew/Validators/Opf/ItemLinearValid.cpp new file mode 100644 index 0000000..d44d775 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemLinearValid.cpp @@ -0,0 +1,56 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemLinearValid.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > ItemLinearValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + document, QName( "item", OPF_XML_NAMESPACE ) ); + + std::vector< Result > results; + + foreach( xc::DOMElement* item, items ) + { + std::string linear = fromX( item->getAttribute( toX( "linear" ) ) ); + + if ( !linear.empty() && linear != "yes" && linear != "no" ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_BAD_ITEM_LINEAR_VALUE, *item ) + .AddMessageArgument( linear ) ); + } + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemLinearValid.h b/src/FlightCrew/Validators/Opf/ItemLinearValid.h new file mode 100644 index 0000000..fee92f3 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemLinearValid.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMLINEARVALID_H +#define ITEMLINEARVALID_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class ItemLinearValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMLINEARVALID_H + diff --git a/src/FlightCrew/Validators/Opf/ItemMediaTypeValid.cpp b/src/FlightCrew/Validators/Opf/ItemMediaTypeValid.cpp new file mode 100644 index 0000000..06fbf90 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemMediaTypeValid.cpp @@ -0,0 +1,65 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemMediaTypeValid.h" +#include +#include +#include +#include "Misc/DetermineMimetype.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > ItemMediaTypeValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath ) +{ + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + document, QName( "item", OPF_XML_NAMESPACE ) ); + + std::vector< Result > results; + + foreach( xc::DOMElement* item, items ) + { + std::string href = fromX( item->getAttribute( toX( "href" ) ) ); + std::string media_type = fromX( item->getAttribute( toX( "media-type" ) ) ); + + std::string correct_mime = DetermineMimetype( + filepath.parent_path() / Util::Utf8PathToBoostPath( Util::UrlDecode( href ) ) ); + + if ( media_type != correct_mime && + correct_mime != UNKNOWN_MIME ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_BAD_ITEM_MEDIA_TYPE_VALUE, *item ) + .AddMessageArgument( media_type ) + .AddMessageArgument( correct_mime ) + ); + } + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemMediaTypeValid.h b/src/FlightCrew/Validators/Opf/ItemMediaTypeValid.h new file mode 100644 index 0000000..04be401 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemMediaTypeValid.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMMEDIATYPEVALID_H +#define ITEMMEDIATYPEVALID_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class ItemMediaTypeValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMMEDIATYPEVALID_H + diff --git a/src/FlightCrew/Validators/Opf/ItemPresent.cpp b/src/FlightCrew/Validators/Opf/ItemPresent.cpp new file mode 100644 index 0000000..4eccd99 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemPresent.cpp @@ -0,0 +1,41 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemPresent.h" +#include + +namespace FlightCrew +{ + +std::vector< Result > ItemPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > possible_parents; + possible_parents.push_back( QName( "manifest", OPF_XML_NAMESPACE ) ); + + return VerifyElementPresent( + QName( "item", OPF_XML_NAMESPACE ), possible_parents, document ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemPresent.h b/src/FlightCrew/Validators/Opf/ItemPresent.h new file mode 100644 index 0000000..1165ae9 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMPRESENT_H +#define ITEMPRESENT_H + +#include "../ElementPresentValidator.h" + +namespace FlightCrew +{ + +class ItemPresent : public ElementPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/ItemReqModsOnlyWithReqNS.cpp b/src/FlightCrew/Validators/Opf/ItemReqModsOnlyWithReqNS.cpp new file mode 100644 index 0000000..81d73e6 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemReqModsOnlyWithReqNS.cpp @@ -0,0 +1,55 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemReqModsOnlyWithReqNS.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > ItemReqModsOnlyWithReqNS::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + document, QName( "item", OPF_XML_NAMESPACE ) ); + + std::vector< Result > results; + + foreach( xc::DOMElement* item, items ) + { + if ( item->hasAttribute( toX( "required-modules" ) ) && + !item->hasAttribute( toX( "required-namespace" ) ) + ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_ITEM_REQMOD_WITHOUT_REQNS, *item ) ); + } + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemReqModsOnlyWithReqNS.h b/src/FlightCrew/Validators/Opf/ItemReqModsOnlyWithReqNS.h new file mode 100644 index 0000000..f7befe7 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemReqModsOnlyWithReqNS.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMREQMODSONLYWITHREQNS_H +#define ITEMREQMODSONLYWITHREQNS_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class ItemReqModsOnlyWithReqNS : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMREQMODSONLYWITHREQNS_H + diff --git a/src/FlightCrew/Validators/Opf/ItemrefAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/ItemrefAttributesPresent.cpp new file mode 100644 index 0000000..df6d032 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemrefAttributesPresent.cpp @@ -0,0 +1,53 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemrefAttributesPresent.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > ItemrefAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "idref", "" ) ); + allowed_attributes.push_back( QName( "linear", "" ) ); + + QName element_qname( "itemref", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + std::vector< QName > mandatory_attributes; + mandatory_attributes.push_back( QName( "idref", "" ) ); + + std::vector< Result > mandatory_results = HasMandatoryAttributes( + element_qname, mandatory_attributes, document ); + + return Util::Extend( allowed_results, mandatory_results ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemrefAttributesPresent.h b/src/FlightCrew/Validators/Opf/ItemrefAttributesPresent.h new file mode 100644 index 0000000..8145fce --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemrefAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMREFATTRIBUTESPRESENT_H +#define ITEMREFATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class ItemrefAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMREFATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/ItemrefIdrefUnique.cpp b/src/FlightCrew/Validators/Opf/ItemrefIdrefUnique.cpp new file mode 100644 index 0000000..7b5c655 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemrefIdrefUnique.cpp @@ -0,0 +1,66 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemrefIdrefUnique.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > ItemrefIdrefUnique::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMAttr* > idrefs = xe::GetAllAttributesFromElements( + QName( "itemref", OPF_XML_NAMESPACE ), + QName( "idref", "" ), + document ); + + std::vector< Result > results; + + boost::unordered_set< std::string > idref_values; + + foreach( xc::DOMAttr* idref, idrefs ) + { + std::string idref_value = fromX( idref->getValue() ); + + if ( !idref_values.count( idref_value ) ) + { + idref_values.insert( idref_value ); + } + + else + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_IDREF_NOT_UNIQUE, *idref ) + .AddMessageArgument( idref_value ) + ); + } + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemrefIdrefUnique.h b/src/FlightCrew/Validators/Opf/ItemrefIdrefUnique.h new file mode 100644 index 0000000..718a6b0 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemrefIdrefUnique.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMREFIDREFUNIQUE_H +#define ITEMREFIDREFUNIQUE_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class ItemrefIdrefUnique : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMREFIDREFUNIQUE_H + diff --git a/src/FlightCrew/Validators/Opf/ItemrefIdrefValid.cpp b/src/FlightCrew/Validators/Opf/ItemrefIdrefValid.cpp new file mode 100644 index 0000000..34ba974 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemrefIdrefValid.cpp @@ -0,0 +1,70 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemrefIdrefValid.h" +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > ItemrefIdrefValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMAttr* > idrefs = xe::GetAllAttributesFromElements( + QName( "itemref", OPF_XML_NAMESPACE ), + QName( "idref", "" ), + document ); + + std::vector< xc::DOMAttr* > item_ids = xe::GetAllAttributesFromElements( + QName( "item", OPF_XML_NAMESPACE ), + QName( "id", "" ), + document ); + + boost::unordered_set< std::string > item_id_set; + + foreach( xc::DOMAttr* item_id, item_ids ) + { + item_id_set.insert( fromX( item_id->getValue() ) ); + } + + std::vector< Result > results; + + foreach( xc::DOMAttr* idref, idrefs ) + { + std::string idref_value = fromX( idref->getValue() ); + + if ( item_id_set.count( idref_value ) == 0 ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_IDREF_ID_DOES_NOT_EXIST, *idref ) + .AddMessageArgument( idref_value ) + ); + } + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemrefIdrefValid.h b/src/FlightCrew/Validators/Opf/ItemrefIdrefValid.h new file mode 100644 index 0000000..7825133 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemrefIdrefValid.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMREFIDREFVALID_H +#define ITEMREFIDREFVALID_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class ItemrefIdrefValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMREFIDREFVALID_H + diff --git a/src/FlightCrew/Validators/Opf/ItemrefPresent.cpp b/src/FlightCrew/Validators/Opf/ItemrefPresent.cpp new file mode 100644 index 0000000..721908c --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemrefPresent.cpp @@ -0,0 +1,41 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ItemrefPresent.h" +#include + +namespace FlightCrew +{ + +std::vector< Result > ItemrefPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > possible_parents; + possible_parents.push_back( QName( "spine", OPF_XML_NAMESPACE ) ); + + return VerifyElementPresent( + QName( "itemref", OPF_XML_NAMESPACE ), possible_parents, document ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ItemrefPresent.h b/src/FlightCrew/Validators/Opf/ItemrefPresent.h new file mode 100644 index 0000000..0df5497 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ItemrefPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ITEMREFPRESENT_H +#define ITEMREFPRESENT_H + +#include "../ElementPresentValidator.h" + +namespace FlightCrew +{ + +class ItemrefPresent : public ElementPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ITEMREFPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/LanguagePresent.cpp b/src/FlightCrew/Validators/Opf/LanguagePresent.cpp new file mode 100644 index 0000000..73e06a6 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/LanguagePresent.cpp @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "LanguagePresent.h" + +namespace FlightCrew +{ + +std::vector< Result > LanguagePresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > possible_parents; + possible_parents.push_back( QName( "metadata", OPF_XML_NAMESPACE ) ); + possible_parents.push_back( QName( "dc-metadata", OPF_XML_NAMESPACE ) ); + + return VerifyElementPresent( + QName( "language", DC_XML_NAMESPACE ), possible_parents, document ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/LanguagePresent.h b/src/FlightCrew/Validators/Opf/LanguagePresent.h new file mode 100644 index 0000000..df43d38 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/LanguagePresent.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef LANGUAGEPRESENT_H +#define LANGUAGEPRESENT_H + +#include "../ElementPresentValidator.h" + +namespace FlightCrew +{ + +class LanguagePresent : public ElementPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // LANGUAGEPRESENT_H diff --git a/src/FlightCrew/Validators/Opf/ManifestAllowedChildren.cpp b/src/FlightCrew/Validators/Opf/ManifestAllowedChildren.cpp new file mode 100644 index 0000000..c181e2f --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ManifestAllowedChildren.cpp @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ManifestAllowedChildren.h" + +namespace FlightCrew +{ + +std::vector< Result > ManifestAllowedChildren::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_children; + + allowed_children.push_back( QName( "item", OPF_XML_NAMESPACE ) ); + + return ValidateAllowedChildren( + QName( "manifest", OPF_XML_NAMESPACE ), allowed_children, document ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/ManifestAllowedChildren.h b/src/FlightCrew/Validators/Opf/ManifestAllowedChildren.h new file mode 100644 index 0000000..3eb6550 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ManifestAllowedChildren.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef MANIFESTALLOWEDCHILDREN_H +#define MANIFESTALLOWEDCHILDREN_H + +#include "../AllowedChildrenValidator.h" + +namespace FlightCrew +{ + +class ManifestAllowedChildren : public AllowedChildrenValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // MANIFESTALLOWEDCHILDREN_H diff --git a/src/FlightCrew/Validators/Opf/ManifestAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/ManifestAttributesPresent.cpp new file mode 100644 index 0000000..3a14e2a --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ManifestAttributesPresent.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ManifestAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > ManifestAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + + QName element_qname( "manifest", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ManifestAttributesPresent.h b/src/FlightCrew/Validators/Opf/ManifestAttributesPresent.h new file mode 100644 index 0000000..cac5018 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ManifestAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef MANIFESTATTRIBUTESPRESENT_H +#define MANIFESTATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class ManifestAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // MANIFESTATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/MetaAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/MetaAttributesPresent.cpp new file mode 100644 index 0000000..b59d3ba --- /dev/null +++ b/src/FlightCrew/Validators/Opf/MetaAttributesPresent.cpp @@ -0,0 +1,56 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "MetaAttributesPresent.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > MetaAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + allowed_attributes.push_back( QName( "name", "" ) ); + allowed_attributes.push_back( QName( "content", "" ) ); + allowed_attributes.push_back( QName( "scheme", "" ) ); + + QName element_qname( "meta", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + std::vector< QName > mandatory_attributes; + mandatory_attributes.push_back( QName( "name", "" ) ); + mandatory_attributes.push_back( QName( "content", "" ) ); + + std::vector< Result > mandatory_results = HasMandatoryAttributes( + element_qname, mandatory_attributes, document ); + + return Util::Extend( allowed_results, mandatory_results ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/MetaAttributesPresent.h b/src/FlightCrew/Validators/Opf/MetaAttributesPresent.h new file mode 100644 index 0000000..39cd610 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/MetaAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef METAATTRIBUTESPRESENT_H +#define METAATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class MetaAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // METAATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/MetadataAllowedChildren.cpp b/src/FlightCrew/Validators/Opf/MetadataAllowedChildren.cpp new file mode 100644 index 0000000..fa6f637 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/MetadataAllowedChildren.cpp @@ -0,0 +1,161 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "MetadataAllowedChildren.h" +#include +#include +#include + +namespace FlightCrew +{ + +// These have to go here; otherwise, we get the static initialization order fiasco +const std::string MAIN_XML_NAMESPACE = "http://www.w3.org/XML/1998/namespace"; +const std::string OPF_XML_NAMESPACE = "http://www.idpf.org/2007/opf"; +const std::string DC_XML_NAMESPACE = "http://purl.org/dc/elements/1.1/"; +const std::string NCX_XML_NAMESPACE = "http://www.daisy.org/z3986/2005/ncx/"; + +const QName DC_METADATA_QNAME = QName( "dc-metadata", OPF_XML_NAMESPACE ); +const QName X_METADATA_QNAME = QName( "x-metadata", OPF_XML_NAMESPACE ); + +const QName TITLE_QNAME = QName( "title", DC_XML_NAMESPACE ); +const QName LANGUAGE_QNAME = QName( "language", DC_XML_NAMESPACE ); +const QName IDENTIFIER_QNAME = QName( "identifier", DC_XML_NAMESPACE ); +const QName CREATOR_QNAME = QName( "creator", DC_XML_NAMESPACE ); +const QName SUBJECT_QNAME = QName( "subject", DC_XML_NAMESPACE ); +const QName DESCRIPTION_QNAME = QName( "description", DC_XML_NAMESPACE ); +const QName PUBLISHER_QNAME = QName( "publisher", DC_XML_NAMESPACE ); +const QName CONTRIBUTOR_QNAME = QName( "contributor", DC_XML_NAMESPACE ); +const QName DATE_QNAME = QName( "date", DC_XML_NAMESPACE ); +const QName TYPE_QNAME = QName( "type", DC_XML_NAMESPACE ); +const QName FORMAT_QNAME = QName( "format", DC_XML_NAMESPACE ); +const QName SOURCE_QNAME = QName( "source", DC_XML_NAMESPACE ); +const QName RELATION_QNAME = QName( "relation", DC_XML_NAMESPACE ); +const QName COVERAGE_QNAME = QName( "coverage", DC_XML_NAMESPACE ); +const QName RIGHTS_QNAME = QName( "rights", DC_XML_NAMESPACE ); +const QName META_QNAME = QName( "meta", OPF_XML_NAMESPACE ); + + +std::vector< Result > MetadataAllowedChildren::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + xc::DOMNodeList *metadatas = document.getElementsByTagNameNS( + toX( OPF_XML_NAMESPACE ), toX( "metadata" ) ); + + std::vector< Result > results; + + if ( metadatas->getLength() < 1 ) + + return results; + + xc::DOMElement* metadata = static_cast< xc::DOMElement* >( metadatas->item( 0 ) ); + std::vector< xc::DOMElement* > children = xe::GetElementChildren( *metadata ); + + // A element can have either a dc-metadata element and an optional + // x-metadata element, OR the standard children (title, creator, language etc.) + // plus any other child not in the reserved namespaces. + // See the OPF schema: + // http://www.idpf.org/doc_library/epub/OPF_2.0.1_draft.htm#AppendixA + + if ( xe::ElementListContains( children, DC_METADATA_QNAME ) || + xe::ElementListContains( children, X_METADATA_QNAME ) ) + { + std::vector< Result > subresults = ValidateDCXChildrenSubset( children ); + results.insert( results.end(), subresults.begin(), subresults.end() ); + } + + else + { + std::vector< Result > subresults = ValidateStandardChildren( children ); + results.insert( results.end(), subresults.begin(), subresults.end() ); + } + + return results; +} + + +std::vector< Result > MetadataAllowedChildren::ValidateDCXChildrenSubset( + std::vector< xc::DOMElement* > children ) +{ + std::vector< Result > results; + + for ( uint i = 0; i < children.size(); ++i ) + { + xc::DOMElement *child = children[ i ]; + QName current_qname( fromX( child->getLocalName() ), + fromX( child->getNamespaceURI() ) ); + + if ( current_qname != DC_METADATA_QNAME && + current_qname != X_METADATA_QNAME + ) + { + results.push_back( NotAllowedChildResult( *children[ i ] ) ); + } + } + + return results; +} + + +std::vector< Result > MetadataAllowedChildren::ValidateStandardChildren( + std::vector< xc::DOMElement* > children ) +{ + std::vector< Result > results; + + for ( uint i = 0; i < children.size(); ++i ) + { + std::string local_name = fromX( children[ i ]->getLocalName() ); + std::string namespace_name = fromX( children[ i ]->getNamespaceURI() ); + QName child_qname( local_name, namespace_name ); + + if ( child_qname != TITLE_QNAME && + child_qname != LANGUAGE_QNAME && + child_qname != IDENTIFIER_QNAME && + child_qname != CREATOR_QNAME && + child_qname != SUBJECT_QNAME && + child_qname != DESCRIPTION_QNAME && + child_qname != PUBLISHER_QNAME && + child_qname != CONTRIBUTOR_QNAME && + child_qname != DATE_QNAME && + child_qname != TYPE_QNAME && + child_qname != FORMAT_QNAME && + child_qname != SOURCE_QNAME && + child_qname != RELATION_QNAME && + child_qname != COVERAGE_QNAME && + child_qname != RIGHTS_QNAME && + child_qname != META_QNAME + ) + { + if ( namespace_name == OPF_XML_NAMESPACE || + namespace_name == DC_XML_NAMESPACE + ) + { + results.push_back( NotAllowedChildResult( *children[ i ] ) ); + } + } + } + + return results; +} + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Validators/Opf/MetadataAllowedChildren.h b/src/FlightCrew/Validators/Opf/MetadataAllowedChildren.h new file mode 100644 index 0000000..4d98d67 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/MetadataAllowedChildren.h @@ -0,0 +1,61 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef METADATAALLOWEDCHILDREN_H +#define METADATAALLOWEDCHILDREN_H + +#include "../AllowedChildrenValidator.h" + +namespace FlightCrew +{ + +/** + * Checks that the has only allowed children. + */ +class MetadataAllowedChildren : public AllowedChildrenValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); + +private: + + /** + * Validates the metadata children when using dc- and x-metadata children. + * + * @param children The children of the metadata element. + */ + std::vector< Result > ValidateDCXChildrenSubset( std::vector< xc::DOMElement* > children ); + + /** + * Validates the metadata children when using standard children. + * + * @param children The children of the metadata element. + */ + std::vector< Result > ValidateStandardChildren( std::vector< xc::DOMElement* > children ); +}; + +} // namespace FlightCrew + +#endif // METADATAALLOWEDCHILDREN_H diff --git a/src/FlightCrew/Validators/Opf/MetadataAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/MetadataAttributesPresent.cpp new file mode 100644 index 0000000..fe32872 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/MetadataAttributesPresent.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "MetadataAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > MetadataAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + + QName element_qname( "metadata", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/MetadataAttributesPresent.h b/src/FlightCrew/Validators/Opf/MetadataAttributesPresent.h new file mode 100644 index 0000000..6bd608b --- /dev/null +++ b/src/FlightCrew/Validators/Opf/MetadataAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef METADATAATTRIBUTESPRESENT_H +#define METADATAATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class MetadataAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // METADATAATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/NcxPresent.cpp b/src/FlightCrew/Validators/Opf/NcxPresent.cpp new file mode 100644 index 0000000..4a587c5 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/NcxPresent.cpp @@ -0,0 +1,62 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "NcxPresent.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > NcxPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + document, QName( "item", OPF_XML_NAMESPACE ) ); + + std::vector< Result > results; + + foreach( xc::DOMElement* item, items ) + { + std::string media_type = fromX( item->getAttribute( toX( "media-type" ) ) ); + + if ( media_type == NCX_MIME ) + + return results; + } + + std::vector< xc::DOMElement* > manifests = xe::GetElementsByQName( + document, QName( "manifest", OPF_XML_NAMESPACE ) ); + + // Something has gone horribly wrong + if ( manifests.empty() ) + + return results; + + results.push_back( ResultWithNodeLocation( ERROR_OPF_NCX_NOT_PRESENT, *manifests[ 0 ] ) ); + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/NcxPresent.h b/src/FlightCrew/Validators/Opf/NcxPresent.h new file mode 100644 index 0000000..8878e22 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/NcxPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef NCXPRESENT_H +#define NCXPRESENT_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class NcxPresent : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // NCXPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/OneManifest.cpp b/src/FlightCrew/Validators/Opf/OneManifest.cpp new file mode 100644 index 0000000..789c830 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/OneManifest.cpp @@ -0,0 +1,38 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "OneManifest.h" + +namespace FlightCrew +{ + +std::vector< Result > OneManifest::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + return VerifyElementCountOne( QName( "manifest", OPF_XML_NAMESPACE ), + QName( "package", OPF_XML_NAMESPACE ), + document ); +} + +} //namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/OneManifest.h b/src/FlightCrew/Validators/Opf/OneManifest.h new file mode 100644 index 0000000..df73631 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/OneManifest.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ONEMANIFEST_H +#define ONEMANIFEST_H + +#include "../ElementCountOneValidator.h" + +namespace FlightCrew +{ + +class OneManifest : public ElementCountOneValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ONEMANIFEST_H diff --git a/src/FlightCrew/Validators/Opf/OneMetadata.cpp b/src/FlightCrew/Validators/Opf/OneMetadata.cpp new file mode 100644 index 0000000..124e3f4 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/OneMetadata.cpp @@ -0,0 +1,38 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "OneMetadata.h" + +namespace FlightCrew +{ + +std::vector< Result > OneMetadata::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + return VerifyElementCountOne( QName( "metadata", OPF_XML_NAMESPACE ), + QName( "package", OPF_XML_NAMESPACE ), + document ); +} + +} //namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/OneMetadata.h b/src/FlightCrew/Validators/Opf/OneMetadata.h new file mode 100644 index 0000000..6976ccb --- /dev/null +++ b/src/FlightCrew/Validators/Opf/OneMetadata.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ONEMETADATA_H +#define ONEMETADATA_H + +#include "../ElementCountOneValidator.h" + +namespace FlightCrew +{ + +class OneMetadata : public ElementCountOneValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ONEMETADATA_H diff --git a/src/FlightCrew/Validators/Opf/OneSpine.cpp b/src/FlightCrew/Validators/Opf/OneSpine.cpp new file mode 100644 index 0000000..e91fdf2 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/OneSpine.cpp @@ -0,0 +1,39 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "OneSpine.h" +#include + +namespace FlightCrew +{ + +std::vector< Result > OneSpine::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + return VerifyElementCountOne( QName( "spine", OPF_XML_NAMESPACE ), + QName( "package", OPF_XML_NAMESPACE ), + document ); +} + +} //namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/OneSpine.h b/src/FlightCrew/Validators/Opf/OneSpine.h new file mode 100644 index 0000000..96902b0 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/OneSpine.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ONESPINE_H +#define ONESPINE_H + +#include "../ElementCountOneValidator.h" + +namespace FlightCrew +{ + +class OneSpine : public ElementCountOneValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // ONESPINE_H diff --git a/src/FlightCrew/Validators/Opf/PackageAllowedChildren.cpp b/src/FlightCrew/Validators/Opf/PackageAllowedChildren.cpp new file mode 100644 index 0000000..4637be7 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageAllowedChildren.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "PackageAllowedChildren.h" + +namespace FlightCrew +{ + +std::vector< Result > PackageAllowedChildren::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_children; + + allowed_children.push_back( QName( "manifest", OPF_XML_NAMESPACE ) ); + allowed_children.push_back( QName( "metadata", OPF_XML_NAMESPACE ) ); + allowed_children.push_back( QName( "spine", OPF_XML_NAMESPACE ) ); + allowed_children.push_back( QName( "tours", OPF_XML_NAMESPACE ) ); + allowed_children.push_back( QName( "guide", OPF_XML_NAMESPACE ) ); + + return ValidateAllowedChildren( + QName( "package", OPF_XML_NAMESPACE ), allowed_children, document ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/PackageAllowedChildren.h b/src/FlightCrew/Validators/Opf/PackageAllowedChildren.h new file mode 100644 index 0000000..0012d3b --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageAllowedChildren.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef PACKAGEALLOWEDCHILDREN_H +#define PACKAGEALLOWEDCHILDREN_H + +#include "../AllowedChildrenValidator.h" + +namespace FlightCrew +{ + +class PackageAllowedChildren : public AllowedChildrenValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // PACKAGEALLOWEDCHILDREN_H diff --git a/src/FlightCrew/Validators/Opf/PackageAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/PackageAttributesPresent.cpp new file mode 100644 index 0000000..ac5620a --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageAttributesPresent.cpp @@ -0,0 +1,53 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "PackageAttributesPresent.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > PackageAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "version", "" ) ); + allowed_attributes.push_back( QName( "unique-identifier", "" ) ); + allowed_attributes.push_back( QName( "id", "" ) ); + + QName element_qname( "package", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + std::vector< QName > mandatory_attributes; + mandatory_attributes.push_back( QName( "version", "" ) ); + mandatory_attributes.push_back( QName( "unique-identifier", "" ) ); + + std::vector< Result > mandatory_results = HasMandatoryAttributes( + element_qname, mandatory_attributes, document ); + + return Util::Extend( allowed_results, mandatory_results ); +} + +} //namespace FlightCrew \ No newline at end of file diff --git a/src/FlightCrew/Validators/Opf/PackageAttributesPresent.h b/src/FlightCrew/Validators/Opf/PackageAttributesPresent.h new file mode 100644 index 0000000..891f76e --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageAttributesPresent.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef PACKAGEATTRIBUTESPRESENT_H +#define PACKAGEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class PackageAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // PACKAGEATTRIBUTESPRESENT_H diff --git a/src/FlightCrew/Validators/Opf/PackageIsRoot.cpp b/src/FlightCrew/Validators/Opf/PackageIsRoot.cpp new file mode 100644 index 0000000..3a2c3b7 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageIsRoot.cpp @@ -0,0 +1,46 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "PackageIsRoot.h" +#include + +namespace FlightCrew +{ + +std::vector< Result > PackageIsRoot::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + xc::DOMElement *root_element = document.getDocumentElement(); + + std::vector< Result > results; + + if ( fromX( root_element->getLocalName() ) != "package" ) + { + results.push_back( ResultWithNodeLocation( + ERROR_OPF_PACKAGE_NOT_ROOT, *root_element ) ); + } + + return results; +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/PackageIsRoot.h b/src/FlightCrew/Validators/Opf/PackageIsRoot.h new file mode 100644 index 0000000..8feb85a --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageIsRoot.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef PACKAGEISROOT_H +#define PACKAGEISROOT_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class PackageIsRoot : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // PACKAGEISROOT_H diff --git a/src/FlightCrew/Validators/Opf/PackageUniqueIdentifierValid.cpp b/src/FlightCrew/Validators/Opf/PackageUniqueIdentifierValid.cpp new file mode 100644 index 0000000..18c72f7 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageUniqueIdentifierValid.cpp @@ -0,0 +1,69 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "PackageUniqueIdentifierValid.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > PackageUniqueIdentifierValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + xc::DOMElement *package_element = document.getDocumentElement(); + std::string unique_id = fromX( package_element->getAttribute( toX( "unique-identifier" ) ) ); + + std::vector< xc::DOMAttr* > identifier_ids = xe::GetAllAttributesFromElements( + QName( "identifier", DC_XML_NAMESPACE ), + QName( "id", "" ), + document ); + + std::vector< Result > results; + bool id_found = false; + + foreach( xc::DOMAttr* identifier_id, identifier_ids ) + { + std::string id_value = fromX( identifier_id->getValue() ); + if ( id_value == unique_id ) + { + id_found = true; + break; + } + } + + if ( !id_found ) + { + results.push_back( + ResultWithNodeLocation( + ERROR_OPF_PACKAGE_UNIQUE_IDENTIFIER_DOES_NOT_EXIST, *package_element ) + .AddMessageArgument( unique_id ) + ); + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/PackageUniqueIdentifierValid.h b/src/FlightCrew/Validators/Opf/PackageUniqueIdentifierValid.h new file mode 100644 index 0000000..2002fa7 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageUniqueIdentifierValid.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef PACKAGEUNIQUEIDENTIFIERVALID_H +#define PACKAGEUNIQUEIDENTIFIERVALID_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class PackageUniqueIdentifierValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // PACKAGEUNIQUEIDENTIFIERVALID_H + diff --git a/src/FlightCrew/Validators/Opf/PackageVersionCorrect.cpp b/src/FlightCrew/Validators/Opf/PackageVersionCorrect.cpp new file mode 100644 index 0000000..aa2475f --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageVersionCorrect.cpp @@ -0,0 +1,55 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "PackageVersionCorrect.h" +#include +#include +#include + +static const std::string VALID_PACKAGE_VERSION = "2.0"; + +namespace FlightCrew +{ + +std::vector< Result > PackageVersionCorrect::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + xc::DOMElement *package_element = document.getDocumentElement(); + std::vector< Result > results; + + std::string version = fromX( package_element->getAttribute( toX( "version" ) ) ); + + if ( version != VALID_PACKAGE_VERSION ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_BAD_PACKAGE_VERSION, *package_element ) + .AddMessageArgument( VALID_PACKAGE_VERSION ) + .AddMessageArgument( version ) + ); + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/PackageVersionCorrect.h b/src/FlightCrew/Validators/Opf/PackageVersionCorrect.h new file mode 100644 index 0000000..8c8e2ba --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PackageVersionCorrect.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef PACKAGEVERSIONCORRECT_H +#define PACKAGEVERSIONCORRECT_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class PackageVersionCorrect : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // PACKAGEVERSIONCORRECT_H + diff --git a/src/FlightCrew/Validators/Opf/PublisherAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/PublisherAttributesPresent.cpp new file mode 100644 index 0000000..09e48dc --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PublisherAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "PublisherAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > PublisherAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + + QName element_qname( "publisher", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/PublisherAttributesPresent.h b/src/FlightCrew/Validators/Opf/PublisherAttributesPresent.h new file mode 100644 index 0000000..18d26e7 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/PublisherAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef PUBLISHERATTRIBUTESPRESENT_H +#define PUBLISHERATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class PublisherAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // PUBLISHERATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/ReachabilityAnalysis.cpp b/src/FlightCrew/Validators/Opf/ReachabilityAnalysis.cpp new file mode 100644 index 0000000..24c0f28 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ReachabilityAnalysis.cpp @@ -0,0 +1,584 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ReachabilityAnalysis.h" +#include +#include +#include +#include "Misc/DetermineMimetype.h" +#include "Misc/Utilities.h" + +namespace boost +{ + +namespace filesystem3 +{ + // This overload of the boost hash_value func + // is necessary so that we can put fs::paths + // in boost::unordered_sets + std::size_t hash_value( const fs::path &mypath ) + { +#ifdef _WIN32 + boost::hash< std::wstring > hasher; + return hasher( mypath.generic_wstring() ); +#else + boost::hash< std::string > hasher; + return hasher( mypath.generic_string() ); +#endif + } +} // namespace filesystem3 + +} // namespace boost + + +namespace FlightCrew +{ + + +std::vector< Result > ReachabilityAnalysis::ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath ) +{ + const fs::path opf_folder_path = filepath.parent_path(); + + boost::unordered_map< std::string, fs::path > manifest_items = + GetManifestItems( document, opf_folder_path ); + + boost::unordered_set< fs::path > starting_set = + StartingSetOpsPaths( document, manifest_items, opf_folder_path ); + + boost::unordered_set< fs::path > reachable_resources = + DetermineReachableResources( starting_set ); + + std::vector< Result > results; + + Util::Extend( results, ResultsForOpsDocsNotInSpine( document, manifest_items, reachable_resources ) ); + Util::Extend( results, ResultsForResourcesNotInManifest( manifest_items, reachable_resources ) ); + Util::Extend( results, ResultsForUnusedResources( manifest_items, reachable_resources ) ); + + return results; +} + + +std::vector< Result > ReachabilityAnalysis::ResultsForOpsDocsNotInSpine( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items, + const boost::unordered_set< fs::path > &reachable_resources ) +{ + boost::unordered_set< fs::path > spine_paths = SpinePaths( document, manifest_items ); + boost::unordered_set< fs::path > ops_docs = GetOnlyOpsDocs( reachable_resources ); + + std::vector< Result > results; + + foreach( const fs::path &ops_path, ops_docs ) + { + if ( !spine_paths.count( ops_path ) ) + { + results.push_back( + Result( ERROR_OPF_REACHABLE_OPS_DOC_NOT_IN_SPINE ) + .SetFilepath( Util::BoostPathToUtf8Path( ops_path ) ) + ); + } + } + + return results; +} + + +std::vector< Result > ReachabilityAnalysis::ResultsForResourcesNotInManifest( + const boost::unordered_map< std::string, fs::path > &manifest_items, + const boost::unordered_set< fs::path > &reachable_resources ) +{ + boost::unordered_set< fs::path > manifest_paths = + GetPathsFromItems( manifest_items ); + + std::vector< Result > results; + + foreach( const fs::path &resource_path, reachable_resources ) + { + if ( !manifest_paths.count( resource_path ) ) + { + results.push_back( + Result( ERROR_OPF_REACHABLE_RESOURCE_NOT_IN_MANIFEST ) + .SetFilepath( Util::BoostPathToUtf8Path( resource_path ) ) + ); + } + } + + return results; +} + + +std::vector< Result > ReachabilityAnalysis::ResultsForUnusedResources( + const boost::unordered_map< std::string, fs::path > &manifest_items, + const boost::unordered_set< fs::path > &reachable_resources ) +{ + std::vector< Result > results; + + boost::unordered_set< fs::path > manifest_paths = + GetPathsFromItems( manifest_items ); + + foreach( const fs::path &manifest_path, manifest_paths ) + { + if ( !reachable_resources.count( manifest_path ) && + !AllowedToBeNotReachable( manifest_path ) ) + { + results.push_back( + Result( WARNING_OPF_RESOURCE_IN_MANIFEST_NOT_REACHABLE ) + .SetFilepath( Util::BoostPathToUtf8Path( manifest_path ) ) + ); + } + } + + return results; +} + + +bool ReachabilityAnalysis::AllowedToBeNotReachable( const fs::path &filepath ) +{ + // As per spec, the only file that is allowed to be unreachable is the NCX file. + return DetermineMimetype( filepath ) == NCX_MIME; +} + + +boost::unordered_map< std::string, fs::path > ReachabilityAnalysis::GetManifestItems( + const xc::DOMDocument &document, + const fs::path &opf_folder_path ) +{ + boost::unordered_map< std::string, fs::path > manifest_items; + + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + document, QName( "item", OPF_XML_NAMESPACE ) ); + + foreach( xc::DOMElement* item, items ) + { + std::string id = fromX( item->getAttribute( toX( "id" ) ) ); + std::string href = fromX( item->getAttribute( toX( "href" ) ) ); + fs::path item_path = opf_folder_path / + Util::Utf8PathToBoostPath( Util::UrlDecode( href ) ); + + manifest_items[ id ] = item_path; + } + + return manifest_items; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::StartingSetOpsPaths( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items, + const fs::path &opf_folder_path ) +{ + boost::unordered_set< fs::path > starting_set = SpinePaths( document, manifest_items ); + starting_set = Util::SetUnion( starting_set, GuidePaths( document, opf_folder_path ) ); + starting_set = Util::SetUnion( starting_set, ToursPaths( document, opf_folder_path ) ); + starting_set = Util::SetUnion( starting_set, NcxPaths( document, manifest_items ) ); + + return starting_set; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::SpinePaths( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items ) +{ + boost::unordered_set< fs::path > spine_paths; + + std::vector< xc::DOMElement* > items = xe::GetElementsByQName( + document, QName( "itemref", OPF_XML_NAMESPACE ) ); + + foreach( xc::DOMElement* item, items ) + { + std::string idref = fromX( item->getAttribute( toX( "idref" ) ) ); + + if ( manifest_items.count( idref ) > 0 ) + + spine_paths.insert( manifest_items.at( idref ) ); + } + + return spine_paths; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::GuidePaths( + const xc::DOMDocument &document, + const fs::path &opf_folder_path ) +{ + boost::unordered_set< fs::path > guide_paths; + + std::vector< xc::DOMElement* > references = xe::GetElementsByQName( + document, QName( "reference", OPF_XML_NAMESPACE ) ); + + foreach( xc::DOMElement* reference, references ) + { + std::string href = fromX( reference->getAttribute( toX( "href" ) ) ); + fs::path reference_path = opf_folder_path / + Util::Utf8PathToBoostPath( Util::UrlWithoutFragment( Util::UrlDecode( href ) ) ); + + guide_paths.insert( reference_path ); + } + + return guide_paths; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::ToursPaths( + const xc::DOMDocument &document, + const fs::path &opf_folder_path ) +{ + boost::unordered_set< fs::path > tours_paths; + + std::vector< xc::DOMElement* > sites = xe::GetElementsByQName( + document, QName( "site ", OPF_XML_NAMESPACE ) ); + + foreach( xc::DOMElement* site, sites ) + { + std::string href = fromX( site->getAttribute( toX( "href" ) ) ); + fs::path site_path = opf_folder_path / + Util::Utf8PathToBoostPath( Util::UrlWithoutFragment( Util::UrlDecode( href ) ) ); + + tours_paths.insert( site_path ); + } + + return tours_paths; +} + + +fs::path ReachabilityAnalysis::GetPathToNcx( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items ) +{ + std::vector< xc::DOMAttr* > tocs = xe::GetAllAttributesFromElements( + QName( "spine", OPF_XML_NAMESPACE ), + QName( "toc", "" ), + document ); + + if ( tocs.empty() ) + + return fs::path(); + + std::string toc_id = fromX( tocs[ 0 ]->getValue() ); + + if ( !manifest_items.count( toc_id ) ) + + return fs::path(); + + return manifest_items.at( toc_id ); +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::NcxPaths( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items ) +{ + fs::path ncx_path = GetPathToNcx( document, manifest_items ); + boost::shared_ptr< xc::DOMDocument > ncx_document; + + try + { + ncx_document = Util::LoadXmlDocument( ncx_path ); + } + + catch ( std::exception& ) + { + // If the file doesn't exist or some other + // snafu, then there are obviously no links. + return boost::unordered_set< fs::path > (); + } + + boost::unordered_set< fs::path > ncx_paths; + + std::vector< xc::DOMAttr* > srcs = xe::GetAllAttributesFromElements( + QName( "content", NCX_XML_NAMESPACE ), + QName( "src", "" ), + *ncx_document ); + + fs::path ncx_folder = ncx_path.parent_path(); + + foreach( xc::DOMAttr* src, srcs ) + { + fs::path resource_path = + Util::Utf8PathToBoostPath( + Util::UrlWithoutFragment( + Util::UrlDecode( fromX( src->getValue() ) ) ) ); + + ncx_paths.insert( ncx_folder / resource_path ); + } + + return ncx_paths; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::DetermineReachableResources( + const boost::unordered_set< fs::path > &starting_ops_paths ) +{ + boost::unordered_set< fs::path > current_resource_set = starting_ops_paths; + boost::unordered_set< fs::path > new_resource_set = current_resource_set; + + while ( true ) + { + boost::unordered_set< fs::path > reachable_resource_set = + GetDirectlyReachableResources( new_resource_set ); + + boost::unordered_set< fs::path > next_resource_set = + Util::SetUnion( reachable_resource_set, current_resource_set ); + + if ( next_resource_set == current_resource_set ) + + break; + + new_resource_set = Util::SetSubtraction( next_resource_set, current_resource_set ); + current_resource_set = next_resource_set; + } + + return current_resource_set; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::GetDirectlyReachableResources( + const boost::unordered_set< fs::path > &resources ) +{ + return Util::SetUnion( + GetLinkedResourcesFromAllOps( GetOnlyOpsDocs( resources ) ), + GetLinkedResourcesFromAllCss( GetOnlyCssDocs( resources ) ) ); +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::GetOnlyOpsDocs( + const boost::unordered_set< fs::path > &resources ) +{ + boost::unordered_set< fs::path > ops_docs; + + foreach( const fs::path &resource, resources ) + { + std::string mimetype = DetermineMimetype( resource ); + + if ( mimetype == XHTML_MIME || + mimetype == DTBOOK_MIME || + mimetype == OEB_DOC_MIME ) + { + ops_docs.insert( resource ); + } + } + + return ops_docs; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::GetOnlyCssDocs( + const boost::unordered_set< fs::path > &resources ) +{ + boost::unordered_set< fs::path > ops_docs; + + foreach( const fs::path &resource, resources ) + { + std::string mimetype = DetermineMimetype( resource ); + + if ( mimetype == CSS_MIME ) + { + ops_docs.insert( resource ); + } + } + + return ops_docs; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::GetLinkedResourcesFromAllOps( + const boost::unordered_set< fs::path > &ops_docs ) +{ + boost::unordered_set< fs::path > all_linked_resources; + + foreach( const fs::path &ops_doc, ops_docs ) + { + all_linked_resources = Util::SetUnion( + all_linked_resources, GetLinkedResourcesFromOps( ops_doc ) ); + } + + return all_linked_resources; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::GetLinkedResourcesFromAllCss( + const boost::unordered_set< fs::path > &css_docs ) +{ + boost::unordered_set< fs::path > all_linked_resources; + + foreach( const fs::path &css_doc, css_docs ) + { + all_linked_resources = Util::SetUnion( + all_linked_resources, GetLinkedResourcesFromCss( css_doc ) ); + } + + return all_linked_resources; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::GetLinkedResourcesFromOps( + const fs::path &ops_document ) +{ + boost::shared_ptr< xc::DOMDocument > document; + + try + { + document = Util::LoadXhtmlDocument( ops_document ); + } + + catch ( std::exception& ) + { + // If the file doesn't exist or some other + // snafu, then there are obviously no links. + return boost::unordered_set< fs::path > (); + } + + xc::DOMNodeList *elements = document->getElementsByTagNameNS( + toX( "*" ), toX( "*" ) ); + + boost::unordered_set< fs::path > linked_resources; + fs::path ops_doc_folder = ops_document.parent_path(); + + for ( uint i = 0; i < elements->getLength(); ++i ) + { + xc::DOMNamedNodeMap *attribute_map = elements->item( i )->getAttributes(); + + if ( !attribute_map ) + + continue; + + for ( uint j = 0; j < attribute_map->getLength(); ++j ) + { + xc::DOMAttr *attribute = static_cast< xc::DOMAttr* >( attribute_map->item( j ) ); + std::string attribute_name = fromX( attribute->getLocalName() ); + + if ( attribute_name == "href" || + attribute_name == "src" ) + { + std::string attribute_value = fromX( attribute->getValue() ); + fs::path resource_path = + Util::Utf8PathToBoostPath( + Util::UrlWithoutFileScheme( + Util::UrlWithoutFragment( + Util::UrlDecode( attribute_value ) ) ) ); + + if ( !IsFilesystemPath( resource_path ) || resource_path.empty() ) + + continue; + + linked_resources.insert( Util::NormalizePath( ops_doc_folder / resource_path ) ); + } + } + } + + return linked_resources; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::GetLinkedResourcesFromCss( + const fs::path &css_document ) +{ + std::string contents; + + try + { + contents = Util::ReadUnicodFile( css_document ); + } + + catch ( std::exception& ) + { + // If the file doesn't exist or some other + // snafu, then there are obviously no links. + return boost::unordered_set< fs::path > (); + } + + boost::unordered_set< fs::path > linked_resources; + fs::path css_doc_folder = css_document.parent_path(); + + // We have to erase all comments first, because we don't want + // to count commented-out links. + boost::erase_all_regex( contents, boost::regex( "/\\*.*?\\*/" ) ); + + std::string::const_iterator start = contents.begin(); + std::string::const_iterator end = contents.end(); + + boost::match_results< std::string::const_iterator > matches; + boost::regex expression( + "(?:(?:src|background|background-image)\\s*:|@import)\\s*" + "[^;\\}\\(\"']*" + "(?:" + "url\\([\"']?([^\\)\"']+)[\"']?\\)" + "|" + "[\"']([^\"']+)[\"']" + ")" + "[^;\\}]*" + "(?:;|\\})" ); + + while ( boost::regex_search( start, end, matches, expression ) ) + { + start = matches[ 0 ].second; + + for ( uint i = 1; i < matches.size(); ++i ) + { + std::string matched_path = matches[ i ]; + boost::trim( matched_path ); + + if ( matched_path.empty() ) + + continue; + + fs::path resource_path = Util::Utf8PathToBoostPath( matched_path ); + linked_resources.insert( Util::NormalizePath( css_doc_folder / resource_path ) ); + } + } + + return linked_resources; +} + + +boost::unordered_set< fs::path > ReachabilityAnalysis::GetPathsFromItems( + const boost::unordered_map< std::string, fs::path > &manifest_items ) +{ + boost::unordered_set< fs::path > manifest_paths; + + // Using boost_foreach gives us a warning here, + // so we use the normal for loop + for ( boost::unordered_map< std::string, fs::path >::const_iterator it = manifest_items.begin(); + it != manifest_items.end(); ++it ) + { + manifest_paths.insert( it->second ); + } + + return manifest_paths; +} + + +bool ReachabilityAnalysis::IsFilesystemPath( const fs::path &path ) +{ + // If the attribute value in a href has ':', it's because + // this is a non-filesystem path. We already removed the + // "file://" prefix if it existed. + + return path.string().find( ':' ) == std::string::npos; +} + + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ReachabilityAnalysis.h b/src/FlightCrew/Validators/Opf/ReachabilityAnalysis.h new file mode 100644 index 0000000..54aff32 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ReachabilityAnalysis.h @@ -0,0 +1,278 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef REACHABILITYANALYSIS_H +#define REACHABILITYANALYSIS_H + +#include "../XmlValidator.h" +#include +#include + +namespace FlightCrew +{ + +/** + * Reports errors with files that are unmanifested or unused and OPS + * docs not in the OPF . + */ +class ReachabilityAnalysis : public XmlValidator +{ +public: + + // inherited + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); + +private: + + /** + * Returns validation results for problems with OPS docs not present in the OPF spine. + * + * @param document The OPF document. + * @param manifest_items A map of manifest items. The keys are the IDs, the + * values are full paths to those files. + * @param reachable_resources A set of full paths to all the reachable files. + * @return The validation results. + */ + std::vector< Result > ResultsForOpsDocsNotInSpine( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items, + const boost::unordered_set< fs::path > &reachable_resources ); + + /** + * Returns validation results for problems with resources not present in the OPF manifest. + * + * @param document The OPF document. + * @param manifest_items A map of manifest items. The keys are the IDs, the + * values are full paths to those files. + * @param reachable_resources A set of full paths to all the reachable files. + * @return The validation results. + */ + std::vector< Result > ResultsForResourcesNotInManifest( + const boost::unordered_map< std::string, fs::path > &manifest_items, + const boost::unordered_set< fs::path > &reachable_resources ); + + /** + * Returns validation results for problems with resources that are unused but present + * in the OPF manifest. + * + * @param document The OPF document. + * @param manifest_items A map of manifest items. The keys are the IDs, the + * values are full paths to those files. + * @param reachable_resources A set of full paths to all the reachable files. + * @return The validation results. + */ + std::vector< Result > ResultsForUnusedResources( + const boost::unordered_map< std::string, fs::path > &manifest_items, + const boost::unordered_set< fs::path > &reachable_resources ); + + /** + * Determines if the specified file is allowed to be unreachable. + * + * @param filepath The file to analyze. + * @return \c true if the file is allowed to be unreachable. + */ + bool AllowedToBeNotReachable( const fs::path &filepath ); + + /** + * Returns an ID->fullpath mapping of the manifest items in the OPF document. + * + * @param document The OPF document. + * @param opf_folder_path The path to the folder in which the OPF file resides. + * @return The manifest items. + */ + boost::unordered_map< std::string, fs::path > GetManifestItems( + const xc::DOMDocument &document, + const fs::path &opf_folder_path ); + + /** + * Returns a set of paths to the starting OPS documents. The starting docs are + * the ones that are explicitly listed in the OPF or NCX in some way. + * + * @param document The OPF document. + * @param manifest_items A map of manifest items. The keys are the IDs, the + * values are full paths to those files. + * @param opf_folder_path The path to the folder in which the OPF file resides. + * @return The starting OPS paths. + */ + boost::unordered_set< fs::path > StartingSetOpsPaths( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items, + const fs::path &opf_folder_path ); + + /** + * Returns a set of paths listed in the OPF . + * + * @param document The OPF document. + * @param manifest_items A map of manifest items. The keys are the IDs, the + * values are full paths to those files. + * @return The spine paths. + */ + boost::unordered_set< fs::path > SpinePaths( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items ); + + /** + * Returns a set of paths listed in the OPF . + * + * @param document The OPF document. + * @param opf_folder_path The path to the folder in which the OPF file resides. + * @return The guide paths. + */ + boost::unordered_set< fs::path > GuidePaths( + const xc::DOMDocument &document, + const fs::path &opf_folder_path ); + + /** + * Returns a set of paths listed in the OPF . + * + * @param document The OPF document. + * @param opf_folder_path The path to the folder in which the OPF file resides. + * @return The tours paths. + */ + boost::unordered_set< fs::path > ToursPaths( + const xc::DOMDocument &document, + const fs::path &opf_folder_path ); + + /** + * Returns a path to the NCX file. + * + * @param document The OPF document. + * @param manifest_items A map of manifest items. The keys are the IDs, the + * values are full paths to those files. + * @return The path to the NCX. + */ + fs::path GetPathToNcx( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items ); + + /** + * Returns a set of paths listed in the NCX. + * + * @param document The OPF document. + * @param manifest_items A map of manifest items. The keys are the IDs, the + * values are full paths to those files. + * @return The NCX paths. + */ + boost::unordered_set< fs::path > NcxPaths( + const xc::DOMDocument &document, + const boost::unordered_map< std::string, fs::path > &manifest_items ); + + /** + * Returns a set of full paths to all the reachable resources. + * + * @param starting_ops_paths The paths to the starting OPS documents. + * @return All the reachable resources. + */ + boost::unordered_set< fs::path > DetermineReachableResources( + const boost::unordered_set< fs::path > &starting_ops_paths ); + + /** + * Returns a list of all the resources that are directly reachable + * (i.e. "one step away") from the provided resources. + * + * @param resources The resources from which reachability of new resources + * will be determined. + * @return The directly reachable resources. + */ + boost::unordered_set< fs::path > GetDirectlyReachableResources( + const boost::unordered_set< fs::path > &resources ); + + /** + * From the set of provided resources, returns only the OPS ones. + * + * @param resources The resource set. + * @return The OPS resources. + */ + boost::unordered_set< fs::path > GetOnlyOpsDocs( + const boost::unordered_set< fs::path > &resources ); + + /** + * From the set of provided resources, returns only the CSS ones. + * + * @param resources The resource set. + * @return The CSS resources. + */ + boost::unordered_set< fs::path > GetOnlyCssDocs( + const boost::unordered_set< fs::path > &resources ); + + /** + * For all the provided OPS docs, returns a set of all reachable resources. + * + * @param resources The OPS path set. + * @return The reachable resources. + */ + boost::unordered_set< fs::path > GetLinkedResourcesFromAllOps( + const boost::unordered_set< fs::path > &ops_docs ); + + /** + * For all the provided CSS docs, returns a set of all reachable resources. + * + * @param resources The OPS path set. + * @return The reachable resources. + */ + boost::unordered_set< fs::path > GetLinkedResourcesFromAllCss( + const boost::unordered_set< fs::path > &css_docs ); + + /** + * For the provided OPS doc, returns a set of all reachable resources. + * + * @param resources The OPS path. + * @return The reachable resources. + */ + boost::unordered_set< fs::path > GetLinkedResourcesFromOps( + const fs::path &ops_document ); + + /** + * For the provided CSS doc, returns a set of all reachable resources. + * + * @param resources The CSS path. + * @return The reachable resources. + */ + boost::unordered_set< fs::path > GetLinkedResourcesFromCss( + const fs::path &css_document ); + + /** + * Extracts the paths from map into a set. + * + * @param manifest_items A map of manifest items. The keys are the IDs, the + * values are full paths to those files. + * @return A set of all the paths. + */ + boost::unordered_set< fs::path > GetPathsFromItems( + const boost::unordered_map< std::string, fs::path > &manifest_items ); + + /** + * Examines if the provided path points to a file on the filesystem. + * (as opposed to a file on the Internet). + * + * @param path The path to inspect. + * @return \c true if the path is a filesystem path. + */ + bool IsFilesystemPath( const fs::path &path ); +}; + +} // namespace FlightCrew + +#endif // REACHABILITYANALYSIS_H + diff --git a/src/FlightCrew/Validators/Opf/ReferenceAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/ReferenceAttributesPresent.cpp new file mode 100644 index 0000000..31e5c33 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ReferenceAttributesPresent.cpp @@ -0,0 +1,55 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ReferenceAttributesPresent.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > ReferenceAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "type", "" ) ); + allowed_attributes.push_back( QName( "title", "" ) ); + allowed_attributes.push_back( QName( "href", "" ) ); + + QName element_qname( "reference", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + std::vector< QName > mandatory_attributes; + mandatory_attributes.push_back( QName( "type", "" ) ); + mandatory_attributes.push_back( QName( "href", "" ) ); + + std::vector< Result > mandatory_results = HasMandatoryAttributes( + element_qname, mandatory_attributes, document ); + + return Util::Extend( allowed_results, mandatory_results ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ReferenceAttributesPresent.h b/src/FlightCrew/Validators/Opf/ReferenceAttributesPresent.h new file mode 100644 index 0000000..f62ba4c --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ReferenceAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef REFERENCEATTRIBUTESPRESENT_H +#define REFERENCEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class ReferenceAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // REFERENCEATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/ReferenceTypeValid.cpp b/src/FlightCrew/Validators/Opf/ReferenceTypeValid.cpp new file mode 100644 index 0000000..5f826ca --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ReferenceTypeValid.cpp @@ -0,0 +1,85 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ReferenceTypeValid.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > ReferenceTypeValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMElement* > elements = xe::GetElementsByQName( + document, QName( "reference", OPF_XML_NAMESPACE ) ); + + std::vector< Result > results; + boost::unordered_set< std::string > types = GetReferenceTypesSet(); + + foreach( xc::DOMElement* element, elements ) + { + std::string type = fromX( element->getAttribute( toX( "type" ) ) ); + + // The "type" is required to have a value + if ( types.count( type ) == 0 && + !boost::starts_with( type, "other." ) ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_BAD_REFERENCE_TYPE_VALUE, *element ) + .AddMessageArgument( type ) + ); + } + } + + return results; +} + + +boost::unordered_set< std::string > ReferenceTypeValid::GetReferenceTypesSet() +{ + boost::unordered_set< std::string > types; + types.insert( "cover" ); + types.insert( "title-page" ); + types.insert( "toc" ); + types.insert( "index" ); + types.insert( "glossary" ); + types.insert( "acknowledgements" ); + types.insert( "bibliography" ); + types.insert( "colophon" ); + types.insert( "copyright-page" ); + types.insert( "dedication" ); + types.insert( "epigraph" ); + types.insert( "foreword" ); + types.insert( "loi" ); + types.insert( "lot" ); + types.insert( "notes" ); + types.insert( "preface" ); + types.insert( "text" ); + + return types; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ReferenceTypeValid.h b/src/FlightCrew/Validators/Opf/ReferenceTypeValid.h new file mode 100644 index 0000000..3b7b1b8 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ReferenceTypeValid.h @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef REFERENCETYPEVALID_H +#define REFERENCETYPEVALID_H + +#include "../XmlValidator.h" +#include + +namespace FlightCrew +{ + +class ReferenceTypeValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); + +private: + + boost::unordered_set< std::string > GetReferenceTypesSet(); +}; + +} // namespace FlightCrew + +#endif // REFERENCETYPEVALID_H + diff --git a/src/FlightCrew/Validators/Opf/RelationAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/RelationAttributesPresent.cpp new file mode 100644 index 0000000..1c08466 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/RelationAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "RelationAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > RelationAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + + QName element_qname( "relation", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/RelationAttributesPresent.h b/src/FlightCrew/Validators/Opf/RelationAttributesPresent.h new file mode 100644 index 0000000..cb7f1ff --- /dev/null +++ b/src/FlightCrew/Validators/Opf/RelationAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef RELATIONATTRIBUTESPRESENT_H +#define RELATIONATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class RelationAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // RELATIONATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/RightsAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/RightsAttributesPresent.cpp new file mode 100644 index 0000000..8cebff4 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/RightsAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "RightsAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > RightsAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + + QName element_qname( "rights", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/RightsAttributesPresent.h b/src/FlightCrew/Validators/Opf/RightsAttributesPresent.h new file mode 100644 index 0000000..e271107 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/RightsAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef RIGHTSATTRIBUTESPRESENT_H +#define RIGHTSATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class RightsAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // RIGHTSATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/SiteAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/SiteAttributesPresent.cpp new file mode 100644 index 0000000..a04e4ea --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SiteAttributesPresent.cpp @@ -0,0 +1,54 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "SiteAttributesPresent.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > SiteAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "title", "" ) ); + allowed_attributes.push_back( QName( "href", "" ) ); + + QName element_qname( "site", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + std::vector< QName > mandatory_attributes; + mandatory_attributes.push_back( QName( "title", "" ) ); + mandatory_attributes.push_back( QName( "href", "" ) ); + + std::vector< Result > mandatory_results = HasMandatoryAttributes( + element_qname, mandatory_attributes, document ); + + return Util::Extend( allowed_results, mandatory_results ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/SiteAttributesPresent.h b/src/FlightCrew/Validators/Opf/SiteAttributesPresent.h new file mode 100644 index 0000000..89828ea --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SiteAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef SITEATTRIBUTESPRESENT_H +#define SITEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class SiteAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // SITEATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/SourceAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/SourceAttributesPresent.cpp new file mode 100644 index 0000000..cf363c0 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SourceAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "SourceAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > SourceAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + + QName element_qname( "source", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/SourceAttributesPresent.h b/src/FlightCrew/Validators/Opf/SourceAttributesPresent.h new file mode 100644 index 0000000..d54ea53 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SourceAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef SOURCEATTRIBUTESPRESENT_H +#define SOURCEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class SourceAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // SOURCEATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/SpineAllowedChildren.cpp b/src/FlightCrew/Validators/Opf/SpineAllowedChildren.cpp new file mode 100644 index 0000000..72c7c76 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SpineAllowedChildren.cpp @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "SpineAllowedChildren.h" + +namespace FlightCrew +{ + +std::vector< Result > SpineAllowedChildren::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_children; + + allowed_children.push_back( QName( "itemref", OPF_XML_NAMESPACE ) ); + + return ValidateAllowedChildren( + QName( "spine", OPF_XML_NAMESPACE ), allowed_children, document ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/SpineAllowedChildren.h b/src/FlightCrew/Validators/Opf/SpineAllowedChildren.h new file mode 100644 index 0000000..9d44764 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SpineAllowedChildren.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef SPINEALLOWEDCHILDREN_H +#define SPINEALLOWEDCHILDREN_H + +#include "../AllowedChildrenValidator.h" + +namespace FlightCrew +{ + +class SpineAllowedChildren : public AllowedChildrenValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // SPINEALLOWEDCHILDREN_H diff --git a/src/FlightCrew/Validators/Opf/SpineAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/SpineAttributesPresent.cpp new file mode 100644 index 0000000..55f7ee7 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SpineAttributesPresent.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "SpineAttributesPresent.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > SpineAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "toc", "" ) ); + + QName element_qname( "spine", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + std::vector< QName > mandatory_attributes; + mandatory_attributes.push_back( QName( "toc", "" ) ); + + std::vector< Result > mandatory_results = HasMandatoryAttributes( + element_qname, mandatory_attributes, document ); + + return Util::Extend( allowed_results, mandatory_results ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/SpineAttributesPresent.h b/src/FlightCrew/Validators/Opf/SpineAttributesPresent.h new file mode 100644 index 0000000..9cbce04 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SpineAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef SPINEATTRIBUTESPRESENT_H +#define SPINEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class SpineAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // SPINEATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/SpineTocValid.cpp b/src/FlightCrew/Validators/Opf/SpineTocValid.cpp new file mode 100644 index 0000000..82e2207 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SpineTocValid.cpp @@ -0,0 +1,72 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "SpineTocValid.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > SpineTocValid::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< xc::DOMAttr* > tocs = xe::GetAllAttributesFromElements( + QName( "spine", OPF_XML_NAMESPACE ), + QName( "toc", "" ), + document ); + + std::vector< xc::DOMAttr* > item_ids = xe::GetAllAttributesFromElements( + QName( "item", OPF_XML_NAMESPACE ), + QName( "id", "" ), + document ); + + boost::unordered_set< std::string > item_id_set; + + foreach( xc::DOMAttr* item_id, item_ids ) + { + item_id_set.insert( fromX( item_id->getValue() ) ); + } + + std::vector< Result > results; + + if ( tocs.empty() ) + + return results; + + std::string toc_item_id = fromX( tocs[ 0 ]->getValue() ); + + if ( item_id_set.count( toc_item_id ) == 0 ) + { + results.push_back( + ResultWithNodeLocation( ERROR_OPF_BAD_SPINE_TOC_VALUE, *tocs[ 0 ] ) + .AddMessageArgument( toc_item_id ) + ); + } + + return results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/SpineTocValid.h b/src/FlightCrew/Validators/Opf/SpineTocValid.h new file mode 100644 index 0000000..5fda819 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SpineTocValid.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef SPINETOCVALID_H +#define SPINETOCVALID_H + +#include "../XmlValidator.h" + +namespace FlightCrew +{ + +class SpineTocValid : public XmlValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // SPINETOCVALID_H + diff --git a/src/FlightCrew/Validators/Opf/SubjectAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/SubjectAttributesPresent.cpp new file mode 100644 index 0000000..48e9b55 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SubjectAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "SubjectAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > SubjectAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + + QName element_qname( "subject", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/SubjectAttributesPresent.h b/src/FlightCrew/Validators/Opf/SubjectAttributesPresent.h new file mode 100644 index 0000000..c36fb0f --- /dev/null +++ b/src/FlightCrew/Validators/Opf/SubjectAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef SUBJECTATTRIBUTESPRESENT_H +#define SUBJECTATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class SubjectAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // SUBJECTATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/TitleAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/TitleAttributesPresent.cpp new file mode 100644 index 0000000..ee5115e --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TitleAttributesPresent.cpp @@ -0,0 +1,45 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "TitleAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > TitleAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "lang", MAIN_XML_NAMESPACE ) ); + + QName element_qname( "title", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/TitleAttributesPresent.h b/src/FlightCrew/Validators/Opf/TitleAttributesPresent.h new file mode 100644 index 0000000..dc4bb4a --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TitleAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef TITLEATTRIBUTESPRESENT_H +#define TITLEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class TitleAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // TITLEATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/TitlePresent.cpp b/src/FlightCrew/Validators/Opf/TitlePresent.cpp new file mode 100644 index 0000000..3cb5ae0 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TitlePresent.cpp @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "TitlePresent.h" + +namespace FlightCrew +{ + +std::vector< Result > TitlePresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > possible_parents; + possible_parents.push_back( QName( "metadata", OPF_XML_NAMESPACE ) ); + possible_parents.push_back( QName( "dc-metadata", OPF_XML_NAMESPACE ) ); + + return VerifyElementPresent( + QName( "title", DC_XML_NAMESPACE ), possible_parents, document ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/TitlePresent.h b/src/FlightCrew/Validators/Opf/TitlePresent.h new file mode 100644 index 0000000..df3bbb3 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TitlePresent.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef TITLEPRESENT_H +#define TITLEPRESENT_H + +#include "../ElementPresentValidator.h" + +namespace FlightCrew +{ + +class TitlePresent : public ElementPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // TITLEPRESENT_H diff --git a/src/FlightCrew/Validators/Opf/TourAllowedChildren.cpp b/src/FlightCrew/Validators/Opf/TourAllowedChildren.cpp new file mode 100644 index 0000000..493df11 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TourAllowedChildren.cpp @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "TourAllowedChildren.h" + +namespace FlightCrew +{ + +std::vector< Result > TourAllowedChildren::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_children; + + allowed_children.push_back( QName( "site", OPF_XML_NAMESPACE ) ); + + return ValidateAllowedChildren( + QName( "tour", OPF_XML_NAMESPACE ), allowed_children, document ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/TourAllowedChildren.h b/src/FlightCrew/Validators/Opf/TourAllowedChildren.h new file mode 100644 index 0000000..353f122 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TourAllowedChildren.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef TOURALLOWEDCHILDREN_H +#define TOURALLOWEDCHILDREN_H + +#include "../AllowedChildrenValidator.h" + +namespace FlightCrew +{ + +class TourAllowedChildren : public AllowedChildrenValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // TOURALLOWEDCHILDREN_H diff --git a/src/FlightCrew/Validators/Opf/TourAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/TourAttributesPresent.cpp new file mode 100644 index 0000000..485ae16 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TourAttributesPresent.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "TourAttributesPresent.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > TourAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + allowed_attributes.push_back( QName( "title", "" ) ); + + QName element_qname( "tour", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + std::vector< QName > mandatory_attributes; + mandatory_attributes.push_back( QName( "title", "" ) ); + + std::vector< Result > mandatory_results = HasMandatoryAttributes( + element_qname, mandatory_attributes, document ); + + return Util::Extend( allowed_results, mandatory_results ); +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/TourAttributesPresent.h b/src/FlightCrew/Validators/Opf/TourAttributesPresent.h new file mode 100644 index 0000000..8c91c2d --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TourAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef TOURATTRIBUTESPRESENT_H +#define TOURATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class TourAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // TOURATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/ToursAllowedChildren.cpp b/src/FlightCrew/Validators/Opf/ToursAllowedChildren.cpp new file mode 100644 index 0000000..15b318a --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ToursAllowedChildren.cpp @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ToursAllowedChildren.h" + +namespace FlightCrew +{ + +std::vector< Result > ToursAllowedChildren::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_children; + + allowed_children.push_back( QName( "tour", OPF_XML_NAMESPACE ) ); + + return ValidateAllowedChildren( + QName( "tours", OPF_XML_NAMESPACE ), allowed_children, document ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/ToursAllowedChildren.h b/src/FlightCrew/Validators/Opf/ToursAllowedChildren.h new file mode 100644 index 0000000..f99be08 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ToursAllowedChildren.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef TOURSALLOWEDCHILDREN_H +#define TOURSALLOWEDCHILDREN_H + +#include "../AllowedChildrenValidator.h" + +namespace FlightCrew +{ + +class ToursAllowedChildren : public AllowedChildrenValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // TOURSALLOWEDCHILDREN_H diff --git a/src/FlightCrew/Validators/Opf/ToursAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/ToursAttributesPresent.cpp new file mode 100644 index 0000000..55e2e42 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ToursAttributesPresent.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ToursAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > ToursAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + + QName element_qname( "tours", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/ToursAttributesPresent.h b/src/FlightCrew/Validators/Opf/ToursAttributesPresent.h new file mode 100644 index 0000000..8c642b8 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/ToursAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef TOURSATTRIBUTESPRESENT_H +#define TOURSATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class ToursAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // TOURSATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/TypeAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/TypeAttributesPresent.cpp new file mode 100644 index 0000000..66525a5 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TypeAttributesPresent.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "TypeAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > TypeAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + + QName element_qname( "type", DC_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/TypeAttributesPresent.h b/src/FlightCrew/Validators/Opf/TypeAttributesPresent.h new file mode 100644 index 0000000..924ddf4 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/TypeAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef TYPEATTRIBUTESPRESENT_H +#define TYPEATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class TypeAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // TYPEATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/Opf/XMetadataAllowedChildren.cpp b/src/FlightCrew/Validators/Opf/XMetadataAllowedChildren.cpp new file mode 100644 index 0000000..c978eab --- /dev/null +++ b/src/FlightCrew/Validators/Opf/XMetadataAllowedChildren.cpp @@ -0,0 +1,67 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "XMetadataAllowedChildren.h" +#include +#include +#include + +namespace FlightCrew +{ + +std::vector< Result > XMetadataAllowedChildren::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + xc::DOMNodeList *xmetadatas = document.getElementsByTagNameNS( + toX( OPF_XML_NAMESPACE ), toX( "x-metadata" ) ); + + std::vector< Result > results; + + if ( xmetadatas->getLength() < 1 ) + + return results; + + xc::DOMElement* xmetadata = static_cast< xc::DOMElement* >( xmetadatas->item( 0 ) ); + std::vector< xc::DOMElement* > children = xe::GetElementChildren( *xmetadata ); + + for ( uint i = 0; i < children.size(); ++i ) + { + std::string local_name = fromX( children[ i ]->getLocalName() ); + std::string namespace_name = fromX( children[ i ]->getNamespaceURI() ); + QName child_qname( local_name, namespace_name ); + + if ( child_qname != META_QNAME ) + { + if ( namespace_name == OPF_XML_NAMESPACE || + namespace_name == DC_XML_NAMESPACE + ) + { + results.push_back( NotAllowedChildResult( *children[ i ] ) ); + } + } + } + + return results; +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Opf/XMetadataAllowedChildren.h b/src/FlightCrew/Validators/Opf/XMetadataAllowedChildren.h new file mode 100644 index 0000000..a436659 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/XMetadataAllowedChildren.h @@ -0,0 +1,42 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef XMETADATAALLOWEDCHILDREN_H +#define XMETADATAALLOWEDCHILDREN_H + +#include "../AllowedChildrenValidator.h" + +namespace FlightCrew +{ + +class XMetadataAllowedChildren : public AllowedChildrenValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // XMETADATAALLOWEDCHILDREN_H diff --git a/src/FlightCrew/Validators/Opf/XMetadataAttributesPresent.cpp b/src/FlightCrew/Validators/Opf/XMetadataAttributesPresent.cpp new file mode 100644 index 0000000..f38305f --- /dev/null +++ b/src/FlightCrew/Validators/Opf/XMetadataAttributesPresent.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "XMetadataAttributesPresent.h" + +namespace FlightCrew +{ + +std::vector< Result > XMetadataAttributesPresent::ValidateXml( + const xc::DOMDocument &document, + const fs::path& ) +{ + std::vector< QName > allowed_attributes; + allowed_attributes.push_back( QName( "id", "" ) ); + + QName element_qname( "x-metadata", OPF_XML_NAMESPACE ); + + std::vector< Result > allowed_results = HasOnlyAllowedAttributes( + element_qname, allowed_attributes, document ); + + return allowed_results; +} + +} // namespace FlightCrew + diff --git a/src/FlightCrew/Validators/Opf/XMetadataAttributesPresent.h b/src/FlightCrew/Validators/Opf/XMetadataAttributesPresent.h new file mode 100644 index 0000000..b100746 --- /dev/null +++ b/src/FlightCrew/Validators/Opf/XMetadataAttributesPresent.h @@ -0,0 +1,43 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef XMETADATAATTRIBUTESPRESENT_H +#define XMETADATAATTRIBUTESPRESENT_H + +#include "../AttributesPresentValidator.h" + +namespace FlightCrew +{ + +class XMetadataAttributesPresent : public AttributesPresentValidator +{ +public: + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ); +}; + +} // namespace FlightCrew + +#endif // XMETADATAATTRIBUTESPRESENT_H + diff --git a/src/FlightCrew/Validators/SaxSchemaValidator.cpp b/src/FlightCrew/Validators/SaxSchemaValidator.cpp new file mode 100644 index 0000000..5958883 --- /dev/null +++ b/src/FlightCrew/Validators/SaxSchemaValidator.cpp @@ -0,0 +1,88 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "SaxSchemaValidator.h" +#include "Misc/ErrorResultCollector.h" +#include +#include +#include +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +std::vector< Result > SaxSchemaValidator::ValidateAgainstSchema( + const fs::path &filepath, + const std::string &external_schema_location, + const std::vector< const xc::MemBufInputSource* > &schemas ) +{ + boost::scoped_ptr< xc::SAX2XMLReader > parser( xc::XMLReaderFactory::createXMLReader() ); + + parser->setFeature( xc::XMLUni::fgSAX2CoreValidation, true ); + parser->setFeature( xc::XMLUni::fgXercesLoadSchema, false ); + parser->setFeature( xc::XMLUni::fgXercesUseCachedGrammarInParse, true ); + parser->setFeature( xc::XMLUni::fgXercesSkipDTDValidation, true ); + + // We don't need DTD validation + parser->setProperty( xc::XMLUni::fgXercesScannerName, + (void*) xc::XMLUni::fgSGXMLScanner ); + + LoadSchemas( *parser, external_schema_location, schemas ); + + ErrorResultCollector collector; + parser->setErrorHandler( &collector ); + + try + { + parser->parse( filepath.string().c_str() ); + } + + catch ( xc::SAXException& exception ) + { + collector.AddNewExceptionAsResult( exception ); + } + + catch ( xc::XMLException& exception ) + { + collector.AddNewExceptionAsResult( exception ); + } + + return Util::AddPathToResults( collector.GetResults(), filepath ); +} + + +void SaxSchemaValidator::LoadSchemas( + xc::SAX2XMLReader &parser, + const std::string &external_schema_location, + const std::vector< const xc::MemBufInputSource* > &schemas ) +{ + + foreach( const xc::MemBufInputSource *input, schemas ) + { + parser.loadGrammar( *input, xc::Grammar::SchemaGrammarType, true ); + } + + parser.setProperty( xc::XMLUni::fgXercesSchemaExternalSchemaLocation, + (void*) toX( external_schema_location ) ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/SaxSchemaValidator.h b/src/FlightCrew/Validators/SaxSchemaValidator.h new file mode 100644 index 0000000..ed75972 --- /dev/null +++ b/src/FlightCrew/Validators/SaxSchemaValidator.h @@ -0,0 +1,53 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef SAXSCHEMAVALIDATOR_H +#define SAXSCHEMAVALIDATOR_H + +#include +namespace XERCES_CPP_NAMESPACE { class SAX2XMLReader; class MemBufInputSource; }; +namespace xc = XERCES_CPP_NAMESPACE; +#include "IValidator.h" + +namespace FlightCrew +{ + +class SaxSchemaValidator : public IValidator +{ + +protected: + + std::vector< Result > ValidateAgainstSchema( + const fs::path &filepath, + const std::string &external_schema_location, + const std::vector< const xc::MemBufInputSource* > &schemas ); + +private: + + void LoadSchemas( xc::SAX2XMLReader &parser, + const std::string &external_schema_location, + const std::vector< const xc::MemBufInputSource* > &schemas ); +}; + +} // namespace FlightCrew + +#endif // SAXSCHEMAVALIDATOR_H diff --git a/src/FlightCrew/Validators/Xhtml/SatisfiesXhtmlSchema.cpp b/src/FlightCrew/Validators/Xhtml/SatisfiesXhtmlSchema.cpp new file mode 100644 index 0000000..441d6a0 --- /dev/null +++ b/src/FlightCrew/Validators/Xhtml/SatisfiesXhtmlSchema.cpp @@ -0,0 +1,77 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "SatisfiesXhtmlSchema.h" +#include "Misc/ErrorResultCollector.h" +#include +#include +#include +#include + +namespace FlightCrew +{ + +SatisfiesXhtmlSchema::SatisfiesXhtmlSchema() + : + m_Dtd( XHTML11_FLAT_DTD, + XHTML11_FLAT_DTD_LEN, + toX( XHTML11_FLAT_DTD_ID ) ), + m_OpsSchema( OPS201_XSD, + OPS201_XSD_LEN, + toX( OPS201_XSD_ID ) ), + m_OpsSwitchSchema( OPS_SWITCH_XSD, + OPS_SWITCH_XSD_LEN, + toX( OPS_SWITCH_XSD_ID ) ), + m_SvgSchema( SVG11_XSD, + SVG11_XSD_LEN, + toX( SVG11_XSD_ID ) ), + m_XlinkSchema( XLINK_XSD, + XLINK_XSD_LEN, + toX( XLINK_XSD_ID ) ), + m_XmlSchema( XML_XSD, + XML_XSD_LEN, + toX( XML_XSD_ID ) ) +{ + +} + + +std::vector< Result > SatisfiesXhtmlSchema::ValidateFile( const fs::path &filepath ) +{ + std::string location = std::string( OPS201_XSD_NS ) + .append( " " ) + .append( OPS201_XSD_ID ); + + std::vector< const xc::MemBufInputSource* > schemas; + schemas.push_back( &m_XmlSchema ); + schemas.push_back( &m_XlinkSchema ); + schemas.push_back( &m_SvgSchema ); + schemas.push_back( &m_OpsSwitchSchema ); + schemas.push_back( &m_OpsSchema ); + + std::vector< const xc::MemBufInputSource* > dtds; + dtds.push_back( &m_Dtd ); + + return ValidateAgainstSchema( filepath, location, schemas, dtds ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Xhtml/SatisfiesXhtmlSchema.h b/src/FlightCrew/Validators/Xhtml/SatisfiesXhtmlSchema.h new file mode 100644 index 0000000..7c3d781 --- /dev/null +++ b/src/FlightCrew/Validators/Xhtml/SatisfiesXhtmlSchema.h @@ -0,0 +1,54 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef SATISFIESXHTMLSCHEMA_H +#define SATISFIESXHTMLSCHEMA_H + +#include +namespace xc = XERCES_CPP_NAMESPACE; +#include "../DomSchemaValidator.h" + +namespace FlightCrew +{ + +class SatisfiesXhtmlSchema : public DomSchemaValidator +{ +public: + + SatisfiesXhtmlSchema(); + + std::vector< Result > ValidateFile( const fs::path &filepath ); + +private: + + const xc::MemBufInputSource m_Dtd; + const xc::MemBufInputSource m_OpsSchema; + const xc::MemBufInputSource m_OpsSwitchSchema; + const xc::MemBufInputSource m_SvgSchema; + const xc::MemBufInputSource m_XlinkSchema; + const xc::MemBufInputSource m_XmlSchema; + +}; + +} // namespace FlightCrew + +#endif // SATISFIESXHTMLSCHEMA_H diff --git a/src/FlightCrew/Validators/Xhtml/UsesCorrectDtd.cpp b/src/FlightCrew/Validators/Xhtml/UsesCorrectDtd.cpp new file mode 100644 index 0000000..c892007 --- /dev/null +++ b/src/FlightCrew/Validators/Xhtml/UsesCorrectDtd.cpp @@ -0,0 +1,90 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Misc/Utilities.h" +#include "Result.h" +#include "UsesCorrectDtd.h" + + +namespace FlightCrew +{ + +static const int NUM_PEEK_CHARS_FOR_DTD = 300; +const std::string XHTML11_SYSTEM_ID = "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"; +const std::string XHTML11_PUBLIC_ID = "-//W3C//DTD XHTML 1.1//EN"; + + +std::vector< Result > UsesCorrectDtd::ValidateFile( const fs::path &filepath ) +{ + std::vector< Result > results; + + try + { + std::string inital_chars = Util::GetFirstNumCharsFromFile( filepath, NUM_PEEK_CHARS_FOR_DTD ); + + if ( !DtdCorrect( inital_chars ) ) + { + int dtd_start = DtdStartLocation( inital_chars ); + int error_line = dtd_start == -1 ? -1 : Util::LineOfCharIndex( inital_chars, dtd_start ); + + results.push_back( Result( ERROR_XHTML_BAD_DTD ) + .SetErrorLine( error_line ) ); + } + } + + catch ( ExceptionBase& ) + { + results.clear(); + results.push_back( Result( UNABLE_TO_PERFORM_VALIDATION ) ); + } + + return Util::AddPathToResults( results, filepath ); +} + + +bool UsesCorrectDtd::DtdCorrect( const std::string &inital_chars ) +{ + boost::regex expression( " matches; + + // If no dtd was found, we return true... the standard + // says the dtd is optional. + if ( !boost::regex_search( inital_chars, matches, expression ) ) + + return true; + + if ( matches[ 1 ] == XHTML11_PUBLIC_ID && + matches[ 2 ] == XHTML11_SYSTEM_ID ) + { + return true; + } + + return false; +} + + +int UsesCorrectDtd::DtdStartLocation( const std::string &inital_chars ) +{ + return static_cast< int >( inital_chars.find( ". +** +*************************************************************************/ + +#pragma once +#ifndef USESCORRECTDTD_H +#define USESCORRECTDTD_H + +#include "../IValidator.h" + +namespace FlightCrew +{ + +class UsesCorrectDtd : public IValidator +{ +public: + + std::vector< Result > ValidateFile( const fs::path &filepath ); + +private: + + bool DtdCorrect( const std::string &inital_chars ); + + int DtdStartLocation( const std::string &inital_chars ); +}; + +} // namespace FlightCrew + +#endif // USESCORRECTDTD_H diff --git a/src/FlightCrew/Validators/Xml/UsesUnicode.cpp b/src/FlightCrew/Validators/Xml/UsesUnicode.cpp new file mode 100644 index 0000000..d945bfb --- /dev/null +++ b/src/FlightCrew/Validators/Xml/UsesUnicode.cpp @@ -0,0 +1,152 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include +#include "UsesUnicode.h" +#include "Misc/Utilities.h" +#include "Result.h" + + +static const int NUM_PEEK_CHARS_FOR_XML_DECLARATION = 80; + +namespace FlightCrew +{ + +std::vector< Result > UsesUnicode::ValidateFile( const fs::path &filepath ) +{ + std::vector< Result > results; + + try + { + std::string inital_chars = Util::GetFirstNumCharsFromFile( filepath, NUM_PEEK_CHARS_FOR_XML_DECLARATION ); + + if ( FileIsValidUtf8( filepath ) ) + { + if ( !FileDeclaresUtf8( inital_chars ) ) + { + results.push_back( Result( ERROR_XML_SPECIFIES_NEITHER_UTF8_NOR_UTF16 ) + .SetErrorLine( 1 ) + .AddMessageArgument( GetDeclaredEncoding( inital_chars ) ) ); + } + + // else everything ok + } + + else + { + if ( !inital_chars.empty() ) + { + // It's in UTF-16 + + if ( !FileDeclaresUtf16( inital_chars ) ) + { + results.push_back( Result( ERROR_XML_SPECIFIES_NEITHER_UTF8_NOR_UTF16 ) + .SetErrorLine( 1 ) + .AddMessageArgument( GetDeclaredEncoding( inital_chars ) ) ); + } + + // else everything ok + } + + else + { + results.push_back( Result( ERROR_XML_BYTESTREAM_NEITHER_UTF8_NOR_UTF16 ) + .SetErrorLine( 1 ) ); + } + } + + return results; + } + + catch ( ExceptionBase& ) + { + results.clear(); + results.push_back( Result( UNABLE_TO_PERFORM_VALIDATION ) ); + } + + return Util::AddPathToResults( results, filepath ); +} + + +bool UsesUnicode::FileIsValidUtf8( const fs::path &filepath ) +{ + fs::ifstream file( filepath, std::ios::in | std::ios::binary ); + std::istreambuf_iterator it( file.rdbuf() ); + std::istreambuf_iterator eos; + + return utf8::is_valid( it, eos ); +} + + +bool UsesUnicode::FileDeclaresUtf8( const std::string &line ) +{ + if ( HasXmlDeclaration( line ) ) + { + std::string encoding = boost::to_upper_copy( GetDeclaredEncoding( line ) ); + + // Empty still counts as utf-8 as per spec + if ( encoding.empty() || encoding == "UTF-8" ) + + return true; + + return false; + } + + // No xml declaration means + // UTF-8 according to the spec + return true; +} + + +bool UsesUnicode::FileDeclaresUtf16( const std::string &line ) +{ + if ( HasXmlDeclaration( line ) ) + { + if ( boost::to_upper_copy( GetDeclaredEncoding( line ) ) == "UTF-16" ) + + return true; + + return false; + } + + return false; +} + + +bool UsesUnicode::HasXmlDeclaration( const std::string &line ) +{ + return boost::contains( line, " matches; + + // FIXME: return only when regex_search returns true + boost::regex_search( line, matches, expression ); + return matches[ 1 ]; +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Xml/UsesUnicode.h b/src/FlightCrew/Validators/Xml/UsesUnicode.h new file mode 100644 index 0000000..26d27ed --- /dev/null +++ b/src/FlightCrew/Validators/Xml/UsesUnicode.h @@ -0,0 +1,93 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef USESUNICODE_H +#define USESUNICODE_H + +#include "../IValidator.h" + +namespace FlightCrew +{ + +class UsesUnicode : public IValidator +{ + +public: + + std::vector< Result > ValidateFile( const fs::path &filepath ); + +private: + + /** + * Checks if the file contains a valid utf8 bytestream. + * + * @param filepath The path to the file to check. + * @return \c true when valid utf8 + */ + bool FileIsValidUtf8( const fs::path &filepath ); + + /** + * Gets the first num_chars characters from the file. + * + * @param filepath The path to the file to check. + * @return The starting characters. + */ + std::string GetFirstNumCharsFromFile( const fs::path &filepath, + unsigned int num_chars ); + + /** + * Checks if the line contains an utf8 encoding declaration. + * + * @param line A line of text, preferably with an xml declaration. + * @return \c true when line specifies utf8. + */ + bool FileDeclaresUtf8( const std::string &line ); + + /** + * Checks if the line contains an utf16 encoding declaration. + * + * @param line A line of text, preferably with an xml declaration. + * @return \c true when line specifies utf16. + */ + bool FileDeclaresUtf16( const std::string &line ); + + /** + * Checks if the line contains an xml declaration. + * + * @param line A line of text. + * @return \c true when line contains an xml declaration. + */ + bool HasXmlDeclaration( const std::string &line ); + + /** + * Returns the specified encoding in a line containing an xml declaration. + * + * @param line A line of text, preferably with an xml declaration. + * @return The encoding used. + */ + std::string GetDeclaredEncoding( const std::string &line ); + +}; + +} // namespace FlightCrew + +#endif // USESUNICODE_H diff --git a/src/FlightCrew/Validators/Xml/WellFormedXml.cpp b/src/FlightCrew/Validators/Xml/WellFormedXml.cpp new file mode 100644 index 0000000..471b2b1 --- /dev/null +++ b/src/FlightCrew/Validators/Xml/WellFormedXml.cpp @@ -0,0 +1,79 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "WellFormedXml.h" +#include "Misc/ErrorResultCollector.h" +#include +#include +#include +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + + +WellFormedXml::WellFormedXml() +{ + // This scanner ignores schemas and DTDs + parser.useScanner( xc::XMLUni::fgWFXMLScanner ); + parser.setValidationScheme( xc::AbstractDOMParser::Val_Never ); + parser.setDoNamespaces( true ); +} + + +std::vector< Result > WellFormedXml::ValidateFile( const fs::path &filepath ) +{ + parser.resetDocumentPool(); + + ErrorResultCollector collector; + parser.setErrorHandler( &collector ); + + try + { + parser.parse( toX( Util::BoostPathToUtf8Path( filepath ) ) ); + } + + catch ( xc::SAXException& exception ) + { + collector.AddNewExceptionAsResult( exception ); + } + + catch ( xc::XMLException& exception ) + { + collector.AddNewExceptionAsResult( exception ); + } + + catch ( xc::DOMException& exception ) + { + collector.AddNewExceptionAsResult( exception ); + } + + return Util::AddPathToResults( collector.GetResults(), filepath ); +} + + +xc::DOMDocument& WellFormedXml::GetDocument() +{ + return *parser.getDocument(); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/Xml/WellFormedXml.h b/src/FlightCrew/Validators/Xml/WellFormedXml.h new file mode 100644 index 0000000..12c486e --- /dev/null +++ b/src/FlightCrew/Validators/Xml/WellFormedXml.h @@ -0,0 +1,53 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef WELLFORMEDXML_H +#define WELLFORMEDXML_H + +#include +#include "../IValidator.h" +#include +namespace XERCES_CPP_NAMESPACE { class DOMDocument; }; +namespace xc = XERCES_CPP_NAMESPACE; + +namespace FlightCrew +{ + +class WellFormedXml : public IValidator +{ +public: + + WellFormedXml(); + + std::vector< Result > ValidateFile( const fs::path &filepath ); + + xc::DOMDocument& GetDocument(); + +private: + + XercesExt::LocationAwareDOMParser parser; + +}; + +} // namespace FlightCrew + +#endif // WELLFORMEDXML_H diff --git a/src/FlightCrew/Validators/XmlValidator.cpp b/src/FlightCrew/Validators/XmlValidator.cpp new file mode 100644 index 0000000..d402f52 --- /dev/null +++ b/src/FlightCrew/Validators/XmlValidator.cpp @@ -0,0 +1,44 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "XmlValidator.h" +#include "Misc/Utilities.h" +#include + +namespace FlightCrew +{ + +std::vector< Result > XmlValidator::ValidateFile( const fs::path &filepath ) +{ + return Util::AddPathToResults( + ValidateXml( *Util::LoadXmlDocument( filepath ), filepath ), + filepath ); +} + + +Result XmlValidator::ResultWithNodeLocation( ResultId error_id, + const xc::DOMNode &node ) +{ + return Result( error_id, xe::GetNodeLocationInfo( node ) ); +} + +} //namespace FlightCrew diff --git a/src/FlightCrew/Validators/XmlValidator.h b/src/FlightCrew/Validators/XmlValidator.h new file mode 100644 index 0000000..de8abb4 --- /dev/null +++ b/src/FlightCrew/Validators/XmlValidator.h @@ -0,0 +1,54 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef XMLVALIDATOR_H +#define XMLVALIDATOR_H + +#include +namespace xc = XERCES_CPP_NAMESPACE; +#include "IValidator.h" +#include "Result.h" + +namespace FlightCrew +{ + +class XmlValidator : public IValidator +{ +public: + + virtual std::vector< Result > ValidateFile( const fs::path &filepath ); + + virtual std::vector< Result > ValidateXml( + const xc::DOMDocument &document, + const fs::path &filepath = fs::path() ) = 0; + + virtual ~XmlValidator() {}; + +protected: + + Result ResultWithNodeLocation( ResultId error_id, + const xc::DOMNode &node ); +}; + +} // namespace FlightCrew + +#endif // XMLVALIDATOR_H diff --git a/src/FlightCrew/constants.h b/src/FlightCrew/constants.h new file mode 100644 index 0000000..6ce70da --- /dev/null +++ b/src/FlightCrew/constants.h @@ -0,0 +1,132 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef CONSTANTS_H +#define CONSTANTS_H + +namespace FlightCrew +{ + +extern const std::string MAIN_XML_NAMESPACE; +extern const std::string OPF_XML_NAMESPACE; +extern const std::string DC_XML_NAMESPACE; +extern const std::string CONTAINER_XML_NAMESPACE; +extern const std::string NCX_XML_NAMESPACE; + +extern const std::string OEBPS_MIME; +extern const std::string XHTML_MIME; +extern const std::string NCX_MIME; +extern const std::string PNG_MIME; +extern const std::string GIF_MIME; +extern const std::string JPEG_MIME; +extern const std::string SVG_MIME; +extern const std::string DTBOOK_MIME; +extern const std::string CSS_MIME; +extern const std::string XML_MIME; +extern const std::string XPGT_MIME; +extern const std::string OTF_MIME; +extern const std::string TTF_MIME; +extern const std::string OEB_DOC_MIME; +extern const std::string OEB_CSS_MIME; + +extern const std::string UNKNOWN_MIME; + +extern const std::string XHTML11_SYSTEM_ID; +extern const std::string XHTML11_PUBLIC_ID; + +extern const QName DC_METADATA_QNAME; +extern const QName X_METADATA_QNAME; +extern const QName TITLE_QNAME; +extern const QName LANGUAGE_QNAME; +extern const QName IDENTIFIER_QNAME; +extern const QName CREATOR_QNAME; +extern const QName SUBJECT_QNAME; +extern const QName DESCRIPTION_QNAME; +extern const QName PUBLISHER_QNAME; +extern const QName CONTRIBUTOR_QNAME; +extern const QName DATE_QNAME; +extern const QName TYPE_QNAME; +extern const QName FORMAT_QNAME; +extern const QName SOURCE_QNAME; +extern const QName RELATION_QNAME; +extern const QName COVERAGE_QNAME; +extern const QName RIGHTS_QNAME; +extern const QName META_QNAME; + +extern const char* XHTML11_FLAT_DTD_ID; +extern const unsigned int XHTML11_FLAT_DTD_LEN; +extern const unsigned char XHTML11_FLAT_DTD[]; + +extern const char* OPS201_XSD_NS; +extern const char* OPS201_XSD_ID; +extern const unsigned int OPS201_XSD_LEN; +extern const unsigned char OPS201_XSD[]; + +extern const char* OPS_SWITCH_XSD_ID; +extern const unsigned int OPS_SWITCH_XSD_LEN; +extern const unsigned char OPS_SWITCH_XSD[]; + +extern const char* SVG11_XSD_ID; +extern const unsigned int SVG11_XSD_LEN; +extern const unsigned char SVG11_XSD[]; + +extern const char* XLINK_XSD_ID; +extern const unsigned int XLINK_XSD_LEN; +extern const unsigned char XLINK_XSD[]; + +extern const char* XML_XSD_ID; +extern const unsigned int XML_XSD_LEN; +extern const unsigned char XML_XSD[]; + +extern const char* CONTAINER_XSD_NS; +extern const char* CONTAINER_XSD_ID; +extern const unsigned int CONTAINER_XSD_LEN; +extern const unsigned char CONTAINER_XSD[]; + +extern const char* ENCRYPTION_XSD_ID; +extern const unsigned int ENCRYPTION_XSD_LEN; +extern const unsigned char ENCRYPTION_XSD[]; + +extern const char* SIGNATURES_XSD_ID; +extern const unsigned int SIGNATURES_XSD_LEN; +extern const unsigned char SIGNATURES_XSD[]; + +extern const char* XENC_SCHEMA_XSD_ID; +extern const unsigned int XENC_SCHEMA_XSD_LEN; +extern const unsigned char XENC_SCHEMA_XSD[]; + +extern const char* XMLDSIG_CORE_SCHEMA_XSD_ID; +extern const unsigned int XMLDSIG_CORE_SCHEMA_XSD_LEN; +extern const unsigned char XMLDSIG_CORE_SCHEMA_XSD[]; + +extern const char* NCX_XSD_NS; +extern const char* NCX_XSD_ID; +extern const unsigned int NCX_XSD_LEN; +extern const unsigned char NCX_XSD[]; + +extern const char* NCX_2005_1_DTD_ID; +extern const unsigned int NCX_2005_1_DTD_LEN; +extern const unsigned char NCX_2005_1_DTD[]; + +} + +#endif // CONSTANTS_H diff --git a/src/FlightCrew/exception.h b/src/FlightCrew/exception.h new file mode 100644 index 0000000..40a6d85 --- /dev/null +++ b/src/FlightCrew/exception.h @@ -0,0 +1,66 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef EXCEPTION_H +#define EXCEPTION_H + +#include + +namespace FlightCrew +{ + +#define boost_throw(x) BOOST_THROW_EXCEPTION(x) + +// FlightCrew uses the "Exception types as semantic tags" idiom. +// For more information, see this link: +// http://www.boost.org/doc/libs/1_44_0/libs/exception/doc/exception_types_as_simple_semantic_tags.html + +/** + * The common base for all exceptions. + */ +struct ExceptionBase: virtual std::exception, virtual boost::exception {}; + +/** + * Thrown when a file does not exist. + */ +struct FileDoesNotExistEx : virtual ExceptionBase {}; +typedef boost::error_info< struct file_path, std::string > ei_FilePath; + +/** + * Thrown when a file is not in utf-8/16. + */ +struct FileNotInUnicodeEx : virtual ExceptionBase {}; + +/** + * Thrown when a path is not in utf-8. + */ +struct PathNotInUtf8 : virtual ExceptionBase {}; + +/** + * Thrown when the Xerces parser gives us null for a document. + */ +struct XercesParsingError : virtual ExceptionBase {}; + + +} // namespace FlightCrew + +#endif // EXCEPTION_H \ No newline at end of file diff --git a/src/FlightCrew/flightcrew.cpp b/src/FlightCrew/flightcrew.cpp new file mode 100644 index 0000000..3cf95fd --- /dev/null +++ b/src/FlightCrew/flightcrew.cpp @@ -0,0 +1,65 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "flightcrew.h" +#include "Framework/flightcrew_p.h" +#include "Misc/Utilities.h" + +namespace FlightCrew +{ + +FC_WIN_DLL_API std::vector< Result > ValidateEpub( const std::string &filepath ) +{ + return ValidateEpub( Util::Utf8PathToBoostPath( filepath ) ); +} + + +FC_WIN_DLL_API std::vector< Result > ValidateEpubRootFolder( const std::string &root_folder_path ) +{ + return ValidateEpubRootFolder( Util::Utf8PathToBoostPath( root_folder_path ) ); +} + + +FC_WIN_DLL_API std::vector< Result > ValidateOpf( const std::string &filepath ) +{ + return ValidateOpf( Util::Utf8PathToBoostPath( filepath ) ); +} + + +FC_WIN_DLL_API std::vector< Result > ValidateNcx( const std::string &filepath ) +{ + return ValidateNcx( Util::Utf8PathToBoostPath( filepath ) ); +} + + +FC_WIN_DLL_API std::vector< Result > ValidateXhtml( const std::string &filepath ) +{ + return ValidateXhtml( Util::Utf8PathToBoostPath( filepath ) ); +} + + +FC_WIN_DLL_API std::vector< Result > ValidateCss( const std::string &filepath ) +{ + return ValidateCss( Util::Utf8PathToBoostPath( filepath ) ); +} + +} // namespace FlightCrew diff --git a/src/FlightCrew/flightcrew.h b/src/FlightCrew/flightcrew.h new file mode 100644 index 0000000..4482fb7 --- /dev/null +++ b/src/FlightCrew/flightcrew.h @@ -0,0 +1,104 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef FLIGHTCREW_H +#define FLIGHTCREW_H + +#include +#include +#include "DllExporting.h" +#include "Result.h" +#include "exception.h" + +namespace FlightCrew +{ + +/** + * Validates the provided epub file, running all the checks that FlightCrew + * can perform. This includes all the OPF, NCX, XHTML and CSS checks. + * + * @param filepath A UTF-8 encoded path to the epub file to validate. + * The path can be either absolute or relative to the + * current working directory. + * @return A vector of Results, sorted by internal file and then by line number. + */ +FC_WIN_DLL_API std::vector< Result > ValidateEpub( const std::string &filepath ); + +/** + * Same as ValidateEpub(), except that it accepts a path to the root folder of an + * already extracted epub publication. + * + * @param filepath A UTF-8 encoded path to the epub root folder to validate. + * The path can be either absolute or relative to the + * current working directory. + * @return A vector of Results, sorted by internal file and then by line number. + */ +FC_WIN_DLL_API std::vector< Result > ValidateEpubRootFolder( const std::string &root_folder_path ); + +/** + * Validates the provided OPF file of an epub. The files that are listed in the + * OPF are expected to exist. + * + * @param filepath A UTF-8 encoded path to the OPF file to validate. + * The path can be either absolute or relative to the + * current working directory. + * @return A vector of Results, sorted by internal file and then by line number. + */ +FC_WIN_DLL_API std::vector< Result > ValidateOpf( const std::string &filepath ); + +/** + * Validates the provided NCX file of an epub. The files that are listed in the + * NCX are expected to exist. + * + * @param filepath A UTF-8 encoded path to the NCX file to validate. + * The path can be either absolute or relative to the + * current working directory. + * @return A vector of Results, sorted by internal file and then by line number. + */ +FC_WIN_DLL_API std::vector< Result > ValidateNcx( const std::string &filepath ); + +/** + * Validates the provided XHTML file of an epub. The resources linked from the file + * are expected to exist. + * + * @param filepath A UTF-8 encoded path to the XHTML file to validate. + * The path can be either absolute or relative to the + * current working directory. + * @return A vector of Results, sorted by internal file and then by line number. + */ +FC_WIN_DLL_API std::vector< Result > ValidateXhtml( const std::string &filepath ); + +/** + * Validates the provided CSS file of an epub. The resources linked from the file + * are expected to exist. NOTE: this function is currently a stub. It doesn't really + * do anything (yet). + * + * @param filepath A UTF-8 encoded path to the CSS file to validate. + * The path can be either absolute or relative to the + * current working directory. + * @return A vector of Results, sorted by internal file and then by line number. + */ +FC_WIN_DLL_API std::vector< Result > ValidateCss( const std::string &filepath ); + +} // namespace FlightCrew + +#endif // FLIGHTCREW_H diff --git a/src/FlightCrew/stdafx.cpp b/src/FlightCrew/stdafx.cpp new file mode 100644 index 0000000..8d20f40 --- /dev/null +++ b/src/FlightCrew/stdafx.cpp @@ -0,0 +1,24 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include "stdafx.h" + + diff --git a/src/FlightCrew/stdafx.h b/src/FlightCrew/stdafx.h new file mode 100644 index 0000000..9b9d848 --- /dev/null +++ b/src/FlightCrew/stdafx.h @@ -0,0 +1,73 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +// We set the MSVC warning level down to 3 +// for code that we have no control over +#if defined(_MSC_VER) +# pragma warning( push, 3 ) +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "Misc/BoostFilesystemUse.h" + + +// ... and then we reset the warning level +// back to normal (warning level 4) +#if defined(_MSC_VER) +# pragma warning( pop ) +#endif + +namespace XercesExt { struct QName; }; +namespace xe = XercesExt; + +using xe::QName; + +#include "constants.h" +#include "exception.h" +#include "Misc/CustomAssert.h" + +// We're most definitely not going to use +// it as BOOST_FOREACH. +#define foreach BOOST_FOREACH + +// We will be using these everywhere, +// so let's make life a bit easier. +using boost::tuple; +using boost::make_tuple; +using boost::tie; + +namespace xc = XERCES_CPP_NAMESPACE; + +typedef unsigned int uint; diff --git a/src/FlightCrew/tests/CMakeLists.txt b/src/FlightCrew/tests/CMakeLists.txt new file mode 100644 index 0000000..87d5d93 --- /dev/null +++ b/src/FlightCrew/tests/CMakeLists.txt @@ -0,0 +1,127 @@ +######################################################## +# +# This is a CMake configuration file. +# To use it you need CMake which can be +# downloaded from here: +# http://www.cmake.org/cmake/resources/software.html +# +######################################################### + +cmake_minimum_required( VERSION 2.8 ) + +project( fc_tests ) + +# Normally we wouldn't include the xml files in the SOURCES just +# to get nice source groups from the create_source_groups() macro, +# but a CMake bug is forcing us to do so. It refuses to work if we +# glob for xml files separately and then run create_source_groups() +# again... putting them in the SOURCES fixes this, and they're not +# doing any realy harm. CMake is smart enough to not forward them to the compiler. +file( GLOB_RECURSE TEST_SOURCES *.cpp *.xml ) + +# Creating source groups for VS, Xcode +include( ${CMAKE_SOURCE_DIR}/cmake_extras/FileSystemSourceGroups.cmake ) +create_source_groups( TEST_SOURCES ) + +############################################################################# + +set( PCH_NAME stdafx_tests ) + +# stdafx.cpp is compiled separately as a PCH +file( GLOB to_remove ${PCH_NAME}.cpp ) +list( REMOVE_ITEM TEST_SOURCES ${to_remove} ) + +############################################################################# + +# We need to pick up the stdafx.h file (current source dir), +# the stdafx.h.gch file (current binary dir) +# and the headers for the linked-to libraries + +# Include_directories is ADDITIVE on folder recursion! +# That means that subdirs inherit the include_directories of their parents. +# So techincally we don't need to include Xerces etc. +include_directories( ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ../../BoostParts + ../../Xerces + ../../XercesExtensions + ../../googlemock/include + ../../googlemock/gtest/include + ) + +link_directories ( ${PROJECT_BINARY_DIR}/lib ) + +############################################################################# + +# creating PCH's for MSVC and GCC on Linux +include( ${CMAKE_SOURCE_DIR}/cmake_extras/CustomPCH.cmake ) +set( ALL_INCLUDES ${gtest_SOURCE_DIR}/include ${BoostParts_SOURCE_DIR} ) + +set( GCC_PCH_TARGET gccPCH_tests ) + +precompiled_header( TEST_SOURCES ALL_INCLUDES ${GCC_PCH_TARGET} ${PCH_NAME} ) + +############################################################################# + +add_executable( ${PROJECT_NAME} ${TEST_SOURCES} ) + +target_link_libraries( ${PROJECT_NAME} FlightCrew gmock ) + +############################################################################# + +# Xcode PCH support. Has to come after the target is created. +if( APPLE ) + set_target_properties( + ${PROJECT_NAME} + PROPERTIES + XCODE_ATTRIBUTE_GCC_PREFIX_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/${PCH_NAME}.h" + XCODE_ATTRIBUTE_GCC_PRECOMPILE_PREFIX_HEADER "YES" + ) +endif() + +############################################################################# + +if( MSVC ) + add_definitions( /DUNICODE /D_UNICODE /W4 ) + + # This warning is present only at the highest warning level (/W4) + # and is routinely disabled because it complains about valid + # constructs like "while (true)" + add_definitions( /wd4127 ) + + # The /Zc:wchar_t- flag can't go into add_definitions + # because the RC compiler picks it up too and it provokes a name clash + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:wchar_t-") + set( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Oi /GL" ) + set( CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG" ) + +elseif( CMAKE_COMPILER_IS_GNUCXX ) + # Make sure the PCH is built for GCC + add_dependencies( ${PROJECT_NAME} ${GCC_PCH_TARGET} ) +endif() + +# needed for correct Xerces header inclusion +add_definitions( -DXERCES_STATIC_LIBRARY ) + +############################################################################# + +# The test executable expects a "test_data" dir in its working directory. +if ( NOT MSVC_IDE ) + add_custom_target( copy_test_data + COMMAND cmake -E copy_directory + ${CMAKE_CURRENT_SOURCE_DIR}/test_data + ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_data ) +else() + # MSVC_IDE creates the test executable in a Release or Debug subdir (depending + # on the build configuration) so we copy the data there in this case. + add_custom_target( copy_test_data + COMMAND cmake -E copy_directory + ${CMAKE_CURRENT_SOURCE_DIR}/test_data + ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Release/test_data + COMMAND cmake -E copy_directory + ${CMAKE_CURRENT_SOURCE_DIR}/test_data + ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Debug/test_data ) +endif() + +add_dependencies( ${PROJECT_NAME} copy_test_data ) + diff --git a/src/FlightCrew/tests/framework_tests/EpubValidates_test.cpp b/src/FlightCrew/tests/framework_tests/EpubValidates_test.cpp new file mode 100644 index 0000000..e56a7b6 --- /dev/null +++ b/src/FlightCrew/tests/framework_tests/EpubValidates_test.cpp @@ -0,0 +1,80 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "flightcrew.h" +#include "Result.h" + +using namespace FlightCrew; + +// This is basically a sanity check +TEST( EpubValidatesTest, MissingCreator ) +{ + std::vector results = ValidateEpub( + "test_data/framework_tests/EpubValidates_MissingTitle.epub" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ELEMENT_NOT_PRESENT ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "title" ); +} + +TEST( EpubValidatesTest, ResultsWithBasePath ) +{ + std::vector results = ValidateEpub( + "test_data/framework_tests/EpubValidates_MissingTitle.epub" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetFilepath(), "EpubValidates_MissingTitle.epub/OEBPS/content.opf" ); +} + +TEST( EpubValidatesTest, NotAZip ) +{ + std::vector results = ValidateEpub( + "test_data/framework_tests/EpubValidates_NotAZip.epub" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_EPUB_NOT_VALID_ZIP_ARCHIVE ); +} + +TEST( EpubValidatesTest, NoContainerXml ) +{ + std::vector results = ValidateEpub( + "test_data/framework_tests/EpubValidates_NoContainerXml.epub" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_EPUB_NO_CONTAINER_XML ); +} + +TEST( EpubValidatesTest, MissingXhtmlFiles ) +{ + ASSERT_NO_THROW( ValidateEpub( + "test_data/framework_tests/EpubValidates_MissingXhtmlFiles.epub" ) ); +} + +TEST( EpubValidatesTest, Valid ) +{ + std::vector results = ValidateEpub( + "test_data/framework_tests/EpubValidates_Valid.epub" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/FlightCrew/tests/misc_tests/ConvertUtf8PathToBoostPath_test.cpp b/src/FlightCrew/tests/misc_tests/ConvertUtf8PathToBoostPath_test.cpp new file mode 100644 index 0000000..927e740 --- /dev/null +++ b/src/FlightCrew/tests/misc_tests/ConvertUtf8PathToBoostPath_test.cpp @@ -0,0 +1,41 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Misc/Utilities.h" +#include "exception.h" + +using namespace FlightCrew; +using namespace FlightCrew::Util; + +TEST( ConvertUtf8PathToBoostPathTest, PathIsNotInUtf8 ) +{ + char utf8_path[] = "test_data/something/\xe6\x97\xa5\xd1\x88\xf0\x9d\x84"; + + ASSERT_THROW( Utf8PathToBoostPath( utf8_path ), PathNotInUtf8 ); +} + +TEST( ConvertUtf8PathToBoostPathTest, PathIsInUtf8 ) +{ + char utf8_path[] = "test_data/something/\xe6\x97\xa5\xd1\x88\xf0\x9d\x84\x9e"; + + ASSERT_NO_THROW( Utf8PathToBoostPath( utf8_path ) ); +} diff --git a/src/FlightCrew/tests/misc_tests/DetermineMimetype_test.cpp b/src/FlightCrew/tests/misc_tests/DetermineMimetype_test.cpp new file mode 100644 index 0000000..fb2fbfe --- /dev/null +++ b/src/FlightCrew/tests/misc_tests/DetermineMimetype_test.cpp @@ -0,0 +1,69 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Misc/DetermineMimetype.h" + +namespace FlightCrew +{ + +extern const std::string OEBPS_MIME; +extern const std::string XHTML_MIME; +extern const std::string NCX_MIME; +extern const std::string PNG_MIME; +extern const std::string GIF_MIME; +extern const std::string JPEG_MIME; +extern const std::string SVG_MIME; +extern const std::string DTBOOK_MIME; +extern const std::string CSS_MIME; +extern const std::string XML_MIME; +extern const std::string XPGT_MIME; +extern const std::string OTF_MIME; +extern const std::string TTF_MIME; +extern const std::string OEB_DOC_MIME; +extern const std::string OEB_CSS_MIME; + +extern const std::string UNKNOWN_MIME; + +} + +using namespace FlightCrew; + +TEST( DetermineMimetypeTest, ExtensionChecks ) +{ + EXPECT_EQ( DetermineMimetype( "test.xhtml" ), XHTML_MIME ); + EXPECT_EQ( DetermineMimetype( "test.html" ), XHTML_MIME ); + EXPECT_EQ( DetermineMimetype( "test.htm" ), XHTML_MIME ); + EXPECT_EQ( DetermineMimetype( "test.png" ), PNG_MIME ); + EXPECT_EQ( DetermineMimetype( "test.gif" ), GIF_MIME ); + EXPECT_EQ( DetermineMimetype( "test.jpg" ), JPEG_MIME ); + EXPECT_EQ( DetermineMimetype( "test.jpeg" ), JPEG_MIME ); + EXPECT_EQ( DetermineMimetype( "test.css" ), CSS_MIME ); + EXPECT_EQ( DetermineMimetype( "test.ncx" ), NCX_MIME ); + EXPECT_EQ( DetermineMimetype( "test.svg" ), SVG_MIME ); + EXPECT_EQ( DetermineMimetype( "test.otf" ), OTF_MIME ); + EXPECT_EQ( DetermineMimetype( "test.ttf" ), TTF_MIME ); +} + +TEST( DetermineMimetypeTest, ContentChecks ) +{ + // TODO +} diff --git a/src/FlightCrew/tests/misc_tests/NormalizePath_test.cpp b/src/FlightCrew/tests/misc_tests/NormalizePath_test.cpp new file mode 100644 index 0000000..e3b67c6 --- /dev/null +++ b/src/FlightCrew/tests/misc_tests/NormalizePath_test.cpp @@ -0,0 +1,37 @@ +/************************************************************************ +** +** Copyright (C) 2011 John Schember +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Misc/Utilities.h" +#include "exception.h" + +using namespace FlightCrew; +using namespace FlightCrew::Util; + +TEST( NormalizePath, PathIsCorrect ) +{ + ASSERT_EQ( NormalizePath( "/var/folders/l3/image.html" ), Utf8PathToBoostPath( "/var/folders/l3/image.html" ) ); + ASSERT_EQ( NormalizePath( "/var/folders/T/image.html" ), Utf8PathToBoostPath( "/var/folders/T/image.html" ) ); + ASSERT_EQ( NormalizePath( "/var/folders/./image.html" ), Utf8PathToBoostPath( "/var/folders/image.html" ) ); + ASSERT_EQ( NormalizePath( "/var/folders/../image.html" ), Utf8PathToBoostPath( "/var/image.html" ) ); + ASSERT_EQ( NormalizePath( "/var/folders/../test/123/456/789/../.././abc/image.html" ), Utf8PathToBoostPath( "/var/test/123/abc/image.html" ) ); + ASSERT_EQ( NormalizePath( "/var/folders/l3/_x3zf0jn3pz22r7_ktjtt0hw0000gn/T/Sigil/./scratchpad/2230a344-5ccb-42fa-99ab-29135345e11f/../../OEBPS/Text/../Images/ie5e3bpitabqoeb.png" ), Utf8PathToBoostPath( "/var/folders/l3/_x3zf0jn3pz22r7_ktjtt0hw0000gn/T/Sigil/OEBPS/Images/ie5e3bpitabqoeb.png" ) ); +} diff --git a/src/FlightCrew/tests/ncx_tests/ContentTargetsPresent_test.cpp b/src/FlightCrew/tests/ncx_tests/ContentTargetsPresent_test.cpp new file mode 100644 index 0000000..2ab2fcb --- /dev/null +++ b/src/FlightCrew/tests/ncx_tests/ContentTargetsPresent_test.cpp @@ -0,0 +1,58 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Ncx/ContentTargetsPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ContentTargetsPresentTest, NotPresent ) +{ + ContentTargetsPresent validator; + std::vector results = validator.ValidateFile( + "test_data/ncx_tests/ContentTargetsPresent_NotPresent/toc.ncx" ); + + EXPECT_EQ( results.size(), 2U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_NCX_CONTENT_FILE_DOES_NOT_EXIST ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 9 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 36 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "test1.xhtml" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_NCX_CONTENT_FRAGMENT_DOES_NOT_EXIST ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 15 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 43 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "test2.xhtml#break1" ); +} + +TEST( ContentTargetsPresentTest, AllPresent ) +{ + ContentTargetsPresent validator; + std::vector results = validator.ValidateFile( + "test_data/ncx_tests/ContentTargetsPresent_AllPresent/toc.ncx" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/ncx_tests/NcxSatisfiesSchema_test.cpp b/src/FlightCrew/tests/ncx_tests/NcxSatisfiesSchema_test.cpp new file mode 100644 index 0000000..a0b6cbe --- /dev/null +++ b/src/FlightCrew/tests/ncx_tests/NcxSatisfiesSchema_test.cpp @@ -0,0 +1,56 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Ncx/NcxSatisfiesSchema.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( NcxSatisfiesSchemaTest, DoesntSatisfySchema ) +{ + NcxSatisfiesSchema validator; + std::vector results = validator.ValidateFile( + "test_data/ncx_tests/NcxSatisfiesSchema_DoesntSatisfySchema.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_SCHEMA_NOT_SATISFIED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 81 ); +} + +TEST( NcxSatisfiesSchemaTest, SatisfiesSchemaOpf201 ) +{ + NcxSatisfiesSchema validator; + std::vector results = validator.ValidateFile( + "test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchemaOpf201.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + +TEST( NcxSatisfiesSchemaTest, SatisfiesSchema ) +{ + NcxSatisfiesSchema validator; + std::vector results = validator.ValidateFile( + "test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchema.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/FlightCrew/tests/ocf_tests/ContainerListedOpfPresent_test.cpp b/src/FlightCrew/tests/ocf_tests/ContainerListedOpfPresent_test.cpp new file mode 100644 index 0000000..3c65604 --- /dev/null +++ b/src/FlightCrew/tests/ocf_tests/ContainerListedOpfPresent_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Ocf/ContainerListedOpfPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ContainerListedOpfPresentTest, DoesntHaveOpf ) +{ + ContainerListedOpfPresent validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/ContainerListedOpfPresent_DoesntHaveOpf/META-INF/container.xml" ); + + EXPECT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OCF_CONTAINER_SPECIFIED_OPF_DOESNT_EXIST ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 89 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "OEBPS/breakme.opf" ); +} + +TEST( ContainerListedOpfPresentTest, HasOpf ) +{ + ContainerListedOpfPresent validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/ContainerListedOpfPresent_HasOpf/META-INF/container.xml" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/ocf_tests/ContainerListsOpf_test.cpp b/src/FlightCrew/tests/ocf_tests/ContainerListsOpf_test.cpp new file mode 100644 index 0000000..4d39734 --- /dev/null +++ b/src/FlightCrew/tests/ocf_tests/ContainerListsOpf_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Ocf/ContainerListsOpf.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ContainerListsOpfTest, DoesntListOpf ) +{ + ContainerListsOpf validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/ContainerListsOpf_DoesntListOpf.xml" ); + + EXPECT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OCF_CONTAINER_DOESNT_LIST_OPF ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 16 ); +} + +TEST( ContainerListsOpfTest, ListsOpf ) +{ + ContainerListsOpf validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/ContainerListsOpf_ListsOpf.xml" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/ocf_tests/ContainerSatisfiesSchema_test.cpp b/src/FlightCrew/tests/ocf_tests/ContainerSatisfiesSchema_test.cpp new file mode 100644 index 0000000..31613c5 --- /dev/null +++ b/src/FlightCrew/tests/ocf_tests/ContainerSatisfiesSchema_test.cpp @@ -0,0 +1,47 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Ocf/ContainerSatisfiesSchema.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ContainerSatisfiesSchemaTest, DoesntSatisfySchema ) +{ + ContainerSatisfiesSchema validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/ContainerSatisfiesSchema_DoesntSatisfySchema.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_SCHEMA_NOT_SATISFIED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 58 ); +} + +TEST( ContainerSatisfiesSchemaTest, SatisfiesSchema ) +{ + ContainerSatisfiesSchema validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/ContainerSatisfiesSchema_SatisfiesSchema.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/FlightCrew/tests/ocf_tests/EncryptionSatisfiesSchema_test.cpp b/src/FlightCrew/tests/ocf_tests/EncryptionSatisfiesSchema_test.cpp new file mode 100644 index 0000000..1f5a334 --- /dev/null +++ b/src/FlightCrew/tests/ocf_tests/EncryptionSatisfiesSchema_test.cpp @@ -0,0 +1,47 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Ocf/EncryptionSatisfiesSchema.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( EncryptionSatisfiesSchemaTest, DoesntSatisfySchema ) +{ + EncryptionSatisfiesSchema validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/EncryptionSatisfiesSchema_DoesntSatisfySchema.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_SCHEMA_NOT_SATISFIED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 104 ); +} + +TEST( EncryptionSatisfiesSchemaTest, SatisfiesSchema ) +{ + EncryptionSatisfiesSchema validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/EncryptionSatisfiesSchema_SatisfiesSchema.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/FlightCrew/tests/ocf_tests/MimetypeBytesValid_test.cpp b/src/FlightCrew/tests/ocf_tests/MimetypeBytesValid_test.cpp new file mode 100644 index 0000000..c1f9334 --- /dev/null +++ b/src/FlightCrew/tests/ocf_tests/MimetypeBytesValid_test.cpp @@ -0,0 +1,46 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Ocf/MimetypeBytesValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( MimetypeBytesValidTest, BytesInvalid ) +{ + MimetypeBytesValid validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/MimetypeBytesValidTest_BytesInvalid.epub" ); + + EXPECT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_EPUB_MIMETYPE_BYTES_INVALID ); +} + +TEST( MimetypeBytesValidTest, BytesValid ) +{ + MimetypeBytesValid validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/MimetypeBytesValidTest_BytesValid.epub" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/ocf_tests/SignaturesSatisfiesSchema_test.cpp b/src/FlightCrew/tests/ocf_tests/SignaturesSatisfiesSchema_test.cpp new file mode 100644 index 0000000..6027a96 --- /dev/null +++ b/src/FlightCrew/tests/ocf_tests/SignaturesSatisfiesSchema_test.cpp @@ -0,0 +1,47 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Ocf/SignaturesSatisfiesSchema.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( SignaturesSatisfiesSchemaTest, DoesntSatisfySchema ) +{ + SignaturesSatisfiesSchema validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/SignaturesSatisfiesSchema_DoesntSatisfySchema.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_SCHEMA_NOT_SATISFIED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 27 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 31 ); +} + +TEST( SignaturesSatisfiesSchemaTest, SatisfiesSchema ) +{ + SignaturesSatisfiesSchema validator; + std::vector results = validator.ValidateFile( + "test_data/ocf_tests/SignaturesSatisfiesSchema_SatisfiesSchema.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/FlightCrew/tests/opf_tests/ContributorAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/ContributorAttributesPresent_test.cpp new file mode 100644 index 0000000..a203a5a --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ContributorAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ContributorAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ContributorAttributesPresentTest, NotAllowedAttributes ) +{ + ContributorAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ContributorAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 106 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "contributor" ); +} + +TEST( ContributorAttributesPresentTest, AllowedAttributes ) +{ + ContributorAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ContributorAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/CoverageAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/CoverageAttributesPresent_test.cpp new file mode 100644 index 0000000..39afca9 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/CoverageAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/CoverageAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( CoverageAttributesPresentTest, NotAllowedAttributes ) +{ + CoverageAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/CoverageAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 68 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "coverage" ); +} + +TEST( CoverageAttributesPresentTest, AllowedAttributes ) +{ + CoverageAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/CoverageAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/CreatorAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/CreatorAttributesPresent_test.cpp new file mode 100644 index 0000000..828484e --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/CreatorAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/CreatorAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( CreatorAttributesPresentTest, NotAllowedAttributes ) +{ + CreatorAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/CreatorAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 102 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "creator" ); +} + +TEST( CreatorAttributesPresentTest, AllowedAttributes ) +{ + CreatorAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/CreatorAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/CreatorOrContributorRoleValid_test.cpp b/src/FlightCrew/tests/opf_tests/CreatorOrContributorRoleValid_test.cpp new file mode 100644 index 0000000..fd2c2c4 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/CreatorOrContributorRoleValid_test.cpp @@ -0,0 +1,58 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/CreatorOrContributorRoleValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( CreatorOrContributorRoleValidTest, BadValue ) +{ + CreatorOrContributorRoleValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/CreatorOrContributorRoleValid_BadValue.xml" ); + + ASSERT_EQ( results.size(), 2U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_BAD_CREATOR_OR_CONTRIBUTOR_ROLE_VALUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 38 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "XXX" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_OPF_BAD_CREATOR_OR_CONTRIBUTOR_ROLE_VALUE ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 42 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "YYY" ); +} + +TEST( CreatorOrContributorRoleValidTest, GoodValue ) +{ + CreatorOrContributorRoleValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/CreatorOrContributorRoleValid_GoodValue.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/DCMetadataAllowedChildren_test.cpp b/src/FlightCrew/tests/opf_tests/DCMetadataAllowedChildren_test.cpp new file mode 100644 index 0000000..1929787 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/DCMetadataAllowedChildren_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/DCMetadataAllowedChildren.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( DCMetadataAllowedChildrenTest, WrongChildren ) +{ + DCMetadataAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DCMetadataAllowedChildren_WrongChildren.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 23 ); +} + +TEST( DCMetadataAllowedChildrenTest, ChildrenOK ) +{ + DCMetadataAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DCMetadataAllowedChildren_ChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/DCMetadataAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/DCMetadataAttributesPresent_test.cpp new file mode 100644 index 0000000..631e87d --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/DCMetadataAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/DCMetadataAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( DCMetadataAttributesPresentTest, NotAllowedAttributes ) +{ + DCMetadataAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DCMetadataAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 46 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "dc-metadata" ); +} + +TEST( DCMetadataAttributesPresentTest, AllowedAttributes ) +{ + DCMetadataAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DCMetadataAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/DateAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/DateAttributesPresent_test.cpp new file mode 100644 index 0000000..a98ed5b --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/DateAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/DateAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( DateAttributesPresentTest, NotAllowedAttributes ) +{ + DateAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DateAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 65 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "date" ); +} + +TEST( DateAttributesPresentTest, AllowedAttributes ) +{ + DateAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DateAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/DateValid_test.cpp b/src/FlightCrew/tests/opf_tests/DateValid_test.cpp new file mode 100644 index 0000000..16bcc01 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/DateValid_test.cpp @@ -0,0 +1,100 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/DateValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( DateValidTest, BadValue ) +{ + DateValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DateValid_BadValue.xml" ); + + ASSERT_EQ( results.size(), 8U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_BAD_DATE_VALUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 18 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "19997" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_OPF_BAD_DATE_VALUE ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 18 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "197" ); + + EXPECT_EQ( results[ 2 ].GetResultId(), ERROR_OPF_BAD_DATE_VALUE ); + EXPECT_EQ( results[ 2 ].GetErrorLine(), 6 ); + EXPECT_EQ( results[ 2 ].GetErrorColumn(), 18 ); + + message_arguments = results[ 2 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "1997-007" ); + + EXPECT_EQ( results[ 3 ].GetResultId(), ERROR_OPF_BAD_DATE_VALUE ); + EXPECT_EQ( results[ 3 ].GetErrorLine(), 7 ); + EXPECT_EQ( results[ 3 ].GetErrorColumn(), 18 ); + + message_arguments = results[ 3 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "19970716" ); + + EXPECT_EQ( results[ 4 ].GetResultId(), ERROR_OPF_BAD_DATE_VALUE ); + EXPECT_EQ( results[ 4 ].GetErrorLine(), 8 ); + EXPECT_EQ( results[ 4 ].GetErrorColumn(), 18 ); + + message_arguments = results[ 4 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "1997-07-16T19-20+01:00" ); + + EXPECT_EQ( results[ 5 ].GetResultId(), ERROR_OPF_BAD_DATE_VALUE ); + EXPECT_EQ( results[ 5 ].GetErrorLine(), 9 ); + EXPECT_EQ( results[ 5 ].GetErrorColumn(), 18 ); + + message_arguments = results[ 5 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "1997-07-1619:20-01:00" ); + + EXPECT_EQ( results[ 6 ].GetResultId(), ERROR_OPF_BAD_DATE_VALUE ); + EXPECT_EQ( results[ 6 ].GetErrorLine(), 10 ); + EXPECT_EQ( results[ 6 ].GetErrorColumn(), 18 ); + + message_arguments = results[ 6 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "1997-07-16T19:2001:00" ); + + EXPECT_EQ( results[ 7 ].GetResultId(), ERROR_OPF_BAD_DATE_VALUE ); + EXPECT_EQ( results[ 7 ].GetErrorLine(), 11 ); + EXPECT_EQ( results[ 7 ].GetErrorColumn(), 18 ); + + message_arguments = results[ 7 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "1997-07-16T19:20:30,45+01:00" ); +} + +TEST( DateValidTest, GoodValue ) +{ + DateValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DateValid_GoodValue.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/DescriptionAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/DescriptionAttributesPresent_test.cpp new file mode 100644 index 0000000..08021b9 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/DescriptionAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/DescriptionAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( DescriptionAttributesPresentTest, NotAllowedAttributes ) +{ + DescriptionAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DescriptionAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 71 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "description" ); +} + +TEST( DescriptionAttributesPresentTest, AllowedAttributes ) +{ + DescriptionAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/DescriptionAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/FormatAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/FormatAttributesPresent_test.cpp new file mode 100644 index 0000000..ce9464e --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/FormatAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/FormatAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( FormatAttributesPresentTest, NotAllowedAttributes ) +{ + FormatAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/FormatAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 50 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "format" ); +} + +TEST( FormatAttributesPresentTest, AllowedAttributes ) +{ + FormatAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/FormatAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/GuideAllowedChildren_test.cpp b/src/FlightCrew/tests/opf_tests/GuideAllowedChildren_test.cpp new file mode 100644 index 0000000..6e8e617 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/GuideAllowedChildren_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/GuideAllowedChildren.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( GuideAllowedChildrenTest, WrongChildren ) +{ + GuideAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/GuideAllowedChildren_WrongChildren.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 19 ); +} + +TEST( GuideAllowedChildrenTest, ChildrenOK ) +{ + GuideAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/GuideAllowedChildren_ChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/GuideAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/GuideAttributesPresent_test.cpp new file mode 100644 index 0000000..b456f40 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/GuideAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/GuideAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( GuideAttributesPresentTest, NotAllowedAttributes ) +{ + GuideAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/GuideAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 40 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "guide" ); +} + +TEST( GuideAttributesPresentTest, AllowedAttributes ) +{ + GuideAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/GuideAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/IdentifierAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/IdentifierAttributesPresent_test.cpp new file mode 100644 index 0000000..8dfaac2 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/IdentifierAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/IdentifierAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( IdentifierAttributesPresentTest, NotAllowedAttributes ) +{ + IdentifierAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/IdentifierAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 71 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "identifier" ); +} + +TEST( IdentifierAttributesPresentTest, AllowedAttributes ) +{ + IdentifierAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/IdentifierAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/IdentifierPresent_test.cpp b/src/FlightCrew/tests/opf_tests/IdentifierPresent_test.cpp new file mode 100644 index 0000000..2102639 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/IdentifierPresent_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/IdentifierPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( IdentifierPresentTest, NoIdentifier ) +{ + IdentifierPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/IdentifierPresent_NoIdentifier.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ELEMENT_NOT_PRESENT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 98 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "identifier" ); +} + +TEST( IdentifierPresentTest, HasIdentifier ) +{ + IdentifierPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/IdentifierPresent_HasIdentifier.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/IdsUnique_test.cpp b/src/FlightCrew/tests/opf_tests/IdsUnique_test.cpp new file mode 100644 index 0000000..a39e883 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/IdsUnique_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/IdsUnique.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( IdsUniqueTest, AllNotUnique ) +{ + IdsUnique validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/IdsUnique_AllNotUnique.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ID_NOT_UNIQUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 6 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 26 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "one" ); +} + +TEST( IdsUniqueTest, AllUnique ) +{ + IdsUnique validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/IdsUnique_AllUnique.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/IdsValid_test.cpp b/src/FlightCrew/tests/opf_tests/IdsValid_test.cpp new file mode 100644 index 0000000..0ec1c62 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/IdsValid_test.cpp @@ -0,0 +1,72 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/IdsValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( IdsValidTest, BadValue ) +{ + IdsValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/IdsValid_BadValue.xml" ); + + ASSERT_EQ( results.size(), 4U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_BAD_ID_VALUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 31 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "1aaa" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_XML_BAD_ID_VALUE ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 31 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], ":a932541" ); + + EXPECT_EQ( results[ 2 ].GetResultId(), ERROR_XML_BAD_ID_VALUE ); + EXPECT_EQ( results[ 2 ].GetErrorLine(), 6 ); + EXPECT_EQ( results[ 2 ].GetErrorColumn(), 31 ); + + message_arguments = results[ 2 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "-aa-aa" ); + + EXPECT_EQ( results[ 3 ].GetResultId(), ERROR_XML_BAD_ID_VALUE ); + EXPECT_EQ( results[ 3 ].GetErrorLine(), 7 ); + EXPECT_EQ( results[ 3 ].GetErrorColumn(), 31 ); + + message_arguments = results[ 3 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], ".aa.aa" ); +} + +TEST( IdsValidTest, GoodValue ) +{ + IdsValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/IdsValid_GoodValue.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/ItemAttributesPresent_test.cpp new file mode 100644 index 0000000..fa94378 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemAttributesPresent_test.cpp @@ -0,0 +1,84 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemAttributesPresentTest, NotAllowedAttributes ) +{ + ItemAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 161 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "item" ); +} + +TEST( ItemAttributesPresentTest, MissingAttributes ) +{ + ItemAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemAttributesPresent_MissingAttributes.xml" ); + + ASSERT_EQ( results.size(), 3U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 104 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "id" ); + EXPECT_EQ( message_arguments[ 1 ], "item" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 104 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "href" ); + EXPECT_EQ( message_arguments[ 1 ], "item" ); + + EXPECT_EQ( results[ 2 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 2 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 2 ].GetErrorColumn(), 104 ); + + message_arguments = results[ 2 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "media-type" ); + EXPECT_EQ( message_arguments[ 1 ], "item" ); +} + +TEST( ItemAttributesPresentTest, AllowedAttributes ) +{ + ItemAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemFilesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/ItemFilesPresent_test.cpp new file mode 100644 index 0000000..c898bd6 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemFilesPresent_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemFilesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemFilesPresentTest, FilesMissing ) +{ + ItemFilesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemFilesPresent_FilesMissing/content.opf" ); + + EXPECT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_ITEM_FILE_DOESNT_EXIST ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 77 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "test2.xhtml" ); +} + +TEST( ItemFilesPresentTest, AllFilesPresent ) +{ + ItemFilesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemFilesPresent_AllFilesPresent/content.opf" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemHrefUnique_test.cpp b/src/FlightCrew/tests/opf_tests/ItemHrefUnique_test.cpp new file mode 100644 index 0000000..c760e4a --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemHrefUnique_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemHrefUnique.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemHrefUniqueTest, HrefsNotUnique ) +{ + ItemHrefUnique validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemHrefUnique_HrefsNotUnique.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_ITEM_HREF_NOT_UNIQUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 6 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 26 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "a" ); +} + +TEST( ItemHrefUniqueTest, HrefsUnique ) +{ + ItemHrefUnique validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemHrefUnique_HrefsUnique.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemHrefValid_test.cpp b/src/FlightCrew/tests/opf_tests/ItemHrefValid_test.cpp new file mode 100644 index 0000000..22108ff --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemHrefValid_test.cpp @@ -0,0 +1,72 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemHrefValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemHrefValidTest, InvalidURI ) +{ + ItemHrefValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemHrefValid_BadValue.xml" ); + + ASSERT_EQ( results.size(), 4U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_ITEM_HREF_INVALID_URI ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 31 ); + + // Encoding the message for the first example is a bit problematic. + // The other examples will make sure to test that message arguments are set. + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_OPF_ITEM_HREF_INVALID_URI ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 28 ); + + std::vector< std::string > message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "a a" ); + + EXPECT_EQ( results[ 2 ].GetResultId(), ERROR_OPF_ITEM_HREF_INVALID_URI ); + EXPECT_EQ( results[ 2 ].GetErrorLine(), 6 ); + EXPECT_EQ( results[ 2 ].GetErrorColumn(), 61 ); + + message_arguments = results[ 2 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "file://hostname/path/to/the file.txt" ); + + EXPECT_EQ( results[ 3 ].GetResultId(), ERROR_OPF_ITEM_HREF_HAS_FRAGMENT ); + EXPECT_EQ( results[ 3 ].GetErrorLine(), 7 ); + EXPECT_EQ( results[ 3 ].GetErrorColumn(), 54 ); + + message_arguments = results[ 3 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "http://www.example.com/#ident" ); +} + +TEST( ItemHrefValidTest, GoodValue ) +{ + ItemHrefValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemHrefValid_GoodValue.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemLinearValid_test.cpp b/src/FlightCrew/tests/opf_tests/ItemLinearValid_test.cpp new file mode 100644 index 0000000..a77a065 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemLinearValid_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemLinearValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemLinearValidTest, BadValue ) +{ + ItemLinearValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemLinearValid_BadValue.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_BAD_ITEM_LINEAR_VALUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 6 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 32 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "break" ); +} + +TEST( ItemLinearValidTest, GoodValue ) +{ + ItemLinearValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemLinearValid_GoodValue.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemMediaTypeValid_test.cpp b/src/FlightCrew/tests/opf_tests/ItemMediaTypeValid_test.cpp new file mode 100644 index 0000000..3d579fb --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemMediaTypeValid_test.cpp @@ -0,0 +1,68 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemMediaTypeValid.h" +#include "Result.h" + +namespace FlightCrew +{ + +extern const std::string XHTML_MIME; +extern const std::string OTF_MIME; + +} + +using namespace FlightCrew; + +TEST( ItemMediaTypeValidTest, BadValue ) +{ + ItemMediaTypeValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemMediaTypeValid_BadValue.xml" ); + + EXPECT_EQ( results.size(), 2U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_BAD_ITEM_MEDIA_TYPE_VALUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 9 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 86 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "break1" ); + EXPECT_EQ( message_arguments[ 1 ], XHTML_MIME ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_OPF_BAD_ITEM_MEDIA_TYPE_VALUE ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 14 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 87 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "break2" ); + EXPECT_EQ( message_arguments[ 1 ], OTF_MIME ); +} + +TEST( ItemMediaTypeValidTest, GoodValue ) +{ + ItemMediaTypeValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemMediaTypeValid_GoodValue.xml" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemPresent_test.cpp b/src/FlightCrew/tests/opf_tests/ItemPresent_test.cpp new file mode 100644 index 0000000..a3ffcdd --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemPresent_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemPresentTest, NoItem ) +{ + ItemPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemPresent_NoItem.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ELEMENT_NOT_PRESENT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 15 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "item" ); +} + +TEST( ItemPresentTest, HasItem ) +{ + ItemPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemPresent_HasItem.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemReqModsOnlyWithReqNS_test.cpp b/src/FlightCrew/tests/opf_tests/ItemReqModsOnlyWithReqNS_test.cpp new file mode 100644 index 0000000..44aade6 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemReqModsOnlyWithReqNS_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemReqModsOnlyWithReqNS.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemReqModsOnlyWithReqNSTest, RequiredNamespaceNotPresent ) +{ + ItemReqModsOnlyWithReqNS validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespaceNotPresent.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_ITEM_REQMOD_WITHOUT_REQNS ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 40 ); +} + +TEST( ItemReqModsOnlyWithReqNSTest, RequiredNamespacePresent ) +{ + ItemReqModsOnlyWithReqNS validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespacePresent.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemrefAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/ItemrefAttributesPresent_test.cpp new file mode 100644 index 0000000..adb2b0e --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemrefAttributesPresent_test.cpp @@ -0,0 +1,68 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemrefAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemrefAttributesPresentTest, NotAllowedAttributes ) +{ + ItemrefAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemrefAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 73 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "itemref" ); +} + +TEST( ItemrefAttributesPresentTest, MissingAttributes ) +{ + ItemrefAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemrefAttributesPresent_MissingAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 44 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "idref" ); + EXPECT_EQ( message_arguments[ 1 ], "itemref" ); +} + +TEST( ItemrefAttributesPresentTest, AllowedAttributes ) +{ + ItemrefAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemrefAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemrefIdrefUnique_test.cpp b/src/FlightCrew/tests/opf_tests/ItemrefIdrefUnique_test.cpp new file mode 100644 index 0000000..50f78d8 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemrefIdrefUnique_test.cpp @@ -0,0 +1,58 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemrefIdrefUnique.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemrefIdrefUniqueTest, AllNotUnique ) +{ + ItemrefIdrefUnique validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemrefIdrefUnique_AllNotUnique.xml" ); + + EXPECT_EQ( results.size(), 2U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_IDREF_NOT_UNIQUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 17 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 34 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "chapter-13" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_OPF_IDREF_NOT_UNIQUE ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 22 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 34 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "chapter-17" ); +} + +TEST( ItemrefIdrefUniqueTest, AllUnique ) +{ + ItemrefIdrefUnique validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemrefIdrefUnique_AllUnique.xml" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemrefIdrefValid_test.cpp b/src/FlightCrew/tests/opf_tests/ItemrefIdrefValid_test.cpp new file mode 100644 index 0000000..3ff923b --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemrefIdrefValid_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemrefIdrefValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemrefIdrefValidTest, IdDoesNotExist ) +{ + ItemrefIdrefValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemrefIdrefValid_IdDoesNotExist.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_IDREF_ID_DOES_NOT_EXIST ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 7 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 33 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "test" ); +} + +TEST( ItemrefIdrefValidTest, IdExists ) +{ + ItemrefIdrefValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemrefIdrefValid_IdExists.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ItemrefPresent_test.cpp b/src/FlightCrew/tests/opf_tests/ItemrefPresent_test.cpp new file mode 100644 index 0000000..991ccdc --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ItemrefPresent_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ItemrefPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ItemrefPresentTest, NoItemref ) +{ + ItemrefPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemrefPresent_NoItemref.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ELEMENT_NOT_PRESENT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 12 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "itemref" ); +} + +TEST( ItemrefPresentTest, HasItemref ) +{ + ItemrefPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ItemrefPresent_HasItemref.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/LanguagePresent_test.cpp b/src/FlightCrew/tests/opf_tests/LanguagePresent_test.cpp new file mode 100644 index 0000000..050f563 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/LanguagePresent_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/LanguagePresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( LanguagePresentTest, NoLanguage ) +{ + LanguagePresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/LanguagePresent_NoLanguage.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ELEMENT_NOT_PRESENT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 98 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "language" ); +} + +TEST( LanguagePresentTest, HasLanguage ) +{ + LanguagePresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/LanguagePresent_HasLanguage.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ManifestAllowedChildren_test.cpp b/src/FlightCrew/tests/opf_tests/ManifestAllowedChildren_test.cpp new file mode 100644 index 0000000..d0f82b9 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ManifestAllowedChildren_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ManifestAllowedChildren.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ManifestAllowedChildrenTest, WrongChildren ) +{ + ManifestAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ManifestAllowedChildren_WrongChildren.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 18 ); +} + +TEST( ManifestAllowedChildrenTest, ChildrenOK ) +{ + ManifestAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ManifestAllowedChildren_ChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ManifestAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/ManifestAttributesPresent_test.cpp new file mode 100644 index 0000000..f8143c1 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ManifestAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ManifestAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ManifestAttributesPresentTest, NotAllowedAttributes ) +{ + ManifestAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ManifestAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 45 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "manifest" ); +} + +TEST( ManifestAttributesPresentTest, AllowedAttributes ) +{ + ManifestAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ManifestAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/MetaAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/MetaAttributesPresent_test.cpp new file mode 100644 index 0000000..6ed1581 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/MetaAttributesPresent_test.cpp @@ -0,0 +1,76 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/MetaAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( MetaAttributesPresentTest, NotAllowedAttributes ) +{ + MetaAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/MetaAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 102 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "meta" ); +} + +TEST( MetaAttributesPresentTest, MissingAttributes ) +{ + MetaAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/MetaAttributesPresent_MissingAttributes.xml" ); + + ASSERT_EQ( results.size(), 2U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 59 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "name" ); + EXPECT_EQ( message_arguments[ 1 ], "meta" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 59 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "content" ); + EXPECT_EQ( message_arguments[ 1 ], "meta" ); +} + +TEST( MetaAttributesPresentTest, AllowedAttributes ) +{ + MetaAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/MetaAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/MetadataAllowedChildren_test.cpp b/src/FlightCrew/tests/opf_tests/MetadataAllowedChildren_test.cpp new file mode 100644 index 0000000..8bc8d73 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/MetadataAllowedChildren_test.cpp @@ -0,0 +1,69 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/MetadataAllowedChildren.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( MetadataAllowedChildrenTest, StdChildrenWrong ) +{ + MetadataAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/MetadataAllowedChildren_StdChildrenWrong.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 19 ); +} + +TEST( MetadataAllowedChildrenTest, StdChildrenOK ) +{ + MetadataAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/MetadataAllowedChildren_StdChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + +TEST( MetadataAllowedChildrenTest, DCXChildrenWrong ) +{ + MetadataAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/MetadataAllowedChildren_DCXChildrenWrong.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 16 ); +} + +TEST( MetadataAllowedChildrenTest, DCXChildrenOK ) +{ + MetadataAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/MetadataAllowedChildren_DCXChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/MetadataAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/MetadataAttributesPresent_test.cpp new file mode 100644 index 0000000..f33c440 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/MetadataAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/MetadataAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( MetadataAttributesPresentTest, NotAllowedAttributes ) +{ + MetadataAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/MetadataAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 43 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments[ 1 ], "metadata" ); +} + +TEST( MetadataAttributesPresentTest, AllowedAttributes ) +{ + MetadataAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/MetadataAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/NcxPresent_test.cpp b/src/FlightCrew/tests/opf_tests/NcxPresent_test.cpp new file mode 100644 index 0000000..801c4b7 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/NcxPresent_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/NcxPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( NcxPresentTest, NoNcx ) +{ + NcxPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/NcxPresent_NoNcx.xml" ); + + EXPECT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_NCX_NOT_PRESENT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 15 ); +} + +TEST( NcxPresentTest, HasNcx ) +{ + NcxPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/NcxPresent_HasNcx.xml" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/OneManifest_test.cpp b/src/FlightCrew/tests/opf_tests/OneManifest_test.cpp new file mode 100644 index 0000000..f6d9211 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/OneManifest_test.cpp @@ -0,0 +1,66 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/OneManifest.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( OneManifestTest, NoManifest_Error ) +{ + OneManifest validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/OneManifest_NoManifest.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_WRONG_ELEMENT_COUNT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 2 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 88 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "manifest" ); +} + +TEST( OneManifestTest, TwoManifests_Error ) +{ + OneManifest validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/OneManifest_TwoManifests.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_WRONG_ELEMENT_COUNT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 11 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "manifest" ); +} + +TEST( OneManifestTest, OneManifest_OK ) +{ + OneManifest validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/OneManifest_OneManifest.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/OneMetadata_test.cpp b/src/FlightCrew/tests/opf_tests/OneMetadata_test.cpp new file mode 100644 index 0000000..958e5fc --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/OneMetadata_test.cpp @@ -0,0 +1,66 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/OneMetadata.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( OneMetadataTest, NoMetadata_Error ) +{ + OneMetadata validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/OneMetadata_NoMetadata.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_WRONG_ELEMENT_COUNT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 2 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 88 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "metadata" ); +} + +TEST( OneMetadataTest, TwoMetadatas_Error ) +{ + OneMetadata validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/OneMetadata_TwoMetadatas.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_WRONG_ELEMENT_COUNT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 11 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "metadata" ); +} + +TEST( OneMetadataTest, OneMetadata_OK ) +{ + OneMetadata validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/OneMetadata_OneMetadata.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/OneSpine_test.cpp b/src/FlightCrew/tests/opf_tests/OneSpine_test.cpp new file mode 100644 index 0000000..01a3150 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/OneSpine_test.cpp @@ -0,0 +1,66 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/OneSpine.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( OneSpineTest, NoSpine_Error ) +{ + OneSpine validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/OneSpine_NoSpine.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_WRONG_ELEMENT_COUNT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 2 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 88 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "spine" ); +} + +TEST( OneSpineTest, TwoSpines_Error ) +{ + OneSpine validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/OneSpine_TwoSpines.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_WRONG_ELEMENT_COUNT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 8 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "spine" ); +} + +TEST( OneSpineTest, OneSpine_OK ) +{ + OneSpine validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/OneSpine_OneSpine.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/PackageAllowedChildren_test.cpp b/src/FlightCrew/tests/opf_tests/PackageAllowedChildren_test.cpp new file mode 100644 index 0000000..289951e --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/PackageAllowedChildren_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/PackageAllowedChildren.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( PackageAllowedChildrenTest, WrongChildren ) +{ + PackageAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageAllowedChildren_WrongChildren.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 14 ); +} + +TEST( PackageAllowedChildrenTest, ChildrenOK ) +{ + PackageAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageAllowedChildren_ChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/PackageAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/PackageAttributesPresent_test.cpp new file mode 100644 index 0000000..11dc1a6 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/PackageAttributesPresent_test.cpp @@ -0,0 +1,76 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/PackageAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( PackageAttributesPresentTest, NotAllowedAttributes ) +{ + PackageAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 2 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 114 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "package" ); +} + +TEST( PackageAttributesPresentTest, MissingAttributes ) +{ + PackageAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageAttributesPresent_MissingAttributes.xml" ); + + ASSERT_EQ( results.size(), 2U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 2 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 58 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "version" ); + EXPECT_EQ( message_arguments[ 1 ], "package" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 2 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 58 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "unique-identifier" ); + EXPECT_EQ( message_arguments[ 1 ], "package" ); +} + +TEST( PackageAttributesPresentTest, AllowedAttributes ) +{ + PackageAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/PackageIsRoot_test.cpp b/src/FlightCrew/tests/opf_tests/PackageIsRoot_test.cpp new file mode 100644 index 0000000..5606845 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/PackageIsRoot_test.cpp @@ -0,0 +1,47 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/PackageIsRoot.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( PackageIsRootTest, PackageNotRoot_Error ) +{ + PackageIsRoot validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageIsRoot_PackageNotRoot.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_PACKAGE_NOT_ROOT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 2 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 90 ); +} + +TEST( PackageIsRootTest, PackageIsRoot_OK ) +{ + PackageIsRoot validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageIsRoot_PackageRoot.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/FlightCrew/tests/opf_tests/PackageUniqueIdentifierValid_test.cpp b/src/FlightCrew/tests/opf_tests/PackageUniqueIdentifierValid_test.cpp new file mode 100644 index 0000000..e2cb708 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/PackageUniqueIdentifierValid_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/PackageUniqueIdentifierValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( PackageUniqueIdentifierValidTest, IdDoesNotExist ) +{ + PackageUniqueIdentifierValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageUniqueIdentifierValid_IdDoesNotExist.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_PACKAGE_UNIQUE_IDENTIFIER_DOES_NOT_EXIST ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 2 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 88 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "BookId" ); +} + +TEST( PackageUniqueIdentifierValidTest, IdExists ) +{ + PackageUniqueIdentifierValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageUniqueIdentifierValid_IdExists.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/PackageVersionCorrect_test.cpp b/src/FlightCrew/tests/opf_tests/PackageVersionCorrect_test.cpp new file mode 100644 index 0000000..c1e72b8 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/PackageVersionCorrect_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/PackageVersionCorrect.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( PackageVersionCorrectTest, BadPackageVersion ) +{ + PackageVersionCorrect validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageVersionCorrect_BadPackageVersion.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_BAD_PACKAGE_VERSION ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 2 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 90 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "2.0" ); + EXPECT_EQ( message_arguments[ 1 ], "break" ); +} + +TEST( PackageVersionCorrectTest, GoodPackageVersion ) +{ + PackageVersionCorrect validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PackageVersionCorrect_GoodPackageVersion.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/PublisherAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/PublisherAttributesPresent_test.cpp new file mode 100644 index 0000000..e71f659 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/PublisherAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/PublisherAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( PublisherAttributesPresentTest, NotAllowedAttributes ) +{ + PublisherAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PublisherAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 69 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "publisher" ); +} + +TEST( PublisherAttributesPresentTest, AllowedAttributes ) +{ + PublisherAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/PublisherAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ReachabilityAnalysis_test.cpp b/src/FlightCrew/tests/opf_tests/ReachabilityAnalysis_test.cpp new file mode 100644 index 0000000..09f5481 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ReachabilityAnalysis_test.cpp @@ -0,0 +1,100 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ReachabilityAnalysis.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ReachabilityAnalysisTest, ReachableDocsNotInSpine ) +{ + ReachabilityAnalysis validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/content.opf" ); + + // Needed for checking filepaths, + // ReachabilityAnalysis uses hashes + std::sort( results.begin(), results.end() ); + + ASSERT_EQ( results.size(), 3U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_REACHABLE_OPS_DOC_NOT_IN_SPINE ); + EXPECT_TRUE( boost::contains( results[ 0 ].GetFilepath(), "test2.xhtml" ) ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_OPF_REACHABLE_OPS_DOC_NOT_IN_SPINE ); + EXPECT_TRUE( boost::contains( results[ 1 ].GetFilepath(), "test3.xhtml" ) ); + + EXPECT_EQ( results[ 2 ].GetResultId(), ERROR_OPF_REACHABLE_OPS_DOC_NOT_IN_SPINE ); + EXPECT_TRUE( boost::contains( results[ 2 ].GetFilepath(), "test4.xhtml" ) ); +} + +TEST( ReachabilityAnalysisTest, ManifestResourceNotReachable ) +{ + ReachabilityAnalysis validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/content.opf" ); + + // Needed for checking filepaths, + // ReachabilityAnalysis uses hashes + std::sort( results.begin(), results.end() ); + + ASSERT_EQ( results.size(), 2U ); + EXPECT_EQ( results[ 0 ].GetResultId(), WARNING_OPF_RESOURCE_IN_MANIFEST_NOT_REACHABLE ); + EXPECT_TRUE( boost::contains( results[ 0 ].GetFilepath(), ".xhtml" ) ); + + EXPECT_EQ( results[ 1 ].GetResultId(), WARNING_OPF_RESOURCE_IN_MANIFEST_NOT_REACHABLE ); + EXPECT_TRUE( boost::contains( results[ 1 ].GetFilepath(), "doesNotExist.jpg" ) ); +} + +TEST( ReachabilityAnalysisTest, ReachableResourceNotInManifest ) +{ + ReachabilityAnalysis validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/content.opf" ); + + // Needed for checking filepaths, + // ReachabilityAnalysis uses hashes + std::sort( results.begin(), results.end() ); + + ASSERT_EQ( results.size(), 4U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_REACHABLE_RESOURCE_NOT_IN_MANIFEST ); + EXPECT_TRUE( boost::contains( results[ 0 ].GetFilepath(), "notInManifest.css" ) ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_OPF_REACHABLE_RESOURCE_NOT_IN_MANIFEST ); + EXPECT_TRUE( boost::contains( results[ 1 ].GetFilepath(), "notInManifest.gif" ) ); + + EXPECT_EQ( results[ 2 ].GetResultId(), ERROR_OPF_REACHABLE_OPS_DOC_NOT_IN_SPINE ); + EXPECT_TRUE( boost::contains( results[ 2 ].GetFilepath(), "test4.xhtml" ) ); + + EXPECT_EQ( results[ 3 ].GetResultId(), ERROR_OPF_REACHABLE_RESOURCE_NOT_IN_MANIFEST ); + EXPECT_TRUE( boost::contains( results[ 3 ].GetFilepath(), "test4.xhtml" ) ); +} + + +TEST( ReachabilityAnalysisTest, AllOk ) +{ + ReachabilityAnalysis validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ReachabilityAnalysis_AllOk/content.opf" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ReferenceAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/ReferenceAttributesPresent_test.cpp new file mode 100644 index 0000000..51c7e00 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ReferenceAttributesPresent_test.cpp @@ -0,0 +1,76 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ReferenceAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ReferenceAttributesPresentTest, NotAllowedAttributes ) +{ + ReferenceAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ReferenceAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 85 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "reference" ); +} + +TEST( ReferenceAttributesPresentTest, MissingAttributes ) +{ + ReferenceAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ReferenceAttributesPresent_MissingAttributes.xml" ); + + ASSERT_EQ( results.size(), 2U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 45 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "type" ); + EXPECT_EQ( message_arguments[ 1 ], "reference" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 45 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "href" ); + EXPECT_EQ( message_arguments[ 1 ], "reference" ); +} + +TEST( ReferenceAttributesPresentTest, AllowedAttributes ) +{ + ReferenceAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ReferenceAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ReferenceTypeValid_test.cpp b/src/FlightCrew/tests/opf_tests/ReferenceTypeValid_test.cpp new file mode 100644 index 0000000..4dec129 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ReferenceTypeValid_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ReferenceTypeValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ReferenceTypeValidTest, BadValue ) +{ + ReferenceTypeValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ReferenceTypeValid_BadValue.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_BAD_REFERENCE_TYPE_VALUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 37 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "breakme" ); +} + +TEST( ReferenceTypeValidTest, GoodValue ) +{ + ReferenceTypeValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ReferenceTypeValid_GoodValue.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/RelationAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/RelationAttributesPresent_test.cpp new file mode 100644 index 0000000..063fd78 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/RelationAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/RelationAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( RelationAttributesPresentTest, NotAllowedAttributes ) +{ + RelationAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/RelationAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 68 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "relation" ); +} + +TEST( RelationAttributesPresentTest, AllowedAttributes ) +{ + RelationAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/RelationAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/RightsAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/RightsAttributesPresent_test.cpp new file mode 100644 index 0000000..462f05c --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/RightsAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/RightsAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( RightsAttributesPresentTest, NotAllowedAttributes ) +{ + RightsAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/RightsAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 66 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "rights" ); +} + +TEST( RightsAttributesPresentTest, AllowedAttributes ) +{ + RightsAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/RightsAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/SiteAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/SiteAttributesPresent_test.cpp new file mode 100644 index 0000000..761ba59 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/SiteAttributesPresent_test.cpp @@ -0,0 +1,76 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/SiteAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( SiteAttributesPresentTest, NotAllowedAttributes ) +{ + SiteAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SiteAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 72 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "site" ); +} + +TEST( SiteAttributesPresentTest, MissingAttributes ) +{ + SiteAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SiteAttributesPresent_MissingAttributes.xml" ); + + ASSERT_EQ( results.size(), 2U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 31 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "title" ); + EXPECT_EQ( message_arguments[ 1 ], "site" ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 31 ); + + message_arguments = results[ 1 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "href" ); + EXPECT_EQ( message_arguments[ 1 ], "site" ); +} + +TEST( SiteAttributesPresentTest, AllowedAttributes ) +{ + SiteAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SiteAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/SourceAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/SourceAttributesPresent_test.cpp new file mode 100644 index 0000000..ca85f7a --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/SourceAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/SourceAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( SourceAttributesPresentTest, NotAllowedAttributes ) +{ + SourceAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SourceAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 66 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "source" ); +} + +TEST( SourceAttributesPresentTest, AllowedAttributes ) +{ + SourceAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SourceAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/SpineAllowedChildren_test.cpp b/src/FlightCrew/tests/opf_tests/SpineAllowedChildren_test.cpp new file mode 100644 index 0000000..d9ac506 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/SpineAllowedChildren_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/SpineAllowedChildren.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( SpineAllowedChildrenTest, WrongChildren ) +{ + SpineAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SpineAllowedChildren_WrongChildren.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 21 ); +} + +TEST( SpineAllowedChildrenTest, ChildrenOK ) +{ + SpineAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SpineAllowedChildren_ChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/SpineAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/SpineAttributesPresent_test.cpp new file mode 100644 index 0000000..a750ba8 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/SpineAttributesPresent_test.cpp @@ -0,0 +1,68 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/SpineAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( SpineAttributesPresentTest, NotAllowedAttributes ) +{ + SpineAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SpineAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 51 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "spine" ); +} + +TEST( SpineAttributesPresentTest, MissingAttributes ) +{ + SpineAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SpineAttributesPresent_MissingAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 24 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "toc" ); + EXPECT_EQ( message_arguments[ 1 ], "spine" ); +} + +TEST( SpineAttributesPresentTest, AllowedAttributes ) +{ + SpineAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SpineAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/SpineTocValid_test.cpp b/src/FlightCrew/tests/opf_tests/SpineTocValid_test.cpp new file mode 100644 index 0000000..1d25142 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/SpineTocValid_test.cpp @@ -0,0 +1,51 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/SpineTocValid.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( SpineTocValidTest, BadValue ) +{ + SpineTocValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SpineTocValid_BadValue.xml" ); + + EXPECT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_OPF_BAD_SPINE_TOC_VALUE ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 9 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 26 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "breakme" ); +} + +TEST( SpineTocValidTest, GoodValue ) +{ + SpineTocValid validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SpineTocValid_GoodValue.xml" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/SubjectAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/SubjectAttributesPresent_test.cpp new file mode 100644 index 0000000..1f3c874 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/SubjectAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/SubjectAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( SubjectAttributesPresentTest, NotAllowedAttributes ) +{ + SubjectAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SubjectAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 67 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "subject" ); +} + +TEST( SubjectAttributesPresentTest, AllowedAttributes ) +{ + SubjectAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/SubjectAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/TitleAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/TitleAttributesPresent_test.cpp new file mode 100644 index 0000000..ace29d0 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/TitleAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/TitleAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( TitleAttributesPresentTest, NotAllowedAttributes ) +{ + TitleAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TitleAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 70 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "title" ); +} + +TEST( TitleAttributesPresentTest, AllowedAttributes ) +{ + TitleAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TitleAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/TitlePresent_test.cpp b/src/FlightCrew/tests/opf_tests/TitlePresent_test.cpp new file mode 100644 index 0000000..829a037 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/TitlePresent_test.cpp @@ -0,0 +1,50 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/TitlePresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( TitlePresentTest, NoTitle_Error ) +{ + TitlePresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TitlePresent_NoTitle.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ELEMENT_NOT_PRESENT ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 98 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "title" ); +} + +TEST( TitlePresentTest, HasTitle_OK ) +{ + TitlePresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TitlePresent_HasTitle.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/FlightCrew/tests/opf_tests/TourAllowedChildren_test.cpp b/src/FlightCrew/tests/opf_tests/TourAllowedChildren_test.cpp new file mode 100644 index 0000000..43f706a --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/TourAllowedChildren_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/TourAllowedChildren.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( TourAllowedChildrenTest, WrongChildren ) +{ + TourAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TourAllowedChildren_WrongChildren.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 22 ); +} + +TEST( TourAllowedChildrenTest, ChildrenOK ) +{ + TourAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TourAllowedChildren_ChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/TourAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/TourAttributesPresent_test.cpp new file mode 100644 index 0000000..ef43255 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/TourAttributesPresent_test.cpp @@ -0,0 +1,68 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/TourAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( TourAttributesPresentTest, NotAllowedAttributes ) +{ + TourAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TourAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 55 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "tour" ); +} + +TEST( TourAttributesPresentTest, MissingAttributes ) +{ + TourAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TourAttributesPresent_MissingAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_REQUIRED_ATTRIBUTE_MISSING ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 26 ); + + std::vector< std::string > message_arguments = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments[ 0 ], "title" ); + EXPECT_EQ( message_arguments[ 1 ], "tour" ); +} + +TEST( TourAttributesPresentTest, AllowedAttributes ) +{ + TourAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TourAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ToursAllowedChildren_test.cpp b/src/FlightCrew/tests/opf_tests/ToursAllowedChildren_test.cpp new file mode 100644 index 0000000..52c48ef --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ToursAllowedChildren_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ToursAllowedChildren.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ToursAllowedChildrenTest, WrongChildren ) +{ + ToursAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ToursAllowedChildren_WrongChildren.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 17 ); +} + +TEST( ToursAllowedChildrenTest, ChildrenOK ) +{ + ToursAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ToursAllowedChildren_ChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/ToursAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/ToursAttributesPresent_test.cpp new file mode 100644 index 0000000..51f8a2b --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/ToursAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/ToursAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( ToursAttributesPresentTest, NotAllowedAttributes ) +{ + ToursAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ToursAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 3 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 39 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "tours" ); +} + +TEST( ToursAttributesPresentTest, AllowedAttributes ) +{ + ToursAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/ToursAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/TypeAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/TypeAttributesPresent_test.cpp new file mode 100644 index 0000000..4b62133 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/TypeAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/TypeAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( TypeAttributesPresentTest, NotAllowedAttributes ) +{ + TypeAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TypeAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 48 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "type" ); +} + +TEST( TypeAttributesPresentTest, AllowedAttributes ) +{ + TypeAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/TypeAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/XMetadataAllowedChildren_test.cpp b/src/FlightCrew/tests/opf_tests/XMetadataAllowedChildren_test.cpp new file mode 100644 index 0000000..06bdd54 --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/XMetadataAllowedChildren_test.cpp @@ -0,0 +1,48 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/XMetadataAllowedChildren.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( XMetadataAllowedChildrenTest, WrongChildren ) +{ + XMetadataAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/XMetadataAllowedChildren_WrongChildren.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_CHILD_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 5 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 23 ); +} + +TEST( XMetadataAllowedChildrenTest, ChildrenOK ) +{ + XMetadataAllowedChildren validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/XMetadataAllowedChildren_ChildrenOK.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/opf_tests/XMetadataAttributesPresent_test.cpp b/src/FlightCrew/tests/opf_tests/XMetadataAttributesPresent_test.cpp new file mode 100644 index 0000000..f8a679e --- /dev/null +++ b/src/FlightCrew/tests/opf_tests/XMetadataAttributesPresent_test.cpp @@ -0,0 +1,52 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Opf/XMetadataAttributesPresent.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( XMetadataAttributesPresentTest, NotAllowedAttributes ) +{ + XMetadataAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/XMetadataAttributesPresent_NotAllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_ATTRIBUTE_NOT_RECOGNIZED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 51 ); + + std::vector< std::string > message_arguments1 = results[ 0 ].GetMessageArguments(); + EXPECT_EQ( message_arguments1[ 0 ], "breakme" ); + EXPECT_EQ( message_arguments1[ 1 ], "x-metadata" ); +} + +TEST( XMetadataAttributesPresentTest, AllowedAttributes ) +{ + XMetadataAttributesPresent validator; + std::vector results = validator.ValidateFile( + "test_data/opf_tests/XMetadataAttributesPresent_AllowedAttributes.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/stdafx_tests.cpp b/src/FlightCrew/tests/stdafx_tests.cpp new file mode 100644 index 0000000..e1169dd --- /dev/null +++ b/src/FlightCrew/tests/stdafx_tests.cpp @@ -0,0 +1,22 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include "stdafx_tests.h" diff --git a/src/FlightCrew/tests/stdafx_tests.h b/src/FlightCrew/tests/stdafx_tests.h new file mode 100644 index 0000000..7bb5b78 --- /dev/null +++ b/src/FlightCrew/tests/stdafx_tests.h @@ -0,0 +1,23 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/framework_tests/EpubValidates_MissingTitle.epub b/src/FlightCrew/tests/test_data/framework_tests/EpubValidates_MissingTitle.epub new file mode 100644 index 0000000000000000000000000000000000000000..2c927de2684bd9a0319a3dbcf4eb5ac666cc469c GIT binary patch literal 1699 zcmWIWW@Zs#00GwZrndQst93v;5as~l+|1n6lFEYA#DapH%;dz9%=|q4)Pm9^?W)Xz z0H{t5u+F1wQu&L4Iz9oh7!doqhB)ea`nl;R=jW9qX6B_9=~d+Bg!UceJES1s^8PQ^ zp{rY7Om*<}vB`cUzNTcgO9E%W;(GmSOEy;DzB|)=@i+bVH-v+?iJ06kjo$ZOI#okt z1LNgiM^{;-oLw%W;z!%0eQjc1-1idde0!t}8A@T(OrA#Se?{(rmL+dH{9 zx25R%pAwrn`j4{LZ|Hk;V&?IKPSN)SP1_~rng(R)I#%@Vymf{-Z^z1=F=q-?{~ekV zvFgiNc2sXIZkSk7z{tSxf{B4a5a=y`SEqnru%A-%O7!vz(po2-&TBRharyp}>-24| z905gs#)+#|1zq>FJFrpz2$zJokMsY1;-B6*e?9ljApPBgl&j&YKO2@^-Rhb7pxEoc ziKxurB_+EnzdkFO>MNxE#8Jc{AotdkcXKy;AL~25c>UC~e|Kp{ocP&u)ol3^<6nE3 z{k0AJo=eS|Vt4)P!?&&XJQOEw;ygGtRMcUHBI*Iw6%AVd2-Ua)o0E+<|yG`tRLa= z&~^9CJJCl3s*2A&Hkcl`Cfch0X4@bi?p=Q;Y{8Zfcb2;@+OX|Pkj0aY_k#1fp0#7&^9KR^!76L7vT>x@o&BK8>tuML4r!-}h`HlhE25m2%I2ox8Co_?hI*l}VGOWCQOfPtlkw zG4oZbOZvyzw-?Oac6ff(5}pg))yJI%wps6+h?}k*xUV8G*ei3a+b=7h zz?smp+50SJF4FjL>v+E8yTyNOjBbi}x+I@I7^0dHKhN-4^;53TZ_*kABG*1!!}hqn z|8iL!18UTiZu+Qx3K%8Q!03^IM@>j-MTvfJYBH!KF)%PN)T_uS$<4{__vb(8AaL}( z(EY?W2haBPc5hniqOJH*Kj>g!Zl>_I-q=&y&2x8Jp7nnA_ulM@i?6@sI{zc@lFx3R z4|>fJ^Npsy>OL*^?as^16R+o-2;1=K@Zl<^PSu3Hvggz7Ht;=K_gtARk>Pjdjv37l zm)G<1o4NwIzlMA)nQZn>KE|Ri*m-HJ z+Q-1k)X7^`?maf|NYy2-{nnELm)+Z{{atLO;TNfpecSqc?54~JKXBbm<>=%ez%XEB z5&;*V*b7u(KmdV)!j?u54J%#|y090fAhi%(RzMni(TZ*cddUSg0&KG&Fh(%SF?8+d sISZkE12C^av_tb5x>od&gL07NLW(EtDd literal 0 HcmV?d00001 diff --git a/src/FlightCrew/tests/test_data/framework_tests/EpubValidates_MissingXhtmlFiles.epub b/src/FlightCrew/tests/test_data/framework_tests/EpubValidates_MissingXhtmlFiles.epub new file mode 100644 index 0000000000000000000000000000000000000000..050dbfab558a0f4752bd8fb56d13ed9f7979db9a GIT binary patch literal 1720 zcmWIWW@h1H0D*T^0k&WUl;8x?zOEsTx}JV+`T;;?B0vEShBIr8ZI7}^TQbK~~f)_aB* z>RxR>(ha&>t=!HpKqG)I#+Z3i4s@S+=9|$k?CjC+2>tMxR}B=tL1;uyT|AA z>w>#HG-C~;3RyL_x>PFKXPADz9vj?uCyG;Jq0+vvmO70eEvh@^&%~Ix$*$$g*wFIj zh9+z7X}=3eI?o=n2AL{cH0`nA>(y3#xXF3mzG-Uu6ZFnMKFqnbCdzAexkwmS8Ozz< ztgoi=8UGTyu;BWtrnIF$?!Qo(di!nO-uvGE`DM}hlN-OyQ~vrU_t5h1%QIwCi)8z( z%#T?wRg6h{>QHX7bLQ@6K9=2I6dpFp|CH8SW_Dz2U$*t7Sv^g=9-DAn&A7E{-sVM& zT8wi)9nWRG<-z~|s&h(dtd#1+FD~yhYt)Y@o0f}4Z<2N7J+b-VqBggQ=KJ+0T$p@> zvr0txg(4T*9p^27nf`{=?bvsHnWOmRqq(^{2D2U;T^DbE(%{o)x9_W^aev5{>?2=t zFI}xiB!Dky$)6h@xgn_)C1|ODja|087MKcnfT@5NuCOFOSuZcSqIXiP{~-gBw)fw) zvxN1x8?!kp$f`A|sd1^C;nw%APVwHBcazWP?^m$`rcSAMRd(~XzqeewBllC!-sI5b zt(_IeKU+F4=9)XJ^ho?8_VNSy$NP57I;Z~e^`m)`S2r9zefRR?mO}A_Z#(8N`#gTR zPvA%0i!z3H>30%)KDMloVa(Yc?SFd9zYkqmyz}oqT)@9OY(r0Vf{pL2ep&Z7DQi@N z-KSqT(0`BLDeTC-GcHX*@_oMz+$WtmA)~x5)AZJoS;nCfPR@eU6Duyu@+?_hZNBh! zwewp(X48`Dx&Kzlmo%H-d|U7%+BezrWaqs9@y4Pmn_FWZFS#MHYs#tA&B>*FZ}!!xT@^W&5sQ?5|GD0{-&b=d z-ytFG)aX5G3vH~UHMi`$z3{f?(RbRtbHVWh$(n-v@e>KX_b1wrW{5JeCOy+xvgnuP>GMKLSYgc_s4(2Iy5 zA_z#6wxWShq6mm2G^HpAC za7SIIQ-S~sCQFWWHD!T>JbSsno3FUP6>_Mb=j_#;^xM#XOh0Dw_l06^k7C)bOW26h zS(^BB!XKKobAQi}w!On!iN2L~(&T7?=ni1`{Wpn)c2!Lym>Y6@PlGe}ROyFdpBwIl zH$>WwU7k7HccH5xjLV+Raudv4Y3RB$dGkxJu(D8Fw^h$zO3b{mtNJdatuwFrT}{#o z0w0{|=XqLr2FSm%Emq08>P6V{S{@jzKWw6~J7vx69SlR5kzaM#<$zTsZX}LgUf#-( zL+F%D-*E}?$y|)~(MnxX2U_bJqCZJ@Pggjiv+J#M;tep1v%V7KOCxVn%sTJOa$!@| zJ@u(8D`AQsZx7(eR1C3|`xtC%Z9<$tK}|SNisxVNslS4~jE2Bi(&c5Y z?~dTB;h8SzS6FwGYysHGMBnT%%F=yIwaI|qKqaW}fyf~Yh5wZAthQfgi* z{nYt0%PWoe<+*1Mvh<)SrF+*2Sv8Kh=ltbM}QJG^)?5 zjy+=7CTq3gv!40uoD5YFR{5G!wX?E^ST2tbjpI&tGgH(&x%~90t@E7ZIU|v5ntvDS zy>5m#c3a3HQF{NCf_=#X(gpyk-wCzT{!IyP^~#5-)oP7yUBstXruG3RigBu1+2Wa^ zeACnxg|}^u3dO_c3?~G9uisk;N*gK25a+pcptKGf!rj-(&|C4~$5vpPP+XyI)sL9H3i_`Q@u&kWFcZ~g$wpUv%AH;NHPukYeoe|zZil+qN9#m%N95Dy&yE#{nn+=O5utsg9C}iOwVemSRvhELo)A6g7G-<*7sL_kLELmqv|t$D`SJfyqlx}S~uQtJR!Hv4mOX5wjJTJ2DK@xGN=BYGSH zLZ@#V(ajLJqQc8z1?{yT-Jy7z3LRM-gf%2fxPuqBp6>gkZM9HG0sWhE|I%+q` zSV7RxO*e>w#SL8W9H5}oFg22FSr$~l?6ZEQe-fr5kGC8tBA|B98R^r(DW?XkyQqZP zpn@Bg5Ydzxn97hoJ?uAjAFB%Y`INU020l0Xud&QBoi=n#3J2WodpOCZUX;m!+# zK!f8A9)L6GS|9FXvvCsf%2=Q4=R!j0$VpK+TVwNU0%U8hs1R5Z0nVK zcu*=(s?HUW(;CaPlnV4cwc4x2zSLD>jVVw!OT$LkAS^kF9uJda=FLX{qZM@iFfrPD zEveeU{^DUjWNbM1Xypyp+?y9Cedp7G6LCYm4XizOD`SB(=|0Th$D zE=$-^#-jSbq0c*-919`U3&QecBjIBvFU#G-_eowh%l0tN*>0YgKhALMV7$8Nlwo%6-$B++?>yU1uv8;*f zP80SN_1WH!lYFVrk+m3^-xj999UVrrMf1k9OtE`{{4cKXoXg_^-{%6aaDkJ!z#lfj z8_krC#KPH@OD&is#$km5+^*VN=11 zWA8kUSJTP%1`~0NhW>X@e2DwxK|e^F@&3z&f1o4%f1pE<4Gl1hQ)b#W z_LkqcW10;LGe5%u9LmM5!1M3S!@(FXwiR6BM1K>|k5xbOjtnQ2y~F`6W)SxNH~sK^ zqo1G1htt8ovClWHZyn&iYyB4qv1K_V^nYc)UF_%S{Mce8o9%v>626Xws|lB literal 0 HcmV?d00001 diff --git a/src/FlightCrew/tests/test_data/framework_tests/EpubValidates_NotAZip.epub b/src/FlightCrew/tests/test_data/framework_tests/EpubValidates_NotAZip.epub new file mode 100644 index 0000000..691e902 --- /dev/null +++ b/src/FlightCrew/tests/test_data/framework_tests/EpubValidates_NotAZip.epub @@ -0,0 +1 @@ +break me \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/framework_tests/EpubValidates_Valid.epub b/src/FlightCrew/tests/test_data/framework_tests/EpubValidates_Valid.epub new file mode 100644 index 0000000000000000000000000000000000000000..cceaafb0270b1de89490f87daaa0edc34274f5b9 GIT binary patch literal 1796 zcmWIWW@Zs#0D&`WjcxN2SL=XyAj|>8xtY1CC6xuKi3J5YnaPPInfZD8sRgA;+Etka z0Z^SBV4X+Vr1BR7b$kM1F(CGJ4RO@<^mEfs&d)1J%*;zI(yPeL3GF+`cSu3N<^5l- zLsz%FnCjr`W0U({Qq{fw|8=J zZcEYiKP5JE^dDuf-_ZBy#LVLdoucmvnzl>KH4Vtpb*$*!dFu>w-j0u1*2LU_YhimFVRcq_qYg%v)?Avgf(Bj<;=S zf`aE{H;1KHS6!MnxvnAG{(#mE5jp8^@4q{8a86zIE3MkbINz-={@1FM`h}Ujn>qRa zHW+U>m6`mxW&hl`y|(q9;f1v`K7ZWa~u+3`uU-a(r`TV-zE)UIE!>B@5jjb+~iuM_%pRdOT_uYx&)L5vrFRZ0b z<423?PWdx2CT_B8`7$=Ne7T{?ntR&sLXyt2$E-o73Kva#Eckl06(4SLp0{tBn*Id6 z^N$a6Zmo&(nq4ju##P30_BZRRX?(`N#4aqjzN#s0>5uy_RHoj3o45DAw|{!XKKW>Fu8zU1$41x1 z+n+S}^x5tEYH8db@+JGom)uKN>ro?@ja|0878toaz{ur=M{Y@evR+#XKo#MSM?+f?Or28is_f=%e{Z>VNA9Pd zy~&}=TRSU`f3|d9%r$pb>5=$H?BxgYkN54Ebx!@`>qqk>uWmSc`tIe&ErsF<-*(Jl z_IdnrpTLj07iA3Z((fepd~8`E!NCc<0}JxPX6m*oL0!1RLL3{j%dYUj6n%%&yPbN{W9FKITv`L^Ikv~RNK$EpV095h?BUMpXOm<+e2-~PWJ{yT-P}^i{(x5{STIkJvH^yo^s|1cPp7536lM2 zw&8YKs+#??smD&$$H1XKCO|AU> zPZyf(&t28EPcJfUFZ-r>zurAq-FfWQy!s^)Ps+rA373&c1Y9g*FQ|c`0t5;QTN*($ ztk_2A!d^&&)IxMw0cq?-Ho6(;B_h}eu+4(N=)ou-(Y2%JIfV9iOfc=x9Eh$JJsBXh bPGf;-C6Firyjj^m+E{_m9q8QUtRNl$+mqCB literal 0 HcmV?d00001 diff --git a/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test1.xhtml b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test1.xhtml new file mode 100644 index 0000000..637855d --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test1.xhtml @@ -0,0 +1,10 @@ + + + + + + + +
+ + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test2.xhtml b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test2.xhtml new file mode 100644 index 0000000..f3361e7 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test2.xhtml @@ -0,0 +1,14 @@ + + + + + + + +
+
+
+
+
+ + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test3.xhtml b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test3.xhtml new file mode 100644 index 0000000..ffd0c0c --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/test3.xhtml @@ -0,0 +1,14 @@ + + + + + + + +
+
+
+
+
+ + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/toc.ncx b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/toc.ncx new file mode 100644 index 0000000..e7db135 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_AllPresent/toc.ncx @@ -0,0 +1,24 @@ + + + + + + + Chapter I + + + + + + Chapter II + + + + + + Chapter III + + + + + diff --git a/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/test2.xhtml b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/test2.xhtml new file mode 100644 index 0000000..f3361e7 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/test2.xhtml @@ -0,0 +1,14 @@ + + + + + + + +
+
+
+
+
+ + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/test3.xhtml b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/test3.xhtml new file mode 100644 index 0000000..ffd0c0c --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/test3.xhtml @@ -0,0 +1,14 @@ + + + + + + + +
+
+
+
+
+ + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/toc.ncx b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/toc.ncx new file mode 100644 index 0000000..efa4f59 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/ContentTargetsPresent_NotPresent/toc.ncx @@ -0,0 +1,24 @@ + + + + + + + Chapter I + + + + + + Chapter II + + + + + + Chapter III + + + + + diff --git a/src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_DoesntSatisfySchema.xml b/src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_DoesntSatisfySchema.xml new file mode 100644 index 0000000..1cae8b0 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_DoesntSatisfySchema.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + Three Men in a Boat + + + + Jerome K. Jerome + + + + + + Title Page + + + + + + + Chapters + + + + + diff --git a/src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchema.xml b/src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchema.xml new file mode 100644 index 0000000..4f3eaf1 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchema.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + Three Men in a Boat + + + + Jerome K. Jerome + + + + + + Title Page + + + + + + + Chapters + + + + + diff --git a/src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchemaOpf201.xml b/src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchemaOpf201.xml new file mode 100644 index 0000000..3f6b7ef --- /dev/null +++ b/src/FlightCrew/tests/test_data/ncx_tests/NcxSatisfiesSchema_SatisfiesSchemaOpf201.xml @@ -0,0 +1,32 @@ + + + + + + + + + + Three Men in a Boat + + + + Jerome K. Jerome + + + + + + Title Page + + + + + + + Chapters + + + + + diff --git a/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_DoesntHaveOpf/META-INF/container.xml b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_DoesntHaveOpf/META-INF/container.xml new file mode 100644 index 0000000..d589138 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_DoesntHaveOpf/META-INF/container.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_DoesntHaveOpf/OEBPS/content.opf b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_DoesntHaveOpf/OEBPS/content.opf new file mode 100644 index 0000000..7b4d68d --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_DoesntHaveOpf/OEBPS/content.opf @@ -0,0 +1 @@ +empty \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_HasOpf/META-INF/container.xml b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_HasOpf/META-INF/container.xml new file mode 100644 index 0000000..75a8ec7 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_HasOpf/META-INF/container.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_HasOpf/OEBPS/content.opf b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_HasOpf/OEBPS/content.opf new file mode 100644 index 0000000..7b4d68d --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListedOpfPresent_HasOpf/OEBPS/content.opf @@ -0,0 +1 @@ +empty \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/ocf_tests/ContainerListsOpf_DoesntListOpf.xml b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListsOpf_DoesntListOpf.xml new file mode 100644 index 0000000..11510a7 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListsOpf_DoesntListOpf.xml @@ -0,0 +1,10 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/ocf_tests/ContainerListsOpf_ListsOpf.xml b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListsOpf_ListsOpf.xml new file mode 100644 index 0000000..c2a99d3 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/ContainerListsOpf_ListsOpf.xml @@ -0,0 +1,11 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/ocf_tests/ContainerSatisfiesSchema_DoesntSatisfySchema.xml b/src/FlightCrew/tests/test_data/ocf_tests/ContainerSatisfiesSchema_DoesntSatisfySchema.xml new file mode 100644 index 0000000..29e81cc --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/ContainerSatisfiesSchema_DoesntSatisfySchema.xml @@ -0,0 +1,9 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/ocf_tests/ContainerSatisfiesSchema_SatisfiesSchema.xml b/src/FlightCrew/tests/test_data/ocf_tests/ContainerSatisfiesSchema_SatisfiesSchema.xml new file mode 100644 index 0000000..ec7e67f --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/ContainerSatisfiesSchema_SatisfiesSchema.xml @@ -0,0 +1,41 @@ + + + + + + + + euieu ieuie + + + + + eiepie + + + + euieu ieuie + + + + + euieu ieuie + + + + euieu ieuie + + diff --git a/src/FlightCrew/tests/test_data/ocf_tests/EncryptionSatisfiesSchema_DoesntSatisfySchema.xml b/src/FlightCrew/tests/test_data/ocf_tests/EncryptionSatisfiesSchema_DoesntSatisfySchema.xml new file mode 100644 index 0000000..16aa844 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/EncryptionSatisfiesSchema_DoesntSatisfySchema.xml @@ -0,0 +1,65 @@ + + + + + 256 + 9lWu3Q== + + + + Joseph + + + + + qZk+NkcGgWq6PiVxeFDCbJzQ2J0= + + + + + + + + Zm9v + + + + cafebabe + cafebabe + + + + + cafebabe + cafebabe + + + + + + + + + + + + + +

This XML document tests the schema for ambigous + content.

+
+
+
+ + + + + qZk+NkcGgWq6PiVxeFDCbJzQ2J0= + + + + + + +
diff --git a/src/FlightCrew/tests/test_data/ocf_tests/EncryptionSatisfiesSchema_SatisfiesSchema.xml b/src/FlightCrew/tests/test_data/ocf_tests/EncryptionSatisfiesSchema_SatisfiesSchema.xml new file mode 100644 index 0000000..b1281cc --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/EncryptionSatisfiesSchema_SatisfiesSchema.xml @@ -0,0 +1,65 @@ + + + + + 256 + 9lWu3Q== + + + + Joseph + + + + + qZk+NkcGgWq6PiVxeFDCbJzQ2J0= + + + + + + + + Zm9v + + + + cafebabe + cafebabe + + + + + cafebabe + cafebabe + + + + + + + + + + + + + +

This XML document tests the schema for ambigous + content.

+
+
+
+ + + + + qZk+NkcGgWq6PiVxeFDCbJzQ2J0= + + + + + + +
diff --git a/src/FlightCrew/tests/test_data/ocf_tests/MimetypeBytesValidTest_BytesInvalid.epub b/src/FlightCrew/tests/test_data/ocf_tests/MimetypeBytesValidTest_BytesInvalid.epub new file mode 100644 index 0000000000000000000000000000000000000000..f7cb6b32ed5658d6911bd3d6eb20a28b360d8dcd GIT binary patch literal 1967 zcmWIWW@h1H0D%BTOIt7lN^k;cU)K;vT~9wZ{Q#gc5ugAEgCkJcQ8uak#X#OCAQnSb zmYkngl9-v7TBKKzn-ki1knfO!fXn;8T!*f1c`?<&*T*LNk@%XD)h-E~0gLPPuPxbF zef#cA^Tprv-`@}p-X>ylzchN^d+AgSkqwNOe;r+Ak#csqh>GL3NVX3%QVl05wKbl3 zVklyH`U%s++QY9_xP-X9Hu(STYH#o4;@p;^>wijY=IB4lUcaI5(TSPI4?0EP6Etm? zm}?r4rR!MHyYto==DZy%cgCD4Q2lpkO2n!!XW2pC!tQ%Eptt;8odSZe=;23*C1-3 zXTkgTcN|CM*M*yy`HR!s{K9HuC-P@l-<>gqZJs};#7&Ldt|@uu>vKHAZ|ZDxdgsc> za&?(^=F2&~miBV}^TN!&&)W82;d}jx6i0YJp3`OdFi_-mAO~h zIMVD&e@tUrD3Rgve@UEzdAI91?n zc=9v_#?@yt%y=d8nR9kCI!LtUn0G!iR%>OE(BE-6p+~)=QhtGscVL-oS+`=;;muhS zHYL?XWn7sPmhn8;-~Q&I-_73FOS4yWtv({NC0sM9oeR3z0m&KQAeZMGj zW7BaZd5shHJJ)+NY@JlWjGAX3*&S6b0DAowFyZpTy=k634v zog~Mqn4U4^>dcwPYo^)!mi>3(^O3U&cl__E`JY+Q<(t-jc)HzVy8|y$t=J?~nrjyd zw&~h4RY(=~8y*vPIjwgfZ8PVVGhw$6Oe_AeYw!CliPyRMKJxo4@ccaQdFR}o%_(6Y z>oXpxzh_ref0UP&)EFe+_j`lGq%$X&lGkazU1xlD=BBm_0cWCful7BW{Ux!o?|#VH za{JtS%l1v_)tJP)CwQ$|`~9mXdYOgG#Q$COnU-QVvG~pHtqcDLwXP{UlM%ZlBCeTb zj+)r5RVs^R&VS+1es%Ut`$lQy1bNw=r_&OjJYO9%Z=#;z#+i!KUe37Q7;O^$tjJo= zblSW7AA|#(oo6Q1&9t+eIZ5Z`o#XzJ>lQzX&+KXO_g7iS_RRShah#sUe6`z%$JP!dND>nmEH$*$M1VFVHy$k?p zgxGrrRU<};0C55$Pl?SO{YTmBH}pL^G4uFAr|5fvrtK1QO#`xY9V>cw-a5maw`1kbm@@^c{|-%w zSoP&BJF2(tnX$?xF)}b5Vq#zr1bWNg)hQqt?5EVc621I_wAM+d^O_ArT)zM0I(_?; zghr+ki_5B2Ua{&w8IJF35H--V;QjkMj-&GH!cENl#c6JSVYRUn`7^BV&X~eB&!1D` zrbceplsxnGIiBG+bv8P^b7f??y39NC<(ytid%6C3VP@ZFZF{iry?#Y z)?+VYoM&HpzU=1yy%)4KU4qP%f2f#RENl^0{~U3$d%x|Lt1s57v~y*Bd0p{KSy3VA)b7dDF_i+lcHF6{> zJ`X(fUMAneSvl!Q!uD&e`*?ghb9xTT2feCZC?06%d*HnE9Cbmr=NEQL`@dZv=PZ3Q zIA~kL*;wVhAGfkCWi6gB)_Lfbm-oX7$E%m!;S=SzxGq`tejA&mM(ut6J^M;DX74e- zVEym(%lRuF{+QOh^j(z7+^cLHX?CSQrm-!Q$Z+|;Bu>Yje@}nSt_e5aaHB@ZBfF!@ z1;7aT1&k10c!ZSXC+p=USM*Mb^*>}F()RwlcGmmtn-vu%@d-N$3$q9vYn>ij-EwrT z>SKk&@%cYzI5ZvGJ+J@y+iE{;xm8N(^CQ+7Whcq8DyC;lxjJ*^@tSEizh(bj_XLCx}$NG#1>hIYV)gR@hB{c@g_x;}BFzL(* zrsQ>+Z`T>0ow=#)Lcp2m+^c<0WPeGl?7JUww%k7V-m-mDdNn5T?g?J2)_(u0iC$*m zGVy;`eWs<@O)P$Md+WmgL9J`b&SbC(l>M%$ulZxN)Z9w3jokH%6O8KP$4K1S52IrdR5;V3Xl zgn-c_1CN@J)QS@Q;M8PL*3$ZUz%)%5w8RKxmJm3yDu z$>e46rCQ%Firm + + + + + + + + + + + + j6lwx3rvEPO0vKtMup4NbeVu8nk= + + + + + + + UrXLDLBIta6skoV5/A8Q38GEw44= + + + MC0CFFrVLtRlkMc3Daon4BqqnkhCOlEaAhUAk8pH1iRNK+q1I+sisDTz2TFEALE= + + + +

...

+ UrXLDLBIta6skoV5/A8Q38GEw44= + UrXLDLBIta6skoV5/A8Q38GEw44= + UrXLDLBIta6skoV5/A8Q38GEw44= +
+
+
+ + + + this is a test of the + mixed content model + + + +
+ + + + + + + + + + + + j6lwx3rvEPO0vKtMup4NbeVu8nk= + + + + + + + UrXLDLBIta6skoV5/A8Q38GEw44= + + + MC0CFFrVLtRlkMc3Daon4BqqnkhCOlEaAhUAk8pH1iRNK+q1I+sisDTz2TFEALE= + + + +

UrXLDLBIta6skoV5/A8Q38GEw44=

+ UrXLDLBIta6skoV5/A8Q38GEw44= + UrXLDLBIta6skoV5/A8Q38GEw44= + UrXLDLBIta6skoV5/A8Q38GEw44= +
+
+
+ + + + this is a test of the + mixed content model + + + +
+
diff --git a/src/FlightCrew/tests/test_data/ocf_tests/SignaturesSatisfiesSchema_SatisfiesSchema.xml b/src/FlightCrew/tests/test_data/ocf_tests/SignaturesSatisfiesSchema_SatisfiesSchema.xml new file mode 100644 index 0000000..4e2ffe5 --- /dev/null +++ b/src/FlightCrew/tests/test_data/ocf_tests/SignaturesSatisfiesSchema_SatisfiesSchema.xml @@ -0,0 +1,85 @@ + + + + + + + + + + + + + j6lwx3rvEPO0vKtMup4NbeVu8nk= + + + + + + + UrXLDLBIta6skoV5/A8Q38GEw44= + + + MC0CFFrVLtRlkMc3Daon4BqqnkhCOlEaAhUAk8pH1iRNK+q1I+sisDTz2TFEALE= + + + +

UrXLDLBIta6skoV5/A8Q38GEw44=

+ UrXLDLBIta6skoV5/A8Q38GEw44= + UrXLDLBIta6skoV5/A8Q38GEw44= + UrXLDLBIta6skoV5/A8Q38GEw44= +
+
+
+ + + + this is a test of the + mixed content model + + + +
+ + + + + + + + + + + + j6lwx3rvEPO0vKtMup4NbeVu8nk= + + + + + + + UrXLDLBIta6skoV5/A8Q38GEw44= + + + MC0CFFrVLtRlkMc3Daon4BqqnkhCOlEaAhUAk8pH1iRNK+q1I+sisDTz2TFEALE= + + + +

UrXLDLBIta6skoV5/A8Q38GEw44=

+ UrXLDLBIta6skoV5/A8Q38GEw44= + UrXLDLBIta6skoV5/A8Q38GEw44= + UrXLDLBIta6skoV5/A8Q38GEw44= +
+
+
+ + + + this is a test of the + mixed content model + + + +
+
diff --git a/src/FlightCrew/tests/test_data/opf_tests/ContributorAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ContributorAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..a9d3e7e --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ContributorAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ContributorAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ContributorAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..86379de --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ContributorAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/CoverageAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/CoverageAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..8b6d7e1 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/CoverageAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/CoverageAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/CoverageAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..a186a02 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/CoverageAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/CreatorAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/CreatorAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..fcf8261 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/CreatorAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/CreatorAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/CreatorAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..315c4e0 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/CreatorAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/CreatorOrContributorRoleValid_BadValue.xml b/src/FlightCrew/tests/test_data/opf_tests/CreatorOrContributorRoleValid_BadValue.xml new file mode 100644 index 0000000..52a7758 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/CreatorOrContributorRoleValid_BadValue.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/CreatorOrContributorRoleValid_GoodValue.xml b/src/FlightCrew/tests/test_data/opf_tests/CreatorOrContributorRoleValid_GoodValue.xml new file mode 100644 index 0000000..043b0af --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/CreatorOrContributorRoleValid_GoodValue.xml @@ -0,0 +1,432 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAllowedChildren_ChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAllowedChildren_ChildrenOK.xml new file mode 100644 index 0000000..e2e354a --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAllowedChildren_ChildrenOK.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAllowedChildren_WrongChildren.xml b/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAllowedChildren_WrongChildren.xml new file mode 100644 index 0000000..c9897fb --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAllowedChildren_WrongChildren.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..0642dec --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..3b690b6 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DCMetadataAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/DateAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/DateAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..0e707a5 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DateAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/DateAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/DateAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..272cbbd --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DateAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/DateValid_BadValue.xml b/src/FlightCrew/tests/test_data/opf_tests/DateValid_BadValue.xml new file mode 100644 index 0000000..8d88eec --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DateValid_BadValue.xml @@ -0,0 +1,13 @@ + + + + 19997 + 197 + 1997-007 + 19970716 + 1997-07-16T19-20+01:00 + 1997-07-1619:20-01:00 + 1997-07-16T19:2001:00 + 1997-07-16T19:20:30,45+01:00 + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/DateValid_GoodValue.xml b/src/FlightCrew/tests/test_data/opf_tests/DateValid_GoodValue.xml new file mode 100644 index 0000000..84590d6 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DateValid_GoodValue.xml @@ -0,0 +1,18 @@ + + + + 1997 + 1997-07 + 1997-07-16 + 1997-07-16T19:20+01:00 + 1997-07-16T19:20-01:00 + 1997-07-16T19:20Z + 1997-07-16T19:20:30+01:00 + 1997-07-16T19:20:30-01:00 + 1997-07-16T19:20:30Z + 1997-07-16T19:20:30.45+01:00 + 1997-07-16T19:20:30.45-01:00 + 1997-07-16T19:20:30.45Z + 1997-07-16T19:20:30.452341324Z + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/DescriptionAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/DescriptionAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..d02f0f9 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DescriptionAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/DescriptionAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/DescriptionAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..0880714 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/DescriptionAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/FormatAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/FormatAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..2ddfa84 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/FormatAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/FormatAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/FormatAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..9ede694 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/FormatAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/GuideAllowedChildren_ChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/GuideAllowedChildren_ChildrenOK.xml new file mode 100644 index 0000000..629d4c2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/GuideAllowedChildren_ChildrenOK.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/GuideAllowedChildren_WrongChildren.xml b/src/FlightCrew/tests/test_data/opf_tests/GuideAllowedChildren_WrongChildren.xml new file mode 100644 index 0000000..17dcadb --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/GuideAllowedChildren_WrongChildren.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/GuideAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/GuideAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..8171397 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/GuideAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/GuideAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/GuideAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..3bff96d --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/GuideAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/IdentifierAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/IdentifierAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..68bd28e --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/IdentifierAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/IdentifierAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/IdentifierAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..88e075b --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/IdentifierAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/IdentifierPresent_HasIdentifier.xml b/src/FlightCrew/tests/test_data/opf_tests/IdentifierPresent_HasIdentifier.xml new file mode 100644 index 0000000..98195ef --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/IdentifierPresent_HasIdentifier.xml @@ -0,0 +1,6 @@ + + + + test + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/IdentifierPresent_NoIdentifier.xml b/src/FlightCrew/tests/test_data/opf_tests/IdentifierPresent_NoIdentifier.xml new file mode 100644 index 0000000..0bd0ca5 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/IdentifierPresent_NoIdentifier.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/IdsUnique_AllNotUnique.xml b/src/FlightCrew/tests/test_data/opf_tests/IdsUnique_AllNotUnique.xml new file mode 100644 index 0000000..103dfeb --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/IdsUnique_AllNotUnique.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/IdsUnique_AllUnique.xml b/src/FlightCrew/tests/test_data/opf_tests/IdsUnique_AllUnique.xml new file mode 100644 index 0000000..d9c680d --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/IdsUnique_AllUnique.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/IdsValid_BadValue.xml b/src/FlightCrew/tests/test_data/opf_tests/IdsValid_BadValue.xml new file mode 100644 index 0000000..826950f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/IdsValid_BadValue.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/IdsValid_GoodValue.xml b/src/FlightCrew/tests/test_data/opf_tests/IdsValid_GoodValue.xml new file mode 100644 index 0000000..9732455 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/IdsValid_GoodValue.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..468382c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_MissingAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_MissingAttributes.xml new file mode 100644 index 0000000..17bc5b7 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_MissingAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..f2d9925 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/content.opf b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/content.opf new file mode 100644 index 0000000..06585c9 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/content.opf @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test1.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test1.xhtml new file mode 100644 index 0000000..30d74d2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test1.xhtml @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test2.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test2.xhtml new file mode 100644 index 0000000..30d74d2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test2.xhtml @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test3.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test3.xhtml new file mode 100644 index 0000000..30d74d2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_AllFilesPresent/test3.xhtml @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/content.opf b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/content.opf new file mode 100644 index 0000000..06585c9 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/content.opf @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/test1.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/test1.xhtml new file mode 100644 index 0000000..30d74d2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/test1.xhtml @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/test3.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/test3.xhtml new file mode 100644 index 0000000..30d74d2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemFilesPresent_FilesMissing/test3.xhtml @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemHrefUnique_HrefsNotUnique.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemHrefUnique_HrefsNotUnique.xml new file mode 100644 index 0000000..9d56330 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemHrefUnique_HrefsNotUnique.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemHrefUnique_HrefsUnique.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemHrefUnique_HrefsUnique.xml new file mode 100644 index 0000000..297872d --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemHrefUnique_HrefsUnique.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemHrefValid_BadValue.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemHrefValid_BadValue.xml new file mode 100644 index 0000000..af961d9 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemHrefValid_BadValue.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemHrefValid_GoodValue.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemHrefValid_GoodValue.xml new file mode 100644 index 0000000..c8a414b --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemHrefValid_GoodValue.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemLinearValid_BadValue.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemLinearValid_BadValue.xml new file mode 100644 index 0000000..6a4f89b --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemLinearValid_BadValue.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemLinearValid_GoodValue.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemLinearValid_GoodValue.xml new file mode 100644 index 0000000..4484af1 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemLinearValid_GoodValue.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemMediaTypeValid_BadValue.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemMediaTypeValid_BadValue.xml new file mode 100644 index 0000000..ec596d2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemMediaTypeValid_BadValue.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemMediaTypeValid_GoodValue.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemMediaTypeValid_GoodValue.xml new file mode 100644 index 0000000..54cf821 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemMediaTypeValid_GoodValue.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemPresent_HasItem.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemPresent_HasItem.xml new file mode 100644 index 0000000..b87edd9 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemPresent_HasItem.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemPresent_NoItem.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemPresent_NoItem.xml new file mode 100644 index 0000000..4d21827 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemPresent_NoItem.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespaceNotPresent.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespaceNotPresent.xml new file mode 100644 index 0000000..c8b3d31 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespaceNotPresent.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespacePresent.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespacePresent.xml new file mode 100644 index 0000000..0b84d14 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemReqModsOnlyWithReqNS_RequiredNamespacePresent.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..9195b33 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_MissingAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_MissingAttributes.xml new file mode 100644 index 0000000..346733b --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_MissingAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..a420b84 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemrefAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefUnique_AllNotUnique.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefUnique_AllNotUnique.xml new file mode 100644 index 0000000..e3cb641 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefUnique_AllNotUnique.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefUnique_AllUnique.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefUnique_AllUnique.xml new file mode 100644 index 0000000..eed98fd --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefUnique_AllUnique.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefValid_IdDoesNotExist.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefValid_IdDoesNotExist.xml new file mode 100644 index 0000000..ad74d8f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefValid_IdDoesNotExist.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefValid_IdExists.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefValid_IdExists.xml new file mode 100644 index 0000000..9d908a0 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemrefIdrefValid_IdExists.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemrefPresent_HasItemref.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemrefPresent_HasItemref.xml new file mode 100644 index 0000000..74cd1f8 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemrefPresent_HasItemref.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ItemrefPresent_NoItemref.xml b/src/FlightCrew/tests/test_data/opf_tests/ItemrefPresent_NoItemref.xml new file mode 100644 index 0000000..e24c318 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ItemrefPresent_NoItemref.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/LanguagePresent_HasLanguage.xml b/src/FlightCrew/tests/test_data/opf_tests/LanguagePresent_HasLanguage.xml new file mode 100644 index 0000000..232f8fd --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/LanguagePresent_HasLanguage.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/LanguagePresent_NoLanguage.xml b/src/FlightCrew/tests/test_data/opf_tests/LanguagePresent_NoLanguage.xml new file mode 100644 index 0000000..072d82c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/LanguagePresent_NoLanguage.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ManifestAllowedChildren_ChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/ManifestAllowedChildren_ChildrenOK.xml new file mode 100644 index 0000000..b87edd9 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ManifestAllowedChildren_ChildrenOK.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ManifestAllowedChildren_WrongChildren.xml b/src/FlightCrew/tests/test_data/opf_tests/ManifestAllowedChildren_WrongChildren.xml new file mode 100644 index 0000000..51e802c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ManifestAllowedChildren_WrongChildren.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ManifestAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ManifestAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..b5a4a2c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ManifestAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ManifestAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ManifestAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..69cbb33 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ManifestAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..a0e0dda --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_MissingAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_MissingAttributes.xml new file mode 100644 index 0000000..b11bd44 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_MissingAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..4e076a6 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/MetaAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_DCXChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_DCXChildrenOK.xml new file mode 100644 index 0000000..ed11964 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_DCXChildrenOK.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_DCXChildrenWrong.xml b/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_DCXChildrenWrong.xml new file mode 100644 index 0000000..ed17dd4 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_DCXChildrenWrong.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_StdChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_StdChildrenOK.xml new file mode 100644 index 0000000..8e32994 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_StdChildrenOK.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_StdChildrenWrong.xml b/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_StdChildrenWrong.xml new file mode 100644 index 0000000..19fef7c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/MetadataAllowedChildren_StdChildrenWrong.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/MetadataAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/MetadataAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..93834bb --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/MetadataAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/MetadataAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/MetadataAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..a266147 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/MetadataAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/NcxPresent_HasNcx.xml b/src/FlightCrew/tests/test_data/opf_tests/NcxPresent_HasNcx.xml new file mode 100644 index 0000000..869ba47 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/NcxPresent_HasNcx.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/NcxPresent_NoNcx.xml b/src/FlightCrew/tests/test_data/opf_tests/NcxPresent_NoNcx.xml new file mode 100644 index 0000000..9720e0b --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/NcxPresent_NoNcx.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/OneManifest_NoManifest.xml b/src/FlightCrew/tests/test_data/opf_tests/OneManifest_NoManifest.xml new file mode 100644 index 0000000..a66495d --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/OneManifest_NoManifest.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/OneManifest_OneManifest.xml b/src/FlightCrew/tests/test_data/opf_tests/OneManifest_OneManifest.xml new file mode 100644 index 0000000..d26b89f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/OneManifest_OneManifest.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/OneManifest_TwoManifests.xml b/src/FlightCrew/tests/test_data/opf_tests/OneManifest_TwoManifests.xml new file mode 100644 index 0000000..bd4b49d --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/OneManifest_TwoManifests.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/OneMetadata_NoMetadata.xml b/src/FlightCrew/tests/test_data/opf_tests/OneMetadata_NoMetadata.xml new file mode 100644 index 0000000..a66495d --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/OneMetadata_NoMetadata.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/OneMetadata_OneMetadata.xml b/src/FlightCrew/tests/test_data/opf_tests/OneMetadata_OneMetadata.xml new file mode 100644 index 0000000..1fe52e8 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/OneMetadata_OneMetadata.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/OneMetadata_TwoMetadatas.xml b/src/FlightCrew/tests/test_data/opf_tests/OneMetadata_TwoMetadatas.xml new file mode 100644 index 0000000..f9d9aef --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/OneMetadata_TwoMetadatas.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/OneSpine_NoSpine.xml b/src/FlightCrew/tests/test_data/opf_tests/OneSpine_NoSpine.xml new file mode 100644 index 0000000..a66495d --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/OneSpine_NoSpine.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/OneSpine_OneSpine.xml b/src/FlightCrew/tests/test_data/opf_tests/OneSpine_OneSpine.xml new file mode 100644 index 0000000..8301ece --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/OneSpine_OneSpine.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/OneSpine_TwoSpines.xml b/src/FlightCrew/tests/test_data/opf_tests/OneSpine_TwoSpines.xml new file mode 100644 index 0000000..3a54aa6 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/OneSpine_TwoSpines.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageAllowedChildren_ChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageAllowedChildren_ChildrenOK.xml new file mode 100644 index 0000000..9b78a46 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageAllowedChildren_ChildrenOK.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageAllowedChildren_WrongChildren.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageAllowedChildren_WrongChildren.xml new file mode 100644 index 0000000..412024a --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageAllowedChildren_WrongChildren.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..5ec0fb4 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_MissingAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_MissingAttributes.xml new file mode 100644 index 0000000..d138025 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_MissingAttributes.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..1992337 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageIsRoot_PackageNotRoot.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageIsRoot_PackageNotRoot.xml new file mode 100644 index 0000000..9772efe --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageIsRoot_PackageNotRoot.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageIsRoot_PackageRoot.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageIsRoot_PackageRoot.xml new file mode 100644 index 0000000..a66495d --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageIsRoot_PackageRoot.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageUniqueIdentifierValid_IdDoesNotExist.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageUniqueIdentifierValid_IdDoesNotExist.xml new file mode 100644 index 0000000..6059fcb --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageUniqueIdentifierValid_IdDoesNotExist.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageUniqueIdentifierValid_IdExists.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageUniqueIdentifierValid_IdExists.xml new file mode 100644 index 0000000..a2b54bc --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageUniqueIdentifierValid_IdExists.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageVersionCorrect_BadPackageVersion.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageVersionCorrect_BadPackageVersion.xml new file mode 100644 index 0000000..8542a31 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageVersionCorrect_BadPackageVersion.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PackageVersionCorrect_GoodPackageVersion.xml b/src/FlightCrew/tests/test_data/opf_tests/PackageVersionCorrect_GoodPackageVersion.xml new file mode 100644 index 0000000..7a9a506 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PackageVersionCorrect_GoodPackageVersion.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PublisherAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/PublisherAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..122bc9f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PublisherAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/PublisherAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/PublisherAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..eda2287 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/PublisherAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/content.opf b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/content.opf new file mode 100644 index 0000000..0c82b42 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/content.opf @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/cover.gif b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/cover.gif new file mode 100644 index 0000000..6132a64 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/cover.gif @@ -0,0 +1 @@ +eee \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/main.css b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/main.css new file mode 100644 index 0000000..4461f89 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/main.css @@ -0,0 +1,2 @@ +@import url("subdir/second.css"); +@import "subdir/third.css"; \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/subdir/second.css b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/subdir/second.css new file mode 100644 index 0000000..6ca93f7 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/subdir/second.css @@ -0,0 +1,28 @@ +@font-face { + font-family: "Fontin"; + font-weight: normal; + font-style: normal; + /* The space between the src and the colon is intentional and part of a test! */ + src : url(../font1.ttf); +} + +@font-face { + font-family: "Fontin"; + font-weight: bold; + font-style: normal; + src: url(../font2.ttf); +} + +@font-face { + font-family: "Fontin"; + font-weight: normal; + font-style: italic; + src: url(../font3.ttf); +} + +body { + background-image: url('../background2.gif'); + background: #eee; /* This needs to be ignored, it's not a path. */ + background-image: none; /* This as well. */ + background: black url("../background1.gif") gray 50% repeat fixed; +} diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/subdir/third.css b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/subdir/third.css new file mode 100644 index 0000000..b7751ed --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/subdir/third.css @@ -0,0 +1,13 @@ + +/* + +This comment is part of a test! + +@font-face { + font-family: "Something"; + font-weight: bold; + font-style: normal; + src: url(../font_not_in_manifest.ttf); +} + +*/ \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test1.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test1.xhtml new file mode 100644 index 0000000..5817cd2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test1.xhtml @@ -0,0 +1,14 @@ + + + + + + + + +

+ + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test2.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test2.xhtml new file mode 100644 index 0000000..c551782 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test2.xhtml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test3.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test3.xhtml new file mode 100644 index 0000000..58a839f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_AllOk/test3.xhtml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/content.opf b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/content.opf new file mode 100644 index 0000000..b6f00b8 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/content.opf @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/cover.gif b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/cover.gif new file mode 100644 index 0000000..6132a64 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/cover.gif @@ -0,0 +1 @@ +eee \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/main.css b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/main.css new file mode 100644 index 0000000..027020c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/main.css @@ -0,0 +1 @@ +eueueu \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test1.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test1.xhtml new file mode 100644 index 0000000..867ef48 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test1.xhtml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test2.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test2.xhtml new file mode 100644 index 0000000..c551782 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test2.xhtml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test3.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test3.xhtml new file mode 100644 index 0000000..58a839f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ManifestResourceNotReachable/test3.xhtml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/content.opf b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/content.opf new file mode 100644 index 0000000..678dcbe --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/content.opf @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/cover.gif b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/cover.gif new file mode 100644 index 0000000..6132a64 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/cover.gif @@ -0,0 +1 @@ +eee \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/main.css b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/main.css new file mode 100644 index 0000000..027020c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/main.css @@ -0,0 +1 @@ +eueueu \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test1.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test1.xhtml new file mode 100644 index 0000000..867ef48 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test1.xhtml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test2.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test2.xhtml new file mode 100644 index 0000000..c551782 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test2.xhtml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test3.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test3.xhtml new file mode 100644 index 0000000..58a839f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableDocsNotInSpine/test3.xhtml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/content.opf b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/content.opf new file mode 100644 index 0000000..a4ba9c5 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/content.opf @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/cover.gif b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/cover.gif new file mode 100644 index 0000000..6132a64 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/cover.gif @@ -0,0 +1 @@ +eee \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/main.css b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/main.css new file mode 100644 index 0000000..027020c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/main.css @@ -0,0 +1 @@ +eueueu \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test1.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test1.xhtml new file mode 100644 index 0000000..e63a61c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test1.xhtml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test2.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test2.xhtml new file mode 100644 index 0000000..c551782 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test2.xhtml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test3.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test3.xhtml new file mode 100644 index 0000000..58a839f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test3.xhtml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test4.xhtml b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test4.xhtml new file mode 100644 index 0000000..bbefe53 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/test4.xhtml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/toc.ncx b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/toc.ncx new file mode 100644 index 0000000..5072434 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReachabilityAnalysis_ReachableResourceNotInManifest/toc.ncx @@ -0,0 +1,24 @@ + + + + + + + Chapter I + + + + + + Chapter II + + + + + + Chapter III + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..e8f8d28 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_MissingAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_MissingAttributes.xml new file mode 100644 index 0000000..890cf3b --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_MissingAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..aacb707 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReferenceAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReferenceTypeValid_BadValue.xml b/src/FlightCrew/tests/test_data/opf_tests/ReferenceTypeValid_BadValue.xml new file mode 100644 index 0000000..221bec1 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReferenceTypeValid_BadValue.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ReferenceTypeValid_GoodValue.xml b/src/FlightCrew/tests/test_data/opf_tests/ReferenceTypeValid_GoodValue.xml new file mode 100644 index 0000000..c070dbb --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ReferenceTypeValid_GoodValue.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/RelationAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/RelationAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..6d4d09d --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/RelationAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/RelationAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/RelationAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..0c1f240 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/RelationAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/RightsAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/RightsAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..bfdcd33 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/RightsAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/RightsAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/RightsAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..a12af88 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/RightsAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..e9d54a4 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_MissingAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_MissingAttributes.xml new file mode 100644 index 0000000..86f1bfc --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_MissingAttributes.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..80410eb --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SiteAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SourceAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SourceAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..bd1b86e --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SourceAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SourceAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SourceAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..d2952fb --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SourceAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SpineAllowedChildren_ChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/SpineAllowedChildren_ChildrenOK.xml new file mode 100644 index 0000000..74cd1f8 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SpineAllowedChildren_ChildrenOK.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SpineAllowedChildren_WrongChildren.xml b/src/FlightCrew/tests/test_data/opf_tests/SpineAllowedChildren_WrongChildren.xml new file mode 100644 index 0000000..c3ebaa2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SpineAllowedChildren_WrongChildren.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..a4d4a93 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_MissingAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_MissingAttributes.xml new file mode 100644 index 0000000..044bf4f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_MissingAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..453a635 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SpineAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SpineTocValid_BadValue.xml b/src/FlightCrew/tests/test_data/opf_tests/SpineTocValid_BadValue.xml new file mode 100644 index 0000000..8a94d4f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SpineTocValid_BadValue.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SpineTocValid_GoodValue.xml b/src/FlightCrew/tests/test_data/opf_tests/SpineTocValid_GoodValue.xml new file mode 100644 index 0000000..41c1526 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SpineTocValid_GoodValue.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SubjectAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SubjectAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..accf112 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SubjectAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/SubjectAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/SubjectAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..e18793a --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/SubjectAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TitleAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/TitleAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..ad58a5f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TitleAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TitleAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/TitleAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..22c91bd --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TitleAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TitlePresent_HasTitle.xml b/src/FlightCrew/tests/test_data/opf_tests/TitlePresent_HasTitle.xml new file mode 100644 index 0000000..9fad4f2 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TitlePresent_HasTitle.xml @@ -0,0 +1,6 @@ + + + + Three Men in a Boat + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TitlePresent_NoTitle.xml b/src/FlightCrew/tests/test_data/opf_tests/TitlePresent_NoTitle.xml new file mode 100644 index 0000000..0374702 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TitlePresent_NoTitle.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TourAllowedChildren_ChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/TourAllowedChildren_ChildrenOK.xml new file mode 100644 index 0000000..0e364d3 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TourAllowedChildren_ChildrenOK.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TourAllowedChildren_WrongChildren.xml b/src/FlightCrew/tests/test_data/opf_tests/TourAllowedChildren_WrongChildren.xml new file mode 100644 index 0000000..eec1fb4 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TourAllowedChildren_WrongChildren.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..5cf0978 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_MissingAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_MissingAttributes.xml new file mode 100644 index 0000000..995bd31 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_MissingAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..dd17b38 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TourAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ToursAllowedChildren_ChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/ToursAllowedChildren_ChildrenOK.xml new file mode 100644 index 0000000..d15f26f --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ToursAllowedChildren_ChildrenOK.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ToursAllowedChildren_WrongChildren.xml b/src/FlightCrew/tests/test_data/opf_tests/ToursAllowedChildren_WrongChildren.xml new file mode 100644 index 0000000..10c45a3 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ToursAllowedChildren_WrongChildren.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ToursAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ToursAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..d431bea --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ToursAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/ToursAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/ToursAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..611bf11 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/ToursAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TypeAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/TypeAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..3bc6ed6 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TypeAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/TypeAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/TypeAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..91aeb73 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/TypeAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/XMetadataAllowedChildren_ChildrenOK.xml b/src/FlightCrew/tests/test_data/opf_tests/XMetadataAllowedChildren_ChildrenOK.xml new file mode 100644 index 0000000..ddc390c --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/XMetadataAllowedChildren_ChildrenOK.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/XMetadataAllowedChildren_WrongChildren.xml b/src/FlightCrew/tests/test_data/opf_tests/XMetadataAllowedChildren_WrongChildren.xml new file mode 100644 index 0000000..720ce44 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/XMetadataAllowedChildren_WrongChildren.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/XMetadataAttributesPresent_AllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/XMetadataAttributesPresent_AllowedAttributes.xml new file mode 100644 index 0000000..5777bdc --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/XMetadataAttributesPresent_AllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/opf_tests/XMetadataAttributesPresent_NotAllowedAttributes.xml b/src/FlightCrew/tests/test_data/opf_tests/XMetadataAttributesPresent_NotAllowedAttributes.xml new file mode 100644 index 0000000..3f05470 --- /dev/null +++ b/src/FlightCrew/tests/test_data/opf_tests/XMetadataAttributesPresent_NotAllowedAttributes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchema.xhtml b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchema.xhtml new file mode 100644 index 0000000..6419fa9 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchema.xhtml @@ -0,0 +1,15 @@ + + + + +Chapter 1 + + + + +
+
+ eee +
+
+ \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchemaNoDtd.xhtml b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchemaNoDtd.xhtml new file mode 100644 index 0000000..97f20e4 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchemaNoDtd.xhtml @@ -0,0 +1,66 @@ + + + + Chapter 1 + + + +
+
+ + + + + + + Robert E. Howard + Savage Stories of Conan + + 19326 + + + + + + +
+ + eee + + + + 2 + * + x + + + + + y + - + z + + + + + +

2x + y - z

+
+ +
+ + diff --git a/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchema.xhtml b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchema.xhtml new file mode 100644 index 0000000..366f392 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchema.xhtml @@ -0,0 +1,392 @@ + + + + +Chapter 1 + + + + +
+
Three Men in a Boat
+(TO SAY NOTHING OF THE DOG) +
+ +
+

CHAPTER I.

+

Three Invalids. - Sufferings of George +and Harris. - A victim to one hundred and seven fatal maladies. - +Useful prescriptions. - Cure for liver complaint in children. - We +agree that we are overworked, and need rest. - A week on the rolling +deep? - George suggests the river. - Montmorency lodges an objection. - +Original motion carried by majority of three to one.

+ +
T
+

HERE were four of us — George, and William Samuel Harris, and myself, and Montmorency. We were sitting in my room, smoking, and talking about how bad we were — bad from a medical point of view I mean, of course.

+ +

We were all feeling seedy, and + we were getting quite nervous about it. Harris said he felt such extraordinary + fits of giddiness come over him at times, that he hardly knew what he was + doing; and then George said that he had fits of giddiness too, and + hardly knew what he was doing. With me, it was my liver that was + out of order. I knew it was my liver that was out of order, because I had + just been reading a patent liver-pill circular, in which were detailed the + various symptoms by which a man could tell when his liver was out of order. + I had them all.

+

It is a most extraordinary thing, but I never read a patent medicine advertisement without being impelled to the conclusion that I am suffering from the particular disease therein dealt with in its most virulent form. The diagnosis seems in every case to correspond exactly with all the sensations that I have ever felt.

+ +

I remember going to the British Museum one +day to read up the treatment for some slight ailment of which I had a +touch — hay fever, I fancy it was. I got down the book, and read all I +came to read; and then, in an unthinking moment, I idly turned the +leaves, and began to indolently study diseases, generally. I forget +which was the first distemper I plunged into — some fearful, +devastating scourge, I know — and, before I had glanced half down the +list of “premonitory symptoms,” it was borne in upon me that I had +fairly got it.

+ +

I sat for awhile, frozen with horror; and then, in the listlessness of despair, I again turned over the pages. I came to typhoid fever - read the symptoms - discovered that I had typhoid fever, must have had it for months without knowing it - wondered what else I had got; turned up St. Vitus's Dance - found, as I expected, that I had that too, - began to get interested in my case, and determined to sift it to the bottom, and so started alphabetically - read up ague, and learnt that I was sickening for it, and that the acute stage would commence in about another fortnight. Bright's disease, I was relieved to find, I had only in a modified form, and, so far as that was concerned, I might live for years. Cholera I had, with severe complications; and diphtheria I seemed to have been born with. I plodded conscientiously through the twenty-six letters, and the only malady I could conclude I had not got was housemaid's knee.

+ +

I felt rather hurt about this at first; it +seemed somehow to be a sort of slight. Why hadn’t I got housemaid’s +knee? Why this invidious reservation? After a while, however, less +grasping feelings prevailed. I reflected that I had every other known +malady in the pharmacology, and I grew less selfish, and determined to +do without housemaid’s knee. Gout, in its most malignant stage, it +would appear, had seized me without my being aware of it; and zymosis I +had evidently been suffering with from boyhood. There were no more +diseases after zymosis, so I concluded there was nothing else the +matter with me.

+ +

I sat and pondered. I thought what an +interesting case I must be from a +medical point of view, what an acquisition I should be to a class! +Students would have no need to “walk the hospitals,” if they had me. I +was a hospital in myself. All they need do would be to walk round me, +and, after that, take their diploma.

+ +

Then I wondered how long I had to live. I +tried to examine myself. I felt my pulse. I could not at first feel any +pulse at all. Then, all of a sudden, it seemed to start off. I pulled +out my watch and timed it. I made it a hundred and forty-seven to the +minute. I tried to feel my heart. I could not feel my heart. It had +stopped beating. I have since been induced to come to the opinion that +it must have been there all the time, and must have been beating, but I +cannot account for it. I patted myself all over my front, from what I +call my waist up to my head, and I went a bit round each side, and a +little way up the back. But I could not feel or hear anything. I tried +to look at my tongue. I stuck it out as far as ever it would go, and I +shut one eye, and tried to examine it with the other. I could only see +the tip, and the only thing that I could gain from that was to feel +more certain than before that I had scarlet fever. +

+ +

I had walked into that reading-room a happy, healthy man. I crawled out a decrepit wreck.

+ +

I went to my medical man. He is an old chum +of mine, and feels my pulse, and looks at my tongue, and talks about +the weather, all for nothing, when I fancy I’m ill; so I thought I +would do him a good turn by going to him now. “What a doctor wants,” I +said, “is practice. He shall have me. He will get more practice out of +me than out of seventeen hundred of your ordinary, commonplace +patients, with only one or two diseases each.” So I went straight up +and saw him, and he said: +

+

“Well, what’s the matter with you?”

+

I said: “I will not take up your time, dear boy, with telling you what is the +matter with me. Life is brief, and you might pass away before I had finished. But I will tell you what is not +the matter with me. I have not got housemaid’s knee. Why I have not got +housemaid’s knee, I cannot tell you; but the fact remains that I have +not got it. Everything else, however, I have got.”

+ +

And I told him how I came to discover it all.

+ +

Then he opened me and looked down me, and clutched hold of my wrist, and +then he hit me over the chest when I wasn’t expecting it — a cowardly +thing to do, I call it — and immediately afterwards butted me with the +side of his head. After that, he sat down and wrote out a prescription, +and folded it up and gave it me, and I put it in my pocket and went out.

+ +

I did not open it. I took it to the nearest chemist’s, and handed it in. +The man read it, and then handed it back.

+ +

He said he didn’t keep it. + +

I said: “You are a chemist?” + +

He said: “I am a chemist. If I was a co-operative stores and family hotel +combined, I might be able to oblige you. Being only a chemist hampers +me.”

+ +

I read the prescription. It ran:

+
+

“1 lb. beefsteak, with

+

1 pt. bitter beer

+

every 6 hours.

+

1 ten-mile walk every morning.

+

1 bed at 11 sharp every night.

+
+

And don’t stuff up your head with things you don’t understand.”

+ +

I followed the directions, with the happy result — speaking for myself — that my life was preserved, and is still going on.

+ +

In the present instance, going back to the liver-pill circular, I had the +symptoms, beyond all mistake, the chief among them being “a general disinclination to work of any kind.”

+ +

What I suffer in that way no tongue can +tell. From my earliest infancy I have been a martyr to it. As a boy, +the disease hardly ever left me for a day. They did not know, then, +that it was my liver. Medical science was in a far less advanced state +than now, and they used to put it down to laziness.

+ +

“Why, you skulking little devil, you,” they +would say, “get up and do something for your living, can’t you?” — not +knowing, of course, that I was ill.

+

And they didn’t give me pills; they gave me +clumps on the side of the head. And, strange as it may appear, those +clumps on the head often cured me — for the time being. I have known +one clump on the head have more effect upon my liver, and make me feel +more anxious to go straight away then and there, and do what was wanted +to be done, without further loss of time, than a whole box of pills +does now.

+ +

You know, it often is so — those simple, old-fashioned remedies are sometimes more efficacious than all the dispensary stuff.

+ +

We sat there for half-an-hour, describing to +each other our maladies. I explained to George and William Harris how I +felt when I got up in the morning, and William Harris told us how he +felt when he went to bed; and George stood on the hearth-rug, and gave +us a clever and powerful piece of acting, illustrative of how he felt +in the night.

+

George fancies he is ill; but there’s never anything really the matter +with him, you know.

+ +

At this point, Mrs. Poppets knocked at the +door to know if we were ready for supper. We smiled sadly at one +another, and said we supposed we had better try to swallow a bit. +Harris said a little something in one’s stomach often kept the disease +in check; and Mrs. Poppets brought the tray in, and we drew up to the +table, and toyed with a little steak and onions, and some rhubarb tart.

+ +

I must have been very weak at the time; +because I know, after the first half-hour or so, I seemed to take no +interest whatever in my food — an unusual thing for me — and I didn’t +want any cheese.

+ +

This duty done, we refilled our glasses, +lit our pipes, and resumed the discussion upon our state of health. +What it was that was actually the matter with us, we none of us could +be sure of; but the unanimous opinion was that it — whatever it was - +had been brought on by overwork.

+ +

“What we want is rest,” said Harris.

+ +

“Rest and a complete change,” said George. +“The overstrain upon our brains has produced a general depression +throughout the system. Change of scene, and absence of the necessity +for thought, will restore the mental equilibrium.”

+ +

George has a cousin, who is usually +described in the charge-sheet as a medical student, so that he +naturally has a somewhat family-physicianary way of putting things.

+ +

I agreed with George, and suggested that we +should seek out some retired and old-world spot, far from the madding +crowd, and dream away a sunny week among its drowsy lanes — some +half-forgotten nook, hidden away by the fairies, out of reach of the +noisy world — some quaint-perched eyrie on the cliffs of Time, from +whence the surging waves of the nineteenth century would sound far-off +and faint.

+ +

Harris said he thought it would be humpy. +He said he knew the sort of place I meant; where everybody went to bed +at eight o’clock, and you couldn’t get a Referee for love or money, and had to walk ten miles to get your baccy.

+ +

“No,” said Harris, “if you want rest and change, you can’t beat a sea trip.”

+ +

I objected to the sea trip strongly. A sea +trip does you good when you are going to have a couple of months of it, +but, for a week, it is wicked.

+ +

You start on Monday with the idea implanted +in your bosom that you are going to enjoy yourself. You wave an airy +adieu to the boys on shore, light your biggest pipe, and swagger about +the deck as if you were Captain Cook, Sir Francis Drake, and +Christopher Columbus all rolled into one. On Tuesday, you wish you +hadn’t come. On Wednesday, Thursday, and Friday, you wish you were +dead. On Saturday, you are able to swallow a little beef tea, and to +sit up on deck, and answer with a wan, sweet smile when kind-hearted +people ask you how you feel now. On Sunday, you +begin to walk about again, and take solid food. And on Monday morning, +as, with your bag and umbrella in your hand, you stand by the gunwale, +waiting to step ashore, you begin to thoroughly like it.

+ +

I remember my brother-in-law going for a +short sea trip once, for the benefit of his health. He took a return +berth from London to Liverpool; and when he got to Liverpool, the only +thing he was anxious about was to sell that return ticket.

+ +

It was offered round the town at a +tremendous reduction, so I am told; and was eventually sold for +eighteenpence to a bilious-looking youth who had just been advised by +his medical men to go to the sea-side, and take exercise.

+ +

“Sea-side!” said my brother-in-law, +pressing the ticket affectionately into his hand; “why, you’ll have +enough to last you a lifetime; and as for exercise! why, you’ll get +more exercise, sitting down on that ship, than you would turning +somersaults on dry land.”

+ +

He himself — my brother-in-law — came back by train. He said the North-Western Railway was healthy enough for him.

+ +

Another fellow I knew went for a week’s +voyage round the coast, and, before they started, the steward came to +him to ask whether he would pay for each meal as he had it, or arrange +beforehand for the whole series.

+

The steward recommended the latter course, +as it would come so much cheaper. He said they would do him for the +whole week at two pounds five. He said for breakfast there would be +fish, followed by a grill. Lunch was at one, and consisted of four +courses. Dinner at six — soup, fish, entree, joint, poultry, salad, +sweets, cheese, and dessert. And a light meat supper at ten. +

+ +

My friend thought he would close on the two-pound-five job (he is a hearty eater), and did so.

+ +

Lunch came just as they were off Sheerness. +He didn’t feel so hungry as he thought he should, and so contented +himself with a bit of boiled beef, and some strawberries and cream. He +pondered a good deal during the afternoon, and at one time it seemed to +him that he had been eating nothing but boiled beef for weeks, and at +other times it seemed that he must have been living on strawberries and +cream for years.

+ +

Neither the beef nor the strawberries and cream seemed happy, either — seemed discontented like.

+ +

At six, they came and told him dinner was +ready. The announcement aroused no enthusiasm within him, but he felt +that there was some of that two-pound-five to be worked off, and he +held on to ropes and things and went down. A pleasant odour of onions +and hot ham, mingled with fried fish and greens, greeted him at the +bottom of the ladder; and then the steward came up with an oily smile, +and said:

+

“What can I get you, sir?”

+ +

“Get me out of this,” was the feeble reply.

+ +
+

And they ran him up quick, and propped him up, over to leeward, and left him.

+ +

For the next four days he lived a simple and +blameless life on thin captain’s biscuits (I mean that the biscuits +were thin, not the captain) and soda-water; but, towards Saturday, he +got uppish, and went in for weak tea and dry toast, and on Monday he +was gorging himself on chicken broth. He left the ship on Tuesday, and +as it steamed away from the landing-stage he gazed after it +regretfully.

+ +

“There she goes,” he said, “there she goes, with two pounds’ worth of food on board that belongs to me, and that I haven’t had.”

+ +

He said that if they had given him another day he thought he could have put it straight.

+ +

So I set my face against the sea trip. Not, +as I explained, upon my own account. I was never queer. But I was +afraid for George. George said he should be all right, and would rather +like it, but he would advise Harris and me not to think of it, as he +felt sure we should both be ill. Harris said that, to himself, it was +always a mystery how people managed to get sick at sea — said he +thought people must do it on purpose, from affectation — said he had +often wished to be, but had never been able.

+ +

Then he told us anecdotes of how he had +gone across the Channel when it was so rough that the passengers had to +be tied into their berths, and he and the captain were the only two +living souls on board who were not ill. Sometimes it was he and the +second mate who were not ill; but it was generally he and one other +man. If not he and another man, then it was he by himself.

+ +

It is a curious fact, but nobody ever is +sea-sick — on land. At sea, you come across plenty of people very bad +indeed, whole boat-loads of them; but I never met a man yet, on land, +who had ever known at all what it was to be sea-sick. Where the +thousands upon thousands of bad sailors that swarm in every ship hide +themselves when they are on land is a mystery.

+ +

If most men were like a fellow I saw on the +Yarmouth boat one day, I could account for the seeming enigma easily +enough. It was just off Southend Pier, I recollect, and he was leaning +out through one of the port-holes in a very dangerous position. I went +up to him to try and save him.

+ +

“Hi! come further in,” I said, shaking him by the shoulder. “You’ll be overboard.”

+ +

“Oh my! I wish I was,” was the only answer I could get; and there I had to leave him.

+ +

Three weeks afterwards, I met him in the +coffee-room of a Bath hotel, talking about his voyages, and explaining, +with enthusiasm, how he loved the sea.

+ +

“Good sailor!” he replied in answer to a mild young man’s envious query; “well, I did feel a little queer once, I confess. It was off Cape Horn. The vessel was wrecked the next morning.”

+ +

I said: “Weren’t you a little shaky by Southend Pier one day, and wanted to be +thrown overboard?”

+ +

“Southend Pier!” he replied, with a puzzled expression.

+ +

“Yes; going down to Yarmouth, last Friday three weeks.”

+ +

“Oh, ah — yes,” he answered, brightening up; +“I remember now. I did have a headache that afternoon. It was the +pickles, you know. They were the most disgraceful pickles I ever tasted +in a respectable boat. Did you have any?”

+ +

For myself, I have discovered an excellent +preventive against sea-sickness, in balancing myself. You stand in the +centre of the deck, and, as the ship heaves and pitches, you move your +body about, so as to keep it always straight. When the front of the +ship rises, you lean forward, till the deck almost touches your nose; +and when its back end gets up, you lean backwards. This is all very +well for an hour or two; but you can’t balance yourself for a week.

+ +

George said:

+

   “Let’s go up the river.”

+ +

He said we should have fresh air, exercise +and quiet; the constant change of scene would occupy our minds +(including what there was of Harris’s); and the hard work would give us +a good appetite, and make us sleep well.

+ +

Harris said he didn’t think George ought to +do anything that would have a tendency to make him sleepier than he +always was, as it might be dangerous.

+ +

He said he didn’t very well understand how +George was going to sleep any more than he did now, seeing that there +were only twenty-four hours in each day, summer and winter alike; but +thought that if he did sleep any more, he might just as well be dead, and so save his board and lodging.

+ +

Harris said, however, that the river would suit him to a “T.” I don’t +know what a “T” is (except a sixpenny one, which includes bread-and- +butter and cake ad lib., and is cheap at the price, if you haven’t had +any dinner). It seems to suit everybody, however, which is greatly to +its credit.

+ +
+

It suited me to a “T” too, and Harris and I both said it was a good idea +of George’s; and we said it in a tone that seemed to somehow imply that +we were surprised that George should have come out so sensible. +

+ +

The only one who was not struck with the suggestion was Montmorency. He never did care for the river, did Montmorency.

+ +

“It’s all very well for you fellows,” he +says; “you like it, but I don’t. There’s nothing for me to do. Scenery +is not in my line, and I don’t smoke. If I see a rat, you won’t stop; +and if I go to sleep, you get fooling about with the boat, and slop me +overboard. If you ask me, I call the whole thing bally foolishness.”

+ +

We were three to one, however, and the motion was carried.

+
+ \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchemaNoDtd.xhtml b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchemaNoDtd.xhtml new file mode 100644 index 0000000..2d0ed3b --- /dev/null +++ b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchemaNoDtd.xhtml @@ -0,0 +1,65 @@ + + + + Chapter 1 + + + +
+
+

CHAPTER I.

+ PREFACE. + eee +
+
+
+ + + + + + + Robert E. Howard + Savage Stories of Conan + + 19326 + + + + + + +
+ + + + + 2 + * + x + + + + + y + - + z + + + + + +

2x + y - z

+
+ +
+ + diff --git a/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_XmlError.xhtml b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_XmlError.xhtml new file mode 100644 index 0000000..547d882 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xhtml_tests/SatisfiesXhtmlSchema_XmlError.xhtml @@ -0,0 +1,8 @@ + + + +< + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrect.xhtml b/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrect.xhtml new file mode 100644 index 0000000..4f1f12a --- /dev/null +++ b/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrect.xhtml @@ -0,0 +1,4 @@ + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrectWithInternal.xhtml b/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrectWithInternal.xhtml new file mode 100644 index 0000000..939653d --- /dev/null +++ b/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrectWithInternal.xhtml @@ -0,0 +1,7 @@ + + +]> + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrect.xhtml b/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrect.xhtml new file mode 100644 index 0000000..77880b6 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrect.xhtml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrectFarLine.xhtml b/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrectFarLine.xhtml new file mode 100644 index 0000000..2ba28a9 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrectFarLine.xhtml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresOtherUsesOther.xml b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresOtherUsesOther.xml new file mode 100644 index 0000000..80728c8 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresOtherUsesOther.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresUtf16UsesOther.xml b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresUtf16UsesOther.xml new file mode 100644 index 0000000..3984276 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresUtf16UsesOther.xml @@ -0,0 +1,12 @@ + + + + + + + + + + ðšžæè + + diff --git a/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresUtf8UsesOther.xml b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresUtf8UsesOther.xml new file mode 100644 index 0000000..9e83344 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_DeclaresUtf8UsesOther.xml @@ -0,0 +1,12 @@ + + + + + + + + + + ????? “ú–{Œê, + + diff --git a/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf16BE.xml b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf16BE.xml new file mode 100644 index 0000000000000000000000000000000000000000..8a5b4be95e4210e8c9dbae4b05a4ee92f28c7161 GIT binary patch literal 748 zcmb7?%}T>S6opS#LcxV^5W2Uiic(9o3&Ewh&COxwKex;zGMh8(Ay+?bIOS6ot>M1fdJxAark26-7(53&Ewh&>L{qgYHCLop<$BRl&#G1FQbQeSq%q%!OrQxeuM_Lg!Fp9iut?Py-US-hL{{Fj@w#1vJMZhhgx+p6Zc!*X lFPo|VswA9P_fB@*(}7Ffr`vM_XLA>BZhOBG!{mhNTmu4>Z-4** literal 0 HcmV?d00001 diff --git a/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8.xml b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8.xml new file mode 100644 index 0000000..da82228 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8.xml @@ -0,0 +1,12 @@ + + + + + + + + + + đšžćč + + diff --git a/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8implicit.xml b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8implicit.xml new file mode 100644 index 0000000..5c49db9 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8implicit.xml @@ -0,0 +1,12 @@ + + + + + + + + + + đšžćč + + diff --git a/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8lowercase.xml b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8lowercase.xml new file mode 100644 index 0000000..d2b0198 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xml_tests/UsesUnicode_ValidUtf8lowercase.xml @@ -0,0 +1,12 @@ + + + + + + + + + + đšžćč + + diff --git a/src/FlightCrew/tests/test_data/xml_tests/WellFormedXml_NotValid.xml b/src/FlightCrew/tests/test_data/xml_tests/WellFormedXml_NotValid.xml new file mode 100644 index 0000000..46ef864 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xml_tests/WellFormedXml_NotValid.xml @@ -0,0 +1,18 @@ + + + + + + euieu ieuie + + + + diff --git a/src/FlightCrew/tests/test_data/xml_tests/WellFormedXml_Valid.xml b/src/FlightCrew/tests/test_data/xml_tests/WellFormedXml_Valid.xml new file mode 100644 index 0000000..e4745c0 --- /dev/null +++ b/src/FlightCrew/tests/test_data/xml_tests/WellFormedXml_Valid.xml @@ -0,0 +1,18 @@ + + + + + + + euieu ieuie + + + + diff --git a/src/FlightCrew/tests/test_main.cpp b/src/FlightCrew/tests/test_main.cpp new file mode 100644 index 0000000..4a6922a --- /dev/null +++ b/src/FlightCrew/tests/test_main.cpp @@ -0,0 +1,53 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include +#include + +namespace xc = XERCES_CPP_NAMESPACE; + +// MS C++ compiler/linker has a bug on Windows (not on Windows CE), which +// causes a link error when _tmain is defined in a static library and UNICODE +// is enabled. For this reason instead of _tmain, main function is used on +// Windows. See the following link to track the current status of this bug: +// http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=394464 +#if GTEST_OS_WINDOWS_MOBILE +#include + +int _tmain(int argc, TCHAR** argv) +{ +#else +int main(int argc, char** argv) +{ +#endif // GTEST_OS_WINDOWS_MOBILE + std::cout << "Running main() from test_main.cpp\n"; + + xc::XMLPlatformUtils::Initialize(); + + testing::InitGoogleMock(&argc, argv); + int test_run_result = RUN_ALL_TESTS(); + + xc::XMLPlatformUtils::Terminate(); + + return test_run_result; +} diff --git a/src/FlightCrew/tests/xhtml_tests/SatisfiesXhtmlSchema_test.cpp b/src/FlightCrew/tests/xhtml_tests/SatisfiesXhtmlSchema_test.cpp new file mode 100644 index 0000000..c662290 --- /dev/null +++ b/src/FlightCrew/tests/xhtml_tests/SatisfiesXhtmlSchema_test.cpp @@ -0,0 +1,93 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Xhtml/SatisfiesXhtmlSchema.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( SatisfiesXhtmlSchemaTest, DoesntSatisfySchema ) +{ + SatisfiesXhtmlSchema validator; + std::vector results = validator.ValidateFile( + "test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchema.xhtml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_SCHEMA_NOT_SATISFIED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 12 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 62 ); +} + +TEST( SatisfiesXhtmlSchemaTest, DoesntSatisfySchemaNoDtd ) +{ + SatisfiesXhtmlSchema validator; + std::vector results = validator.ValidateFile( + "test_data/xhtml_tests/SatisfiesXhtmlSchema_DoesntSatisfySchemaNoDtd.xhtml" ); + + ASSERT_EQ( results.size(), 4U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_SCHEMA_NOT_SATISFIED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 10 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 32 ); + + EXPECT_EQ( results[ 1 ].GetResultId(), ERROR_SCHEMA_NOT_SATISFIED ); + EXPECT_EQ( results[ 1 ].GetErrorLine(), 11 ); + EXPECT_EQ( results[ 1 ].GetErrorColumn(), 61 ); + + EXPECT_EQ( results[ 2 ].GetResultId(), ERROR_SCHEMA_NOT_SATISFIED ); + EXPECT_EQ( results[ 2 ].GetErrorLine(), 12 ); + EXPECT_EQ( results[ 2 ].GetErrorColumn(), 49 ); + + EXPECT_EQ( results[ 3 ].GetResultId(), ERROR_SCHEMA_NOT_SATISFIED ); + EXPECT_EQ( results[ 3 ].GetErrorLine(), 64 ); + EXPECT_EQ( results[ 3 ].GetErrorColumn(), 22 ); +} + + +TEST( SatisfiesXhtmlSchemaTest, XmlError ) +{ + SatisfiesXhtmlSchema validator; + std::vector results = validator.ValidateFile( + "test_data/xhtml_tests/SatisfiesXhtmlSchema_XmlError.xhtml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_NOT_WELL_FORMED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 4 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 8 ); +} + +TEST( SatisfiesXhtmlSchemaTest, SatisfiesSchemaNoDtd ) +{ + SatisfiesXhtmlSchema validator; + std::vector results = validator.ValidateFile( + "test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchemaNoDtd.xhtml" ); + + ASSERT_EQ( results.size(), 0U ); +} + +TEST( SatisfiesXhtmlSchemaTest, SatisfiesSchema ) +{ + SatisfiesXhtmlSchema validator; + std::vector results = validator.ValidateFile( + "test_data/xhtml_tests/SatisfiesXhtmlSchema_SatisfiesSchema.xhtml" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/FlightCrew/tests/xhtml_tests/UsesCorrectDtd_test.cpp b/src/FlightCrew/tests/xhtml_tests/UsesCorrectDtd_test.cpp new file mode 100644 index 0000000..d5cd71b --- /dev/null +++ b/src/FlightCrew/tests/xhtml_tests/UsesCorrectDtd_test.cpp @@ -0,0 +1,67 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Xhtml/UsesCorrectDtd.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( UsesCorrectDtdTest, DtdIncorrect ) +{ + UsesCorrectDtd validator; + std::vector results = validator.ValidateFile( + "test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrect.xhtml" ); + + EXPECT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XHTML_BAD_DTD ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 2 ); +} + +TEST( UsesCorrectDtdTest, DtdIncorrectFarLine ) +{ + UsesCorrectDtd validator; + std::vector results = validator.ValidateFile( + "test_data/xhtml_tests/UsesCorrectDtdTest_DtdIncorrectFarLine.xhtml" ); + + EXPECT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XHTML_BAD_DTD ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 9 ); +} + +TEST( UsesCorrectDtdTest, DtdCorrectWithInternal ) +{ + UsesCorrectDtd validator; + std::vector results = validator.ValidateFile( + "test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrectWithInternal.xhtml" ); + + EXPECT_EQ( results.size(), 0U ); +} + +TEST( UsesCorrectDtdTest, DtdCorrect ) +{ + UsesCorrectDtd validator; + std::vector results = validator.ValidateFile( + "test_data/xhtml_tests/UsesCorrectDtdTest_DtdCorrect.xhtml" ); + + EXPECT_EQ( results.size(), 0U ); +} + diff --git a/src/FlightCrew/tests/xml_tests/UsesUnicode_test.cpp b/src/FlightCrew/tests/xml_tests/UsesUnicode_test.cpp new file mode 100644 index 0000000..f8b168c --- /dev/null +++ b/src/FlightCrew/tests/xml_tests/UsesUnicode_test.cpp @@ -0,0 +1,114 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Xml/UsesUnicode.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( UsesUnicodeTest, FileDoesntExist ) +{ + UsesUnicode validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/ohutoeuoeueudtneodutont.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), UNABLE_TO_PERFORM_VALIDATION ); +} + +TEST( UsesUnicodeTest, DeclaresOtherUsesOther ) +{ + UsesUnicode validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/UsesUnicode_DeclaresOtherUsesOther.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_SPECIFIES_NEITHER_UTF8_NOR_UTF16 ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 1 ); +} + +TEST( UsesUnicodeTest, DeclaresUtf8UsesOther ) +{ + UsesUnicode validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/UsesUnicode_DeclaresUtf8UsesOther.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_BYTESTREAM_NEITHER_UTF8_NOR_UTF16 ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 1 ); +} + +TEST( UsesUnicodeTest, DeclaresUtf16UsesOther ) +{ + UsesUnicode validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/UsesUnicode_DeclaresUtf16UsesOther.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_BYTESTREAM_NEITHER_UTF8_NOR_UTF16 ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 1 ); +} + +TEST( UsesUnicodeTest, ValidUtf8 ) +{ + UsesUnicode validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/UsesUnicode_ValidUtf8.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + +TEST( UsesUnicodeTest, ValidUtf8lowercase ) +{ + UsesUnicode validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/UsesUnicode_ValidUtf8lowercase.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + +TEST( UsesUnicodeTest, ValidUtf8implicit ) +{ + UsesUnicode validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/UsesUnicode_ValidUtf8implicit.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + +TEST( UsesUnicodeTest, ValidUtf16LE ) +{ + UsesUnicode validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/UsesUnicode_ValidUtf16LE.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} + +TEST( UsesUnicodeTest, ValidUtf16BE ) +{ + UsesUnicode validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/UsesUnicode_ValidUtf16BE.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/FlightCrew/tests/xml_tests/WellFormedXml_test.cpp b/src/FlightCrew/tests/xml_tests/WellFormedXml_test.cpp new file mode 100644 index 0000000..84bde6f --- /dev/null +++ b/src/FlightCrew/tests/xml_tests/WellFormedXml_test.cpp @@ -0,0 +1,47 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "Validators/Xml/WellFormedXml.h" +#include "Result.h" + +using namespace FlightCrew; + +TEST( WellFormedXmlTest, NotValid ) +{ + WellFormedXml validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/WellFormedXml_NotValid.xml" ); + + ASSERT_EQ( results.size(), 1U ); + EXPECT_EQ( results[ 0 ].GetResultId(), ERROR_XML_NOT_WELL_FORMED ); + EXPECT_EQ( results[ 0 ].GetErrorLine(), 8 ); + EXPECT_EQ( results[ 0 ].GetErrorColumn(), 9 ); +} + +TEST( WellFormedXmlTest, Valid ) +{ + WellFormedXml validator; + std::vector results = validator.ValidateFile( + "test_data/xml_tests/WellFormedXml_Valid.xml" ); + + ASSERT_EQ( results.size(), 0U ); +} diff --git a/src/XercesExtensions/CMakeLists.txt b/src/XercesExtensions/CMakeLists.txt new file mode 100644 index 0000000..08196e0 --- /dev/null +++ b/src/XercesExtensions/CMakeLists.txt @@ -0,0 +1,53 @@ +######################################################## +# +# This is a CMake configuration file. +# To use it you need CMake which can be +# downloaded from here: +# http://www.cmake.org/cmake/resources/software.html +# +######################################################### + +cmake_minimum_required( VERSION 2.8 ) + +project( XercesExtensions ) + +file( GLOB SOURCES *.cpp *.h ) + +# We need to pick up the stdafx.h file +# and the headers for the linked-to libraries +include_directories( ${CMAKE_CURRENT_SOURCE_DIR} + ../Xerces + ../BoostParts ) + +link_directories ( ${PROJECT_BINARY_DIR}/lib ) + +add_library( ${PROJECT_NAME} ${SOURCES} ) + +target_link_libraries( ${PROJECT_NAME} Xerces ) + +############################################################################# + +# "Link time code generation" flags for MSVC +# TODO: split into special cmake file +if( MSVC ) + add_definitions( /DUNICODE /D_UNICODE /W4 ) + + # This warning is present only at the highest warning level (/W4) + # and is routinely disabled because it complains about valid + # constructs like "while (true)" + add_definitions( /wd4127 ) + + # The /Zc:wchar_t- flag can't go into add_definitions + # because the RC compiler picks it up too and it provokes a name clash + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:wchar_t-") + set( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Oi /GL" ) + set_target_properties( ${PROJECT_NAME} PROPERTIES STATIC_LIBRARY_FLAGS "/LTCG" ) + +# "Print all warnings" flag for GCC +elseif( CMAKE_COMPILER_IS_GNUCXX ) + add_definitions( -Wall ) +endif() + +# needed for correct Xerces header inclusion +add_definitions( -DXERCES_STATIC_LIBRARY ) + diff --git a/src/XercesExtensions/FromXercesStringConverter.cpp b/src/XercesExtensions/FromXercesStringConverter.cpp new file mode 100644 index 0000000..49e3fa7 --- /dev/null +++ b/src/XercesExtensions/FromXercesStringConverter.cpp @@ -0,0 +1,64 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "FromXercesStringConverter.h" + +namespace XercesExt +{ + +FromXercesStringConverter::FromXercesStringConverter( const XMLCh* const xerces_string ) +{ + if ( xerces_string && + xc::XMLString::stringLen( xerces_string ) > 0 ) + { + xc::TranscodeToStr transcoder( xerces_string, "UTF-8" ); + + m_Utf8String = (char*) transcoder.adopt(); + } + + else + { + m_Utf8String = NULL; + } +} + + +FromXercesStringConverter::~FromXercesStringConverter() +{ + if ( m_Utf8String ) + + xc::XMLString::release( &m_Utf8String ); +} + + +const char* FromXercesStringConverter::Utf8String() const +{ + return m_Utf8String; +} + + +std::string FromXercesStringConverter::StandardString() const +{ + return m_Utf8String ? std::string( m_Utf8String ) : std::string(); +} + +} // namespace XercesExt diff --git a/src/XercesExtensions/FromXercesStringConverter.h b/src/XercesExtensions/FromXercesStringConverter.h new file mode 100644 index 0000000..f7be25b --- /dev/null +++ b/src/XercesExtensions/FromXercesStringConverter.h @@ -0,0 +1,53 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef FROMXERCESSTRINGCONVERTER_H +#define FROMXERCESSTRINGCONVERTER_H + +#include +#include + +namespace xc = XERCES_CPP_NAMESPACE; + +namespace XercesExt +{ + class FromXercesStringConverter + { + public: + + FromXercesStringConverter( const XMLCh* const xerces_string ); + + ~FromXercesStringConverter(); + + const char* Utf8String() const; + + std::string StandardString() const; + + private: + + char* m_Utf8String; + }; +} + +#define fromX( str ) XercesExt::FromXercesStringConverter( (str) ).StandardString() + +#endif // FROMXERCESSTRINGCONVERTER_H diff --git a/src/XercesExtensions/LocationAwareDOMParser.cpp b/src/XercesExtensions/LocationAwareDOMParser.cpp new file mode 100644 index 0000000..d09354f --- /dev/null +++ b/src/XercesExtensions/LocationAwareDOMParser.cpp @@ -0,0 +1,97 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include +#include "LocationAwareDOMParser.h" +#include "LocationInfoDataHandler.h" + +// This can't be a member variable of the parser since it needs to be around +// even after the parser is destroyed. The cleanup methods of the parser's +// super class call the handle() method of the handler. +// We only ever need a single handler and a const one at that... this could +// also easily go into a singleton, but this approach is simpler. +static const XercesExt::LocationInfoDataHandler LOCATION_DATA_HANDLER; +const char *LOCATION_INFO_KEY = "LocationInfoKey"; +typedef unsigned int uint; + +namespace XercesExt +{ + +LocationAwareDOMParser::LocationAwareDOMParser( xc::XMLValidator *const valToAdopt, + xc::MemoryManager *const manager, + xc::XMLGrammarPool *const gramPool ) + : + xc::XercesDOMParser( valToAdopt, manager, gramPool ) +{ + m_LocationInfoKey = xc::XMLString::transcode( LOCATION_INFO_KEY ); +} + + +LocationAwareDOMParser::~LocationAwareDOMParser() +{ + xc::XMLString::release( &m_LocationInfoKey ); +} + + +void LocationAwareDOMParser::startElement( const xc::XMLElementDecl &elemDecl, + const unsigned int uriId, + const XMLCh *const prefixName, + const xc::RefVectorOf< xc::XMLAttr > &attrList, + const XMLSize_t attrCount, + const bool isEmpty, + const bool isRoot ) +{ + xc::XercesDOMParser::startElement( + elemDecl, uriId, prefixName, attrList, attrCount, isEmpty, isRoot ); + + const xc::Locator* locator = getScanner()->getLocator(); + int line_number = (int) locator->getLineNumber(); + int column_number = (int) locator->getColumnNumber(); + + xc::DOMNode *current_node = getCurrentNode(); + + // It's OK to const_cast the handler since the parser will only ever + // call the handler's handle() method, which doesn't mutate the handler. + // In fact, this function not accepting a const handler is probably a design + // error on the part of Xerces developers. + current_node->setUserData( + m_LocationInfoKey, + new NodeLocationInfo( line_number, column_number ), + const_cast< XercesExt::LocationInfoDataHandler* >( &LOCATION_DATA_HANDLER ) ); + + // Attribute nodes get the same location as the opening tag + // of the element they were declared in... it's the best we can do. + xc::DOMNamedNodeMap *attribute_map = current_node->getAttributes(); + if ( !attribute_map ) + + return; + + for ( uint i = 0; i < attribute_map->getLength(); ++i ) + { + attribute_map->item( i )->setUserData( + m_LocationInfoKey, + new NodeLocationInfo( line_number, column_number ), + const_cast< XercesExt::LocationInfoDataHandler* >( &LOCATION_DATA_HANDLER ) ); + } +} + +} diff --git a/src/XercesExtensions/LocationAwareDOMParser.h b/src/XercesExtensions/LocationAwareDOMParser.h new file mode 100644 index 0000000..bb6d8a1 --- /dev/null +++ b/src/XercesExtensions/LocationAwareDOMParser.h @@ -0,0 +1,63 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef LOCATIONAWAREDOMPARSER_H +#define LOCATIONAWAREDOMPARSER_H + +#include +#include +#include "NodeLocationInfo.h" + +namespace xc = XERCES_CPP_NAMESPACE; + +namespace XercesExt +{ + +class LocationAwareDOMParser : public xc::XercesDOMParser +{ +public: + + LocationAwareDOMParser( xc::XMLValidator *const valToAdopt = 0, + xc::MemoryManager *const manager = xc::XMLPlatformUtils::fgMemoryManager, + xc::XMLGrammarPool *const gramPool = 0 ); + + /** + * Destructor. + */ + ~LocationAwareDOMParser(); + + // override + void startElement( const xc::XMLElementDecl &elemDecl, + const unsigned int uriId, + const XMLCh *const prefixName, + const xc::RefVectorOf< xc::XMLAttr > &attrList, + const XMLSize_t attrCount, + const bool isEmpty, + const bool isRoot ); + +private: + XMLCh *m_LocationInfoKey; +}; + +} + +#endif // LOCATIONAWAREDOMPARSER_H diff --git a/src/XercesExtensions/LocationInfoDataHandler.cpp b/src/XercesExtensions/LocationInfoDataHandler.cpp new file mode 100644 index 0000000..56e720c --- /dev/null +++ b/src/XercesExtensions/LocationInfoDataHandler.cpp @@ -0,0 +1,49 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include "LocationInfoDataHandler.h" +#include "NodeLocationInfo.h" + +namespace XercesExt +{ + +void LocationInfoDataHandler::handle( DOMOperationType operation, + const XMLCh *const, + void *data, + const xc::DOMNode*, + xc::DOMNode* ) +{ + NodeLocationInfo* location_info = static_cast< NodeLocationInfo* >( data ); + + switch ( operation ) + { + case NODE_DELETED: + delete location_info; + break; + + // Node deletion is the only thing we care about, + // we won't be cloning nodes. + default: + break; + } +} + +} diff --git a/src/XercesExtensions/LocationInfoDataHandler.h b/src/XercesExtensions/LocationInfoDataHandler.h new file mode 100644 index 0000000..c71e78c --- /dev/null +++ b/src/XercesExtensions/LocationInfoDataHandler.h @@ -0,0 +1,46 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef LOCATIONINFODATAHANDLER_H +#define LOCATIONINFODATAHANDLER_H + +#include +namespace xc = XERCES_CPP_NAMESPACE; + +namespace XercesExt +{ + +class LocationInfoDataHandler : + public xc::DOMUserDataHandler +{ +public: + + void handle( DOMOperationType operation, + const XMLCh *const key, + void *data, + const xc::DOMNode *src, + xc::DOMNode *dst ); +}; + +} + +#endif // LOCATIONINFODATAHANDLER_H diff --git a/src/XercesExtensions/NodeLocationInfo.h b/src/XercesExtensions/NodeLocationInfo.h new file mode 100644 index 0000000..5c8dc35 --- /dev/null +++ b/src/XercesExtensions/NodeLocationInfo.h @@ -0,0 +1,47 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef NODELOCATIONINFO_H +#define NODELOCATIONINFO_H + +namespace XercesExt +{ + +/** + * Stores line/column number information for DOM nodes. + * The numbers realte to the location where the node was + * encountered when its parent document was parsed. + */ +struct NodeLocationInfo +{ + NodeLocationInfo() + : LineNumber( -1 ), ColumnNumber( -1 ) {} + NodeLocationInfo( int line_number, int column_number ) + : LineNumber( line_number ), ColumnNumber( column_number ) {} + + int LineNumber; + int ColumnNumber; +}; + +} + +#endif // NODELOCATIONINFO_H diff --git a/src/XercesExtensions/QName.h b/src/XercesExtensions/QName.h new file mode 100644 index 0000000..fd125f6 --- /dev/null +++ b/src/XercesExtensions/QName.h @@ -0,0 +1,78 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef QNAME_H +#define QNAME_H + +#include + +namespace XercesExt +{ + +/** + * A qualified name of a node/element/attribute in XML. + */ +struct QName +{ + /** + * Constructor. + * + * @param new_local_name The local name. + * @param new_namespace_name The namespace of the local name. + */ + QName( const std::string &new_local_name, const std::string &new_namespace_name ) + : local_name( new_local_name ), namespace_name ( new_namespace_name ) {}; + + /** + * Implements the equality operator. + * Two QNames are equal if they have the same local and namespace names. + * The exceptions are names that equal "*", which match any name. + */ + inline bool operator== ( const QName& other ) const + { + return ( local_name == other.local_name || local_name == "*" || other.local_name == "*" ) && + ( namespace_name == other.namespace_name || namespace_name == "*" || other.namespace_name == "*" ); + }; + + /** + * Implements the inequality operator. + * Merely calls the equality operator and returns its inverted result. + */ + inline bool operator!= ( const QName& other ) const + { + return !operator==( other ); + }; + + /** + * The local name of the node. + */ + std::string local_name; + + /** + * The namespace name the local name is located in. + */ + std::string namespace_name; +}; + +} + +#endif // QNAME_H \ No newline at end of file diff --git a/src/XercesExtensions/ToXercesStringConverter.cpp b/src/XercesExtensions/ToXercesStringConverter.cpp new file mode 100644 index 0000000..8597ed6 --- /dev/null +++ b/src/XercesExtensions/ToXercesStringConverter.cpp @@ -0,0 +1,86 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include +#include "ToXercesStringConverter.h" + +namespace XercesExt +{ + +ToXercesStringConverter::ToXercesStringConverter( const std::string &utf8_string ) +{ + if ( utf8_string.length() > 0 ) + { + xc::TranscodeFromStr transcoder( + (const XMLByte*) utf8_string.c_str(), utf8_string.length(), "UTF-8" ); + + m_XercesString = transcoder.adopt(); + } + + else + { + m_XercesString = NULL; + } +} + + +ToXercesStringConverter::ToXercesStringConverter( const char* const utf8_string ) +{ + if ( utf8_string ) + { + size_t string_length = strlen( utf8_string ); + + if ( string_length > 0 ) + { + xc::TranscodeFromStr transcoder( + (const XMLByte*) utf8_string, string_length, "UTF-8" ); + + m_XercesString = transcoder.adopt(); + } + + else + { + m_XercesString = NULL; + } + } + + else + { + m_XercesString = NULL; + } +} + + +ToXercesStringConverter::~ToXercesStringConverter() +{ + if ( m_XercesString ) + + xc::XMLString::release( &m_XercesString ); +} + + +const XMLCh* ToXercesStringConverter::XercesString() const +{ + return m_XercesString; +} + +} // namespace XercesExt + diff --git a/src/XercesExtensions/ToXercesStringConverter.h b/src/XercesExtensions/ToXercesStringConverter.h new file mode 100644 index 0000000..9553d01 --- /dev/null +++ b/src/XercesExtensions/ToXercesStringConverter.h @@ -0,0 +1,55 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef TOXERCESSTRINGCONVERTER_H +#define TOXERCESSTRINGCONVERTER_H + +#include +#include + +namespace xc = XERCES_CPP_NAMESPACE; + +namespace XercesExt +{ + +class ToXercesStringConverter +{ +public: + + ToXercesStringConverter( const std::string &utf8_string ); + + ToXercesStringConverter( const char* const utf8_string ); + + ~ToXercesStringConverter(); + + const XMLCh* XercesString() const; + +private: + + XMLCh* m_XercesString; +}; + +} + +#define toX( str ) XercesExt::ToXercesStringConverter( (str) ).XercesString() + +#endif // TOXERCESSTRINGCONVERTER_H diff --git a/src/XercesExtensions/XercesInit.cpp b/src/XercesExtensions/XercesInit.cpp new file mode 100644 index 0000000..5dfc77d --- /dev/null +++ b/src/XercesExtensions/XercesInit.cpp @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include "XercesInit.h" +#include +namespace xc = XERCES_CPP_NAMESPACE; + +namespace XercesExt +{ + +XercesInit::XercesInit() +{ + xc::XMLPlatformUtils::Initialize(); +} + + +XercesInit::~XercesInit() +{ + xc::XMLPlatformUtils::Terminate(); +} + +} // namespace XercesExt \ No newline at end of file diff --git a/src/XercesExtensions/XercesInit.h b/src/XercesExtensions/XercesInit.h new file mode 100644 index 0000000..e68d050 --- /dev/null +++ b/src/XercesExtensions/XercesInit.h @@ -0,0 +1,40 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef XERCESINIT_H +#define XERCESINIT_H + +namespace XercesExt +{ + +class XercesInit +{ +public: + XercesInit(); + ~XercesInit(); +}; + + +} // namespace XercesExt + + +#endif // XERCESINIT_H \ No newline at end of file diff --git a/src/XercesExtensions/XmlUtils.cpp b/src/XercesExtensions/XmlUtils.cpp new file mode 100644 index 0000000..98453c3 --- /dev/null +++ b/src/XercesExtensions/XmlUtils.cpp @@ -0,0 +1,226 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include "XmlUtils.h" +#include "ToXercesStringConverter.h" +#include "FromXercesStringConverter.h" +#include +#include +#include +#include +#include +#include +#define foreach BOOST_FOREACH + +extern const char *LOCATION_INFO_KEY; + +typedef unsigned int uint; + +namespace XercesExt +{ + +NodeLocationInfo GetNodeLocationInfo( const xc::DOMNode &node ) +{ + NodeLocationInfo *location = static_cast< NodeLocationInfo* >( + node.getUserData( toX( LOCATION_INFO_KEY ) ) ); + + if ( location ) + + return *location; + + return NodeLocationInfo(); +} + + +XercesExt::NodeLocationInfo GetNearestNodeLocationInfo( const xc::DOMNode &node ) +{ + const xc::DOMNode *current_node = &node; + NodeLocationInfo location; + + while ( true ) + { + location = GetNodeLocationInfo( *current_node ); + + if ( location.LineNumber != -1 ) + { + break; + } + + else + { + current_node = current_node->getParentNode(); + + if ( !current_node ) + + break; + } + } + + return location; +} + + +std::vector< xc::DOMElement* > GetElementsByQName( const xc::DOMElement &start_element, + const QName &element_qname ) +{ + xc::DOMNodeList *elements = start_element.getElementsByTagNameNS( + toX( element_qname.namespace_name ), toX( element_qname.local_name ) ); + + return ExtractElementsFromNodeList( *elements ); +} + + +std::vector< xc::DOMElement* > GetElementsByQName( const xc::DOMDocument &document, + const QName &element_qname ) +{ + xc::DOMNodeList *elements = document.getElementsByTagNameNS( + toX( element_qname.namespace_name ), toX( element_qname.local_name ) ); + + return ExtractElementsFromNodeList( *elements ); +} + + +std::vector< xc::DOMElement* > GetElementChildren( const xc::DOMElement &element ) +{ + xc::DOMElement *child = element.getFirstElementChild(); + + std::vector< xc::DOMElement* > children; + + if ( !child ) + + return children; + + children.push_back( child ); + + while (true) + { + child = child->getNextElementSibling(); + + if ( !child ) + + return children; + + children.push_back( child ); + } +} + + +std::vector< xc::DOMAttr* > GetAllAttributesFromElements( const QName &element_qname, + const QName &attribute_qname, + const xc::DOMDocument &document ) +{ + xc::DOMNodeList *elements = document.getElementsByTagNameNS( + toX( element_qname.namespace_name ), toX( element_qname.local_name ) ); + + std::vector< xc::DOMAttr* > attributes; + + for ( uint i = 0; i < elements->getLength(); ++i ) + { + xc::DOMNamedNodeMap *attribute_map = elements->item( i )->getAttributes(); + + if ( !attribute_map ) + + continue; + + for ( uint j = 0; j < attribute_map->getLength(); ++j ) + { + xc::DOMAttr *attribute = static_cast< xc::DOMAttr* >( attribute_map->item( j ) ); + QName current_attribute_qname( fromX( attribute->getLocalName() ), + fromX( attribute->getNamespaceURI() ) ); + + if ( attribute_qname == current_attribute_qname ) + + attributes.push_back( attribute ); + } + } + + return attributes; +} + + +std::vector< xc::DOMElement* > ExtractElementsFromNodeList( const xc::DOMNodeList &node_list ) +{ + std::vector< xc::DOMElement* > element_list; + + for ( uint i = 0; i < node_list.getLength(); ++i ) + { + xc::DOMNode *node = node_list.item( i ); + + if ( node->getNodeType() == xc::DOMNode::ELEMENT_NODE ) + + element_list.push_back( static_cast< xc::DOMElement* >( node ) ); + } + + return element_list; +} + + +bool ElementListContains( std::vector< xc::DOMElement* > element_list, + const QName &element_qname ) +{ + for ( uint i = 0; i < element_list.size(); ++i ) + { + xc::DOMElement *element = element_list[ i ]; + QName current_qname( fromX( element->getLocalName() ), + fromX( element->getNamespaceURI() ) ); + + if ( current_qname == element_qname ) + + return true; + } + + return false; +} + +xc::DOMNode* GetFirstAvailableElement( const std::vector< QName > &element_qnames, + const xc::DOMDocument &document ) +{ + foreach( QName element_qname, element_qnames ) + { + xc::DOMNodeList *matching_nodes = document.getElementsByTagNameNS( + toX( element_qname.namespace_name ), toX( element_qname.local_name ) ); + + if ( matching_nodes->getLength() > 0 ) + + return matching_nodes->item( 0 ); + } + + return NULL; +} + +xc::DOMNode* GetFirstAvailableElement( const QName &element_qname, + const xc::DOMDocument &document ) +{ + std::vector< QName > element_qnames; + element_qnames.push_back( element_qname ); + + return GetFirstAvailableElement( element_qnames, document ); +} + + +void XercesStringDeallocator( XMLCh *xstring ) +{ + xc::XMLString::release( &xstring ); +} + + + +} // namespace XercesExt diff --git a/src/XercesExtensions/XmlUtils.h b/src/XercesExtensions/XmlUtils.h new file mode 100644 index 0000000..8a97e4a --- /dev/null +++ b/src/XercesExtensions/XmlUtils.h @@ -0,0 +1,108 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef XMLUTILS_H +#define XMLUTILS_H + +#include +#include +#include +#include "NodeLocationInfo.h" +#include "QName.h" + +namespace XERCES_CPP_NAMESPACE +{ class DOMElement; class DOMDocument; class DOMAttr; class DOMNodeList; } +namespace xc = XERCES_CPP_NAMESPACE; + +namespace XercesExt +{ + NodeLocationInfo GetNodeLocationInfo( const xc::DOMNode &node ); + + NodeLocationInfo GetNearestNodeLocationInfo( const xc::DOMNode &node ); + + /** + * Returns a list of elements that are descendants of the provided element + * that also match the provided qualified name. + * + * @param start_element The ancestor element. + * @param element_qname The qname to search for. + * @return The matching list of descendants. + */ + std::vector< xc::DOMElement* > GetElementsByQName( const xc::DOMElement &start_element, + const QName &element_qname ); + + /** + * Returns a list of elements that are present in the provided document + * that also match the provided qualified name. + * + * @param start_element The parent DOM document. + * @param element_qname The qname to search for. + * @return The matching list of descendants. + */ + std::vector< xc::DOMElement* > GetElementsByQName( const xc::DOMDocument &document, + const QName &element_qname ); + + std::vector< xc::DOMElement* > GetElementChildren( const xc::DOMElement &element ); + + std::vector< xc::DOMAttr* > GetAllAttributesFromElements( const QName &element_qname, + const QName &attribute_qname, + const xc::DOMDocument &document ); + + std::vector< xc::DOMElement* > ExtractElementsFromNodeList( const xc::DOMNodeList &node_list ); + + bool ElementListContains( std::vector< xc::DOMElement* > element_list, + const QName &element_qname ); + + /** + * From the provided list of element names, returns the first element + * present in the document. + * + * @param element_qnames The list of element names to search for. + * @param document The parent DOM document. + * @return The first element matching one of the provided names + * or NULL if none were found. + */ + xc::DOMNode* GetFirstAvailableElement( const std::vector< QName > &element_qnames, + const xc::DOMDocument &document ); + + /** + * Returns the first element present in the document that matches + * the provided name. + * + * @param element The element to search for. + * @param document The parent DOM document. + * @return The first element matching the provided name + * or NULL if none were found. + */ + xc::DOMNode* GetFirstAvailableElement( const QName &element_qname, + const xc::DOMDocument &document ); + + void XercesStringDeallocator( XMLCh *xstring ); + + template< class T > + void XercesDeallocator( T *xerclass ) + { + xerclass->release(); + } +} + +#endif // XMLUTILS_H diff --git a/src/utf8-cpp/custom_changes.txt b/src/utf8-cpp/custom_changes.txt new file mode 100644 index 0000000..3441df3 --- /dev/null +++ b/src/utf8-cpp/custom_changes.txt @@ -0,0 +1,7 @@ +core.h was changed to use the boost versions of uint8_t, uint16_t and uint32_t +coming from BoostParts/boost/cstdint.hpp + +This was done to improve code portability, as the original header comments suggested. + + + diff --git a/src/utf8-cpp/utf8.h b/src/utf8-cpp/utf8.h new file mode 100644 index 0000000..4e44514 --- /dev/null +++ b/src/utf8-cpp/utf8.h @@ -0,0 +1,34 @@ +// Copyright 2006 Nemanja Trifunovic + +/* +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. +*/ + + +#ifndef UTF8_FOR_CPP_2675DCD0_9480_4c0c_B92A_CC14C027B731 +#define UTF8_FOR_CPP_2675DCD0_9480_4c0c_B92A_CC14C027B731 + +#include "utf8/checked.h" +#include "utf8/unchecked.h" + +#endif // header guard diff --git a/src/utf8-cpp/utf8/checked.h b/src/utf8-cpp/utf8/checked.h new file mode 100755 index 0000000..a1d2035 --- /dev/null +++ b/src/utf8-cpp/utf8/checked.h @@ -0,0 +1,323 @@ +// Copyright 2006 Nemanja Trifunovic + +/* +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. +*/ + + +#ifndef UTF8_FOR_CPP_CHECKED_H_2675DCD0_9480_4c0c_B92A_CC14C027B731 +#define UTF8_FOR_CPP_CHECKED_H_2675DCD0_9480_4c0c_B92A_CC14C027B731 + +#include "core.h" +#include + +namespace utf8 +{ + // Base for the exceptions that may be thrown from the library + class exception : public std::exception { + }; + + // Exceptions that may be thrown from the library functions. + class invalid_code_point : public exception { + uint32_t cp; + public: + invalid_code_point(uint32_t cp) : cp(cp) {} + virtual const char* what() const throw() { return "Invalid code point"; } + uint32_t code_point() const {return cp;} + }; + + class invalid_utf8 : public exception { + uint8_t u8; + public: + invalid_utf8 (uint8_t u) : u8(u) {} + virtual const char* what() const throw() { return "Invalid UTF-8"; } + uint8_t utf8_octet() const {return u8;} + }; + + class invalid_utf16 : public exception { + uint16_t u16; + public: + invalid_utf16 (uint16_t u) : u16(u) {} + virtual const char* what() const throw() { return "Invalid UTF-16"; } + uint16_t utf16_word() const {return u16;} + }; + + class not_enough_room : public exception { + public: + virtual const char* what() const throw() { return "Not enough space"; } + }; + + /// The library API - functions intended to be called by the users + + template + output_iterator replace_invalid(octet_iterator start, octet_iterator end, output_iterator out, uint32_t replacement) + { + while (start != end) { + octet_iterator sequence_start = start; + internal::utf_error err_code = internal::validate_next(start, end); + switch (err_code) { + case internal::UTF8_OK : + for (octet_iterator it = sequence_start; it != start; ++it) + *out++ = *it; + break; + case internal::NOT_ENOUGH_ROOM: + throw not_enough_room(); + case internal::INVALID_LEAD: + append (replacement, out); + ++start; + break; + case internal::INCOMPLETE_SEQUENCE: + case internal::OVERLONG_SEQUENCE: + case internal::INVALID_CODE_POINT: + append (replacement, out); + ++start; + // just one replacement mark for the sequence + while (internal::is_trail(*start) && start != end) + ++start; + break; + } + } + return out; + } + + template + inline output_iterator replace_invalid(octet_iterator start, octet_iterator end, output_iterator out) + { + static const uint32_t replacement_marker = internal::mask16(0xfffd); + return replace_invalid(start, end, out, replacement_marker); + } + + template + octet_iterator append(uint32_t cp, octet_iterator result) + { + if (!internal::is_code_point_valid(cp)) + throw invalid_code_point(cp); + + if (cp < 0x80) // one octet + *(result++) = static_cast(cp); + else if (cp < 0x800) { // two octets + *(result++) = static_cast((cp >> 6) | 0xc0); + *(result++) = static_cast((cp & 0x3f) | 0x80); + } + else if (cp < 0x10000) { // three octets + *(result++) = static_cast((cp >> 12) | 0xe0); + *(result++) = static_cast(((cp >> 6) & 0x3f) | 0x80); + *(result++) = static_cast((cp & 0x3f) | 0x80); + } + else { // four octets + *(result++) = static_cast((cp >> 18) | 0xf0); + *(result++) = static_cast(((cp >> 12) & 0x3f) | 0x80); + *(result++) = static_cast(((cp >> 6) & 0x3f) | 0x80); + *(result++) = static_cast((cp & 0x3f) | 0x80); + } + return result; + } + + template + uint32_t next(octet_iterator& it, octet_iterator end) + { + uint32_t cp = 0; + internal::utf_error err_code = internal::validate_next(it, end, &cp); + switch (err_code) { + case internal::UTF8_OK : + break; + case internal::NOT_ENOUGH_ROOM : + throw not_enough_room(); + case internal::INVALID_LEAD : + case internal::INCOMPLETE_SEQUENCE : + case internal::OVERLONG_SEQUENCE : + throw invalid_utf8(*it); + case internal::INVALID_CODE_POINT : + throw invalid_code_point(cp); + } + return cp; + } + + template + uint32_t peek_next(octet_iterator it, octet_iterator end) + { + return next(it, end); + } + + template + uint32_t prior(octet_iterator& it, octet_iterator start) + { + octet_iterator end = it; + while (internal::is_trail(*(--it))) + if (it < start) + throw invalid_utf8(*it); // error - no lead byte in the sequence + octet_iterator temp = it; + return next(temp, end); + } + + /// Deprecated in versions that include "prior" + template + uint32_t previous(octet_iterator& it, octet_iterator pass_start) + { + octet_iterator end = it; + while (internal::is_trail(*(--it))) + if (it == pass_start) + throw invalid_utf8(*it); // error - no lead byte in the sequence + octet_iterator temp = it; + return next(temp, end); + } + + template + void advance (octet_iterator& it, distance_type n, octet_iterator end) + { + for (distance_type i = 0; i < n; ++i) + next(it, end); + } + + template + typename std::iterator_traits::difference_type + distance (octet_iterator first, octet_iterator last) + { + typename std::iterator_traits::difference_type dist; + for (dist = 0; first < last; ++dist) + next(first, last); + return dist; + } + + template + octet_iterator utf16to8 (u16bit_iterator start, u16bit_iterator end, octet_iterator result) + { + while (start != end) { + uint32_t cp = internal::mask16(*start++); + // Take care of surrogate pairs first + if (internal::is_lead_surrogate(cp)) { + if (start != end) { + uint32_t trail_surrogate = internal::mask16(*start++); + if (internal::is_trail_surrogate(trail_surrogate)) + cp = (cp << 10) + trail_surrogate + internal::SURROGATE_OFFSET; + else + throw invalid_utf16(static_cast(trail_surrogate)); + } + else + throw invalid_utf16(static_cast(cp)); + + } + // Lone trail surrogate + else if (internal::is_trail_surrogate(cp)) + throw invalid_utf16(static_cast(cp)); + + result = append(cp, result); + } + return result; + } + + template + u16bit_iterator utf8to16 (octet_iterator start, octet_iterator end, u16bit_iterator result) + { + while (start != end) { + uint32_t cp = next(start, end); + if (cp > 0xffff) { //make a surrogate pair + *result++ = static_cast((cp >> 10) + internal::LEAD_OFFSET); + *result++ = static_cast((cp & 0x3ff) + internal::TRAIL_SURROGATE_MIN); + } + else + *result++ = static_cast(cp); + } + return result; + } + + template + octet_iterator utf32to8 (u32bit_iterator start, u32bit_iterator end, octet_iterator result) + { + while (start != end) + result = append(*(start++), result); + + return result; + } + + template + u32bit_iterator utf8to32 (octet_iterator start, octet_iterator end, u32bit_iterator result) + { + while (start != end) + (*result++) = next(start, end); + + return result; + } + + // The iterator class + template + class iterator : public std::iterator { + octet_iterator it; + octet_iterator range_start; + octet_iterator range_end; + public: + iterator () {}; + explicit iterator (const octet_iterator& octet_it, + const octet_iterator& range_start, + const octet_iterator& range_end) : + it(octet_it), range_start(range_start), range_end(range_end) + { + if (it < range_start || it > range_end) + throw std::out_of_range("Invalid utf-8 iterator position"); + } + // the default "big three" are OK + octet_iterator base () const { return it; } + uint32_t operator * () const + { + octet_iterator temp = it; + return next(temp, range_end); + } + bool operator == (const iterator& rhs) const + { + if (range_start != rhs.range_start || range_end != rhs.range_end) + throw std::logic_error("Comparing utf-8 iterators defined with different ranges"); + return (it == rhs.it); + } + bool operator != (const iterator& rhs) const + { + return !(operator == (rhs)); + } + iterator& operator ++ () + { + next(it, range_end); + return *this; + } + iterator operator ++ (int) + { + iterator temp = *this; + next(it, range_end); + return temp; + } + iterator& operator -- () + { + prior(it, range_start); + return *this; + } + iterator operator -- (int) + { + iterator temp = *this; + prior(it, range_start); + return temp; + } + }; // class iterator + +} // namespace utf8 + +#endif //header guard + + diff --git a/src/utf8-cpp/utf8/core.h b/src/utf8-cpp/utf8/core.h new file mode 100755 index 0000000..294aad0 --- /dev/null +++ b/src/utf8-cpp/utf8/core.h @@ -0,0 +1,365 @@ +// Copyright 2006 Nemanja Trifunovic + +/* +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. +*/ + + +#ifndef UTF8_FOR_CPP_CORE_H_2675DCD0_9480_4c0c_B92A_CC14C027B731 +#define UTF8_FOR_CPP_CORE_H_2675DCD0_9480_4c0c_B92A_CC14C027B731 + +#include +#include "../../BoostParts/boost/cstdint.hpp" + +namespace utf8 +{ + // The typedefs for 8-bit, 16-bit and 32-bit unsigned integers + // You may need to change them to match your system. + // These typedefs have the same names as ones from cstdint, or boost/cstdint + //typedef unsigned char uint8_t; + //typedef unsigned short uint16_t; + //typedef unsigned int uint32_t; + + // Changed by Strahinja Markovic to use the boost versions + // of these (for portability). + typedef boost::uint8_t uint8_t; + typedef boost::uint16_t uint16_t; + typedef boost::uint32_t uint32_t; + +// Helper code - not intended to be directly called by the library users. May be changed at any time +namespace internal +{ + // Unicode constants + // Leading (high) surrogates: 0xd800 - 0xdbff + // Trailing (low) surrogates: 0xdc00 - 0xdfff + const uint16_t LEAD_SURROGATE_MIN = 0xd800u; + const uint16_t LEAD_SURROGATE_MAX = 0xdbffu; + const uint16_t TRAIL_SURROGATE_MIN = 0xdc00u; + const uint16_t TRAIL_SURROGATE_MAX = 0xdfffu; + const uint16_t LEAD_OFFSET = LEAD_SURROGATE_MIN - (0x10000 >> 10); + const uint32_t SURROGATE_OFFSET = 0x10000u - (LEAD_SURROGATE_MIN << 10) - TRAIL_SURROGATE_MIN; + + // Maximum valid value for a Unicode code point + const uint32_t CODE_POINT_MAX = 0x0010ffffu; + + template + inline uint8_t mask8(octet_type oc) + { + return static_cast(0xff & oc); + } + template + inline uint16_t mask16(u16_type oc) + { + return static_cast(0xffff & oc); + } + template + inline bool is_trail(octet_type oc) + { + return ((mask8(oc) >> 6) == 0x2); + } + + template + inline bool is_lead_surrogate(u16 cp) + { + return (cp >= LEAD_SURROGATE_MIN && cp <= LEAD_SURROGATE_MAX); + } + + template + inline bool is_trail_surrogate(u16 cp) + { + return (cp >= TRAIL_SURROGATE_MIN && cp <= TRAIL_SURROGATE_MAX); + } + + template + inline bool is_surrogate(u16 cp) + { + return (cp >= LEAD_SURROGATE_MIN && cp <= TRAIL_SURROGATE_MAX); + } + + template + inline bool is_code_point_valid(u32 cp) + { + return (cp <= CODE_POINT_MAX && !is_surrogate(cp) && cp != 0xfffe && cp != 0xffff); + } + + template + inline typename std::iterator_traits::difference_type + sequence_length(octet_iterator lead_it) + { + uint8_t lead = mask8(*lead_it); + if (lead < 0x80) + return 1; + else if ((lead >> 5) == 0x6) + return 2; + else if ((lead >> 4) == 0xe) + return 3; + else if ((lead >> 3) == 0x1e) + return 4; + else + return 0; + } + + template + inline bool is_overlong_sequence(uint32_t cp, octet_difference_type length) + { + if (cp < 0x80) { + if (length != 1) + return true; + } + else if (cp < 0x800) { + if (length != 2) + return true; + } + else if (cp < 0x10000) { + if (length != 3) + return true; + } + + return false; + } + + enum utf_error {UTF8_OK, NOT_ENOUGH_ROOM, INVALID_LEAD, INCOMPLETE_SEQUENCE, OVERLONG_SEQUENCE, INVALID_CODE_POINT}; + + /// get_sequence_x functions decode utf-8 sequences of the length x + + template + utf_error get_sequence_1(octet_iterator& it, octet_iterator end, uint32_t* code_point) + { + if (it != end) { + if (code_point) + *code_point = mask8(*it); + return UTF8_OK; + } + return NOT_ENOUGH_ROOM; + } + + template + utf_error get_sequence_2(octet_iterator& it, octet_iterator end, uint32_t* code_point) + { + utf_error ret_code = NOT_ENOUGH_ROOM; + + if (it != end) { + uint32_t cp = mask8(*it); + if (++it != end) { + if (is_trail(*it)) { + cp = ((cp << 6) & 0x7ff) + ((*it) & 0x3f); + + if (code_point) + *code_point = cp; + ret_code = UTF8_OK; + } + else + ret_code = INCOMPLETE_SEQUENCE; + } + else + ret_code = NOT_ENOUGH_ROOM; + } + + return ret_code; + } + + template + utf_error get_sequence_3(octet_iterator& it, octet_iterator end, uint32_t* code_point) + { + utf_error ret_code = NOT_ENOUGH_ROOM; + + if (it != end) { + uint32_t cp = mask8(*it); + if (++it != end) { + if (is_trail(*it)) { + cp = ((cp << 12) & 0xffff) + ((mask8(*it) << 6) & 0xfff); + if (++it != end) { + if (is_trail(*it)) { + cp += (*it) & 0x3f; + + if (code_point) + *code_point = cp; + ret_code = UTF8_OK; + } + else + ret_code = INCOMPLETE_SEQUENCE; + } + else + ret_code = NOT_ENOUGH_ROOM; + } + else + ret_code = INCOMPLETE_SEQUENCE; + } + else + ret_code = NOT_ENOUGH_ROOM; + } + + return ret_code; + } + + template + utf_error get_sequence_4(octet_iterator& it, octet_iterator end, uint32_t* code_point) + { + utf_error ret_code = NOT_ENOUGH_ROOM; + + if (it != end) { + uint32_t cp = mask8(*it); + if (++it != end) { + if (is_trail(*it)) { + cp = ((cp << 18) & 0x1fffff) + ((mask8(*it) << 12) & 0x3ffff); + if (++it != end) { + if (is_trail(*it)) { + cp += (mask8(*it) << 6) & 0xfff; + if (++it != end) { + if (is_trail(*it)) { + cp += (*it) & 0x3f; + + if (code_point) + *code_point = cp; + ret_code = UTF8_OK; + } + else + ret_code = INCOMPLETE_SEQUENCE; + } + else + ret_code = NOT_ENOUGH_ROOM; + } + else + ret_code = INCOMPLETE_SEQUENCE; + } + else + ret_code = NOT_ENOUGH_ROOM; + } + else + ret_code = INCOMPLETE_SEQUENCE; + } + else + ret_code = NOT_ENOUGH_ROOM; + } + + return ret_code; + } + + template + utf_error validate_next(octet_iterator& it, octet_iterator end, uint32_t* code_point) + { + // Save the original value of it so we can go back in case of failure + // Of course, it does not make much sense with i.e. stream iterators + octet_iterator original_it = it; + + uint32_t cp = 0; + // Determine the sequence length based on the lead octet + typedef typename std::iterator_traits::difference_type octet_difference_type; + octet_difference_type length = sequence_length(it); + if (length == 0) + return INVALID_LEAD; + + // Now that we have a valid sequence length, get trail octets and calculate the code point + utf_error err = UTF8_OK; + switch (length) { + case 1: + err = get_sequence_1(it, end, &cp); + break; + case 2: + err = get_sequence_2(it, end, &cp); + break; + case 3: + err = get_sequence_3(it, end, &cp); + break; + case 4: + err = get_sequence_4(it, end, &cp); + break; + } + + if (err == UTF8_OK) { + // Decoding succeeded. Now, security checks... + if (is_code_point_valid(cp)) { + if (!is_overlong_sequence(cp, length)){ + // Passed! Return here. + if (code_point) + *code_point = cp; + ++it; + return UTF8_OK; + } + else + err = OVERLONG_SEQUENCE; + } + else + err = INVALID_CODE_POINT; + } + + // Failure branch - restore the original value of the iterator + it = original_it; + return err; + } + + template + inline utf_error validate_next(octet_iterator& it, octet_iterator end) { + return validate_next(it, end, 0); + } + +} // namespace internal + + /// The library API - functions intended to be called by the users + + // Byte order mark + const uint8_t bom[] = {0xef, 0xbb, 0xbf}; + + template + octet_iterator find_invalid(octet_iterator start, octet_iterator end) + { + octet_iterator result = start; + while (result != end) { + internal::utf_error err_code = internal::validate_next(result, end); + if (err_code != internal::UTF8_OK) + return result; + } + return result; + } + + template + inline bool is_valid(octet_iterator start, octet_iterator end) + { + return (find_invalid(start, end) == end); + } + + template + inline bool starts_with_bom (octet_iterator it, octet_iterator end) + { + return ( + ((it != end) && (internal::mask8(*it++)) == bom[0]) && + ((it != end) && (internal::mask8(*it++)) == bom[1]) && + ((it != end) && (internal::mask8(*it)) == bom[2]) + ); + } + + //Deprecated in release 2.3 + template + inline bool is_bom (octet_iterator it) + { + return ( + (internal::mask8(*it++)) == bom[0] && + (internal::mask8(*it++)) == bom[1] && + (internal::mask8(*it)) == bom[2] + ); + } +} // namespace utf8 + +#endif // header guard + + diff --git a/src/utf8-cpp/utf8/unchecked.h b/src/utf8-cpp/utf8/unchecked.h new file mode 100755 index 0000000..2f3eb4d --- /dev/null +++ b/src/utf8-cpp/utf8/unchecked.h @@ -0,0 +1,228 @@ +// Copyright 2006 Nemanja Trifunovic + +/* +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. +*/ + + +#ifndef UTF8_FOR_CPP_UNCHECKED_H_2675DCD0_9480_4c0c_B92A_CC14C027B731 +#define UTF8_FOR_CPP_UNCHECKED_H_2675DCD0_9480_4c0c_B92A_CC14C027B731 + +#include "core.h" + +namespace utf8 +{ + namespace unchecked + { + template + octet_iterator append(uint32_t cp, octet_iterator result) + { + if (cp < 0x80) // one octet + *(result++) = static_cast(cp); + else if (cp < 0x800) { // two octets + *(result++) = static_cast((cp >> 6) | 0xc0); + *(result++) = static_cast((cp & 0x3f) | 0x80); + } + else if (cp < 0x10000) { // three octets + *(result++) = static_cast((cp >> 12) | 0xe0); + *(result++) = static_cast(((cp >> 6) & 0x3f) | 0x80); + *(result++) = static_cast((cp & 0x3f) | 0x80); + } + else { // four octets + *(result++) = static_cast((cp >> 18) | 0xf0); + *(result++) = static_cast(((cp >> 12) & 0x3f)| 0x80); + *(result++) = static_cast(((cp >> 6) & 0x3f) | 0x80); + *(result++) = static_cast((cp & 0x3f) | 0x80); + } + return result; + } + + template + uint32_t next(octet_iterator& it) + { + uint32_t cp = internal::mask8(*it); + typename std::iterator_traits::difference_type length = utf8::internal::sequence_length(it); + switch (length) { + case 1: + break; + case 2: + it++; + cp = ((cp << 6) & 0x7ff) + ((*it) & 0x3f); + break; + case 3: + ++it; + cp = ((cp << 12) & 0xffff) + ((internal::mask8(*it) << 6) & 0xfff); + ++it; + cp += (*it) & 0x3f; + break; + case 4: + ++it; + cp = ((cp << 18) & 0x1fffff) + ((internal::mask8(*it) << 12) & 0x3ffff); + ++it; + cp += (internal::mask8(*it) << 6) & 0xfff; + ++it; + cp += (*it) & 0x3f; + break; + } + ++it; + return cp; + } + + template + uint32_t peek_next(octet_iterator it) + { + return next(it); + } + + template + uint32_t prior(octet_iterator& it) + { + while (internal::is_trail(*(--it))) ; + octet_iterator temp = it; + return next(temp); + } + + // Deprecated in versions that include prior, but only for the sake of consistency (see utf8::previous) + template + inline uint32_t previous(octet_iterator& it) + { + return prior(it); + } + + template + void advance (octet_iterator& it, distance_type n) + { + for (distance_type i = 0; i < n; ++i) + next(it); + } + + template + typename std::iterator_traits::difference_type + distance (octet_iterator first, octet_iterator last) + { + typename std::iterator_traits::difference_type dist; + for (dist = 0; first < last; ++dist) + next(first); + return dist; + } + + template + octet_iterator utf16to8 (u16bit_iterator start, u16bit_iterator end, octet_iterator result) + { + while (start != end) { + uint32_t cp = internal::mask16(*start++); + // Take care of surrogate pairs first + if (internal::is_lead_surrogate(cp)) { + uint32_t trail_surrogate = internal::mask16(*start++); + cp = (cp << 10) + trail_surrogate + internal::SURROGATE_OFFSET; + } + result = append(cp, result); + } + return result; + } + + template + u16bit_iterator utf8to16 (octet_iterator start, octet_iterator end, u16bit_iterator result) + { + while (start < end) { + uint32_t cp = next(start); + if (cp > 0xffff) { //make a surrogate pair + *result++ = static_cast((cp >> 10) + internal::LEAD_OFFSET); + *result++ = static_cast((cp & 0x3ff) + internal::TRAIL_SURROGATE_MIN); + } + else + *result++ = static_cast(cp); + } + return result; + } + + template + octet_iterator utf32to8 (u32bit_iterator start, u32bit_iterator end, octet_iterator result) + { + while (start != end) + result = append(*(start++), result); + + return result; + } + + template + u32bit_iterator utf8to32 (octet_iterator start, octet_iterator end, u32bit_iterator result) + { + while (start < end) + (*result++) = next(start); + + return result; + } + + // The iterator class + template + class iterator : public std::iterator { + octet_iterator it; + public: + iterator () {}; + explicit iterator (const octet_iterator& octet_it): it(octet_it) {} + // the default "big three" are OK + octet_iterator base () const { return it; } + uint32_t operator * () const + { + octet_iterator temp = it; + return next(temp); + } + bool operator == (const iterator& rhs) const + { + return (it == rhs.it); + } + bool operator != (const iterator& rhs) const + { + return !(operator == (rhs)); + } + iterator& operator ++ () + { + std::advance(it, internal::sequence_length(it)); + return *this; + } + iterator operator ++ (int) + { + iterator temp = *this; + std::advance(it, internal::sequence_length(it)); + return temp; + } + iterator& operator -- () + { + prior(it); + return *this; + } + iterator operator -- (int) + { + iterator temp = *this; + prior(it); + return temp; + } + }; // class iterator + + } // namespace utf8::unchecked +} // namespace utf8 + + +#endif // header guard + diff --git a/src/zipios/CMakeLists.txt b/src/zipios/CMakeLists.txt new file mode 100644 index 0000000..88fdb7d --- /dev/null +++ b/src/zipios/CMakeLists.txt @@ -0,0 +1,49 @@ +######################################################## +# +# This is a CMake configuration file. +# To use it you need CMake which can be +# downloaded from here: +# http://www.cmake.org/cmake/resources/software.html +# +######################################################### + +cmake_minimum_required( VERSION 2.8 ) + +project( zipios ) + +file( GLOB_RECURSE SOURCES *.cpp *.h ) + +# We need to pick up the stdafx.h file +# and the headers for the linked-to libraries +include_directories( ${CMAKE_CURRENT_SOURCE_DIR} + ${BoostParts_SOURCE_DIR} + ${zlib_SOURCE_DIR} + ${zlib_BINARY_DIR} + ) + +link_directories ( ${PROJECT_BINARY_DIR}/lib ) + +add_library( ${PROJECT_NAME} ${SOURCES} ) + +target_link_libraries( ${PROJECT_NAME} zlib BoostParts ) + +############################################################################# + +# "Link time code generation" flags for MSVC +# TODO: split into special cmake file +if( MSVC ) + add_definitions( /DUNICODE /D_UNICODE /D_CRT_SECURE_NO_DEPRECATE ) + + # This warning is present only at the highest warning level (/W4) + # and is routinely disabled because it complains about valid + # constructs like "while (true)" + add_definitions( /wd4127 ) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:wchar_t-" ) + set( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Oi /GL" ) + set_target_properties( ${PROJECT_NAME} PROPERTIES STATIC_LIBRARY_FLAGS "/LTCG" ) + +# "Print all warnings" flag for GCC +elseif( CMAKE_COMPILER_IS_GNUCXX ) + add_definitions( -Wall ) +endif() + diff --git a/src/zipios/COPYING b/src/zipios/COPYING new file mode 100644 index 0000000..3b473db --- /dev/null +++ b/src/zipios/COPYING @@ -0,0 +1,458 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS diff --git a/src/zipios/changes_made.txt b/src/zipios/changes_made.txt new file mode 100644 index 0000000..a75d8c6 --- /dev/null +++ b/src/zipios/changes_made.txt @@ -0,0 +1 @@ +This has been modified beyond recognition. 64 bit support, Mac OS X support, use of more modern parts of boost, functions added etc. \ No newline at end of file diff --git a/src/zipios/src/backbuffer.h b/src/zipios/src/backbuffer.h new file mode 100644 index 0000000..4ef1253 --- /dev/null +++ b/src/zipios/src/backbuffer.h @@ -0,0 +1,117 @@ +#ifndef BACKBUFFER_H +#define BACKBUFFER_H + +#include "zipios++/zipios-config.h" + +#include + +#include "zipios++/meta-iostreams.h" +#include + +#include "zipios++/fcollexceptions.h" +#include "zipios++/ziphead.h" +#include "zipios++/zipheadio.h" +#include "zipios++/virtualseeker.h" +#include "zipios_common.h" + +namespace zipios { + +using std::ios ; +using std::cerr ; +using std::endl ; + +/** A BackBuffer instance is useful for reading the last part of a + file in an efficient manner, when it is not known exactly how far + back (towards the front!) to go, to find the start of the desired + data block. BackBuffer is a vector< unsigned char > that fills + itself with data from a file by reading chunks from the end of the + file progressing towards the start. Upon construction the + BackBuffer instance is associated with a file and a chunksize can + be specified. To read a chunk of the file into the BackBuffer call + readChunk(). */ +class BackBuffer : public vector< unsigned char > { +public: + /** BackBuffer constructor. + @param is The istream to read the data from. The stream must be seekable, + as BackBuffer will reposition the file position to read chunks from the back + of the file. + @param chunk_size specifies the size of the chunks to read the file into + the BackBuffer in. + @throw FCollException Thrown if the VirtualSeeker vs that has been specified is + invalid for the istream is. */ + inline explicit BackBuffer( istream &is, VirtualSeeker vs = VirtualSeeker(), + int chunk_size = 1024 ) ; + /** Reads another chunk and returns the size of the chunk that has + been read. Returns 0 on I/O failure. + @param read_pointer When a new chunk is read in the already + stored bytes change position in the BackBuffer. read_pointer is + assumed by readChunk() to be a pointer into a position in the + BackBuffer, and is updated to point to the same position in the file + as it pointed to before the new chunk was read. */ + inline int readChunk( int &read_pointer ) ; + +private: + VirtualSeeker _vs ; + int _chunk_size ; + istream &_is ; + streampos _file_pos ; + +}; + +BackBuffer::BackBuffer( istream &is, VirtualSeeker vs, int chunk_size ) + : _vs ( vs ), + _chunk_size( chunk_size ), + _is ( is ) +{ + _vs.vseekg( is, 0, ios::end ) ; + _file_pos = _vs.vtellg( is ) ; + // Only happens if _vs.startOffset() is a position + // in the file that lies after _vs.endOffset(), which + // is clearly not a valid situation. + if ( _file_pos < 0 ) + throw FCollException( "Invalid virtual file endings" ) ; +} + +int BackBuffer::readChunk( int &read_pointer ) { + // Update chunk_size and file position + _chunk_size = min ( static_cast< int >( _file_pos ), _chunk_size ) ; + _file_pos -= _chunk_size ; + _vs.vseekg( _is, static_cast< int >( _file_pos ), ios::beg ) ; + // Make space for _chunk_size new bytes first in buffer + insert ( begin(), _chunk_size, static_cast< char > ( 0 ) ) ; + // Read in the next _chunk_size of bytes + + readByteSeq ( _is, &( (*this)[ 0 ] ), _chunk_size ) ; + read_pointer += _chunk_size ; + + if ( _is.good() ) + return _chunk_size ; + else + return 0 ; +} + +} +#endif + +/** \file + The header file for BackBuffer +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/basicentry.cpp b/src/zipios/src/basicentry.cpp new file mode 100644 index 0000000..ccaa896 --- /dev/null +++ b/src/zipios/src/basicentry.cpp @@ -0,0 +1,163 @@ + +#include "zipios++/zipios-config.h" + +#include + +#include "zipios++/meta-iostreams.h" +#include + +#include "zipios_common.h" +#include "zipios++/basicentry.h" +#include "zipios++/zipios_defs.h" + +#include "outputstringstream.h" + +namespace zipios { + +using std::ifstream ; +using std::ios ; + +// +// Public definitions +// + +BasicEntry::BasicEntry( const string &filename, const string &comment, + const FilePath &basepath ) + : _filename ( filename ), + _comment ( comment ), + _basepath ( basepath ) +{ + string full_path = _basepath + _filename ; + ifstream is( full_path.c_str(), ios::in | ios::binary ) ; + if ( ! is ) { + _valid = false ; + } else { + is.seekg( 0, ios::end ) ; + _size = static_cast< int >( is.tellg() ) ; + is.close() ; + _valid = true ; + } +} + +string BasicEntry::getComment() const { + return _comment ; +} + +uint32 BasicEntry::getCompressedSize() const { + return getSize() ; +} + +uint32 BasicEntry::getCrc() const { + return 0 ; +} + +vector< unsigned char > BasicEntry::getExtra() const { + return vector< unsigned char > () ; +} + +StorageMethod BasicEntry::getMethod() const { + return STORED ; +} + +string BasicEntry::getName() const { + return _filename ; +} + +string BasicEntry::getFileName() const { + if ( isDirectory() ) + return string() ; + string::size_type pos ; + pos = _filename.find_last_of( separator ) ; + if ( pos != string::npos ) { // separator found! + // isDirectory() check means pos should not be last, so pos+1 is ok + return _filename.substr(pos + 1) ; + } else { + return _filename ; + } +} + +uint32 BasicEntry::getSize() const { + return _size ; +} + +int BasicEntry::getTime() const { + return 0 ; // FIXME later +} + +bool BasicEntry::isValid() const { + return _valid ; +} + +// virtual int hashCode() const {} +bool BasicEntry::isDirectory() const { + assert( _filename.size() != 0 ) ; + return _filename[ _filename.size() - 1 ] == separator ; +} + + +void BasicEntry::setComment( const string &comment ) { + _comment = comment ; +} + +void BasicEntry::setCompressedSize( uint32 ) { +} + +void BasicEntry::setCrc( uint32 ) { +} + +void BasicEntry::setExtra( const vector< unsigned char > & ) { +} + +void BasicEntry::setMethod( StorageMethod ) { +} + +void BasicEntry::setName( const string &name ) { + _filename = name ; +} + +void BasicEntry::setSize( uint32 size ) { + _size = size ; +} + +void BasicEntry::setTime( int ) { +} + + +string BasicEntry::toString() const { + OutputStringStream sout ; + sout << _filename << " (" << _size << " bytes)" ; + return sout.str() ; +} + +FileEntry *BasicEntry::clone() const { + return new BasicEntry( *this ) ; +} + +BasicEntry::~BasicEntry() { +} + + +} // namespace + +/** \file + Implementation of BasicEntry. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/collcoll.cpp b/src/zipios/src/collcoll.cpp new file mode 100644 index 0000000..f48e84b --- /dev/null +++ b/src/zipios/src/collcoll.cpp @@ -0,0 +1,162 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include "zipios++/collcoll.h" +#include "zipios_common.h" + +namespace zipios { + +using std::ifstream ; + +CollectionCollection *CollectionCollection::_inst = 0 ; + + +CollectionCollection::CollectionCollection() { + _valid = true ; // we're valid even though we are empty! +} + + +bool CollectionCollection::addCollection( const FileCollection &collection ) { + if ( ! _valid ) + throw InvalidStateException( "Attempt to add a FileCollection to an invalid CollectionCollection" ) ; + if ( this == &collection || ! collection.isValid() ) + return false ; + _collections.push_back( collection.clone() ) ; + return true ; + +} + +bool CollectionCollection::addCollection( FileCollection *collection ) { + if ( ! _valid ) + throw InvalidStateException( "Attempt to add a FileCollection to an invalid CollectionCollection" ) ; + if ( collection == 0 || this == collection || ! collection->isValid() ) + return false ; + _collections.push_back( collection ) ; + return true ; +} + + +void CollectionCollection::close() { + _valid = false ; +} + + +ConstEntries CollectionCollection::entries() const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to get entries from an invalid CollectionCollection" ) ; + + ConstEntries all_entries ; + std::vector< FileCollection * >::const_iterator it ; + for ( it = _collections.begin() ; it != _collections.end() ; it++ ) + all_entries += (*it)->entries() ; + return all_entries ; +} + + +ConstEntryPointer CollectionCollection::getEntry( const string &name, + MatchPath matchpath ) const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to get an entry from an invalid CollectionCollection" ) ; + // Returns the first matching entry. + std::vector< FileCollection * >::const_iterator it ; + ConstEntryPointer cep ; + + getEntry( name, cep, it, matchpath ) ; + + return cep ; +} + + +istream *CollectionCollection::getInputStream( const ConstEntryPointer &entry ) { + if ( ! _valid ) + throw InvalidStateException( "Attempt to get an input stream from an invalid CollectionCollection" ) ; + + return getInputStream( entry->getName() ) ; +} + + +istream *CollectionCollection::getInputStream( const string &entry_name, + MatchPath matchpath ) { + if ( ! _valid ) + throw InvalidStateException( "Attempt to get an input stream from an invalid CollectionCollection" ) ; + + std::vector< FileCollection * >::const_iterator it ; + ConstEntryPointer cep ; + + getEntry( entry_name, cep, it, matchpath ) ; + + if ( cep == 0 ) + return 0 ; + else + return (*it)->getInputStream( entry_name ) ; + +} + + +int CollectionCollection::size() const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to get the size of an invalid CollectionCollection" ) ; + int sz = 0 ; + std::vector< FileCollection * >::const_iterator it ; + for ( it = _collections.begin() ; it != _collections.end() ; it++ ) + sz += (*it)->size() ; + return sz ; +} + +FileCollection *CollectionCollection::clone() const { + return new CollectionCollection( *this ) ; +} + +CollectionCollection::~CollectionCollection() { + std::vector< FileCollection * >::iterator it ; + for ( it = _collections.begin() ; it != _collections.end() ; ++it ) + delete *it ; +} + + +// +// Protected member functions +// + +void CollectionCollection::getEntry( const string &name, + ConstEntryPointer &cep, + std::vector< FileCollection * >::const_iterator &it, + MatchPath matchpath ) const { + + // Returns the first matching entry. + cep = 0 ; + for ( it = _collections.begin() ; it != _collections.end() ; it++ ) { + cep = (*it)->getEntry( name, matchpath ) ; + if ( cep ) + break ; + } +} + + + +} // namespace + +/** \file + Implementation of CollectionCollection. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/deflateoutputstreambuf.cpp b/src/zipios/src/deflateoutputstreambuf.cpp new file mode 100644 index 0000000..61f736d --- /dev/null +++ b/src/zipios/src/deflateoutputstreambuf.cpp @@ -0,0 +1,224 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include + +#include "zipios++/fcollexceptions.h" +#include "zipios++/deflateoutputstreambuf.h" + +#include "outputstringstream.h" + +namespace zipios { + +using std::cerr ; +using std::endl ; + +DeflateOutputStreambuf::DeflateOutputStreambuf( streambuf *outbuf, bool user_init, + bool del_outbuf ) + : FilterOutputStreambuf( outbuf, del_outbuf ), + _zs_initialized ( false ), + _invecsize ( 1000 ), + _invec ( _invecsize ), + _outvecsize ( 1000 ), + _outvec ( _outvecsize ) +{ + // NOTICE: It is important that this constructor and the methods it + // calls doesn't do anything with the output streambuf _outbuf The + // reason is that this class can be subclassed, and the subclass + // should get a chance to write to the buffer first + + // zlib init: + _zs.zalloc = Z_NULL ; + _zs.zfree = Z_NULL ; + _zs.opaque = Z_NULL ; + + if ( user_init && ! init() ) + cerr << "DeflateOutputStreambuf::reset() failed!\n" ; // FIXME: throw something + +} + + +DeflateOutputStreambuf::~DeflateOutputStreambuf() { + closeStream() ; +} + + +// This method is called in the constructor, so it must not write +// anything to the output streambuf _outbuf (see notice in +// constructor) +bool DeflateOutputStreambuf::init( int comp_level ) { + static const int default_mem_level = 8 ; + + // _zs.next_in and avail_in must be set according to + // zlib.h (inline doc). + _zs.next_in = reinterpret_cast< unsigned char * >( &( _invec[ 0 ] ) ) ; + _zs.avail_in = 0 ; + + _zs.next_out = reinterpret_cast< unsigned char * >( &( _outvec[ 0 ] ) ) ; + _zs.avail_out = _outvecsize ; + + int err ; + if( _zs_initialized ) { // just reset it + endDeflation() ; + err = deflateReset( &_zs ) ; + // FIXME: bug, for deflateReset we do not update the compression level + } else { // init it + err = deflateInit2( &_zs, comp_level, Z_DEFLATED, -MAX_WBITS, + default_mem_level, Z_DEFAULT_STRATEGY ) ; + /* windowBits is passed < 0 to tell that no zlib header should be + written. */ + _zs_initialized = true ; + } + + // streambuf init: + setp( &( _invec[ 0 ] ), &( _invec[ 0 ] ) + _invecsize ) ; + + _crc32 = crc32( 0, Z_NULL, 0 ) ; + _overflown_bytes = 0 ; + + if ( err == Z_OK ) + return true ; + else + return false ; +} + + +bool DeflateOutputStreambuf::closeStream() { + int err = Z_OK ; + if( _zs_initialized ) { + endDeflation() ; + err = deflateEnd( &_zs ) ; + _zs_initialized = false ; + } + + if ( err == Z_OK ) + return true ; + else { + cerr << "DeflateOutputStreambuf::closeStream(): deflateEnd failed" ; +#ifdef HAVE_ZERROR + cerr << ": " << zError( err ) ; +#endif + cerr << endl ; + return false ; + } +} + + +int DeflateOutputStreambuf::overflow( int c ) { + _zs.avail_in = static_cast< uInt >( pptr() - pbase() ) ; + _zs.next_in = reinterpret_cast< unsigned char * >( &( _invec[ 0 ] ) ) ; + + _crc32 = crc32( _crc32, _zs.next_in, _zs.avail_in ) ; // update crc32 + _overflown_bytes += _zs.avail_in ; + + _zs.next_out = reinterpret_cast< unsigned char * >( &( _outvec[ 0 ] ) ) ; + _zs.avail_out = _outvecsize ; + + // Deflate until _invec is empty. + int err = Z_OK ; + while ( ( _zs.avail_in > 0 || _zs.avail_out == 0 ) && err == Z_OK ) { + if ( _zs.avail_out == 0 ) + flushOutvec() ; + + err = deflate( &_zs, Z_NO_FLUSH ) ; + } + + flushOutvec() ; + + // Update 'put' pointers + setp( &( _invec[ 0 ] ), &( _invec[ 0 ] ) + _invecsize ) ; + + if( err != Z_OK && err != Z_STREAM_END ) { +#if defined (HAVE_STD_IOSTREAM) && defined (USE_STD_IOSTREAM) + // Throw an exception to make istream set badbit + OutputStringStream msgs ; + msgs << "Deflation failed" ; +#ifdef HAVE_ZERROR + msgs << ": " << zError( err ) ; +#endif + throw IOException( msgs.str() ) ; +#endif + cerr << "Deflation failed\n" ; + return EOF ; + } + + if ( c != EOF ) { + *pptr() = c ; + pbump( 1 ) ; + } + + return 0 ; +} + +int DeflateOutputStreambuf::sync() { + // FIXME: Do something +// return overflow() ; + return 0 ; +} + + +bool DeflateOutputStreambuf::flushOutvec() { + int deflated_bytes = _outvecsize - _zs.avail_out ; + int bc = static_cast< int >( _outbuf->sputn( &( _outvec[ 0 ] ), deflated_bytes ) ) ; + + _zs.next_out = reinterpret_cast< unsigned char * >( &( _outvec[ 0 ] ) ) ; + _zs.avail_out = _outvecsize ; + + return deflated_bytes == bc ; +} + + +void DeflateOutputStreambuf::endDeflation() { + overflow() ; + + _zs.next_out = reinterpret_cast< unsigned char * >( &( _outvec[ 0 ] ) ) ; + _zs.avail_out = _outvecsize ; + + // Deflate until _invec is empty. + int err = Z_OK ; + + while ( err == Z_OK ) { + if ( _zs.avail_out == 0 ) + flushOutvec() ; + + err = deflate( &_zs, Z_FINISH ) ; + } + + flushOutvec() ; + + if ( err != Z_STREAM_END ) { + cerr << "DeflateOutputStreambuf::endDeflation(): deflation failed:\n" ; +#ifdef HAVE_ZERROR + cerr << ": " << zError( err ) ; +#endif + cerr << endl ; + } +} + + +} // namespace + +/** \file + Implementation of DeflateOutputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/dircoll.cpp b/src/zipios/src/dircoll.cpp new file mode 100644 index 0000000..8a5c0f9 --- /dev/null +++ b/src/zipios/src/dircoll.cpp @@ -0,0 +1,172 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include +#include + +#include "zipios++/dircoll.h" + +#include "../FlightCrew/Misc/BoostFilesystemUse.h" + + +namespace zipios { + +using std::cerr ; +using std::endl ; +using std::vector ; +using std::ifstream ; + +DirectoryCollection::DirectoryCollection( const string &path, bool recursive, + bool load_now ) + : _entries_loaded( false ), + _recursive ( recursive ), + _filepath ( path ) +{ + _filename = _filepath ; + _valid = _filepath.isDirectory() ; + + if( _valid && load_now ) + loadEntries() ; +} + +void DirectoryCollection::close() { + _valid = false ; +} + + +ConstEntries DirectoryCollection::entries() const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to use an invalid DirectoryCollection" ) ; + + loadEntries() ; + + return FileCollection::entries() ; +} + + +ConstEntryPointer +DirectoryCollection::getEntry( const string &name, + MatchPath matchpath ) const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to use an invalid DirectoryCollection" ) ; + + if ( matchpath != MATCH || _entries_loaded ) { + loadEntries() ; + return FileCollection::getEntry( name, matchpath ) ; + } else { + // avoid loading entries if possible. + ConstEntryPointer ent ( new DirEntry( name, "", _filepath ) ) ; + if ( ent->isValid() ) + return ent ; + else + return 0 ; + } +} + + +istream *DirectoryCollection::getInputStream( const ConstEntryPointer &entry ) { + if ( ! _valid ) + throw InvalidStateException( "Attempt to use an invalid DirectoryCollection" ) ; + + return getInputStream( entry->getName() ) ; +} + + +istream *DirectoryCollection::getInputStream( const string &entry_name, + MatchPath matchpath ) { + if ( ! _valid ) + throw InvalidStateException( "Attempt to use an invalid DirectoryCollection" ) ; + + if ( matchpath != MATCH || _entries_loaded ) { + loadEntries() ; + + ConstEntryPointer ent = getEntry( entry_name, matchpath ) ; + + if ( ent == 0 ) + return 0 ; + else { + string real_path( _filepath + entry_name ) ; + return new ifstream( real_path.c_str(), ios::in | ios::binary ) ; + } + + } else { + // avoid loading entries if possible. + string real_path( _filepath + entry_name ) ; + ifstream *ifs = new ifstream( real_path.c_str(), ios::in | ios::binary ) ; + if( ! *ifs ) { + delete ifs ; + return 0 ; + } else + return ifs ; + } +} + + +int DirectoryCollection::size() const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to use an invalid DirectoryCollection" ) ; + loadEntries() ; + + return (int) _entries.size() ; +} + +FileCollection *DirectoryCollection::clone() const { + return new DirectoryCollection( *this ) ; +} + +DirectoryCollection::~DirectoryCollection() {} + + +void DirectoryCollection::loadEntries() const { + if( _entries_loaded ) + return ; + + const_cast< DirectoryCollection * >( this )->load( _recursive ) ; + + _entries_loaded = true ; +} + + +void DirectoryCollection::load( bool recursive, const FilePath &subdir ) { + using namespace boost::filesystem ; + BasicEntry *ent ; + for ( fs::directory_iterator it( (_filepath + subdir).asString() ) ; it != fs::directory_iterator() ; ++it ) { + + if ( *it == "." || *it == ".." || *it == "..." ) + continue ; + + if ( fs::is_directory( it->path() ) && recursive ) { + load( recursive, subdir + it->path().filename().string() ) ; + } else { + _entries.push_back( ent = new BasicEntry( subdir + it->path().filename().string(), "", _filepath ) ) ; + ent->setSize( (zipios::uint32) fs::file_size( it->path() ) ) ; + } + + } +} + +} // namespace + +/** \file + Implementation of DirectoryCollection. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/fcoll.cpp b/src/zipios/src/fcoll.cpp new file mode 100644 index 0000000..cc9ced8 --- /dev/null +++ b/src/zipios/src/fcoll.cpp @@ -0,0 +1,90 @@ + +#include "zipios++/zipios-config.h" + +#include +#include +#include + +#include "zipios++/fcoll.h" + +namespace zipios { + +using std::find_if ; + +// FIXME: make InvalidStateException message customized for +// subclasses. maybe make an InvalidStateException factory ;-) + +ConstEntries FileCollection::entries() const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to get entries from an invalid FileCollection" ) ; + + // The constructor below is not in all vector impl. (not those + // without member templates) + // ConstEntries ( _entries.begin(), _entries.end() ) ; + // Instead of using that we copy the vector manually + ConstEntries cep_vec ; + cep_vec.reserve( _entries.size() ) ; + Entries::const_iterator cit ; + for ( cit = _entries.begin() ; cit != _entries.end() ; ++cit ) + cep_vec.push_back( *cit ) ; + + return cep_vec ; +} + +ConstEntryPointer FileCollection::getEntry( const string &name, + MatchPath matchpath ) const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to get an entry from an invalid FileCollection" ) ; + + Entries::const_iterator iter ; + if ( matchpath == MATCH ) + iter = find_if( _entries.begin(), _entries.end(), FileEntry::MatchName( name ) ) ; + else + iter = find_if( _entries.begin(), _entries.end(), FileEntry::MatchFileName( name ) ) ; + if ( iter == _entries.end() ) + return 0 ; + else + return *iter ; +} + +string FileCollection::getName() const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to get the name of an invalid FileCollection" ) ; + return _filename ; +} + + +int FileCollection::size() const { + if ( ! _valid ) + throw InvalidStateException( "Attempt to get size of an invalid FileCollection" ) ; + return static_cast< int >( _entries.size() ) ; +} + +FileCollection::~FileCollection() { +} + + +} // namespace + +/** \file + Implementation of FileCollection. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/fcollexceptions.cpp b/src/zipios/src/fcollexceptions.cpp new file mode 100644 index 0000000..78e8af0 --- /dev/null +++ b/src/zipios/src/fcollexceptions.cpp @@ -0,0 +1,144 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include "zipios++/fcollexceptions.h" + +namespace zipios { + +using std::cerr ; +using std::endl ; + +IOException::IOException() throw () + : _what( "I/O exception" ) {} + +IOException::IOException( const string &msg ) throw () + : _what( msg ) {} + +IOException::IOException( const IOException &src ) throw () + : std::exception(), _what( src._what ) {} + + +IOException &IOException::operator= ( const IOException &src ) throw () { + _what = src._what ; + return *this ; +} + + +const char *IOException::what() const throw () { + return _what.c_str() ; +} + +IOException::~IOException() throw () {} + + + + + + +FCollException::FCollException() throw () + : _what( "FileCollection exception" ) {} + +FCollException::FCollException( const string &msg ) throw () + : _what( msg ) {} + +FCollException::FCollException( const FCollException &src ) throw () + : std::exception(),_what( src._what ) {} + + +FCollException &FCollException::operator= ( const FCollException &src ) throw () { + _what = src._what ; + return *this ; +} + + +const char *FCollException::what() const throw () { + return _what.c_str() ; +} + +FCollException::~FCollException() throw () {} + + + + + + +InvalidStateException::InvalidStateException() throw () + : _what( "InvalidState exception" ) {} + +InvalidStateException::InvalidStateException( const string &msg ) throw () + : _what( msg ) {} + +InvalidStateException:: +InvalidStateException( const InvalidStateException &src ) throw () + : std::exception(), _what( src._what ) {} + + +InvalidStateException &InvalidStateException:: +operator= ( const InvalidStateException &src ) throw () { + _what = src._what ; + return *this ; +} + + +const char *InvalidStateException::what() const throw () { + return _what.c_str() ; +} + +InvalidStateException::~InvalidStateException() throw () {} + + + + + +Exception::Exception() throw () + : _what( "Exception" ) {} + +Exception::Exception( const string &msg ) throw () + : _what( msg ) {} + +Exception:: +Exception( const Exception &src ) throw () + : std::exception(),_what( src._what ) {} + + +Exception &Exception:: +operator= ( const Exception &src ) throw () { + _what = src._what ; + return *this ; +} + + +const char *Exception::what() const throw () { + return _what.c_str() ; +} + +Exception::~Exception() throw () {} + + +} // namespace + +/** \file + Implementation of a number of Exceptions used by FileCollection and its + subclasses. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/fileentry.cpp b/src/zipios/src/fileentry.cpp new file mode 100644 index 0000000..4a76ace --- /dev/null +++ b/src/zipios/src/fileentry.cpp @@ -0,0 +1,39 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include + +#include "zipios++/fileentry.h" + +namespace zipios { + +ostream &operator<< ( ostream &os, const FileEntry &entry ) { + os << entry.toString() ; + return os ; +} + +} // namespace + +/** \file + Implementation of FileEntry. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/filepath.cpp b/src/zipios/src/filepath.cpp new file mode 100644 index 0000000..ab4d2ec --- /dev/null +++ b/src/zipios/src/filepath.cpp @@ -0,0 +1,78 @@ + +#include "zipios++/zipios-config.h" + +#include +#include +#include +#include + +#include "zipios++/filepath.h" + +namespace zipios { + +using namespace std ; + +const char FilePath::_separator = '/' ; + + +FilePath::FilePath( const string &path, bool check_exists ) + : _checked( false ), + _path( path ) { + pruneTrailingSeparator() ; + if ( check_exists ) + exists() ; +} + + +void FilePath::check() const { + _checked = true ; + _exists = false ; + _is_reg = false ; + _is_dir = false ; + _is_char = false ; + _is_block = false ; + _is_socket = false ; + _is_fifo = false ; + + struct stat buf ; + if ( stat( _path.c_str(), &buf ) != -1 ) { + _exists = true ; + #if defined(BOOST_WINNT) + _is_reg = _S_IFREG & buf.st_mode ; + _is_dir = _S_IFDIR & buf.st_mode ; + _is_char = _S_IFCHR & buf.st_mode ; + #else + _is_reg = S_ISREG ( buf.st_mode ) ; + _is_dir = S_ISDIR ( buf.st_mode ) ; + _is_char = S_ISCHR ( buf.st_mode ) ; + _is_block = S_ISBLK ( buf.st_mode ) ; + _is_socket = S_ISSOCK( buf.st_mode ) ; + _is_fifo = S_ISFIFO( buf.st_mode ) ; + #endif + } +} + +} // namespace + +/** \file + Implementation of FilePath. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/filterinputstreambuf.cpp b/src/zipios/src/filterinputstreambuf.cpp new file mode 100644 index 0000000..0541523 --- /dev/null +++ b/src/zipios/src/filterinputstreambuf.cpp @@ -0,0 +1,47 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/filterinputstreambuf.h" + +namespace zipios { + +FilterInputStreambuf::FilterInputStreambuf( streambuf *inbuf, bool del_inbuf ) + : _inbuf( inbuf), + _del_inbuf( del_inbuf ) +{ + if ( _inbuf == NULL ) { + // throw an exception + } +} + + +FilterInputStreambuf::~FilterInputStreambuf() { + if ( _del_inbuf ) + delete _inbuf ; +} + + +} // namespace + +/** \file + Implementation of FilterInputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/filteroutputstreambuf.cpp b/src/zipios/src/filteroutputstreambuf.cpp new file mode 100644 index 0000000..2fc0229 --- /dev/null +++ b/src/zipios/src/filteroutputstreambuf.cpp @@ -0,0 +1,47 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/filteroutputstreambuf.h" + +namespace zipios { + +FilterOutputStreambuf::FilterOutputStreambuf( streambuf *outbuf, bool del_outbuf ) + : _outbuf( outbuf), + _del_outbuf( del_outbuf ) +{ + if ( _outbuf == NULL ) { + // throw an exception + } +} + + +FilterOutputStreambuf::~FilterOutputStreambuf() { + if ( _del_outbuf ) + delete _outbuf ; +} + + +} // namespace + +/** \file + Implementation of FilterOutputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/gzipoutputstream.cpp b/src/zipios/src/gzipoutputstream.cpp new file mode 100644 index 0000000..6a428b7 --- /dev/null +++ b/src/zipios/src/gzipoutputstream.cpp @@ -0,0 +1,80 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include "zipios++/gzipoutputstreambuf.h" +#include "zipios++/gzipoutputstream.h" + +using std::ostream; + +namespace zipios { + +GZIPOutputStream::GZIPOutputStream( std::ostream &os ) + : ostream( 0 ), + ofs( 0 ) +{ + ozf = new GZIPOutputStreambuf( os.rdbuf() ) ; + + init( ozf ) ; +} + +GZIPOutputStream::GZIPOutputStream( const std::string &filename ) + : ostream( 0 ), + ofs( 0 ) +{ + ofs = new std::ofstream( filename.c_str(), std::ios::out | std::ios::binary ) ; + ozf = new GZIPOutputStreambuf( ofs->rdbuf() ) ; + init( ozf ) ; +} + +void GZIPOutputStream::setFilename( const string &filename ) { + ozf->setFilename(filename); +} + +void GZIPOutputStream::setComment( const string &comment ) { + ozf->setComment(comment); +} + +void GZIPOutputStream::close() { + ozf->close() ; + if ( ofs ) + ofs->close() ; +} + + +void GZIPOutputStream::finish() { + ozf->finish() ; +} + + +GZIPOutputStream::~GZIPOutputStream() { + // It's ok to call delete with a Null pointer. + delete ozf ; + delete ofs ; +} + +} // namespace + +/** \file + Implementation of GZIPOutputStream. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/gzipoutputstreambuf.cpp b/src/zipios/src/gzipoutputstreambuf.cpp new file mode 100644 index 0000000..67caa85 --- /dev/null +++ b/src/zipios/src/gzipoutputstreambuf.cpp @@ -0,0 +1,127 @@ + +#include + +#include "zipios++/zipios-config.h" + +#include +#include "zipios++/meta-iostreams.h" + +#include + +#include "zipios++/gzipoutputstreambuf.h" + +namespace zipios { + +using std::ios ; +using std::cerr ; +using std::endl ; + +GZIPOutputStreambuf::GZIPOutputStreambuf( streambuf *outbuf, bool del_outbuf ) + : DeflateOutputStreambuf( outbuf, true, del_outbuf ), + _open ( false ) +{ +} + +void GZIPOutputStreambuf::setFilename( const string &filename ) { + _filename = filename ; +} + +void GZIPOutputStreambuf::setComment( const string &comment ) { + _comment = comment ; +} + +void GZIPOutputStreambuf::close() { + finish() ; +} + +void GZIPOutputStreambuf::finish() { + if( ! _open ) + return ; + + closeStream(); + writeTrailer(); + + _open = false ; +} + +GZIPOutputStreambuf::~GZIPOutputStreambuf() { + finish() ; +} + +int GZIPOutputStreambuf::overflow( int c ) { + if (!_open) { + writeHeader(); + _open = true; + } + return DeflateOutputStreambuf::overflow( c ) ; +} + +int GZIPOutputStreambuf::sync() { + return DeflateOutputStreambuf::sync() ; +} + +void GZIPOutputStreambuf::writeHeader() { + unsigned char flg = 0x00; + flg |= (_filename == "") ? 0x00 : 0x08; + flg |= (_comment == "") ? 0x00 : 0x10; + + ostream os( _outbuf ) ; + os << (unsigned char)0x1f; // Magic # + os << (unsigned char)0x8b; // Magic # + os << (unsigned char)0x08; // Deflater.DEFLATED + os << flg; // FLG + os << (unsigned char)0x00; // MTIME + os << (unsigned char)0x00; // MTIME + os << (unsigned char)0x00; // MTIME + os << (unsigned char)0x00; // MTIME + os << (unsigned char)0x00; // XFLG + os << (unsigned char)0x00; // OS + + if (_filename != "") { + os << _filename.c_str();// Filename + os << (unsigned char)0x00; + } + + if (_comment != "") { + os << _comment.c_str(); // Comment + os << (unsigned char)0x00; + } +} + +void GZIPOutputStreambuf::writeTrailer() { + writeInt(getCrc32()); + writeInt(getCount()); +} + +void GZIPOutputStreambuf::writeInt(uint32 i) { + ostream os( _outbuf ) ; + os << (unsigned char)( i & 0xFF); + os << (unsigned char)((i >> 8) & 0xFF); + os << (unsigned char)((i >> 16) & 0xFF); + os << (unsigned char)((i >> 24) & 0xFF); +} + +} // namespace + +/** \file + Implementation of GZIPOutputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/inflateinputstreambuf.cpp b/src/zipios/src/inflateinputstreambuf.cpp new file mode 100644 index 0000000..6f5f02d --- /dev/null +++ b/src/zipios/src/inflateinputstreambuf.cpp @@ -0,0 +1,179 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include + +#include "zipios++/fcollexceptions.h" +#include "zipios++/inflateinputstreambuf.h" + +#include "outputstringstream.h" + +namespace zipios { + +using std::cerr ; +using std::endl ; + +InflateInputStreambuf::InflateInputStreambuf( streambuf *inbuf, int s_pos, bool del_inbuf ) + : FilterInputStreambuf( inbuf, del_inbuf ), + _zs_initialized ( false ), + _invecsize ( 1000 ), + _invec ( _invecsize ), + _outvecsize ( 1000 ), + _outvec ( _outvecsize ) +{ + // NOTICE: It is important that this constructor and the methods it + // calls doesn't do anything with the input streambuf _inbuf, other + // than repositioning it to the specified position. The reason is + // that this class can be subclassed, and the subclass should get a + // chance to read from the buffer first) + + // zlib init: + _zs.zalloc = Z_NULL ; + _zs.zfree = Z_NULL ; + _zs.opaque = Z_NULL ; + + reset( s_pos ) ; + // We're not checking the return value of reset() and throwing + // an exception in case of an error, because we cannot catch the exception + // in the constructors of subclasses with all compilers. +} + +InflateInputStreambuf::~InflateInputStreambuf() { + // Dealloc z_stream stuff + int err = inflateEnd( &_zs ) ; + if( err != Z_OK ) { + cerr << "~inflatebuf: inflateEnd failed" ; +#ifdef HAVE_ZERROR + cerr << ": " << zError( err ) ; +#endif + cerr << endl ; + } +} + + +int InflateInputStreambuf::underflow() { + // If not underflow don't fill buffer + if ( gptr() < egptr() ) + return static_cast< unsigned char >( *gptr() ) ; + + // Prepare _outvec and get array pointers + _zs.avail_out = _outvecsize ; + _zs.next_out = reinterpret_cast< unsigned char * >( &( _outvec[ 0 ] ) ) ; + + // Inflate until _outvec is full + // eof (or I/O prob) on _inbuf will break out of loop too. + int err = Z_OK ; + while ( _zs.avail_out > 0 && err == Z_OK ) { + if ( _zs.avail_in == 0 ) { // fill _invec + int bc = static_cast< int >( _inbuf->sgetn( &(_invec[ 0 ] ) , + _invecsize ) ) ; + // FIXME: handle i/o problems. + _zs.next_in = reinterpret_cast< unsigned char * >( &( _invec[0] ) ) ; + _zs.avail_in = bc ; + // If we could not read any new data (bc == 0) and inflate isn't + // done it will return Z_BUF_ERROR and thus breaks out of the + // loop. This means we don't have to respond to the situation + // where we can't read more bytes here. + } + + err = inflate( &_zs, Z_NO_FLUSH ) ; + } + // Normally the number of inflated bytes will be the + // full length of the output buffer, but if we can't read + // more input from the _inbuf streambuf, we end up with + // less. + int inflated_bytes = _outvecsize - _zs.avail_out ; + setg( &( _outvec[ 0 ] ), + &( _outvec[ 0 ] ), + &( _outvec[ 0 ] ) + inflated_bytes ) ; + // FIXME: look at the error returned from inflate here, if there is + // some way to report it to the InflateInputStreambuf user. + // Until I find out I'll just print a warning to stdout. + if( err != Z_OK && err != Z_STREAM_END ) { +#if defined (HAVE_STD_IOSTREAM) && defined (USE_STD_IOSTREAM) + // Throw an exception to make istream set badbit + OutputStringStream msgs ; + msgs << "InflateInputStreambuf: inflate failed" ; +#ifdef HAVE_ZERROR + msgs << ": " << zError( err ) ; +#endif + throw IOException( msgs.str() ) ; +#endif + // If HAVE_STD_IOSTREAM not defined we just return eof + // if no output is produced, and that happens anyway + } + if (inflated_bytes > 0 ) + return static_cast< unsigned char >( *gptr() ) ; + else + return EOF ; // traits_type::eof() ; +} + + + +// This method is called in the constructor, so it must not +// read anything from the input streambuf _inbuf (see notice in constructor) +bool InflateInputStreambuf::reset( int stream_position ) { + if ( stream_position >= 0 ) { // reposition _inbuf + _inbuf->pubseekpos( stream_position ) ; + } + + // _zs.next_in and avail_in must be set according to + // zlib.h (inline doc). + _zs.next_in = reinterpret_cast< unsigned char * >( &( _invec[0] ) ) ; + _zs.avail_in = 0 ; + + int err ; + if( _zs_initialized ) { // just reset it + err = inflateReset( &_zs ) ; + } else { // init it + err = inflateInit2( &_zs, -MAX_WBITS ) ; + /* windowBits is passed < 0 to tell that there is no zlib header. + Note that in this case inflate *requires* an extra "dummy" byte + after the compressed stream in order to complete decompression + and return Z_STREAM_END. We always have an extra "dummy" byte, + because there is always some trailing data after the compressed + data (either the next entry or the central directory. */ + _zs_initialized = true ; + } + + // streambuf init: + // The important thing here, is that + // - the pointers are not NULL (which would mean unbuffered) + // - and that gptr() is not less than egptr() (so we trigger underflow + // the first time data is read). + setg( &( _outvec[ 0 ] ), + &( _outvec[ 0 ] ) + _outvecsize, + &( _outvec[ 0 ] ) + _outvecsize ) ; + + if ( err == Z_OK ) + return true ; + else + return false ; +} + +} // namespace + +/** \file + Implementation of InflateInputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/outputstringstream.h b/src/zipios/src/outputstringstream.h new file mode 100644 index 0000000..b36c5d9 --- /dev/null +++ b/src/zipios/src/outputstringstream.h @@ -0,0 +1,69 @@ +#ifndef OUTPUTSTRINGSTREAM_H +#define OUTPUTSTRINGSTREAM_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include + +namespace zipios { + +#if defined (HAVE_STD_IOSTREAM) && defined (USE_STD_IOSTREAM) + +typedef std::ostringstream OutputStringStream ; + +#else + +/** OutputStringStream is typedefed to ostringstream if sstream is + part of the standard library (unless Zipios++ has been explicitly + configured not to use it). If sstream is not present + OutputStringStream is a subclass of ostrstream from + strstream.h. In this case OutputStringStream specializes the str() + method, such that the caller does not have to concern himself with + null-terminating the string and unfreezing the ostrstream. */ +class OutputStringStream : public ostrstream { +public: + + /** Specialization of ostrstream::str() that takes care of + null-terminating the string and unfreezing the ostrstream. */ + inline string str() { + *this << ends ; // null terminate ostrstream + string o_str( ostrstream::str() ) ; + freeze( 0 ) ; + return o_str ; + } +private: + // To avoid invoking such a member function in the base + // class if there is one! + string str() const ; +}; + +#endif + +} // namespace + + +#endif + +/** \file + Header file that defines OutputStringStream. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/zipextraction.cpp b/src/zipios/src/zipextraction.cpp new file mode 100644 index 0000000..8541625 --- /dev/null +++ b/src/zipios/src/zipextraction.cpp @@ -0,0 +1,84 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include +#include +#include + +#include "zipios++/zipfile.h" +#include "zipios++/zipinputstream.h" + +#include "zipios++/zipextraction.h" +#include "zipios++/fcollexceptions.h" + +namespace zipios +{ + + +void WriteEntryToFile( const std::istream &stream, const fs::path &filepath ) +{ + fs::ofstream ofs( filepath, ios::out | ios::binary ); + ofs << stream.rdbuf(); + ofs.close(); +} + + +void CreateFilepath( const fs::path &filepath ) +{ + if ( filepath.empty() ) + + throw IOException(); + + if ( !fs::exists( filepath.parent_path() ) ) + + fs::create_directories( filepath.parent_path() ); + + if ( fs::is_regular_file( filepath ) ) + + fs::ofstream( filepath ); + + else if ( fs::is_directory( filepath ) ) + + fs::create_directory( filepath ); +} + + +void ExtractZipToFolder( const fs::path &path_to_zip, const fs::path &path_to_folder ) +{ + ZipFile zip( path_to_zip ); + + ConstEntries entries = zip.entries(); + for ( ConstEntries::iterator it = entries.begin(); it != entries.end(); ++it ) + { + boost::scoped_ptr< std::istream > stream( zip.getInputStream( *it ) ); + + fs::path new_file_path = path_to_folder / (*it)->getName(); + + CreateFilepath( new_file_path ); + WriteEntryToFile( *stream, new_file_path ); + } +} + + +} // namespace zipios diff --git a/src/zipios/src/zipfile.cpp b/src/zipios/src/zipfile.cpp new file mode 100644 index 0000000..4dd228a --- /dev/null +++ b/src/zipios/src/zipfile.cpp @@ -0,0 +1,223 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include "zipios++/fcoll.h" +#include "zipios++/zipfile.h" +#include "zipios++/zipinputstream.h" +#include "zipios++/zipios_defs.h" + +#include "backbuffer.h" + +#include "../../FlightCrew/Misc/BoostFilesystemUse.h" + +namespace zipios { + +// +// Public +// + +ZipFile ZipFile::openEmbeddedZipFile( const string &name ) { + // open zipfile, read 4 last bytes close file + // create ZipFile object. + ifstream ifs( name.c_str(), ios::in | ios::binary ) ; + ifs.seekg( -4, ios::end ) ; + uint32 start_offset = readUint32( ifs ) ; + ifs.close() ; + return ZipFile( name, start_offset, 4 ) ; +} + + +ZipFile::ZipFile( const string &name , int s_off, int e_off + /* , ios::open_mode mode */ ) + : _vs( s_off, e_off ) { + + _filename = name ; + + ifstream _zipfile( name.c_str(), ios::in | ios::binary ) ; + init( _zipfile ) ; +} + +ZipFile::ZipFile( const fs::path &name , int s_off, int e_off + /* , ios::open_mode mode */ ) + : _vs( s_off, e_off ) { + + _filename = name.string(); + + fs::ifstream _zipfile( name, ios::in | ios::binary ) ; + init( _zipfile ) ; +} + + +FileCollection *ZipFile::clone() const { + return new ZipFile( *this ) ; +} + + +ZipFile::~ZipFile() { + close() ; +} + +void ZipFile::close() { + _valid = false ; + +} + +istream *ZipFile::getInputStream( const ConstEntryPointer &entry ) { + if ( ! _valid ) + throw InvalidStateException( "Attempt to use an invalid FileCollection" ) ; + return getInputStream( entry->getName() ) ; +} + +istream *ZipFile::getInputStream( const string &entry_name, + MatchPath matchpath ) { + if ( ! _valid ) + throw InvalidStateException( "Attempt to use an invalid ZipFile" ) ; + + ConstEntryPointer ent = getEntry( entry_name, matchpath ) ; + + if ( ent == 0 ) + return 0 ; + else { + ZipInputStream *zis( new ZipInputStream( _filename, + static_cast< const ZipCDirEntry * >( ent.get() )-> + getLocalHeaderOffset() + _vs.startOffset() ) ) ; + zis->getNextEntry(); + return zis; + } +} + + +// +// Private +// + +bool ZipFile::init( istream &_zipfile ) { + + // Check stream error state + if ( ! _zipfile ) { + setError ( "Error reading from file" ) ; + return false ; + } + + _valid = readCentralDirectory( _zipfile ) ; + + return _valid ; +} + + +bool ZipFile::readCentralDirectory ( istream &_zipfile ) { + // Find and read eocd. + if ( ! readEndOfCentralDirectory( _zipfile ) ) + throw FCollException( "Unable to find zip structure: End-of-central-directory" ) ; + + // Position read pointer to start of first entry in central dir. + _vs.vseekg( _zipfile, _eocd.offset(), ios::beg ) ; + + int entry_num = 0 ; + // Giving the default argument in the next line to keep Visual C++ quiet + _entries.resize ( _eocd.totalCount(), 0 ) ; + while ( ( entry_num < _eocd.totalCount() ) ) { + ZipCDirEntry *ent = new ZipCDirEntry ; + _entries[ entry_num ] = ent ; + _zipfile >> *ent ; + if ( ! _zipfile ) { + if ( _zipfile.bad() ) + throw IOException( "Error reading zip file while reading zip file central directory" ) ; + else if ( _zipfile.fail() ) + throw FCollException( "Zip file consistency problem. Failure while reading zip file central directory" ) ; + else if ( _zipfile.eof() ) + throw IOException( "Premature end of file while reading zip file central directory" ) ; + } + ++entry_num ; + } + + // Consistency check. eocd should start here + + int pos = _vs.vtellg( _zipfile ) ; + _vs.vseekg( _zipfile, 0, ios::end ) ; + int remaining = static_cast< int >( _vs.vtellg( _zipfile ) ) - pos ; + if ( remaining != _eocd.eocdOffSetFromEnd() ) + throw FCollException( "Zip file consistency problem. Zip file data fields are inconsistent with zip file layout" ) ; + + // Consistency check 2, are local headers consistent with + // cd headers + if ( ! confirmLocalHeaders( _zipfile ) ) + throw FCollException( "Zip file consistency problem. Zip file data fields are inconsistent with zip file layout" ) ; + + return true ; +} + + +bool ZipFile::readEndOfCentralDirectory ( istream &_zipfile ) { + BackBuffer bb( _zipfile, _vs ) ; + int read_p = -1 ; + bool found = false ; + while ( ! found ) { + if ( read_p < 0 ) + if ( ! bb.readChunk ( read_p ) ) { + found = false ; + break ; + } + if ( _eocd.read( bb, read_p ) ) { + found = true ; + break ; + } + --read_p ; + } + + return found ; +} + +bool ZipFile::confirmLocalHeaders( istream &_zipfile ) { + Entries::const_iterator it ; + ZipCDirEntry *ent ; + int inconsistencies = 0 ; + ZipLocalEntry zlh ; + for ( it = _entries.begin() ; it != _entries.end() ; it++ ) { + ent = static_cast< ZipCDirEntry * >( (*it).get() ) ; + _vs.vseekg( _zipfile, ent->getLocalHeaderOffset(), ios::beg ) ; + _zipfile >> zlh ; + if ( ! _zipfile || zlh != *ent ) { + inconsistencies++ ; + _zipfile.clear() ; + } + } + return ! inconsistencies ; +} + +void ZipFile::setError ( string error_str ) { + _valid = false ; +#ifdef _USE_EXCEPTIONS + throw error_str ; // define exception class instead. +#else + cerr << error_str << endl ; // define operator<< for exception class if such a class replaces string +#endif +} + + +} + +/** \file + The implementation of ZipFile. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/ziphead.cpp b/src/zipios/src/ziphead.cpp new file mode 100644 index 0000000..51260e9 --- /dev/null +++ b/src/zipios/src/ziphead.cpp @@ -0,0 +1,295 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include +#include +#include + +#include "zipios_common.h" +#include "zipios++/ziphead.h" +#include "zipios++/zipheadio.h" +#include "zipios++/zipios_defs.h" + +#include "outputstringstream.h" + +namespace zipios { + +using std::ios ; + +bool operator== ( const ZipLocalEntry &zlh, const ZipCDirEntry &ze ) { + // Not all fields need to be identical. Some of the information + // may be put in a data descriptor that trails the compressed + // data, according to the specs (The trailing data descriptor + // can contain crc_32, compress_size and uncompress_size.) + + // Experience has shown that extra_field and extra_field_len + // can differ too. + +// cerr << "----- BEGIN -----" << endl ; +// cerr << ( zlh.extract_version == ze.extract_version ) << endl ; +// cerr << ( zlh.gp_bitfield == ze.gp_bitfield ) << endl ; +// cerr << ( zlh.compress_method == ze.compress_method ) << endl ; +// cerr << ( zlh.last_mod_ftime == ze.last_mod_ftime ) << endl ; +// cerr << ( zlh.last_mod_fdate == ze.last_mod_fdate ) << endl ; + +// cerr << ( zlh.filename_len == ze.filename_len ) << endl ; + +// cerr << ( zlh.filename == ze.filename ) << endl ; +// cerr << "----- END -----" << endl ; + return ( zlh.extract_version == ze.extract_version && + zlh.gp_bitfield == ze.gp_bitfield && + zlh.compress_method == ze.compress_method && + zlh.last_mod_ftime == ze.last_mod_ftime && + zlh.last_mod_fdate == ze.last_mod_fdate && + zlh.filename_len == ze.filename_len && + + zlh.filename == ze.filename ) ; +} + +// +// ZipLocalEntry methods +// + +const uint32 ZipLocalEntry::signature = 0x04034b50 ; + + + +void ZipLocalEntry::setDefaultExtract() { + extract_version = 20 ; // version number +} + +string ZipLocalEntry::getComment() const { + return "" ; // No comment in a local entry +} + +uint32 ZipLocalEntry::getCompressedSize() const { + return compress_size ; +} + +uint32 ZipLocalEntry::getCrc() const { + return crc_32 ; +} + +vector< unsigned char > ZipLocalEntry::getExtra() const { + return extra_field ; +} + +StorageMethod ZipLocalEntry::getMethod() const { + return static_cast< StorageMethod >( compress_method ) ; +} + +string ZipLocalEntry::getName() const { + return filename ; +} + +string ZipLocalEntry::getFileName() const { + if ( isDirectory() ) + return string() ; + string::size_type pos ; + pos = filename.find_last_of( separator ) ; + if ( pos != string::npos ) { // separator found! + // isDirectory() check means pos should not be last, so pos+1 is ok + return filename.substr( pos + 1 ) ; + } else { + return filename ; + } +} + +uint32 ZipLocalEntry::getSize() const { + return uncompress_size ; +} + +int ZipLocalEntry::getTime() const { + return ( last_mod_fdate << 16 ) + last_mod_ftime ; + // FIXME: what to do with this time date thing? (not only here?) +} + +bool ZipLocalEntry::isValid() const { + return _valid ; +} + +bool ZipLocalEntry::isDirectory() const { + assert( filename.size() != 0 ) ; + return filename[ filename.size() - 1 ] == separator ; +} + + +void ZipLocalEntry::setComment( const string & ) { + // A local entry cannot hold a comment +} + +void ZipLocalEntry::setCompressedSize( uint32 size ) { + compress_size = size ; +} + +void ZipLocalEntry::setCrc( uint32 crc ) { + crc_32 = crc ; +} + +void ZipLocalEntry::setExtra( const vector< unsigned char > &extra ) { + extra_field = extra ; + extra_field_len = static_cast< uint16 >( extra_field.size() ) ; +} + +void ZipLocalEntry::setMethod( StorageMethod method ) { + compress_method = static_cast< uint16 >( method ) ; +} + +void ZipLocalEntry::setName( const string &name ) { + filename = name ; + filename_len = static_cast< uint16 >( filename.size() ) ; +} + +void ZipLocalEntry::setSize( uint32 size ) { + uncompress_size = size ; +} + +void ZipLocalEntry::setTime( int time ) { + // FIXME: fix time setting here, and ind flist and elsewhere. Define the + // date time semantics before mucking about - how surprising + + // Mark Donszelmann: added these lines to make zip work for winzip + last_mod_fdate = (time >> 16) & 0x0000FFFF; + last_mod_ftime = time & 0x0000FFFF; +} + +string ZipLocalEntry::toString() const { + OutputStringStream sout ; + sout << filename << " (" << uncompress_size << " bytes, " ; + sout << compress_size << " bytes compressed)" ; + return sout.str() ; +} + +int ZipLocalEntry::getLocalHeaderSize() const { + return static_cast< int >( 30 + filename.size() + extra_field.size() ) ; +} + +bool ZipLocalEntry::trailingDataDescriptor() const { + // gp_bitfield bit 3 is one, if this entry uses a trailing data + // descriptor to keep size, compressed size and crc-32 + // fields. + if ( ( gp_bitfield & 4 ) == 1 ) + return true ; + else + return false ; +} + +FileEntry *ZipLocalEntry::clone() const { + return new ZipLocalEntry( *this ) ; +} + + +// +// ZipCDirEntry methods +// + +const uint32 ZipCDirEntry::signature = 0x02014b50 ; + +void ZipCDirEntry::setDefaultWriter() { + writer_version = 0 ; +#ifdef WIN32 + writer_version |= static_cast< uint16 >( 0 ) << 8 ; // Windows, DOS +#else + writer_version |= static_cast< uint16 >( 3 ) << 8 ; // Unix +#endif + writer_version |= 20 ; // version number +} + +string ZipCDirEntry::getComment() const { + return file_comment ; +} + +uint32 ZipCDirEntry::getLocalHeaderOffset() const { + return rel_offset_loc_head ; +} + +void ZipCDirEntry::setLocalHeaderOffset( uint32 offset ) { + rel_offset_loc_head = offset ; +} + + +void ZipCDirEntry::setComment( const string &comment ) { + file_comment = comment ; + file_comment_len = static_cast< uint16 >( file_comment.size() ) ; +} + + +string ZipCDirEntry::toString() const { + OutputStringStream sout ; + sout << filename << " (" << uncompress_size << " bytes, " ; + sout << compress_size << " bytes compressed)" ; + return sout.str() ; +} + + +int ZipCDirEntry::getCDirHeaderSize() const { + return static_cast< int >( 46 + filename.size() + extra_field.size() + file_comment.size() ) ; +} + + +FileEntry *ZipCDirEntry::clone() const { + return new ZipCDirEntry( *this ) ; +} + + +// +// EndOfCentralDirectory methods +// + +const uint32 EndOfCentralDirectory::signature = 0x06054b50 ; + +bool EndOfCentralDirectory::read( vector &buf, int pos ) { + if ( ( buf.size() - pos < sizeof( uint32 ) ) || + ( ! checkSignature( &( buf[ pos ] ) ) ) ) + return false ; + + eocd_offset_from_end = buf.size() - pos ; + pos += sizeof( uint32 ) ; + disk_num = ztohs( &( buf[ pos ] ) ) ; pos += sizeof( uint16 ) ; + cdir_disk_num = ztohs( &( buf[ pos ] ) ) ; pos += sizeof( uint16 ) ; + cdir_entries = ztohs( &( buf[ pos ] ) ) ; pos += sizeof( uint16 ) ; + cdir_tot_entries = ztohs( &( buf[ pos ] ) ) ; pos += sizeof( uint16 ) ; + cdir_size = ztohl( &( buf[ pos ] ) ) ; pos += sizeof( uint32 ) ; + cdir_offset = ztohl( &( buf[ pos ] ) ) ; pos += sizeof( uint32 ) ; + zip_comment_len = ztohs( &( buf[ pos ] ) ) ; pos += sizeof( uint16 ) ; +// cerr << "Zip comment length = " << zip_comment_len << endl ; +// cerr << "Length of remaining file = " << buf.size() - pos << endl ; + + return true ; // Dummy +} + +bool EndOfCentralDirectory::checkSignature ( unsigned char *buf ) const { +// cerr << "potential header: " << ztohl( buf ) << endl ; + return checkSignature( ztohl( buf ) ) ; +} + + + +} // namespace + + + +/** \file + Implementation of routines for reading the central directory and + local headers of a zip archive. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/zipheadio.cpp b/src/zipios/src/zipheadio.cpp new file mode 100644 index 0000000..b63500c --- /dev/null +++ b/src/zipios/src/zipheadio.cpp @@ -0,0 +1,195 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include +#include + +#include "zipios_common.h" +#include "zipios++/zipheadio.h" + +#include "outputstringstream.h" + +namespace zipios { + +std::istream& operator>> ( std::istream &is, ZipLocalEntry &zlh ) { + zlh._valid = false ; // set to true upon successful completion. + if ( ! is ) + return is ; + +// // Before reading anything we record the position in the stream +// // This is a field in the central directory entry, but not +// // in the local entry. After all, we know where we are, anyway. +// zlh.rel_offset_loc_head = is.tellg() ; + + if ( zlh.signature != readUint32( is ) ) { + // put stream in error state and return + is.setstate ( std::ios::failbit ) ; + return is ; + } + + zlh.extract_version = readUint16( is ) ; + zlh.gp_bitfield = readUint16( is ) ; + zlh.compress_method = readUint16( is ) ; + zlh.last_mod_ftime = readUint16( is ) ; + zlh.last_mod_fdate = readUint16( is ) ; + zlh.crc_32 = readUint32( is ) ; + zlh.compress_size = readUint32( is ) ; + zlh.uncompress_size = readUint32( is ) ; + zlh.filename_len = readUint16( is ) ; + zlh.extra_field_len = readUint16( is ) ; + + // Read filename and extra_field + readByteSeq( is, zlh.filename, zlh.filename_len ) ; + readByteSeq( is, zlh.extra_field, zlh.extra_field_len ) ; + + if ( is ) + zlh._valid = true ; + return is ; +} + + +std::istream& operator>> ( std::istream &is, DataDescriptor & ) { + return is ; +} + + +std::istream& operator>> ( std::istream &is, ZipCDirEntry &zcdh ) { + zcdh._valid = false ; // set to true upon successful completion. + if ( ! is ) + return is ; + + if ( zcdh.signature != readUint32( is ) ) { + // put stream in error state and return + is.setstate ( std::ios::failbit ) ; + return is ; + } + + zcdh.writer_version = readUint16( is ) ; + zcdh.extract_version = readUint16( is ) ; + zcdh.gp_bitfield = readUint16( is ) ; + zcdh.compress_method = readUint16( is ) ; + zcdh.last_mod_ftime = readUint16( is ) ; + zcdh.last_mod_fdate = readUint16( is ) ; + zcdh.crc_32 = readUint32( is ) ; + zcdh.compress_size = readUint32( is ) ; + zcdh.uncompress_size = readUint32( is ) ; + zcdh.filename_len = readUint16( is ) ; + zcdh.extra_field_len = readUint16( is ) ; + zcdh.file_comment_len = readUint16( is ) ; + zcdh.disk_num_start = readUint16( is ) ; + zcdh.intern_file_attr = readUint16( is ) ; + zcdh.extern_file_attr = readUint32( is ) ; + zcdh.rel_offset_loc_head = readUint32( is ) ; + + // Read filename and extra_field + readByteSeq( is, zcdh.filename, zcdh.filename_len ) ; + readByteSeq( is, zcdh.extra_field, zcdh.extra_field_len ) ; + readByteSeq( is, zcdh.file_comment, zcdh.file_comment_len ) ; + + if ( is ) + zcdh._valid = true ; + return is ; +} + +std::ostream &operator<< ( std::ostream &os, const ZipLocalEntry &zlh ) { + if ( ! os ) + return os ; + + writeUint32( zlh.signature , os ) ; + writeUint16( zlh.extract_version, os ) ; + writeUint16( zlh.gp_bitfield , os ) ; + writeUint16( zlh.compress_method, os ) ; + writeUint16( zlh.last_mod_ftime , os ) ; + writeUint16( zlh.last_mod_fdate , os ) ; + writeUint32( zlh.crc_32 , os ) ; + writeUint32( zlh.compress_size , os ) ; + writeUint32( zlh.uncompress_size, os ) ; + writeUint16( zlh.filename_len , os ) ; + writeUint16( zlh.extra_field_len, os ) ; + + + // Write filename and extra_field + writeByteSeq( os, zlh.filename ) ; + writeByteSeq( os, zlh.extra_field ) ; + + return os ; +} + +std::ostream &operator<< ( std::ostream &os, const ZipCDirEntry &zcdh ) { + if ( ! os ) + return os ; + + writeUint32( zcdh.signature , os ) ; + writeUint16( zcdh.writer_version , os ) ; + writeUint16( zcdh.extract_version , os ) ; + writeUint16( zcdh.gp_bitfield , os ) ; + writeUint16( zcdh.compress_method , os ) ; + writeUint16( zcdh.last_mod_ftime , os ) ; + writeUint16( zcdh.last_mod_fdate , os ) ; + writeUint32( zcdh.crc_32 , os ) ; + writeUint32( zcdh.compress_size , os ) ; + writeUint32( zcdh.uncompress_size , os ) ; + writeUint16( zcdh.filename_len , os ) ; + writeUint16( zcdh.extra_field_len , os ) ; + writeUint16( zcdh.file_comment_len , os ) ; + writeUint16( zcdh.disk_num_start , os ) ; + writeUint16( zcdh.intern_file_attr , os ) ; + writeUint32( zcdh.extern_file_attr , os ) ; + writeUint32( zcdh.rel_offset_loc_head, os ) ; + + // Write filename and extra_field + writeByteSeq( os, zcdh.filename ) ; + writeByteSeq( os, zcdh.extra_field ) ; + writeByteSeq( os, zcdh.file_comment ) ; + + return os ; +} + +std::ostream &operator<< ( std::ostream &os, const EndOfCentralDirectory &eocd ) { + if ( ! os ) + return os ; + + writeUint32( eocd.signature , os ) ; + writeUint16( eocd.disk_num , os ) ; + writeUint16( eocd.cdir_disk_num , os ) ; + writeUint16( eocd.cdir_entries , os ) ; + writeUint16( eocd.cdir_tot_entries, os ) ; + writeUint32( eocd.cdir_size , os ) ; + writeUint32( eocd.cdir_offset , os ) ; + writeUint16( eocd.zip_comment_len , os ) ; + + writeByteSeq( os, eocd.zip_comment ) ; + + return os ; +} + + + +} // namespace + + + +/** \file + Implementation of I/O functions for the header structures + defined in ziphead.h. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/zipinputstream.cpp b/src/zipios/src/zipinputstream.cpp new file mode 100644 index 0000000..2ba798a --- /dev/null +++ b/src/zipios/src/zipinputstream.cpp @@ -0,0 +1,82 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include "zipios++/zipinputstreambuf.h" +#include "zipios++/zipinputstream.h" + +using std::istream; + +namespace zipios { + +ZipInputStream::ZipInputStream( std::istream &is, std::streampos pos ) + : istream( 0 ), +// SGIs basic_ifstream calls istream with 0, but calls basic_ios constructor first?? + ifs( 0 ) +{ + izf = new ZipInputStreambuf( is.rdbuf(), static_cast< int >( pos ) ) ; +// this->rdbuf( izf ) ; is replaced by: + this->init( izf ) ; +} + +ZipInputStream::ZipInputStream( const std::string &filename, std::streampos pos ) + : istream( 0 ), + ifs( 0 ) +{ + ifs = new std::ifstream( filename.c_str(), std::ios::in |std:: ios::binary ) ; + izf = new ZipInputStreambuf( ifs->rdbuf(), static_cast< int >( pos ) ) ; +// this->rdbuf( izf ) ; is replaced by: + this->init( izf ) ; +} + +int ZipInputStream::available() { + return 1 ; // FIXME: Dummy implementation +} + +void ZipInputStream::closeEntry() { + izf->closeEntry() ; +} + +void ZipInputStream::close() { + izf->close() ; +} + +// ZipLocalEntry *ZipInputStream::createZipCDirEntry( const string +// &name ) {} + +ConstEntryPointer ZipInputStream::getNextEntry() { + clear() ; // clear eof and other flags. + return izf->getNextEntry() ; +} + +ZipInputStream::~ZipInputStream() { + // It's ok to call delete with a Null pointer. + delete izf ; + delete ifs ; +} + +} // namespace + +/** \file + Implementation of ZipInputStream. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/zipinputstreambuf.cpp b/src/zipios/src/zipinputstreambuf.cpp new file mode 100644 index 0000000..b16aa6e --- /dev/null +++ b/src/zipios/src/zipinputstreambuf.cpp @@ -0,0 +1,137 @@ + +#include "zipios++/zipios-config.h" + +#include +#include "zipios++/meta-iostreams.h" + +#include + +#include "zipios++/zipinputstreambuf.h" +#include "zipios_common.h" + +namespace zipios { + +using std::ios ; +using std::cerr ; +using std::endl ; + +ZipInputStreambuf::ZipInputStreambuf( streambuf *inbuf, int s_pos, bool del_inbuf ) + : InflateInputStreambuf( inbuf, s_pos, del_inbuf ), + _open_entry( false ) +{} + +void ZipInputStreambuf::closeEntry() { + if ( ! _open_entry ) + return ; + + // check if we're positioned correctly, otherwise position us correctly + int position = static_cast< int >( _inbuf->pubseekoff(0, ios::cur, + ios::in) ); + if ( position != _data_start + static_cast< int >( _curr_entry.getCompressedSize() ) ) + _inbuf->pubseekoff(_data_start + _curr_entry.getCompressedSize(), + ios::beg, ios::in) ; + +} + +void ZipInputStreambuf::close() { +} + +ConstEntryPointer ZipInputStreambuf::getNextEntry() { + if ( _open_entry ) + closeEntry() ; + + // read the zip local header + istream is( _inbuf ) ; // istream does not destroy the streambuf. + is.exceptions( ios::eofbit | ios::failbit | ios::badbit ); + + try { + is >> _curr_entry ; + if ( _curr_entry.isValid() ) { + _data_start = static_cast< int >( _inbuf->pubseekoff(0, ios::cur, ios::in) ); + if ( _curr_entry.getMethod() == DEFLATED ) { + _open_entry = true ; + reset() ; // reset inflatestream data structures + // cerr << "deflated" << endl ; + } else if ( _curr_entry.getMethod() == STORED ) { + _open_entry = true ; + _remain = _curr_entry.getSize() ; + // Force underflow on first read: + setg( &( _outvec[ 0 ] ), + &( _outvec[ 0 ] ) + _outvecsize, + &( _outvec[ 0 ] ) + _outvecsize ); + // cerr << "stored" << endl ; + } else { + _open_entry = false ; // Unsupported compression format. + throw FCollException( "Unsupported compression format" ) ; + } + } + } catch (...) { + _open_entry = false ; + } + + if ( _curr_entry.isValid() && _curr_entry.trailingDataDescriptor() ) + throw FCollException( "Trailing data descriptor in zip file not supported" ) ; + return new ZipLocalEntry( _curr_entry ) ; +} + + +ZipInputStreambuf::~ZipInputStreambuf() { +} + + +int ZipInputStreambuf::underflow() { + if ( ! _open_entry ) + return EOF ; // traits_type::eof() + if ( _curr_entry.getMethod() == DEFLATED ) + return InflateInputStreambuf::underflow() ; + + // Ok, we're are stored, so we handle it ourselves. + int num_b = min( _remain, _outvecsize ) ; + int g = static_cast< int >( _inbuf->sgetn( &(_outvec[ 0 ] ) , num_b ) ) ; + setg( &( _outvec[ 0 ] ), + &( _outvec[ 0 ] ), + &( _outvec[ 0 ] ) + g ) ; + _remain -= g ; + if ( g > 0 ) + return static_cast< unsigned char >( *gptr() ) ; + else + return EOF ; // traits_type::eof() +} + + +// FIXME: We need to check somew +// +// // gp_bitfield bit 3 is one, if the length of the zip entry +// // is stored in a trailer. +// if ( is->good && ( _curr_entry.gp_bitfield & 4 ) != 1 ) +// return true ; +// else { +// is->clear() ; +// return false ; +// } + + +} // namespace + +/** \file + Implementation of ZipInputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/zipios_common.h b/src/zipios/src/zipios_common.h new file mode 100644 index 0000000..3c4f7d4 --- /dev/null +++ b/src/zipios/src/zipios_common.h @@ -0,0 +1,52 @@ +#ifndef ZIPIOS_COMMON_H +#define ZIPIOS_COMMON_H + +#include "zipios++/zipios-config.h" + +#include + +namespace zipios { + +using std::vector; + +static const char separator = '/' ; + +template< class Type > +void operator += ( vector< Type > &v1, const vector< Type > &v2 ) { + typename std::vector::const_iterator cit ; + for ( cit = v2.begin() ; cit != v2.end() ; ++cit ) + v1.push_back( *cit ) ; +} + +template< class T > +inline const T& min( const T& a, const T& b ) { + return b < a ? b : a ; +} + + +} // namespace + +#endif + +/** \file + Header file containing miscellaneous small functions. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/zipoutputstream.cpp b/src/zipios/src/zipoutputstream.cpp new file mode 100644 index 0000000..798b9c1 --- /dev/null +++ b/src/zipios/src/zipoutputstream.cpp @@ -0,0 +1,103 @@ + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include "zipios++/zipoutputstreambuf.h" +#include "zipios++/zipoutputstream.h" + +using std::ostream; + +namespace zipios { + +ZipOutputStream::ZipOutputStream( std::ostream &os ) + : ostream( 0 ), +// SGIs basic_ifstream calls istream with 0, but calls basic_ios constructor first?? + ofs( 0 ) +{ + ozf = new ZipOutputStreambuf( os.rdbuf() ) ; + + init( ozf ) ; +} + + +ZipOutputStream::ZipOutputStream( const std::string &filename ) + : ostream( 0 ), + ofs( 0 ) +{ + ofs = new std::ofstream( filename.c_str(), std::ios::out | std::ios::binary ) ; + ozf = new ZipOutputStreambuf( ofs->rdbuf() ) ; + this->init( ozf ) ; +} + +void ZipOutputStream::closeEntry() { + ozf->closeEntry() ; +} + + +void ZipOutputStream::close() { + ozf->close() ; + if ( ofs ) + ofs->close() ; +} + + +void ZipOutputStream::finish() { + ozf->finish() ; +} + + +void ZipOutputStream::putNextEntry( const ZipCDirEntry &entry ) { + ozf->putNextEntry( entry ) ; +} + +void ZipOutputStream::putNextEntry(const std::string& entryName) { + putNextEntry( ZipCDirEntry(entryName)); +} + + +void ZipOutputStream::setComment( const std::string &comment ) { + ozf->setComment( comment ) ; +} + + +void ZipOutputStream::setLevel( int level ) { + ozf->setLevel( level ) ; +} + + +void ZipOutputStream::setMethod( StorageMethod method ) { + ozf->setMethod( method ) ; +} + + +ZipOutputStream::~ZipOutputStream() { + // It's ok to call delete with a Null pointer. + delete ozf ; + delete ofs ; +} + +} // namespace + +/** \file + Implementation of ZipOutputStream. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/src/zipoutputstreambuf.cpp b/src/zipios/src/zipoutputstreambuf.cpp new file mode 100644 index 0000000..35c1482 --- /dev/null +++ b/src/zipios/src/zipoutputstreambuf.cpp @@ -0,0 +1,204 @@ + +#include + +#include "zipios++/zipios-config.h" + +#include +#include "zipios++/meta-iostreams.h" + +#include + +#include "zipios++/zipoutputstreambuf.h" + +namespace zipios { + +using std::ios ; +using std::cerr ; +using std::endl ; +//using std::min ; + +ZipOutputStreambuf::ZipOutputStreambuf( streambuf *outbuf, bool del_outbuf ) + : DeflateOutputStreambuf( outbuf, false, del_outbuf ), + _open_entry( false ), + _open ( true ), + _method ( DEFLATED ), + _level ( 6 ) +{ +} + + +void ZipOutputStreambuf::closeEntry() { + if ( ! _open_entry ) + return ; + + closeStream() ; + + updateEntryHeaderInfo() ; + setEntryClosedState( ) ; +} + + +void ZipOutputStreambuf::close() { + finish() ; +} + + +void ZipOutputStreambuf::finish() { + if( ! _open ) + return ; + closeEntry() ; + ostream os( _outbuf ) ; + writeCentralDirectory( _entries, EndOfCentralDirectory( _zip_comment), os ) ; + _open = false ; +} + + +ZipOutputStreambuf::~ZipOutputStreambuf() { + finish() ; +} + + +void ZipOutputStreambuf::putNextEntry( const ZipCDirEntry &entry ) { + if ( _open_entry ) + closeEntry() ; + + if ( ! init( _level ) ) + cerr << "ZipOutputStreambuf::putNextEntry(): init() failed!\n" ; + + _entries.push_back( entry ) ; + ZipCDirEntry &ent = _entries.back() ; + + ostream os( _outbuf ) ; + + // Update entry header info + ent.setLocalHeaderOffset( static_cast< uint32 >( os.tellp() ) ) ; + ent.setMethod( _method ) ; + + os << static_cast< ZipLocalEntry >( ent ) ; + + _open_entry = true ; +} + + +void ZipOutputStreambuf::setComment( const string &comment ) { + _zip_comment = comment ; +} + + +void ZipOutputStreambuf::setLevel( int level ) { + _level = level ; +} + + +void ZipOutputStreambuf::setMethod( StorageMethod method ) { + _method = method ; + if( method == STORED ) + setLevel( NO_COMPRESSION ) ; + else if ( method == DEFLATED ) { + if( _level == NO_COMPRESSION ) + setLevel( DEFAULT_COMPRESSION ) ; + } else + throw FCollException( "Specified compression method not supported" ) ; +} + +// +// Protected and private methods +// + +int ZipOutputStreambuf::overflow( int c ) { + return DeflateOutputStreambuf::overflow( c ) ; +// // FIXME: implement + +// cout << "ZipOutputStreambuf::overflow() not implemented yet!\n" ; +// return EOF ; +} + + + +int ZipOutputStreambuf::sync() { + return DeflateOutputStreambuf::sync() ; +// // FIXME: implement +// cout << "ZipOutputStreambuf::sync() not implemented yet!\n" ; +// return EOF ; +} + + + +void ZipOutputStreambuf::setEntryClosedState() { + _open_entry = false ; + // FIXME: update put pointers to trigger overflow on write. overflow + // should then return EOF while _open_entry is false. +} + + +void ZipOutputStreambuf::updateEntryHeaderInfo() { + if ( ! _open_entry ) + return ; + + ostream os( _outbuf ) ; + int curr_pos = static_cast< int >( os.tellp() ) ; + + // update fields in _entries.back() + ZipCDirEntry &entry = _entries.back() ; + entry.setSize( getCount() ) ; + entry.setCrc( getCrc32() ) ; + entry.setCompressedSize( curr_pos - entry.getLocalHeaderOffset() + - entry.getLocalHeaderSize() ) ; + + // Mark Donszelmann: added current date and time + time_t ltime; + time( <ime ); + struct tm *now; + now = localtime( <ime ); + int dosTime = (now->tm_year - 80) << 25 | (now->tm_mon + 1) << 21 | now->tm_mday << 16 | + now->tm_hour << 11 | now->tm_min << 5 | now->tm_sec >> 1; + entry.setTime(dosTime); + + // write ZipLocalEntry header to header position + os.seekp( entry.getLocalHeaderOffset() ) ; + os << static_cast< ZipLocalEntry >( entry ) ; + os.seekp( curr_pos ) ; +} + + +void ZipOutputStreambuf::writeCentralDirectory( const vector< ZipCDirEntry > &entries, + EndOfCentralDirectory eocd, + ostream &os ) { + int cdir_start = static_cast< int >( os.tellp() ) ; + std::vector< ZipCDirEntry >::const_iterator it ; + int cdir_size = 0 ; + + for ( it = entries.begin() ; it != entries.end() ; ++it ) { + os << *it ; + cdir_size += it->getCDirHeaderSize() ; + } + eocd.setOffset( cdir_start ) ; + eocd.setCDirSize( cdir_size ) ; + eocd.setTotalCount( static_cast< uint16 >( entries.size() ) ) ; + os << eocd ; +} + +} // namespace + +/** \file + Implementation of ZipOutputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/basicentry.h b/src/zipios/zipios++/basicentry.h new file mode 100644 index 0000000..9e06695 --- /dev/null +++ b/src/zipios/zipios++/basicentry.h @@ -0,0 +1,87 @@ +#ifndef BASICENTRY_H +#define BASICENTRY_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include + +#include "zipios++/fcollexceptions.h" +#include "zipios++/fileentry.h" +#include "zipios++/filepath.h" +#include "zipios++/zipios_defs.h" + +namespace zipios { + +/** BasicEntry is a FileEntry that is suitable as a base class for + basic entries, that e.g. do not support any form of compression */ +class BasicEntry : public FileEntry { +public: + /** Constructor. + @param filename the filename of the entry. + @param comment a comment for the entry. + */ + explicit BasicEntry( const string &filename, const string &comment, + const FilePath &basepath = FilePath() ) ; + virtual string getComment() const ; + virtual uint32 getCompressedSize() const ; + virtual uint32 getCrc() const ; + virtual vector< unsigned char > getExtra() const ; + virtual StorageMethod getMethod() const ; + virtual string getName() const ; + virtual string getFileName() const ; + virtual uint32 getSize() const ; + virtual int getTime() const ; + virtual bool isValid() const ; + + // virtual int hashCode() const ; + virtual bool isDirectory() const ; + + virtual void setComment( const string &comment ) ; + virtual void setCompressedSize( uint32 size ) ; + virtual void setCrc( uint32 crc ) ; + virtual void setExtra( const vector< unsigned char > &extra ) ; + virtual void setMethod( StorageMethod method ) ; + virtual void setName( const string &name ) ; + virtual void setSize( uint32 size ) ; + virtual void setTime( int time ) ; + + virtual string toString() const ; + + virtual FileEntry *clone() const ; + + virtual ~BasicEntry() ; +protected: + string _filename ; + string _comment ; + int _size ; + bool _valid ; + FilePath _basepath ; + +}; + +} +#endif + +/** \file + Header file that defines BasicEntry. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/collcoll.h b/src/zipios/zipios++/collcoll.h new file mode 100644 index 0000000..a591a38 --- /dev/null +++ b/src/zipios/zipios++/collcoll.h @@ -0,0 +1,174 @@ +#ifndef COLLCOLL_H +#define COLLCOLL_H + +#include "zipios++/zipios-config.h" + +#include +#include + +#include "zipios++/fcoll.h" + +namespace zipios { + +using std::string ; + +/** \anchor collcoll_anchor + CollectionCollection is a FileCollection that consists of an + arbitrary number of FileCollections. With a CollectionCollection + the user can use multiple FileCollections transparently, making it + easy for a program to keep some of its files in a zip archive and + others stored in ordinary files. CollectionCollection can be used + to create a simple virtual filesystem, where all collections are + mounted in /. If more than one collection contain a file with + the same path only the one in the first added collection will + be accessible. +*/ +class CollectionCollection : public FileCollection { +public: + /** \anchor collcoll_inst_anchor + This static method provides a singleton instance of a CollectionCollection. + The instance is instantiated the first time the method is called. + @return A pointer to a singleton CollectionCollection instance. + */ + static inline CollectionCollection &inst() ; + + /** Constructor. + */ + explicit CollectionCollection() ; + + /** Copy constructor. */ + inline CollectionCollection( const CollectionCollection &src ) ; + + /** Copy assignment operator. */ + inline const CollectionCollection &operator= ( const CollectionCollection &src ) ; + + /** \anchor collcoll_addcoll_anchor + Adds a collection. + @param collection The collection to add. + @return true if the collection was added succesfully and + the added collection is valid. + */ + bool addCollection( const FileCollection &collection ) ; + + /** Adds the collection pointed to by collection. The CollectionCollection + will call delete on the pointer when it is destructed, so the caller + should make absolutely sure to only pass in a collection created with new + and be sure to leave it alone after adding it. If the collection is not + added false is returned and the caller remains responsible for the + collection pointed to by collection. + @param collection A pointer to the collection to add. + @return true if the collection was added succesfully and + the added collection is valid. */ + bool addCollection( FileCollection *collection ) ; + + virtual void close() ; + + virtual ConstEntries entries() const ; + + virtual ConstEntryPointer getEntry( const string &name, + MatchPath matchpath = MATCH ) const ; + + virtual istream *getInputStream( const ConstEntryPointer &entry ) ; + + virtual istream *getInputStream( const string &entry_name, + MatchPath matchpath = MATCH ) ; + + /** Returns the number in entries in all collections kept by + the CollectionCollection object */ + virtual int size() const ; + + virtual FileCollection *clone() const ; + + virtual ~CollectionCollection() ; + +protected: + /** A protected getEntry member function, that not only + finds an entry that match the name, if such an entry exists + in the collection, it also returns, which collection it was found + in. + */ + void getEntry( const string &name, + ConstEntryPointer &cep, + std::vector< FileCollection * >::const_iterator &it, + MatchPath matchpath = MATCH ) const ; + + vector< FileCollection * > _collections ; +private: + static CollectionCollection *_inst ; +}; + + +/** Shortcut name for a CollectionCollection. If the static method +inst is used, it is often used a lot, so it's handy with a short name for +CollectionCollection */ +typedef CollectionCollection CColl ; + + +// +// Inline (member) functions +// + +CollectionCollection &CollectionCollection::inst() { + if( _inst != 0 ) + return *_inst ; + else + return *( _inst = new CollectionCollection ) ; +} + +CollectionCollection::CollectionCollection( const CollectionCollection &src ) + : FileCollection( src ) +{ + _collections.reserve( src._collections.size() ) ; + std::vector< FileCollection * >::const_iterator it ; + for ( it = src._collections.begin() ; it != src._collections.end() ; ++it ) + _collections.push_back( (*it)->clone() ) ; +} + + +const CollectionCollection & +CollectionCollection::operator= ( const CollectionCollection &src ) { + this->FileCollection::operator=( src ) ; +// FileCollection::=( static_cast< FileCollection >( src ) ) ; + + if ( this != &src ) { + // Destroy current contents. + std::vector< FileCollection * >::const_iterator it ; + for ( it = _collections.begin() ; it != _collections.end() ; ++it ) + delete *it ; + // Then copy src's content. + _collections.clear() ; + _collections.reserve( src._collections.size() ) ; + for ( it = src._collections.begin() ; it != src._collections.end() ; ++it ) + _collections.push_back( (*it)->clone() ) ; + } + return *this ; +} + +} // namespace + + + +#endif + +/** \file + Header file that defines CollectionCollection. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/deflateoutputstreambuf.h b/src/zipios/zipios++/deflateoutputstreambuf.h new file mode 100644 index 0000000..7cedeba --- /dev/null +++ b/src/zipios/zipios++/deflateoutputstreambuf.h @@ -0,0 +1,109 @@ +#ifndef DEFLATEOUTPUTSTREAMBUF_H +#define DEFLATEOUTPUTSTREAMBUF_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include + +#include + +#include "zipios++/filteroutputstreambuf.h" +#include "zipios++/ziphead.h" +#include "zipios++/zipios_defs.h" + +namespace zipios { + +using std::vector ; + +/** DeflateOutputStreambuf is an output stream filter, that deflates + the data that is written to it before it passes it on to the + output stream it is attached to. Deflation/Inflation is a + compression/decompression method used in gzip and zip. The zlib + library is used to perform the actual deflation, this class only + wraps the functionality in an output stream filter. */ +class DeflateOutputStreambuf : public FilterOutputStreambuf { +public: + + /** DeflateOutputStreambuf constructor. + @param outbuf the streambuf to use for output. + @param user_init If false user must invoke init() before writing any data. + (ZipOutputStreambuf needs to do this) + @param del_outbuf if true is specified outbuf will be deleted, when + the DeflateOutputStreambuf is destructed. */ + explicit DeflateOutputStreambuf( streambuf *outbuf, bool user_init = false, + bool del_outbuf = false ) ; + + /** Destructor. */ + virtual ~DeflateOutputStreambuf() ; + + bool init( int comp_level = 6 ) ; + bool closeStream() ; + + /** Returns the CRC32 for the current stream. The returned value is + the CRC for the data that has been compressed already (due to a + call to overflow()). As DeflateOutputStreambuf may buffer an + arbitrary amount of bytes until closeStream() has been invoked, + the returned value is not very useful before closeStream() has + been called. */ + uint32 getCrc32() const { return _crc32 ; } + + /** Returns the number of bytes written to the streambuf, that has + been processed from the input buffer by the compressor. After + closeStream() has been called this number is the total number of + bytes written to the stream. */ + uint32 getCount() const { return _overflown_bytes ; } + +protected: + virtual int overflow( int c = EOF ) ; + virtual int sync() ; + + /** Flushes _outvec and updates _zs.next_out and _zs.avail_out. */ + bool flushOutvec() ; + + /** Flushes the remaining data in the zlib buffers, after which the + only possible operations are deflateEnd() or deflateReset(). */ + void endDeflation() ; + +private: + z_stream _zs ; + bool _zs_initialized ; +protected: // FIXME: reconsider design? + const int _invecsize ; + vector< char > _invec ; + const int _outvecsize ; + vector< char > _outvec ; + + uint32 _crc32 ; + uint32 _overflown_bytes ; +}; + + +} // namespace + + + +#endif + +/** \file + Header file that defines DeflateOutputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/dircoll.h b/src/zipios/zipios++/dircoll.h new file mode 100644 index 0000000..5abb407 --- /dev/null +++ b/src/zipios/zipios++/dircoll.h @@ -0,0 +1,93 @@ +#ifndef DIRCOLL_H +#define DIRCOLL_H + +#include "zipios++/zipios-config.h" + + +#include "zipios++/fcoll.h" +#include "zipios++/basicentry.h" +#include "zipios++/filepath.h" + +namespace zipios { + +/** DirEntry is a BasicEntry. */ +typedef BasicEntry DirEntry ; + +/** \anchor dircol_anchor + DirectoryCollection is a FileCollection that obtains its entries + from a directory. */ +class DirectoryCollection : public FileCollection { +public: + + /** Default Constructor. */ + explicit DirectoryCollection() + : _entries_loaded( false ), _recursive( true ) {} + + + /** Constructor. + @param path A directory path name. If the name is not a valid + directory the created DirectoryCollection will be invalid. + @param load_now Load directory into memory now. Otherwise it will + be done when it is first needed. + */ + explicit DirectoryCollection( const string &path, + bool recursive = true, + bool load_now = false ) ; + + /* Default Copy constructor and copy assignment operator are sufficient. */ + + virtual void close() ; + + virtual ConstEntries entries() const ; + + virtual ConstEntryPointer getEntry( const string &name, + MatchPath matchpath = MATCH ) const ; + + virtual istream *getInputStream( const ConstEntryPointer &entry ) ; + + virtual istream *getInputStream( const string &entry_name, + MatchPath matchpath = MATCH ) ; + + virtual int size() const ; + + virtual FileCollection *clone() const ; + + /** Destructor. */ + virtual ~DirectoryCollection() ; + +protected: + mutable bool _entries_loaded ; + bool _recursive ; // recurse into subdirs. + FilePath _filepath ; + + void loadEntries() const ; + void load( bool recursive, const FilePath &subdir = FilePath() ) ; + +}; + +} // namespace + +#endif + +/** \file + Header file that defines DirectoryCollection. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/fcoll.h b/src/zipios/zipios++/fcoll.h new file mode 100644 index 0000000..578dea4 --- /dev/null +++ b/src/zipios/zipios++/fcoll.h @@ -0,0 +1,309 @@ +#ifndef fcoll_H +#define fcoll_H + +#include "zipios++/zipios-config.h" + +#include +#include + +#include "zipios++/fcollexceptions.h" +#include "zipios++/fileentry.h" + +namespace zipios { + +using std::vector; + +/** \anchor fcoll_anchor + FileCollection is an abstract baseclass that represents a + collection of files. The specializations of FileCollection + represents different origins of file collections, such as + directories, simple filename lists and compressed archives. */ +class FileCollection { +public: + /** FileCollection constructor. */ + explicit FileCollection() + : _filename( "-" ), + _entries ( 0 ), + _valid ( false ) {} + + /** Copy constructor. */ + inline FileCollection( const FileCollection &src ) ; + + /** Copy assignment operator. */ + inline const FileCollection &operator= ( const FileCollection &src ) ; + + /** Closes the FileCollection. */ + virtual void close() = 0 ; + + /** \anchor fcoll_entries_anchor + Returns a vector of const pointers to the entries in the + FileCollection. + @return a ConstEntries + containing the entries of the FileCollection. + @throw InvalidStateException Thrown if the collection is invalid. */ + virtual ConstEntries entries() const ; + + enum MatchPath { IGNORE, MATCH } ; + + /** \anchor fcoll_getentry_anchor + Returns a ConstEntryPointer to a FileEntry object for the entry + with the specified name. To ignore the path part of the filename in search of a + match, specify FileCollection::IGNORE as the second argument. + @param name A string containing the name of the entry to get. + @param matchpath Speficy MATCH, if the path should match as well, + specify IGNORE, if the path should be ignored. + @return A ConstEntryPointer to the found entry. The returned pointer + equals zero if no entry is found. + @throw InvalidStateException Thrown if the collection is invalid. */ + virtual ConstEntryPointer getEntry( const string &name, + MatchPath matchpath = MATCH ) const ; + /** \anchor fcoll_getinputstream + Returns a pointer to an opened istream for the specified + FileEntry. It is the callers responsibility to delete the stream + when he is done with it. Returns 0, if there is no such + FileEntry in the FileCollection. + @param entry A ConstEntryPointer to the FileEntry to get an istream to. + @return an open istream for the specified entry. The istream is allocated on + heap and it is the users responsibility to delete it when he is done with it. + @throw InvalidStateException Thrown if the collection is invalid. */ + virtual istream *getInputStream( const ConstEntryPointer &entry ) = 0 ; + /** Returns a pointer to an opened istream for the specified + entry name. It is the callers responsibility to delete the stream + when he is done with it. Returns 0, if there is no entry with the specified + name in the FileCollection. + @param matchpath Speficy MATCH, if the path should match as well, + specify IGNORE, if the path should be ignored. + @return an open istream for the specified entry. The istream is allocated on + heap and it is the users responsibility to delete it when he is done with it. + @throw InvalidStateException Thrown if the collection is invalid. */ + virtual istream *getInputStream( const string &entry_name, + MatchPath matchpath = MATCH ) = 0 ; + /** Returns the name of the FileCollection. + @return the name of the FileCollection. + @throw InvalidStateException Thrown if the collection is invalid. */ + virtual string getName() const ; + /** Returns the number of entries in the FileCollection. + @return the number of entries in the FileCollection. + @throw InvalidStateException Thrown if the collection is invalid. */ + virtual int size() const ; + + /** The member function returns true if the collection is valid. + @return true if the collection is valid. + */ + bool isValid() const { return _valid ; } + + /** Create a heap allocated clone of the object this method is called for. The + caller is responsible for deallocating the clone when he is done with it. + @return A heap allocated copy of the object this method is called for. + */ + virtual FileCollection *clone() const = 0 ; + + + /** FileCollection destructor. */ + virtual ~FileCollection () ; +protected: + string _filename ; + Entries _entries ; + bool _valid ; +}; + + +// +// Inline methods +// + +FileCollection::FileCollection( const FileCollection &src ) + : _filename( src._filename ), + _valid ( src._valid ) +{ + _entries.reserve( src._entries.size() ) ; + Entries::const_iterator it ; + for ( it = src._entries.begin() ; it != src._entries.end() ; ++it ) + _entries.push_back( (*it)->clone() ) ; +} + +const FileCollection &FileCollection::operator= ( const FileCollection &src ) { + if ( this != &src ) { + _filename = src._filename ; + _valid = src._valid ; + _entries.clear() ; + _entries.reserve( src._entries.size() ) ; + + Entries::const_iterator it ; + for ( it = src._entries.begin() ; it != src._entries.end() ; ++it ) + _entries.push_back( (*it)->clone() ) ; + } + return *this ; +} + +inline ostream & operator<< (ostream &os, const FileCollection& collection) { + os << "collection '" << collection.getName() << "' {" ; + ConstEntries entries = collection.entries(); + ConstEntries::const_iterator it; + bool isFirst=true; + for (it=entries.begin(); it != entries.end(); ++it) { + if(! isFirst) + os << ", "; + isFirst = false; + os << (*it)->getName(); + } + os << "}"; + return os; +} + + +} // namespace + +#endif + + +/** + \mainpage Zipios++ + + \image html zipios++.jpg + \image latex zipios++.eps width=10cm + + \section intro Introduction + + Zipios++ is a java.util.zip-like C++ library for reading and + writing Zip files. Access to individual entries is provided through + standard C++ iostreams. A simple read-only virtual file system that + mounts regular directories and zip files is also provided. + + The source code is released under the GNU Lesser General Public + License. + + \section status Status + + Spanned archives are not supported, and support is not planned. + + + The library has been tested and appears to be working with +
    +
  • FreeBSD stable and current / gcc 2.95.3
  • +
  • Red Hat Linux release 7.0 / gcc 2.96
  • +
  • Red Hat Linux release 6.2 (Zoot) / egcs-2.91.66
  • +
  • Linux Mandrake release 7.0 (Air) / gcc 2.95.2
  • +
  • SGI IRIX64 6.5 / gcc 2.95.2
  • +
  • SGI IRIX64 6.5 / MIPSpro Compilers: Version 7.30
  • +
+ + If you are aware of any other platforms that Zipios++ works on, + please let me know (thomass@deltadata.dk). + + \section documentation Documentation + This web page is the front page to the library documentation which + is generated from the source files using Doxygen. Use + the links at the top of the page to browse the API + documentation. The documentation is also available in + a printer-friendly format [pdf]. + + \subsection zipfiles Zip file access + The two most important classes are \ref zipfile_anchor "ZipFile" and + \ref ZipInputStream_anchor "ZipInputStream". ZipInputStream is an istream + for reading zipfiles. It can be instantiated directly, without the + use of ZipFile. \ref ZipInputStream_getnextentry_anchor + "ZipInputStream::getNextEntry()" positions the new ZipInputStream at the + first entry. The following entry can be accessed by calling + \ref ZipInputStream_getnextentry_anchor "ZipInputStream::getNextEntry()" + again. + + ZipFile scans the central directory of a zipfile and provides an + interface to access that directory. The user may search for entries + with a particular filename using \ref fcoll_getentry_anchor "ZipFile::getEntry()", + or simply get the complete list of entries + with \ref fcoll_entries_anchor "ZipFile::entries()". To get an + istream (ZipInputStream) to a particular entry simply use + \ref fcoll_getinputstream "ZipFile::getInputStream()". + + \ref example_zip_anchor "example_zip.cpp" demonstrates the central + elements of Zipios++. + + A Zip file appended to another file, e.g. a binary program, with the program + \ref appendzip_anchor "appendzip", can be read with + \ref zipfile_openembeddedzipfile "ZipFile::openEmbeddedZipFile()". + + \subsection filecollections FileCollections + + A ZipFile is actually just a special kind of + \ref fcoll_anchor "FileCollection" that + obtains its entries from a .zip Zip archive. Zipios++ also implements + a \ref dircol_anchor "DirectoryCollection" that obtains its entries + from a specified directory, and a \ref collcoll_anchor "CollectionCollection" + that obtains its entries from + other collections. Using a single CollectionCollection any number of + other FileCollections can be placed under its control and accessed + through the same single interface that is used to access a ZipFile or + a DirectoryCollection. A singleton (a unique global instance) + CollectionCollection can be obtained through + + \ref collcoll_inst_anchor "CollectionCollection::inst()" ; + + To save typing CollectionCollection has been typedef'ed to CColl. In + the initialization part of an application FileCollections can be + created, and placed under CColll::inst()'s control using + + \ref collcoll_addcoll_anchor "CColl::inst().addCollection()" + + and later an istream can be obtained using + + \ref fcoll_getinputstream "CColl::inst().getInputStream()". + + \section download Download + Go to Zipios++ project page on SourceForge for tar balls and ChangeLog. + + http://sourceforge.net/project/?group_id=5418 + + \section links Links + zlib. + The compression library that Zipios++ uses to perform the actual + decompression. + + + Java 2 Platform, Standard Edition, v 1.3 API Specification + . Zipios++ is heavily inspired by the java.util.zip package. + + + PKWARE zip format + . A description of the zip file format. + + \section bugs Bugs + Submit bug reports and patches to thomass@deltadata.dk + + + + \htmlonly + Project hosted by + +

+ Logo created with + + + \endhtmlonly */ + + +/** \file + Header file that defines FileCollection. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/fcollexceptions.h b/src/zipios/zipios++/fcollexceptions.h new file mode 100644 index 0000000..d4dad19 --- /dev/null +++ b/src/zipios/zipios++/fcollexceptions.h @@ -0,0 +1,100 @@ +#ifndef FCOLLEXCEPTIONS_H +#define FCOLLEXCEPTIONS_H + +#include "zipios++/zipios-config.h" + +#include +#include + +namespace zipios { + +using std::string ; +using std::exception ; + +/** An IOException is used to signal an I/O error. + */ +class IOException : public exception { +public: + IOException() throw () ; + explicit IOException( const string &msg ) throw () ; + IOException( const IOException &src ) throw () ; + IOException &operator= ( const IOException &src ) throw () ; + + virtual const char *what() const throw () ; + virtual ~IOException() throw () ; +private: + string _what ; +}; + +/** An FCollException is used to signal a problem with a + FileCollection. */ +class FCollException : public exception { +public: + FCollException() throw () ; + explicit FCollException( const string &msg ) throw () ; + FCollException( const FCollException &src ) throw () ; + FCollException &operator= ( const FCollException &src ) throw () ; + + virtual const char *what() const throw () ; + virtual ~FCollException() throw () ; +private: + string _what ; +}; + +/** An object member function may throw this exception, if the + operation it normally performs is inappropriate or impossible to + perform because of the current state of the object. */ +class InvalidStateException : public exception { +public: + InvalidStateException() throw () ; + explicit InvalidStateException( const string &msg ) throw () ; + InvalidStateException( const InvalidStateException &src ) throw () ; + InvalidStateException &operator= ( const InvalidStateException &src ) throw () ; + + virtual const char *what() const throw () ; + virtual ~InvalidStateException() throw () ; +private: + string _what ; +}; + +/** Basic exception */ +class Exception : public exception { +public: + Exception() throw () ; + explicit Exception( const string &msg ) throw () ; + Exception( const Exception &src ) throw () ; + Exception &operator= ( const Exception &src ) throw () ; + + virtual const char *what() const throw () ; + virtual ~Exception() throw () ; +private: + string _what ; +}; + + +} // namespace +#endif + +/** \file + Header file that defines a number of exceptions used by FileCollection and + its subclasses. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/fileentry.h b/src/zipios/zipios++/fileentry.h new file mode 100644 index 0000000..542e061 --- /dev/null +++ b/src/zipios/zipios++/fileentry.h @@ -0,0 +1,240 @@ +#ifndef FILEENTRY_H +#define FILEENTRY_H + +#include "zipios++/zipios-config.h" + +#include +#include +#include "zipios++/meta-iostreams.h" + +#include "zipios++/simplesmartptr.h" +#include "zipios++/zipios_defs.h" + +namespace zipios { + +using std::vector ; +using std::ostream ; +using std::istream ; +using std::string ; + +/** The types used with FileEntry::setMethod and + FileEntry::getMethod. The current entries are the types supported + by the zip format. The numbering also matches the numbering used + in the zip file format, ie STORED is indicated by a 0 in the + method field in a zip file and so on. */ +enum StorageMethod { STORED = 0, SHRUNK, REDUCED1, REDUCED2, + REDUCED3, REDUCED4, IMPLODED, RESERVED, + DEFLATED } ; + +class FileEntry ; + +/** \typedef typedef SimpleSmartPointer< FileEntry > EntryPointer + EntryPointer is a SimpleSmartPointer for FileEntry's. */ +typedef SimpleSmartPointer< FileEntry > EntryPointer ; + + +/** ConstEntryPointer is a SimpleSmartPointer for const FileEntry's. */ +typedef SimpleSmartPointer< const FileEntry > ConstEntryPointer ; + +/** Entries is a vector of EntryPointer's */ +typedef vector< EntryPointer > Entries ; + +/** ConstEntries is a vector of ConstEntryPointer's */ +typedef vector< EntryPointer > ConstEntries ; + + + +/** A FileEntry represents an entry in a FileCollection. The interface + is a copy of the ZipEntry interface from the java.util.zip + package. The name has been changed to FileEntry, as FileCollection + is a more general abstraction, that covers other types of file + collections than just zip files. */ +class FileEntry { +public: + + /* Default construcotr, copy constructor and copy assignment + operator are sufficient. */ + + /** Returns the comment of the entry, if it has one. Otherwise it + returns an empty string. + @return the comment associated with the entry, if there is one. + */ + virtual string getComment() const = 0 ; + /** Returns the compressed size of the entry. If the entry is not + stored in a compressed format, the uncompressed size is + returned. + @return the compressed size of the entry. If the entry is stored without + compression the uncompressed size is returned. + */ + virtual uint32 getCompressedSize() const = 0 ; + /** Returns the Crc for the entry, if it has one. FIXME: what is + returned if it doesn't have one? + @return the Crc for the entry, if it has one. + */ + virtual uint32 getCrc() const = 0 ; + /** Returns a vector of bytes of extra data that may be stored with + the entry. + @return A vector< unsigned char > of extra bytes that may potentially + be associated with an entry. + */ + virtual vector< unsigned char > getExtra() const = 0 ; + /** Returns the method used to store the entry in the FileCollection. + @return the storage method used to store the entry in the collection. + @see StorageMethod. + */ + virtual StorageMethod getMethod() const = 0 ; + /** Returns the full filename of the entry, including a path if the + entry is stored in a subfolder. + @return the filename of the entry, including path if the entry is stored + in a sub-folder. + */ + virtual string getName() const = 0 ; + /** Returns the filename of the entry. + @return Returns the filename of the entry. + */ + virtual string getFileName() const = 0 ; + /** Returns the (uncompressed) size of the entry data. + @return Returns the (uncompressed) size of the entry. + */ + virtual uint32 getSize() const = 0 ; + /** Returns the date and time of FIXME: what? + @return the date and time of the entry. + */ + virtual int getTime() const = 0 ; + /** Any method or operator that initializes a FileEntry may set a + flag, that specifies whether the read entry is valid or not. If + it isn't this method returns false. + @return true if the FileEntry has been parsed succesfully. + */ + virtual bool isValid() const = 0 ; + // virtual int hashCode() const = 0 ; + /** Returns true if the entry is a directory. A directory entry is + an entry which name ends with a separator ('/' for Unix systems, + '\' for Windows and DOS systems. + @return true if the entry is a directory. + */ + virtual bool isDirectory() const = 0 ; + + /** Sets the comment field for the FileEntry. + @param comment string with the new comment. + */ + virtual void setComment( const string &comment ) = 0 ; + /** Set the compressed size field of the entry. + @param size value to set the compressed size field of the entry to. + */ + virtual void setCompressedSize( uint32 size ) = 0 ; + /** Sets the crc field. + @param crc value to set the crc field to. + */ + virtual void setCrc( uint32 crc ) = 0 ; + /** Sets the extra field. + @param extra the extra field is set to this value. + */ + virtual void setExtra( const vector< unsigned char > &extra ) = 0 ; + /** Sets the storage method field for the entry. + @param method the method field is set to the specified value. + */ + virtual void setMethod( StorageMethod method ) = 0 ; + /** Sets the name field for the entry. + @param name the name field is set to the specified value. + */ + virtual void setName( const string &name ) = 0 ; + /** Sets the size field for the entry. + @param size the size field is set to this value. + */ + virtual void setSize( uint32 size ) = 0 ; + /** Sets the time field for the entry. + @param time the time field is set to the specified value. + */ + virtual void setTime( int time ) = 0 ; + + /** Returns a human-readable string representation of the entry. + @return a human-readable string representation of the entry. + */ + virtual string toString() const = 0 ; + + /** Create a heap allocated clone of the object this method is called for. The + caller is responsible for deallocating the clone when he is done with it. + @return A heap allocated copy of the object this method is called for. + */ + virtual FileEntry *clone() const = 0 ; + + /** FileEntry destructor. */ + virtual ~FileEntry() {} + +// protected: + class MatchName ; + class MatchFileName ; +protected: + friend class SimpleSmartPointer< FileEntry > ; + friend class SimpleSmartPointer< const FileEntry > ; + void ref() const { _refcount.ref() ; } + unsigned int unref() const { return _refcount.unref() ; } + + ReferenceCount< FileEntry > _refcount ; +}; + +/** Function object to be used with the STL find_if algorithm to + find a FileEntry in a container, which name (as obtained with + FileEntry::getName()) is identical to the name specified in the + MatchName constructor. */ +class FileEntry::MatchName { +public: + explicit MatchName( const string &name ) : _name( name ) {} + bool operator() ( const ConstEntryPointer &entry ) { + return entry->getName() == _name ; + } +private: + string _name ; +}; + +/** Function object to be used with the STL find_if algorithm to + find a FileEntry in a container, which name (as obtained with + FileEntry::getFileName()) is identical to the name specified in the + MatchName constructor. */ +class FileEntry::MatchFileName { +public: + explicit MatchFileName( const string &name ) : _name( name ) {} + bool operator() ( const ConstEntryPointer &entry ) { + return entry->getFileName() == _name ; + } +private: + string _name ; +}; + +ostream &operator<< ( ostream &os, const FileEntry &entry ) ; + +inline ostream &operator<< ( ostream &os, const ConstEntryPointer &entry ) { + os << *entry ; + return os ; +} + + + +} // namespace + +#endif + + +/** \file + Header file that defines FileEntry. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/filepath.h b/src/zipios/zipios++/filepath.h new file mode 100644 index 0000000..e310ca4 --- /dev/null +++ b/src/zipios/zipios++/filepath.h @@ -0,0 +1,208 @@ +#ifndef FILEPATH_H +#define FILEPATH_H + +#include "zipios++/zipios-config.h" + +#include +#include + +namespace zipios { + +using namespace std ; + +/** FilePath represents a path to a file or directory name. FilePath has + member functions to check if the file path is a valid file system entity, + and to check what kind of file system entity it is, e.g. is it a file, a + directory, a pipe etc. +*/ +class FilePath { +public: + /** Constructor. + @param path A string representation of the path. + @param check_exists If true is specified the constructor will + check the existence and type of the path immediately, instead of + deferring that task until it is needed. */ + FilePath( const string &path = "", bool check_exists = false ) ; + + inline FilePath &operator= ( const string &rhs ) ; + + inline operator string() const ; + + inline std::string asString() const ; + + /** Concatenates FilePath objects. A file separator is inserted + if appropriate. */ + inline FilePath operator+ ( const FilePath &name ) const ; + + /** Returns filename of the FilePath object by pruning the path + off. */ + inline FilePath filename() const ; + + + /** @return true If the path is a valid file system entity. */ + inline bool exists() const ; + + /** @return true if the path is a regular file. */ + inline bool isRegular() const ; + + /** @return true if the path is a directory. */ + inline bool isDirectory() const ; + + /** @return true if the path is character special (a character + device file). */ + inline bool isCharSpecial() const ; + + /** @return true if the path is block special (a block device + file). */ + inline bool isBlockSpecial() const ; + + /** @return true if the path is a socket. */ + inline bool isSocket() const ; + + /** @return true if the path is a Fifo (a pipe). */ + inline bool isFifo() const ; + +protected: + + /** Prunes the trailing separator of a specified path. */ + inline void pruneTrailingSeparator() ; + + /** This function sets _checked to true, stats the path, to see if + it exists and to determine what type of file it is. All the query + functions check if _checked is true, and if it isn't they call + check(). This means stat'ing is deferred until it becomes + necessary. */ + void check() const ; + + static const char _separator; + + // FIXME: Should be bitfield + mutable bool _checked ; + mutable bool _exists ; + mutable bool _is_reg ; + mutable bool _is_dir ; + mutable bool _is_char ; + mutable bool _is_block ; + mutable bool _is_socket ; + mutable bool _is_fifo ; + string _path ; +}; + + +// +// Inline member functions +// + +FilePath &FilePath::operator= ( const string &rhs ) { + _path = rhs ; + pruneTrailingSeparator() ; + return *this ; +} + +void FilePath::pruneTrailingSeparator() { + if ( _path.size() > 0 ) + if ( _path[ _path.size() -1 ] == _separator ) + _path.erase( _path.size() - 1 ) ; +} + +FilePath::operator string() const { + return _path ; +} + +std::string FilePath::asString() const { + return _path ; +} + + +FilePath FilePath::operator+ ( const FilePath &name ) const { + if ( _path.size() > 0 ) + return _path + _separator + name._path ; + else + return name._path ; +} + + +FilePath FilePath::filename() const { + string::size_type pos ; + pos = _path.find_last_of( _separator ) ; + if ( pos != string::npos ) + return _path.substr( pos + 1); + else + return _path ; +} + + +bool FilePath::exists() const { + if ( ! _checked ) + check() ; + return _exists ; +} + + +bool FilePath::isRegular() const { + if ( ! _checked ) + check() ; + return _is_reg ; +} + + +bool FilePath::isDirectory() const { + if ( ! _checked ) + check() ; + return _is_dir ; +} + + +bool FilePath::isCharSpecial() const { + if ( ! _checked ) + check() ; + return _is_char ; +} + + +bool FilePath::isBlockSpecial() const { + if ( ! _checked ) + check() ; + return _is_block ; +} + + +bool FilePath::isSocket() const { + if ( ! _checked ) + check() ; + return _is_socket ; +} + + +bool FilePath::isFifo() const { + if ( ! _checked ) + check() ; + return _is_fifo ; +} + + +} // namespace +#endif + +/** \file + Header file that defines FilePath. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/filterinputstreambuf.h b/src/zipios/zipios++/filterinputstreambuf.h new file mode 100644 index 0000000..fbe86ce --- /dev/null +++ b/src/zipios/zipios++/filterinputstreambuf.h @@ -0,0 +1,66 @@ +#ifndef FILTERINPUTSTREAMBUF_H +#define FILTERINPUTSTREAMBUF_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +namespace zipios { + +using std::streambuf ; + +/** An input streambuf filter is a streambuf that filters the input it + gets from the streambuf it is attached to. FilterInputStreambuf is a base class to + derive input streambuf filters from. */ +class FilterInputStreambuf : public streambuf { +public: + /** Constructor. + @param inbuf the streambuf to use for input. + @param del_inbuf if true is specified inbuf will be deleted, when + the FilterInputStreambuf is destructed. + */ + explicit FilterInputStreambuf( streambuf *inbuf, bool del_inbuf = false ) ; + /** Destructor. */ + virtual ~FilterInputStreambuf() ; + +protected: + int _s_pos ; // Position in this streambuf - FIXME: is this used? + streambuf *_inbuf ; + bool _del_inbuf ; +private: + + /** Copy-constructor is private to prevent copying. */ + FilterInputStreambuf( const FilterInputStreambuf &src ) ; + + /** Copy-assignment operator is private to prevent copying. */ + const FilterInputStreambuf &operator= ( const FilterInputStreambuf &src ) ; +}; + + +} // namespace + + +#endif + +/** \file + Header file that defines FilterInputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/filteroutputstreambuf.h b/src/zipios/zipios++/filteroutputstreambuf.h new file mode 100644 index 0000000..32cd7a0 --- /dev/null +++ b/src/zipios/zipios++/filteroutputstreambuf.h @@ -0,0 +1,58 @@ +#ifndef FILTEROUTPUTSTREAMBUF_H +#define FILTEROUTPUTSTREAMBUF_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +namespace zipios { + +using std::streambuf ; + +/** A FilterOutputStreambuf is a streambuf that filters the data that is written + to it before it passes it on to the output streambuf it is connected to. */ +class FilterOutputStreambuf : public streambuf { +public: + + /** Constructor. + @param outbuf the streambuf to pass the filtered data on to. + @param del_outbuf if true is specified outbuf will be deleted, when + the FilterOutputStreambuf is destructed. */ + explicit FilterOutputStreambuf( streambuf *outbuf, bool del_outbuf = false ) ; + + /** Destructor. */ + virtual ~FilterOutputStreambuf() ; + +protected: + streambuf *_outbuf ; + bool _del_outbuf ; +}; + + +} // namespace + + +#endif + +/** \file + Header file that defines FilterOutputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/gzipoutputstream.h b/src/zipios/zipios++/gzipoutputstream.h new file mode 100644 index 0000000..0a92fea --- /dev/null +++ b/src/zipios/zipios++/gzipoutputstream.h @@ -0,0 +1,71 @@ +#ifndef GZIPOUTPUTSTREAM_H +#define GZIPOUTPUTSTREAM_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include + +#include "zipios++/gzipoutputstreambuf.h" + +namespace zipios { + +/** \anchor GZIPOutputStream_anchor + GZIPOutputStream is an ostream that writes the output to a gz file. The + interface approximates the interface of the Java GZIPOutputStream. */ +class GZIPOutputStream : public std::ostream { +public: + + /** GZIPOutputStream constructor. + @param os ostream to which the compressed zip archive is written. + */ + explicit GZIPOutputStream( std::ostream &os ) ; + + /** GZIPOutputStream constructor. + @filename filename to write the gzip archive to. */ + explicit GZIPOutputStream( const std::string &filename ) ; + + void setFilename( const string &filename ); + void setComment( const string &comment ); + + /** Calls finish and closes the stream. */ + void close() ; + + /** Finishes the stream. */ + void finish() ; + + /** Destructor. */ + virtual ~GZIPOutputStream() ; + +private: + std::ofstream *ofs ; + GZIPOutputStreambuf *ozf ; +}; + +} // namespace. + +#endif + +/** \file + Header file that defines GZIPOutputStream. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/gzipoutputstreambuf.h b/src/zipios/zipios++/gzipoutputstreambuf.h new file mode 100644 index 0000000..4143304 --- /dev/null +++ b/src/zipios/zipios++/gzipoutputstreambuf.h @@ -0,0 +1,79 @@ +#ifndef GZIPOUTPUTSTREAMBUF_H +#define GZIPOUTPUTSTREAMBUF_H + +#include "zipios++/zipios-config.h" + +#include + +#include + +#include "zipios++/deflateoutputstreambuf.h" + +namespace zipios { + +/** GZIPOutputStreambuf is a zip output streambuf filter. */ +class GZIPOutputStreambuf : public DeflateOutputStreambuf { +public: + + /** GZIPOutputStreambuf constructor. A newly constructed GZIPOutputStreambuf + is ready to accept data. + @param outbuf the streambuf to use for output. + @param del_outbuf if true is specified outbuf will be deleted, when + the GZIPOutputStreambuf is destructed. */ + explicit GZIPOutputStreambuf( streambuf *outbuf, bool del_outbuf = false ) ; + + void setFilename( const string &filename ); + void setComment( const string &comment ); + + /** Calls finish. */ + void close() ; + + /** Finishes the compression. */ + void finish() ; + + /** Destructor. */ + virtual ~GZIPOutputStreambuf() ; + +protected: + virtual int overflow( int c = EOF ) ; + virtual int sync() ; + +private: + void writeHeader(); + void writeTrailer(); + void writeInt(uint32 i); + + std::string _filename; + std::string _comment; + bool _open ; +}; + + +} // namespace + + + +#endif + +/** \file + Header file that defines ZipOutputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/inflateinputstreambuf.h b/src/zipios/zipios++/inflateinputstreambuf.h new file mode 100644 index 0000000..b0264fb --- /dev/null +++ b/src/zipios/zipios++/inflateinputstreambuf.h @@ -0,0 +1,89 @@ +#ifndef INFLATEINPUTSTREAMBUF_H +#define INFLATEINPUTSTREAMBUF_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include + +#include + +#include "zipios++/filterinputstreambuf.h" + +namespace zipios { + +using std::vector ; + +/** InflateInputStreambuf is an input stream filter, that inflates the input + from the attached input stream. Deflation/Inflation is a + compression/decompression method used in gzip and zip. The zlib + library is used to perform the actual inflation, this class only + wraps the functionality in an input stream filter. */ +class InflateInputStreambuf : public FilterInputStreambuf { +public: + /** InflateInputStreambuf constructor. + @param inbuf the streambuf to use for input. + @param s_pos a position to reset the inbuf to before reading. Specify + -1 to read from the current position. + @param del_inbuf if true is specified inbuf will be deleted, when + the InflateInputStreambuf is destructed. + */ + explicit InflateInputStreambuf( streambuf *inbuf, int s_pos = -1, bool del_inbuf = false ) ; + virtual ~InflateInputStreambuf() ; + + /** Resets the zlib stream and purges input and output buffers. + repositions the input streambuf at stream_position. + @param stream_position a position to reset the inbuf to before reading. Specify + -1 to read from the current position. + */ + bool reset( int stream_position = -1 ) ; +protected: + virtual int underflow() ; +private: + z_stream _zs ; + bool _zs_initialized ; + const int _invecsize ; + vector< char > _invec ; +protected: // FIXME: reconsider design? + const int _outvecsize ; + vector< char > _outvec ; + +private: + + /** Copy-constructor is private to prevent copying. */ + InflateInputStreambuf( const InflateInputStreambuf &src ) ; + + /** Copy-assignment operator is private to prevent copying. */ + const InflateInputStreambuf &operator= ( const InflateInputStreambuf &src ) ; + +}; + + +} // namespace + + + +#endif + +/** \file + Header file that defines InflateInputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/meta-iostreams.h b/src/zipios/zipios++/meta-iostreams.h new file mode 100644 index 0000000..f1866ae --- /dev/null +++ b/src/zipios/zipios++/meta-iostreams.h @@ -0,0 +1,17 @@ +#ifndef META_IOSTREAMS_H +#define META_IOSTREAMS_H + +// Includes the different iostream libraries + +#include "zipios++/zipios-config.h" + +#include +#include + +#if defined (HAVE_STD_IOSTREAM) && defined (USE_STD_IOSTREAM) +#include +#else +#include +#endif + +#endif diff --git a/src/zipios/zipios++/simplesmartptr.h b/src/zipios/zipios++/simplesmartptr.h new file mode 100644 index 0000000..a8d8fe5 --- /dev/null +++ b/src/zipios/zipios++/simplesmartptr.h @@ -0,0 +1,173 @@ +#ifndef SIMPLESMARTPTR_H +#define SIMPLESMARTPTR_H + +#include "zipios++/zipios-config.h" + +namespace zipios { + +/** SimpleSmartPointer is a simple reference counting smart pointer + template. The type pointed to must keep a reference count that is + accessible through the two methods void ref() const and unsigned + int unref() const. The type must also handle the reference count + properly. The easiest way to do that is to use the ReferenceCount + template class. */ +template< class Type > +class SimpleSmartPointer { +public: + Type *operator-> () const { return _p ; } + + Type &operator* () const { return *_p ; } + + SimpleSmartPointer( Type *p = 0 ) : _p( p ) { ref() ; } + + template< class T2 > SimpleSmartPointer( const SimpleSmartPointer< T2 > &src ) + : _p( src.get() ) { ref() ; } + + SimpleSmartPointer( const SimpleSmartPointer &src ) : _p( src.get() ) { + ref() ; + } + + ~SimpleSmartPointer () { if ( unref() == 0 ) deleteIt() ; } + + template< class T2 > + SimpleSmartPointer &operator= ( const SimpleSmartPointer< T2 > &src ) { + ref( src.get() ) ; + if ( unref() == 0 ) + deleteIt() ; + _p = src.get() ; + return *this ; + } + + SimpleSmartPointer &operator= ( const SimpleSmartPointer &src ) { + ref( src.get() ) ; + if ( unref() == 0 ) + deleteIt() ; + _p = src.get() ; + return *this ; + } + + SimpleSmartPointer &operator=( Type *src ) { + _p = src ; + ref() ; + return *this ; + } + + bool operator== ( const Type *p ) const { return _p == p ; } + bool operator!= ( const Type *p ) const { return _p != p ; } + bool operator== ( const SimpleSmartPointer &sp ) const { return _p == sp.get() ; } + bool operator!= ( const SimpleSmartPointer &sp ) const { return _p != sp.get() ; } + bool operator! () const { return ! _p ; } + // This next method is inspired by iostream, and is for use with + // if ( some_smart_pointer ). + operator void*() const { return _p ? (void *)(-1) : (void *)(0) ; } + + Type *get() const { return _p ; } + + /** Returns the reference count - For debugging purposes. */ + unsigned int getReferenceCount() const { return _p->getReferenceCount(); } + + +private: + template< class T2 > + void ref( const T2 *ptr ) { if ( ptr ) ptr->ref() ; } + + void ref() const { if ( _p ) _p->ref() ; } + unsigned int unref() const { + if ( _p ) + return _p->unref(); + else + return 0 ; + } + void deleteIt() { +// if( _p ) +// cerr << "SimpleSmartPointer: Deleting object!" << endl ; + delete _p ; + } + Type *_p ; +}; + + +/** ReferenceCount is useful to ensure proper handling of the + reference count for (objects of) classes handled through a + SimpleSmartPointer. Subclassing ReferenceCount is all a class + needs to become ready for being handled by + SimpleSmartPointer. Another way is to add a ReferenceCount member + variable to a class and write two methods 'void ref() const' and + 'unsigned int unref() const' that invoke the same methods in the + ReferenceCount variable. */ +template< class Type > +class ReferenceCount { + /** SimpleSmartPointer needs to be a friend to invoke the private + ref() and unref() methods. */ + friend class SimpleSmartPointer< Type > ; + friend class SimpleSmartPointer< const Type > ; + /** Type also needs to be a friend to invoke the private ref() and + unref() methods, in case Type doesn't want to inherit + ReferenceCount and thus needs to invoke ref() and unref() + through forwarding member functions. */ + // + // Originally the following template parameter was made a friend. + // This is not allowed by the standard so comment it out: + // + // friend Type ; + // + // Initially hack things by making the necessary classes friends + // even though we don't know really which they are. This is an + // Hideous Hack. + friend class FileEntry ; + friend class Bogus ; + +public: + /** Constructor intializes count to zero. */ + ReferenceCount() : _ref_count( 0 ) {} + + /** Copy-constructor intializes count to zero. It doesn't copy it + from src. */ + ReferenceCount( const ReferenceCount &src ) : _ref_count( 0 ) {} + + /** The assignment operator doesn't copy the reference count, it + leaves it unchanged. */ + const ReferenceCount &operator= ( const ReferenceCount &src ) { return *this; } +private: + + /** Increases the reference count. */ + void ref() const { ++_ref_count ; } + + /** Decreases the reference count. */ + unsigned int unref() const { return --_ref_count ; } + + /** Returns the reference count - For debugging purposes. */ + unsigned int getReferenceCount() const { return _ref_count; } + + /** Holds the actual reference count */ + mutable unsigned short _ref_count ; +}; + + + +} // namespace + +#endif + +/** \file + Header file that defines SimpleSmartPointer and ReferenceCount. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/virtualseeker.h b/src/zipios/zipios++/virtualseeker.h new file mode 100644 index 0000000..e79a0cc --- /dev/null +++ b/src/zipios/zipios++/virtualseeker.h @@ -0,0 +1,105 @@ +#ifndef VIRTUALSEEKER_H +#define VIRTUALSEEKER_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + + +namespace zipios { + +using std::ios ; +using std::cerr ; +using std::endl ; + +/** VirtualSeeker is a simple class that keeps track of a set of + specified 'virtual' file endings that mark a subset of a real + file. An example of its use (and its reason for existence) is to + keep track of the file endings of a Zip file embedded in another + file. */ +class VirtualSeeker { +public: + inline VirtualSeeker( int start_offset = 0, int end_offset = 0) ; + inline void setOffsets( int start_offset, int end_offset ) ; + inline void getOffsets( int &start_offset, int &end_offset ) const ; + inline int startOffset() const ; + inline int endOffset() const ; + inline void vseekg( istream &is, int offset, ios::seekdir sd ) const ; + inline int vtellg( istream &is ) const ; +private: + // start and end offsets + int _s_off, _e_off ; +}; + + + +VirtualSeeker::VirtualSeeker( int start_offset, int end_offset ) + : _s_off( start_offset ), + _e_off( end_offset ) +{} + + +void VirtualSeeker::setOffsets( int start_offset, int end_offset ) { + _s_off = start_offset ; + _e_off = end_offset ; +} + + +void VirtualSeeker::getOffsets( int &start_offset, int &end_offset ) const { + start_offset = _s_off ; + end_offset = _e_off ; +} + + +int VirtualSeeker::startOffset() const { + return _s_off ; +} + + +int VirtualSeeker::endOffset() const { + return _e_off ; +} + +void VirtualSeeker::vseekg( istream &is, int offset, ios::seekdir sd ) const { + if ( sd == ios::cur ) + is.seekg( offset, sd ) ; + else if ( sd == ios::beg ) + is.seekg( offset + _s_off, sd ) ; + else if ( sd == ios::end ) + is.seekg( offset - _e_off, sd ) ; + else + cerr << "VirtualSeekManager::seekg: error - not supposed to happen!" << endl ; +} + + +int VirtualSeeker::vtellg( istream &is ) const { + return static_cast< int >( is.tellg() ) - _s_off ; +} + + +} // namespace + +#endif + +/** \file + Header file that defines VirtualSeeker. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/zipextraction.h b/src/zipios/zipios++/zipextraction.h new file mode 100644 index 0000000..c90a75c --- /dev/null +++ b/src/zipios/zipios++/zipextraction.h @@ -0,0 +1,35 @@ +/************************************************************************ +** +** Copyright (C) 2010 Strahinja Markovic +** +** This file is part of FlightCrew. +** +** FlightCrew is free software: you can redistribute it and/or modify +** it under the terms of the GNU Lesser General Public License as published +** by the Free Software Foundation, either version 3 of the License, or +** (at your option) any later version. +** +** FlightCrew is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU Lesser General Public License for more details. +** +** You should have received a copy of the GNU Lesser General Public License +** along with FlightCrew. If not, see . +** +*************************************************************************/ + +#pragma once +#ifndef ZIPEXTRACTION_H +#define ZIPEXTRACTION_H + +#include "../../FlightCrew/Misc/BoostFilesystemUse.h" + +namespace zipios +{ + void ExtractZipToFolder( const fs::path &path_to_zip, const fs::path &path_to_folder ); + +} // namespace zipios + + +#endif // ZIPEXTRACTION_H \ No newline at end of file diff --git a/src/zipios/zipios++/zipfile.h b/src/zipios/zipios++/zipfile.h new file mode 100644 index 0000000..6ca9340 --- /dev/null +++ b/src/zipios/zipios++/zipfile.h @@ -0,0 +1,109 @@ +#ifndef ZIPFILE_H +#define ZIPFILE_H + +#include "zipios++/zipios-config.h" + +#include +#include "zipios++/meta-iostreams.h" + +#include "zipios++/fcoll.h" +#include "zipios++/ziphead.h" +#include "zipios++/virtualseeker.h" +#include "../../FlightCrew/Misc/BoostFilesystemUse.h" + +namespace zipios { + +using std::ifstream ; + +/** \anchor zipfile_anchor + ZipFile is a FileCollection, where the files are stored + in a .zip file. */ +class ZipFile : public FileCollection { +public: + /** \anchor zipfile_openembeddedzipfile + Opens a Zip archive embedded in another file, by writing the zip + archive to the end of the file followed by the start offset of + the zip file. The offset must be written in zip-file byte-order + (little endian). The program appendzip, which is part of the + Zipios++ distribution can be used to append a Zip archive to a + file, e.g. a binary program. + @throw FColException Thrown if the specified file name is not a valid zip + archive. + @throw IOException Thrown if an I/O problem is encountered, while the directory + of the specified zip archive is being read. */ + static ZipFile openEmbeddedZipFile( const string &name ) ; + + /** Default constructor. + */ + ZipFile() {} + + /* Default Copy constructor and copy assignment operator are sufficient. */ + + /** Constructor. Opens the zip file name. If the zip "file" is + embedded in a file that contains other data, e.g. a binary + program, the offset of the zip file start and end must be + specified. + @param name The filename of the zip file to open. + @param s_off Offset relative to the start of the file, that + indicates the beginning of the zip file. + @param e_off Offset relative to the end of the file, that + indicates the end of the zip file. The offset is a positive number, + even though the offset is towards the beginning of the file. + @throw FColException Thrown if the specified file name is not a valid zip + archive. + @throw IOException Thrown if an I/O problem is encountered, while the directory + of the specified zip archive is being read. */ + explicit ZipFile( const string &name, int s_off = 0, int e_off = 0 + /* , ios::open_mode mode = ios::in | ios::binary */ ) ; + + explicit ZipFile( const fs::path &name, int s_off = 0, int e_off = 0 + /* , ios::open_mode mode = ios::in | ios::binary */ ) ; + + virtual FileCollection *clone() const ; + + /** Destructor. */ + virtual ~ZipFile() ; + + virtual void close() ; + + virtual istream *getInputStream( const ConstEntryPointer &entry ) ; + virtual istream *getInputStream( const string &entry_name, + MatchPath matchpath = MATCH ) ; +private: + VirtualSeeker _vs ; + EndOfCentralDirectory _eocd ; + + bool init( istream &_zipfile ) ; + bool readCentralDirectory( istream &_zipfile ) ; + bool readEndOfCentralDirectory( istream &_zipfile ) ; + bool confirmLocalHeaders( istream &_zipfile ) ; + void setError( string error_str ) ; +}; + + +} + +#endif + +/** \file + Header file that defines ZipFile. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/ziphead.h b/src/zipios/zipios++/ziphead.h new file mode 100644 index 0000000..1326d14 --- /dev/null +++ b/src/zipios/zipios++/ziphead.h @@ -0,0 +1,271 @@ +#ifndef ZIPHEAD_H +#define ZIPHEAD_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include +#include + +#include "zipios++/fileentry.h" +#include "zipios++/zipios_defs.h" + +namespace zipios { + +using std::streampos ; + +class ZipCDirEntry ; + +/** A concrete implementation of the abstract FileEntry base class for + ZipFile entries, specifically for representing the information + present in the local headers of file entries in a zip file. */ +class ZipLocalEntry : public FileEntry { + friend istream &operator>> ( istream &is, ZipLocalEntry &zcdh ) ; + friend ostream &operator<< ( ostream &os, const ZipLocalEntry &zlh ) ; + friend bool operator== ( const ZipLocalEntry &zlh, const ZipCDirEntry &ze ) ; +public: + inline ZipLocalEntry( const string &_filename = "", + const vector< unsigned char > &_extra_field = + vector< unsigned char >() ) + : gp_bitfield( 0 ), + _valid( false ) { + setDefaultExtract() ; + setName( _filename ) ; + setExtra( _extra_field ) ; + } + + void setDefaultExtract() ; + inline ZipLocalEntry &operator=( const class ZipLocalEntry &src ) ; + virtual string getComment() const ; + virtual uint32 getCompressedSize() const ; + virtual uint32 getCrc() const ; + virtual vector< unsigned char > getExtra() const ; + virtual StorageMethod getMethod() const ; + virtual string getName() const ; + virtual string getFileName() const ; + virtual uint32 getSize() const ; + virtual int getTime() const ; + virtual bool isValid() const ; + + virtual bool isDirectory() const ; + + virtual void setComment( const string &comment ) ; + virtual void setCompressedSize( uint32 size ) ; + virtual void setCrc( uint32 crc ) ; + virtual void setExtra( const vector< unsigned char > &extra ) ; + virtual void setMethod( StorageMethod method ) ; + virtual void setName( const string &name ) ; + virtual void setSize( uint32 size ) ; + virtual void setTime( int time ) ; + + virtual string toString() const ; + + int getLocalHeaderSize() const ; + + bool trailingDataDescriptor() const ; + + virtual FileEntry *clone() const ; + + virtual ~ZipLocalEntry() {} +protected: + static const uint32 signature ; + uint16 extract_version ; + uint16 gp_bitfield ; + uint16 compress_method ; + uint16 last_mod_ftime ; + uint16 last_mod_fdate ; + uint32 crc_32 ; + uint32 compress_size ; + uint32 uncompress_size ; + uint16 filename_len ; + uint16 extra_field_len ; + + string filename ; + vector< unsigned char > extra_field ; + + bool _valid ; +}; + +/** A struct containing fields for the entries in a zip file data + descriptor, that trails the compressed data in files that were + created by streaming, ie where the zip compressor cannot seek back + to the local header and store the data. */ +struct DataDescriptor { + uint32 crc_32 ; + uint32 compress_size ; + uint32 uncompress_size ; +}; + +/** Specialization of ZipLocalEntry, that add fields for storing the + extra information, that is only present in the entries in the zip + central directory and not in the local entry headers. */ +class ZipCDirEntry : public ZipLocalEntry { +friend istream &operator>> ( istream &is, ZipCDirEntry &zcdh ) ; +friend ostream &operator<< ( ostream &os, const ZipCDirEntry &zcdh ) ; +friend bool operator== ( const ZipLocalEntry &zlh, const ZipCDirEntry &ze ) ; +public: + + inline ZipCDirEntry( const string &_filename = "", + const string &_file_comment = "", + const vector< unsigned char > &_extra_field = + vector< unsigned char >() ) + : ZipLocalEntry ( _filename, _extra_field ), + disk_num_start ( 0x0 ), + intern_file_attr( 0x0 ), + extern_file_attr( 0x81B40000 ) + // FIXME: I don't understand the external mapping, simply + // copied value for a file with -rw-rw-r-- permissions + // compressed with info-zip + { + setComment( _file_comment ) ; + setDefaultWriter() ; + } + + void setDefaultWriter() ; + + inline ZipCDirEntry &operator=( const class ZipCDirEntry &src ) ; + virtual string toString() const ; + + virtual string getComment() const ; + + virtual void setComment( const string &comment ) ; + + virtual uint32 getLocalHeaderOffset() const ; + virtual void setLocalHeaderOffset( uint32 offset ) ; + + int getCDirHeaderSize() const ; + + virtual FileEntry *clone() const ; + + virtual ~ZipCDirEntry() {} +private: + static const uint32 signature ; + uint16 writer_version ; + + uint16 file_comment_len ; + uint16 disk_num_start ; + uint16 intern_file_attr ; + uint32 extern_file_attr ; + + uint32 rel_offset_loc_head ; + + string file_comment ; +}; + +/** The end of the Central directory structure. This structure is + stored in the end of the zipfile, and contains information about + the zipfile, including the position of the start of the central + directory. */ +class EndOfCentralDirectory { + friend ostream &operator<< ( ostream &os, const EndOfCentralDirectory &eocd ) ; +public: + explicit EndOfCentralDirectory( const string &_zip_comment = "", + uint16 _disk_num = 0, uint16 _cdir_disk_num = 0, + uint16 _cdir_entries = 0, + uint16 _cdir_tot_entries = 0, + uint32 _cdir_size = 0, uint32 _cdir_offset = 0 ) + : disk_num ( _disk_num ), + cdir_disk_num ( _cdir_disk_num ), + cdir_entries ( _cdir_entries ), + cdir_tot_entries ( _cdir_tot_entries ), + cdir_size ( _cdir_size ), + cdir_offset ( _cdir_offset ), + zip_comment_len ( static_cast< uint16 >( _zip_comment.size() ) ), + zip_comment ( _zip_comment ) {} + + uint32 offset() const { return cdir_offset ; } + uint16 totalCount() const { return cdir_tot_entries ; } + void setCDirSize( uint32 size ) { cdir_size = size ; } + void setOffset( uint32 offset ) { cdir_offset = offset ; } + + void setTotalCount( uint16 c ) { cdir_entries = c ; cdir_tot_entries = c ; } + int eocdOffSetFromEnd() const { return static_cast< int >( eocd_offset_from_end ) ; } + bool read( vector &buf, int pos ) ; +private: + static const uint32 signature; + uint16 disk_num ; + uint16 cdir_disk_num ; + uint16 cdir_entries ; + uint16 cdir_tot_entries ; + uint32 cdir_size ; + uint32 cdir_offset ; + uint16 zip_comment_len ; + + streampos eocd_offset_from_end ; // Not a Zip defined field + string zip_comment; + bool checkSignature( unsigned char *buf ) const ; + inline bool checkSignature( uint32 sig ) const ; +}; + + +bool operator== ( const ZipLocalEntry &zlh, const ZipCDirEntry &ze ) ; +inline bool operator== ( const ZipCDirEntry &ze, const ZipLocalEntry &zlh ) { + return zlh == ze ; +} +inline bool operator!= ( const ZipLocalEntry &zlh, const ZipCDirEntry &ze ) { + return ! ( zlh == ze ) ; +} +inline bool operator!= ( const ZipCDirEntry &ze, const ZipLocalEntry &zlh ) { + return ! ( zlh == ze ) ; +} + +// Inline member functions + +ZipCDirEntry &ZipCDirEntry::operator=( const class ZipCDirEntry &src ) { + writer_version = src.writer_version ; + extract_version = src.extract_version ; + gp_bitfield = src.gp_bitfield ; + compress_method = src.compress_method ; + last_mod_ftime = src.last_mod_ftime ; + last_mod_fdate = src.last_mod_fdate ; + crc_32 = src.crc_32 ; + compress_size = src.compress_size ; + uncompress_size = src.uncompress_size ; + filename_len = src.filename_len ; + extra_field_len = src.extra_field_len ; + file_comment_len = src.file_comment_len ; + disk_num_start = src.disk_num_start ; + intern_file_attr = src.intern_file_attr ; + extern_file_attr = src.extern_file_attr ; + rel_offset_loc_head = src.rel_offset_loc_head ; + + filename = src.filename ; + extra_field = src.extra_field ; + file_comment = src.file_comment ; + + return *this ; +} + +bool EndOfCentralDirectory::checkSignature ( uint32 sig ) const { + return signature == sig ; +} + + +} // namespace + +#endif + + +/** \file + Header file containing classes and functions for reading the central + directory and local header fields in a zip archive. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/zipheadio.h b/src/zipios/zipios++/zipheadio.h new file mode 100644 index 0000000..81d3def --- /dev/null +++ b/src/zipios/zipios++/zipheadio.h @@ -0,0 +1,192 @@ +#ifndef ZIPHEADIO_H +#define ZIPHEADIO_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include +#include + +#include "zipios++/ziphead.h" +#include "zipios++/zipios_defs.h" + +namespace zipios { + +// byte order conversion functions. +// ztohs (zip-to-host-short) +#ifdef MY_BIG_ENDIAN + +inline uint16 ztohs ( unsigned char *buf ) { + uint16 out ; +// *( reinterpret_cast( &out ) ) = *( buf + 1 ); +// *( reinterpret_cast( &out ) + 1 ) = *( buf ); + out = ( static_cast< uint16 >( buf[ 0 ] ) << 8 ) + + ( static_cast< uint16 >( buf[ 1 ] ) ) ; + + return out; +} + +// ztohl (zip-to-host-long) +inline uint32 ztohl ( unsigned char *buf ) { + uint32 out; + out = ( static_cast< uint32 >( buf[ 0 ] ) << 24 ) + + ( static_cast< uint32 >( buf[ 1 ] ) << 16 ) + + ( static_cast< uint32 >( buf[ 2 ] ) << 8 ) + + ( static_cast< uint32 >( buf[ 3 ] ) ) ; + + return out; +} + +#else + +inline uint16 ztohs ( unsigned char *buf ) { + uint16 out ; + out = ( static_cast< uint16 >( buf[ 1 ] ) << 8 ) + + ( static_cast< uint16 >( buf[ 0 ] ) ) ; + return out; +} + +// ztohl (zip-to-host-long) +inline uint32 ztohl ( unsigned char *buf ) { + uint32 out; + out = ( static_cast< uint32 >( buf[ 3 ] ) << 24 ) + + ( static_cast< uint32 >( buf[ 2 ] ) << 16 ) + + ( static_cast< uint32 >( buf[ 1 ] ) << 8 ) + + ( static_cast< uint32 >( buf[ 0 ] ) ) ; +// cerr << "buf : " << static_cast< int >( buf[ 0 ] ) ; +// cerr << " " << static_cast< int >( buf[ 1 ] ) ; +// cerr << " " << static_cast< int >( buf[ 2 ] ) ; +// cerr << " " << static_cast< int >( buf[ 3 ] ) << endl ; +// cerr << "uint32 " << out << endl ; + return out; +} + + +#endif + +// htozl (host-to-zip-long) +inline uint32 htozl ( unsigned char *buf ) { + return ztohl( buf ) ; +} + +// htozs (host-to-zip-short) +inline uint16 htozs ( unsigned char *buf ) { + return ztohs( buf ) ; +} + + +inline uint32 readUint32 ( istream &is ) { + static const int buf_len = sizeof ( uint32 ) ; + unsigned char buf [ buf_len ] ; + int rsf = 0 ; + while ( rsf < buf_len ) { + is.read ( reinterpret_cast< char * >( buf ) + rsf, buf_len - rsf ) ; + rsf += static_cast< int >( is.gcount () ) ; + } + return ztohl ( buf ) ; +} + +inline void writeUint32 ( uint32 host_val, ostream &os ) { + uint32 val = htozl( reinterpret_cast< unsigned char * >( &host_val ) ) ; + os.write( reinterpret_cast< char * >( &val ), sizeof( uint32 ) ) ; +} + +inline uint16 readUint16 ( istream &is ) { + static const int buf_len = sizeof ( uint16 ) ; + unsigned char buf [ buf_len ] ; + int rsf = 0 ; + while ( rsf < buf_len ) { + is.read ( reinterpret_cast< char * >( buf ) + rsf, buf_len - rsf ) ; + rsf += static_cast< int >( is.gcount () ) ; + } + return ztohs ( buf ) ; +} + +inline void writeUint16 ( uint16 host_val, ostream &os ) { + uint16 val = static_cast< uint16 >( htozl( reinterpret_cast< unsigned char * >( &host_val ) ) ) ; + os.write( reinterpret_cast< char * >( &val ), sizeof( uint16 ) ) ; +} + +inline void readByteSeq ( istream &is, string &con, int count ) { + char *buf = new char [ count + 1 ] ; + int rsf = 0 ; + while ( rsf < count && is ) { + is.read ( buf + rsf, count - rsf ) ; + rsf += static_cast< int >( is.gcount() ) ; + } + buf [ count ] = '\0' ; + + con = buf ; + delete [] buf ; +} + +inline void writeByteSeq( ostream &os, const string &con ) { + os << con ; +} + +inline void readByteSeq ( istream &is, unsigned char *buf, int count ) { + int rsf = 0 ; + + while ( rsf < count && is ) { + is.read ( reinterpret_cast< char * >( buf ) + rsf, count - rsf ) ; + rsf += static_cast< int >( is.gcount() ) ; + } +} + +inline void writeByteSeq ( ostream &os, const unsigned char *buf, int count ) { + os.rdbuf()->sputn( reinterpret_cast< const char * >( buf ), count ) ; +} + +inline void readByteSeq ( istream &is, vector < unsigned char > &vec, int count ) { + unsigned char *buf = new unsigned char [ count ] ; + int rsf = 0 ; + while ( rsf < count && is ) { + is.read ( reinterpret_cast< char * >( buf ) + rsf, count - rsf ) ; + rsf += static_cast< int >( is.gcount() ) ; + } + + vec.insert ( vec.end (), buf, buf + count ) ; + delete [] buf ; +} + +inline void writeByteSeq ( ostream &os, const vector < unsigned char > &vec ) { + os.rdbuf()->sputn( reinterpret_cast< const char * >( &( vec[ 0 ] ) ), vec.size() ) ; +} + +istream& operator>> ( istream &is, ZipLocalEntry &zlh ) ; +istream& operator>> ( istream &is, DataDescriptor &dd ) ; +istream& operator>> ( istream &is, ZipCDirEntry &zcdh ) ; +// istream& operator>> ( istream &is, EndOfCentralDirectory &eocd ) ; + +ostream &operator<< ( ostream &os, const ZipLocalEntry &zlh ) ; +ostream &operator<< ( ostream &os, const ZipCDirEntry &zcdh ) ; +ostream &operator<< ( ostream &os, const EndOfCentralDirectory &eocd ) ; + + +} // namespace + +#endif + +/** \file + Header file that defines I/O functions for the header structures + defined in ziphead.h. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/zipinputstream.h b/src/zipios/zipios++/zipinputstream.h new file mode 100644 index 0000000..ee31caf --- /dev/null +++ b/src/zipios/zipios++/zipinputstream.h @@ -0,0 +1,92 @@ +#ifndef ZIPINPUTSTREAM_H +#define ZIPINPUTSTREAM_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" +#include + +#include "zipios++/ziphead.h" +#include "zipios++/zipinputstreambuf.h" + +namespace zipios { + +using std::ifstream ; + +/** \anchor ZipInputStream_anchor + ZipInputStream is an istream that gets it's input from a zip file. The + interface approximates the interface of the Java + ZipInputStream. */ +class ZipInputStream : public istream { +public: + + /** ZipInputStream constructor. + @param is istream from which the compressed zip archive can be read. + @param pos position to reposition the istream to before reading. */ + explicit ZipInputStream( istream &is, streampos pos = 0 ) ; + + /** ZipInputStream constructor. + @filename filename of a valid zip file. + @param pos position to reposition the istream to before reading. */ + explicit ZipInputStream( const string &filename, streampos pos = 0 ) ; + + int available() ; + /** Closes the current entry, and positions the stream read pointer at + the beginning of the next entry (if there is one). */ + void closeEntry() ; + + /** Closes the istream. */ + void close() ; + +// ZipLocalEntry *createZipCDirEntry( const string &name ) ; + + /** \anchor ZipInputStream_getnextentry_anchor + Opens the next entry in the zip archive and returns a const pointer to a + FileEntry object for the entry. For new instances this method has to be + called once before you can read from the first entry. + @return a const FileEntry * containing information about the (now) current + entry. + */ + ConstEntryPointer getNextEntry() ; + + /** Destructor. */ + virtual ~ZipInputStream() ; + +private: + ifstream *ifs ; + ZipInputStreambuf *izf ; + + /** Copy-constructor is private to prevent copying. */ + ZipInputStream( const ZipInputStream &src ) ; + + /** Copy-assignment operator is private to prevent copying. */ + const ZipInputStream &operator= ( const ZipInputStream &src ) ; + +}; + +} // namespace. + +#endif + +/** \file + Header file that defines ZipInputStream. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/zipinputstreambuf.h b/src/zipios/zipios++/zipinputstreambuf.h new file mode 100644 index 0000000..79d314b --- /dev/null +++ b/src/zipios/zipios++/zipinputstreambuf.h @@ -0,0 +1,89 @@ +#ifndef ZIPINPUTSTREAMBUF_H +#define ZIPINPUTSTREAMBUF_H + +#include "zipios++/zipios-config.h" + +#include + +#include + +#include "zipios++/fcoll.h" +#include "zipios++/inflateinputstreambuf.h" +#include "zipios++/ziphead.h" + +namespace zipios { + +/** ZipInputStreambuf is a zip input streambuf filter. + */ +class ZipInputStreambuf : public InflateInputStreambuf { +public: + /** ZipInputStreambuf constructor. + @param inbuf the streambuf to use for input. + @param s_pos a position to reset the inbuf to before reading. Specify + -1 to read from the current position. + @param del_inbuf if true is specified inbuf will be deleted, when + the ZipInputStreambuf is destructed. + */ + explicit ZipInputStreambuf( streambuf *inbuf, int s_pos = -1, bool del_inbuf = false ) ; + + /** Closes the current entry, and positions the stream read pointer at + the beginning of the next entry (if there is one). */ + void closeEntry() ; + /** Closes the streambuf. */ + void close() ; + + /** Opens the next entry in the zip archive and returns a const pointer to a + FileEntry object for the entry. + @return a const FileEntry * containing information about the (now) current + entry. + */ + ConstEntryPointer getNextEntry() ; + + /** Destructor. */ + virtual ~ZipInputStreambuf() ; +protected: + virtual int underflow() ; +private: + bool _open_entry ; + ZipLocalEntry _curr_entry ; + int _data_start ; // Don't forget entry header has a length too. + int _remain ; // For STORED entry only. the number of bytes that + // hasn't been put in the _outvec yet. + + /** Copy-constructor is private to prevent copying. */ + ZipInputStreambuf( const ZipInputStreambuf &src ) ; + + /** Copy-assignment operator is private to prevent copying. */ + const ZipInputStreambuf &operator= ( const ZipInputStreambuf &src ) ; + +}; + + +} // namespace + + + +#endif + +/** \file + Header file that defines ZipInputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/zipios-config.h b/src/zipios/zipios++/zipios-config.h new file mode 100644 index 0000000..011b0e2 --- /dev/null +++ b/src/zipios/zipios++/zipios-config.h @@ -0,0 +1,10 @@ +#ifndef ZIPIOS_CONFIG_GEN_H +#define ZIPIOS_CONFIG_GEN_H + +#if defined(_MSC_VER) +# include "zipios-config.w32.h" +#else +# include "zipios-config.unix.h" +#endif + +#endif // ZIPIOS_CONFIG_GEN_H \ No newline at end of file diff --git a/src/zipios/zipios++/zipios-config.h.in b/src/zipios/zipios++/zipios-config.h.in new file mode 100644 index 0000000..fffdc45 --- /dev/null +++ b/src/zipios/zipios++/zipios-config.h.in @@ -0,0 +1,151 @@ +/* zipios++/zipios-config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if the `closedir' function returns void instead of `int'. */ +#undef CLOSEDIR_VOID + +/* Define to 1 if your system has a working `chown' function. */ +#undef HAVE_CHOWN + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#undef HAVE_DIRENT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_DLFCN_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_INTTYPES_H + +/* Define to 1 if you have the `z' library (-lz). */ +#undef HAVE_LIBZ + +/* Define to 1 if you have the header file. */ +#undef HAVE_MEMORY_H + +/* define if the compiler implements namespaces */ +#undef HAVE_NAMESPACES + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +#undef HAVE_NDIR_H + +/* Define to 1 if the system has the type `ptrdiff_t'. */ +#undef HAVE_PTRDIFF_T + +/* Define to 1 if `stat' has the bug that it succeeds when given the + zero-length file name argument. */ +#undef HAVE_STAT_EMPTY_STRING_BUG + +/* define if the compiler supports ISO C++ standard library */ +#undef HAVE_STD + +/* Define to 1 if stdbool.h conforms to C99. */ +#undef HAVE_STDBOOL_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STDLIB_H + +/* define if the compiler has std compliant iostream library */ +#undef HAVE_STD_IOSTREAM + +/* define if the Standard Template Library is available */ +#undef HAVE_STL + +/* Define to 1 if you have the header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STRING_H + +/* Define to 1 if `st_blksize' is member of `struct stat'. */ +#undef HAVE_STRUCT_STAT_ST_BLKSIZE + +/* Define to 1 if `st_blocks' is member of `struct stat'. */ +#undef HAVE_STRUCT_STAT_ST_BLOCKS + +/* Define to 1 if your `struct stat' has `st_blocks'. Deprecated, use + `HAVE_STRUCT_STAT_ST_BLOCKS' instead. */ +#undef HAVE_ST_BLOCKS + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#undef HAVE_SYS_DIR_H + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#undef HAVE_SYS_NDIR_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_STAT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TYPES_H + +/* Define to 1 if you have the `uname' function. */ +#undef HAVE_UNAME + +/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H + +/* Define if zlib has zError */ +#undef HAVE_ZERROR + +/* Define to 1 if the system has the type `_Bool'. */ +#undef HAVE__BOOL + +/* Define to 1 if `lstat' dereferences a symlink specified with a trailing + slash. */ +#undef LSTAT_FOLLOWS_SLASHED_SYMLINK + +/* Name of package */ +#undef PACKAGE + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Define to 1 if your declares `struct tm'. */ +#undef TM_IN_SYS_TIME + +/* Define if the std compliant iostream library should be used (if present) */ +#undef USE_STD_IOSTREAM + +/* Version number of package */ +#undef VERSION + +/* Define to empty if `const' does not conform to ANSI C. */ +#undef const + +/* Define to `int' if doesn't define. */ +#undef gid_t + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#undef inline +#endif + +/* Define to `int' if does not define. */ +#undef mode_t + +/* Define to `unsigned int' if does not define. */ +#undef size_t + +/* Define to `int' if doesn't define. */ +#undef uid_t diff --git a/src/zipios/zipios++/zipios-config.unix.h b/src/zipios/zipios++/zipios-config.unix.h new file mode 100644 index 0000000..f65daea --- /dev/null +++ b/src/zipios/zipios++/zipios-config.unix.h @@ -0,0 +1,150 @@ + +/* Define to 1 if the `closedir' function returns void instead of `int'. */ +/* #undef CLOSEDIR_VOID */ + +/* Define to 1 if your system has a working `chown' function. */ +#define HAVE_CHOWN 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `z' library (-lz). */ +//#define HAVE_LIBZ 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* define if the compiler implements namespaces */ +#define HAVE_NAMESPACES + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if the system has the type `ptrdiff_t'. */ +#define HAVE_PTRDIFF_T 1 + +/* Define to 1 if `stat' has the bug that it succeeds when given the + zero-length file name argument. */ +/* #undef HAVE_STAT_EMPTY_STRING_BUG */ + +/* define if the compiler supports ISO C++ standard library */ +#define HAVE_STD + +/* Define to 1 if stdbool.h conforms to C99. */ +#define HAVE_STDBOOL_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* define if the compiler has std compliant iostream library */ +#define HAVE_STD_IOSTREAM + +/* define if the Standard Template Library is available */ +#define HAVE_STL + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if `st_blksize' is member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_BLKSIZE 1 + +/* Define to 1 if `st_blocks' is member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_BLOCKS 1 + +/* Define to 1 if your `struct stat' has `st_blocks'. Deprecated, use + `HAVE_STRUCT_STAT_ST_BLOCKS' instead. */ +#define HAVE_ST_BLOCKS 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the `uname' function. */ +#define HAVE_UNAME 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define if zlib has zError */ +#define HAVE_ZERROR 1 + +/* Define to 1 if the system has the type `_Bool'. */ +#define HAVE__BOOL 1 + +/* Define to 1 if `lstat' dereferences a symlink specified with a trailing + slash. */ +#define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 + +/* Name of package */ +#define PACKAGE "zipios++" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "zipios-devel@lists.sourceforge.net" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "zipios++" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "zipios++ 0.1.5" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "zipios++" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "0.1.5" + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if your declares `struct tm'. */ +/* #undef TM_IN_SYS_TIME */ + +/* Define if the std compliant iostream library should be used (if present) */ +#define USE_STD_IOSTREAM 1 + +/* Version number of package */ +#define VERSION "0.1.5" + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `int' if doesn't define. */ +/* #undef gid_t */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to `int' if does not define. */ +/* #undef mode_t */ + +/* Define to `unsigned int' if does not define. */ +/* #undef size_t */ + +/* Define to `int' if doesn't define. */ +/* #undef uid_t */ diff --git a/src/zipios/zipios++/zipios-config.w32.h b/src/zipios/zipios++/zipios-config.w32.h new file mode 100644 index 0000000..66e443c --- /dev/null +++ b/src/zipios/zipios++/zipios-config.w32.h @@ -0,0 +1,56 @@ +#ifndef ZIPIOS_CONFIG_H +#define ZIPIOS_CONFIG_H + +#define HAVE_STD_IOSTREAM +#define USE_STD_IOSTREAM +#define HAVE_STL +#define HAVE_STRING_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STDINT_H 1 + +// Visual C++ + +#ifdef _MSC_VER + +// Disable class-browser warning about truncated template-names +#pragma warning( disable : 4786 ) + +#endif //_MSC_VER + +// Needed for FilePath +#define S_ISREG(mode) (((mode) & _S_IFREG) == _S_IFREG) +#define S_ISDIR(mode) (((mode) & _S_IFDIR) == _S_IFDIR) +#define S_ISCHR(mode) (((mode) & _S_IFCHR) == _S_IFCHR) +#define S_ISBLK(mode) 0 +#define S_ISSOCK(mode) 0 +#define S_ISFIFO(mode) (((mode) & _S_IFIFO) == _S_IFIFO) + + +// Convenient place to include any debugging-headers +#include + +#endif // ZIPIOS_CONFIG_H + +/** \file + Configuration header file that allows compatibility with win32 compilers +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 1. Thomas Søndergaard 2. Kevin Shea + Written by Kevin Shea + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/zipios_defs.h b/src/zipios/zipios++/zipios_defs.h new file mode 100644 index 0000000..87323ab --- /dev/null +++ b/src/zipios/zipios++/zipios_defs.h @@ -0,0 +1,36 @@ +#ifndef ZIPIOS_DEFS_H +#define ZIPIOS_DEFS_H + +#include + +namespace zipios { + +typedef boost::uint16_t uint16 ; +typedef boost::uint32_t uint32 ; + +} // namespace + +#endif + +/** \file + Header file that defines some simple data types. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Sondergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/zipoutputstream.h b/src/zipios/zipios++/zipoutputstream.h new file mode 100644 index 0000000..e9abde5 --- /dev/null +++ b/src/zipios/zipios++/zipoutputstream.h @@ -0,0 +1,101 @@ +#ifndef ZIPOUTPUTSTREAM_H +#define ZIPOUTPUTSTREAM_H + +#include "zipios++/zipios-config.h" + +#include "zipios++/meta-iostreams.h" + +#include + +#include "zipios++/ziphead.h" +#include "zipios++/zipoutputstreambuf.h" + +namespace zipios { + +/** \anchor ZipOutputStream_anchor + ZipOutputStream is an ostream that writes the output to a zip file. The + interface approximates the interface of the Java ZipOutputStream. */ +class ZipOutputStream : public std::ostream { +public: + + /** ZipOutputStream constructor. + @param os ostream to which the compressed zip archive is written. + @param pos position to reposition the ostream to before reading. */ + explicit ZipOutputStream( std::ostream &os ) ; + + /** ZipOutputStream constructor. + @filename filename to write the zip archive to. */ + explicit ZipOutputStream( const std::string &filename ) ; + + /** Closes the current entry updates its header with the relevant + size information and positions the stream write pointer for the + next entry header. Puts the stream in EOF state. Call + putNextEntry() to clear the EOF stream state flag. */ + void closeEntry() ; + + /** Calls finish and if the ZipOutputStream was created with a + filename as a parameter that file is closed as well. If the + ZipOutputStream was created with an ostream as its first + parameter nothing but the call to finish happens. */ + void close() ; + + /** Closes the current entry (if one is open), then writes the Zip + Central Directory Structure closing the ZipOutputStream. The + output stream that the zip archive is being written to is not + closed. */ + void finish() ; + + /** \anchor ZipOutputStream_putnextentry_anchor + Begins writing the next entry. + */ + void putNextEntry( const ZipCDirEntry &entry ) ; + + /** \anchor ZipOutputStream_putnextentry2_anchor + Begins writing the next entry. + */ + void putNextEntry(const std::string& entryName); + + /** Sets the global comment for the Zip archive. */ + void setComment( const std::string& comment ) ; + + /** Sets the compression level to be used for subsequent entries. */ + void setLevel( int level ) ; + + /** Sets the compression method to be used. only STORED and DEFLATED are + supported. */ + void setMethod( StorageMethod method ) ; + + /** Destructor. */ + virtual ~ZipOutputStream() ; + +private: + std::ofstream *ofs ; + ZipOutputStreambuf *ozf ; +}; + +} // namespace. + +#endif + +/** \file + Header file that defines ZipOutputStream. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ diff --git a/src/zipios/zipios++/zipoutputstreambuf.h b/src/zipios/zipios++/zipoutputstreambuf.h new file mode 100644 index 0000000..f0d9c8d --- /dev/null +++ b/src/zipios/zipios++/zipoutputstreambuf.h @@ -0,0 +1,116 @@ +#ifndef ZIPOUTPUTSTREAMBUF_H +#define ZIPOUTPUTSTREAMBUF_H + +#include "zipios++/zipios-config.h" + +#include + +#include + +#include "zipios++/fcoll.h" +#include "zipios++/deflateoutputstreambuf.h" +#include "zipios++/ziphead.h" + +namespace zipios { + +/** ZipOutputStreambuf is a zip output streambuf filter. */ +class ZipOutputStreambuf : public DeflateOutputStreambuf { +public: + + enum CompressionLevels { NO_COMPRESSION = Z_NO_COMPRESSION, + BEST_SPEED = Z_BEST_SPEED, + BEST_COMPRESSION = Z_BEST_COMPRESSION, + DEFAULT_COMPRESSION = Z_DEFAULT_COMPRESSION } ; + + /** ZipOutputStreambuf constructor. A newly constructed ZipOutputStreambuf + is not ready to accept data, putNextEntry() must be invoked first. + @param outbuf the streambuf to use for input. + @param del_outbuf if true is specified outbuf will be deleted, when + the ZipOutputStreambuf is destructed. */ + explicit ZipOutputStreambuf( streambuf *outbuf, bool del_outbuf = false ) ; + + /** Closes the current entry, and positions the stream read pointer at + the beginning of the next entry (if there is one). */ + void closeEntry() ; + + /** Calls finish. */ + void close() ; + + /** Closes the current entry (if one is open), then writes the Zip + Central Directory Structure closing the ZipOutputStream. The + output stream that the zip archive is being written to is not + closed. */ + void finish() ; + + /** Begins writing the next entry. + Opens the next entry in the zip archive and returns a const pointer to a + FileEntry object for the entry. + @return a const FileEntry * containing information about the (now) current + entry. */ + void putNextEntry( const ZipCDirEntry &entry ) ; + + /** Sets the global comment for the Zip archive. */ + void setComment( const string &comment ) ; + + /** Sets the compression level to be used for subsequent entries. */ + void setLevel( int level ) ; + + /** Sets the compression method to be used. only STORED and DEFLATED are + supported. */ + void setMethod( StorageMethod method ) ; + + /** Destructor. */ + virtual ~ZipOutputStreambuf() ; + +protected: + virtual int overflow( int c = EOF ) ; + virtual int sync() ; + + void setEntryClosedState() ; + void updateEntryHeaderInfo() ; + + // Should/could be moved to zipheadio.h ?! + static void writeCentralDirectory( const vector< ZipCDirEntry > &entries, + EndOfCentralDirectory eocd, + ostream &os ) ; + + + +private: + string _zip_comment ; + vector< ZipCDirEntry > _entries ; + bool _open_entry ; + bool _open ; + StorageMethod _method ; + int _level ; +}; + + +} // namespace + + + +#endif + +/** \file + Header file that defines ZipOutputStreambuf. +*/ + +/* + Zipios++ - a small C++ library that provides easy access to .zip files. + Copyright (C) 2000 Thomas Søndergaard + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ -- 2.39.2